Author:Anders小明
(2008-1-12更新)
业务流程依据不同层次分为3个
0. 领域流程
领域流程即领域对象生命周期,是流程中的核心;
1. 工作流程
工作流是处理多人协同工作,三权分立的过程;该过程是建立在领域对象生命周期上;生命周期的不同状态在工作流中都有映射;工作流处理的是领域中Request对象的生命周期;
2. 页面流程
页面流是处理工作中一个工作请求的分步申请;该过程建立在工作流上,是其人工节点的UI代理;
这3个不同层次的流程,关注各自处理不同类型的领域对象;页面流在最外层关注于Request对象的数据收集,而工作流则负责Request对象的生命周期,在不同工作节点的流转;而处于核心的领域服务,则负责核心(长生命)领域对象的生命周期,输入Request对象,同时返回Response对象,以及产生Transition对象;对于同一业务对象的并发处理,应该通过业务来控制;
但并非所有系统流程都是如此,对于没有显著长生命周期领域对象的业务系统,由于没有明确的增量变更操作类型及其规则,业务操作是直接更新业务对象,也就没有Request以及Response对象,因此其领域流程和工作流程趋于一致,合并更有效率,而页面流程也是直接处理核心领域对象,但这样的系统可能需要支持领域对象的多版本能力。