DSpace Collection:https://hdl.handle.net/20.500.12177/72023-10-20T15:21:21Z2023-10-20T15:21:21ZSPEM4MDE : Un métamodèle et un environnement pour la modélisation et la mise en oeuvre assistée de processus IDMDiaw, Sambahttps://hdl.handle.net/20.500.12177/1702021-02-16T03:00:12Z2011-10-21T00:00:00ZTitle: SPEM4MDE : Un métamodèle et un environnement pour la modélisation et la mise en oeuvre assistée de processus IDM
Authors: Diaw, Samba
Abstract: L’ingénierie dirigée par les modèles (IDM) connue sous le terme MDE (Model-Driven
Engineering) en anglais est une discipline récente du génie logiciel qui recommande l’utilisation
intensive des modèles et des transformations de modèles au cœur du processus de développement
logiciel. Dans cette nouvelle perspective, les modèles occupent une place de premier plan parmi les
artéfacts de développement et doivent en contrepartie être suffisamment précis et riches afin de
pouvoir être interprétés ou transformés par des outils. L’avènement de l’IDM a suscité beaucoup
d’intérêt de la part des organisations qui de fait commencent à transformer leur processus de
développement traditionnel en un processus de développement dirigé par les modèles appelé aussi
processus IDM, ce dernier étant vu comme un enchaînement de transformations de modèles, chacune
consommant un ou plusieurs modèles sources et produisant un ou plusieurs modèles cibles.
Au moment où les processus IDM commencent à émerger, nous notons l’absence d’un langage
dédié pour les modéliser et les mettre en œuvre. L’intérêt de la modélisation des processus en général
et des processus IDM en particulier est d’utiliser une terminologie unifiée et cohérente, afin de
permettre d’une part une communication plus efficace entre les développeurs et d’autre part un
meilleur suivi d’un projet de développement. La modélisation de processus permet aussi de gérer, de
faire évoluer et de réutiliser efficacement les modèles de processus. L’intérêt de la mise en œuvre des
processus est de permettre un meilleur guidage du développement, une vérification des contraintes
des activités/transformations et la gestion de la cohérence des artéfacts/modèles du développement.
Le standard SPEM 2.0 dédié à la modélisation des processus propose des concepts génériques
qui sont supposés être capables de décrire tout type de processus logiciel ou système, incluant les
processus IDM. Cependant, les concepts de SPEM ne capturent pas la nature exacte des processus
IDM. Les concepts de modèles, de métamodèles, de transformation de modèles et de leurs diverses
relations ne sont pas explicitement pris en compte. D’autre part, une autre insuffisance majeure de
SPEM réside dans le fait qu’il n’intègre pas les concepts relatifs à la mise en œuvre des processus. En
effet, la spécification de SPEM affirme clairement que cette préoccupation n’est pas dans le champ
d’intérêt de SPEM et propose d’exécuter les modèles de processus dans un formalisme externe basé
soit sur les diagrammes d’activités UML 2.0, soit sur les machines à états d’UML, soit sur la notation
BPMN (Business Process Modeling Notation).
L’objectif de cette thèse est triple : (1) proposer une extension de SPEM dans laquelle les
concepts centraux des processus IDM sont réifiés ; (2) proposer un langage dédié à la modélisation
comportementale des processus IDM ; (3) proposer une architecture conceptuelle d’un
environnement logiciel d’aide à la modélisation et à la mise en œuvre des processus IDM. L’intérêt de
la réification des concepts IDM est de permettre d’une part aux concepteurs de processus d’expliciter
les aspects spécifiques au développement IDM, d’autre part de mieux assurer la cohérence des
modèles produits par les transformations. Par exemple pour vérifier la relation de conformité entre
un modèle et son métamodèle, il est important de spécifier les modèles et les métamodèles qui
participent à une transformation.
Pour répondre aux deux premiers objectifs, nous avons défini un langage de modélisation et de
mise en œuvre des processus IDM spécifié formellement sous forme d’un métamodèle appelé
SPEM4MDE. Le métamodèle SPEM4MDE étend certains concepts de SPEM par des concepts
relatifs au développement IDM (transformation, modèle, métamodèle, outil IDM). La réutilisation de
SPEM 2.0 a pour principal intérêt de favoriser l’alignement de SPEM4MDE avec ce standard et de
permettre ainsi une meilleure diffusion des concepts de SPEM4MDE. Pour réduire la complexité de
SPEM4MDE, nous n’avons réutilisé que le paquetage Process Structure de SPEM 2.0 qui fournit les
concepts basiques pour décrire la partie structurelle d’un processus. Pour décrire le comportement
des processus IDM, SPEM4MDE réutilise le paquetage d’UML 2.2 Superstructure qui décrit les
machines à états d’UML. Une machine à états est composée d’états définissant l’ensemble des états
d’un élément d’un processus IDM et de transitions définissant les opérateurs de mise en œuvre
spécifiques à cet élément. SPEM4MDE réutilise aussi le métamodèle QVT afin de spécifier le
comportement d’une transformation, l’intérêt étant de tirer pleinement profit des outils
d’implémentation et d’exécution liés à ce standard.
Pour répondre au troisième objectif, nous avons élaboré une architecture conceptuelle d’un
environnement fondé sur une démarche en trois étapes.
La première étape a pour but de décrire le modèle structurel et le modèle comportemental
d’un processus IDM, conformément au métamodèle SPEM4MDE. Par la suite, ces deux modèles
sont validés sur la base des contraintes OCL spécifiées dans le métamodèle SPEM4MDE.
La deuxième étape a pour but de réutiliser et/ou d’adapter les modèles définis dans l’étape
précédente aux spécificités d’un projet de développement déterminé et d’assigner les ressources
nécessaires à la mise en œuvre (développeurs, outils, espaces de travail, …).
La troisième et dernière étape de cette démarche est la mise en œuvre du modèle de processus
adapté. Elle est réalisée par les développeurs du projet en utilisant les outils IDM mis à leur
disposition. Les développeurs sont assistés dans leurs tâches par un environnement de mise en œuvre
qui s’appuie sur les modèles comportementaux du processus. Cette étape produit les livrables du
projet (code, modèles, documentation, etc.).
Pour valider notre approche, un prototype a été développé sous l’environnement TOPCASED.
Ce prototype fournit d’une part un éditeur graphique pour la modélisation structurelle et
comportementale des processus IDM et d’autre part un environnement de mise en œuvre s’appuyant
sur les modèles comportementaux des processus. Nous avons également appliqué notre approche à
une étude de cas significatif: le processus UWE (UML-based Web Engineering), qui est un processus
IDM dédié au développement d’applications web.2011-10-21T00:00:00Z