用emacs的org写的,"*"表示层级
*** 交互设计精髓:
**** 铺垫知识:
***** 模型:
****** 三种模型
******* 实现模型:
机器达到目标的机制,
也叫系统模型,
在软件中就是系统架构,
******* 用户心理模型:
人们在认知上的对及其工作机制的便捷的解释方式,
也叫概念模型,
比如把电器中的电线想象称为流水的管道.
******* 表现模型:
设计者选择如何将程序的功能展现给用户的方式.
****** !-按照心理模型设计
表现模型越接近用户的心理模型,用户就会越感到程序容易理解和使用,
用户界面设计应该基于用户的心理模型,而不能基于表现模型.
比如用户不理解布尔逻辑,
****** 信息时代 or 机械时代
意思是说已经进入信息时代,
一些界面设计不必要仿照器械时代的设计,
比如翻页的日历.
但是----!-重大改变必须是非常好的改变!!!
***** 用户
******* 新手,专家和中间用户:
新手用户:程序能干啥?范围是啥?怎么打印?怎么开始?
中间用户:忘了怎么...,怎么找到...?这个控件是干啥的?能取消么?
专家:如何自动化?该命令的快捷键?怎么定制?能用键盘么?
******* 永远的中间用户:
意思是大部分用户都是中间用户.
新手会很快称为中间用户,
专家会因为遗忘退步为中间用户.
******* !-为中间用户优化:
我们的目标不是吸引新手,也不是将中间用户推为专家用户,
而是:
1.让永远的中间用户感到愉悦,显得强大而易用
2.让新手快速和无痛的称为中间用户
3.避免为那些想称为专家用户的用户设置障碍
******* 新手和专家:
******** !-将用户现象为非常聪明但非常忙的人
需要适量的指示,学习过程快速且富有针对性,还要让他们理解为什么软件会像那样工作.
******** 帮助不应该在界面固定下来
******** 专家同样重要:
因为他们掌握着评论的权力,决定了你有多少新手.
他们欣赏更新的且强大的功能.
***** 产品团队的组成:
设计团队:负责用户对产品的满意度;
工程团队:产品的实现和制造;
市场营销团队:说服客户购买商品;
管理团队:负责产品的利润,有权决定其他各组的工作.
****** 三个现代要素(一个三角形)
v满足人们期望的,可行的,可以构建的成功产品:
|-----------------------+---------------+---------------------|
| 期望 | 能力 | 可行性 |
|-----------------------+---------------+---------------------|
| 设计者 | 技术人员 | 管理者 |
|-----------------------+---------------+---------------------|
| 使用者模型 | 技术模型 | 业务模型 |
| +动机 | +核心技术 | +资金模型 |
| +行为 | +技术组成 | +收入和支出的估计等 |
| +态度和能力 | +开发 vs 买入 | |
|-----------------------+---------------+---------------------|
| 产品设计 | 技术计划 | 业务计划 |
| +设计日程安排 | +工程进度 | +市场计划 |
| +形式和行为的详细规格 | +工程详细规格 | +发布计划 |
| ***************** | ************ | +分销计划 |
|-----------------------+---------------+---------------------|
| 使用者效力和顾客认同 | 项目实施 | 可持续发展的业务 |
|-----------------------+---------------+---------------------|
^产品总体的成功
***** 什么是设计:
为赋予有意义的秩序,做出有意识的或者直觉的努力.
1.理解用户的期望,需要,动机和使用情景
2.理解商业,技术,以及业内的机会,需求和制约
3.基于上述理解,创造出形式,内容,行为有用,易用,令人满意,并具有技术可行性和商业利益的产品.
运用恰当的方法,设计可以弥合人类与科技产品之间的缺口.
**** 目标导向设计:
***** 是什么:
意思就是从动机角度满足用户,
不单单是从功能或者说任务满足客户.它这里的目标就是行为驱动力的意思;
目标时整个设计过程的计量尺,用来去掉不必要的任务,优化必要的任务
功能是死的,人是活的.
***** 构建人物模型:
****** 什么是人物模型:
就是描述人的一种模型,
用户的行为如何?他们怎样思考?他们的预期目标是什么?以及为何如此?
人物模型/角色并不是真正的人,而是在调查中收集到的实际用户的行为数据的基础上形成的抽象的"人".
****** 为什么要构建人物模型:
最基本的,它给我们一种可以精确思考和交流的方法.
我们按照优先级对人物角色进行排序,
就确定了设计的基础.
******* 扩展负担:
当你扩展产品功能时,你会增加所有用户的认知成本和导航成本,
能够愉悦某些用户的功能可能会降低其他用户的满意度,比如支付宝.
******* 弹性用户
不同的人在不同的时刻对用户会有不同的理解,"用户"就变成一个弹性的,这就很危险,
******* 自我参考设计
人都有同理,带入的本能,
设计者,程序员容易把自己带入到用户的角色中去,
最后产品就受到了他们的动机,心智模型,技巧的影响.
你要把自己带入到人物角色中去,"Julia会怎么想/做"
******* 边缘情况设计
要考虑边缘情况,但又不应该让它成为关注点,
"Julia会进行这种操作么?会经常进行这些操作么?"
****** 怎么构建人物模型
******* 目标
最主要的是确定用户的目标
******** 考虑_3个认知:
就是说有3个不同层次的认知和情感处理过程:
********* 本能的
感官最初感觉到的,
对好不好,是否安全,是否危险等做出快速决定.主要是指设计外观和姿态,有时候也包括声音,产品触觉方面的设计.
但美丽好看并不总是重点,
比如军事软件和反射治疗设备.
********* 行为的
中间的层次处理的过程,
这就是交互设计一般说的.
完善用户自己的行为,暗含的假设和心理模型的产品行为.
********* 反思的
有意识的考虑和基于先前经验的反思,
这是通过记忆实现的,不是直接的交互或者感知.这个层次决定了用户看待自身和产品的关系,
据欸电脑坏了是否能打造长期的产品用户关系.
******** 描述_3个目标:
********* 体验目标:
用户想要感受到什么?表达了一些人在使用产品所期望的感受,比如:
{很有控制力;很有乐趣;很酷,时髦,放松;注意力几种,清醒}必须要把任务角色的体验目标转化为可以传递恰当感觉,情感,感情和情调的外形,行为,动作和听觉元素.
********* 最终目标:
用户想要做什么?代表了用户在使用某个具体产品时进行操作的动机,如:
{和朋友家人保持联系;找到我喜欢的歌曲,找到最合算的交易}要把最终目标当作产品行为,任务,外观和感觉的基础.
********* 人生目标:
用户想要称为什么?表达了用户的个人克玩,这通常超过了产品设计的情境,是深层的动机,
描述了任务角色的长期期望,动机和自我形象的特征:如:
{过美好生活;成为...的专家}
将人生目标转化为高层次的产品功能,正式的设计概念和品牌概念.
********* 其他类别的目标:
顾客目标,
商务目标,
技术目标
******* 一般步骤:
不待劳写了,自己找吧,about face 3 ,第一篇,第5章,
我这个书是在62页.
比较有用的是第七步:指定人物类型:
首要人物角色: !-每一个界面的实际关注点在于一个单独的首要人物角色
次要人物角色
补充人物角色
***** 场景剧本:
****** 是什么?:
一种设计工具,
就是剧本那种,描述人物,地点,时间,时间,道具那种.
这里的人物就是上面通过
****** 有什么用?
上一步人物建模,我们得到了人物的目标,
这一步通过剧本这种具体场景,将目标转化为具体的需求/任务设计原则:
在设计产品"如何"行为之前,要先定义产品做"什么",
不要太早的进入设计并详细化可能的方案.
****** 分类:
分为:
******* 情景场景剧本:
也叫日常生活场景剧本,就是在一个较高且较广阔的角度讨论人产品是怎样满足用户的需求.
这个剧本比较自由,可以描述的范围也很广.
******* 关键路线剧本:
在设计团队确定好一个交互框架之后,
原先的情景剧本中更多的描述用户和产品的交互的部分被提取出来,形成一个关键路线剧本,
更专注于关键的用户交互,总是关注于某个用户如何使用产品完成他们的目标的,
它随着开发的进行,会被迭代的假如更多的细节.后面会具体说
******* 验证场景剧本:
是用来测试设计方案的,有大量的"如果...,回..."后面具体说.
****** 怎么做?:
******* 创建问题和前景总述:
也就是定义场景绝不能和需求指向那个方向?
问题总述:定义设计的目标,简明的反应需要改变的情况.
前景总述:是问题总述的倒置,从用户需求开始,转向如何使用设计视图满足商业目标
******* 头脑风暴:
去除成见,开放和灵活,不加约束
******* 确定人物角色的期望:
要确定:
影响人物角色愿望的态度,经历,渴望,其他社会,文化,环境和认知因素.
人物使用产品体验方面可能有的一般期待和愿望.
人物对产品行为的期待和愿望.
人物角色认为什么是数据的基本单元或者元素.
******* 构建情景剧本:
产品使用是的设置是什么?
它是否会被使用很长一段时间?
人物角色是否经常会被打断?
单个工作站或者设备上是否有多个用户?
和其一起使用的产品是什么?
人物角色需要那些解百纳的行为来实现目标?
使用产品的预期是什么?
基于人物角色的技巧和频繁程度,可允许多大的复杂性?
******* !-假装它有魔力:
假设界面有魔力是场景剧本早期开发的一个强大的工具.
假如产品有魔术性效能来满足你的惹怒我角色的需求,界面会多么简单?
******* 确定需求:
需求包括对象的动作,以及情景.
有以下分类:
******** 数据需求
就是与对象相关的并于或者形容词.
例子有账号,人,文档,邮件,歌曲,图片,以及它们的属性如状态,日期,大小,创建者,主题等.
******** 功能需求
针对系统对象必须做的操作,
最终会转化为界面控件,这也可以被当作是产品的动作.
也定义了界面中的对象或者信息应该在何位置何容器被现实
******** 其他需求
业务需求:时间表,规则,价格结构,以及商业模型
品牌何体验需求:与公司联系起来的特征
技术需求:重量,大小,形式要素,显示,能力据项何软件平台选择
***** 框架和细化
设计框架:
从屏幕上的功能元素的组织,到交互行为及其底层组织原则,
到采用何种视觉语言何形式语言来表示数据,概念,功能何品牌形象.
分为:
****** 交互框架:
定义了高层次的屏幕布局,也定义了产品的工作流,行为何组织,
步骤如下:
******* 定义外形因素,姿态和输入方法:
外形因素:Web应用?移动端应用?公共场合的设备?
姿态:用户会投入多大的注意力和产品互动,以及产品的行为将会对用户投入的注意力做出如何的反应
输入方法:用户和产品互动的方式(IO设备),也受到产品外形和姿态,人物角色们的态度,能力和喜好的趋势.
******* 定义功能和数据元素:
功能和数据元素是界面中要展现该用户的功能和数据,在需求阶段定义下的(情景剧本那里).
就是功能和数据的具体的表现形式.数据元素:通常是交互产品中的一些基本主题,比如一些对象,包括相片,电子邮件,客户记录及订单等.
是一些使用产品的人们可以访问,可以响应,也可以操作的个体.功能元素:对数据元素的操作以及其在界面上的表达.
一般来说,功能元素包括对数据元素操作的工具,以及输入或者放置数据元素的位置.
这个步骤的选择会很多,要考虑:
1.最有效达成用户目标?
2.最符合设计原则?
3.最适合技术水平和成本因素?
4.最能满足其他需求?
******* 决定功能和层次:
有了完善的较高层次的功能和数据元素之后,便可以将其分组,病故额度层次.
元素分组的目的在于更好的在任务中和任务间来帮助任务角色的操作流程.
1.哪些元素需要大片的屏幕区域,哪些不需要?
2.哪些元素是其他元素的容器?
3.容器如何组织才能优化工作流?哪些元素是被一起使用的?哪些不是?
4.一组关联的元素被使用时?其顺序如何?
5.采用哪些交互设计模式和原则?
6.任务角色的心理模型对元素的组织有何影响?
******* 勾画出大致的交互框架:
这个阶段就是方块图阶段,
我们的草图用粗略的方块图来表示并区分每个视图,
用方块对应窗格,控制部件,以及其他高层次的容器,
标注上名字和不同区域之间的关系即可.要像整体再细节,
不要被细枝末节分散了精力.多尝试,不同的排列方法.
******* 构建关键性路径场景剧本:
描述了任务角色使用交互框架语言如何同产品交互,
描述了人物角色最频繁使用界面的主要路线.必须在细节上严谨描述每个主要交互行为的精确行为,提供每个主要线路的走查.
使用故事板
过程变更和反复,不是顺序且线性的过程
******* 通过验证性的场景剧本来检查设计:
包含一些列的"如果怎样,会怎样"的问题.
目的是对设计方案指指点点,根据需要调增方案.
按如下顺序讨论:关键路线的变更场景剧本:关键途径的体带
必须使用的场景剧本是指哪些必须要被执行的动作,但又不是经常发生的情况
边缘使用的场景剧本:必须有,不太常用的功能,
这种情形经常出现系统不稳定或者系统漏洞,
比如同名,
****** 视觉框架:
交互框架考产品行为的整体结构,
这里考虑和行为有关的外形,
步骤如下:
******* 开发视觉语言研究:
这个翻译的可能不好,
这里"研究"的意思就是评估,选择整体的格调,风格,这个过程是独立于交互设计的;
考虑的因素:
1.任务角色的体验和目标
2.需求阶段总结出的任何体验和品牌关键字相关联;
3.公司品牌指导方针开始
4.环境因素和人物角色的能力:强光,远距离,夜间,老人决定颜色,类型,小空间处理,整体的外形尺寸和界面的"材料"属性
******* 将选好的视觉风格变成屏幕原型
上一步说过,视觉框架的设计独立于交互设计的框架,
所以这里,我们把视觉框架运用到交互框架就完事.
****** 工业框架
这个框架就关注的是技术实现方面的事情了
步骤如下:
******* 与交互设计者合作展开外形因素和输入法方面的工作:
因为这里是物理层面,
而用户体验同时受到产品物理形式和交互行为这两方面影响,
所以要和谐,同时,
"形式必须服从于功能".
校核设计的需求指导者工业设计,但工业设计的成本因素反过来又影响交互设计的各种可能.
******* 开发粗略的原型
工业设计者还是有很多选择,可以大概做出来,
多做几套考虑选择.
******* 开发形式语言研究
本步骤讨论一些物理风格,
包括形状,三维尺寸,真实材料,颜色以及修饰
****** 细化外形和行为:
草图故事将变为全解析度的像素,在像素上来描述用户界面,
用html或者flash制作交互原型也很有用.
***** 设计验证和可用性测试
**** 设计行为
***** 设计原则和模式
交互设计原则是关于行为,形式与内容的普遍适用法则,促使产品行为支持用户目标与需求.
原则是一种理念,模式是一种方法
****** 作用于不同层面的设计原则:
设计原则作用于不同的层面,上至普遍的设计规范,下至交互设计的戏界.
不同层面之间界限模糊,但至少可以归入以下4类:
******* 设计价值
******** 正直(有益且考虑周到)
********* 无伤害;
人际关系伤害(颜面扫地及羞辱);
心理伤害(困惑,不快,挫折,受强迫及厌倦)
社交,社会伤害(剥削,维持或制造歧视);
生理伤害;
环境伤害;
********* 改善人类处境
增进理解(个人,社会及文化);
提高个人与团队的效率或效率;
促进个人与团体之间的沟通;
降低个人与团体之间的社会文化张力;
促进平等(经济,社会及法律);
平衡文化多样性及社会凝聚力;
******** 目标明确(方便且有用)
帮用户实现目标,得偿所愿;
适应使用情景和能力;本书的主题是基于用户目标与动机的理解,采取目标明确的设计.
目标明确不仅在于理解用户目标,还在于理解他们的局限,包括它们的弱点与空白.
******** 有实效(现实且可行):
帮助企业实现目标;
适应商业需要和技术条件设计过程中考虑商业目标,技术要求与局限十分重要.
商业,工程与设计团体之间必须积极对话
******** 优雅(高效,巧妙且富有感情):
********* 最简洁的完整解法;
优秀设计的经典要素之一即:形式的简约--以简御繁.
用最少的/最简单的...去做....
"完美不在于无以复加,而在于无可删减,万事莫不如此".
********* 拥有内在的和谐(自我解释且容易理解);
优秀的设计让人感觉是一个整体.
而不是不同零件偶然拼凑在一起.
场景剧本的应用,确保设计方案具有统一的叙述主线
********* 适当的顺应并调用认知与感情;
许多接受传统培训的设计师常常谈及渴求,
但如此强调某一个单一且模糊的情绪,有时会导致一叶障目.比如医用设备,军用设备.
******* 概念原则
******* 行为原则
******* 界面原则
****** 行为与界面的设计原则使工作负荷降至最低
有待降低的负荷类型如下:
******* 认知负荷:
理解文本,组织结构与产品行为
******* 记忆负荷:
回忆产品行为,命令向量,密码,对象,控件位置与名字,以及对象之间的其他联系.
******* 视觉负荷
弄清屏幕内容的起点,搜索众多对象中的一个,分解布局,以及区分界面的视觉元素
******* 物理负荷
击键,鼠标运动,鼠标手势(单击,拖动和双击),不同输入模式的切换,以及完成导航需要的点击次数
****** 交互设计模式
设计模式是一种提取有效的设计方案,将其应用于类似问题的方法.
******* 建筑模式和设计模式
Christopher Alexandar在书中首次描述了建筑的设计模式,通过提取一系列建筑特征,试图提取那些带给居民幸福感的设计建筑的精华.工程模式源自于此,目标是重复利用和标准化程序代码.
******* 记录和使用交互设计模式:
模式总是应用于特定场景,
它们适用于具有类似的情景(contexts),限制(constraints),张力(tension)和拉力(forces)的应用场景.
提取一个模式,重要的是记录方案应用情景的一个或多个具体案例,所有案例的共同特征,以及解决方案背后的理念(他好在那里).为了达到使用效果,模式必须根据应用场景进行有条理的组织.
得到的系列通常称为"模式库"(pattern library)或者"类目表"(catalog).
如果类目表定义精确,并且充分涵盖了某个领域所有的解决方案,就能提升为一种"模式语言"(pattern language).
设计模式不是菜谱或者立竿见影的解决之道:"模式不是拿到即用的商品,每一次模式的运用都有所不同"情景在模式表现形式上具有决定性的作用.
因此,建筑模式是预制建筑的对立面(建筑不再是一砖一瓦砌上去,而是把一面墙和一层楼在工厂造好后,像积木一样打起来).
模式展开的环境极其重要,它的子模式,母模式,以及相近的其他模式同样十分关键.每个模式的核心在于表现对象之间,表现对象与用户目标之间的关系(这就是为何一个概括的风格说明无法代替具体的设计方案).
模式的精确形式在于每一个设计方案中都会有或多或少的差别定义模式的对象自然因产品领域而不同,但对象之间的关系基本保持一致.
******* 交互设计模式的类型
与许多其他设计模式类似,交互设计模式也可以有层次地组织在一起,从系统层面到个别层面地专用器件.
******** 定位模式:
应用于概念层面,帮助界定产品对于用户的整体定位.
******** 结构模式
解答如何在屏幕上安排信息和功能元素之类的问题,
包括视图,窗格,以及元素组合等.
之前说过一点
******** 行为模式:
旨在解决功能或数据元素的具体交互问题,
大多数人所说的器件行为即漱玉词.
***** 平台和姿态:
****** 姿态:
产品的姿态是指产品的行为姿态和立场,也就是产品展现给用户的.
通过姿态我们可以讨论用户将投入多大的注意力在产品交互上,从而设计产品的响应.产品的外观应该反应产品如何被使用,而不是设计者的个人爱好.
从姿态的角度上来看,外观和感觉不仅仅是审美上的选择,而是行为上的选择.但是注意产品的姿态不是一成不变的,用户在不同的场景可能对产品的注意力程度区别很大,
在地铁里和躺床上看手机有不少区别.
在这样的情况下,应该考虑产品作为一个整体的主导姿态.
****** 设计桌面软件
桌面应用分为三种姿态:独占,暂时和后台.
******* 独占姿态
如果一个程序长时间占据使用者的注意力,这个程序就是独占姿态的应用程序.
独占应用程序提供一大组相关的功能和特点.
用户使用独占程序时,通常发现他们自己处于一种工作流的状态,以下是一些注意点
******** 使用者一般是中间用户
不能牺牲速度和马力从而变得容易学习但却不灵活.
******** 慷慨使用屏幕空间
全屏幕使用独占应用,让它发挥最优效果.
******** 使用最小的视觉风格
因为用户会长时间的盯着独占应用,因此应该考虑弱化视觉表现上的颜色和纹理,
不要用太多颜色,并且使用这些颜色要保守,
大块的色彩斑斓的操作部件可能在首次使用的人看来非常酷,
但每天使用过了数周之后,就变得俗气了.
使用小虚点或者加重的颜色比大块颜色更好.
******** 丰富的视觉反馈
为用户创建一个充满视觉反馈的环境,可以添加大量额外的控件,比如状态栏,标题栏,可是区域的角落.
然而一定要小心,避免创建混乱的界面.
******** 丰富的输入
******** 以文档为中心的应用
在独占应用中让文档视图最大化
******* 暂时姿态:
程序在打开短暂的事件后随机关闭,
用一台有限的符加控件展现一些单一的功能.同样,有一些要注意的东西
******** 明亮而清晰
要有者精确图例的大按钮,用加大而清晰的字体现实出来.
这里的控件要大,
颜色要尽可能丰富,这样用户可以快速识别
******** 保持简单
只使用一个窗口和视图,
让用户的注意力集中在这个窗口上.
微小的滚动条和精细的鼠标操作不适合用在暂时式应用程序上,
而应尽可能少的让用户进行精细运动的操作.而且直接操作的对象一定要大.
******** 记住用户的选择
他应该处于上一次的位置和配置状态下.******* 后台姿态:
通常不与用户互动的程序是后台姿态应用.
这种应用就像我们的心跳一样.程序的意图和用户可获得的选择范围和含义必须要告知用户.
否则,很多情况下,用户甚至意识不到后台应用的存在.Mac和Windows都用控制面板对后台应用程序进行配置
****** 为网页设计
******* 提供信息的网站:
独占属性:一个问题是通常不知道屏幕分辨率是
暂时属性:
这种网站把导航做好更易用,导航和表示更清晰.
****** 其他平台
有一些一般性原则:
不要把正在设计的产品认为是计算机;
把软件和硬件集成在一起;
让使用情景驱动设计;
如果有的话,模式的使用要明智;
限定范围;
平衡导航和现实密度;
尽可能地减少和简化输出手持设备特殊注意:
尽早决定下来设备是单手操作还是双手操作;
避免多个窗口或悬浮窗口;
**** 协调和流:
***** 流和透明
但人们全身心地投入到某件工作的时候,对周围的事物视而不见,这种状态叫做流.我们在设计交互产品地时候,要促进和增前流,既使有很大地困难也要避免任何打断流的行为.
****** 界面越少越好
将注意力影响交互本身就是将重点放在工具和技术的副作用,而不是用户目标上.
用户界面是人造的,并非直接和用户的目标相关,
当你吹嘘自己的界面有多酷的时候,记得用户界面的中级目标是没有界面.
****** 细条的用户界面是透明的
为了创造流的感觉,和软件的交互必须透明.
一个小说写的很好的时候,作者的技巧消失了,读者能在不被作者的技巧分散注意力的情况下理解故事和人物.
类似的,当一个产品和用户交互的很好的时候,交互机制小事了.
让人们和他们的目标面对面,而意识不到软件的介入.
***** 设计和谐的交互
没有一个普遍的和谐交互的定义,发现有如下这些策略让交互设计朝正确的方向发展
****** 遵循用户的心理模型:
每个用户都自然的对软件如何执行一个任务有一个心理想象.
****** 少就是多
我们应该不断地在减少界面元素的情况下仍旧保留产品的功能,
为了做到这点,我们必须以更少的元素做更多的事.
我们必须协调和控制产品的力量,同时不让界面因此挤满窗口和对话框,被不相关或很少使用的控制沾满产品设计的极简注意方法就是努力理解目的--此产品的用户想要达成的目标是什么?
没有了这种目的,交互产品就是混乱的技术功能的集合.
****** 让用户直接操作产品,而不是强迫用户与产品讨论
很多程序员都将理想的界面想象成与用户的两方对话,
但理想的交互情形不是对话,更像是在使用工具
大多数人更愿意与软件进行和汽车一样的交互,但他们想到某个地方时,就打开车门坐进车里.向前时他们踩油门,要停下就刹车,要拐弯就转动方向盘.
木匠看到锤子的时候,他不想和锤子讨论钉子的问题,他会直接使用锤子钉钉子.直接操作,我们可以指出想要什么.
****** 工具就放在手边
保证关于工具和应用状态的信息时清晰地被显示出来,
同时,在工具之间的变换是快速和简单的.
****** 提供非模态的反馈:
用户在操作工具和数据时,必须清晰地现实这些操作地状态和效果,
这些信息需要被清晰地发布且容易发现,不会干扰或阻止当前的动作.通知用户的更好方式是非模态地反馈,
像word的字数和行数.
****** 考虑大多情况,忽略边缘情况
不要把罕见的不平常的可能性直接带入用户界面中.
****** 提供符合情景的数据.
在显示磁盘容量的时候,我们不关注它的字节数,更多的是想知道剩余多少mb/gb.
数量的展示应该回答一个问题,"与谁比较?",
另一个建议是"展示数据",而不是简单的从字面上或数量上显示,一个饼状图有时候就很好用
****** 提供直接的操作和图形输入
比如文字处理器通过拖放标尺上的标记来设定制表符和缩进,而不是让用户输入一个数字.
视觉和手写最直接,
有数字的地方反而是间接的(还是要考虑信息的源形式)
****** 反应对象和程序的状态:
当一个程序休眠的时候,应该看上去是休眠的;
当一个程序在恢复,应该看上去是恢复的的样子;
运行的时候,看上去是运行的状态.
****** 避免不必要的报告
很多程序不停的通知用户其进程的细节
****** 不要用对话框来报告常态内容,
同样的,不要因为不重要的问题停止进程打扰用户.
****** 避免空白的状态
对用户做出一定假设,
比如pycharm每次都默认打开上次的项目,
PS的新建也会有一个参照剪切的尺寸.
****** 请求原谅,而不是请求许可
****** 把命令和设置区别开来
命令就是just do it ,我关心的就是这个命令的结果,不在乎过程,
二设置是how to do it ,我关心的是这个行为如何让被执行,其中的一些参数和细节.比如,一个命令来打印,另一个命令来设置打印.
****** 提供选择,而不是提问
对话框是提问,要求用户回答问题,知道得到答案才会消失;
工具栏是提供选择,始终存在,安静而礼貌.人们常认为,和被提问的人来说,提问的人更优越.
用户不喜欢提问,不断地提问用户暗示程序的特点如下:
+ 无知的
+ 健忘的
+ 功能不强的
+ 不主动的
+ 不能自理的
+ 烦躁的
+ 过分要求的斯坦福大学层的出一个结论:人类对待和响应计算机以及其他交互产品的态度与人类相同.
****** 隐藏弹射座椅的操纵杆:
引起视觉分布上(最工作区和工具排列的巨大改变)重要变化的行动和造成一些不可逆改变的行为,
这两类功能都应该对经验较浅的用户是隐藏的.
****** 优化响应能力,调节延迟时间
设计产品绝对关键一点是它们要具有足够的响应能力--如果界面像蜜糖流动一样缓慢,设备全用来重绘屏幕了,
再丰富的视觉风格都不会打动人.用户对响应时间的感知大致被分为以下几种:
+ 接近0.1秒的情况下,用户认为系统的响应式同步的,这时感觉自己在直接操作数据
+ 接近1秒,认为系统是有相应的,会注意到延迟,然而这个延迟很小,它们仍认为任务的过程没有被打断
+ 接近10秒的情况下,很清楚系统变慢了,会走神,然而仍能维持对程序的注意力,在这时提供一个进程条很重要
+ 超过10秒,用户的注意力就不再集中于程序,它们会走神,去干别的了,要能清晰的表达状态和进程,包括估计的剩余时间,以及一个关键的取消的机制.**** 消除附加工作:
软件经常包括一些不必要的具有繁重工作量的交互,对用户来说,这些是符加工作.
程序员通常只关注驱动器的技术,以至于他们不从目标导向的角度考虑操作技术的人类行为.附加工作是我们努力实现目标的同时,满足工具或者某些外部因素需要的工作.
二者有时很难区分,因为我们习惯于附加工作成为任务的一部分.
开车门通常是我们为车子做的,而不是为我们自己;
在红灯前停下是社会要求我们这么做的.对于软件,比如安装,配置网络,文件备份以及连接在线服务等都是附加任务.
附加任务的问题是它们消耗我们的精力,而不是直接实现我们的目标.如果能消除附加任务,我们就能让用户更有效率和生产率.
作为一个交互设计者,你应该对附加工作的存在非常敏感,并且像治疗感染的医生一样有激情地采取措施消除附加工作
***** 训练工具
训练工具在用户熟悉程序之后很快成为附加工作,所以不要固定培训工具.
***** 视觉附加工作
视觉附加工作是用户不得不分析的视觉信息,比如在列表中找到某个条目,判断从那个位置开始阅读屏幕,或者决定哪些元素是可以电机的,哪些元素仅仅是装饰性的.设计师有时候过分倚赖视觉隐喻,因此添加了各种附加工作.
除此之外,图形消耗了非常多的屏幕空间,我们盯着屏幕的时间越长,我们越埋怨程序中已经熟悉的内容所占用的屏幕空间.
与独占姿态程序相比,暂时姿态程序能容忍更多的培训工作和解释附加工作
***** 确定什么是附加工作
唯一方法是将其与用户的目标进行比较
***** 停止进度
在某人已经进入流状态之后,需要一些努力才能打断.
轻易的打断用户的流是很愚蠢的
***** 错误,通知和确认信息
通常的错误信息是不必要的,它或者告诉用户不感兴趣的东西,或者要用户改变一些条件,而这些它本身就能够做东,也应该做到
比如PS的"未选中图层"
***** 让用户请求允许
不要让用户请求允许
在有输出的地方允许输入
***** 常见的附加工作先陷阱
+ 不要强迫用户到另一个窗口完成影响本窗口的功能
+ 不要强迫用户记住他将事物放在层次文件系统中的哪个位置
+ 不要强迫用户调整窗口大小,当子窗口在屏幕上弹出时,程序应该为其内容调整合适的大小,不要让它大而空,或者太小而需要不停地滚动
+ 不要强迫用户移动窗口.如果桌面上存在空闲空间,将窗口放在其中,而不是直接将其放在已经打开的程序之上
+ 不要强迫用户重新进入个人设置,除非他想改变
+ 不要强迫用户在填充字段时满足完整性
+ 不要强迫用户请求允许,这通常是不允许在输出的地方输入的症状
+ 不要让用户确认其行为(这隐含存在健壮的撤销功能)
+ 不要让用户的行为产生错误
.
***** 导航是一件附加工作
这里的导航是广义上的导航:即任何将用户带到新的界面部分,定位对象,工具或数据的动作都是导航
下面更详细的讨论每一种导航类型
****** 在多个屏幕,视图或者页面之间的导航
这对用户来说或许是最容易迷失方向的导航.在窗口之间导航涉及注意力 的整体转移,这回打断用户的流,
也意味着用户要管理窗口,如果还要在窗口之间移动,混乱杠和挫折感回加深,比如Qt Creator,
当用户完全失去方向感,可能会体验到导航创伤
****** 在窗格之间导航
窗口可以包含多个窗格,它们或者相邻,或者通过分割线隔离,或者互相重叠,通过标签来识别.
当一个工作区域存在多个支持窗格而不同时使用时,可以采用标签窗格
****** 在工具栏和菜单之间导航
窗格或者窗口内的空间组织对减少额外的鼠标移动非常重要
可以考虑像ps那样,当我们可以把用户常用的功能单独提取出来
****** 信息导航
滚动:
在换页和滚动信息之间存在一个平衡
链接
缩放
是浏览二维和三维信息的导航工具
***** 改善导航
****** 减少目的地数量
页面,窗口,窗格,控件
****** 提供导航标指
Web上的<-,->,HOME;
菜单,有可靠性和一致性;
工具栏
****** 提供总体视图
总体视图帮助用户定位内容,而不是在整个应用中定位.
比如大图像的缩略图,或者web中的层级文本,还有注释滚动条
****** 提供合适的空间----功能映射
映射描述了控件,影响的事物,以及预期结果之间的关系.
当控件与其影响的事物之间没有视觉上或者象征上的关系时,映射关系很不自然.
你可以加入代表位置关系的物理映射
****** 调整界面以适应用户需要
调整意味着对界面进行组织来减少导航,意味着将最常用的控件和功能放在立即可获得且最方便的位置供用户访问.如果你在程序中添加一些管理起来非常复杂的特性,只有在回报值得的情况下,用户才愿意忍受这种复杂性.
一般来说,界面中的控件应该根据三个属性来组织,:
+ 使用频率
+ 混乱程度
+ 风险暴露程度
****** 避免层次关系
层次关系是程序员使用时间最长的工具之一.
然而,大多数机械存储系统是简单的,不是由简单的存储对象序列组成的,
深度只有一层(好比文件柜),它们从不超过一个嵌套层次,我们将这种储存范式成为"单层分组"
**** 设计好的行为
人类好像有一种本能,告诉他们如何与周围有意识地生物交往.
一旦任何物体表现出足够地交互性----就像一般地软件程序那样----这些本能就会被激活***** 体贴的软件是
****** 关心用户
****** 恭顺的
****** 乐于助人的
提供其他有用的信息
但是不要太鲁莽
****** 具有常识
****** 预见需求
利用空闲时间为我们办事
****** 尽责的
从长远的角度来认识所执行的任务的意义
****** 不会因为自己的问题增加你的负担
服务员决口不提自己的问题
****** 及时通知我们
及时通知我们关心的事
****** 有知觉的
****** 是自信的
你确定么?
你真的想...么?
****** 不问过多问题
****** 既使失败也不失风度
****** 知道什么时候调整规则
****** 承担责任
***** 聪明的软件
****** 利用计算机的空闲周期
****** 有记忆
****** 任务一致性
通过回以用户上次的行为来预测用户将要做什么,
任务一致性:我们每天的目标和实现目标的方式通常是相同的.
用户使用产品时,使用的功能及使用方式很可能和上次极为相似,甚至可能在同一个文档中工作