软件开发模型
为了指导软件的开发,可以用不同的方式将软件生命周期中的所有开发活动组织起来,从而形成了不同的软件开发模型。常见的开发模型有瀑布模型(Waterfall Model)、快速原型模型(Rapid Prototype Model)、演化模型(Evolutionary Model)、增量模型(Incremental Model)、螺旋模型(Spiral Model)和喷泉模型(Water Fountain Model)等。
1.瀑布模型
瀑布模型严格遵循软件生命周期各阶段的固定顺序:计划、分析、设计、编程、测试和维护,上一阶段完成后才能进入下一阶段,整个模型就像一个飞流直下的瀑布。
瀑布模型优缺点
优点:强迫开发人员采用规范的方法;严格规定了各阶段必须提交的文档;要求每个阶段结束后,都要进行严格的评审。
缺陷:过于理想化,而且缺乏灵活性,无法在开发过程中逐渐明确用户难以确切表达或一时难以想到的需求,直到软件开发完成之后才发现与用户需求有很大差距,此时必须付出高额的代价才能纠正这一偏差。
2.快速原型模型