软件开发的方法学PPT课件
2020/10/23
h
5
5.2.2 分析
第5章 软件开发的方法学
• 分析:(从用户角度)对问题 域中事物的识别和它们之间相 互关系的判定
2020/10/23
h
6
5.2.3 设计
第5章 软件开发的方法学
• 设计:(从系统角度)解决系 统如何实现问题,将分析过程
所创建的分析模型转化成设计 模型,如体系结构、类等等
2020/10/23
h
9
5.2.6 测试
第5章 软件开发的方法学
• 测试:根据系统需求验证系统 的实现
• 包括单元测试、集成测试和移 交测试
2020/10/23
h
10
5.2.7 部署
第5章 软件开发的方法学
• 部署:将硬件和软件交付给最 终用户,并提供手册和培训材 料
2020/10/23
h
11
5.2.8 维护
• 之后,UML由对象管理组( OMG)保管和改进
2020/10/23
h
15
面向对象的方法学
第5章 软件开发的方法学
• UML采用螺旋式、迭代式和 递增式方法实现对软件的分析 和设计,称之为Rational Unified Process(RUP)
2020/10/23
h
16
第5章 软件开发的方法学
UML图
9. 部署(Deploy)图:显示安 装已完成系统的机器、过程 和部署软件
10.组件(Component)图: 显示可重用的组件(对象或 子系统)及其接口
2020/10/23
h
20
2020/10/23
h
2
引言
第5章 软件开发的方法学
• 方法学涉及软件开发、阶段管 理、资源管理、规划、调度和 其他管理任务的建议或技术
• 优秀的、适用范围广的方法学 是成熟软件业的基础。
2020/10/23
h
3
第5章 软件开发的方法学
5.2 软件开发中的经典阶段
• 需求 • 分析 • 设计 • 规范 • 实现 • 测试 • 部署 • 维护
2020/10/23
h
4
第5章 软件开发的方法学
5.2构或客 户对系统、产品高层次的目标要 求
– 用户需求:描述了用户使用产品 必须要完成的任务
– 功能需求 :定义了开发人员必 须实现的软件功能,使得用户能 完成他们的任务,从而满足了业 务需求。
– 非功能需要:对系统性能、界面 等的要求
第5章 软件开发的方法学
• 维护:包括改正性维护、完善 性维护和适应性维护
2020/10/23
h
12
第5章 软件开发的方法学
5.3 软件工程和瀑布方法学
(略)
2020/10/23
h
13
5.4 新方法学
• 螺旋式方法学 • 迭代式方法学 • 递增式方法学 • 合并式方法学
第5章 软件开发的方法学
2020/10/23
5.6 Ripple概述
• Ripple是一种方法学,吸收了 所有软件开发涉及的阶段,适 合真正的系统开发
• Rational Unified Process( RUP)是Ripple的具体体现
• 对于Ripple,采用UML表示法 进行描述
2020/10/23
h
17
第5章 软件开发的方法学
UML图
h
14
第5章 软件开发的方法学
5.5 面向对象的方法学
• 20世纪90年代中叶,最著名的 方法学是Ivar Jacobson、 James Rumbaugh和Grady Booch发明的方法学
• 1996年,Jacobson和 Rumbaugh合并为Rational公 司,开发出一系列表示法,称 为统一建模语言(UML)
2020/10/23
h
7
5.2.4 规范
第5章 软件开发的方法学
• 规范:对软件开发过程的清晰、 明确的描述,指出软件组件的 用法、如何正确操作
• 规范是按合同设计的、至关重 要的底层规则
2020/10/23
h
8
5.2.5 实现
第5章 软件开发的方法学
• 实现:编写代码,形成子系统, 各种子系统协同工作,形成整 个系统
5. 状态(Station)图:显示生 命周期比较复杂对象的各种 状态
6. 协作(Collaboration)图 :显示在某种情形下对象之 间发送的消息
7. 时序(Sequence)图:与 协作类似,强调顺序
8. 包(Package)图:显示相 关类的组合关系
2020/10/23
h
19
第5章 软件开发的方法学
第5章 软件开发的方法学
学习目标: • 理解软件生产的经典阶段 • 比较静态(结构化)建模和动 态(基于时间的)建模 • 理解UML的表示法
5.1 引言
第5章 软件开发的方法学
• 方法学:做事的系统方法、一 个可接受的过程
• 适用于软件的整个生命周期, 即自软件开发的早期阶段至已 安装系统的维护。
1. 用例(Use Case)图:对系 统的使用方式(或功能)分 类
2. 类(Class)图:显示类及其 类之间的相互关系
3. 对象(Object)图:显示对 象及其对象之间的相互关系
4. 活动(Action)图:显示人 或对象的活动,类似流程图
2020/10/23
h
18
第5章 软件开发的方法学
UML图