螺旋模型

核心思想

结合迭代模型和瀑布模型的特点,同时增加风险分析

开发过程中,首先实现关键功能,然后周期性的进行其他功能的开发。每个开发周期划分为需求定义、风险分析、工程实现和评审共4个阶段

在需求定义阶段,分解项目需求,确定需求等级

通过风险分析,将软件项目分解成一个个小项目,确定每个项目的主要风险,以及采取哪种策略来规避风险

通过客户评审来进一步修正计划,进行下一个周期的开发

优缺点

优点:

  • 能够及时获知市场或客户对于产品的反馈
  • 能够灵活的调整开发步骤
  • 能够规避开发风险

缺点:

  • 提高开发成本
  • 开发周期长

适用场景

  1. 高成本复杂项目,通过风险分析,一步步分解项目,进一步规避开发风险
  2. 需求不明确项目,能够及时反馈客户需求进行灵活调整

注意事项

  1. 需要客户积极的反馈和参与
  2. 需要开发人员拥有足够经验来识别和规避风险

相关阅读