-
Notifications
You must be signed in to change notification settings - Fork 5
Goal State
Description:
The designer should model the goal state as disjunctive normal form of data objects in object lifecycle states. The goal state indicates when a case instance may be terminated.
Data objects in lifecycle states can be denoted as "(Classname[StateA|StateB|...])" with the semantic of "all instances of class 'Classname' are in state 'StateA' or state 'StateB' or ...". This notation is explicitely supported, as "(Classname[StateA]) ∨ (Classname[StateB]) ∨ ..." has the semantic of "All instances of class 'Classname' are in state 'StateA' or all instances of class 'Classname' are in state 'StateB' ...".
Example: Consider following figure showing the goal state of the example use case of criminal justice. A case can be successfully closed if the data object Defendant is in state [free]. It can also be closed if the data object Defendant is in state [released] and the Sentence is [served].

References:
[Haarmann, 2020], [Hewelt and Weske, 2016]
Note: In the literature, goal states are also referred to as goal specifications or termination conditions.
Description: For the Goal State, it is recommended that all important data object states are specified in order to emphasize contextual interdependencies. This means that the designer should also include those data object states that are implicitly given by other data object states.
Example: In the goal state of the example use case of criminal justice shown at the bottom of the figure below both data objects Defendant in state [released] and Sentence in state [served] are included. However, the state transition of Defendant into state [released] can only take place if and only if the Sentence is already [served] (see fragment). Therefore, it would also be possible to leave out the sentence served requirement. Nevertheless, including it to the goal state adds value in terms of understandability of the case model. Having both data objects in the goal state requirement clarifies the objectives of the process without looking at the fragments in detail.

[Haarmann, 2020] Haarmann, S. (2020). Fragment-Based Case Management Models: Metamodel, Consistency, and Correctness. Central-European Workshop on Services and their Composition (ZEUS 2020), 1, 1.
[Hewelt and Weske, 2016] Hewelt, M., & Weske, M. (2016, September). A hybrid approach for flexible case modeling and execution. In International Conference on Business Process Management (pp. 38-54). Springer, Cham.