为什么填个表像被审问
你办过那种业务吗:打开页面,一张长长的表格,二十几个字段从上到下排开——姓名、证件类型、证件号、有效期、签发机关、联系地址、邮编、紧急联系人、紧急联系人与你的关系……滚两屏都滚不到底。
你对照证件一项一项填,填到「签发机关」卡住了,翻出证件找到那行小字抄上去。终于填完,点提交——页面一闪,顶部一行红字:「第 3 项格式有误」。而下面你填的二十几项,全没了。
这就是把数据库表格直接拍在用户脸上的结果。而它和「一场舒服的对话」之间的差距,正是这一章要讲的:流程是有节奏的,节奏本身就是沟通。
表单是数据库的形状,不是对话的形状
那张二十几字段的长表是从哪来的?多半是工程师看着数据库表结构做的:表里有多少列,页面上就有多少个输入框,一次提交,正好对应一条 INSERT 语句(往数据库里插一条记录的命令)。对系统来说,这是最省事的设计——页面的形状和数据库的形状一模一样。
但对话不是这么进行的。正常人和人办事,是一问一答的:「您贵姓?」「要办什么业务?」「证件带了吗?」每一问都比较小,回答完还有反馈。对话有回合——你说一句,我接一句,双方都随时知道「现在进行到哪了」。
二十个字段一页砸脸的表单,相当于柜员一口气念完二十个问题然后等你逐一背答案。它省的是系统的事,费的是用户的心。
把一张表拆成一场对话
很多产品后来把长表单改成了「向导」——一步一页,每页只问一两件事,顶上有个进度条。这不只是排版变化,是把数据库的形状翻译成了对话的形状:
- 一次只问一件事,就像对话里一次只问一个问题。用户的心智负担从「管理二十个字段」降到「回答眼前这一问」。
- 进度条就是对话里的「咱们进行到哪了」。「第 2 步,共 4 步」回答的是用户心里那个一直没问出口的问题:还有多久?
- 每填完一步就校验一步,错了当场说,而不是攒到最后一次性清算。对话里没人会把你的二十句话听完才说「你第三句说错了」。
- 能替你填的就替你填——上一章说的默认值在这里发威:证件类型默认「居民身份证」,因为九成用户选它。
注意,这些改法没有减少任何信息——要填的还是那些内容,变的只是节奏。同样是二十个问题,一口气问完是审讯,一问一答是办事。
节奏的成本谁付
这里有个诚实的账要算:把表单拆成对话,成本是真实存在的。开发量上去了——分页、暂存、断点续填、每步校验,每一样都要写。所以「要不要拆」本质上是一个取舍:开发团队多花的这一周,换来的是每一个用户少受的那十分钟罪。
不友好的软件,几乎无一例外是把成本留给了用户侧;友好的软件,是团队把成本扛到了自己侧。这又一次回到了那个主题:界面是沟通,而沟通的质量,取决于说话的那一方愿意为听话的那一方多做多少。
大白话:数据库喜欢一次性要齐所有信息,人喜欢一次回答一个问题。流程设计就是决定按谁的脾气来。按数据库的脾气来,开发省事、用户受罪;按人的脾气来,开发费事、用户舒服。「易用性」三个字背后,其实是这笔账往哪边付。
但还有一个更深的问题:你拆了表单、写了人话报错,用户就满意了吗?事实是,大多数不满意的用户什么都不会说——他们直接消失。下一章讲怎么听见这些沉默的人。