In this section, we define the class of process models that our proposal relies on, specifically semantically annotated process models. We also define the notions of normative and semantic execution trace that we shall leverage in the heuristic evaluation required by game tree search (these latter notions were first defined in [57], and our exposition below summarizes those results). The definition of a semantically annotated process model refers to effect scenarios, which provide answers to the following question posed at design time: given a process design and a designated point in that process design, what postconditions/effects would hold if the process were to execute up to
that point?. We assume a setting where tasks are drawn from a capability library (that describes all of the tasks/capabilities that the enterprise is able to execute).
We also assume that all tasks in the capability library are annotated with post-conditions that describe the context-independent effects of executing those tasks. To answer the question posed above, we need to accumulate these context-independent post-conditions to simulate the effects of process execution. Unlike a number of the process annotation approaches referred to in the introduction that accumulate task post-conditions by using the AI planning device of add-lists and delete-lists of effects, we use the state update operator approach from [135, 64] (recall that a state update operator takes a state description and the effects of an action to generate one or more descriptions of the state that would accrue from executing this action in the input state). In our setting, the answer to the question posed above is non-deterministic in general, and is provided as a set of (mutually exclusive) effect scenarios. There are two reasons why we need these answers to be non-deterministic. First, in any process with XOR-branching, one might arrive at a given task via multiple paths, and the accumulated effects depend on the path taken. Since this analysis is done at design time, the specific path taken can only be determined at run-time (thus leading to non-determinism in the accumulated effects). Second, state update operators typically generate non-deterministic outcomes since the inconsistencies that commonly appear in state update can be resolved in multiple different ways. When the execution of a process leads to a state that is (possibly partially) characterized by an effect scenario, the execution of the next task in the model, or the occurrence of the next event, can lead to a very specific set of effect scenarios, determined by the state update operator being used. In effect, the process model determines a transition system, which determines how the partial state description contained in an effect scenario evolves as a consequence of the execution/occurrence of the next task (event) specified
in the model. We assign each effect scenario appearing in a semantically annotated process model a unique ID (thus if the same partial description applies to a process at different points in its design, it would be assigned a distinct ID at each distinct point). We can thus refer to the predecessors (the effect scenarios that can lead to the current scenario via a single state update determined by the next task/event) and successors (the scenarios that can be obtained from the current scenario via a single state update determined by the next task/event) of each effect scenario with respect to the transition system implicitly defined by the process design.
Given these preliminaries, we define a semantically annotated process model P as a process model (such as a BPMN model) or a process graph (in the usual sense that the term is used in the literature - a formal definition is ommitted to save space) in which each task or event is associated with a set of effect scenarios. Each effect scenario es is a 4-tuple hID, S, P re, Succi, where S is a set of sentences in the background language, ID is a unique ID for each effect scenario, P re is a set of IDs of effect scenarios that can be valid predecessors in P of the current effect scenario, while Succ is a set of IDs of effect scenarios that can be valid successors in P of the current effect scenario.
A semantically annotated process model is associated with a set of normative traces, each providing a semantic account of one possible way in which the process
might be executed. Formally, a normative trace nt is a sequence hτ1, es1, τ2, . . . esn−1, τn, esni, where
• Each of τ1, . . . , τn is either an event or an activity in the process.
• es1 = hID1, S1, ∅, Succ1i is the initial effect scenario, normally associated with the start event of the process;
• esn = hIDn, Sn, P ren, ∅i is the final effect scenario, normally associated with the end event of the process;
• esi. . . , esn are effect scenarios, and for each esi = hIDi, Si, P rei, Succii, i ∈ [2..n], it is always the case that IDi−1∈ P rei and IDi ∈ Succi−1;
We shall refer to the sequence hτ1, τ2, . . . , τni as the identity of the trace nt. To simplify exposition, we will on occasion use es to refer to only the S in the 4-tuple denoting an effect scenario.
A semantic execution trace of a process P is a sequence
hτ1, o1, τ2, o2, . . . , τm, omi where each τi is either a task or an event, and each oi is a set of sentences in the background language that we shall refer to as an observation that describes (possibly incompletely) the state of the process context after each task or event. We shall refer to the sequence hτ1, τ2, . . . , τmi as the identity of the execution trace. Note that we do not require each τi to belong to the process design P to allow the possibility of actual executions being erroneous, or to represent on-the-fly re-designs.