基于Petri网分析技术的BPMN2.0过程模型的语义分析
2021-11-23王冶青
王冶青
摘 要:信息技术的发展推动组织商务模式的变革,业务协作日益频繁,为谋求组织利益的最大化,对部分资源与流程的共享提出更高的要求。如何满足交互需求的新的商业过程,是组织关注的热点问题。业务流程建模标注(BPMN)是业务流程管理领域的一种标准符号。在发布的BPMN2.0中,对象管理组织首次提出编排的概念。但是BPMN2.0编排中,具有多样性的元素组合特点,增加了语义分析的难度,可能出现不同结构与相同语义对应的情况,有必要对BPMN2.0进行形式化定义。
关键词:Petri网分析技术 BPMN2.0 语义分析 交互需求 业务流程建模标注
中图分类号:TP301.1 文献标识码:A 文章编号:1674-098X(2021)07(a)-0066-03
Semantic Analysis of BPMN 2.0 Process Model Based on Petri Net Analysis Technology
WANG Yeqing
(China Aviation Development Guizhou Liyang Aviation Power Co., Ltd., Guiyang, Guizhou Province,550014 China)
Abstract: The development of information technology promotes the change of organizational business model, and business cooperation is becoming more and more frequent. In order to maximize the interests of the organization, it puts forward higher requirements for the sharing of some resources and processes. How to meet the new business process of interaction needs is a hot issue for organizations. Business process modeling annotation (BPMN) is a standard symbol in the field of business process management. In BPMN 2.0, the concept of orchestration was first proposed by the object management organization. However, BPMN 2.0 choreography has the characteristics of diverse element combinations, which increases the difficulty of semantic analysis. Different structures may correspond to the same semantics. It is necessary to formally define BPMN 2.0.
Key Words: Petri Net Analysis technology; BPMN2.0; Semantic analysis; Interaction requirements; Business process modeling annotation
BPMN2.0編排有面向图流程定义语言的特征,语义层面的错误,可能出现永远不会被执行的任务,会出现不一致的问题[1]。BPMN2.0编排可能违反相邻编排活动约束规则,因为其不具有自我检测的能力[2]。BPMN2.0编排可能出现结构错误,比如缺少结束事件、缺少开始事件等,因为其元素组合多样[3]。BPMN2.0过程模型中,混用建模元素,会导致控制流方面的语义错误[4]。BPMN2.0有3种基本的端到端的模型,包括协作、编排、编制,可以使用编排、协作,对业务过程的交互进行建模,使用过程对内部业务过程进行建模。由控制节点、活动节点组成业务过程模型[5]。事件或任务描述使用活动节点。活动间的控制流描述使用控制节点。但使用BPMN2.0过程模型容易出现语义错误[6]。本文研究使用Petri网,对BPMN2.0过程的语义进行准确定义,使用Petri网分析技术,进行语义分析。
1 BPMN2.0过程到工作流网的映射
1.1 基本块
本文研究采用Petri网技术,定义业务过程语义,进行BPMN2.0过程到工作流网的映射,基本块是工作流网片段,有出口、入口。假设工作流网WF=(P,T,F),基本块为并发汇聚块、并发分叉块、选择合并块、选择决策块、顺序块,b=(Ax,Ae,Fb,Tb,Pb)。弧集为Fb,变迁集为Tb,库所集为Pb,并且Fb?F、Tb?T、Pb?P。基本块的出口为Ax?Pb,入口为Ae。Ae={p1},Ax={p2}。Fb={(p1,t1),(t1,p2)}。Tb={t1}。Pb={p1,p2}。决策块(b),Ax={p2,p3},Ae={p1}。Fb={(p1,t1),(p1,t2),(t1,p2),(t2,p3)}。Tb={t1,t2}。Pb={p1,p2,p3}。合并块(c),Ax={p3},Ae={p1,p2}。Fb={(p1,t1),(p2,t2),(t1,p3),(t2,p3)}。Tb={t1,t2}。Pb={p1,p2,p3}。并发分叉块(d),Ax={p2,p3},Ae={p1}。Fb={(p1,t1),(t1,p2),(t2,p3)}。Tb={t1}。Pb={p1,p2,p3}。并发汇聚块(e),Ax={p3},Ae={p1,p2}。Fb={(p1,t1),(p2,t1),(t1,p3)}。Tb={t1}。Pb={p1,p2,p3}。
1.2 事件
工作流网中,顺序块映射事件。如图1所示,映射规则中间事件、结束事件、开始事件。映射过程对于中间事件、结束事件、开始事件的类型并不区分。连接库所的位置、数量,体现映射规则的区别。连接基本块的为连接库所,由虚线圆圈表示。结束事件映射在变迁的左边,有一个连接库所。在变迁的左边和右边,两个中间事件映射的连接库所。中间事件映射的连接库所,有一个开始事件映射的连接库所。
1.3 活动和子过程
工作流网片段映射子过程。子过程映射活动。中间事件的映射规则与活动相同。子过程映射为工作流网网片段,表现为图1(b)所示,有单一结束事件及单一开始事件。在此工作流网网片段中,子过程中的任务t2使用变迁t2。任务t1使用变迁t1。子过程的结束表示为变迁te。子过程的开始表示为变迁ts。父过程和子过程间必须保持流一致性,子过程可以有多个结束事件,以及多个开始事件。
1.4 网关
并发分叉网关、排他数据决策网关、并发汇聚网关应用映射规则、排他数据合并网、排他事件决策网关、排他事件合并网关,分别转换为工作流网的并发分叉块、选择决策块、并发汇聚块、选择合并块,以及并发分叉块。排他数据合并网与排他事件合并网关,存在一样的映射基本块。其中在映射过程,不区分排他数据网关、排他事件网关。排他数据决策网关、排他事件决策网关映射基本块一样。
1.5 初始状态
用开始事件表示模型的初始状态,托肯表示工作流网的初始状态。添加一个托肯,在开始事件映射产生的库所中,表示工作流网的初始状态。模型允许使用子过程。子过程也有开始事件。对于子过程的开始事件、父过程的开始事件,需要进行区分[7]。在初始状态配置中,添加1个托肯对应每个开始事件的库所。但在子过程中不添加托肯。
2 BPMN2.0过程模型的分析
从控制流的角度,本文研究应用合理性定义,合理性定义正确性分析BPMN2.0过程模型。采用Petri网的开源分析工具,合理性分析映射产生的工作流网。业务过程要满足合理性的要求。BPMN2.0过程模型的问题主要包括三类:第一,存在死锁,如图1所示,无法执行活动tau3,违反了合理性;第二,存在死活动,如图2,死活动包括t2和t3,违反了合理性;第三,路由活动不匹配,如图3,排他数据合并网关 g2与并发分叉网关 g1不匹配,违反了合理性。
3 结语
总之,由于BPMN2.0过程模型语义和分析技术缺乏,其正确性无法得到保证。可以使用Petri网对BPMN2.0过程模型的语义进行准确定义。从过程到工作流网构建映射,利用Petri网分析技术,对模型的合理性进行分析,从而识别存在的语义错误。
参考文献
[1] 王声威,张华,鄢威,等.基于BPMN2.0的数控机床主传动系统动态能耗建模[J].现代制造工程,2019(4):96-104.
[2] 王琳,开祥宝,杨霓霏,等.基于着色Petri网的下一代列控系统虚拟闭塞技术仿真分析研究[J].铁路计算机应用,2018,27(9):63-70.
[3] 赵芮凯,张建辉,王学瑞,等.基于Petri网和TRIZ的复杂技术系统多冲突问题求解[J].机械设计,2020,37(6):29-37.
[4] 方贤文,赵芳,方欢,等.基于Petri网BehaviorInclusion的业务流程变化域融合分析[J].计算机学报,2018,41(3):695-708.
[5] 胡列翔,王蕾,董明枫,等.基于改进Petri网的区域综合能源系统能耗建模及优化运行分析[J].电力自动化设备,2020,40(11):69-76.
[6] 馬宏飞,张雷,廖文科,等.基于Petri网络的安检流程优化的研究[J].科技创新导报,2017(11):165-167.
[7] 赵文卓.基于Petri网的BPMN2.0编排的语义定义和分析[D].昆明:云南大学,2017.