• 即将更新编译原理,机器学习,JavaScript,HTML/CSS等文章,谢谢关注~
  • 由于算法限制,搜索时注意简化关键字,谢谢支持~
  • 网站不兼容IE5.0及以下,请使用主流浏览器访问.
  • 软件工程生命周期模型对比分析

    正如任何事物一样,软件也有其孕育、诞生、成长、成熟和衰亡的生存过程,一般称其为“软件生命周期”。软件生命周期一般分为6个阶段,即制定计划、需求分析、设计、编码、测试、运行和维护。软件开发的各个阶段之间的关系不可能是顺序且线性的,而应该是带有反馈的迭代过程。在软件工程中,这个复杂的过程用软件开发模型来描述和表示。

    迭代-递增生命周期模型

    长处:

    ①与现实世界软件开发最接近的模型,蕴含统一过程方法
    ②为检查软件产品提供多个机会,每个迭代包括测试流
    ③在早期可以确定其蕴含的结构的健壮性
    ④能够较早地减轻风险
    ⑤我们总是有该软件的一个工作版

    关键词:米勒法则、逐步求精

    增量模型

    在有限的时间内,在一套功能有限的版本的基础上不断扩充。

    使用条件:开发时间有限、开发人员不足、有明确的初期模型

    任务流:线性、并行(需求不断地加入任务流)

    注意点

    ①第一个增量是核心产品,满足用户基本需求。
    ②根据客户使用进行评价、制定增量计划。
    ③每个增量都是可运行的产品。

    进化树模型

    长处:与现实世界软件开发最接近的模型,与迭代递增模型等价。

    编码-修补生命周期模型

    长处:适用于不需要任何维护的小程序

    短处:总的来说不适合重要的程序

    注意点:维护工作昂贵

    瀑布生命周期模型

    系统顺序的开发方法

    使用条件:①可以清楚地了解用户的需求②需求必须准确定义和相对稳定

    任务流:线性任务流

    注意点:

    ①不适用项目的不断变更
    ②不适用需求不确定的项目
    ③不可违反开发顺序
    ④文档驱动(也是弱点)

    长处:纪律性强制的方法、文档驱动(也是弱点)

    短处:交付的产品可能不符合客户的要求

    快速原型开发生命周期模型

    每次迭代都会产生一个更加完整的版本

    使用条件:①用户提出最基本的需求,没有定义更加具体的功能特性②对算法效率,操作系统不确定。

    任务流:迭代/(线性)

    注意点:① 开发者对原型随意搭建②为了加速构建,使用不合适的OS③速度是关键

    长处:确保交付的产品符合客户的要求

    短处:还没有证明无懈可击

    开源生命周期模型

    关键词:

    ①报告并纠正缺点是纠正性维护
    ②添加额外功能是完善性维护
    ③为该程序向一个新环境转换接口是适应性维护

    长处:少量实例中工作得相当好(Linux、Apache、gcc)

    短处:实用性有限,通常不起作用

    同步-稳定生命周期模型

    关键词:同步、稳定化、冻结

    长处:能满足未来用户的要求,确保各组件能够成功集成

    短处:除了在Microsoft公司,还没有广泛应用

    敏捷过程

    有效响应变化+哲学思想

    关键:①有效沟通②强调最终产品快速交付③将客户融入团队④可以灵活调整计划

    特点:

    ①团队小——小而高度自主
    ②产品快——可以快速交付成功的系统
    ③过程灵——最小化软件工作产品,对整体精简开发,对变更有更良好的响应。

    关键词:

    ①测试驱动开发(TDD):制定出任务的测试用例
    ②结对编程(pair programming)
    ③时光盒(timeboxing):频繁交付软件
    ④站立会议(stand-up meeting)

    长处:客户需求模糊时能很好地工作

    短处:似乎只适合小项目

    螺旋生命周期模型

    长处:风险驱动

    短处:只适合用于大型的内部软件产品,开发者必须精通风险分析和风险排除

    径坐标代表迄今累计的成本,角坐标代表螺旋型的进展,螺旋的每一圈对应一个阶段,每个阶段开始于(左上)确定该阶段的目标、实现办法、限制条件,如果成功减少风险,则进入下一个阶段(右下)

    总结

    参考资料

    https://wenku.baidu.com/view/718cb107aaea998fcc220e70.html

    http://www.docin.com/p-1165870498.html

    http://blog.sina.com.cn/s/blog_75f397940101dgmj.html

    读者评分
    [评分人数: 1 平均分: 5]

    评论

    OmegaXYZ