软件的生命周期
软件生命周期是指从软件产品的设想开始到软件不再使用而结束的时间。
如果把软件看成是有生命的事物,那么软件的生命周期可以分成6个阶段,即:需求分析、计划、设计、编码、测试、运行维护。
瀑布模型
- 瀑布模型在软件工程中占有重要地位,是所有其他模型的基础框架。
- 瀑布模型的每一个阶段都只执行一次,因此是线性顺序进行的软件开发模式。
优点:
1. 强调开发的阶段性;
2. 强调早期计划及需求调查;
3. 强调产品测试。
缺点:
1. 依赖于早期进行的唯一一次需求调查,不能适应需求的变化
2. 由于是单一流程,开发中的经验教训不能反馈应用于本产品的过程;
3. 风险往往迟至后期的测试阶段才显露,因而失去及早纠正的机会。
瀑布模型的一个大缺陷在于,如果在需求引入的一个缺陷要到测试阶段甚至更后的阶段才发现,通常会导致前面阶段的工作大面积返工。
尽管瀑布模型存在很大的缺陷,例如,在前期阶段未发现的错误会传递并扩散到后面的阶段,而在后面阶段发现这些错误时,可能已经很难回头再修正,从而导致项目的失败。 但是目前很多软件企业还是沿用了瀑布模型的线性思想,在这个基础上做出自己的修改。例如细化了各个阶段,在某些重点关注的阶段之间掺入迭代的思想。
在瀑布模型中,测试阶段处于软件实现后,