首页 > 编程知识 正文

瀑布型 迭代型 增量型 敏捷,瀑布模型的开发活动

时间:2023-05-05 19:11:43 阅读:225672 作者:2823

瀑布模型:

    瀑布模型核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。

优点:1)为项目提供了按阶段划分的检查点

            2)当前一阶段完成后,只需要关注后续阶段

            3)可在迭代模型中使用瀑布模型

            4)提供了相对固定的模板,6个阶段有一个共同的指导过程

缺点:

            1)各个阶段的划分完全固定,阶段之间产生了大量的文档,工作量较大

            2)开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险

            3)早期的错误可能要等到后期的测试阶段才能发现,进而带来严重的后果

 

 

迭代模型: 
迭代的方式就有所不同,假如这个产品要求6个月交货,我在第一个月就会拿出一个产品来,当然,这个产品会很不完善,会有很多功能还没有添加进去,bug很多,还不稳定,但客户看了以后,会提出更详细的修改意见,这样,你就知道自己距离客户的需求有多远,我回家以后,再花一个月,在上个月所作的需求分析、框架设计、代码、测试等等的基础上,进一步改进,又拿出一个更完善的产品来,给客户看,让他们提意见。

就这样,我的产品在功能上、质量上都能够逐渐逼近客户的要求,不会出现我花了大量心血后,直到最后发布之时才发现根本不是客户要的东西的情况。
 

敏捷开发:

首先把客户最关注的软件原型先做出来,交付或者上线,在实际场景中去修改弥补需求中的不足,快速修改,再次发布版本。再次上线或者交付。通过一些敏捷实践方式,细化story,可以提供更小的迭代。如此循环,直到用户(客户)满意。适用于需求不明确的项目、创新性的项目或者需要抢占市场的项目。

 

敏捷开发和迭代不是一回事

敏捷开发与迭代式开发是整体与局部的关系。打个比方,前者就像地球,而后者像欧亚大陆。

敏捷开发是一个总体概念,而迭代式开发只是几乎所有敏捷开发所采用的一个主要的基础实践。敏捷开发除迭代式开发外,还包含了其他许多管理与工程技术实践,如演进式架构设计、敏捷建模、重构、自动回归测试(ART)等等。
 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。