代码之家  ›  专栏  ›  技术社区  ›  Adam Davis

防止用户错误的UI提示[关闭]

  •  7
  • Adam Davis  · 技术社区  · 17 年前

    应该遵循什么样的UI/GUI指导原则,巧妙地(或不那么巧妙地)指导用户,这样他们就不会射中自己的脚。

    例如,您可能想让超级用户能够“清理”数据库中不常使用的记录,但如果新用户刚刚花了数小时输入新记录,您不想让他们尝试该选项-他们可能会因为“不常使用”而丢失所有记录。请不要讨论这个具体的问题-它只是在这里澄清问题。

      • 也就是说,我应该如何设计界面来提醒用户注意某个功能或操作
    • 如果采取了不良措施,我应该设计什么来限制风险和暴露?

    -亚当

    10 回复  |  直到 17 年前
        1
  •  19
  •   mqp    17 年前

    一切都可以撤销。不要擦除-停用。在每次破坏性操作之前进行备份,并为用户提供恢复的方法。

    这就是路。很难一路追随它,但这正是你的目标。

        2
  •  10
  •   Oskar Duveborn    9 年前

    如果它是一个相当大的应用程序或系统,那么对于危险的操作也需要单独的管理员访问权限。

        3
  •  8
  •   DevinB    17 年前

    Don't Make Me Think

    你可以,事实上,你必须考虑他们可能做的一切。因为你(作为设计师)给了他们做所有这些事情的能力。

    示例层次结构

    • 按钮-可以单击。
    • T/F单选按钮(必须)-只有两个选项。
    • 文本字段-大量不一致的选项。用户越困惑,编码人员就越危险。

        4
  •  6
  •   Randolpho    17 年前

    这是一篇老文章,但仍然是一篇很棒的文章:

    Microsoft Inductive User Interface Guidelines

        5
  •  6
  •   Robin Day    17 年前

    永远不要依赖那些说“你确定吗?”的东西,用户总是肯定的,如果他们在拒绝之前费心去读的话。

        6
  •  4
  •   S.Lott    17 年前

    对用户进行分区并具有细粒度权限。

    超级用户权限不会轻易授予——只授予真正的超级用户——而且很容易被撤销。

        7
  •  4
  •   Henrik Paul    17 年前

    我的观点是,如果存在不一致或模棱两可的情况,用户很少出错,用户界面总是要受到责备。所以,当你说“在用户脸上打一拳”,加上“pebkac”,我想 打一耳光就好了。

    不幸的是,我无法给出任何好的用户体验建议,因为我仅仅是一名程序员,因此从定义上讲,我或多或少没有资格成为一名好的用户界面设计师。我只想指出一种可能性,你实际上可能是一个需要获得线索的人,并且试着对用户更加谦虚。

    为Adam编辑:

    我对用户体验知之甚少就是我对它知之甚少。这是一条完整的职业道路。我知道一个事实,在Stack Overflow上,任何人都无法通过问一个“让我擅长这个问题”来学习。这就像我在问“帮我写更好的代码”,正文描述了我的同事如何嘲笑我的代码。

    我们,程序员,是工程师。我们喜欢秩序、理性和合乎逻辑的决定。但是普通用户不是程序员,也不是工程师,而且在许多情况下,对计算机本身一点也不感兴趣。

    我很高兴人们给了你一些好的建议,我也很高兴你,与我的第一印象相反(很抱歉),渴望接受这些建议并理解用户的需求。

    但重点仍然是:你需要买书(不要让我认为这是一个很好的开始,正如已经推荐的那样)。你需要观察人们如何使用你的软件。您需要观察它们在哪里绊倒,并来回移动,直到您的UI看起来很自然。

    对不起,我还是不能给你答复。因为我没有。即使我 有了它,我可能要向你收取每小时50欧元的费用,在未来的几年里。

        8
  •  3
  •   Esko Luontola    17 年前

    使用户操作的结果可见,并提供撤消这些更改的方法。

    撤销有几种类型。最简单的方法是单步撤消(如在记事本中),但这通常是不够的。更好的方法是多步骤撤消(如Word),它涵盖了大多数情况,但不允许撤消特定操作而不撤消之后执行的所有操作。这可以通过特定于对象的撤消来解决,例如,在具有多个字段(或Excel中网格中的单元格)的表单中,右键单击该字段将显示该字段中以前值的列表。对于已删除的数据,您可以存储已删除的数据,用户可以在删除数据后从中恢复内容(例如,如果用户在Powerpoint中删除幻灯片)。最后,您可以拥有每个更改的完整版本历史记录,例如 Local History

    确认对话框没有帮助。用户可能第一次阅读它,但不久之后,在对话框中单击“确定”将成为一个自动过程,用户将在对话框出现之前按Enter键。那么确认对话框就成了不必要的机械工作的来源。用户总是确信要做一些动作,即使他错了——否则他就不会做那个动作。

        9
  •  1
  •   Mitchel Sellers    17 年前

    1. 用户文档——首先,也是最重要的是,为他们提供一些文档,使系统易于使用。只是一般的可用性和所有事物的描述性名称/动作。
    2. 提供带有警告的确认屏幕。全面披露行动将要做的事情,并在黄色框中给出警告。它引起了人们的注意,并有助于防止对其他项目的需求。
    3. 需要多次批准,对于数据清除操作,尤其是采用两层方法,需要单独用户的批准。

        10
  •  1
  •   Matt Davis    17 年前

    第二种方法是利用向导概念来完成复杂的任务。我知道向导已经过时了,但是如果一项任务真的很复杂,用户通常会喜欢在开始的几次握住他们的手。WinZip向导界面就是一个很好的例子。如果您以前从未压缩过文件,此向导将使用逻辑进程引导您完成压缩过程。然后,一旦您习惯了它,就可以更快地切换到经典界面来压缩文件。

    当然,要做到这一切,不仅需要开发人员的承诺,还需要管理层的承诺。不幸的是,这正是许多可用性之战失败的地方。