本系列记录我与过往和将来合作的技术出身的产品狗共事的故事,不点名,对事不对人。给自己和同行敲响警钟引以为戒,有则改之无则加勉。
---------------------- 分割线 ----------------------
某在线笔试产品,当时产品狗给过来的需求,其中的创建考试与编辑考试元数据的功能的 modal,经我现在重新制作原型,如下图所示:
看到这个后我的心情是:
缓了口气,与其沟通,得到如下共识:
那么我们就来分析,这个需求问题出在哪。
首先相信,创建和编辑的差异不会太大,所以这样创建也会这样编辑。于是问题就出在编辑考试的时间相关信息上了。
先看该功能所面对的用户目标:
对于以上 6 个目标,会产生编辑考试的时间相关信息的必要,即该功能服务于用户以上 6 个目标。
在编辑时,会碰到如下 2 个边界状况:
也就是说,如果要将一个时长为 1 小时的考试推迟 1 天进行,就必须先将结束时间推迟 1 天,再将开始时间推迟 1 天;不能反过来。具体整理如下:
是不是很 WTF?
我便提议,改为如下方案:
这样,面对那 6 个功能需要,就只需 1 个操作。
当然,具体的日期输入方案还有优化空间,但那不是本故事的主题了。
---------------------- 分割线 ----------------------
思考题: 为什么提前/推迟要按照 delta time 的大小划分为 2 类共 4 项目标,而不是不作区分?