Currently, software process artefacts are under-considered by the software process modelling and execution community. They are minimally managed. Moreover, the application of the principles of the model driven engineering on software processes have deeply changed the nature and increased the complexity of software artefacts : they become models (model-products hereafter). Taking into account such a complexity is a necessity with a view to optimize model-products management policies.
This thesis has focused on the issue of the specification of the relationships between model-products by analysing the importance of the use of those relationships in model-products evolution management during process execution. We therefore have illustrated that using the respective specifications of relationships during process execution optimizes the management of model-products evolution in term of their consistency, their synchronization, and a flexibility in their granularity. Our solution fits in two major points that respectively relate to process modelling and enactment.
According to process modelling, we have proposed a meta-model that captures the concepts to use to specify the model-products and the relationships between them. The meta-model takes also into account the details on these relationships as they are useful for an enhancement of used model-products management policies during the execution of the modelled processes. Our approach currently supports the nest and the overlap relationships. According to the process execution point of view, in order to structure the logical entities through which are managed the model-products of a process, we have proposed another meta-model. Such a meta-model therefore specifies process objects that represent model-products and their relationships during process execution. This meta-model also supports the nest and the overlap relationships, in compliance with the first one.
The proposition also comprises transformation rules used to map concepts of the two meta-models and therefore to give the possibility of an automatic use of the modelling concepts through the enactment ones.
The contributions of the approach are related to model-products management during process enactment. They essentially consist of a systematic synchronization and relational consistency between model-products, their aided creation, a flexibility in the granularity of their use, and their semantic integrity.
We finally have prototyped a process modelling and enactment environment that implements our approach.
Software Process, Process Products, Process Modeling, Process Execution, Nest, Overlap
Hereunder, I have shared some of the thesis resources. Click to view the manuscript (PDF) or the slides of the defense (PPTX).
Actuellement, la communauté des procédés logiciels ne porte que peu d'attention aux artefacts de ces procédés. Leur gestion est minimale. Or l'introduction des principes de l'ingénierie des modèles dans les procédés logiciels modifie en profondeur la nature de ces artefacts et augmente leur complexité: ils deviennent des modèles (que nous appelons produits-modèles). La prise en compte de cette complexité est alors impérative en vue d'optimiser la gestion de ces produits-modèles.
Dans cette thèse, nous posons le problème de la modélisation des relations entre produits-modèles en analysant l'importance de ces relations dans la gestion de l'évolution des produits-modèles lors de l'exécution du procédé qui les utilise et/ou les produit. Ainsi nous illustrons qu’exploiter les modèles de relations à l’exécution du procédé optimise la gestion des produits-modèles en matière de cohérence, de synchronisation ou encore de flexibilité dans la granularité des produits-modèles. Notre contribution est composée de deux éléments majeurs qui sont relatifs à la modélisation puis à l'exécution de procédés. Du point de vue de la modélisation des procédés, nous avons proposé un méta-modèle permettant de structurer les éléments relatifs à la spécification des produits-modèles. Ce méta-modèle contient les concepts nécessaires à la définition des relations entre ces éléments et d'associer à ces relations les caractéristiques nécessaires à une meilleure gestion des produits-modèles à l'exécution des procédés modélisés. Notre approche supporte les relations d'inclusion (Nest) et de partage d'éléments (Overlap) entre deux ou plusieurs produits-modèles d'un procédé en exécution.
Du point de vue de l'exécution des procédés, dans le but de structurer les entités logiques à travers lesquelles sont gérés les produits-modèles d'un procédé modélisés avec les concepts du précédent méta-modèle, nous avons proposé un autre méta-modèle. Ce dernier contient les concepts nécessaires à la représentation des objets de procédé correspondants aux produits-modèles ainsi qu'aux relations, en conformité avec le premier méta-modèle.
Dans le but d'assurer une correspondance entre les concepts des deux méta-modèles ainsi que de permettre une exploitation automatique des concepts de modélisation à travers ceux d'exécution, la proposition comprend également des règles de transformation entre ces différents concepts.
Les apports de notre approche sont relatifs à la gestion des produits-modèles de procédés en exécution. Il s'agit d'une cohérence relationnelle systématique, d'une synchronisation également systématique, d'une construction assistée, d'une flexibilité du point de vue de la granularité, et d'une intégrité ou cohérence sémantique de ces produits-modèles.
Nous avons également conçu et réalisé un prototype qui simule un environnement de modélisation et d'exécution de procédés selon notre approche.
Procédés Logiciels, Produits de Procédés, Modélisation de Procédés, Exécution de Procédés, Nest, Overlap.
Ci-dessous, j'ai partagé quelques unes des ressources de la thèse. Cliquer pour visualiser le manuscrit (PDF) ou les diapositives de la soutenance (PPTX).