作为交互新人入职几个月,在与项目一起成长的时间里,踩了很多坑,积累了一些经验趁此机会记录下来作为工作的总结。
经验1:【甄别伪需求】
踩过的坑:
公司的产品是一款做校园网上超市的电商类APP。主要服务对象是学生。在做首页优化改版的时候,当时有一个需求是增加“休闲零食”等学生用户常用模块的曝光度。产品经理提出要增加一个用户在首页可自由调整栏目顺序的功能。当时心里有小人打鼓说这个需求怪怪的会不会哪里有问题,因为调整栏目顺序属于高阶操作,且需要一定的开发成本,学生用户消费的商品类别大致集中单一,是否有必要做诸如此类的个性化定制?但我还是硬着头皮设计了一套调整栏目顺序的流程。
拿着这份设计稿找几个设计老司机帮我过稿,在老司机们的犀利追问下,让我意识到真正要解决的问题是:增加学生常用模块的曝光度而不是自由调整栏目顺序。
抱着新的目标重新审视这个需求后发现,可以在首页banner下方增加商品分类的图标入口,从而最大程度地缩短用户流程并简化操作。
以上的案例,需求的本质是“增加学生常用模块的曝光度”,而产品经理给我的需求“调整首页栏目顺序的功能”其实已经是一种解决方案,且这个解决方案并不一定是最佳的。
所以设计师应该需要有甄别需求真伪和追问需求本源的意识,通过与产品经理沟通、与用户沟通来判断。一般来说,遇到以下几种形态的需求时要特别留意:
1、需求中只写着“需要某功能”的时候
添加功能归根到底是一种解决方案而不是需求。一般产品经理会将真实需求和通过真实需求转换出的解决方案一并交给设计师。但如果需求中只有功能点,而没有为什么需要这些功能和这些功能需要帮助用户解决什么问题时,就需要找产品经理再三追问和确认。
2、需求来源于“某人觉得”的时候
这类需求很有可能是极少数人的需求。所以当需求的来源是个人时,尤其需要验证这是不是真实用户群体的需求。
3、需求写着“参考竞品”的时候
经常会陷入一个“竞品做了我们也要做”的怪圈。但其实可能竞品与我们要解决的核心问题是不一样的,或者竞品的使用场景是不一样的。所以当需求写着“参考竞品”的时候一定要针对自己项目的情况追问一下我们为什么要做。
经验2:【特别考虑异常事件流】
踩过的坑:
最近在做一个“一元夺宝”项目,项目在进行设计评审的时候被总监质问:“有没有充分考虑用户使用时的各种场景?有没有尽可能全面地考虑页面各种状态特别是一些异常状态?什么叫‘参考一般支付流程’,考虑了支付失败会出现怎样的页面了吗?”
用户在使用app时,除了正常的使用场景,还会碰到一些特殊场景:如失败页面;错误页面等。能合理全面地考虑到各种异常事件流,是考验交互设计师逻辑思维能力以及基本功的标准之一。异常事件流包括以下几种类型:
1、用户输入错误
用户输入错误后应该通过实时的验证立刻给予用户反馈,这里的反馈文案应该遵循“邻近原则”,始终在操作情况中放置反馈消息,如最好把实时验证结果放在输入位置的右侧或下方,而非用一个模态对话框。且反馈信息通过适当的颜色增强用户可读性(错误消息红色、警告信息黄色、成功信息绿色)。
2、应用系统错误
应用系统错误包括网络异常、404报错、权限未开启等异常状态。
1) 网络异常
网络异常是最为常见的应用系统错误状态,可能是网络切换(即从WiFi状态切换到3G/4G网络)或网络中断所导致的。在设计这种状态时,要做到三点:抚慰用户情绪、告知用户问题发生的原因、告知用户解决方法。
具体的处理形式通常有三种:
a) 整页提示
通过情感化的插画图片、网络异常文案、重新连接网络的button来组织这一状态下的页面。
b) 预设图和占位符
即事先在app中预设好图标和占位符来代替加载的数字、图片、文字等数据、也就是预处理的过程。
c) toast和dialog
toast为非模态弹框,会自行消失,仅告知时用;dialog是模态弹框,有告知+操作入口时用。
2) 404报错
即网页或者文件未找到。常通过情感化插画的形式处理该页面并且通过返回主页的button引导用户操作。
3) 权限未开启
通常通过toast和dialog提醒用户操作。
3、其他失败状态
如无法登陆、余额不足付款失败、信用卡被拒等。
作为一名新人,应该要特别留意这些异常流程,将这些进行积累分类,下次进行流程设计时尽可能考虑全面平时积累的异常流程,进行充分的条件判断和分支操作,从而完善用户体验。
经验3:【注意交互稿的规范性】
踩过的坑:
刚开始的时候做过一个“签到”模块的优化,即把原来存在感很弱的只有图标的签到做出一些趣味性内容出来从而增强用户点击率并且为“发现”模块带来流量。原型图画完标注完必要的流程箭头和一些简单的设计点后便把交互稿抛给了开发。由于没有规范化标注的意识,很多细节都没有在交互稿中说清楚,所以开发人员需要经常过来我的工位和我口头确认细节,导致了很多时间的浪费。
各行各业都需要规范化,互联网行业亦是如此。因为从产品到交互到视觉再到开发,这是一段环环相扣的过程,交互设计师作为设计者在传递交付物给实施者——开发人员的时候只有充分并且清晰地传达清楚设计点才能使信息传递更有效率,才能避免因沟通不到位导致的与自己的设计预期不一致等问题。其实这和我本科学习的建筑设计是一个道理,建筑的各种技术图纸非常重视尺寸标注,标注轴线的位置也需要保持一致性(墙中/内墙/外墙),建筑各种零件的图层分层的规范性。建筑如果发生一点点的差池首先就是审核设计单位的技术图纸有无问题,有没有满足规范,如有建筑设计人员将成为事故的第一责任方。同理,交互设计稿就像签了名的建筑设计图纸,在交付给下一层级时必须确保做到规范化,以做到让开发易懂。根据我的工作经验,将原型图需要标注的内容总结为以下三部分,这三部分由界面全局到元素细节、由界面之间到界面内的层级顺序进行以此论述:
1、页面流程(界面之间)
这一部分不用多说,往往和我一样的交互新人的都会把重点放在流程跳转关系上面。需要说的是这里除了要用页面流程图表达界面之间的跳转关系,还要标注好页面的转场方式,有无转场动效等。比如说从商品列表进入到商品详情页是从右侧直接弹出一个新的页面还是以一种借图的方式从中心呈扩散式的加载。
2、界面内容布局(界面内)
这一部分新手较容易忽视的地方,包括三方面:
界面中控件(元素)有哪些,控件的位置如何摆放?
不同状态下的该页面(如正在加载状态;加载完成有内容的状态;加载完成无内容的空状态;失败状态(比如网络异常/权限未开启);横屏状态;结束状态;不同角色的用户看到的内容是否一样)
界面内内容的加载方式,何时加载,是否可以考虑缩短用户操作流程和减少用户的等待感。
3、交互操作(界面内)
这一部分同样是新手容易忽视的地方,主要为界面上的每个元素(如输入框、按钮等)的设计,需要对该元素进行细节性考虑,如输入框有无字段长度及类型的限制、默认提示文案是什么、光标是否置入此输入框。还需要考虑不同状态下该元素的变化,比如说同一个按钮,是否有可用和禁用之分。
经验4:【文案表述的重要性】
踩过的坑:
在设计一元夺宝模块的时候,为了安慰未中奖用户,会回馈给没有中奖的用户一个随机金额的红包。方案设计好后交给老司机过目时老司机们提出了一个非常细小但却让我思考良久的问题:“为什么叫‘安慰红包’?考虑了用户的心理需求了吗?改为‘惊喜红包’会不会好点?”
确实,我们新人一定会重视诸如流程之类大环节,却总是忽略诸如文案表述之类的小细节。然而,交互设计的工作本就是需要经常与细节打交道的工作,为此,我通过工作积累加之网络干货总结梳理了文案设计的一些要点和策略:
1、准确直接
为了方便用户进行确认操作,弹框按钮的文案需要直接明确地写出相应操作(此外按钮还会使用彩色-主流程操作;线框-分支流程操作;红色警示色-慎重操作来进行区别)。这样,用户甚至可以不需要仔细阅读和思考,只要轻扫文案就可以快速做出选择。
2、主动语态
既然UI界面始终以用户为中心,UI文案就始终以用户为主体来写作。相对于使用宾语作为主语的被动态,用户作为主语的主动态,与用户直接相关联,能调动其情绪,更能让用户直接、毫无负担的接受信息。比如:“您已修改此设置”优于“此设置已被您修改”。
3、积极
用积极的用词,能鼓励用户去做给他带来好处的操作,在情感上用户也更愿意顺从积极的指令。正如上文提到的:“惊喜红包”优于“安慰红包”。但有例外:起报错、提醒或警示作用时,消极用词能更直接的点明重点,比如:“验证码错误”优于“验证码不正确”。
4、先说目的
当我们希望用户进行一个操作,而这个操作会花费他们一些时间、很可能他们不愿意去做的时候,先说明操作的目的和重要性,能促使用户更愿意去执行。这就是“先说结论”法则。
5、情感化
情感化的文案可以给用户成就感、亲切感和安全感。特别对于新手用户来说这点很重要,适当的任务给予一些赞扬,增加用户的耐心,减少用户操作失败的挫折感。
经验5:【从“平衡”的角度找最优解】
踩过的坑:
最近进行了一个商品的数量控制器的优化任务。目前线上的设计方案是“增加”按钮一直处于可点击状态,当库存不足限制购买时,增加按钮点击后弹窗提醒用户:库存不足,最多只能买X件哦!
我们希望让这个操作过程更加自然,不要让用户点击了之后才告诉用户不可再继续点击背离用户的期望值。
我的第一反应就是限制购买或库存不足时将按钮置灰,置灰的好处就是用户一眼就能知道无法继续点击。经过小组讨论,都一致觉得把不可用的按钮置灰很合适。
但这个案例最后的结果有些出乎意料,首先,因为线上所有类似业务都采用了弹框提醒的做法,所以如果这类按钮要改,其他全部都要改,将带来的是时间成本;其次,这个按钮的组件在早期开发过程中并没有,并没有设计并开发置灰样式,如果要做,需要重新开发和设计;最后,现在线上的样式已经存在很长时间了,用户大部分都已习惯,并且没有普遍的反馈表示认知困难。所以,在其他优先级较高的任务对比之下,数量控制器还是选择暂时保持线上的样式。
有时候设计是对的,所有人都认可,但是依然会有各种因素前来制约。尤其在较大的产品的产品团队,业务节奏快、需求多、上线紧,这类优化体验的工作常常优先级不够高。与此同时,很多朋友会说一个按钮而已,加个disabled样式又有何难?然而很多团队的流程规则导致业务工作是一条线,组件优化又是另一条线,想要一步把两件事做好了真没有想象中容易。
交互设计的难点往往就在于体验、产品、开发各个内容的协调,相互妥协,最后达到一个平衡的状态。
经验6:【为所有事情排优先级】
踩过的坑:
接触产品首页优化整合的需求时,产品经理给了我2周时间。当时觉得2周时间绰绰有余,但后来执行时才发现,这两周中还有另一个项目需要一起进行;前一个项目的开发跟进;很多临时的会议……真正留给首页优化的时间并不多,虽然最后勉强按时完成了任务,但是时间却过得非常紧张,完成效果也不如预期。
没有计划的时间永远不够用,规划时间并将其落实到书面可以时刻提醒自己提高效率。后几期的工作中我开始规划时间并觉得颇有成效。规划时间可以从以下几点入手:
1、明确自己的手里到底有哪些事情
工作之后,手里除了主任务还会有很多琐碎的事情,比如开发跟进、需求变更、临时会议等等。所以不论事情大小,首先得一件不落地明确自己手里具体有几件事情。
2、确定每件事情的Deadline
标记好每件事情的Deadline。可以的话,最好在客观的前提下,给自己定一个更早的时间节点。这样一方面可以督促你提高效率,另一方面可以减小风险,毕竟你永远不知道下一秒会冒出什么事来……
3、为所有事情排优先级
排优先级时在优先级相同而情况下,可以优先快速打包完结低成本、短排期的需求,这样的话,整个项目组(视觉、开发等)就可以在更早的时候投入,更好的分散压力。
需要注意的是除了安排好的计划,还会时不时出现一些影响规划的临时任务。这是则需要考量一下我是否有时间和精力来接下这个任务,如果不确定的话宁愿事先说明也不要答应后完成不了。
经验7:【沟通的重要性】
踩过的坑:
刚到公司的几天,负责人安排我做超市购物主流程的优化。我前前后后磨了5天,想着一次性到位让boss看到我的能力,可是负责人看了我提交的交互稿之后,告诉我他想让我做的是诸如按钮置灰以禁用这样的一些细节性考虑,而我提出的很多问题和策略都是功能层面的,这些问题有些公司不是没有考虑过,只是由于开发技术的限制以及各种任务优先级的考虑这些功能还没有被安排进项目计划表。由于我没有和负责人沟通到位以及对于交互细节和功能的定义没有区分清楚,白白导致了时间和工作量的浪费。
作为初入职场的新同学,除了行业技能的积累和提升,还有很多工作沟通的技巧需要学习,现将半年多来关于沟通的心得记录下来:
1、及时反馈防踩坑
作为初入交互设计的小鲜肉很多都有和我一样的问题,我们总是急于表现,想尽快展现自己的价值。所以总是等到任务完成得自己认为很完善的时候再去和领导沟通,但如果那时才发现方向性的大问题则一来是导致大量工作量的浪费,二来是直接导致不能在约定期限内完成工作。故解决的方法就是不管项目多小,都要养成及时反馈的习惯。不要想着一次性到位,设计本来就是“改改改”的过程,而且作为新人本来就会考虑不周或者容易犯错,新人的犯错是可以被容忍的,所以不要害怕领导的批评,批评越多成长的也越快。
2、设计跟踪
是工程师让我们的天马行空成了真实,试着认知工程师可能面对的技术限制,并且说明某个设计的来龙去脉,让他们乐于将设计付诸实践并且方便他们思考如何编繤程序代码,假如未来有任何变动,调整起来会比较轻松。
3、建立人物模型
将用研得到的用户的关键特征建立一个真实的人物模型,让大家可见、可讨论,逐渐将分歧变为共识,那么团队的沟通效率将会成倍提高。