软件生存周期模型总结

 

    软件生存周期模型是从软件项目需求定义直至软件经使用后废弃为止,跨越整个生存周期的系统开发、运作和维护所实施的全部过程、活动和任务的结构框架。

  a) 瀑布模型:瀑布模型也称线性顺序模型。瀑布模型规定了各项软件工程活动,包括:制定开发计划,进行需求分析和说明,软件设计,程序编码,测试及运行维护。并且规定了它们自上而下,相互衔接的固定次序,如同瀑布流水,逐级下落,如图1所示。

                              

 软件生存周期模型总结_第1张图片

  

    然而软件开发的实践表明,上述各项活动之间并非完全是自上而下,呈线性图式。实际情况是,每项开发活动均处于一个质量环(输入-处理-输出-评审)中。只有当其工作得到确认,才能继续进行下一项活动,否则返工。

其特点是:

  提供了软件过程模型的基本模板。强调了每一阶段活动的严格顺序。

  质量保证观点:以经过评审确认了的阶段工作产品(文档)驱动下一阶段的工作,便于管理。

  是一种整体开发模型,程序的物理实现集中在开发阶段的后期,用户在最后才能看到自己的产品。

适合于用户需求明确、完整、无重大变化的软件项目开发。

缺点就是不够灵活。

b) 演化模型:由于在项目开发的初始阶段人们对软件的需求认识常常不够清晰,因而使得开发项目难于做到一次开发成功,出现返工再开发在所难免。因此,可以先做试验开发,其目标只是在于探索可行性,弄清软件需求;然后在此基础上获得较为满意的软件产品。通常把第一次得到的试验性产品称为原型

优点是:

可以根据用户的一组基本需求,快速建造一个原型(逻辑上模仿或是可运行的软件),然后进行评估,进一步精化、调整原型,使其满足用户的要求,也使开发者对将要做的事情有更好的理解。

 

缺点是:

1.为了使原型尽快的工作,没有考虑软件的总体质量和长期的可维护性。

2.为了演示,可能采用不合适的操作系统、编程语言、效率低的算法,这些不理想的选择成了系统的组成部分。

3.开发过程不便于管理。

c) 螺旋模型:对于复杂的大型软件,开发一个原型往往达不到要求。螺旋模型将瀑布模型与演化模型结合起来,并且加入两种模型均忽略了的风险分析。螺旋模型沿着螺线旋转,如图2所示,在笛卡尔坐标的四个象限上分别表达了四个方面的活动,即:

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

风险分析──分析所选方案,考虑如何识别和消除风险;

实施工程──实施软件开发;

客户评估──评价开发工作,提出修正建议。

                                      

 软件生存周期模型总结_第2张图片

  

沿螺线自内向外每旋转一圈便开发出更为完善的一个新的软件版本。

螺旋模型是软件开发的高级策略,不仅适合结构化方法且更适合面向对象方法。它的实施、管理和技术水平产生深远的影响,是最有前途的过程模型之一。

  d) 喷泉模型:喷泉模型对软件复用和生存周期中多项开发活动的集成提供了支持,主要支持面向对象的开发方法。喷泉一词本身体现了迭代和无间隙特性。系统某个部分常常重复工作多次,相关功能在每次迭代中随之加入演进的系统。所谓无间隙是指在开发活动,即分析、设计和编码之间不存在明显的边界,如图3所示。

 软件生存周期模型总结_第3张图片

  

 

 

 

 

 

关于模型的总结:

      其实从全部模型来看,任何一个模型无外乎就是那几个步骤,和瀑布模型一样。所以不妨把其他的模型看成是根据瀑布模型转化来的。在瀑布模型的使用中,为了开发时的敏捷性,灵活性,不断地改进于是就有了其他的模型。

 

你可能感兴趣的:(工作,算法,活动,敏捷,文档,产品)