软件工程基础:软件生存期过程 常用软件生存期模型_第1页
软件工程基础:软件生存期过程 常用软件生存期模型_第2页
软件工程基础:软件生存期过程 常用软件生存期模型_第3页
软件工程基础:软件生存期过程 常用软件生存期模型_第4页
软件工程基础:软件生存期过程 常用软件生存期模型_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件生存期过程规定了获取、供应、开发、操作和维护软件时,要实施的过程、活动和任务。其目的是为各种人员提供一个公共的框架,以便可以使用“相同的语言”在自己的环境中创作和管理软件。

软件生存期过程没有规定一个特定的生存周期模型,各软件开发机构可视其项目的需要选择一种软件生存周期模型,并将软件生存期过程所含过程、活动和任务映射到选定的软件生存周期模型中。

1.3软件生存期过程GB/T8566-1995信息技术——软件生存期过程

1.4常用软件生存期模型

软件生存期模型描述了软件项目从需求定义开始,到开发成功后投入使用,在使用的过程中不断增补修订,直到最后停止使用这一期间所进行的各种活动如何执行的模型。

软件开发机构应该综合项目和应用的性质、将要使用的方法和工具等,选择其中合适的模型,并将软件生存期过程映射到选定的模型中进行软件开发和维护。1.4.1瀑布模型

瀑布模型最初由W.Royce于1970年提出。可行性研究项目实施计划需求分析概要设计详细设计编码测试维护可行性研究报告软件项目计划需求规格说明概要设计说明程序规格说明原程序代码测试报告维护报告计划时期开发时期时期运行(时期)(阶段)(文档)瀑布模型的特点各阶段顺序相互依赖;每阶段进行评审;强调需求分析和设计。瀑布模型为软件开发和维护提供了一种有效的管理方式。

瀑布模型比较适合于功能和性能需求明确的软件项目的开发和维护,如编译系统等。

瀑布模型的不足实际软件开发中,各阶段之间并非完全的自上而下线性顺序展开;在开发过程中,用户看不见系统,而只有在交付使用时系统才能和用户见面;

不够灵活(针对需求模糊或变化的情况)。1.4.2原型模型

快速分析快速构造原型运行原型评价原型不满意快速修改原型形成最终系统满意原型模型的特点“快速”开发;用户反馈;逐步完善(原型)。

原型模型比较适合于需求模糊或不确定的软件项目的开发和维护。

相对瀑布模型而言,原型模型更符合人们开发软件的习惯。

原型模型的不足不宜利用原型系统作为最终产品(原型成本问题);原型模型的“快速”特点对最终系统不适用(原型作用问题-----定义需求)。

采用原型模型开发系统,用户和开发者必须达成一致:原型被建造仅仅是用来定义需求,之后便部分或全部抛弃,最终的软件要在充分考虑了质量和可维护性等方面之后才被开发。

1.4.3RAD模型

RAD小组1业务建模数据建模处理建模应用生成测试RAD小组2业务建模数据建模处理建模应用生成测试RAD小组n业务建模数据建模处理建模应用生成测试……2~3个月Microsoft倡导的开发模型RAD模型的特点顺序开发(如同瀑布模型);

业务建模:弄清业务活动中的信息流;数据建模:精化业务建模结果;处理建模:依据数据建模结果,创建处理描述;应用生成:组件复用与开发;测试:新的组件及所有接口。强调极短的开发周期(2-3月)。RAD模型主要用于信息系统应用软件的开发

使用基于组件的建造方法获得快速开发

RAD模型的不足技术风险很高的情况不适合采用;

(如新软件要求与已存在的程序有高可互操性时,或系统难以被适当地划分为若干功能等情况)需要足够的人力以创建足够的RAD小组;开发者和用户需要在很短的时间内完成系统开发。1.4.4增量模型

前述生存期模型,均是一次性地将整个系统交给用户:

瀑布模型是假设当线性阶段完成之后就能交付一个完善的系统。原型模型主要用来帮助开发者获取用户需求,待需求稳定后再开发最终系统提供给用户。RAD模型则先将系统主要功能分给若干RAD小组开发,然后集成起来形成最终系统提交给用户。

业务和产品需求的变化,市场竞争和商业压力等等

以逐步增加软件产品的方式构造软件---增量模型

增量模型示意图分析设计编码测试使用第1个增量分析设计编码测试使用第2个增量分析设计编码测试使用第n个增量设计组编码组测试组分析组增量模型的特点可以根据需要补充人员;能够有计划地管理技术风险;能够减少全新软件产品对用户带来的影响;不需要大的资金支出;用户能及早使用及早发现问题;投资回报随功能渐增而渐增。增量模型的不足如果产品整体结构设计不当,则难以为其增加新的增量;(对设计水平要求较高)由于采用增量开发,故难于进行彻底的测试。1.4.5螺旋模型

风险分析原型1风险分析风险分析风险分析操作概念需求计划生命周期计划开发计划集成和测试计划需求确认设计确认和验证实现原型2原型3操作原型模拟,模型,基准软件需求软件产品设计详细设计单元测试编码集成测试验收测试确定目标、方案和限制评估方案识别和消除风险开发、验证下一级产品计划下一阶段评审部分承诺累积成本一步步推进螺旋模型的特点既保持了传统生命周期模型中系统的阶段性方法,又将迭代演化的思想吸收到模型中;螺旋模型是风险驱动的。(风险分析使得用户和开发者能够更好地理解和对待每一个阶段的风险)螺旋模型适合于大型软件的开发

螺旋模型的不足要求软件开发人员善长风险分析;风险分析会导致项目终止而终止合同,出现违约诉讼。对于小项目,风险分析的成本可能与整个项目的成本相当。1.4.6RUP模型OrganizationbyCONTENTOrganizationbyTIMERUP模型的特点DevelopIterativelyManageRequirements(UseCase)UseComponentArchitectureModelVisually(UML)ContinuouslyVerifyQualityManageChange用例驱动;体

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论