开发模型和测试模型
开发模型 1.瀑布模型(Waterfall Model) 瀑布模型是按线性顺序进行的开发模式,主要有计划、需求分析、设计、编码、测试和运行维护这几个阶段。当每个阶段结束的时候都会进行自我验证,如果出现问题就返回上一个阶段。 优点:强调开发的阶段性; 强调早起计划及需求调查; 强调产品测试。 缺点:依赖早期进行的唯一一次需求调查,不能适应需求的变化; 项目的风险要到后期的测试阶段才显露,失去及早纠正的机会; 可以运行的产品要等到项目完成才能被看见。 2.螺旋模型(Spiral Model) 当软件开发初期需求不是很明确的时候,就需要渐进式的开发模式,螺旋模型就是渐进式的开发模型。螺旋模型适用于规模庞大、复杂度高、风险大的项目。螺旋模型有四个阶段:制定计划、风险分析、实施工程、客户评估。这四个阶段是迭代进行的,这种模式在软件测试的时候不允许有一段独立的测试时间和阶段,测试必须随着开发的迭代而迭代。 优点:强调严格的全过程风险管理; 强调各开发阶段的质量; 提供机会检讨项目是否有价值继续下去。 缺点:由于引入了严格的风险标识、风险分析和风险控制,这对风险管理的技能水平提出了很高的要求; 还需要人员、资金和时间的投入。 3.增量开发/迭代开发 增量开发:是将要开发的软件模块化,每个模块为一个组件,从而可以分批次的研发出这些组件。例如画一幅人物画,用增量模型的角度来看就是先画人的头部