关于软件生命周期模型的几个问题

栏目: 编程工具 · 发布时间: 4年前

内容简介:软件生命周期模型是软件工程的重要标志和核心内容。软件生命周期模型用的好不好,直接影响到组织的软件工程实施效果。但在实际使用软件生命周期模型过程当中,总会遇到这样或那样的问题。诸如:

软件生命周期模型是软件工程的重要标志和核心内容。软件生命周期模型用的好不好,直接影响到组织的软件工程实施效果。

但在实际使用软件生命周期模型过程当中,总会遇到这样或那样的问题。

诸如:

生存周期模型中各阶段要素描述不全

软件生命周期模型适用范围未能覆盖组织所有项目类型

定义的生命周期模型中未考虑软件交付和软件维护活动,未覆盖全生命周期

部分软件生命周期模型的的适用情况不明确

PS以上问题来自GJB5000评价发现的问题。

如果对这些问题进行分类,可能有定义、选择和剪裁等3类问题。

  • 定义问题

在有关生命周期模型定义的问题中比较重要的是定义的生命周期模型未能覆盖组织的实际情况,组织通过简单地使用瀑布模型或者基于瀑布模型的裁剪就覆盖所有软件项目,而这样一来,对于某些项目来说,就只能使项目的成本增加、项目进度可控性下降,项目管理代价太高……

有些组织已经意识到这个问题,但是苦于缺少制订生命周期模型的经验,无从定义适合自己的开发模型。

这一点可以学习下现有的各类模型的定义以及Humphey著的《软件过程管理》一书中关于过程定义的章节内容。现有的开发模型除了瀑布模型之外,还有快速原型开发模型、增量模型、迭代模型、螺旋模型、敏捷模型、RUP模型等;过程定义的内容可以帮助对模型内的活动作进一步定义。

  • 选择问题

软件生命周期模型的选择指南是面向项目组使用的,有了它,项目才能正确地选择适合本项目的生命周期模型,以追求软件管理效益的最大化。选择指南要能覆盖项目的特点,包括项目类型、软件关键等级、软件规模等。

部分已有的软件生命周期模型的建议的选择指南如下:

模型 建议的选择指南
快速原型模型 已有产品或产品的原型,只需客户化的工程项目;简单而熟悉的行业或领域;有快速原型开发工具;进行产品移植或升级
迭代模型 在项目开发早期需求可能有所变化;分析设计人员对应用领域很熟悉;高风险项目;用户可不同程度地参与整个项目的开发过程;使用面向对象的语言或UML语言;使用CASE工具,如Rose;具有高素质的项目管理者和软件研发团队
增量模型 在整个项目开发过程中,需求都可能发生变化,客户接受分阶段交付;分析设计人员对应用领域不熟悉,难以一步到位;中等或高风险项目(工期过紧且可分阶段提交的系统或目标、 环境不熟悉);用户可参与到整个软件开发过程中;使用面向对象语言或第4代语言;软件公司自己有较好的类库、构件库
瀑布模型 在开发时间内需求没有或很少变化;分析设计人员对应用领域很熟悉;低风险项目(对目标、环境很熟悉);用户使用环境很稳定;用户除提出需求以外,很少参与开发工作
  • 裁剪问题

软件生命周期模型裁剪的主要问题是过裁剪。比如,本来定义的模型是瀑布模型,包括系统需求分析、需求分析、设计、单元测试、集成测试、配置项测试、验收交付这几个阶段,如果裁剪掉单元测试阶段,那么它还是你定义的瀑布模型吗?

关于软件生命周期模型定义、选择和裁剪的这些问题,很大一部分原因是由于没有正确认识项目的实际需要。比如,项目需求是逐步明确的,但用户又需要短时间内交付可用版本,就应该考虑类迭代或增量模型;用户要求尽快提供软件以帮助其明确需求或者验证系统方案,就应该考虑类快速原型开发模型。

理解了项目的实际需要,就可以参照已有的软件生命周期模型,定义适合项目的类似的衍生模型。

这正是:

生命周期问题多,不解需要惹的祸

工程原理不忘记,衍生模型定义得

作者简介:王小双,长期从事GJB5000推广、实施、评价、改进的工作,创建《软件工程之思》微信公众号,一直在《软件工程之思》分享GJB5000、CMMI、软件工程的知识和感悟。现致力于GJB5000咨询以及软件过程改进、软件工程能力提升的研究工作。


以上所述就是小编给大家介绍的《关于软件生命周期模型的几个问题》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

JavaScript and Ajax for the Web, Sixth Edition

JavaScript and Ajax for the Web, Sixth Edition

Tom Negrino、Dori Smith / Peachpit Press / August 28, 2006 / $24.99

Book Description Need to learn JavaScript fast? This best-selling reference’s visual format and step-by-step, task-based instructions will have you up and running with JavaScript in no time. In thi......一起来看看 《JavaScript and Ajax for the Web, Sixth Edition》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

在线进制转换器
在线进制转换器

各进制数互转换器

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具