A prototype means a preliminary model of anything which gives us a rough idea about the basic functionalities that the real model would have. The prototyping model follows the same strategy.

原型意味着任何事物的初步模型,这使我们对真实模型具有的基本功能有了一个粗略的了解。 原型模型遵循相同的策略。

In the prototyping model, we first take a note of the initial requirements of the user about the software, create its prototype and release it to the user for evaluation. This prototype does not perform all the functionalities that the final software would perform but it depicts all of them. The prototype is concerned with the designing part of the software and not the implementation part. Now, the user evaluates and gives reviews regarding it, if he is satisfied with the model or not. If any further additions or modifications are to be made, then again the changes in the design of the model are made, or else the prototype model is finalized and forwarded for development. After that, it is coded, tested and deployed and then maintained afterward as required.

在原型模型中,我们首先记录用户对软件的初始要求,创建其原型并将其发布给用户进行评估。 该原型不执行最终软件将执行的所有功能,但是描述了所有功能。 原型与软件的设计部分有关,而不与实现部分有关。 现在,如果用户对模型不满意,则可以对其进行评估并给出评论。 如果要进行进一步的添加或修改,则再次进行模型设计的更改,否则将最终确定原型模型并将其转发给开发。 之后,对其进行编码,测试和部署,然后根据需要进行维护。

A basic overview of the Prototyping model can be made from the following diagram:

可以从下图对原型模型进行基本概述:

Fig. The Prototyping model (A type of software lifecycle model)

图:原型模型(一种软件生命周期模型)

为什么要使用原型模型? (Why to use prototyping model?)

While developing software, there are cases wherein the initial stages, we do not know what the overall requirements of the software are. This happens mostly in cases where the customer is not completely sure what he wants his software to look like. So, in these cases, the prototyping model is the best suited because the user can now have some suggestions from the designing team and also make his modifications in the software. Therefore, it is recommended to be used in the following situations:

在开发软件时,有时会处于初始阶段,我们不知道软件的总体要求是什么。 这种情况通常发生在客户不能完全确定他希望其软件的外观的情况下。 因此,在这些情况下,原型模型是最合适的,因为用户现在可以从设计团队那里获得一些建议,并且可以在软件中进行修改。 因此,建议在以下情况下使用:

  • Customer requirements are not clear and complete.

    客户要求不明确且不完整。

  • The Design is not clear, i.e. how the software must look like.

    设计不清楚,即软件外观如何。

  • The technicians and developers are not clear about the design of the software.

    技术人员和开发人员不清楚软件的设计。

  • The user knows what inputs are to be given and what is the expected output that the software must produce, but is not clear with the user interface how these things will be displayed on the device.

    用户知道要提供什么输入以及软件必须产生的预期输出是什么,但是用户界面不清楚这些东西将如何显示在设备上。

翻译自: https://www.includehelp.com/basics/the-prototyping-model-software-engineering.aspx

