最初发布为:Gentner,D.和Nielsen,J .: The Anti-Mac interface,ACM通讯39,8(1996年8月),70-82。
通过探索超越传统图形界面背后原理的替代界面,出现了基于语言,对象,专家用户和共享控件的丰富人机界面。
在最近的用户界面会议上,一些发言者感叹人机界面被卡住了。我们似乎已经选择了WIMP(窗口,图标,菜单,指针)模型,并且界面设计上几乎没有真正的创新。
物理学家和数学家经常通过思考如果违反了一些基本假设和原理,世界会变成什么样子(例如,参见[1])。这导致了新的概念,例如非欧几里得几何,正电子,反物质和反重力。至少,违反基本假设是一种有用的心理锻炼,但是,由此产生的惊人数量的概念提供了对现实世界的有用描述。
在本文中,我们探讨了如果违反了Macintosh人机界面的每个设计原则,可能会导致的界面类型。我们将重点放在Macintosh界面上,因为它是当前界面范例的主要示例,并且Apple Computer已发布了Macintosh人机界面设计原理的明确列表[2]。自Macintosh推出以来,这些原理并未发生重大变化。其他流行的图形界面(例如Motif,OPEN LOOK和Windows [16、18、22])的样式指南列出了一组非常相似的原则作为其界面的基础。
首先,我们应该声明我们是Macintosh人机界面的忠实拥护者和Macintosh计算机的常客。我们的目的不是说Macintosh人机界面准则是错误的原则,而是探讨计算机界面的替代方法。 Anti-Mac界面并非旨在与Macintosh敌对,只是有所不同。实际上,Apple和其他地方的人机界面设计人员已经将某些Anti-Mac功能整合到了Macintosh桌面和应用程序中。 Macintosh被设计为"我们其他人的计算机。正如艾伦·凯(Alan Kay)曾经说过的那样,它取得了足够的成功,并且成为了第一台足以受到批评的个人计算机。本文应本着同样的精神。
它需要卖给天真的用户,也就是说,以前没有任何计算机经验的用户。
它的目标是狭窄的应用程序(主要是办公室工作,尽管后来添加了娱乐和多媒体应用程序,但有时会与标准接口稍有区别)。
它控制着相对较弱的计算资源(最初是具有128KB RAM,400KB存储设备和点矩阵打印机的非联网计算机)。
用户和计算机之间的通信渠道非常贫困(最初是一小块黑白屏幕,音频输出不佳,没有音频输入,除了键盘和一键式鼠标外没有其他传感器)为它提供了支持。
自Macintosh推出以来的12年间,这些限制都得到了一定程度的放松,但是我们将探索如果彻底消除它们会发生什么情况。
根据Macintosh准则[2],用于Macintosh系统软件和应用程序的人机界面的设计基于许多人机交互的基本原理。这些原则导致了出色的图形界面,但是我们想知道:这些原则如何限制计算机人机界面?违反这些原则会导致什么类型的接口?
我们将针对每个Macintosh人机界面设计原则来解决这两个问题。 (Macintosh设计原则及其相应的Anti-Mac原则汇总在表1中。)
Macintosh的第一个原则指出,接口应该基于我们周围熟悉的非计算机世界的隐喻。在Macintosh界面中,计算机文件以文档形式表示在放在桌面上的纸质文件夹中。将文件拖到垃圾箱中即可删除它们。最近的许多界面都试图通过将桌面隐喻扩展到其他房间或建筑物隐喻(例如Bob或Magic Cap,图1)或乡村隐喻(例如eWorld)来克服其局限性。这些3-D设计试图在平面屏幕上模拟虚拟现实,但在实现共同的用户目标时似乎常常引入了笨拙的间接性。它们在导航上很麻烦,要求用户转到“城镇的另一端”。从邮局提取电子邮件,并且交互繁琐,从而使用户超载了隐喻而不是用户任务所需的其他窗口和其他界面元素。
Warning: Can only detect less than 5000 characters
使用直接操纵,用户可以直接与界面中的对象进行交互[17]。原型示例是通过打开原始文件夹并使用鼠标指针将文件图标拖动到目标文件夹,将文件从一个目录移动到另一个目录。此过程对于具有少量对象的简单动作效果很好,但是随着动作或对象数量的增加,直接操纵很快就会成为重复性的繁琐工作。直接操作界面的阴暗面是您必须直接操作所有内容。代替了提供高级指导的主管,用户变成了必须反复执行相同任务的装配线工人。
直接操纵还意味着用户必须始终在原子级别上进行操作。他们不能将一系列相关的基本操作归为一个高级操作或使用条件操作。假设我们有一组图像,并且想要将所有PICT文件转换为图标(请参见图2)。
如果转换需要几个步骤,这将是一个非常繁琐的过程,需要直接操作,但是简单的脚本语言提供了一种自然的方式来指定此任务。直接操纵还将我们的动作精度限制在通过手眼鼠标协调而达到的精度上。语言和数学可以更精确(将三角形水平线的底部放置在圆的中间)并更动态(将直方图条的高度保持在37%的水平)左侧的栏)。最后,直接操纵要求用户参与每个动作,但是有时用户可能不知道该怎么做。例如,随着应用程序变得越来越复杂并且涉及到遍及整个计算机的许多文件,安装和删除应用程序超出了大多数用户的理解。与其直接将文件拖到适当的位置,大多数用户更喜欢按安装程序上的单个按钮,然后让计算机将文件移动到适当的位置。确实,安装和卸载程序已成为复杂软件包的必备附件。
视点原则指出,用户通过指向他们在屏幕上可以看到的对象来与计算机进行交互。好像我们已经抛弃了一百万年的进化,失去了具有表达性语言的设施,而被简化为指向直接环境中的对象。鼠标键和修饰键为我们提供了一些等同于不同咕unt声的词汇。我们已经失去了语言的全部力量,无法再谈论那些不立即可见的对象(所有文件已存在一个星期以上),尚不存在的对象(来自我老板的未来消息)或未知的对象对象(波士顿餐馆的所有指南)。
如果我们想在根本不懂语言的国家/地区订购食物,我们将被迫进入厨房并使用视点界面。稍微了解一下语言后,我们可以指向菜单从餐厅选择晚餐。但是语言使我们可以与服务员或厨师讨论我们想吃什么。同样,计算机接口必须不断发展,以使我们能够利用更多的语言功能。在界面中添加语言可以使我们使用丰富的词汇,并为我们提供基本的语言结构,例如条件句。语言使我们可以引用不立即可见的对象。例如,我们可以说类似"如果有来自Emily的新消息通知我。请注意,我们并不是在倡导界面仅基于语言。界面也不必理解全部自然语言。真正的表达能力来自语言,示例和指向的结合。
一致性是当您初次接触它时听起来像是一个好主意的那些原则之一,但是很难在任何实际情况下都应用该原则,在这些实际情况中,您可以与之保持一致的各种冲突事物[8] 。
一致性的基本优点是希望,如果具有相似功能的对象始终看起来和行为相同,则将减少学习。如果所有人都有相似的图标,他们将更容易识别应用程序。然而,在现实世界中,即使外观有些不同且控件不同,人们也不会在圆珠笔和纤维尖笔之间进行切换。它们足够相似,以致它们都被视为笔,而它们不同的外观则为其功能稍有不同提供了乐趣和线索。现实世界中物体的丰富细粒度表示使笔或书本具有各种各样的外观,并且仍然易于识别。随着计算机界面中对象的表示变得越来越丰富和细化,对完全一致性的需求将下降。
请注意,一致性不是对称的。尽管我们认为具有相似功能的对象不必具有一致的外观或控件,但具有相似外观的对象具有相似的行为和功能仍然很重要。除了开个玩笑,看起来像网球鞋的钢笔不是很有用。
所见即所得(WYSIWYG)表示您的文档在屏幕上显示时,准确地反映了打印时的外观。与早期的基于计算机的文本格式设置系统(例如troff)相比,这肯定是一个很大的改进,在troff中,文档在屏幕上的显示与打印机产生的内容之间没有明显的关系,并且进行了许多尝试。获取新文档以正确打印。
所见即所得的问题是它通常等效于所见即所得(您所看到的就是全部)。文档具有丰富的语义结构,通常由于其在屏幕或印刷页面上的出现而难以捕获。例如,一个单词可以用斜体字印刷以强调,作为书名的一部分,或作为引文的一部分,但是如果仅通过字符以斜体字表示,则失去了特定含义。所见即所得的文档仅显示最终的印刷形式;它不能捕获用户的意图。
其他文本表示形式,例如标准通用标记语言(SGML),保留了文本固有的语义含义,并具有将文本和语义转换为打印页面上的外观的规则。例如,可以在SGML中将文本字符串标记为书名。在一种情况下,文本可能以斜体字体打印;在另一种情况下,它可能以粗体打印,在第三种情况下,书目检索程序可能会对其进行访问。
所见即所得假定该信息只有一种有用的表示形式:最终印刷报告的形式。尽管我们并不反对打印预览功能,但是即使目标是生成打印文档,在准备文档时使用不同的表示形式也会很有用。例如,我们可能想查看格式设置的符号或边距轮廓,或者在编写时在边距中组合索引项可能会很有用。
从某种意义上说,所见即所得相当于我们前面讨论的隐喻中的马式拖拉机。所见即所得假设人们想要纸质报告:信息可能在屏幕上产生(甚至消耗),但其结构仍应与纸质报告相同。但是,如今,谁有时间阅读我们获得的所有文档?实际上,在过去的好日子里,人们很少像在阅读报告时那样从头到尾阅读信息,即使是繁忙的经理每天也最多只能收到一份报告。取而代之的是,电子信息应模块化并以鼓励人们尽可能少阅读的方式呈现,方法是将特定用户感兴趣的信息弹出到顶部,同时使每个用户都可以根据需要链接到备份信息。面向对象的创作和阅读将使同一条信息可以在多个级别(可能从不同角度)呈现。
我们还应该提到并非所有用户都能看到。对于盲人用户而言,用类似于SGML的丰富意图属性编码的信息可以以替代格式(例如声音)以比仅限于从屏幕上的像素大声读取的简单屏幕阅读器可用的方式更有用的方式表示。屏幕不知道它们的意思。
在WIMP倡导者中,用户应该由用户来控制几乎是一种宗教运动,用户应该(而不是计算机)来发起和控制操作。用户控制的不利方面是必须由用户控制。在许多情况下,我们都不希望受到控制:例如,乘坐一架客机,或者早上看我们的吐司面包,看它不会燃烧。生活中的许多活动是如此困难或无聊且重复,以至于我们希望将其委托给其他人或机器。同样,在计算机上,有许多我们不想控制或不知道如何控制的活动。这是代理程序和守护程序的主要领域,它们是不知疲倦地守卫,执行例行任务或不了解处理复杂任务的知识的计算机进程。
多数计算机程序员在停止使用机器语言编写代码之前就放弃了完全控制,而让汇编器,编译器和解释器担心所有小细节。如今,几乎没有用户为他们的电子邮件指定确切的路由。我们了解到,这样做不值得麻烦,而且计算机通常可以做得比我们更好。计算机和人们的专业知识差异很大。例如,人不是
......