常用的软件过程模型(软件生存周期模型)

常用的软件过程模型(软件生存周期模型)文章目录瀑布模型瀑布模型特点:优点:缺点:快速原型模型优点:缺点:增量模型优点:缺点:风险更大增量模型:螺旋模型优点:缺点:喷泉模型优点:缺点:Rational统一过程优点:微软公司软件开发过程规划阶段设计阶段开发阶段稳定阶段发布阶段递进式的开发策略:瀑布模型使用最早,应用最广瀑布模型特点:阶段具有顺序性和依赖性前一阶段结束后一阶段开始,前一个阶段输出文档,后一个阶段输入文档。推迟实现观点-质量保证观点瀑布模型每阶段坚持两个重要做法:–一是每阶段都必须完成完整、准确的文档。软件开发时

大家好,欢迎来到IT知识分享网。

瀑布模型

使用最早,应用最广
在这里插入图片描述

瀑布模型特点:

  1. 阶段具有顺序性和依赖性
    前一阶段结束后一阶段开始,前一个阶段输出文档,后一个阶段输入文档。
  2. 推迟实现观点
    瀑布模型在编码前设置系统分析、系统设计,推迟程序物理实现,保证前期工作扎实。
  3. 质量保证观点
    瀑布模型每阶段坚持两个重要做法:
    一是每阶段都必须完成完整、准确的文档。软件开发时人员间通信、运行时期维护的重要依据。
    二是每阶段结束前对文档评审。

传统瀑布模型过于理想化,但人在工作过程中不可能不犯错误,所以实际瀑布模型带反馈环.在这里插入图片描述

优点:

提高软件质量,降低维护成本,缓解软件危机。

缺点:

模型缺乏灵活性,无法解决需求不明确问题。用户不经过实践提出完整准确需求不切实际。

快速原型模型

快速建立反映用户主要需求的原型系统,反复由用户评价修正需求,开发出最终产品。
在这里插入图片描述

优点:

  1. 确定需求上优于瀑布模型(通过原型与用户交互);
  2. 提供学习手段,通过开发原型和演示原型对开发者和使用者了解系统都有积极作用;
  3. 有的软件原型可以成为最终产品的一部分。

缺点:

快速建立的系统结构加连续修改可能导致产品质量低下;
原型系统的内部结构可能不好。


快速原型模型适用于需求不确定的情况

增量模型

又称渐增模型,开发软件时将软件产品作一系列增量构件设计、编码、集成和测试。

区别于瀑布和快速原型模型:

  • 瀑布和快速原型模型是一次把满足所有需求产品提交给用户。
  • 增量模型是分批向用户提交产品。
    在这里插入图片描述

优点:

  1. 较短时间向用户提交可完成部分工作的产品;
  2. 用户有充裕时间学习适应产品;
  3. 软件结构必须开放,方便向现有产品加入新构件。

缺点:

做到第三个优点比较困难。


前述增量模型在实现构件前完成总体的需求分析、规格说明和概要设计,相对来说风险较小。

风险更大增量模型:

确定用户需求后,各构件集并行构建。
在这里插入图片描述

螺旋模型

1988年B.Boehem提出,加入风险分析,常指导大型软件项目。

软件风险:超期、超预算、行业竞争等

笛卡尔坐标四象限表达四方面活动:

  1. 制定计划:确定目标、选定方案、设定约束条件。
  2. 风险分析:评估方案,识别和消除风险。
  3. 实施工程:软件开发
  4. 客户评估:评价开发工作,计划下一阶段工作。

沿螺线自内向外每旋转一圈开发出更完善新版本。
在这里插入图片描述

优点:

大型软件开发项目有较好的风险控制;

缺点:

  1. 需要风险评估的经验;
  2. 契约开发通常需要事先指定过程模型和发布产品,
  3. 普及度不如其他模型

喷泉模型

面向对象生命周期模型,体现迭代和无缝特性。

  • 迭代
    求精,系统某部分常被重复工作多次,相关功能在每次迭代中逐渐加入演进系统。
  • 无缝
    分析、设计、编码各阶段间不存在明显边界。
    在这里插入图片描述

优点:

无缝,可同步开发,提高开发效率,节省开发时间, 适应面向对象软件

缺点:

可能随时加各种信息、需求与资料,需严格管理文档,审核的难度加大。

Rational 统一过程

由Rational软件公司推出的一种软件过程,该过程强调以迭代和渐增方式开发软件。

Rational统一过程是一个二维生命周期模型。
在这里插入图片描述

  • RUP有9个核心工作流,包括6个核心过程工作流和3个核心支持工作流。
  • RUP有4个连续阶段,每个阶段有明确目标,通过一次或多次迭代完成。

优点:

  1. 不断的版本发布成为一种团队日常工作的真正驱动力;
  2. 将发现问题、制定方案和解决过程集成到下一次迭代;
  3. 迭代开发,降低风险;
  4. 更好地安排产品开发的辅助过程。

微软公司软件开发过程

在这里插入图片描述

规划阶段

开展市场调查研究,结合公司战略形成产品的远景目标。

设计阶段

根据产品远景目标,完成软件功能规格说明和总体设计,
确定产品开发的主要进度。

开发阶段

完成产品中所有构件的开发工作。

稳定阶段

实行全面的内部和外部测试,最终形成可发布的RTM版本

发布阶段

确认产品质量符合发布标准后,发布产品及相关消息


递进式的开发策略:

解决问题的及时性、不确定和变更因素可控性、缩短产品上市周期
在这里插入图片描述

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/23064.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信