原型设计是一种极好的方式,可以就所提议的系统以及它满足用户信息需求的难易程度获得反馈,如下图所示。原型制作的第一步是估算构建系统模块所涉及的成本。如果程序员和分析师的时间成本以及设备成本都在预算范围内,则可以继续构建原型。

  • 一个原型模型是一个演示执行实际的产品或系统。与实际软件相比,原型模型通常表现出有限的功能 (limited capabilities)、低可靠性 (low reliability) 和低效率 (inefficient) 的性能。
  • 一个原型模型通常用几个快捷方式建造。快捷方式可能涉及使用不准确、低效。原型通常是实际系统的一个非常粗糙的版本。

软件开发的原型模型如图所示。如下图所示,第一阶段是原型开发,控制各种风险。接下来是迭代开发周期。

原型开发指南

一旦做出原型的决定,在将原型集成到 SDLC 的需求确定阶段时,必须遵守四个主要准则:

  1. 在可管理的模块中工作。
  2. 快速构建原型。
  3. 在连续迭代中修改原型。
  4. 强调用户界面。

如您所见,指南建议了处理必然相互关联的原型的方法。每个指南在以下小节中进行了解释。

在可管理的模块中工作

在将系统的某些功能原型化为可行的模型时,分析师必须在可管理的模块中工作。原型设计的一个明显优势是没有必要或不希望为原型目的构建整个工作系统。

可管理模块是一种允许用户与其关键功能交互但可以与其他系统模块分开构建的模块。被认为不太重要的模块特性被故意排除在初始原型之外。正如您将在本章后面看到的,这与强调小版本的敏捷方法非常相似。

快速构建原型

速度对于成功构建信息系统原型至关重要。回想一下,有人对遵循传统 SDLC 提出的抱怨是,需求确定和完整系统交付之间的间隔太长,无法有效满足不断变化的用户需求。

分析师可以使用原型设计来缩短这一差距,方法是使用传统的信息收集技术来确定突出的信息需求,然后快速做出决策以产生工作模型。实际上,用户很早就在 SDLC 中看到并使用了系统,而不是等待完成的系统来获得实践经验。

在 SDLC 中快速和早期组装一个操作原型,使分析人员能够深入了解项目的其余部分应该如何进行。通过在流程的早期向用户展示系统各部分的实际执行情况,快速原型设计可以防止将资源过度分配给最终可能无法运行的项目。稍后,当讨论 RAD 时,您将再次看到快速系统构建的重要性。此外,敏捷建模还建立在快速周转时间的实践之上。

修改原型

开发原型的第三个准则是其构造必须支持修改。使原型可修改意味着在不高度相互依赖的模块中创建它。如果遵守此准则,则在需要修改原型时遇到的阻力就会减少。

原型一般经过多次修改,经过多次迭代。原型的变化应该使系统更接近用户所说的重要内容。每次修改都需要用户进行另一次评估。

原型不是一个完成的系统。带着原型需要修改的想法进入原型设计阶段是一种有益的态度,它向用户展示了如果系统要改进,他们的反馈是多么必要。

强调用户界面

用户与原型(以及最终与系统)的界面非常重要。因为您真正想通过原型实现的是让用户进一步阐明他们的信息需求,所以他们必须能够轻松地与系统原型进行交互。他们应该能够看到原型将如何使他们能够完成他们的任务。对于许多用户来说,界面就是系统。它不应该成为绊脚石。

尽管系统的许多方面在原型中仍未开发,但用户界面必须开发得足够好,使用户能够快速上手系统而不会被拖延。使用 GUI 界面的在线交互式系统非常适合原型。第 14 章详细描述了设计 HCI 时的重要考虑因素。

原型设计的缺点

与任何信息收集技术一样,原型设计也有几个缺点。首先,将原型设计作为大型系统工作中的一个项目进行管理可能非常困难。

第二个缺点是用户和分析人员可能会采用原型作为一个完整的系统,当它实际上是不合适的并且从未打算用作一个完整的系统时。分析师需要努力确保与用户就原型交互和改进的时间表进行清晰的沟通。

分析人员在决定是否进行原型制作、何时进行原型制作以及对系统进行多少原型制作时,需要权衡这些缺点与已知优势。

原型设计的优势

正如我们所见,原型设计在每个系统项目中都不是必要或合适的。然而,在决定是否制作原型时,也应该考虑这些优点。原型设计的三大优势是在系统开发早期改变系统的潜力、停止在不工作的系统上开发的机会以及开发更贴近用户需求和期望的系统的可能性。

成功的原型设计取决于早期和频繁的用户反馈,分析师可以使用这些反馈来修改系统并使其更能响应实际需求。与任何系统工作一样,早期更改比项目开发后期所做的更改成本更低。在本章的后面部分,您将看到敏捷开发方法如何使用一种极端形式的原型设计,这种形式需要现场客户在所有迭代期间提供反馈。


软件过程模型

  • 什么是软件过程模型?
  • 适应性与预测性规划:何时敏捷?什么时候瀑布?
  • 什么是软件开发生命周期?
  • 什么是敏捷软件开发?
  • 线框 vs Storyboard vs Wireflow vs Mockup vs Prototyping

