快速原型可以在客户需求没有完全明确的情况下得到一个可以运行的系统。该系统可能只有第一个界面,有几个按钮或者list组成,不过,它可以运行。
快速原型的概念和适用场合,只要搜索一下,n多,这里不再累赘。
快速原型的分类可以从结构上分为:单机,B/S,C/S。而细分单机和C/S,又从运行环境上分为:源代码编译型,引擎读入数据型。
源代码编译型,通过可视化开发工具,例如VS系列,Delphi,(从数据库)生成代码工具,UML工具等建立工程编译后得到的程序。其特点是,交给客户使用的系统是经过编译的程序,在与客户交流的时候该程序不可改变,客户的要求只能记录下来,回到编译环境进行修改。
引擎读入数据型,通过工具生成数据,预先编写一个非常周密的引擎程序,解释所生成的数据得到预期的运行程序。其特点是,交给客户的是一个大型的程序和一堆数据文件,如果数据是人可读的XML或者INI之类的文本,那么可以在与客户交流时所提出要求进行小范围的修改,例如改改颜色,改改位置,改改文字等等。
大多数代码生成工具都可以作为快速原型工具来看待。不过我找到了一个这样的工具集合列表,大家看看
http://www.adaptivepath.com/blog/2009/03/24/rapid-prototyping-tools/
这里介绍一种新的快速原型实现方法,是带可视化设计器的引擎程序解释脚本的办法做成的。这个办法也许不新鲜,不过也不是被运用得很多。
组成:
套件 | 描述 | 提供商 | |
LibUIDK Enterprise | UI界面设计器,源代码生成 | iuishop.com | |
Composite Bridges | JavaScript,PHP,WinAPI 接口,桥接界面对象 | duceland.com |
主程序源代码下载: DVDPlayer原型
界面:
个人数据中心代码(DVDPlayer.Button1015.js):
右边类似于IM部分的 JavaScript 代码(DVDPlayer.Button1014.js):
使用:
用户在原型上可以用组合 Ctrl+Alt 点击任何按钮,在运行时编辑 JavaScript 代码,实现与客户面对面的修改程序,精确需求理解。
工程初期,通过简便的UI界面设计,不用过早的编写逻辑代码。在与客户交流过程中,有可以解释执行的脚本,售前支持技术工程师或开发工程师可在运行期与客户面对面地修改界面与展现界面的过程,精确需求理解,为真正进入开发减少了理解上的风险。原型可以为开发利用,也可以丢弃。真正做到提高需求搜集过程效率,减少理解误差,降低开发风险,原型价值最大化。
另一方面,UI设计界面的数据、逻辑脚本都可以通过互联网发布,易于产品互联网化。UI设计数据和逻辑脚本加密后放置网站发布预览版,可以增加客户。将来增加云存储即成为云产品,从而增加外包项目的利用价值。