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

Tesi

Estudiant:
Montserrat Estanyol
Director:
Data de defensa:
29/04/2016
Departament:
Departament de Llenguatges i Sistemes Informàtics, Universitat Politècnica de Catalunya.

Els processos de negoci estan directament relacionats amb els objectius de negoci, i per tant és important que aquests processos es duguin a terme de la millor manera possible. Optar per modelar-los pot ajudar a aconseguir-ho, ja que els models proporcionen nombrosos avantatges. Per exemple: faciliten la comunicació entre les parts involucrades en el procés, proporcionen una base a partir del qual millorar-lo, i poden ajudar a gestionar-lo.

Els processos es poden modelar des de diferents perspectives. El modelat tradicional de processos s’ha basat molt en la perspectiva anomenada “process-centric” (centrada en processos) o “activity-centric” (centrada en activitats), que posa l’èmfasi en la seqüència d’activitats o tasques que s’han d’executar, ignorant en gran mesura les dades necessàries per dur a terme aquestes tasques. Per altra banda, la perspectiva “artifact-centric” (centrada en artefactes) o “data-centric” es basa en definir les dades que necessiten les tasques i els detalls de les tasques en si, representant els canvis que aquestes fan a les dades.

El framework BALSA defineix quatre dimensions que haurien de representar-se en qualsevol model artifact-centric: els artefactes de negoci (business artifacts), els cicles de vida (lifecycles), els serveis (services) i les associacions (associations).Utilitzar diferents tipus de models per representar aquestes dimensions porta a obtenir diverses representacions amb característiques diferents. Aquesta varietat de característiques farà que els models resultants siguin més apropiats per un propòsit o per un altre.

Considerant això, en la primera part d’aquesta tesi proposem un framework, BAUML, per modelar processos de negoci seguint una perspectiva artifact-centric. El framework es basa en utilitzar una combinació de models UML i OCL, i el seu objectiu és obtenir una representació final del procés que sigui a la vegada comprensible i formal, per tal d’evitar ambigüitats i errors. Un cop definit el procés, és important assegurar-ne la qualitat. Això evitarà la propagació d’errors a la implementació final del procés. Malgrat que hi ha molts criteris de qualitat diferents, ens centrarem en la correctesa semàntica del model, per respondre a preguntes com ara “representa la realitat correctament?” o “conté errors o contradiccions?”.

En conseqüència, la segona part d’aquesta tesi se centra en buscar una manera per determinar la correctesa semàntica d’un model BAUML. Ens interessa considerar el model com un tot, incloent el significat de les tasques (és a dir, el detall del que fan). Per aconseguir-ho, primer traduïm les tasques a un framework reconegut, DCDSs (Data-centric Dynamic Systems). Un cop obtingut, s’hi poden aplicar tècniques de model-checking per determinar si compleix certes propietats. Malauradament, els DCDSs s’han definit a nivell teòric i no hi ha cap eina que els implementi. Per aquest motiu, hem creat un prototip d’eina, AuRUS-BAUML, que és capaç de traduir els nostres models BAUML a lògica i aplicar-hi tècniques de raonament per determinar-ne la correctesa semàntica. Per la part de raonament, l’AuRUS-BAUML fa servir una eina existent, l’SVTe. La integració entre l’AuRUS-BAUML i l’SVTe és transparent de cara a l’usuari. Lògicament, la tesi també presenta la traducció a lògica que porta a terme l’eina.