要正确理解原型方法对软件生命周期不同阶段的支持,分别给出:

  1. 辅助或代替分析阶段;
  2. 辅助设计阶段;
  3. 代替分析与设计阶段;
  4. 代替分析、设计和实现阶段;
  5. 代替全部开发阶段;这五种情形所对应的开发活动执行时间顺序。

以下对这五种情形所对应的开发活动执行时间顺序展开阐述。

1. 辅助或代替分析阶段

从上图可知,在分析和需求说明阶段应用原型方法,其开发活动的执行顺序如下:

  1. 定义软件的初步需求
  2. 原型方法辅助或代替分析阶段
    1. 快速分析软件初步需求
    2. 快速构造软件需求说明书
    3. 用户理解软件需求书
    4. 用户对软件需求书进行评价反馈
    5. 根据反馈,决定是否需要修改需求分析结果,进行新一轮的原型方法还是跳出当前分析阶段,进入下一阶段。
    6. 不断循环应用原型方法,直到得出明确的需求说明文档,然后进入下一阶段。
  3. 根据需求说明书,开始进行软件的概要设计和详细设计,输出设计说明文档
  4. 根据设计说明文档,进行编码实现,输出初步的程序系统
  5. 对程序系统进行编码测试,得到软件产品
  6. 运行软件产品,并持续维护。

2. 辅助设计阶段

由上图可知,在设计阶段应用原型方法,其对应的开发活动顺序如下:

  1. 确定初步的软件需求
  2. 对需求进行详细分析,并输出明确的需求说明文档
  3. 原型方法辅助设计阶段
    1. 结合需求说明文档,快速分析需求
    2. 快速构造软件系统的架构,以及不同的功能实现算法
    3. 工程师对现有提出的系统架构进行评价和反馈
    4. 结合评价反馈判断是否需要修改系统架构和设计,以及功能实现算法
    5. 不断循环应用原型方法,直到得到一个合适的系统架构和性能较好的功能实现算法,输出最终的软件架构设计说明文档,进入下一阶段
  4. 编码实现阶段,充分理解软件架构设计文档,并开始实现,并输出符合设计的程序系统
  5. 对上一阶段的程序系统进行编码测试,输出良好的,无缺陷的软件产品
  6. 运行软件产品,持续维护

3. 代替分析与设计阶段

原型方法代替分析与设计阶段,其开发执行顺序如下:

  1. 定义软件初步需求
  2. 原型方法代替分析与设计阶段
    1. 快速分析软件需求
    2. 快速构造设计说明文档
    3. 工程师,架构师对比使用需求和软件设计说明
    4. 对需求和设计提出评价和反馈
    5. 根据反馈决定是否修改需求文档和软件设计文档,循环应用原型方法
    6. 不断循环,直到得到完善的需求说明文档和架构设计说明文档
  3. 根据设计文档,开始编码实现功能,并输出初步的符合设计的程序系统
  4. 对初步的程序系统进行编码测试,得到符合设计和需求的软件产品
  5. 持续运行和维护上线的软件产品

4. 代替分析、设计和实现阶段

从分析到输出程序系统,应用原型方法来代替分析、设计和实现阶段,各开发活动对应的时间实行顺序为:

  1. 定义软件初步需求
  2. 应用原型方法,代替分析、设计和实现阶段
    1. 快速分析软件需求
    2. 快速构造软件设计说明文档
    3. 快速编码,构造软件程序系统
    4. 用户使用软件程序系统,提出评价和反馈
    5. 根据反馈决定是否修改需求,变更软件设计文档,修正软件产品,继续应用原型方法
    6. 继续应用原型方法,直到得到明确的需求说明文档,详细的软件设计文档,和功能较为完备的程序系统,然后进入下一阶段
  3. 对上一阶段的程序系统进行编码测试,集成测试,验证测试,确保输出功能符合需求设计的可靠软件产品
  4. 持续运行和维护软件产品

5. 代替全部开发阶段

原型方法可代替全部的开发阶段,即从分析到输出最终软件产品,其过程顺序如下:

  1. 定义软件初步需求

  2. 原型方法代替所有开发阶段:

    1. 快速分析和明确软件需求
    2. 快速构造软件架构设计说明书
    3. 根据软件设计文档,快速编码构造程序系统
    4. 在编码构造的同时,快速执行相应的编码测试,输出软件产品
    5. 用户使用软件产品,提出评价和反馈
    6. 根据评价反馈,确定是否继续应用原型方法
    7. 继续循环原型方法,直到输出明确的需求说明文档、详细的软件设计文档、可靠的软件产品、完备的测试
  3. 持续运行和维护软件。


以上,完。