原型模型(Prototype Model)


原型模型(Prototype Model)

以前模型(瀑布式和螺旋式)的最大缺点是在开发应用程序之后发生了很多客户拒绝,并且在项目之间没有客户的参与。

因此,他们开始了称为原型模型的新方法。在此,我们将收集客户的要求并准备原型(样品),并得到客户的审查和批准。只有当他们满意时,我们才会开始着手原始项目,这样不会有任何客户拒绝。

原型只是所需软件产品的样本或假人。如果所有提到的模块都存在,那么只有开发人员和测试人员将执行原型测试。

当我们使用 Prototype 模型时

一般来说,我们选择这个模型是因为以下原因:

  • 每当客户刚接触软件行业或不知道如何向公司提出需求时。
  • 当开发人员不熟悉该域时。

注意: 测试和原型测试之间的区别在于 - 在测试中,我们将处理功能,它提供一些输入和输出。 而在原型测试中,我们将只测试外观,即 UI 和前端。

原型模型过程

原型模型有不同的阶段,具体如下:

  • 需求分析
  • 可行性研究
  • 创建原型
  • 原型测试
  • 客户审查和批准
  • 设计
  • 编码
  • 测试
  • 安装维护

原型模型

需求分析

该模型从收集客户的需求开始。项目的这些要求应该是详细的。这些详细信息由业务分析师和产品分析师收到。当业务分析员被分配给基于服务的软件公司,并且产品分析师被分配给基于产品的软件公司

可行性研究

在下一阶段,BA、HR、架构和财务团队负责人将坐在一起讨论产品的成本、将需要哪些资源、使用哪种技术来开发产品以及需要多少时间完成产品并交付。

创建原型

完成可行性研究后,我们将进入下一个阶段,我们将根据从客户收集的数据创建原型(样本或虚拟),Web 开发人员将设计原型。

在这里,我们有以下类型的原型:

  • 静态原型
  • 动态原型

静态原型

在静态原型中,我们将需求的整个原型保存在一个 word 文档中,其中包含所有指南、屏幕截图以及如何构建软件、完成的产品的外观以及如何工作等的描述.

动态原型

动态原型和浏览器是平行的,但是这里我们不能提供任何细节,只有功能是有的,无需输入数据。它就像一个由 html 组成的虚拟页面,带有标签和指向产品表现功能的各个页面的链接。

原型测试

一旦我们构建了原型,BA 将测试原型并执行一轮原型测试。

注意: 原型测试是测试,我们将只测试外观,即 UI 和前端。

客户审查和批准

原型测试完成后,将移交给客户进行审查和批准。如果客户对给定的样品不满意,我们将根据客户的指导方针和反馈更改原型。这个过程将一直持续到客户批准并满意原型。这有点耗时,因为我们必须在原型中一次又一次地执行更改。

设计

获得批准的原型后,我们将开始对最终产品进行高层次和低层次的设计,并在最终原型时考虑客户提出的所有建议。

编码

一旦设计阶段成功完成,我们就会进入编码阶段,相关的开发人员开始根据他们的编程知识开发产品。

测试

开发阶段编译完成后,交给测试工程师。测试工程师测试应用程序功能以及所有输入和输出。

安装维护

一旦我们的最终产品根据最终原型进行开发和测试,它将被部署到生产中。并且产品会经过不时的维护以减少任何中断,这有助于避免重大故障。

笔记:

  • Requirement collection开始Customer review,因为是一个扩展的需求收集阶段,所以把文档化的格式转换成原型格式,实际的设计从设计阶段开始。
  • 以前,原型开发是由开发人员完成的。尽管如此,现在它是由内容开发人员或网页设计师完成的,他们在一些工具的帮助下开发产品原型。
  • 在这种情况下,客户在开始时就有机会要求更改需求,因为在原型而不是实际应用程序中进行需求更改很容易。因此,成本将降低,并且达到预期。

原型模型的优缺点

原型模型有以下优点和缺点:

优点 缺点
我们可以很容易地检测到缺失的功能。 这是一个耗时的过程,因为如果客户更改原型。 而且还会浪费我们的时间,在dummy(原型)中一次又一次地更改,这会延迟真正项目的工作。
在这方面,开发团队和客户就产品的要求和结果进行了清晰的沟通。 没有需求审查,但有原型审查。
在此,存在客户满意度。 没有并行的可交付成果,这意味着两个团队不能一起工作。
我们可以在设计阶段和类似的应用程序中重复使用原型。 有时,部分应用程序可能会导致软件无法在整个系统设计时使用。
在此模型中,与其他模型相比,客户拒绝较少。 问题分析不充分或部分。
可以在早期阶段发现问题。 如果客户对最终产品或原始原型不满意,我们也可能会失去客户的注意力。