不久前,Andreas Komninos在Interaction Design的网站上发布了这篇文章:
任务分析是设计思维(Design Thinking)的流程中“定义”阶段中用于发现和描述用户问题的有力工具(注:设计思维包括同理心、定义、构想、原型和测试共五个不断迭代循环的阶段)。任务分析最常见的产出物就是那些对用户为达成目标所采取步骤/行为的描绘。当我们把所有这些步骤都解析清楚了,就很容易发现用户在哪些步骤中付出了额外的努力(然后通过类似默认勾选/数据代入/自动化实现等方式简化用户操作)、哪些步骤是能够直接去除以缩短操作流程的。
Joann Hackos和Janice Redish等用户体验专家认为通过任务分析有助于帮助我们理解:
1. 用户的目标以及他们每个行为所试图达成的目的;
2. 用户在当前用于达成目标所采取的行为/步骤;
3. 用户在完成任务过程中的个人、社会和文化体验;
4. 用户试图达成目标的过程中物理环境所具有的影响力。
而对以上这些事物的理解则能够帮助我们更好地定义用户的问题,并进而获得优化用户体验的方法。
任务分析的准备工作
UX专家们Courage, Redish 和Wixon (2007) 等人指出了任务分析需要遵守的四个原则:
1. 理解用户目标和场景的过程包括很多,而任务分析是其中的重要组成;
2. 任务分析必须建立于对用户目标的理解之上;
3. 任务分析应该是贯穿整个设计过程的,尽管在这个过程中任务分析的关注点、方法、颗粒度和信息呈现都会有着阶段性的变化;
4. 我们不得不面对的现实是:任何给定项目的任务分析都取决于诸多的因素;
仔细看一下这四个原则可以发现前两个都是在要求我们深入的理解用户、他们所处的场景和所追求的目标。这很容易理解:我们毕竟说了任务分析是用于设计思维的第二阶段“定义”中的方法,而通常在第一阶段“同理心”中我们就已经通过访谈、观察等等用户研究方法收集了用户的数据,而且很可能已经产出了一些用户画像、需求场景或者故事版。
为了能够使得“同理心”阶段的数据更好地服务于任务分析,我们需要在收集数据的时候就需要重点关注这些数据:
触发点:是什么促使你的用户开始这些任务?
预期结果:用户如何判断任务已经结束了?
信息基础:在启动某个任务的时候,有哪些是用户已经掌握的信息/技能?
信息要求:有哪些是用户为了完成任务而必须使用的信息/技能?
工具:在任务过程中,用户会使用到的工具都有什么?
任务分析的执行步骤
网站Usability Body of Knowledge上提供了详细的任务分析步骤。如下:
1. 明确我们所要分析的任务:选择一个用户角色和场景,然后明确用户在任务中的目标和行为动机,然后换一个角色和场景再重新做一遍。
2. 将目标任务分解为次级任务:每个目标任务应该能够被拆分为4~8个次级任务。如果次级任务太多,那么可能我们选择的原始任务过于抽象/高级了。注意每个次级任务都应该有各自的目的,而这些目的合在一起就是达成目标任务的条件。
3. 将次级任务的结构图画出来并保证其完成度。如果需要使用注解进行辅助的话,请随意。
4. 把故事写完。仅仅有结构图是不够的,因为结构图中只有用户的行为,但我们更需要的则是动机、行为背后的原因等等。请确保在结构图中填补上这些关于“为什么”的描述。
5. 验证你的分析:只有我们自己满意的分析是不够的,通常需要另外找一个和我们一样理解任务的人来检查一下我们的工作,以确保分析的一致性。小贴士:除了同事外,找真实的用户来检查也是不错的想法。
再来一个小贴士:如果你的项目组有足够的人力分配,那么不妨考虑进行一个平行的任务分析。这样的话,在可以将第五步骤变更为综合两方/多方的分析结果并直接得出产出物。在为国际化或是具有有多种用户角色的的产品进行任务分析时,这样做会尤其有帮助。
任务分析的类型
根据出发点的不同,我们可以将任务分析分成两种:一种是层次任务分析,即上文中所介绍的将一个任务拆分为众多子任务的形式用于了解用户在完成目标时的具体流程;如果我们将分析的焦点集中在完成任务所需要的决策、问题解决、记忆、注意以及判断等能力上的时候,那么就是另一种被称为“认知任务分析”的方式了。认知任务分析不仅仅能够用于探索用户在任务中所执行的各种操作,还能够用于探索每个步骤中用户的认知负荷如何、用户的心智模型是如何发展和迁移的、专家用户们如何做行为决策、专家和新手之间的区别在哪里等等。
举个例子
我们来试试吧。假设Rosie是一个外勤医生,现在需要在医院的系统中更新一下自己的行程(例如看完一个病人之后前往另一个病人家中去看诊)。Rosie使用的设备是一个专为医生们定制的移动手机,她需要完成的任务就是向医院的特定号码发送一条短信,内容是“下个病人”。
任务目标:向医院系统发送一条文本信息。
次级目标:
1.1 打开手机上的消息应用;
1.2 输入医院的号码;
1.3 切换到信息输入框;
1.4 输入文本“下个病人”;
1.5 拼写查错(错别字,以确认系统能够识别这一指令);
1.6 点击“发送”按钮;
1.7 退出消息应用。
在上图中,你能看到我们还分析Rosie可能采用的多个不同的“计划”。整个任务流程看上去就是一个典型的好像没什么不对的?但是注意:在上图中除了“展示符合搜索关键词的联系人姓名”外,其余所有的操作都是用户需要自己完成,产品并没有能够给出太多的帮助。让我们试试怎么来减轻一些Rosie的工作量吧:
1. 我们可以尝试去掉“点击搜索按钮”这一步骤:在Rosie在“收件人:”中输入搜索词的时候提供即时的结果匹配;
2. 我们还能够直接省略掉搜索这一步骤:提供常用联系人列表;
3. 我们还能过帮助Rosie进行错别字检查:通过高亮标识或者震动进行错别字的反馈提醒;
4. 为了避免出错,我们可以在检测到错别字的时候置灰‘发送’按钮;
5. 还能过省略掉“退出应用”的步骤:在信息发送完成后自动退出应用。
你可能注意到了在以上这些建议中,有些是基于层次任务分析的结果(如去除不必要的步骤),有些则是出于认知任务分析的结果(如降低错别字检查的认知负荷)。我们最终需要做什么则完全取决于用户是怎样看待这些问题的:假如用户认为正确的输入文本是他们最大的烦恼,那么就用最大的努力去解决这个问题。任务分析是为了解决项目中存在的关键问题,我们要做的是从用户的角度去思考哪些是重要和需要改变的,而不是我们能够做或者想做什么。
再分享个任务分析的小技巧:使用颜色标注和区分不同的流程。Larry Marine 就是这么干的:
1. 绿色表示用户需要进行的操作/行为;
2. 黄色表示系统可以完成的帮助;
3. 紫色表示用户使用的工具或信息;
4. 橙色表示任务流程中存在的问题。
总结
任务分析是用户体验工作者需要掌握的有力技能。希望在看完本篇文章之后,你能够记住以下几点:
1. 学会任务分析的操作方法并不困难,其难度在于进行分析的时候始终保持用户的视角、压制从自身角度解析问题的冲动;
2. 同样需要记住的是没有谨慎的用户研究为基础的任务分析通常是无用的,因为用户研究的结果是辅助“用户视角”的基石;
3. 任务分析并不是一次性的工作,正如设计思维是一个不断迭代循环的过程一样,你总会再一次回到“定义”阶段然后开始新一轮的任务分析;
4. 最后,请记住和其它体验设计的相关程序一样,任务分析也需要花费时间、人力、预算等等资源,确保你拥有足够的资源去实施它。
PS. 听到之前翻译分享的问卷被采用了,心里美滋滋~ 看来以后就不能太随意了啊。
版权归原作者Andreas Komninos所有,转载请注明。