UX的使命之一就是:将复杂的流程简单化。其间,纠结一个Button的摆放、大小、颜色,又或者研究各类用户群体的“脾气”。让简单变复杂,这很简单。但让复杂变简单,变非常简单,这就是创造力。
在功能上,通过评估删除不必要的功能,隐藏掉不能删除的功能,以此来降低复杂程度。在视觉上,通过减少视觉干扰,重用组件,以此来降低感官上的复杂程度。
总而言之,把复杂留给自己,将简单返还用户。
翻翻压箱底的外文翻译,刨出一篇译文分享给大家。
优秀的产品关注简约而非复杂的功能。问题应该通过简单的方案去解决,一劳永逸。完美的解决方案是如此的简单、透明,甚至你会忘了它经由设计。
然而,优雅的小设计并非偶然。他们是经过艰难决定的结果。无论是在构思、设计,还是在项目的测试阶段,UX的设计师们在当中起着关键性的作用,以此来降低项目的复杂性。
为什么你应该减少在范围上的复杂性
过度设计和复杂的产品,通常是起源于“越多越好”的理念。增加需求外的功能特性,以提升产品的整体价值。从本质上讲,产品功能的不断增加,让人感觉该产品能给予用户更多灵活性的选择。同样的,减少产品功能则意味着限制你的用户。
如果我们把范围和复杂性等同而论,而不是灵活性,那这篇文章的主题将会改变,因为事实上,复杂性和范围这两者间有相互加强的关系。每一个新功能都会带来额外的期待。说穿了,范围的不断扩大,意味着有更多的机会把产品搞砸。
在前期,不必要的、复杂的功能会让产品的开发变得更加困难,给未来版本增加额外的负担。因为在项目初期,用户界面就已建立了约束。我们通过未来不断的迭代来达到我们最初设计的想法。因此,紧紧围绕着早期功能是至关重要的。另一种方法,试图又多又快的解决问题,意味着达到最初设计决策的风险越来越大。
减少复杂的技术,优雅的小功能能帮你澄清产品主张、简化用户体验。任何不利于帮助用户解决问题的功能,都应该被认为是导致用户注意力分散,造成不必要的障碍的原因,这会破坏你的产品价值。
正确界定范围
定义范围并不容易。不同的用户会有不同的需求。这是一个灰色地带,删除功能,可能会导致你的产品价值和收入下降。
此外,简化的设计降低了复杂性,但并非时刻奏效,有时甚至会给用户带来巨大的障碍。一个很好的例子——财务软件,这类软件的用户界面通常围绕着“金融管理”这个本身就很复杂的功能而设计。
然而,仅仅因为一个复杂的任务,而去设计一个复杂的用户界面和用户体验,这完全是个借口。我们需要控制真正需求的个数来设计解决方案。去除复杂性的同时保留力量和控制,这样才能获得优秀的方案。
预防范围蔓延
一旦您的初始范围(或你能忍受的复杂程度)已经被定义,最好的办法是一次解决一个功能。每一次迭代都围绕最关键和易理解的问题,并解决它。
通过这种方法,附加的功能往往会让用户觉得是一个简单的自然延伸,这是个一举两得的简单的方法。尽管有时看似低成本的附加功能设计,也有其隐性成本。
不必要的功能会让开发人员和设计人员分心。使他们不能专注于优化产品的细节或者其他可以帮助用户的事情。他们还会淡化你的产品的核心目标和重要特性。
清楚了解你需要增加什么样的新功能,开发他们的意义是什么。将功能分类为有用的和易用的,将其提取出来,通过反复斟酌以确保他们真的是必要的需求。最终,你必须接受灰色地带,你所删除的功能将会导致预期和收入的下降。
为什么你应该减少内部设计的复杂性
复杂性,不能简单地表达为功能蔓延。它仍然可能存在于一个极小的可行的产品中,交互方式过于复杂,表现方式标新立异。
尽管将功能紧紧的限制在一个优雅的最小的功能上,我们需要思考的是功能本身的复杂性。这可能会导致内部复杂的功能最适当的补救措施是:添加一个额外的功能。
这里有一个例子。在最近的一个项目中,当用户在一个页面的特定位置坚持需要一个自动保存按钮功能时,保存按钮使用户有了更多的互动,它的结果也更直观(测试后证实如此)。
最小可行产品范围的扩大增加了复杂性,这与系统技术和用户界面设计减少的复杂性相抵消。
因此,最小功能集并不一定转化为一个简化的用户界面。繁琐的交互或设计不当的用户体验可以很容易的与去除不必要的功能的好处相抵消。同样,它有时需要扩大系统的范围,以减少内部的某些功能设计的复杂性。
内部设计的复杂性管理
管理“内部设计的复杂性”依赖于一个悖论。这句话适用于任何特定的单一功能的复杂性。然而,“内部”复杂性的意义,不限制于一个单一的功能。管理内部设计的复杂性,要求我们在两个层面上评估解决方案。只有通过对关键解决方案自始至终的分析,我们才可以有效的判断,是否任何单一功能能尽可能的简单化或显示其重要性。
检查一个功能集,并决定哪些是不危及产品核心目标,可以安全淘汰的功能。简化是把双刃剑,以“最小可行的产品”所固有的简单的观念和心态,将驱动我们更干净、更方便、更优雅的实现设计。但是,简化的过程经常的蒙蔽我们,折中妥协的将一个功能简单的解决方案作为整体。
广泛来看,实际上可能引导我们在这里或那里增加一个功能,是为了用起来更加简单。
就拿上面自动保存功能为例:正确的洞悉单一功能的行为,是一件复杂的事。添加一个功能,降低了该功能被误解或误用的机率。然而,除此之外,它也将确保反直觉行为的实例,不会被作为如何感知更广泛的解决方案的先例。
这是一个悖论:你可以有一个最优雅简约的功能集,但如果你不遵循整体、灵活的原则,将不会达成简单的功能。单一的简单功能,可能成为一种趋势。