it-swarm.cn

渐进验证和披露

我试图找到一个渐进验证的例子。我们有一个可视化编辑器用户界面,用户可以在其中进行诸如以像素或百分比表示尺寸等操作。

编辑器属性位于选项卡集中,因此并非所有字段都同时可见。我们一直在讨论如何以及是否在此UI中进行验证。

我从以下角度出发:a)验证很有用,因为它会创建一个沟通渠道,用户可以在其中了解软件的期望并根据需要“变好”。 b)总是最好直接在输入字段上指示验证错误(无论是否在其他地方使用摘要),以便用户直观了解需要更改的内容。

我的同事,除了最大的敬意,我对此一无所知。他的逻辑如下:a)最好是防止某些类型的输入,或者在某些输入的情况下将其更改为更合适的值(如果无效)。例如,如果某人使用的百分比值大于100,则UI将在失去焦点事件时将该值重置为100。 b)因为我们处于选项卡环境中,所以某些错误对用户将不可见。使用摘要是徒劳的,因为可能存在“很多”验证错误。

我认为解决此问题的方法可能是逐步披露无效值。用户输入的值可能不正确时,会在某种摘要中将其标记出来。该摘要还允许用户在不可见的情况下导航到相关字段。

我希望我是一个原始人,但是我敢肯定这里有先例。我的问题如下:

  1. 有什么可以增加我或我的同事的观点的吗?

  2. 像这样的带有复杂条目的UI的示例是否可以进行渐进式验证?

11
David in Dakota

我们目前正在为桌面应用程序解决相同的问题,尽管它不是基于选项卡的。您可以尝试这样的方法:

alt text

如果需要用户注意的地方会出现一个小图标。甚至可以使用两种颜色:黄色表示警告,红色表示必须必须在用户进一步操作之前进行固定。

7
Hisham

在这种复杂的情况下,您可以做的最好的事情是创建尽可能多的UI原型,然后在您的用户群上进行测试,看看会发生什么。您可以将HTML与jQuery UI之类的东西结合使用,以快速获得许多可用的交互式控件,并可以快速进行测试。

您的制表符系统听起来很复杂,因此我不得不提出几点简化建议:

  • 在每个选项卡中创建“应用”按钮,以便仅可以为用户现在看到的属性保存状态。如果那将导致无效的应用程序状态,请重新设计选项卡,以便用户将属性分组在一起can可以彼此独立保存。
  • 如果您不能这样做,则可以突出显示带有“无效”图标和颜色的标签,以指示该标签中的属性需要引起注意。任何选项卡均无效时,“应用”按钮将被禁用。如果单击该按钮以显示指示仍然存在错误的消息,则可以考虑向按钮添加通知。错误的摘要将显示在每个选项卡中,而不是具有总体摘要。
  • 全局摘要可能有用,但我犹豫不决地提出建议,因为似乎没有立即显而易见的位置可以放置它,除非是这样,否则用户会注意到吗?
  • 属性如何分组?可能在功能上吗?尝试从不同角度看待它们,例如,按使用可能性。这是Microsoft如何对其Office 2007产品进行Ribbon设计的一部分。也许您可以采用以下方式设计选项卡:大多数用户只需要弄乱第一个(或立即可见)选项卡中的属性,而其他选项卡则可以视为“高级”或上下文。

最终,我已经说过了,测试您的设计! :-)

就处理错误而言,我的经验是,如果您阻止某些输入,则会使用户感到困惑。例如,如果在输入字段中不清楚只允许输入数字,但是无论如何您都不允许输入其他字符,这会使用户感到沮丧-他们不会以智能形式尝试使用它来帮助他们。因此,如果您决定沿用事件和输入检测自动纠正问题的方法,建议您始终使用清晰的显微镜。

但是,所有这些都是轶事-我尚未在这一领域做任何研究。与其说我的话,不如参考Luke Wroblewski的书 Web表单设计:填补空白 ,以及他对错误处理的研究,以获取有关如何处理此类情况的有用见解(对于例如,这 在Apple的结帐表单重新设计上的帖子 讨论了它们如何详细处理错误)。

4
Rahul

我最近在一个遇到类似问题的项目中工作。您可以在去年的“ 最小化复杂度 ”文章中看到我们如何解决该问题的屏幕截图。

1
Tyler Tate

我想到了使用许多错误的摘要以及某种工作的情况。

在任何IDE标签,任何时候都可以看到一个或两个,

然后,这些错误会在可滚动的可调整大小列表中列出,该列表会在默认情况下滑出主UI(默认情况下)。一旦捕获到错误,便可以执行此操作。单击或双击错误后,它将带您到正确的地方并集中精力进行纠正-当错误不再有效时,错误将从列表中消失。

(实际上,许多错误需要用户启动的操作才能重新评估,但是有很多静态分析加载项可在后台执行此操作,并在编辑代码时实际动态更新错误列表)

0
Oskar Duveborn

a)例如,如果某人使用的百分比值大于100,则UI将在失去焦点事件时将该值重置为100。

很好,但是您需要确保:

  1. 用户意识到他的输入已经固定。
    例如,如果您固定该值,则可能使字段闪烁一秒钟。

  2. 您可以合理地猜测用户的实际含义。
    例如,拿一个我昨天摔跤的拾色器。我想要一些元素来匹配另一个站点中的元素,因此我获得了十六进制值,然后将其复制并粘贴到了微小的临时文本框中。第一个值是#202040,但是由于某种原因,我只粘贴了#20204,该值立即被“固定”为#020204。我粘贴的第二个值是#BCD#BBCCDD的简写),它也被“固定”为...#000BCD。叹。
0
badp