5.1)软件工程
由方法,工具和过程组成.
软件架构
软件架构风格
- 数据流风格
- 调用返回风格。主/子程序,数据抽象和面向对象。
- 独立构件风格。
- 虚拟机风格
- 仓库风格(数据库系统,黑白系统,超文本系统)
软件架构评估
- 敏感点
- 权衡点
三种评估方式:问卷、场景、度量。
需求分析
需求层次
业务需求(高层次需求),用户需求,系统需求
QFD:常规需求,期望需求,意外需求。
需求分析
使用结构化分析方式(SA),核心是数据字典。有三个层次模型。(数据模型,功能模型,行为模型(状态模型))
ER图-数据模型
DFD(数据流图)-功能模型
STD(状态模型图)-状态模型。
需求规格说明书。(SRS)
需求验证与确认
UML-统一建模语言(构造块、规则、公共机制)
关系
- 依赖(使用关系)带箭头的虚线。
- 关联 (拥有关系)带箭头的实线。双向关联,直线
- 泛化 一般化和特殊化。实线三角箭头
- 实现 (类和接口的关系) 虚线三角箭头
UML2.0(14种图)
- 类图
- 对象图
- 构件图
- 组合结构图
- 用例图
- 顺序图
- 通信图
- 定时图
- 状态图
- 活动图
- 部署图
- 制品图
- 包图
- 交互概览图
交互图有顺序图、通信图、定时图
面向对象分析
OOA(做什么)OOD(怎么做)
用例模型的四个阶段:识别参与者,合并需求用例,细化用例描述,调整用例模型
分析模型。关系:关联,依赖,泛化,实现。组合和聚合属于管理。
软件设计
- 结构化设计
- 面向对象设计:封装,继承,多态。
- 设计模式
- 软件实现
OOD原则:单一职责、开闭原则、里氏替换原则、依赖倒置原则、接口隔离原则、组合重用原则、迪米特法则(最小知识)
设计模式:
类模式和对象模型。
创建型模式,结构型模型,行为型模式。
软件测试:静态测试和动态测试。白盒测试也叫结构测试。静态测试可以实现白盒测试(数据流,控制流,程序编译)。
黑盒测试叫功能测试。
CSMM(软件能力成熟度模型)
- 初始级
- 项目规范级
- 组织改进级
- 量化提示
- 创新引领