登录注册在不同的产品中有不同的体现,因为对于它的很多功能细节使用的好坏也没法一概而论,还是基于具体场景考虑。
这是早前实习期间做的一个登录注册流程的优化,主要是关于登录注册的业务流程图(Transaction Flow Diagram)梳理,包括短信验证码登录、账号密码登录、第三方登录、忘记密码、图形验证码等以及注意的一些情况。
业务流程图中最主要的几个问题就是:
谁(who),在什么时候(when),在什么条件下(condition),输入什么(input),输出什么(output),输出流向(flow)……
业务流程图表现形式我用的泳道图,可以突出用户操作、后端系统、前端页面之间的逻辑关系,以及如何运作。
注意事项:
11 位手机号的显示方式可以用「344」形式(如:000 0000 0000);
手机、验证码的验证先后顺序(验证码是否超时、验证码是否正确、手机号是否注册过等);
错误反馈的方式(toast、HUD、alert文字、弹框);
输入错误后,是用户点键盘上的删除键一个一个删除?还是在输入框上提供一个一键删除 icon?还是自动删除?
对于手机号和验证码这种纯数字的输入,键盘弹出的类型预先设定,以及设定何时弹出;
是否需要自动验证?(比如当输入的手机号为 11 位时,自动获取短信验证码;当输入的验证码为4or6 位时,自动验证短信验证码,不需要用户点击 button);
当验证手机号为未注册过时,是否需要设置密码?设置密码是否可以跳过?若未设置,重新用验证码登录时,是否还需要设置?
注意事项:
应不同产品不同业务需求,为防刷短信验证码,可在每次点击获取短信验证码前增设图形验证过程;
图形验证码验证存在形式,是在页面内?还是弹框的形式?因为要考虑到在多个场景下可复用的情况;
若为弹框出现的形式,当图形验证码输入错误,用 toast 或者 HUD 的形式反馈错误会不会不合适?
用文字提示图形验证码输入错误后,是否可以自动清空图形验证码?
注意事项:
默认登录方式是手机号验证码登录还是账号密码登录?(看产品和场景:比如初次下载时,可以用验证码登录,用户主动登出后,下次登录可用账号密码登录);
产品多长时间不使用,需要重新登录呢?(重新登录时,是否可以自动记住手机号),还是每次进入的时候都需要重新登录?(比如我用的农行和中行移动app,在每次进入的时候都需要重新登录,应该是为了安全性考虑);
手机号,密码的验证先后顺序(手机号格式是否正确、手机号是否注册过、手机号和密码是否匹配等);
关于输入密码的二次确认,在我实习的时候,我导师给我讲过什么时候用「再次输入密码」,什么时候用「密码可见开关」,以及密码可见开关在什么场景下默认可见,什么场景下默认不可见。(因为不想把这些限定成一个规则,大家可自行根据自己产品思考);
若系统判断手机号未注册,是直接反馈用户手机号未注册?还是反馈手机号or密码错误?还是引导用户进入注册流程或者验证码登录流程?(当然还是依场景而异:部分产品如果直接反馈手机号未注册,其实很容易泄露隐私,哪些手机号注册过该产品就容易被他人知道)