领域模型与工作流之间的关系

当涉及审批流程的业务需求按照功能点进行描述时,往往每个用例(功能点)都是按业务岗位进行描述,此时单个用例因涵盖了流程的信息而显得异常复杂,用例与用例之间又因包含相似的信息而显得重复臃肿。
如果我们选择了以领域建模进行设计,那么这些工作流的需求属不属于领域建模的范畴内?应该如何处理它们之间的关系呢?

在《领域驱动设计》(DDD)一书中在不同地方均有提及,类似的规则引擎也是可以相应看待。
首先章节5.6中提到,主流的建模范式是面向对象范式(的确,一说到领域脑子里总会浮出各式各样的对象图,采用面向对象技术的优点也不用再说了),但是领域模型不一定是对象模型,业务规则引擎或工作流引擎属于非对象组件,混合使用不同的范式使得开发人员能够用最适当的风格对特殊概念进行建模,但是使用不同的范式后,要想得到一个内聚的模型就比较难了。
那么可以分离出两个部分,一个是业务逻辑部分,一个是工作流部分,《DDD》中提到,将各个部分紧密结合在一起的最有效工具就是健壮的ubiquitous language,还有4条经验规则。
在分层结构(用户界面层、应用层、领域层、基础设施层)中,这两部分应该都属于领域层,他们之间的很少直接联系,通过应用层来调用,使他们互相协作。

而且,流程的东西就是可以快速变化的,比如多一个审批岗,少一个审批岗。
那么我们在分析需求时,可以先将工作流的干扰信息剥离,找到我们应该更关心的core domain。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值