摘要】   

    最近在思考影响应用软件成功因素,以及评价软件效能的方法时,看到一个调研数据:70%的项目可以达到技术的成功,30%能达到业务成功,10%能达到商业的成功。在这个大幅递减的数字背后,到底技术人员需要承担什么角色呢?也许,在金融企业IT人员主要以被动响应需求为主,IT只要有效落实到技术的成功即可,是否达到业务或商业的成功应该由业务需求方决定。但进入数字化时代,技术引领业务的话题越来越重要,需要技术人员发挥更多作用。.福特曾说过“如果当年我去问消费需要什么,他们肯定会回答‘一匹更快的马’”,这是一个关于伪需求的问题,在IT领域一直存在。伪需求对于业务用户来说是客观存在的,因为他们并不知道新技术有哪些,他们不会耗费大量时间来思考新技术能否与业务产品更好的结合。时代在变,“以客户为中心”,“客户成功代替业务成功”等思路成为企业共识,但要让应用软件成功,需要IT从业人员往前一步,更好的融入到应用场景背后,利用IT技术优化客户体验,让客户获得成功。方法有很多,比如在渠道方面,提供一致性体验、结合社交手段;在功能方面,提供个性化的应用设计;在信息层面,提升信息触达便利性;在软件设计层面,包括可靠性的提升,性能的优化,界面交互与视觉的优化等。本篇从“界面交互与视觉的优化”的角度,结合前阵子跨界学习的“界面设计”,摘录一些在软件界面上有意思的观点,欢迎一起交流指正。


1、关于界面与角色

    界面是人与机器联系的节点,界面由能够与程序后台进行信息传达的视觉交互前台组成,当前软件的前台界面也称作“图形用户界面”。一个成功的界面设计是在满足了用户需求和期望的基础上,拥有好的可用性、功能性,以及美感的综合体。所以,好的界面设计应以用户的需求和期望为核心,而不是技术人员遵循的逻辑或设计师追求的酷炫效果。

    一个好界面的出现需要多个IT角色的参与,比如负责规划架构、数据模型的架构师,负责用户可用性的体验设计师,负责界面美感的界面设计师,负责前后台编码的程序员。本文主题更贴近的界面设计师,按IDEO公司的定义是具备“T”型能力,“T”的竖代表专业知识,而横线代表跨领域的知识储备,比如社会文化、政治、生态、经济。事实上,现在很多工作岗位越来越需要跨界的技能,跨界的技能也是每个人在职业生涯中需要关注的事情。

    除了软件界面的主要创造者IT角色,还有一个重要的角色是使用者,通常来说,能解决用户痛点,或让用户得到期望的价值是软件应用设计的切入点。要得到用户的痛点或期望,以及针对性的提出解决方案,这里有一个用户旅程分析方法可以借鉴,比如这个关于新入职员工的用户角色分析:

【跨界学习】客户体验从软件界面开始_java


2、软件只有按照用户期望的方式工作才是最佳方式

    一个软件产品通常反映出心理模型、UI模型、实现模型三种不同的模型,理想的产品中这三种模型应该一致。

  • 用户脑中的应用工作原理,是用户关于产品的心理模型。

  • 产品在用户界面呈现的方式,是UI模型。

  • 产品实现功能的过程,是实现模型

    为了更好的设计产品,在设计实现前,需要找出人们对事物工作原理的认知,即为心理模型而设计,找出用户对产品工作原理的认知,设计出与心理模型相匹配的用户界面,构建出行为与用户界面相一致的产品。有效的心理模型有七点:

  • 简单:心理模型是简化版的现实世界,简单的应用设计通常更贴近用户心理模型。

  • 熟悉:采用用户熟悉的交互习惯,像WINDOWS,微信、美团、淘宝等应用己培养了用户的交互习惯,在设计上与这些习惯一致更贴近心理模型。

  • 易于识别:提供用户显而易见的选择。

  • 灵活:提供一些灵活的操作方法。

  • 反馈:即时、有效的反馈很重要,有效要关注反馈的准确、必须且不过度反馈。

  • 安全:可回撤,允许用户对操作后悔。

  • 功能可见性:比如在鼠标进入按钮事件区域时,变色或改变形状。


