Java 版 (精华区)

发信人: cameran (竹晨), 信区: Java
标  题: 用户界面原型技术
发信站: 哈工大紫丁香 (2001年10月10日09:27:38 星期三), 站内信件

用户界面原型开发:技巧和技术  英文原文
 Scott W. Ambler
总裁,Ronin International
2000 年 8 月 10 日
在开发原型 UI 时,请尝试这些技巧。本列表改编自 The Object Primer 2nd Edition
 的第 8 章。
每名专业软件开发人员至少要基本了解用户界面设计技巧和了解用户界面开发如何适应
于整个软件过程,这一点是很重要的。这是一个事实,而不管开发技术是面向对象的、
基于组件的或者甚至是过程化的。我发现以下技巧和技术,在我以前的 UI 原型开发中
非常管用,希望这对您会有所帮助。
与真正的用户一起进行原型开发。原型开发的最佳人选是那些以后将实际使用这些完成
的应用的人员。正是这些人,从成功的实现中获得最多,也正是这些人,是真正知道自
己需求的人。
使用原型开发工具。对能使您快速地将屏幕集中在一起的原型开发工具进行投资。由于
您可能不想保留编写的原型代码(快速编写的代码很少值得保留),如果原型开发工具
生成一种与您准备开发的不同类型的代码,您不必过分担心。
让 SME 使用原型。就象您在买车前想开一下来试车一样,在开发应用之前,您的用户应
该能够试测一下该应用。此外,通过参与原型上机实验,他们可以快速地确定系统是否
满足他们的要求。一个好的方法是请求他们象它是真的系统一样使用这个原型,来完成
一些用例方案。
理解基础业务。 在开发原型之前,您需要理解原型将要支持的基础业务。换句话说,U
I 原型要基于需求。越了解业务,就越有可能构建出支持该业务的原型。
不要在编写好的代码上花费大量的时间。在原型开发过程之初,随着对业务了解的深入
,会抛弃许多已做过的工作。所以,在可能不会保留的代码上花费大量的精力,往往是
毫无意义的。
原型仅仅表示您实际上构建的功能。如果没有可能交付该功能,那么就不要进行原型开
发。
让界面专家来帮助您设计。用户界面专家知道如何开发易于使用的界面,而您有可能在
这方面不擅长。如果您从来没有上过有关人类因素方面的课程,那最好把 UI 原型开发
留给这方面的专家来做。
解释原型是什么。关于 UI 原型开发,开发人员最常见的抱怨是当他们的用户说,“非
常好,今天下午安装它。”发生这种情况是由于用户没有认识到在这一点上需要在系统
上耗费几个月的时间。发生这种情况的原因很简单:从用户的观点来看,一个功能齐全
的应用是由菜单紧密相连的一组屏幕和报告。遗憾的是,这确实是原型看起来的样子。
为了避免这种问题,您应该指出原型就象建筑师建造的用来描述房屋设计的泡沫塑料模
型一样。它不是工作模型。
尽可能地避免实现决策。 在如何命名这些用户界面项时,要小心谨慎。要努力做到使名
称保持一般性,所以不要暗示太多有关实现技术。例如,在用例中,我不愿意使用“ U
I23 Security Login Screen”这样的名称,因为它暗示我想用图形用户界面(GUI)技
术来实现这个主要的 UI 项。我喜欢用“UI23 Security Login”这样的名称,它不会暗
示任何类型的实现技术。
参考资料
有关原型开发 UI 的详细信息,请参阅:
Building Object Applications That Work: Your Step-By-Step Handbook for Devel
oping Robust Systems with Object Technology,Scott W. Ambler 著。
Process Patterns -- Building Large-Scale Systems Using Object Technology,Sc
ott W. Ambler 著。
More Process Patterns -- Delivering Large-Scale Systems Using Object Technol
ogy,Scott W. Ambler 著。
The Object Primer 2nd Edition,Scott W. Ambler 著。
Scott Ambler online writings

--
欲讯秋情众莫知, 喃喃负手叩东篱。
孤标傲世偕谁隐,一样花开为底迟?
圃露庭霜何寂寞,鸿归蛩病可相思?
休言举世无谈者,解语何妨片语时。

※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.239.175]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.331毫秒