软件生存周期及开发模型汇总课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件生存周期及开发模型汇总课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 生存 周期 开发 模型 汇总 课件
- 资源描述:
-
1、第第2章章 软件生存周期及开发模型软件生存周期及开发模型 软件生存周期软件生存周期 问题定义问题定义 软件定义软件定义 可行性研究可行性研究 需求分析需求分析 总体设计总体设计 详细设计详细设计软件生命周期软件生命周期 软件开发软件开发 编码编码 单元测试单元测试 综合测试综合测试 运行维护运行维护 持续满足用户需求持续满足用户需求软件过程软件过程 软件过程是为了获得高质量软件所需要软件过程是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完完成的一系列任务的框架,它规定了完成各项任务的工作步骤。成各项任务的工作步骤。工作任务里程碑、交付物SQA点 过程定义了运用方过程定义了运用方法的
2、顺序、应该交法的顺序、应该交付的文档资料、为付的文档资料、为保证软件质量和协保证软件质量和协调变化所需要采取调变化所需要采取的管理措施,以及的管理措施,以及标志软件开发各个标志软件开发各个阶段任务完成的里阶段任务完成的里程碑。程碑。公共过程框架公共过程框架辅助活动辅助活动框架活动框架活动任务集合任务集合软件开发模型软件开发模型 软件软件开发开发模型模型是软件开发全部过程、是软件开发全部过程、活动和任务的活动和任务的结构框架结构框架。它能直观。它能直观表达软件开发全过程,明确规定要表达软件开发全过程,明确规定要完成的主要活动、任务和开发策略。完成的主要活动、任务和开发策略。软件软件开发开发模型也
3、常称为模型也常称为:软件软件过程过程模型模型 软件生存软件生存周周期模型期模型 软件工程范型软件工程范型1.1.瀑布模型瀑布模型 (Waterfall ModelWaterfall Model)传统的瀑布模型传统的瀑布模型需求分析需求分析验证验证规格说明规格说明验证验证设计设计验证验证编码编码测试测试综合测试综合测试维护维护定义时期定义时期开发时期开发时期维护时期维护时期传统瀑布模型开发软件的特点传统瀑布模型开发软件的特点1.1.阶段间具有顺序性和依赖性。阶段间具有顺序性和依赖性。2.2.推迟实现的观点。推迟实现的观点。3.3.每个阶段必须完成规定的文档每个阶段必须完成规定的文档;每个阶段结束
4、前完成文档审查每个阶段结束前完成文档审查,及早改正错误及早改正错误。传统瀑布模型存在什么问题?传统瀑布模型存在什么问题?传统的瀑布模型过于理想化。事实上,人在工传统的瀑布模型过于理想化。事实上,人在工作过程中不可能不犯错误。作过程中不可能不犯错误。在设计阶段可能发生规格说明文档中的错误。在设计阶段可能发生规格说明文档中的错误。而设计上的缺陷或错误可能在实现过程中显现而设计上的缺陷或错误可能在实现过程中显现出来。出来。在综合测试阶段将发现需求分析、设计或编码在综合测试阶段将发现需求分析、设计或编码阶段的许多错误。阶段的许多错误。实际的瀑布模型实际的瀑布模型 瀑布模型瀑布模型的优缺点的优缺点 瀑布
5、模型有许多优点:可强迫开发人员采用规范的方瀑布模型有许多优点:可强迫开发人员采用规范的方法(例如,结构化技术);法(例如,结构化技术);严格地规定了每个阶段必严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。瀑布模型的成功在很经过质量保证小组的仔细验证。瀑布模型的成功在很大程度上是由于它基本上是一种文档驱动的模型。大程度上是由于它基本上是一种文档驱动的模型。“瀑布模型是由文档驱动的瀑布模型是由文档驱动的”这个事实也是它的一个这个事实也是它的一个主要缺点。主要缺点。实际项目很少按照该模型给出的顺序进行;实
6、际项目很少按照该模型给出的顺序进行;用户常常难以清楚地给出所有需求;用户常常难以清楚地给出所有需求;用户必须有耐心,等到系统开发完成;用户必须有耐心,等到系统开发完成;开发者常常被不必要地耽搁。开发者常常被不必要地耽搁。2.原型模型-快速快速原原型模型型模型 (Rapid Prototype ModelRapid Prototype Model)快速建立起来的可以在计算机上快速建立起来的可以在计算机上 运行的程序,他所能完成的功能运行的程序,他所能完成的功能 往往是最终产品能完成的功能的往往是最终产品能完成的功能的 一个子集。一个子集。快速快速原原型模型型模型工作过程工作过程 原型模型从需求收
7、集开始。开发者和用户在一起定义软件的总体目标,标识出已知的需求,并规划出进一步定义的区域。然后是“快速设计”,快速设计集中于软件那些对用户可见部分的表示。“快速设计”导致原型的建造。原型由用户评估,并进一步精化待开发软件的需求,逐步调整原型使其满足客户的要求。同时开发者对将要做的事情有更好的理解,这个过程是迭代的。按线性模型构建软件系统 听取用听取用 户意见户意见建造建造/修改修改原型原型用户测试用户测试运行原型运行原型快速原型快速原型验证验证规格说明规格说明验证验证设计设计验证验证编码编码测试测试综合测试综合测试维护维护变化的需求变化的需求验证验证维护过程维护过程开发过程开发过程原型模型原型
8、模型 适用情况适用情况 用户定义了一组一般性目标,但不能标用户定义了一组一般性目标,但不能标识出详细的输入、处理及输出需求;识出详细的输入、处理及输出需求;开发者可能不能确定算法的有效性、操开发者可能不能确定算法的有效性、操作系统的适应性或人机交互的形式;作系统的适应性或人机交互的形式;原型模型可能是最好的选择原型模型可能是最好的选择 原型模型存在的问题 用户似乎看到的是软件的工作版本,其实 开发者常常需要实现上的折衷,以使原型能够尽快工作。3.3.增量模型(渐增模型)增量模型(渐增模型)(Incremental Model)(Incremental Model)先完成一个系统子集的开发,再按
9、同样的开发先完成一个系统子集的开发,再按同样的开发步骤增加功能步骤增加功能 (系统子集系统子集),),如此递增下去直至满如此递增下去直至满足全部系统需求。足全部系统需求。系统的总体设计在初始子集设计阶段就应作出系统的总体设计在初始子集设计阶段就应作出设想。设想。增量模型增量模型需求分析需求分析验证验证规格说明规格说明验证验证设计设计验证验证维护维护针对每个构件完成针对每个构件完成详细设计、编码和详细设计、编码和集成,经测试后交集成,经测试后交付给用户付给用户分析分析分析分析设计设计设计设计编码编码编码编码测试测试测试测试增量1增量2 增量3增量4 交付交付交付交付增量模型的优点增量模型的优点1
10、.1.在较短时间内向用户提交可完成部分工作的产品,在较短时间内向用户提交可完成部分工作的产品,并分批、逐步地向用户提交产品。从第一个构件并分批、逐步地向用户提交产品。从第一个构件交付之日起,用户就能做一些有用的工作。交付之日起,用户就能做一些有用的工作。2.2.整个软件产品被分解成许多个增量构件,开发人整个软件产品被分解成许多个增量构件,开发人员可以一个构件一个构件地逐步开发。员可以一个构件一个构件地逐步开发。3.3.逐步增加产品功能可以使用户有较充裕的时间学逐步增加产品功能可以使用户有较充裕的时间学习和适应新产品,从而减少一个全新的软件可能习和适应新产品,从而减少一个全新的软件可能给客户组织
11、带来的冲击。给客户组织带来的冲击。4.4.采用增量模型比采用瀑布模型和快速原型模型需采用增量模型比采用瀑布模型和快速原型模型需要更精心的设计,但在设计阶段多付出的劳动将要更精心的设计,但在设计阶段多付出的劳动将在维护阶段获得回报。在维护阶段获得回报。使用增量模型的困难使用增量模型的困难1.1.在把每个新的增量构件集成到现有软件体系在把每个新的增量构件集成到现有软件体系结构中时,必须不破坏原来已经开发出的产结构中时,必须不破坏原来已经开发出的产品。此外,必须把软件的体系结构设计得便品。此外,必须把软件的体系结构设计得便于按这种方式进行扩充,向现有产品中加入于按这种方式进行扩充,向现有产品中加入新
展开阅读全文