下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

关于螺旋模型的具体介绍

作者:课课家教育the     来源: http://www.kokojia.com点击数:3364发布时间: 2017-05-12 09:27:14

标签: 软件开发螺旋模型软件工程

  我们知道软件开发过程中有多种模型,比如瀑布模型、增量模型……1988年,BarryBoehm正式发表了软件系统开发的"螺旋模型",在经过多次实践和不断完善后,螺旋模型逐渐应用于生活中,例如:联想文化的螺旋发展模型脱胎于竞争性文化价值模型。在联想文化整理的过程中,对竞争性文化价值模型进行了改进和完善,逐渐形成了适合联想文化的企业文化螺旋发展模型。由此可见,螺旋模型有自己的生命力,能够融合其它特征而存在。那么什么是螺旋模型呢?

  螺旋模型:

  螺旋模型它将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。螺旋模型采用一种周期性的方法来进行系统开发。这会导致开发出众多的中间版本。使用它,项目经理在早期就能够为客户实证某些概念。该模型是快速原型法,以进化的开发方式为中心,在每个项目阶段使用瀑布模型法。这种模型的每一个周期都包括需求定义、风险分析、工程实现和评审4个阶段,由这4个阶段进行迭代。软件开发过程每迭代一次,软件开发又前进一个层次。采用螺旋模型的软件过程如下图所示:

关于螺旋模型的具体介绍_软件开发_螺旋模型_软件工程_课课家教育

  螺旋模型沿着螺线进行若干次迭代,图中的四个象限代表了以下活动:

  (1)制定计划:确定软件目标,选定实施方案,弄清项目开发的限制条件;

  (2)风险分析:分析评估所选方案,考虑如何识别和消除风险;

  (3)实施工程:实施软件开发和验证;

  (4)客户评估:评价开发工作,提出修正建议,制定下一步计划。

螺旋模型沿着螺线进行若干次迭代,图中的四个象限代表了以下活动:    (1)制定计划:确定软件目标,选定实施方案,弄清项目开发的限制条件;    (2)风险分析:分析评估所选方案,考虑如何识别和消除风险;    (3)实施工程:实施软件开发和验证;    (4)客户评估:评价开发工作,提出修正建议,制定下一步计划。

  1、螺旋模型的优势包括:

  1)设计上的灵活性,可以在项目的各个阶段进行变更。

  2)以小的分段来构建大型系统,使成本计算变得简单容易。

  3)客户始终参与每个阶段的开发,保证了项目不偏离正确方向以及项目的可控性。

  4)随着项目推进,客户始终掌握项目的最新信息,从而他或她能够和管理层有效地交互。

  5)客户认可这种公司内部的开发方式带来的良好的沟通和高质量的产品。

  2、但是,螺旋模型并不是比其他模型拥有绝对优越,事实上,这种模型也有其自身的如下缺点

  1)采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失。

  2)过多的迭代次数会增加开发成本,延迟提交时间。

  螺旋模型由风险驱动,强调可选方案和约束条件从而支持软件的重用,有助于将软件质量作为特殊目标融入产品开发之中。但是,螺旋模型也有一定的限制条件,具体如下:

  (1)如果执行风险分析将大大影响项目的利润,那么进行风险分析毫无意义,因此,螺旋模型只适合于大规模软件项目。

  (2)螺旋模型强调风险分析,但要求许多客户接受和相信这种分析,并做出相关反应是不容易的,因此,这种模型往往适应于内部的大规模软件开发。

  (3)软件开发人员应该擅长寻找可能的风险,准确地分析风险,否则将会带来更大的风险。

1)如果执行风险分析将大大影响项目的利润,那么进行风险分析毫无意义,因此,螺旋模型只适合于大规模软件项目。    (2)螺旋模型强调风险分析,但要求许多客户接受和相信这种分析,并做出相关反应是不容易的,因此,这种模型往往适应于内部的大规模软件开发。    (3)软件开发人员应该擅长寻找可能的风险,准确地分析风险,否则将会带来更大的风险。

  总之,一个阶段首先是确定该阶段的目标,完成这些目标的选择方案及其约束条件,然后从风险角度分析方案的开发策略,努力排除各种潜在的风险,有时需要通过建造原型来完成。如果某些风险不能排除,该方案立即终止,否则启动下一个开发步骤。最后,评价该阶段的结果,并设计下一个阶段。

  小编结语:

  螺旋模型基本做法是在“瀑布模型”的每一个开发阶段前引入一个非常严格的风险识别、风险分析和风险控制,它把软件项目分解成一个个小项目。每个小项目都标识一个或多个主要风险,直到所有的主要风险因素都被确定。那么,文章的内容就到这里,不知道大家对文章内容有没有什么见解,小编在课课家教育欢迎您前来咨询!同时,您也可以关注课课家,更多好文将会继续呈现!

赞(17)
踩(1)
分享到:
华为认证网络工程师 HCIE直播课视频教程