B端设计实战:从定制化需求到平台通用型设计
编辑导语:随着平台业务的逐渐增多,需要对其进行定制化的需求设计,业务需求多样性与平台能力统一性的矛盾该如何解决?本文就该矛盾展开分析,并提出解决的相应措施,确保平台实现了通用一致的设计目的,一起来看下吧。
一、平台提效设计的矛盾点
在开始阐述本次专题之前,我想先简单介绍下我们的平台业务背景,随着字节教育前台业务的不断增多,前台业务对题目、图片、试卷等资源的需求量也越来越大,为了避免重复生产造成的资源浪费,题库中台生产能力应运而生,我们通过招募Freelancer或签约供应商,来为各业务线提供教育资源的生产服务,因此对内部我们也通常称呼为生产平台。
下图是我们的任务广场页,我们可以看到界面内罗列展示着各种各样的任务,这些任务通常会由不同业务根据需求进行投放展示,从而供生产员们自由领取进行生产。
作为一个B端生产平台,平台定位决定我们要服务多业务,多业务必然会产生复杂多变的业务场景,从而衍生出多样化的定制需求。
随着接入生产平台的业务不断增多,我们发现了一个日趋显著的问题,以同一个补答案的任务能力为例,我们会接收到3个存在差异的业务定制需求:
德国哲学家莱布尼茨曾说过:“世上没有两片完全相同的树叶。”
我今天也想说:“中台没有两个可直接复用的业务需求。”
从上面的业务需求例子中,我们可以发现不同业务对平台能力的特性存在显著差异化的诉求,而每次业务需求一旦出现新的定制点,就意味着要重新走一遍研发排期流程,即便走最敏捷的研发测试流程也需要1周时间,这对业务而言非常的不友善,下游的设计、前端、后端、测试也不得不在各个业务的定制需求中疲于奔命,逐渐背离了平台快捷高效的初衷。
为了解决这个问题,平台项目组内部进行反复探讨,我们回归到了一种经典的哲学思辨:
业务需求多样性与平台能力统一性的矛盾该如何解决?
为了解决这个矛盾,我们尝试过一些不靠谱的方法:
- 我们对业务妥协过,通过拉代码分支的方式为业务支持各类定制逻辑,让平台能力变得冗杂且不通用,最终导致平台的维护成本急剧上升;
- 我们对业务强硬过,希望通过说明书或培训让业务先了解我们的平台能力规则,再提出符合规则的需求,但收效甚微,也让业务开始质疑平台的服务能力。
通过各种踩坑后,最终我们达成了一个共识:
- 首先,业务需求一定是多样化的,这是业务背景差异性所决定的客观现实;
- 其次,平台能力必须是统一的,这是基本原则,否则平台将不再是平台;
- 最后,二者看似冲突但并非不可调和,辩证哲学针对这个话题已经给出了解答,只要我们能够抓住业务需求多样性的共性特征,我们就找到通用化设计的钥匙。
二、从矛盾到通用的切入点
在开展设计前,我们需要明确下当前的设计现状和设计原则:
作为B端生产平台的设计师,我们需要:
- 为解决多业务的生产问题而设计;
- 为维持平台能力的通用性而设计;
- 面临复杂的业务场景和平台逻辑,必须关注能力抽象、角色、权限等问题。
为此我们的设计方案,需要契合以下2点原则:
1. 基于通用场景抽象共性特征
为了确保设计能够通用一致,我们首先基于多个业务针对平台任务提出的定制需求,归纳了一个通用需求场景:
关键目的是契合业务特点,表现诉求是对平台任务进行定制。
基于以上假设,我们重新梳理关键目的(业务特点),发现不同的业务背景间包含多个同类的业务属性,我们可以将其抽象归纳为关键目的的共性特征。
我们继续梳理表现诉求(定制任务),发现不同的业务定制需求中包含多个同类的任务特性,我们可以将其抽象归纳为表现诉求的共性特征。
通过抽象共性特性,我们可以将通用场景转化为明确的设计机会点,业务属性成为通用条件,任务特性成为通用结果。
2. 将共性特征转化为平台能力
将通用业务属性录入至平台内,并为其内置常用的变量值,形成平台配置能力的基础条件。
如果业务认为我们抽象的业务属性不够或过多,我们依然支持业务在项目权限内对业务属性和变量值进行增删修改,而我们提前基于业务权限做了项目数据分隔,所有变更仅在单一业务数据内生效,不会影响到其他业务的属性及变量值数据。
这些业务属性将成为平台的通用能力,用于服务更多的业务需求,达到通过配置设计实现定制效果的目的。
3. 用平台配置设计实现定制
根据“不同业务属性,定制不同任务特性”的场景思考进行配置设计,我们将基于业务增删修改后的业务属性作为任务配置的通用条件,任务特性则成为任务配置的通用配置项。
通过切换业务属性条件实现匹配业务背景的对应目的,基于业务属性条件可以实现配置更多定制的任务特性,而每次的规则配置将不再需要重复走研发流程,极大的提升了业务体验,同时也帮助设计产研从重复性劳作中释放,给予我们更多时间来进一步丰富和优化平台体验。
整个配置设计对业务而言,默认条件对应业务背景的关键目的,而配置项则对应业务的表现诉求,从心理模型上匹配了业务的需求逻辑,实现了清晰高效的设计目标;
对平台而言,将定制点中的共性特性进平台能力通用化,确保平台配置的最大兼容性和复用性,实现了通用一致的设计目的。
通过以上方法,我们将业务配置流程平均耗时从研发流程10天降低至手动配置1天,整体流程提效90%以上。
#专栏作家#
愚者秦,微信公众号:feather-wit,人人都是产品经理专栏作家。先后任职于爱奇艺、字节跳动的一枚体验设计师,同时是兼职写小说的斜杠青年,善于总结和抽象设计方法,热衷于探索不同用户场景下的产品策略。
本文原创发布于人人都是产品经理,未经许可,禁止转载
题图来自Unsplash,基于CC0协议
生物公司小底层觉得是不是就是提炼出通用配置通过变量转化出适合场景的东东
通用的基础是对于场景的精准把握,以及对用户需求的深度理解。如果抛开场景业务去谈通用,不仅毫无意义,还可能会误入歧途。所以想做通用的话,先去把每类用户、每类场景研究透,市场上的工具大多是功能堆砌,一到落地时一堆bug。而且通用化的前提是规范先行,开启通用化,是需要有用户基础的,不然那就不是通用化,而是产品经理的个人YY。
而且场景有很多种 业务场景 和 用户场景 项目中基本上是以业务场景为底层,用户场景为感知层进行通用设计。
抽象出来,用高配置实现,这一步比较难
将所有业务场景属性提炼出来,写进平台,通过平台配置,且业务属性可拓展,是这个意思吗