1-3 几种主要的软件开发方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6
面向数据方法的基本思想
➢ 从目标系统的输入/输出数据结构入手; ➢ 导出程序的基本框架结构; ➢ 对细节进行设计,得到程序结构图。
7
面向数据方法的特点
特点:程序的执行过程,有时由程序员 控制,有时由用户控制 。
优点:适合数据层设计与实现。 缺点:实现窗口界面较困难
8
3.3 面向对象的方法
① Booch方法:该方法的分析能力较弱,是一种偏重设计的方法。 ② OMT方法:通过建立对象模型、动态模型、功能模型,来实现
13
面向数据的设计
➢面向数据设计,就是面向元数据进行设计。 ➢系统设计采用面向数据的方法。 ➢设计的主要任务是建立系统的数据模型,包括
概念数据模型CDM和物理数据模型PDM,以 数据模型为支撑,去实现系统的业务模型和功 能模型(包括性能和接口)。 ➢在管理软件中,数据设计主要指数据库设计。
14
面向对象实现
① 它以功能分解为基础,而用户的 功能是经常改变的,必然导致系
统的框架结构不稳定。
② 从数据流程图到软件结构图之间
的过渡有明显的断层,导致设计 回溯到需求有困难。
5
3.2 面向数据的开发方法
⑴ Warnier方法:(DSSD) 由J.D.Warnier提出的结构化数据系统开发方法
⑵ Jackson方法:(JSD) 由M.A.Jackson提出的Jackson系统开发方法
对整个系统分析和设计工作。 ③ OOSE方法:最大特点是用用例(Use-Case)与外部角色的交
互来表示系统功能,用例贯穿于整个开发过程。 ④ Coad/Yourdon的面向对象分析和设计方法:即OOA和OOD
方法,它是最早的面向对象的分析和设计方法之一。 ⑤ UML: 统 一 建 模 语 言 , 国 际 对 象 管 理 组 织 OMG 已 批 准 将
UML1.1作为面向对象技术的标准建模语言。
9
面向对象方法的特点
优点: ① 将现实世界问题向面向对象解空间直接映
射,实现对现实世界的直接模拟。 ② 以数据为中心,而不是基于对功能的分解 ③ 使得软件结构相对稳定,软件的重用性、
可靠性、可维护等特性都较好。 缺点:较难掌握。
10
可视化开发方法及其特点
➢面向对象实现,就是面向对象设计和编程。 ➢在多层结构的表示层和逻辑层上,设计和编程
时,采用面向对象的方法。用构件化的设计方 法实现业务模型和功能模型。 ➢只有对系统的三个模型(业务模型、功能模型、 数据模型)吃透了,才能设计和编写出好的程 序。 ➢面向对象实现,实质上是面向类实现,因为实 例化的类称为对象。
3、几种主要的软件开发方法
① 面向过程的方法 ② 面向数据的方法 ③ 面向对象的方法 ④ 软件工程中的“五个面向”
1
选择方法要考虑如下的几个因素
➢ 开发队伍最熟悉哪种开发方法? ➢ 提供的软/硬件资源和开发工具? ➢ 开发方法在计划、组织和管理方面的可行性? ➢ 对开发项目所涉及领域的知识的掌握情况?
可视化开发方法是随着图形用户界面的兴起而发展 起来的,是通过事件驱动实现应用软件的工作。
可视化开发方法的优点:
① 简化了图形用户界面的设计和编码工作,将 开发的注意力主要集中在程序的执行逻辑和 工作流程上。
② 软件开发简单,易学、易上手。 ③ 专业或非专业人员都能参与软件开发活动。
11
3.4 软件工程中的“五个面向”
➢ 软件危机的出现正是由于忽视了软件中的 过程管理。
17
软件工程的最新发展动向
① 形式语言的研究 ② 体系结构技术 ③ 质量保证 ④ 过程控制
18
思考题
① 几种主要的软件开发方法? ② 软件工程中的“五个面向”?
19
面向流程分析、 面向数据设计、 面向对象实现、 面向功能测试、 面向过程管理。
12
源自文库
面向流程的业务分析
➢面向流程分析,就是面向流程的需求分析。 ➢在需求分析时,系统分析员要面向业务流、资
金流、信息流。这“三个流”分析透了,才能 建立好系统的业务模型和功能模型。 ➢这“三个流”,可以用“数据流”这一个流程 来代替,或者说“三个流”是“数据流”在三 个不同方向的投影。
2
3.1 结构化开发方法
也称为面向功能开发方法或面向过程方法, 是由E.Yourdon和L.Constantine提出的.
结构化分析方法SA 结构化设计方法SD 结构化编程方法SP
3
结构化方法的特点
➢按照功能分解的原则; ➢自顶向下、逐步求精; ➢直到实现软件功能为止。 ➢简单、实用。
4
结构化方法的主要问题
15
面向功能测试
➢测试的种类包括:单元测试、集成测试、Alpha 测试、Beta测试等。
➢测试内容包括:系统的功能、性能和接口等。 ➢面向功能测试大多采用黑盒测试。 ➢白盒测试只适合构件生产和核心代码的编程。
16
面向过程管理
➢ 面向过程管理是指面向软件过程的生命周 期各阶段进行管理和控制。
➢ 软件产品质量的提高与改进,完全取决于 软件过程的改善。无论是CMM、ISO9000、 企业文化,都是通过对软件过程的管理来 提高软件企业的素质。
面向数据方法的基本思想
➢ 从目标系统的输入/输出数据结构入手; ➢ 导出程序的基本框架结构; ➢ 对细节进行设计,得到程序结构图。
7
面向数据方法的特点
特点:程序的执行过程,有时由程序员 控制,有时由用户控制 。
优点:适合数据层设计与实现。 缺点:实现窗口界面较困难
8
3.3 面向对象的方法
① Booch方法:该方法的分析能力较弱,是一种偏重设计的方法。 ② OMT方法:通过建立对象模型、动态模型、功能模型,来实现
13
面向数据的设计
➢面向数据设计,就是面向元数据进行设计。 ➢系统设计采用面向数据的方法。 ➢设计的主要任务是建立系统的数据模型,包括
概念数据模型CDM和物理数据模型PDM,以 数据模型为支撑,去实现系统的业务模型和功 能模型(包括性能和接口)。 ➢在管理软件中,数据设计主要指数据库设计。
14
面向对象实现
① 它以功能分解为基础,而用户的 功能是经常改变的,必然导致系
统的框架结构不稳定。
② 从数据流程图到软件结构图之间
的过渡有明显的断层,导致设计 回溯到需求有困难。
5
3.2 面向数据的开发方法
⑴ Warnier方法:(DSSD) 由J.D.Warnier提出的结构化数据系统开发方法
⑵ Jackson方法:(JSD) 由M.A.Jackson提出的Jackson系统开发方法
对整个系统分析和设计工作。 ③ OOSE方法:最大特点是用用例(Use-Case)与外部角色的交
互来表示系统功能,用例贯穿于整个开发过程。 ④ Coad/Yourdon的面向对象分析和设计方法:即OOA和OOD
方法,它是最早的面向对象的分析和设计方法之一。 ⑤ UML: 统 一 建 模 语 言 , 国 际 对 象 管 理 组 织 OMG 已 批 准 将
UML1.1作为面向对象技术的标准建模语言。
9
面向对象方法的特点
优点: ① 将现实世界问题向面向对象解空间直接映
射,实现对现实世界的直接模拟。 ② 以数据为中心,而不是基于对功能的分解 ③ 使得软件结构相对稳定,软件的重用性、
可靠性、可维护等特性都较好。 缺点:较难掌握。
10
可视化开发方法及其特点
➢面向对象实现,就是面向对象设计和编程。 ➢在多层结构的表示层和逻辑层上,设计和编程
时,采用面向对象的方法。用构件化的设计方 法实现业务模型和功能模型。 ➢只有对系统的三个模型(业务模型、功能模型、 数据模型)吃透了,才能设计和编写出好的程 序。 ➢面向对象实现,实质上是面向类实现,因为实 例化的类称为对象。
3、几种主要的软件开发方法
① 面向过程的方法 ② 面向数据的方法 ③ 面向对象的方法 ④ 软件工程中的“五个面向”
1
选择方法要考虑如下的几个因素
➢ 开发队伍最熟悉哪种开发方法? ➢ 提供的软/硬件资源和开发工具? ➢ 开发方法在计划、组织和管理方面的可行性? ➢ 对开发项目所涉及领域的知识的掌握情况?
可视化开发方法是随着图形用户界面的兴起而发展 起来的,是通过事件驱动实现应用软件的工作。
可视化开发方法的优点:
① 简化了图形用户界面的设计和编码工作,将 开发的注意力主要集中在程序的执行逻辑和 工作流程上。
② 软件开发简单,易学、易上手。 ③ 专业或非专业人员都能参与软件开发活动。
11
3.4 软件工程中的“五个面向”
➢ 软件危机的出现正是由于忽视了软件中的 过程管理。
17
软件工程的最新发展动向
① 形式语言的研究 ② 体系结构技术 ③ 质量保证 ④ 过程控制
18
思考题
① 几种主要的软件开发方法? ② 软件工程中的“五个面向”?
19
面向流程分析、 面向数据设计、 面向对象实现、 面向功能测试、 面向过程管理。
12
源自文库
面向流程的业务分析
➢面向流程分析,就是面向流程的需求分析。 ➢在需求分析时,系统分析员要面向业务流、资
金流、信息流。这“三个流”分析透了,才能 建立好系统的业务模型和功能模型。 ➢这“三个流”,可以用“数据流”这一个流程 来代替,或者说“三个流”是“数据流”在三 个不同方向的投影。
2
3.1 结构化开发方法
也称为面向功能开发方法或面向过程方法, 是由E.Yourdon和L.Constantine提出的.
结构化分析方法SA 结构化设计方法SD 结构化编程方法SP
3
结构化方法的特点
➢按照功能分解的原则; ➢自顶向下、逐步求精; ➢直到实现软件功能为止。 ➢简单、实用。
4
结构化方法的主要问题
15
面向功能测试
➢测试的种类包括:单元测试、集成测试、Alpha 测试、Beta测试等。
➢测试内容包括:系统的功能、性能和接口等。 ➢面向功能测试大多采用黑盒测试。 ➢白盒测试只适合构件生产和核心代码的编程。
16
面向过程管理
➢ 面向过程管理是指面向软件过程的生命周 期各阶段进行管理和控制。
➢ 软件产品质量的提高与改进,完全取决于 软件过程的改善。无论是CMM、ISO9000、 企业文化,都是通过对软件过程的管理来 提高软件企业的素质。