Artifact-centric Business Process Models in UML: Specification and Reasoning


Montserrat Estanyol
Data de defensa:
Departament de Llenguatges i Sistemes Informàtics, Universitat Politècnica de Catalunya.

Business processes are directly related to business objectives, and therefore it is important that these processes are carried out in the best way possible. Choosing to model them can help you achieve this, as models provide many benefits. For example, they facilitate communication between the parties involved in the process, provide a basis from which to improve it, and can help manage it. The processes can be modeled from different perspectives. Traditional process modeling has relied heavily on the perspective called “process-centric” (centered on processes) or “activity-centric” (centered on activities), which places the emphasis on the sequence of activities or tasks to be executed, ignoring largely the data needed to carry out these tasks. On the other hand, the “artifact-centric” or “data-centric” perspective is based on defining the data required by the tasks and the details of the tasks themselves, representing the changes they make to the data . The BALSA framework defines four dimensions that should be represented in any artifact-centric model: business artifacts, lifecycles, services, and associations. Using different types of models to represent these dimensions leads to obtaining several representations with different characteristics. This variety of features will make the resulting models more suitable for one purpose or another. Considering this, in the first part of this thesis we propose a framework, BAUML, to model business processes following an artifact-centric perspective. The framework is based on using a combination of UML and OCL models, and its objective is to obtain a final representation of the process that is both understandable and formal, to avoid ambiguities and errors. Once the process is defined, it is important to ensure quality. This will prevent the propagation of errors in the final implementation of the process. Although there are many different quality criteria, we will focus on the semantic correctness of the model, to answer questions such as “does it represent reality correctly?” or “Does it contain errors or contradictions?”. Consequently, the second part of this thesis focuses on finding a way to determine the semantic correctness of a BAUML model. We are interested in considering the model as a whole, including the meaning of the tasks (that is, the detail of what they do). To do this, we first translate the tasks into a recognized framework, DCDSs (Date-centric Dynamic Systems). Once obtained, model-checking techniques can be applied to determine if it meets certain properties. Unfortunately, the DCDSs have been defined at a theoretical level and there is no tool that implements them. For this reason, we have created a prototype tool, AuRUS-BAUML, which is capable of translating our BAUML models into logic and applying reasoning techniques to determine semantic correctness. For the reasoning part, the AuRUS-BAUML uses an existing tool, the SVTe. The integration between the AuRUS-BAUML and the SVTe is transparent for the user. Logically, the thesis also presents the logical translation carried out by the tool.