B端SaaS软件设计常见的一个问题,以电商客服系统举例阐述
做B端SAAS系统的人,很容易陷入一个“看起来很合理”的设计方式:按照业务模块划分菜单。例如:发货、售后、打款、质检、知识。
尤其是在面对大客户时,会更觉得这种设计天然正确,因为这种功能结构很契合他们的组织架构,很符合他们对“一人一职”的规定。
于是很多产品经理会得出一个结论:系统应该按组织结构设计。
大多数B端系统,都是在“按部门设计”产品结构
工作台├─ 发货├─ 售后├─ 打款├─ 质检└─ 配置中心
看起来非常合理。负责发货的只需要看发货页面即可,负责售后的只需要看售后页面即可。
但SAAS的客户不仅是大客户,更多的还是依赖中小客户,中小客户的组织架构更多是“一人多职”,所以当使用的客户量、客户范围上来后,慢慢的会收到这样一些反馈:
客服会说:处理一个订单问题,我要切换多个页面,各种点点点
管理会说:要配置一个完整的业务流程自动化,需要在不同模块配,每次都是配部分,无法直观的感知
研发会说:模块之间的关联越来越复杂,每次调整都要看来看去
这里存在的问题就是:默认把“组织结构”当成了“产品模型”,这也是很多 ToB 产品都会踩的坑。
组织结构是会变的但业务主线不会变,一旦有了新的组织结构,又需要对产品缝缝补补,加权限,加配置。
很多系统为什么会越来越割裂?
履约 = 一类单据售后 = 一类单据打款 = 一类单据质检 = 一类单据
短期开发会非常爽。每个模块都是独立的、边界清晰的,不用关注其他模块,但这样长期一定会出现问题。
问题1:一个问题被拆成多个模块,数据过于分散
例如客服处理用户退款,可能会涉及到的业务事件有:售后处理、打款补偿、平台仲裁、物流拦截、质检复核。
如果是一个客服处理可能要打开5个页面,如果是不同客服处理,每个人只负责一个内容,则没人知道完整上下文。
明明都是在解决订单延伸出的问题,却分散在了不同的地方。
问题2:自动化越来越难做
真实业务一定是跨模块的,比如物流超时会涉及到物流公司反馈、消费者补偿、物流更新时提醒买家。但由于模块的隔离,无法配置一个完整的自动化流程,每个模块只能配置一部分。
问题3:AI能力融不到系统中
现在B端软件都在想几个问题:系统怎么接AI?怎么用AI提高产品价值?
但在业务中AI 最依赖的是什么,不是模型、提示词,而是:完整上下文。
数据的分散导致AI 看到的更多是碎片,所以现在很多系统都是在做AI总结、AI润色、AI快捷回复、AI分类。
没有真正参与到业务决策,没有最大化利用AI的能力为成员、为企业带来价值。
真正合理的设计
不按照部门设计,那应该怎么做?
软件应该按照“统一业务主线 + 组织视图”的架构来设计。
业务主线是什么?在客服系统中就是“订单履约”,在订单履约这个业务主线中,会包含:
时间轴所有任务节点,比如发货、运输、签收、售后、打款、仲裁所有处理记录:发货明细、售后处理明细、打款明细、仲裁明细
所有订单相关的人物问题都是在围绕订单履约这一条主线协同展开
组织视图是什么?这里部门没有消失,只是变成了一个个视图,每个视图对应一个部门事务
比如物流部门的视图:里面有订单发货、超时订单、发货异常、物流异常数据
比如售后部门的视图:里面有退款、换货、维修、服务单、仲裁单
为什么这种架构更适合?因为用户的组织结构会变,但业务主线不变。
电商客服系统中,工单、物流、售后、打款,这些都只是服务过程中的节点。真正的核心是:订单履约的完整生命周期
因为客服从来不是在处理模块,客服真正处理的永远都是:用户的问题。