瀑布开发模式

敏捷、瀑布开发模式

。_饼干妹妹 提交于 2020-02-09 04:38:23
=================敏捷开发============== 几位食客来餐馆吃饭(来项目啦~) 不确定吃些什么菜,找服务生要菜谱(客户往往提不出具体需求) 服务生拿出菜谱,有图有文,食客点了十盘菜(根据原型及文档基本确定了需求) 厨子们开始准备(项目启动) 小工切菜,厨子炒菜,先炒了两盘,端出去先给食客品尝(先拿实例给客户用用) 食客说还不错,厨子继续炒,继续端出去(开发期间不断给客户试用,敏捷讲究这个,人们叫它迭代) 食客发现这次两盘味道淡了,厨子给加了盐(迭代的好处,需求变更后马上改) 又上两盘,不够辣,厨子给加了辣椒(迭代的坏处,反复多了,增加工作量) 到最后两盘时,应食客要求,给换了这两盘菜,还好没炒(迭代的好处,需求再变更,不怕) 食客吃完,很满意(想怎么挑怎么挑,直到满意) ================瀑布模型开发================ 几位食客来餐馆吃饭(来项目啦~) 不确定吃些什么菜,找服务生要菜谱(客户往往提不出具体需求) 服务生拿出菜谱,有图有文,食客点了十盘菜(根据原型及文档基本确定了需求) 厨子们开始准备(项目启动) 小工切菜,厨子炒菜(基本不怎么去了解需求了) N长时间后,食客饿急:你们先上一盘行不?(N长时间客户什么都看不到) 十盘菜炒好,端了出去(项目一次性完成) 食客说大部分还不错,有两盘味道淡了,有两盘不够辣,有两盘想换掉

软件开发模式:瀑布与敏捷对比

半世苍凉 提交于 2019-11-26 03:03:24
在软件开发时,经常面对的第一个项目实现决策是“我们应该使用哪种开发方法?”这是一个引起很多讨论(和激烈辩论)的话题。如果您以前没有使用过这种方法,那么适当了解开发方法和理论是必要的;简单地说,这是一种组织软件开发工作的方法。这与项目管理的风格或特定的技术方法无关,尽管您经常会听到这些术语混在一起或互换使用。最流行的两种基本方法是:瀑布开发和敏捷开发。这两种方法都是可用的、成熟的方法。 现在,说起敏捷开发(Agile Model)和瀑布开发(Waterfall Model)模式,很多人认为敏捷开发是未来的项目实施的趋势,瀑布实施太老土已经过时了。另外确实一些跨国企业如索尼,联想也在使用敏捷的方式实施一些项目。但实际上我们看到绝大多数公司还是依然在采用瀑布的方式实施项目。本文主要简单介绍敏捷和瀑布的区别和优劣。 敏捷开发和瀑布开发 1、瀑布模型 瀑布模型是一种项目分解为有限的阶段来开发软件的方法。只有在审查并验证其前一阶段时,开发才会应进入下一阶段。在瀑布模型中,阶段不重叠。在这种方法中,事件的顺序是这样的: 收集和记录需求 设计 代码和单元测试 执行系统测试 执行用户验收测试(UAT) 解决任何问题 交付成品 对于瀑布的开发模型来看,似乎依然具备很可靠的工作逻辑,一个工程或项目分为多个阶段,每一个阶段都投入相应的资源,来完成本阶段的工作。每一个阶段到下一个阶段,都有明确的输入输出产物