一、瀑布模型
瀑布模型各个阶段为:计划,需求分析,设计,程序编码,软件测试,运行维护。
瀑布模型将软件生命周期的各项活动自上而下如瀑布流水依次连接,上一阶段的输出作为下一阶段的输入,同时,在每一个阶段如果发现问题,都可以逆流而上,向上一阶段进行反馈,然后做适当的修改,但是只能逐层反馈,不能跨级反馈。
通过瀑布模型归纳得出:如果每一阶段都能保证有效性,那么最终产生的结果也能保证其有效性。
通过各个阶段,会依次输出(即下一阶段的输入)以下产品:软件需求规约,设计文档,实际代码,测试用例,最终产品等等。
瀑布模型的优点:
- 有良好的需求确认入口,为后续的开发奠定良好的基础。
- 强调设计过程。软件是“创造”出来的,不是“制造”出来的,所以设计显得格外重要。
- 每一阶段结束后要进行复审,允许获取方/用户的参与,有效的控制了系统的质量问题。
- 当前一阶段完成时,只需要关注后续阶段即可。(已经确保了前一阶段的有效性)
瀑布模型的缺点:
- 客户必须能完整、正确和清晰的表达出需求,同时开发人员一开始就必须理解需求。(实际上在很多项目中,客户都很难在一开始就表达出明确的需求&