模型设计是中台建设过程中非常重要的一个环节, 日趋复杂的业务场景给建模的有效性以及模型作为业务资产如何进一步发挥价值带来了新的挑战,BizWorks建模平台正是在这一背景下应运而生。
BizWorks建模平台是BizWorks基于领域驱动设计方法论的模型设计平台,提供了对业务域、领域模型、数据模型等可视化建模能力,实现了建模过程的可视化、在线化; 同时模型作为业务资产的重要载体,具备体系化联动和持续迭代演进的能力。
一、建模平台希望解决什么问题
领域模型设计和沉淀在企业数字化转型的大趋势下愈发重要,但在实际落地过程中往往遇到如下问题:
- 领域模型容易停留在设计阶段,在完成模型设计后如何持续跟进落地情况,实现是否和设计保持一致,目前还缺少有效的工具和方法, 多轮迭代后代码实现容易和最初的模型设计脱节, 当企业的软件供应商更换时,这一问题往往更为明显。
- 领域模型、业务流程是企业的重要业务资产, 但如何有效的管理并发挥效能是值得思考的话题,例如在一个庞大的模型和流程体系中是否能快速定位资产、相互之间是否能形成体系化联动、模型元素变更能否全局自动刷新。
- 模型和流程作为业务资产,本身也需要具备持续迭代和演进的能力,由此又衍生出如何支持模型多版本管理、模型可视化比对等重要的配套能力诉求。
- 此外, 当领域模型面对的业务场景愈加复杂, 是否能提供一套全面的模型检测能力对建模错误的快速定位和排查效率都非常重要,尽可能在设计阶段及时消除潜在问题。
二、建模平台的解法
1. 建模过程的可视化、在线化
建模平台基于领域驱动设计方法论, 提供了如下功能:
技术建模:包括业务域定义、领域模型和数据模型定义以及应用服务定义等:
- 领域模型设计:包括领域对象属性、关系配置,以及领域服务的设计
- 数据模型设计:包括数据模型属性设置、关系配置,支持数据模型导入导出,并可依据模型设置快捷生成数据库脚本
- 应用服务设计:设计和管理业务域提供的应用服务及其下属的应用服务方法
商业能力建模:包括商业能力流程设计器、商业能力服务方法定义、结构对象定义等,用于完整描述商业能力定义
技术建模
- 业务域 - 可根据业务领域进行划分进行模型管理,业务域具备多版本演进能力
- 领域模型设计
- 数据模型设计
- 应用服务设计
商业能力
商业能力根据可复用的业务流程&能力进行设计, 支持多版本演进。
- 商业能力流程设计
更多信息请参考BizWorks建模平台在线帮助
2. 模型和代码的双向联动
建模平台提供了平台模型和代码的双向联动机制, 其主要原理如下所示:
双向联动过程中需要解决的一个重要问题是配套能力的支持以提升联动效率, BizWorks Toolkit(IDE 插件)旨在解决这一问题。BizWorks Toolkit IDE 插件主要提供了如下能力:
- 平台模型实时同步
- 批量标记模型
- 代码侧模型批量扫描上报
- 模型&代码实时校验
- 代码增量生成
- 代码模型一致性规约扫描
- 错误修复辅助(快速定位错误代码、QuickFix)
一致性实时检测&辅助修复
一致性规约批量扫描&辅助修复
模型快速(批量)标记
模型批量扫描上报
3. 模型多版本迭代演进
在BizWorks中版本管理是一个非常重要的机制,用来确保模型能持续迭代和演进。
- 业务域的多版本管理(已发布版本的模型为只读状态)
- 在新建版本时也能通过选择来源版本快速复用原有模型
此外模型的多版本演进还需具备和代码保持一致的能力, BizWorks建模平台提供的多版本联动机制原理如下:
4.模型可视化比对
在模型和代码双向联动以及多版本迭代过程中,一种便捷易用的模型差异比对能更好地帮助用户快速理解差异点,并作出对应的决策,对整个链路的顺畅性非常关键。
BizWorks建模平台对模型结构化提炼,形成了一套可扩展、非常易用的可视化比对能力。相比传统基于源码内容的方式, 建模平台的可视化模型比对的易用性得到了很大提升。
5. 模型错误检测能力
建模平台以模型驱动的方式定义最佳实践并驱动应用开发流程,模型元数据作为业务资产的重要载体,如何在众多模型之间形成体系化联动,在流程各个环节做到实时变更跟踪,尽早发现并纠正错误,对开发流程的顺畅非常重要。
基于此BizWorks建模平台构建了一套较完整的模型分析检索体系, 即一个基于模型依赖关系和建模语义的实时分析系统,其应用场景包括模型引用关系检查,相关性搜索,业务设计检查,和建模静态语义分析等。该体系可以有效帮助我们理解模型元数据之间的关系,提供体系化的建模分析和检索,同时能在模型设计阶段实时发现错误、辅助修复, 确保在进入后续开发阶段时模型设计的准确性。
总结
本文介绍了BizWorks建模平台的模型设计可视化、在线化, 如何做到模型和代码的双向联动、模型设计如何持续迭代演进,以及一系列背后重要的支撑机制:
- 模型多版本多分支机制(支持双向)
- 基于IDE插件的模型代码双向提效机制
- 模型可视化比对能力
- 模型实时检测体系等
BizWorks建模平台也正在快速演进以更好更高效地帮助用户应对数字化转型过程中复杂多变的挑战。