3、关于伪需求:用户通常偏向自己使用过的产品,而不去尝试不同的事物

    软件产品设计人员需要知道目标用户是谁,他的真实需求是什么,可以采用调研的工具,比如焦点小组,概念测试,5个为什么等。大致可以采用以下三点:

  • 了解人们目前在做什么:找出可以使用他们正在做的事情更加容易,更加高效。

  • 查明人们不想做却不得不做的事情:让用户免于琐事的烦扰,让事情更有趣。

  • 了解用户想做的事:想办法让他们有机会做想做的事。

    在实际工作过程中,技术人员容易更快的进入功能设计开发环节,实际上这是一个开发陷阱,技术人员总是急于找到解决方案,而此时恰恰应该深入思考问题本身,即我们应该着眼于需求而非功能。要有效分析需求,我们需要抓住问题本质,而非表面问题。

    人们通常不知道自己想要什么,我们需要多观察或与目标用户沟通,挖掘用户真实需求。通常有工作观察与情境访谈方法,其中工作观察目标是找出需要什么样的产品或工具,或如何在现有基础上改进;情境访谈则是通常用户行为信息,帮助我们找到更多的改进空间。在工作观察过程中有一些问题可能会有用,比如:

  • 用户是否在某项任务上花费大量时间?

  • 用户是否在重复做某件事情?

  • 用户是否在用权宜之计完成某些事?

  • 用户在做的某些事情是否很无聊,或让他感到很厌烦?

  • 用户是否被迫记录某项任务的操作步骤、技术事项或某他操作情况工作?

  • 用户使用电脑时是否同时使用其它工具?

    而在情境访谈时,则可以考虑准备这些问题:

  • 除了我今天看到之外,你是否还经常做别的任务?

  • 你最常解决什么样的问题?

  • 你为什么用这种方式做这件事?

  • 如果完成任务还需要别的信息,你会怎么做?

  • 和你打交道的人都有谁?他们负责什么?

     另外,还有一些好的思维方法适合进行用户需求调研,比如价值主张、用户旅程分析,或设计思维等等,这里暂不扩展开。


4、文档是产品的一部份

    只有足够重视才能制作出出色的文档,文档应该是产品的一部分。以使用手册为例,出色的手册是一项有用的功能,要像对待产品功能一样对待产品。编写用户手册除了提供给客户使用外,它还迫使你解释清楚系统工作原理,让你思考设计细节,因为如果某些东西很难解释清楚,那他很可能会很难使用,可能需要重新设计,所以说尽量编写手册也许是一个好办法。另外,需要注意的是用户只有在遇到困难时才会阅读手册,因此手册一定要能解决问题,而不是让用户更加郁闷。

    除了使用手册外,在当前互联网、自媒体时代,使用博文、视频、新闻稿也是一个好办法,虽然每一种类型的文档都其不同的效果,但他们都应该重点放在所要解决的问题上,介绍一个产品能完成什么任务。

    在前年的一次与一个微软的工程师交流中,发现国外领先的技术公司里会有一个专门写文档的岗位,这个岗位的员工需要阅读研发人员技术文档,并对文档进行理解,并转换成用户能够理解的文档,甚至说他们能够写出比研发人员对产品理解更深入的文档。据说这个岗位的级别比较高,大家可以考虑了解一下,也许是技术岗位后续一个好的发展方向。


5、关于文字与图标可用性

    文字是用户与产品交流的渠道。设计即沟通,如果别人无法理解你所要表达的意思,他们就无法使用的产品。关于应用产品中的文字的使用,我们首先需要了解用户是如何对待文字:

  • 用户根本不相阅读文字,通常他们会略过文字。

  • 如果一定要阅读文字,通常他们只会在网页上粗略的浏览。

