分层声明式建模与细化及子流程相关技术探索
立即解锁
发布时间: 2025-08-20 01:49:51 阅读量: 1 订阅数: 5 


业务流程管理:第12届国际会议论文集
### 分层声明式建模与细化及子流程相关技术探索
#### 1. Hi - DCR 图原型工具实现
为了进行实验,开发了一个用于处理 Hi - DCR 图的原型工具。该工具具备以下特点:
- **功能特点**:
- 拥有一个模拟引擎,能够执行转换操作,还能使用无约束组合(定义 4.8)和细化(定义 4.9)进行动态重新配置。
- 对于有限状态图,工具可以执行基本的模型检查任务,例如查找导致死锁、终止、接受的路径,或者判断某个事件是否被启用。
- **输入方式**:在其他部分以图形方式展示 DCR 图,而该工具采用文本表示作为输入。例如,对于图 6,其等效的文本表示如下:
```
"Other review"
1
"Lawyer review"
2
-->* "Review report"
3
-->* ("Accept" "Reject")
4
-->% !"Decision"
5
"Decision" -->* "Decision"
6
("Accept" "Reject") -->% "Decision"
7
("Accept" "Reject")
8
*--> "Update report"
9
10
/("Other review" "Lawyer review"
11
"Review report"
12
"Accept" "Reject" "Decision")
13
```
- **事件类型说明**:默认情况下,所有事件都是接口事件;本地事件通过在其前面加上斜杠‘/’来指定(第 11 - 13 行)。事件还可以前缀‘+’、‘%’和‘!’(第 5 行),分别表示它们最初是包含、排除或待处理的。为了方便,该语言允许事件和关系的链式组合(第 2 - 5 行)以及关联多个事物(第 7 行)。
- **图形生成**:工具使用 Graphviz 自动生成图表,本文中的所有图表都是这样生成的。
- **实现语言与平台**:该工具用 F# 实现,可在主要平台上运行,其可执行文件和源代码可在 [4] 找到。
#### 2. 声明式流程挖掘相关技术
##### 2.1 流程发现概述
流程发现是业务流程管理的重要初始步骤,旨在得到被调查流程的现状模型。由于这一步既困难又耗时,因此提出了各种技术来从事件日志中自动发现流程模型。这些日志数据通常由支持部分或整个流程的信息系统生成,结果通常以 Petri 网或类似的流程图形式呈现,这种自动发现被称为流程挖掘。
虽然流程挖掘已被证明对结构化和标准化流程是一种强大的技术,但对于高可变性流程的有效挖掘仍存在持续的争论。一种解决方法是生成声明式流程模型,它展示行为的约束而不是可用的执行序列,结果模型通常用 Declare 等语言表示。在很多情况下,声明式模型能以紧凑的方式表示复杂、非结构化的行为,避免了类似意大利面条式的 Petri 网那样的复杂性。然而,像“如果你做 a,最终你将做 b 或 c”这样的简单分支语句,在 Declare 模型中难以挖掘。
##### 2.2 Declare 语言基础
- **语言定义**:Declare 是一种常用的声明式语言,由 Pesic 和 van der Aalst 引入。它不明确指定事件的顺序,而是由一组应用于活动的约束组成。这些约束基于模板,模板定义了参数化的属性类。模板有图形表示,其语义可以用形式逻辑(主要是有限迹上的线性时态逻辑 LTLf)形式化。
- **重要模板说明**:
| 模板 | 形式化表示 | 图形符号 | 自然语言描述 |
| --- | --- | --- | --- |
| RespondedExis
0
0
复制全文
相关推荐








