十 面向对象分析,设计和实现
考纲:面向对象分析的方法,面向对象设计的基本概念与基本方法,软件重用,基于UML的需求分析、设计。面向对象的测试方法。
面向对象分析的方法
- 需求陈述
- 建立对象模型
- 确定类与对象
- 确定关联
- 划分主题
- 确定属性
- 建立动态模型
- 编写脚本
- 设想用户界面
- 画事件跟踪图
- 画状态图
- 审查动态模型
- 建立功能模型
- (定义服务)
面向对象设计的基本概念与基本方法
面向对象设计就是用面向对象观点建立求解空间模型的过程。
面向对象设计的准则:
- 模块化
- 抽象
- 信息隐藏
- 弱耦合
- 强内聚
- 可重用
启发规则:
- 设计结果应该清晰易懂
- 一般–特殊结构的深度应适当
- 设计简单类
- 使用简单的服务
- 把设计变动减至最小
软件重用
指的是同一事物不经修改或稍加改动就多次重复使用。
主要指软件成分的重用
分为
- 代码重用
- 设计结果重用
- 分析结果重用
典型可能被重用的软件成分
- 项目计划
- 成本估计
- 体系结构
- 需求模型和规格文档
- 设计结果
- 源代码
- 用户文档和技术文档
- 用户界面
- 数据
- 测试用例
类构件
可重用的软件构件的特点:
- 模块独立性强且可靠性高
- 具有高度可塑性
- 接口清晰,简明可靠。有详尽的文档说明
类构件的重用方式:
- 实例重用
- 继承重用
- 多态重用
软件重用的效益
- 能使软件产品的质量,开发生产率和整体成本都能得到改善。
基于UML的需求分析、设计
在需求分析阶段,可以使用UML用例图来描述系统的功能需求。用例图显示系统的参与者、用例和它们之间的关系。参与者代表与系统交互的外部实体,用例则描述系统的功能或行为。
在需求设计阶段,可以使用UML类图和序列图来进行系统的设计。类图用于描述系统中的对象类及其关系,包括属性和方法。序列图用于展示系统中对象之间的交互过程,显示对象之间的消息传递顺序和时序关系
面向对象的测试方法
提高可重用性
替考可扩充性
提高健壮性
- 面向对象的测试策略
- 面向对象的单元测试
- 面向对象的集成测试
- 面向对象的确认测试
设计测试用例
-
测试类的技术:
- 随机测试
- 划分测试
- 基于故障的测试
-
集成测试类的技术:
- 多类测试
- 从动态模型导出测试用例