QfD:
基本需求:用户的要求
期望需求:理所应当不用说的要求
兴奋需求:额外
多扇入:别人调用你的多
少扇出:你调用别人的少
内聚“:
功能内聚:最高
偶然(巧合)内聚:最差
耦合:
非直接耦合:最低
内容耦合:最高
ps:这部分好像每年都遇到题,
白盒:内部
黑盒:外部
a:用户由开发者引导完成 受控
B:一个或多个用户测试,非受控
回归:只要软件发生变化都要回归测试
分叉点算不算成一个节点对结果是一样的,没影响 (3-0 5-2)
方法一:公式
方法二: 闭合环路+大区域。 (2+1)
软件改进:
up:
极限编程xp:减少文档
四价值观:沟通,简单,反馈,勇气
关键路径:最长那条
最早开始时间:顺推,如果有多条路线指向自己,则取最大一个
最晚开始时间:逆推,如果有多条路线指向别的结点,则取关键路径长度-,
然后取最小一个
松弛时间:最晚开始-最早开始
软件:
可理解性:
可靠性:规定时间,条件下运行而不发生故障
可测试性
可移植性:软件从一台计算机到另一台上能运行
需求分析阶段:(没要求用什么语言)
1各种综合要求,
2数据要求
3导出逻辑模型
4修正计划
软件需求说明书:
数据描述,流图,字典等。
没有模块描述、
数据流图:自顶向下逐层分解
四种基本符号:
1 数据流,用带名字箭头表示
2 数据存储。用直线两段表示
3 加工,用圆圈表示
4 外部实体,用带名字方框表示
(没有控制流)
数据字典:
1 数据流
2 数据存储。
3 加工,
(没有外部实体)
4 数据项
ISO/IEC9126:
质量特性及其质量子特性:
1.功能性:适合性,准确性,互用性,依从性,安全性。
2.可靠性:成熟性,容错性,可恢复性。
3.可用性:可理解性,易学性,可操作性。
4.效率:时间特性,资源特性。
5.可维护性:可分析性,可改变性,稳定性,可测试性。
6.可移植性:适应性,可安装性,稳定性,可测试性
(这里基本有题)
软件文档:
用户:安装,使用,报告,培训,维护。(没编辑)
开发:
管理:
测试用例:
每一个输入条件 可使用一些 有效 和 无效 数据,不能使用都是无效数据
语句覆盖:最弱覆盖
条件,判定:互相不一定包含
判定/条件:覆盖条件和判定
路径:不能代替条件和条件组合覆盖
风险:
风险识别:建立风险条目检查表
风险预测:风险可能性,概率
风险评估:定义风险参考水平值,
风险控制:风险避免,监控。管理
软件危机:
1 软件自身的原因
2 软件开发所用的方法和技术问题
UP:
初始阶段:提交需求,用例
精化阶段:文档,模型,计划
构建阶段:开发剩余的构件
提交阶段:B测试
系统设计
管道过滤器:不能提高性能
变换模块: 从调用模块得到数据,处理后将结果返回给模块
协调模块:不对数据进行加工, 主要进行调用,协调
软件设计
黄金三原则:1用户控制 2减少用户记忆负担 3保持界面一致性
根据数据字典 进行数据设计
根据数据流图 进行接口设计,进行结构化设计
加工 进行过程设计
结构化分析和设计
数据流图:建立逻辑模型,功能建模
顶层数据流图:描述体系的输入输出
决策树和决策表 适于用来表示加工中涉及多个逻辑条件
代码仓库:
优点
缺点:测试困难,低效,昂贵
过程设计:对数据结构和算法的设计
接口设计:描述软件和外部环境之间的交互关系,软件内模块的调用
结构化分析的输出:
数据流图,数据字典,加工说明,没有结构图