软件架构设计——四色建模法(事件建模法)

四色建模法

在业务建模和系统设计中,事件风暴法(Event Storming)因其灵活性和高效性而备受欢迎。然而,这种方法也存在一些隐藏的弊端

  1. 事件流的随机性:由于缺乏明确的收敛逻辑,参与者可能会提出过多无关的事件,导致事件流混乱。
  2. 过度依赖主持人:事件风暴法的效果很大程度上依赖于主持人的经验和能力,结果难以保证一致性和可靠性。

为了解决这些问题,四色建模法(Four-Color Modeling Method)应运而生。四色建模法通过从业务的基础逻辑出发,系统化地构建领域模型,减少随机性和依赖性。本文将详细讲解四色建模法的理论基础、四种对象原型及其具体流程,并通过一个电商平台下单流程的具体示例,帮助你通俗易懂地理解这一方法。


四色建模法的核心概念

四色建模法将业务逻辑分解为四种不同的对象原型,每种原型对应一种颜色。这种颜色编码方法帮助团队直观地理解和分类业务中的不同元素。以下是四色建模法的四种对象原型:

  1. 粉色(时标对象 Moment-Interval)

    • 定义:表示业务中的时间点或时间区间,通常用于记录重要事件或里程碑。
    • 示例:订单创建时间、支付完成时间、商品发货时间。
  2. 黄色(角色对象 Role)

    • 定义:代表在业务过程中承担特定职责的角色,可以是人、组织或系统。
    • 示例:买家、卖家、平台管理员、物流系统。
  3. 绿色(参与方对象 Party-Place-Thing)

    • 定义:指参与业务活动的实体,可以是人、地点、物品或系统。
    • 示例:用户账户、商品库存、仓库、支付网关。
  4. 蓝色(描述对象 Description)

    • 定义:用于详细描述上述三种对象的属性和状态,提供更多上下文信息。
    • 示例:商品名称和价格、用户的收货地址、订单状态。

四色建模法的核心逻辑:从收入流与成本结构中寻找事件

四色建模法不仅仅是简单地将业务对象进行分类和编码,它背后有着深刻的核心逻辑,这些逻辑帮助团队从业务活动中识别出关键的领域事件。四色建模法主要通过以下三个关键逻辑来寻找领域事件,这些逻辑源自于企业运营与管理实践:

  1. 收入流中的义务

    • 核心逻辑:如果业务活动产生了现金收入,这通常表示企业承担了某种义务。企业需要“拿钱办事”,即在获得收入后,履行相应的服务或交付义务。这种情况下,需要记录并跟踪企业如何履行这些义务,并收集相关的证据。
    • 例子:在电商平台上,用户支付了100元购买商品。这一支付行为意味着平台承诺将商品交付给用户。平台需要记录订单凭证,确保商品按时发货,并在系统中跟踪订单的发货状态。
  2. 成本支出中的权利

    • 核心逻辑:如果业务活动涉及现金支出,这通常表示企业获得了某种权利。企业“花钱消灾”,即通过支付来获得对方的履约服务或产品。在这种情况下,企业需要检查对方是否按时履约,并确保企业的支出是合理且有效的。
    • 例子:平台需要支付物流公司运费,以确保商品能够按时送达用户手中。平台应当跟踪物流公司的配送进度,并确保商品按时送达,以验证支付的合理性。
  3. 目标 - 实际对比

    • 核心逻辑:对于那些没有直接现金往来的业务活动,可以通过设立目标或计划,并将实际执行的结果与之进行对比,来产生类似履约的约束。这种对比能够帮助企业评估业务活动的效果,并在必要时采取调整措施。
    • 例子:平台设定一个月内完成1000单的目标。通过跟踪实际订单完成数量,并将其与目标进行对比,平台可以评估销售团队的业绩,识别可能存在的运营问题,并作出相应的调整。

四色建模法的具体流程

