软工视频----总结(模型和开发)

迭代开发

主要的关键字是迭代,所以我们应该先弄清楚什么是迭代。

迭代是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果。每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的初始值。

迭代开发:在初期,开发人员拿一个简易产品给客户看,此时还有好多功能没有添加,bug也很多,客户会对此给出意见,这样开发人员就知道此时的产品里客服需求有多远,接下来对上一个产品的需求分析框架设计、代码、测试等等的基础上,进一步改进,又拿出一个更完善的产品来,给客户看,让他们提意见。就这样,产品在功能上、质量上都能够逐渐逼近客户的要求,不会出现像瀑布模型那样花大量心血,直到最后发布之时才发现根本不是客户要的东西的情况。

优点:1)降低风险。
           2)得到早期用户反馈。
           3)持续的测试和集成。
           4)提高复用性。

敏捷开发

关于敏捷开发和迭代开发,有个更为仔细的介绍,请点这里

各个模型的优缺点及应用前提

瀑布模型

优点:1)为项目提供了按阶段划分的检查点。
           2)当前一阶段完成后,您只需要去关注后续阶段。
           3)流水依赖,便于分工协作。。
           4)推迟物理实现,易于修改文档,有复审质量保证。

缺点:1)开发周期长。
           2)在项目各个阶段之间极少有反馈。
           3)只能在项目生命周期的后期才能看到结果。

应用前提:1)在开发时间内需求没有或很少变化。
                  2)分析设计人员应对应用领域很熟悉。
                  3)低风险项目(对目标、环境很熟悉)。
                  4)用户使用环境很稳定。
                  5)用户除提出需求以外,很少参与开发工作。

渐增模型

扫描二维码关注公众号,回复: 13086192 查看本文章

优点:1)开发的适中开发人员和用户都共同参与,有问题可以随时修改,从而很好的满足了用户的需求
           2)便于根据市场做出反应。
           3)切实的项目进展,有利于进度控制。
           4)与用户见面块,开发效率高。

缺点:1)开发周期长。
           2)筒体结构上不如瀑布型清晰
           3)软件的文档不如瀑布型的划分严格

应用前提:1)适用于那些知识型软件系统的开发。
                  2)周期长,成本高。
                 

螺旋模型

 螺旋模型”的核心就在于不需要在刚开始的时候就把所有事情都定义的清清楚楚。轻松上阵,定义最重要的功能,实现它,然后听取客户的意见,之后再进入到下一个阶段。如此不断轮回重复,直到得到满意的最终产品。

分别经历了四个阶段:

制定计划:决定目标,方案和限制

风险分析:评价方案,识别风险,消除风险

实施工程:开发,验证下一产品

客户评估:评价开发工作,提出修正建议,制定下一步计划

螺旋模型很大程度上是一种风险驱动的方法体系,因为在每个阶段之前及经常发生的循环之前,都必须首先进行风险评估。

优点:1)减少了过多测试(浪费资金)或测试不足(产品故障多)所带来的风险
           2)强调各个开发阶段的质量

缺点:1)过多的迭代次数会增加开发成本,延迟提交时间

适用:螺旋模型强调风险分析,但要求许多客户接受和相信这种分析,并做出相关反应是不容易的,因此,这种模型往往适应于内部的大规模软件开发
           

喷泉模型

优点:1)该模型的各个阶段没有明显的界限,开发人员可以同步进行开发
           2)可以提高软件项目开发效率,节省开发时间。
           3)适应于面向对象的软件开发过程。
           

缺点:1)由于喷泉模型在各个开发阶段是重叠的,因此在开发过程中需要大量的开发人员,因此不利于项目的管理。
           2)筒体结构上不如瀑布型清晰
           3)软件的文档不如瀑布型的划分严格

应用前提:1)适用于那些知识型软件系统的开发。
                  2)周期长,成本高。

猜你喜欢

转载自blog.csdn.net/weixin_44663188/article/details/108189006