原型开发(英文:Prototype Development)

 什么是原型开发(英文:Prototype Development)

1、什么是原型:
原型(prototype)即把系统主要功能和接口通过快速开发制作为“软件样机”,以可视化的形式展现给用户,及时征求用户意见,从而明确无误地确定用户需求。同时,原型也可用于征求内部意见,作为分析和设计的接口之一,可方便于沟通。

2、原型的主要价值:
原型法主要价值是可视化,强化沟通,降低风险,节省后期变更成本,提高项目成功率。一般来说,采用原型法后可以改进需求质量;虽然投入了较多先期的时间,但可以显著减少后期变更的时间;原型投入的人力成本代价并不大,但可以节省后期成本;对于较大型的软件来说,原型系统可以成为开发团队的蓝图;另外,原型通过充分和客户交流,还可以提高客户满意度。

3、对原型的基本要求包括:
* 体现主要的功能;
* 提供基本的界面风格;
* 展示比较模糊的部分,以便于确认或进一步明确,防患于未然。
* 原型最好是可运行的,至少在各主要功能模块之间能够建立相互连接。

4、原型的处理方法:
原型的处理方法基本上有2种不同类型,即抛弃型和演化型(不同的软件工程书籍称发不同,实质意义则类似)。可以抛弃原型,在取得的明确需求基础上重新开始设计与开发;也可在原型的基础上继续开发。一般小项目不采用抛弃型原型,否则成本和代价似乎会偏高。

5、表达工具
原型的表达工具可以有很多,如果是演化型的原型,当然优先选用软件本身的开发工具。否则还可以应用各种快速显示的工具,例如,HTML,Powerpoint等等,只要能够充分而形象地表达就可以了。

在原型系统中,可以采用一些与常规不同的做法,例如,可以在界面上比较显著的地方写明当前模块或界面的主要目的,由哪些角色操作,能解决其什么问题。这么做可以使得用户或开发团队成员一开始就有非常清楚的概念;又如,对于决策分析,你可以直接把一些分析结果画成图,并且配上一些文字说明,这样可以避免输入大量初始数据,等等。
 
************************************************************************
 
为什么需要原型
建立原型的主要原因是为了解决在产品开发的早期阶段不确定的问题,利用这些不确定性来判断系统中哪一部分需要建立原型和希望从用户对原型的评价中获得什么。原型可以使他们的想象更具体化,有助于说明和纠正这些不确定性,总的来说通过原型法可以很好的减少项目风险。
 
水平和垂直的原型

我们和业务人员经常谈到的是水平原型,水平原型也叫做“行为原型” (behavioral prototype)。探索预期系统的一些特定行为,并达到细化需求的目的。当用户在考虑原型中所提出的功能可否使他们完成各自的业务任务时,原型使用户所探讨的问题更加具体化。它更多从业务需求着手,应用在需求阶段。

垂直原型(vertical prototype),也叫做结构化原型或概念的证明,实现了一部分应用功能。当预期实现阶段可能存在技术风险时,可以开发一个垂直原型。垂直原型通常用在生产运行环境中的生产工具构造,使其结果一目了然(更有意义)。比起在软件的需求开发阶段,垂直原型更常用于软件的设计阶段以减少风险。

抛弃型原型或进化型原型

从原型存在生命时机考虑分为抛弃型原型和进行型原型,抛弃型原型不作为最终产品的一部分,只是作为探索性的回答一些需求问题,细化需求并提高需求质量。由于在开发阶段最终将抛弃这些原型,因此不需要花太大力气去建立该原型。

进化型原型是在已经清楚地定义了需求的情况下,为开发渐进式产品提供了坚实的开发基础,作为产品的部分实现。与抛弃型原型的快速、粗略的特点相比,进化式模型一开始就必须具有健壮性和产品质量级的代码。因此,对于描述相同的功能,建立进化型原型比建立抛弃型原型所花的时间要多。一个进化型原型必须设计为易于升级和优化的,因此,你必须重视软件系统性和完整性的设计原则。要达到进化型原型的质量要求并没有捷径。进化型原型一般在处理架构时会采用。

低保真原型和高保真原型

原型分低保真原型和高保真原型,低保真原型目标在于表达工作主要内容,体现静态的元素,不需要动态交互。高保真原型目标是作出一个和实际上线后的产品差不多的样子,不仅包括静态的界面,还包括交互,甚至有的还把数据保存、逻辑验证等都包含在内。如果客户要求开发之前必须看到和实际产品一样的原型时,这时就需要做高保真原型,如果对于小型项目,或者只是用来做交流主要需求用时,就可以做低保真原型。

