发布新日志

  • 信息架构 & 应用模式

    2009-08-25 22:38:17

    <Designing Interface>读书笔记>
    对于一个软件应用(桌面型或网页),首先应该考虑用户能从或是想从这个应用得到什么,这就是这个软件设计诞生的目的.确定了目的以后,接下来可以考虑的事情莫过于信息架构了.这里主要罗列两种主要的信息架构方式:
    第一: 切分内容  DIVING STUFF UP
    对于内容的分割分类可以参考如下组织方式:
    #对象列表  LIST OF OBJECTS
    #动作或任务列表  LIST OF ACTIONS
    #主题类别列表  LIST OF SUBJECT CATEGORIED
    #工具列表  LIST OF TOOLS
    这几种方式可以单独或者交叉合并使用.

    第二: 物理结构 PHYSICAL STRUCTURE
    介绍三种应用普遍的物理结构:
    #多窗口  MULTIPLE WINDOWS
    #平铺窗格  TILED PANES
    #单一窗口分页  ONE-WINDOW PAGING

    在明确了软件应用的目标(用需求),并完成初步的信息架构(内容和布局的安排)之后,可以参考以下几种相关设计模式进入实际作业.

    @@双面板选择器  Two-Panel Selector
    例子:邮件客户端.
    @@画布加调色板工具条  Canvas Plus Palette
    例子: Windows 画图板, Photoshop
    @@单窗口深入  One-Window Drilldown
    例子:iPod的软件操作界面
    @@可选试图  Alternative Views
    例子: Word的不同视图切换
    @@向导  Wizard
    例子: 网站在线注册, 软件安装向导
    @@需要时显示  Extras On Demand
    例子: Windows 调色板中的"更多选项"
    @@有趣的分支  Intriguing Branching
    例子: AdobePDF 右上角的那个变颜色的按钮
    @@多级帮助  Multi-Level Help
    例子: Excel的多处帮助.


  • 用户行为模式

    2009-08-23 22:09:07

    <Designing Interface>读书笔记

    软件设计最根本关注的其实是"人",是你的用户,他们对于软件的期望是什么, 他们会怎么去使用软件.最为软件用户的人的行为模式值得关注的有下面这十二个方面:

    1.安全探索 Safe Exploration
    用户能放心的对软件进行探索性使用,不会迷路,不会丢失数据,当然系统不会崩溃.
    2.即时满足 Instant Gratification
    现在就要完成这件事情,是现在,不是以后.软件对于用户的操作给出即时的反馈,不要让用户陷入盲目的等待或者延时当中.
    3.满意即可 Satisficing
    这就够了, 用户不愿意花更多的时间来做到更好.
    所以一个一目了然的导航界面或者一个直接的任务操作对于这种行为模式的用户会是一个很好的体验.
    4.中途变卦 Changes in Midstream
    用户在操作中途改变主意了. 
    软件如果能在用户改变主意的时候记住那之前用户的操作信息,这样对于中途改变主意的用户来说,回来时会更容易继续最初的任务.
    5.延后选择 Deferred Choices
    用户不想现在回答这些,快点完成眼下任务就好了.
    譬如网站的用户注册,某编辑器中创建新项目,可以将需要用户填写的相关复杂信息留在以后(也就是用户完成当前急需的任务之后)再由用户去补充.
    6.递增构建 Incremental Construction
    需要改改,还是不对, 还需要再改一下. 
    很多情况下用户在完成一个任务的过程中会思来想去修修改改,支持这样的操作有助于维持用户做任务的流畅性,使其不比花费额外的精力担心进退修改中信息的丢失.
    7.习惯 Habituation
    那个操作在别的地方可以的,怎么在这里不行?
     一些标准或者是约定俗成的界面行为规范有必要去遵守,尽量使用户不需要打破原来的习惯去操作一个"特立独行"的软件.
    8.空间记忆 Spatial Memory
    这个按钮一分钟前还在这里的,怎么现在不见了?
    很多时候人们记忆东西是靠空间位置而不是靠名称.软件的按钮,菜单,选项等保持固定有助于用户养成空间记忆.UI设计禁忌有一条就是尽量避免动态菜单.
    9.前瞻记忆 Prospective Memory
    用户把东西放在这里,以后再来处理.
    对于一些不紧急但是需要一段时间内完成的任务,用户习惯将它们放在一个相对次要但是又不至于忘记的地方来提醒自己稍后来完成.一个软件系统给用户进行这样的操作的灵活性,完全没必要看到一个任务闲置下来就马上判断这是一个不再需要的任务而去试图终止它.
    10.简化重复工作 Streamlined Repetition
    到底得重复多少遍?
    发现用户一遍一遍做相同的事情,软件能够提供简化其重复操作的快捷方式.
    11.只支持键盘 Keyboard Only
    很多用户不喜欢用鼠标.
    对于软件操作尤其是一些数据输入,支持完全的键盘操作很有必要,从来能减少用户在鼠标和键盘之间切换所花费的时间.
    12.旁人建议 Other People's Advice
    人是一种社会动物,尽管有时候自己的想法很强烈,但是别人的想法也常常会影响自己.
    所以,在用户进行软件操作的时候,使其能够获得别人对于该操作的相关建议性信息,这会提高用户对于软件considerable的认同.譬如在线书店的用户评论对于后面想要购买相同一本书的用户是有一些建议性帮助的.


Open Toolbar