在设计产品规则时,我总是强调:要把错误和异常操作尽量前置。
比如支付,如果用户输入的金额是有上限的(现在微信对于商户一次收款就经常有上限),那么目前最佳做法就是在输入金额的输入框加检测,一旦用户输入了超过上限的数字就报错打断操作。
次之的做法是在输入框旁边加醒目提示,但我很不赞同这种处理方法。
一是因为醒目的提示往往意味着与产品的界面美观相冲突,试想醒目的颜色多么破坏界面整体和谐;
二是因为再醒目的提示也会有用户视而不见。
再次之的做法就是任由用户输入明知不会成功的数字,完整的走完流程,直到他输入密码付款才被微信提示说不能完成支付操作。
明知不可为而不尽早告知用户,就是暗示用户当前的操作是可行的,然后任由他撞了南墙。
这用户体验有多糟糕就不必描述了。
不谈应用交互和用户体验,只从用户需求出发,用户的需求是什么?
完成支付,用金钱和尽量少的时间成本换取自己想要的商品或者服务。
而尽早中断异常操作,对于用户来说是及时止损,降低他的时间成本。
然而,今天一个关于安全性的需求讨论又让我明白:不是所有的情况都适合前置中断。
比如很多平台都有敏感词检测,目前的多数做法都是使用前置中断操作。
这里又涉及到了前置还是后置的问题,如果在找到特征后,不允许用户操作,那么通过几次尝试,就很容易找到特征而绕过检测,这时候后置反而会比前置更有效。