四色建模法通过一系列结构化的步骤,帮助你从业务的基础逻辑出发,逐步构建出清晰、全面的领域模型。以下是具体的八个步骤:

步骤1:寻找关键现金往来

目标:识别业务中涉及的关键金钱流动,如收入和支出。

操作:确定业务活动中直接影响收入和成本的交易。

示例

  • 在电商平台中,用户购买商品时的支付行为是一个关键现金往来。

四色模型表示

  • 粉色:用户支付订单金额。
步骤2:构造凭证表示现金往来

目标:为每个关键现金流创建凭证,记录其发生。

操作:使用发票、收据、订单号等凭证来表示现金流动。

示例

  • 用户完成支付后,系统生成一张订单凭证,记录订单编号、支付金额和时间。

四色模型表示

  • 粉色:订单凭证记录支付时间和金额。
步骤3:回溯现金流的来源

目标:分析现金流动的起源,明确权限和责任。

操作:追溯现金流入或流出的根源,确定相关的角色和参与方。

示例

  • 用户支付前,需要在平台上选择商品、确认订单,这些操作是支付的前置条件。

四色模型表示

  • 绿色:用户选择商品、填写收货地址。
步骤4:列出凭证获取顺畅

目标:确保所有关键凭证都能顺利获取,并列出相关数据项。

操作:确认系统能够生成和存储所有必要的凭证,并列出关键数据项,如时间、金额、商品详情等。

示例

  • 系统记录订单的创建时间、支付金额、用户信息等。

四色模型表示

  • 粉色:订单创建时间、支付金额。
  • 蓝色:商品详情、用户信息。
步骤5:关联关键指标

目标:将现金流与业务的关键绩效指标(KPI)关联,利用这些数据验证和优化业务模型。

操作:确定哪些现金流数据能够反映业务的健康状况,如销售额、订单数量、客户满意度等。

示例

  • 平台的总销售额和订单数量是重要的KPI,通过跟踪这些指标可以评估业务表现。

四色模型表示

  • 蓝色:销售额、订单数量作为描述对象。
步骤6:细化模型

目标:在收集到相关凭证后,进一步细化模型,明确各参与方在流程中的角色和职责。

操作:识别和定义业务流程中所有关键参与方及其职责。

示例

  • 在下单流程中,参与方包括用户(买家)、平台(中介)、卖家(供货)、物流公司(配送)。

四色模型表示

  • 黄色:用户作为买家、平台作为中介、卖家作为供货方、物流公司作为配送方。
步骤7:确定参与方的角色

目标:明确每个参与方在业务流程中的具体角色和职责。

操作:为每个参与方指定其在业务中的具体角色,并描述其职责。

示例

  • 用户:负责选择商品和支付。
  • 平台:负责订单生成和支付确认。
  • 卖家:负责备货和发货。
  • 物流公司:负责配送商品。

四色模型表示

  • 黄色:详细定义每个角色的职责。
  • 绿色:具体参与方,如用户账户、卖家店铺。
步骤8:添加描述对象

目标:为模型中的每个对象添加详细的描述信息,补充其属性和状态。

操作:通过描述对象(蓝色)为角色、参与方和时标对象提供更多细节,确保模型的完整性和可读性。

示例

  • 订单的详细信息包括订单编号、商品列表、支付方式、配送地址等。
  • 用户的详细信息包括用户名、联系方式、收货地址等。

四色模型表示

  • 蓝色:订单详情、用户信息、商品描述等。

实例解析:电商平台下单流程的四色建模

为了更好地理解四色建模法的应用,以下通过一个具体的电商平台下单流程示例,逐步展示四色建模法的实际操作。

场景描述

假设我们正在设计一个电商平台的下单流程,目标是通过四色建模法来构建其领域模型。

Step 1:寻找关键现金往来

关键现金往来

  • 用户支付订单金额(例如100元)。

四色模型表示

  • 粉色:用户支付100元。
Step 2:构造凭证表示现金往来

