首页 > 代码库 > 【软件工程】生存期模型(含图)

【软件工程】生存期模型(含图)

       为了反映软件生存周期内各个工作应如何组织,各阶段如何衔接,需要软件开发模型给出直观图示表达。软件开发模型是软件思想的具体化,是实施在过程模块中的软件开发方法和工具。 

下面来介绍开发模型的特点以及他们的优缺点。


瀑布模型

       核心思想是按工序开发软件,功能,设计与实现分开,各阶段分工协作。

       结构化分析设计方法,逻辑实现和物理实现分开。

       活动为:开发计划,需求分析和说明,设计,测试,运行维护。

       各阶段瀑布流水,逐级下落,自上而下。

       特征:

               上一个活动方产生的工作对象为输入

               利用输入,实现本项活动要完成内容

               该项活动结果,传一个下一个活动

               对活动评审。

       缺点:

               缺乏灵活性

              无法解决软件需求不明确。

原型模型

       

       需求分析,软件开发真和用户一起定义总目标,划出区域。

       快速设计出可见部分,用户评估,不断完善。

       迭代

       优点:

              用户交流多。

              低风险开发柔性计算机系统

              易于维护,费用低,时间短

      缺点:

             容易跑题

             忽略基本点

             文档更新麻烦,管理困难

             钻进牛角。

螺旋模型

       

       特点:

             逐步细化,每个周期都进项完善

             持续向用户想法实现。

             螺旋模型是瀑布和演化模型结合,并增加风险分析。

      指定计划,风险分析,实施开发,客户评估。

      优点:

             可选方案和约束条件的强调利于软件重用。

             减少测试不合理的风险

             维护只是模型的另一个周期,与开发没有本质区别

喷泉模型

       

       与瀑布模型对应

       各阶段相互重叠,多次反复。

       对软件复用和生存周期多项开发活动的继承提供支持。

       开发活动,分析设计和编码之间不存在明显边界。

增量模型

       

       把软件产品作为一系列的增量构件设计,编码,集成和测试。

       每个构件多个相互作用模块。

       分解必须遵守约束条件:当把新构件集成到现有软件中时,所形成的产品必须是可测试的。

       优点:

              短时间提交给用户可完成部分工作的产品

              逐步增加功能,同时便于用户学习。

       困难:

              把每个新的增量模型构件集成到现有软件体系结构中时,不破坏原来开发的产品。

       

       每个模式都有自己的特点,软件开发的过程中,要选择适应的模型,结合每种模式的优缺点,通过分析选择最优的办法,事半功倍,设计出好的软件。

 

【软件工程】生存期模型(含图)