原型工具

需求在产品开发中的重要性已经是不需争议的事实,现在需求方法有很多, 业界最常用的一种办法就是通过原型展现需求,通过用例表达需求。业务人员掌握制作原型能够更快更清楚的表达业务,同客户和开发可以进行更直观的沟通,使得大家在理解上容易更一致。然而原型工具有非常多,比如大多数人用过的Excel、Access、Delphi、PowerPoint、Axure、Balsamiq Mockups、ForeUI、iRise、Lucid Spec、Mockup Screens、Pencil、Serena等,甚至开发工具雅奇等也可以用来做原型。工欲善其事,必先利其器,对于刚刚使用原型方法的业务人员来说,如何选择适合自己的原型工具呢?这就需要首先根据原型的目的明确做原型的粒度。

在限定时间内能够将需求表达更清晰需要一个合适的工具。业务人员一般都不会有什么编程经验,我们怎么能够做出表达静态元素界面,又能加入动态交互功能的原型呢?为了能在需求阶段都能够更好的采用原型开发方法,我搜集并使用过多种原型工具,希望找打一款比较使用简单,但又能实现一般的交互功能,最好是业务人员学个一个小时就可以完全自己动手使用了。我用过一个原型工具 GUI Design Studio ,它的主要特点就是操作简单,不需要开发人员帮助,通过半个小时的学习后你将可以自己开始做原型了。《原型工具GUI Design Studio》对这个工具的使用进行可简单介绍。

原型不仅仅是界面

我们可以通过原型来引导用户来使用系统解决问题,但原型不仅仅是需求,它还是设计、开发工具,所以作原型时不仅需要客户的参与,也需要技术人员的参与,但应该尽量由业务人员而非开发人员来实现原型的需求部分。下面是在UCD社区里面看到的一张图,原型最主要功能是表现界面,但要做好界面其实不容易,山下面还有很多东西需要考虑才能支撑界面,其实做原型的过程就是设计系统的过程。我们都希望尽量把开发工作前移,需求能做的工作就不留到开发环节做。如果软件模式一定,那么框架做得好的话就一定可以让业务人员来做一部分现在属于开发人员的工作(注:这部分工作其实本就该属于业务人员),那时大家就能体会到开发软件就如同做原型一样的乐趣了!

使用原型有三个主要目的:

1. 作为一种需求工具,明确并完善需求原型,它初步实现所理解的系统的一部分。

2. 作为一种设计工具,探索设计选择方案原型,探索不同的用户界面技术,使系统达到最佳的可用性,并且可以评价可能的技术方案。

3. 作为一种开发工具,发展为最终的产品原型,是产品最初子集的完整功能实现,通过一系列小规模的开发循环后可以完成整个产品的开发。

OEA的原型工具将会考虑集成需求工具、设计工具和开发工具与一体,由业务需求人员、设计师和开发人员在OpenExpressApp平台下进行连贯的开发,它做的是水平、进化型、高保真原型。
**************************10款交互设计原型开发工具**************************

1、Axure RP(Rapid Prototyping)

Axure(读音为Ack-Sure)无疑是目前最受关注的原型开发工具,其能通过组件的方式帮助网站或软件设计师快速建立带有注释的原型(流程图、线框图),并凭借自定义可重用的元件、动态面板以及丰富的script能够建立基本功能或页面逻辑的动态演示文件。

Axure借鉴了office的界面,能够让用户快速上手,并且提供了丰富的组件样式修改,使得通过其能够创建低保真、高保真甚至接近于实际效果的界面。然而最让人称道的是,Axure的丰富的脚本模式,可以通过点击和选择能够快速完成界面元素的交互,如链接、state切换、动态变化等效果,使得 Axure能够生成十分接近于真实产品的原型。另一方面,Axure能够导入其他人创建的元件库,使得Axure能够满足绝大多数类型产品的设计。

但Axure仍然有一个让人头痛的问题:对于中文的支持不太友好。在小部分元件上输入中午的时候,经常需要像碰运气似的反复切换输入法,破坏了咱们设计师的用户体验。

瑕不掩瑜,Axure仍然是交互设计师的首选原型工具。

2、 Microsoft Office Visio

Visio在2000年被微软收购,并在2002年成为office2003套件中的一个组件,最新版本是2007。Visio能够获得推荐的原因是因为Visio的适用性非常之广,从网站界面、数据库模型,到平面布置图到工艺流程图,Visio都提供了相应的元件库和模板来进行快速创建。