基于此,为了提高文字的可用性,有如下一些建议:

  • 少用文字,只有产品实在无法说明某个问题时才使用文字说明,优先设计UI,并且应该假设用户根本不会阅读你的文字的方法去设计,比如可以考虑不出现“是”或“否”的按钮,而是采用“关闭任务”或“取消”的按钮名称让用户不用看对话框的文字。

  • 不要啰嗦,尽量给出简短、明确、含义清晰的语句,且建议不要用企业或专业口吻的书写,使用人们能够理解的词汇。

  • 合理使用字体与字号,适当使用插图。

    图标是一种界面工具,可以吸引视觉注意,以精确的方式完成视觉传达,通过可理解的视觉隐喻完成动作调用。善用符号图标好的图标能让应用更易于使用,图标的使用最好与整体风格保持统一,如果你采用写实主义的视觉元素设计,那交互方式的设计也应该写实。

    图标的位置也很重要,菲茨定律描述到用户能快速点击到那些较大或比较接近鼠标指针的目标,即关注按钮的大小、位置(通常左上好于其它位置,边缘好于中间)。


6、关于层次

    用户需要把导航和内容,以及能用的选项分开,层级结构就是用来将界面要素区分,区分的时候要先把重要的界面要素按重要性进行视觉分级,要确保用户能容易的使用界面,找到想要的、能进行交互,以及想要做的功能。

    为了减少用户的点击次数,也许会有一些关于页面层次不超过多少层的最佳实践。但一个好的用户界面,不应该指用户通过少量点击就能到达目标,而是应该关注每个点击的动作都显而易见。因为,通常来说减少层次的结构,会相应的增加每一层选项内容,而选项内容多的页面也会给用户带来困扰,有一个建议是不要超过7个选项数量。有一个方法是利用分组方法来规划每个页面的内容,比如采用形状,色彩,卡片,区域等方式。同时,每个层次的页面最好包含一个能够满足目标的选项,只要用户感到一步一步接近目标,他们一般不介意进入一个较深的层次。另外,在某个层面与界面元素交互时,不应该影响上一层级显示的内容,每个层面最好能向用户显示层次结构。


7、原型是一门沟通语言

    设计思维中有一个重要步骤是原型,可以说原型是一门沟通语言,可以很好的让需求提出与实现双方达成共识,越早的原型设计或以越早发现设计中的问题。原型有几种:

  • 流程图:用户如何实现目标

  • 故事板:帮助加入交互设计的细节

  • 草绘低保真:想出各屏内所要显示的内容

  • 线框图:决定各屏内的布局元素

  • 高保真图:快速的设计迭代

    通常可以先先绘制流程图,再是故事板,然后创建粗略的草绘图,再不断添加细节,最终实现高保真的原型图。

    有了原型图可以考虑以打游击的方式进行原型测试,比如采用纸质、平板等方式找用户去验证。

    通常来说,原型的设计是一个很容易忽视的过程,但是这个过程是减少返工的办法,值得大家关注。


8、关于一致性、可发现性、速度

    同类的元素在系统中建议保持:设计元素的一致性,行为一致性,即同类界面元素要有相似的外观,相同的行为方式,比如前一个页面将重要的操作放在左下,最好下一个链接也放在左下。如果一定要创建与常用界面不一样的设计,一定要确保视觉上不会用户造成错误预期。

    可发现性包括哪些功能应该更易于发现,哪些又是不建议易于发现两类。如果应用功能不易于发现,建议重新梳理一下设计是否合理。另外,如果可以帮助用户做决定,可以考虑帮用户决定代替询问,比如默认选项,除非紧急或高危决定时。

    如果要让用户感觉到瞬间完成,交互响应速度要控制在0.1秒,建议为用户提供一些反馈,否则用户可能会不确定是否己执行,而导致重复提交,反馈比如提供一个进度条,漏斗等图形。

         

    今天先摘录整理到这里,后续再跨界扩展一下界面设计的知识。