Skip to content

Object Lifecycle (OLC)

LeonBein edited this page Mar 4, 2022 · 18 revisions

O1 - Use State Transition Diagrams to Model Object Lifecycles.

Description: The designer should use state transition diagrams to model object lifecycles (OLCs). Supported notation elements are: States with labels, transitions without labels, data class label. Designating start states is optional.

Example: Please have a look at the OLCs of the criminal justice use case.

References: [Hewelt and Weske, 2016]

O2 - Use the Object Lifecyle of the Case Class to Emphasize Milestones.

Description: If applicable, the designer should use state labels of the case class to indicate important steps/milestones during a case execution. (See D5 to get more information when to use states as milestones.)

Example: In the example use case of criminal justice the data class Defendant is defined as the case class because state transitions of related data object references indicate important steps and milestones during case execution. The process describes the the court session and all steps a defendant has to undertake according to the judgement. Important milestones are therefore described via the OLC of the Defendant class.

Example_O2

References: [Hewelt and Weske, 2016], [Haarmann, 2020]

O3 - Encode Relevant Changes of Data Objects in OLC States.

Description: Whenever the data of a data object changes in a way that is relevant to the process, this should be reflected in a state transition. The designer should model all necessary states for these transitions. (See D5 to get more information when to use states.)

Example: State transitions describe the progress of process execution. They also indicate alternatives as shown in the shown OLC below: The data object Sentence reduction being in state requested can be transitioned to state rejected or accepted. This is also encoded in the respective fragment shown on the left hand-side.

Example_O3

References: [Hewelt and Weske, 2016], [Haarmann, 2020]

O4 - Define Meaningful State Labels.

Description: The designer should use meaningful names for each state. State names should be unique within one OLC. Often, short terms in the past participle or non-active verbs are appropriate to use as state labels.

References: [Avila et al., 2020], [Corradini et al., 2018]

O5 - Affiliation of OLC to Data Class.

Description: The designer should distinctly identify which data class an OLC corresponds to.

Example: The example use case of criminal justice has 5 different OLCs as shown below. Each of them includes an identifier (the name of the respective data class).

Example_O5

Motivation: An OLC always belongs to a certain data class. This connection can be made clear, for example, by headings or annotations above the OLC. Since no concrete notation exists, the modeler can decide how to clarify the affiliation of the OLC to the data object in a consistent way.

References: [Haarmann, 2020]

References

[Avila et al., 2020]Avila, D. T., dos Santos, R. I., Mendling, J., & Thom, L. H. (2020). A systematic literature review of process modeling guidelines and their empirical support. Business Process Management Journal.
[Corradini et al., 2018]Corradini, F., Ferrari, A., Fornari, F., Gnesi, S., Polini, A., Re, B., & Spagnolo, G. O. (2018). A guidelines framework for understandable BPMN models. Data & Knowledge Engineering, 113, 129-154.
[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.