软件开发|阿里腾讯百度软件测试工程师推荐——软件测试模型之快速原型模型( 二 )


实验型原型
这种原型主要用于设计阶段 , 考核实现方案是否合适 , 能否实现 。 对于一个大型系统 , 若对设计方案心中没有把握时 , 可通过这种原型来证实设计方案的正确性 。
演化型原型
这种原型主要用于及早向用户提交一个原型系统 , 该原型系统或者包含系统的框架 , 或者包含系统的主要功能 , 在得到用户的认可后 , 将原型系统不断扩充演变为最终的软件系统 。 它将原型的思想扩展到软件开发的全过程 。
运用方式由于运用原型的目的和方式不同 , 在使用原型时也采取不同的策略 , 有抛弃策略和附加策略 。
【软件开发|阿里腾讯百度软件测试工程师推荐——软件测试模型之快速原型模型】1、抛弃策略是将原型用于开发过程的某个阶段 , 促使该阶段的开发结果更加完整、准确、一致、可靠 , 该阶段结束后 , 原型随之作废 。 探索型和实验型就是采用此策略的 。
2、附加策略是将原型用于开发的全过程 , 原型由最基本的核心开始 , 逐步增加新的功能和新的需求 , 反复修改反复扩充 , 最后发展为用户满意的最终系统 , 演化型快速原型就是采用此策略 。
采用何种形式、何种策略运用快速原型主要取决于软件项目的特点、人员素质、可供支持的原型开发工具和技术等 , 这要根据实际情况的特点来决定 。
开发步骤快速分析
在分析人员与用户密切配合下 , 迅速确定系统的基本需求 , 根据原型所要体现的特征描述基本需求以满足开发原型的需要 。
构造原型
在快速分析的基础上 , 根据基本需求说明尽快实现一个可行的系统 。 这里要求具有强有力的软件工具的支持 , 并忽略最终系统在某些细节上的要求 , 如安全性、坚固性、例外处理等等 , 主要考虑原型系统能够充分反映所要评价的特性 , 而暂时删除一切次要内容 。
运行原型
这是发现问题、消除误解、开发者与用户充分协调的一个步骤 。
评价原型
在运行的基础上 , 考核评价原型的特性 , 分析运行效果是否满足用户的愿望 , 纠正过去交互中的误解与分析中的错误 , 增添新的要求 , 并满足因环境变化或用户的新想法引起的系统要求变动 , 提出全面的修改意见 。
修改
根据评价原型的活动结果进行修改 。 若原型未满足需求说明的要求 , 说明对需求说明存在不一致的理解或实现方案不够合理 , 则根据明确的要求迅速修改原型 。
模型对比传统的瀑布模型本质上是一种线性顺序模型 , 存在着比较明显的缺点 , 各阶段之间存在着严格的顺序性和依赖性 , 特别是强调预先定义需求的重要性 , 在着手进行具体的开发工作之前 , 必须通过需求分析预先定义并“冻结”软件需求 , 然后再一步一步的实现这些需求 。 但是实际项目很少是遵循着这种线性顺序进行的 。 在系统建立之前很难只依靠分析就确定出一套完整、准确、一致和有效的用户需求 , 这种预先定义需求的方法更不能适应用户需求不断变化的情况 。
用户的不断变化的需求具体表现在:
(1)需求是可变的 。 某些应用软件的需求与外部环境、经营内容等密切相关 , 因此需求是随时变化的 , 按照这样预先指定的需求开发软件 , 当软件开发出来的时候就往往已经过时 , 不符合用户的需要 。
(2)需求是模糊的 。 对于大多数的应用系统 , 例如管理信息系统 , 其需求往往很难预先准确的定义 , 也就是说 , 预先定义需求的策略所做出的假设 , 只对某些软件成立 , 对多数软件并不成立 。 许多用户对他们的需求最初只有模糊的概念 , 想要求一个对需求