1.瀑布模型核心思想是按工序将问题化简,将功能的实现与计划分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划,需求分析,软件设计,程序编码,软件测试和运行维护6个基本活动,并且规定了它们自上而下,相互衔接的固定次序,如同瀑布流水,逐级下落。
2.瀑布模型有以下特点:
1>为项目提供了按阶段划分的检查点。
2> 当前一阶段完成后,只需要去关注后续阶段。
3>强调文档的作用。要求每个阶段都要有仔细验证,但是这种模型的线性过程太过于理想化,其主要问题在于:
a.各个阶段的划分完全固定,阶段之间产生大量的文档。极大地增加了工作量。
b.由于开发模型是线性的,用户只有等到整个过程的末期才能看到开发成果,从而增加了开发的风险。
c.在瀑布开发模型下,早期的错误可能要等到开发后期的测试阶段才能发现,进而带来了严重的后果。
3.软件开发根本没有什么灵丹妙药可言。虽然敏捷编程技术可以很快开发出优秀的应用软件,但不是说这项技术适合每个项目。在实施敏捷之前,一定要对项目做好分析,要对症下药。