软件工程——六种模型

老子叫甜甜 提交于 2020-01-22 04:01:13
  • 瀑布模型

    

思想:1.从制作时间上按工序把问题化简

                     2.将功能实现与制作分开便于分工协作

特点:1.时间顺序性和依赖性

                  2.推迟实现的观点

                         3.质量保证的观点

优点:1.奠定了软件工程方法的基础;

                    2、流水依赖,便于分工协作

                               3.退出物理实现,易于修改文档,有复审质量保证

缺点:1.和用户见面较晚

                   2.成功率低,一般为25%

使用范围: 1.适用于系统要求明确的系统

                           2.各种应用软件的开发均可以使用

开发方法:遵循生命期划分,明确各阶段任务上一阶段完成任务后产生的文档给下一阶段,不听阶段任务有不同级别的软件人员承担。

  • 快速原型模型

思想:找出主需求快速建立原型,对原型评价修改测试

方法:1.丢弃型开发:第一次开发的原型不适最终的,为了获取数据 

                   2.间増式开发:第一次原型基础上修改,再以第二次原型为核心修改

好处:用户和设计人员一直在一起

  • 演化模型

 

     由于开发初期对需求认识不够,很难一次开发成功,会出现返工。

第一次试验开发,目标是探索可行性,弄清软件需求

第二次在此基础上获得较为满意的产品(第二次有可能是多次)

  • 渐増模型

基本思想:允许从部分需求出发,先建立一个不全面的系统通过测试这个系统,进一步是系统扩充和完善。

优点:开发的始终开发人员和用户都共同参与,有问题可以及时修改,从而很好的满足用户的需求

适用范围:适用于那些知识型软件系统的开发(需求不明确)

特点:1.整体结构没有瀑布模型清晰

                  2.软件文档不严格

                          3.周期长,成本高

                                  4.与用户见面快,开发效率高

  • 螺旋模型(大型开发)

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

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

      实事工程——实施软件开发

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

多次原型反复并增加风险评估的开发模型

  • 喷泉模型(各阶段无明显界限)

认为软件的各个周期是相互重叠的和多次反复的

哪个阶段有问题就去找哪个阶段

 

最后说一下“变换型”

思想:从软件需求的形势规格说明出发,经过一系列的程序变化,得到最终的结果。

特点:有严格的数学理论和形式化的技术支持,但目前在研究和实验阶段,不能实用。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!