CardViewer系列之杂篇--成功是个贫乏的教师
如果您还没有阅读本系列开篇《CardViewer项目体会系列文章》,建议花些时间了解一下。
简介:本节以我的三篇日记作为线索,讲述了项目过程中的一件不大不小的故事,也许你也曾经遇到或者正在经历。本节不涉及任何技术讨论,如果只对技术感兴趣请不要浪费您的宝贵时间在这篇随笔上。
2006年3月13日:今天很兴奋地将软件的半成品拿给客户负责人看,本以为会得到欣赏和赞许。但出乎我的意外,结果正好相反。理由是:过于复杂,与他们以前阅读纸张模式差别太大。他们提出:“停止开发,如果不能改变的话”。……
“停止开发”。回到办公室后,我沉默了一个小时,现在我已记不得当时心中的苦闷和对话,大概的主题是痛惜三个月的心血,抱怨客户的认知能力和欣赏水平。为了不让同办公室的人发现这件事,在沉默的一个小时我一直在佯装翻书,我随机地拿起桌旁的《Microsoft.net Compact Framework Core reference》,幸运的是我翻到了这样一页:
One of the most important features of any application, and particularly an application intended to run on a mobile device, is the look and feel of its user interface. No matter how effective or well designed your application is, if you do not provide an interface that is easy to interact with, people are unlikely to use the application.When designing a user interface, you need to bear in mind the differences between the devices that it might be displayed on. Mobile devices are not simply miniature PCs and cannot be treated as such. You must remember that as well as having a smaller viewable area, mobile devices can often display only a limited number of colors. You should ensure that you design your applications to make the best use of available screen real estate……
这句朴素到让你读这本书的第一遍时通常将其忽略的一句话“无论应用程序如何有效或设计得多么巧妙,如果没有提供一个易于交互和使用的界面,人们都是不会喜欢使用它的”是至关重要的。让我又一次听到客户刚才扔下的那句话的后半句“…,如果不能改变的话”。这与先前的沮丧不一样,因为是希望。“是啊,apan,现在你该做的是寻找如何改变的方法,你的功能设计是没有什么大的问题的,因为先前在你们曾经做过大量的需求分析并得到客户的许可,你的问题也许出在,应该是,肯定是出在GUI上,出在用户的交互和使用的界面上”,我对自己说。……开始行动。中午1点,下午4点,晚上10点,凌晨1点,2点,5点,直到早晨9点我约好了负责人……
2006年3月14日。将阅读方式更改后,我们与客户负责人做的第二次沟通。我成功了,尽管成功得的有点勉强。这一次的教训使我在两方面有了认识:一是客户第一,尊重客户的需求;二是善于有效地交流,不要一味埋头苦干和过分自恋。
一个白天加上一个晚上。我们经过仔细分析,站在客户的立场,充分考虑他们之所需,按照客户的要求重新进行的GUI设计分析,并以最快的速度搭建了一个尽可能接近传统纸版浏览方法的界面,部署到了样机上。他们接受了。如果没有这件事,我会一直坚持最初的设计,因为我觉得那是合理的,优秀的。然而客户先前的不满意是有理由、有依据的,并且是真实的,至关重要的。创新需要大胆,但创新也需要细心、科学,还有一点容易忽视的就是,洗牌是需要时间和过程的。
2006年3月19日。今晨5点出发去南开找导师做毕业论文设计指导,但是导师没在。就旁听了其他班的论文指导。指导会上,我讲述了自己的经历,并且得到了友善的支持和忠告,而且有几个老师也讲了他们遇到的一样的经历。在交流的过程中,我又有了新的认识:用户是需要引导的,一个项目的生命周期中,随着用户对系统的熟悉,他们会主动提出新的需求和设计,但是一开始他并一定不会接受至少在你认为是先进并合理的设计。
原先的初衷把自己在项目中遇到GUI设计问题结合他人的优秀文章,综述一篇关于GUI设计的技术讨论文章(其实我没有完整地看完过一本有关GUI设计的书籍),然而我却发现有许多优秀的文章所优秀的亮点在于原则而非教条和具体方法,因为没有哪一套设计的具体操作会真正适合你,它们都需要具体对待,比如GUI Bloopers by Jeff Johnson的许多原则都值得我们去体会,我的这个故事恰恰与如下几下观点相吻合:
- Focus on the users and their tasks, not the technology
- Don't complicate the users' task
- Design for responsiveness
- Try it out on users, then fix it!
结语:于是我开始相信《富爸爸》里说的那句话:成功是个贫乏的教师。因为失败尽管让我经历了一段难熬的时间,但他使我眼前一亮,那是我们在重复一些真知灼见的道理时的实际资本和宝贵财富。