“不谋全局者,不足谋一域;不谋万世者,不足谋一时。”——陈澹然
强调了从全局和长远的角度去谋划事情的重要性,与产品设计中先从宏观层面定位需求,而不是陷入细节的理念相契合。
今日清晨,我参加了一场产品需求设计评审会。会上,一位同事率先登台,介绍本次需求目标——对某一功能进行重构。他条分缕析地剖析了原有设计存在的问题,并精心准备了两套全新的设计方案。其核心诉求很明确,希望大家共同研讨,选出更合适的方案。
然而,首轮讲解结束后,我有些云里雾里,未能完全领会他的意图。这时,另一位同事站出来进行补充说明。他没有直接围绕功能本身展开,而是巧妙地回顾了原有功能的设计思路、现存问题,以及此次重构的改进方向。这番补充如同拨云见日,让我逐渐有了清晰的认知。
随后,我开始思索同事面临的核心问题:两套方案,该如何抉择?于是,我提出第一个问题:在现有的产品功能里,是否存在类似需求?经过热烈讨论,我们发现该需求与功能 B 有相似之处,二者均涉及授权管理,只是一个针对用户授权,另一个针对机构授权。
紧接着,我抛出第二个问题:深入探究用户授权功能的具体实现。我们打开系统查看后发现,用户授权功能支持对单个用户或多个用户进行授权,而此次需求是要针对一个机构及其下属的所有子机构进行统一授权。
这两者乍一看相似,实则存在微妙差别。主要区别在于,机构授权是选定一个机构的根节点后,无论该机构下有多少子机构(可能是 10 个,也可能是 100 个),都会一并授权至应用系统。而用户授权则是选一个用户就授权一个,选两个就授权两个,无法一次性对大量用户进行授权。
通过此次讨论,我清晰地指出:这两个场景从大类上看确实相近,但在具体分类上存在差异。机构授权属于批量授权,而用户授权则是单个或小批量授权。因此,用户授权适宜采用同步处理模式,而机构授权则需采用异步处理模式。
从具体场景出发,我们可以总结得出:我们需要支持针对机构的批量授权功能。目前,我们的系统仅支持逐个选择用户进行授权,尚不具备用户批量授权功能。未来是否会增加这一功能呢?可能性极大。例如,我们可以选择某个机构下的用户进行批量授权,这便是一种条件式批量授权。只是当前用户授权功能尚未实现这一特性。
通过深入分析,我们识别出该需求与用户授权在大类上相似,但在具体分类上有所不同,这是一个全新的场景,我们将其命名为“条件式批量授权”。
针对“条件式批量授权”,我们需要对这一场景进行更精准的界定。以基于机构的批量授权为例,这种授权方式与普通批量授权有着本质区别。这种差异不仅体现在产品界面设计上,更贯穿于整个逻辑架构的革新。
首先,鉴于授权数量的不确定性——既可能是单个节点下的单个用户,也可能是成千上万的用户,我们必须摒弃同步处理方式,转而引入异步处理机制。这一发现表明,这是一种全新的设计模式,在以往的产品设计中未曾出现过。
这种异步处理方式催生了新的需求:我们需要构建异步处理日志系统,并在后台架构中引入调度任务机制。进一步思考,这种模式是否仅适用于当前模块?显然不是。这种设计模式极有可能适用于产品的其他模块,这意味着当前的实现仅仅是一个开端。
因此,我们应按照通用模式来实现该功能,为未来可能遇到类似场景的其他项目和模块提供可复用的设计模式与底层架构。明晰这些关键问题后,团队面临的困惑自然会烟消云散。
在此情况下,我们决定暂停会议,让团队成员回去重新审视设计方案的优化方向。回顾此次经历,当我们面对一项需求时,该如何开展工作呢?
首先,我们要在产品功能架构图中精准定位该需求的位置,也就是先进行定性分析。具体来说,要确定它所属的大分类,层级越细致越好。若暂时无法精确到最细粒度,先定位到上一层级也无妨。这一步的关键在于明确需求在整个架构中的位置。
其次,在确定大分类后,我们需进一步明确其小分类,并以简洁的一句话概括其核心特征。同时,判断该分类是既有的还是全新的场景。若为既有分类,我们可直接参照以往的设计模式进行处理;若为新分类,则需思考第三个层面的问题:该分类未来是否可能再次出现?
通过这三个层面的思考,我们能够清晰把握当前功能需求的本质,从而做出更有效、准确的决策。所以,在进行产品设计时,切勿一开始就一头扎进细节的漩涡,而应从更高的层面出发,对需求进行精准定位,这才是做好产品设计的不二法门。
结语
回顾此次评审会,它宛如一场生动的实践课,让我们深刻领悟到产品设计的智慧与方法。当面对需求时,我们不能被眼前的迷雾所迷惑,而要像经验丰富的航海家一样,站在高处,用精准的定位和清晰的逻辑,引领产品之舟穿越波涛,驶向成功的彼岸。在未来的产品设计征程中,让我们牢记这三个层面的思考,以宏观的视野和严谨的态度,雕琢出更加卓越的产品。图片 图像 小部件