相较Axure而言,Visio更适合于传统行业的生产或流程设计,或者软件及互联网行业中的信息、数据和流程的说明,而不太适用于web界面。因为其的基于web的元件库还是比较少,并且形式和结构也更类似于word中的图形工具,因此在原型开发效率上都有所不足。

3、Balsamiq Mockups

这个基于Adobe AIR Runtime的工具实在是有让人眼前一亮的感觉,手绘风格的元件样式粗犷淋漓,能创建接近于纸上手绘的原型文件。其提供了丰富的手绘风格的web常用元件,包括常用的html控件、以及一些组合控件,如多媒体控制器、标签页、列表、Iphone界面元件等。

Mockups最值得赞赏之处在于其提供的多数组件都可定制外观,对于中文的支持也不错(选择View > Use System Fonts)。

4、Mockflow

Mockflow和以上工具最大的不同在于Mockflow是一项基于Adobe Flex技术开发在线服务,提供了与Balsamiq Mockups基本相似的功能,甚至更丰富的组件,虽然其元件定制化不够强大,但其提供的元件库默认样式却非常适合用来做商业产品原型的搭建。有一个让我爱不释手的功能是模板,可以设置基于任何页面的模板来进行新的页面设计。

与其他模板工具相比,mockflow有一个非常特色的功能,基于web的存储可以在任意电脑上联机打开,同时可以其他人进行快速的分享,并收集在线反馈意见,非常适合虚拟团队的原型设计交流。

虽然在线服务的基本帐号只能创建一个文件,但单个文件却没有限制页数,因此也基本上足够使用。

5、Pencil sketch

Pencil 是一款基于Firefox的扩展组件,安装之后即可在Firefox的工具菜单中打开Pencil的绘图面板。功能比较简单,仅能用以日常简单工作的辅助说明。提供的默认元件都是基于软件工程,因此更适合用于windows桌面程序的简易界面搭建,或者是基本的页面功能说明,并不适用于严肃的原型开发,但好在体积小、又轻便,能够方便将网页中的元素直接拖到或者复制到当前的画布中,这也是Pencil安装在Firefox所带来的便利之一吧。

更多工具...

在以上列举的原型开发工具都是较为常用的,也是在国内的交互设计师们比较常讨论的,但其实和Axure功能相似的软件还有很多,下面也就一些简单说明:

6、 GUI Design Studio

这是一款真的非常强大的原型制作工具,没有在上面推荐的原因是因为我还没有实际体验过,但冲着这工程级的界面设计就没有去尝试的冲动,但是从官方网站的截图和视频演示来看,这款软件的操作模式和前面的原型工具大有不同。Axure之类多是基于页面的原型设计,对于web网站尽管很实用,但是对于软件界面的流程设计却略显繁琐。而GUI Design Studio却另辟蹊径,直接以建立元素与元素之间的关联的方式来自动化的创建动作流程,而从视频演示来看,这样的确很大程度上提升了软件界面原型搭建的效率。

7、 Prototype Composer

Serena 公司免费提供的原型开发工具,功能确实强大,提供了基于项目管理主要流程的产出物文档模板、原型工具以及开发流程控制,这个软件的开发理念非常好,用这一款工具来满足项目开发流程中各个环节的沟通和决策。但软件的学习和使用成本比较高,要了解其中的全部功能,貌似需要花不少时间。另外软件的效率和稳定性还有待提高,试用的过程中多次出错及停止响应。

8、Lucid Spec

由 Elegance科技推出的Lucid Spec是一款很类似Pencil的原型工具,仅仅是提供了更多控件。不过Lucid Spec强调了生成干净的说明文档的功能,这可能是针对于多数原型工具的自动化生成规范的冗余而言的,不过老实说Lucid Spec提供的原型界面太过简陋,并且生成的说明文档也未见优化有怎样的提升。视频介绍

9、Irise Professional Edition

Irise与其他原型工具相比其中一个特色在于提供了样本数据的功能,这是类似于excel表的一个样本数据库,可以通过界面元素直接获取样本数据库中的数据,这样所生成的原型甚至可以使动态数据更新的。

10、Adobe Reader

Adobe reader?没错。其实理论上任何可以创建图形和文本的工具都可以用来原型开发,因为原型本身就是对于业务逻辑和功能界面的模拟或仿真,因此有何理由不能使用PDF格式呢?BoxandArrow的这篇文章《PDF Prototype:》提醒了我们,所有的原型工具都只是工具,而不是设计本身。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值