敏捷开发

瀑布开发

       瀑布模型(Waterfall Model)是Royce在1970年提出的,他把大型软件开发分为:分析与编程,象工厂流水线一样把软件开发过程分成各种工序,并且每个工序可以根据软件产品的规模、参与人员的多少进一步细分成更细的工序。该模型非常符合软件工程学的分层设计思路,所以成为软件开发企业使用最多的开发模型。


       瀑布模型的特点:
       1、强调文档,前一个阶段的输出就是下一个阶段的输入,文档是个阶段衔接的唯一信息。所以很多开发人员好  象是在开发文档,而不是开发软件,因为要到开发的后期,才可以看到软件的“模样”。
       2、没有迭代与反馈。瀑布模型对反馈没有涉及,所以对变化的客户需求非常不容易适应,瀑布就意味着没有回头路。 
       3、管理人员喜欢瀑布模型的原因是把文档理解为开发的速度,可以方便地界定不同阶段的里程碑。
       瀑布模型的用户很多,也有一些反对的意见:
       第一 瀑布模型不适合客户需求不断变化的软件开发,尤其是客户的业务管理的软件,业务随着市场变化,而软件初期的设计可能已经大大变化,而后期的需求更改成本是开始的10倍基数。在ERP盛行的软件市场里,一方面市场带动需求变化,另一方面初期客户对需求描述不清楚,都为瀑布模型的使用团队带来困难。
        第二 瀑布模型是一种软件文档的开发,把开发者变成流水线上的机器,大量重复性的工作让编程人员提不起兴趣,工作很枯燥,没有激情,编程成了一种没有创意的机械劳动,这让一向以高科技为标志的高级程序人员大为恼火。
        在这种背景下,敏捷开发带来了新鲜的空气!


敏捷开发

       那什么叫敏捷开发呢?简单的说,敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。

       敏捷开发宣言:
      1. 个体和交互胜过过程和工具
      2. 可工作的软件胜过面面俱到的文档
      3. 客户协作胜过合同谈判
      4. 响应变化胜过遵循计划
      从上面的宣言可以看出,敏捷开发的核心是人 、协作、时刻可运行的软件、变化

 

posted @ 2017-04-07 23:00  soul.stone  阅读(200)  评论(0编辑  收藏  举报