Page 172 - 《软件学报》2020年第10期
P. 172
3148 Journal of Software 软件学报 Vol.31, No.10, October 2020
Abstract: There are usually inconsistencies in collaborative business processes established by the bottom-up modeling method, so the
correctness analysis is an important means to ensure its correct implementation. Most of the existing methods focus on correctness
detection, which makes the analysis process of correctness of collaborative business processes complicated and time consuming. The
correctness repairing method can avoid the duplicate detection and adjustment existing in the correctness detection method. However, this
method is less researched and cannot be effectively applied to the repair of collaborative business processes. To this end, a method of
repairing the correctness of collaborative business processes is proposed based on the complete route. First, the behaviors of partial
correct collaborative business processes are abstracted into complete simple routes under the consideration of active synchronization and
asynchronous interaction, and merged them into a core. Then, the coordination mapping is used to map the core to repaired business
processes, and the repaired collaborative business process is established by combining all the repaired business processes concurrently.
The repaired collaborative business process conforms to the actual characteristics of collaborative business processes, and contains all
complete traces in the pre-repair collaborative business process, and no hidden traces are also introduced, thereby avoiding validation.
Finally, experiments are used to compare the proposed method with the existing methods. The results show that compared with the
existing work, under the consideration of the actual characteristics of collaborative business processes, the proposed approach can more
effectively repair collaborative business processes.
Key words: collaborative business processes; correctness repairing; simple routes; core; coordination mapping
随着全球经济化的发展和企业信息化程度的不断提高,企业的经营模式发生了重大的变化,企业的业务活
[1]
动已从企业内单目标为导向的独立发展模式发展成为跨企业多目标合作的协同模式 .在现代商业环境下,没
有一个企业是孤立的 [2,3] .企业作为参与者参与到协作中,在协作过程中,它们彼此进行交互以完成特定业务功
能.近年来,随着 Internet 成为主流的计算平台,尤其是面向服务计算(service-oriented computing,简称 SOC)的快
[4]
[5]
速兴起,使得不同组织业务过程间的交互成为可能,如企业信息系统 、电子商务 等.为实现共同的商业目标,
每个组织的业务过程通常需要跨越组织边界,与其他组织的业务过程进行交互和协作以形成相对稳定的过程
[6]
视图.学术界和工业界称这种存在复杂交互关系的业务过程为协同业务过程 .
针对协同业务过程,国内外研究者提出多种建模方法.归纳起来,这些建模方法可分为两类:(1) 自顶向下建
模方法 [7,8] .该方法要求首先给出协同全局契约,然后定义映射规则并以此为基础从契约中生成每个组织的业务
[9]
过程;(2) 自底向上建模方法 .该方法允许组织独立地定义各自的业务过程,之后以此为基础直接构建具有协
同功效的协同业务过程.由于受限于映射规则集,利用自顶向下建模方法通常仅能建立具有有限结构形态业务
过程,灵活性和普适性不足 [7,8] .因此,本文关注自底向上建模方法.
然而,自底向上建模方法中的业务过程由不同组织开发,无法在设计阶段就预见其潜在的所有交互可能,因
此在实际协作中,参与协作的业务过程间可能存在不一致(如死锁等),无法保证协同业务过程正确地实施.因此,
对协同业务过程的正确性(正确性可根据实际需要定义,如合理性等,在此不作区分)进行分析是当前业务过程
管理(business process management,简称 BPM)领域内的研究热点.
针对协同业务过程正确性分析,国内外学者做了大量工作 [9,10] .这些研究工作主要围绕正确性检测方法开
展.该方法先构建形式化的协同业务过程并定义正确性约束(如无死锁、无活锁及未指定接收等),然后采用某种
形式的验证技术(如模型检测等)在协同业务过程中检测相容性是否满足.正确性检测方法通常具有检测过程自
动化,不需要人工干预,且在检测失败时能够给出诊断信息,便于业务设计人员发现并修正错误.但其不足是,若
协同业务过程中存在多处不正确,则需要经过多次检测,且在每次检测后都需要对协同业务过程重新调整.重复
地进行检测及调整使得协同业务过程正确性分析复杂且耗时.
一种替代方法是正确性修正方法.该方法关注早期设计阶段,根据正确性约束对业务过程内部结构进行修
改以自动构建满足正确性约束的业务过程 [11,12] .这方面的研究工作较少,且大多关注组织内单个业务过程,能够
用于协同业务过程正确性修正方法 [13−15] 也存在如下不足:(1) 修正后的协同业务过程是集中式的,与协同业务
过程的实际特征(如自治、分布及面向流程协作等) [16] 不符;(2) 这些方法基于过程挖掘技术 [17] 而提出,不能够保
证修正协同业务过程中含有修正前协同业务过程中的所有完整轨迹(即完整的简单路径对应活动执行序列),还
可能引入隐藏轨迹(即不属于修正前协同业务过程中的其他轨迹),这需要进行额外确认;(3) 协同业务过程实质
上是由多个业务过程构成的并发交互系统,复杂程度高 [16] .直接利用这些方法对其进行修正存在修正效率低下