原型软件 (Prototype Development)开发指南相关推荐

  1. 第七十六篇:车辆安全-车载软件C语言开发指南(MISRA-C)

    汽车软件系统C语言开发指南 C语言比C++更简洁.执行效率更高.代码量更小,因此在汽车的小控制部件中被广泛使用.MISRA致力于协助汽车 厂商开发安全可靠的软件的跨国协会,其成员包括了全球一些汽车公司 ...

  2. 第七十七篇:车辆安全-车载软件C++语言开发指南(AUTOSAR C++)

    C++是面向对象的编程,比C语言更加复杂,抽象程度高,但C++在一些图像处理.系统.控件的编程方面,实用性更强,具有自己的编程优势.在车载嵌入式系统的开发中,C和C++都具有重要的作用.C++语言所使 ...

  3. 工业液晶串口屏人机界面组态软件开发指南

    介绍工业串口液晶显示触摸屏与人机界面组态软件HMImaker的开发指南,工业液晶显示触摸屏是一种包含TFT LCD显示屏.LCD控制器.触摸屏.人机界面组态软件系统和单片机TTL电平串口,RS232, ...

  4. libgdx开发指南_使用libgdx进行Android游戏开发–一天中的原型,第1a部分

    libgdx开发指南 在本文中,我将绕开游戏引擎和组件的构建模块,并演示如何使用libgdx库快速制作游戏原型. 您将学到什么: 创建一个非常简单的2D Shooter Platformer游戏. 完 ...

  5. 《多旋翼无人飞行器嵌入式飞控开发指南》里基于FreeRTOS的无人机软件框架

    <多旋翼无人飞行器嵌入式飞控开发指南>里基于FreeRTOS的无人机软件框架

  6. 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET平台开发指南 - 实现插件...

    插件契约介绍 我们知道,要基于平台(容器)加插件的这种模式进行开发,我们必须定义一组契约,用于约束模块插件开发,也就是说,模块插件需要遵守一定的标准进行开发,才能正常被容器调用,这就是IModule所 ...

  7. 读《Boost程序库完全开发指南》

    读<Boost程序库完全开发指南> 2011-05-18 20:47:19|  分类: 读书|举报|字号 订阅 C++确实很复杂,神一样的0x不知道能否使C++变得纯粹和干爽? boost ...

  8. VxWorks驱动程序开发指南--驱动程序的组织结构

    8D Spaces Reliability & Stability & Efficiency 目录视图 摘要视图 订阅 VxWorks驱动程序开发指南(四)--驱动程序的组织结构 20 ...

  9. Oracle WebCenter 11g 快速开发指南--翻译(一)

    第一章:开发者快速开发指南 作为一个开发者,如果你准备建立一个WebCenter Portal application ,你需要一个好的路线图,来指导你从什么地方开始,提供初始化的经验:本章首先解决开 ...

最新文章

  1. 施一公:年轻人不要花时间去拉关系,尽全力做研究,以实力取胜!
  2. 在创建ArcGIS Server10.5的站点时,系统提示创建‘System/publishingToolsEX.GPServer’失败(转)...
  3. 多尺度目标检测--Scale-Aware Trident Networks for Object Detection
  4. 一年级大括号问题专项训练_一年级小学生自信满满地交了试卷,以为会考满分,结果很打脸...
  5. RedisTemplate清空所有键值对
  6. 如何计算给定一个unigram语言模型_数位语音处理Lesson3-初识前端信号处理、语言模型...
  7. 【BZOJ-1090】字符串折叠 区间DP + Hash
  8. 参数等效模型可以用于_扬声器单元的等效电路分析与应用(1)
  9. js通过FormData对象 异步提交文件 实现文件上传(附带参数)
  10. Ovi Store标志着App store模式大战正式开启
  11. cpu单核性能测试软件,CPU常用跑分软件 你知道那些?
  12. java thread queue_java线程池技术(一):ThreadFactory与BlockingQueue
  13. 菜鸡的求学之路-JavaScript
  14. 图像工作回顾之七:人脸姿态估计
  15. TeamTalk源码分析(二) —— 服务器端的程序的编译与部署
  16. 傲视天地 页游 一键端 自玩
  17. 行业认证标准:如何达到DISA ASD STIG规范进行软件开发
  18. 2022新H5拼团抽奖拆盲盒模式源码+功能非常强大
  19. GO 语言基础语法一 (快速入门 Go 语言)
  20. 数值计算方法 数值积分(伪代码 c/c++ python)

热门文章

  1. 蓝湖--UI切图软件,适用于ios,安卓,Web
  2. Android 内置第三方app
  3. igg google
  4. 计算机谱子勇敢爱,【数字乐谱大全流行歌曲】流行歌曲勇敢爱乐谱及歌词.doc...
  5. Mysql横向分组统计
  6. 实验四+070+胡阳洋
  7. django前端页面下拉选择框默认值设置
  8. Java笔试面试-JVM
  9. 站长技术导航二开美化网站源码 网站提交自动秒收录
  10. 【1-2】非本人智慧结晶,有疑问请咨询相关技术人员!