---传统瀑布式
瀑布模型式是最典型的预见性的方法,严格遵循预先计划的需求、分析、设计、编码、测试的步骤顺序进行。
步骤成果作为衡量进度的方法,例如需求规格,设计文档,测试计划和代码审阅等等。
瀑布式的主要的问题是它的严格分级导致的*度降低,项目早期即作出承诺导致对后期需求的变化难以调整,代价高昂。
瀑布式方法在需求不明并且在项目进行过程中可能变化的情况下基本是不可行的。
有论文统计他是造成70%软件开发失败的原因。
大体分为这几个阶段:需求分析、设计、编码、测试、维护。
---敏捷开发
敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。
在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。
换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。