原型模型| 软件工程相关推荐

  1. 软件工程 瀑布模型、原型模型、喷泉模型和V模型的优缺点及适用场景

    一.瀑布模型 瀑布模型(Waterfall Model)是一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被 ...

  2. 【软件工程】几种常见的软件开发模型:(瀑布模型,快速原型模型,增量模型,螺旋模型,喷泉模型)模型的概念特点优点缺点和不同。

    (瀑布模型,快速原型模型,增量模型,螺旋模型,喷泉模型)各种模型的概念特点优点缺点和不同. (张海藩,吕云翔)著-软件工程 复习记录 文章目录 一.瀑布模型 二.快速原型模型 三.增量模型 四.螺旋模 ...

  3. 【软件工程】软件生命周期模型 --- 瀑布模型、快速原型模型、增量模型、螺旋模型及喷泉模型

    软件生命周期模型是跨越整个生存期的系统开发.运作和维护所实施的全部过程.活动和任务的结构框架. 下面介绍几种常见的软件生命周期模型: 瀑布模型 瀑布模型是将软件生存周期的各项活动规定为按固定顺序而连接 ...

  4. 【软件工程】瀑布模型 原型模型 增量模型 螺旋模型 喷泉模型 RUP过程模型 敏捷过程

    Content 瀑布模型(生命周期模型) 原型模型 增量模型 综合瀑布模型与原型模型 螺旋模型 喷泉模型 RUP过程模型 敏捷过程 详细内容 参考链接 1.瀑布模型.快速原型模型.增量模型.螺旋模型 ...

  5. 软件工程(3)--原型模型

    前言 这是基于我所学习的软件工程课程总结的第三篇文章. 原型模型又称原型化模型.快速原型模型 书上对于(快速)原型模型的描述是:快速原型是快速建立起的程序,它所能完成的功能往往是最终产品能完成的功能的 ...

  6. 软件工程之快速原型模型

    引入快速原型模型的原因: 如果用传统的方法开发一个系统,在初期需求方面的工作时,无论和用户做如何详细的沟通,用户都能难对自己的需求表达准确.全面,因为用户和开发团队双方的知识领域有很大差异. 开发人员 ...

  7. 【软件工程】软件过程各种模型的理解[ 瀑布模型 快速原型模型 增量模型 螺旋模型 喷泉模型 ]

    什么是软件过程? 软件过程是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤. 软件生命周期 瀑布模型 瀑布模型优点 : 1.为项目提供了按阶段划分的检查点 2.当前活动 ...

  8. 基于快速原型模型建立商业呼叫中心SPOMP的应用研究

    摘要:本文从快速原型(Rapid Prototyping,RP)这一软件生命周期模型的原理出发,结合呼叫中心(Call Center,CC)软件项目外包的现状,提出应用快速原型模型于呼叫中心软件项目的 ...

  9. 项目管理模型总结---原型模型、迭代模型

    原型模型  原型模型--样品模型 原型模型的主要思想: 先借用已有系统作为原型模型,通过"样品"不断改进,使得最后的产品就是用户所需要的. 原型模型通过向用户提供原型获取用户的反馈 ...

最新文章

  1. 线性时不变系统以及响应的分类
  2. mac终端修改默认python_Mac 修改默认python的版本
  3. this.counter$ = store.select(fromExample.getCounterCounter)之后马上subscribe
  4. 如何将目录下几百个lib加入到vs项目属性下的链接器
  5. php单下划线的函数,基于PHP函数的操作方法
  6. webpack 的webpack.config文件配置css-loader,style-loader注意的问题
  7. Docker生态技术链
  8. 用友政务知识管理平台_云创数字政务大数据平台,助力政务工作高效管理
  9. ModalPopupExtender使用技巧( operate ModalPopupExtender by JavaScript)
  10. Azure: 给 ubuntu 虚机挂载数据盘
  11. 华为平板 鸿蒙2.0,华为鸿蒙2.0支持型号有哪些
  12. 计算机系统大作业-程序人生
  13. 谷歌清楚缓存快捷键_清除浏览器缓存的快捷键是什么
  14. element el-table表格数据合并
  15. 金仓数据库KingbaseES实现主键自增的方式
  16. Viddy上视频营销最成功的6家公司
  17. 面对对象之差异化的网络数据交互方式--单机游戏开发之无缝切换到C/S模式
  18. 基于Bert论文构建Question-Answering模型
  19. foot元素内容未满或超过一页都底部显示
  20. 针式怎么修改打印机服务器属性,针式打印机设置,小编教你针式打印机怎么设置纸张大小...

热门文章

  1. 给正在转行互联网朋友们的一封信
  2. 解决达梦数据库如何查找表字段名。
  3. js实现整体,局部刷新
  4. 如何阅读一本专业书?
  5. java --help_java help
  6. 如何写好技术部门的年度 OKR
  7. 【头歌】重生之机器学习-线性回归
  8. 阿里云 mysql 高可用_如何在阿里云上构建高可用应用
  9. POJ 1795 DNA Laboratory 已被翻译
  10. Spring官方文档翻译(7章)