1、面向对象的概念:对象+类+继承+通信
2、面向对象的设计步骤:
(1) 建立软件系统的动态模型
(2) 建立软件系统的静态模型
(3) 实现
3、面向对象分析(OOA)
五个层次
4、omt技术的三个模型:对象模型 、动态模型 、功能模型
5、面向对象设计(OOD模型)
6、面向对象环境下的测试策略
7、用户界面设计
(1)应具备的特性:可使用性、灵活性、复杂性和可靠性
(2)任务分析:用户特性分析、用户工作分析、记录有关系统的概念和术语、确定界面类型
(3)任务模型:
静态模型(对象—关系模型):用于展现界面的结构设计
动态模型:对系统操作或与会话设计有关的对象的动态行为的描述
(4)任务分配:
用户:创造,判断,探索
计算机:重复检查,计算和数据处理
(5)考虑因素:
使用的难易程度
学习的难易程度
操作速度
复杂程度
控制
开发的难易程度
8、界面设置类型
(1)菜单界面设计
正文菜单
图标菜单
正文图标混合菜单
(2)对话
必须回答式
无需回答式
警告式
(3)问题描述语言POL
任务层、语义层、语法层、交互层
(4)窗口
数据输入界面设计:尽量简化用户工作,减少输入的出错率
数据输入对话设计的一般规则:
明确的输入、明确的动作、明确的取消、确认删除、提供反馈、允许编辑、提供复原、自动格式化
(5)显示
9、布局设计
报告布局设计:列表、块结构、分组结构
直接操纵界面的基本特性:明确的动作、及时的反馈、增量效应、直观的交互作用、剥皮式的学习、可逆的动作、事先验证
窗口划分:平铺、重叠
命令语言(使用单词来标识对象和操作):一个命令语言的功能是靠命令的名字和语法结构来识别和联系的,因此对每个功能应当只提供一个命 令。语言的复杂程度应当与用户的水平相适应
分类:赋值、祈始、接受收入
10、软件质量
定义:
与软件产品满足规定的和隐含的需求的能力有关的特征或特性的全体
所有描述计算机软件优秀程度的特性的组合
最基本要求:
功能度、可靠性、易使用性、时间经济性、资源经济性、可维护性、可移植性
特性:
软件质量特性反映了软件的本质
定义软件的质量就等价于为该软件定义一系列质量特性
把影响软件质量的特性用软件质量模型来描述
模型:
11、ISO的软件质量度量模型由三层组成:
软件质量需求评价准则(SQRC)
软件质量设计评价准则(SQDC)
软件质量度量评价准则(SQMC)
ISO质量模型:
12、度量
软件质量特性度量:预测型,验收型
预测型:尺度度量,二元度量
13、质量保证
概念:是为保证产品和服务充分满足消费者要求的质量而进行的有计划、有组织的活动
目标:向用户及社会提供满意的高质量的产品
保证策略三阶段:检验、过程管理、新产品开发
软件质量保证策略:审查、复查和管理复审、测试
14、质量保证的任务:
(1)用户要求定义
(2)力争不重复劳动
(3)掌握开发新软件的方法
(4)组织外部力量协作的方法
(5)排除无效劳动
(6)发挥每个开发者的能力
(7)提高软件开发的工程能力
(8)提高计划和管理质量能力
15、质量保证的实施:
从纵向和横向两个方面展开
(1)要求所有与软件生存期有关的人员都要参见
(2)要求对产品形成的全过程进行质量管理
16、软件质量度量和保证的条件:适应性,易学性,可靠性,针对性,客观性,质量经济性
17、软件产品的寿命是指软件的整个生存期
软件工程中常用定义:故障、错误、失效
软件可靠性:是软件在给定的的时间间隔及给定的环境条件下,按设计要求,成功地运行程序的概率
18、软件配置管理(SCM):协调软件开发使得混乱减到最小的技术叫做配置管理, 应用于整个软件工程过程
目标:标识变更、控制变更、确保变更正确地实现、向其他有关的人报告变更
演变图:对于每一配置对象都可以建立一个演变图,用演变图记叙对象的变更历史
19、软件变更的两类不同的情况:
(1)为改正小错误需要的变更
(2)为了增加或者删掉某些功能
确认变更正确完成:正式技术评审、软件配置审计
20、软件能力成熟度模型CMM
定义:
CMM除了可以用作过程改进的指南以外,还提供了一个不断发展的基础,他是一个明确的框架,可以供软件工程师使用、讨论和扩展
CMM描述了有效的软件过程单位元的框架
CMM为软件机构描述了从混乱的、不成熟的软件过程向成熟的、有纪律的软件过程改进的一条路径
用途:
(1) 用于软件过程的评价
(2) 用于软件过程的改进
(3) 用于软件能力的评价
CMM的体系机构:
CMM的内部结构:
21、软件工程管理
22、人员的组织形式:层次模式、矩阵模式
小组内人员的组织形式:主程序员小组 民主小组 层次小组
23、软件生产率和质量的度量
度量的方式:直接度量、间接度量
度量域的分类:
功能点计算(FP):用户输入数、用户输出数,用户查询数,文件数,外部接口数
事后度量:正确性、可维护性、完整性、可使用性
24、软件开发中的资源
(1)人:需要的技能,开始时间,工作期限,有效性
(2)工具:
硬件:开发系统,目标机器,新系统其他硬件部分
软件:支持软件,实用软件
投入时间,持续时间,有效性