微服务架构中的业务需求分解与领域驱动设计
1. 业务需求分解策略
1.1 按业务能力分解
业务能力体现了企业组织所能执行的业务功能,它源于业务架构实践。按业务能力分解遵循康威法则,即“任何设计系统(广义定义)的组织,其产出的设计结构将是该组织沟通结构的副本”。
这种分解策略的优势在于能确保开发团队与组织业务单元之间的紧密结合。业务能力通常较为稳定,因为它们定义了组织的核心业务。要基于业务能力分解需求,需全面了解组织架构和整体业务。识别出业务能力后,就能据此定义服务。以在线拍卖系统(OAS)为例,其系统能力包括创建拍卖、提交投标和进行支付。
以下是按业务能力分解业务需求的示例表格:
| 业务能力 | 微服务 |
| — | — |
| 拍卖管理 | 拍卖服务 |
| 投标管理 | 投标服务 |
| 支付管理 | 支付服务 |
1.2 按子域分解
按子域分解通常需要清晰理解业务领域,业务领域可根据需求规模进行评估。分解时,无需了解组织的整体业务,依据从业务用户处获取的需求即可定义系统的领域。若子域与当前组织结构未明确映射,可能影响对组织结构的接受或改变,此时可依据逆康威策略法则,即“逆康威策略建议发展团队和组织结构以促进期望的架构,理想情况下技术架构应与业务架构同构”。
领域驱动设计(DDD)是按子域分解业务需求时常用的模式。每个应用都有数据处理量、业务逻辑复杂度、技术复杂度和性能等属性,DDD 提供了基于子域进行应用分解的实践和原则。
以下是按子域分解业务需求的示例表格:
| 子域 | 微服务 |
| —
超级会员免费看
订阅专栏 解锁全文
170万+

被折叠的 条评论
为什么被折叠?