凭证

  • 生成订单凭证,记录订单编号、支付金额和时间。

四色模型表示

  • 粉色:订单凭证(订单编号、支付金额、支付时间)。
Step 3:回溯现金流的来源

来源

  • 用户在平台上选择商品、确认订单、填写收货信息,这些操作是支付的前提。

四色模型表示

  • 绿色:用户选择商品、填写收货地址。
Step 4:列出凭证获取顺畅

关键数据项

  • 订单创建时间、支付金额、用户信息、商品详情。

四色模型表示

  • 粉色:订单创建时间、支付金额。
  • 蓝色:商品详情、用户信息。
Step 5:关联关键指标

关键绩效指标(KPI)

  • 总销售额、订单数量、客户满意度。

四色模型表示

  • 蓝色:销售额、订单数量作为描述对象。
Step 6:细化模型

参与方

  • 用户(买家)、平台(中介)、卖家(供货)、物流公司(配送)。

四色模型表示

  • 黄色:用户作为买家、平台作为中介、卖家作为供货方、物流公司作为配送方。
Step 7:确定参与方的角色

角色和职责

  • 用户(买家):选择商品、支付订单。
  • 平台(中介):生成订单、确认支付、协调卖家和物流。
  • 卖家(供货方):备货、发货。
  • 物流公司(配送方):配送商品到用户。

四色模型表示

  • 黄色:详细定义每个角色的职责。
  • 绿色:具体参与方如用户账户、卖家店铺。
Step 8:添加描述对象

描述信息

  • 订单:订单编号、商品列表、支付方式、配送地址。
  • 用户:用户名、联系方式、收货地址。
  • 商品:商品名称、价格、数量。

四色模型表示

  • 蓝色:订单详情、用户信息、商品描述。

完整的四色建模图示

为了更直观地理解四色建模法,以下是电商平台下单流程的简化四色模型图示:

  1. 粉色(时标对象)

    • 用户支付订单(支付时间、金额)。
    • 订单创建时间。
  2. 黄色(角色对象)

    • 用户(买家)。
    • 平台(中介)。
    • 卖家(供货方)。
    • 物流公司(配送方)。
  3. 绿色(参与方对象)

    • 用户账户。
    • 卖家店铺。
    • 物流系统。
  4. 蓝色(描述对象)

    • 订单详情(订单编号、商品列表、支付方式、配送地址)。
    • 用户信息(用户名、联系方式)。
    • 商品描述(商品名称、价格、数量)。
    • 销售额、订单数量(KPI)。

四色建模法的优势

  1. 结构化和系统化:四色建模法通过明确的对象原型和颜色编码,使业务逻辑的分解更加结构化,减少了随机性和混乱。
  2. 减少依赖:该方法基于业务的基础逻辑,而非主持人的个人经验,确保了模型的稳定性和一致性。
  3. 直观性:颜色编码使不同业务元素的作用和关系一目了然,便于团队成员理解和沟通。
  4. 全面性:四色建模法不仅关注事件,还涵盖了角色、参与方和描述信息,确保业务逻辑被全面覆盖。
  5. 可追溯性:通过时标对象和描述对象,业务活动的时间序列和详细信息得以清晰记录,便于后续分析和优化。

总结

四色建模法通过将业务逻辑分解为四种颜色编码的对象原型,从业务的收入流和成本结构出发,系统化地构建领域模型。这种方法不仅解决了事件风暴法中存在的随机性和过度依赖主持人的问题,还通过结构化、直观和全面的方式,确保了模型的准确性和一致性。

通过电商平台下单流程的具体示例,我们展示了四色建模法的实际应用过程,从识别关键现金流、构造凭证、回溯现金流来源,到关联关键指标、细化模型、确定角色和添加描述信息,逐步构建了一个完整的领域模型。这一过程不仅帮助我们深入理解业务逻辑,还为系统设计和业务优化提供了坚实的基础。

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值