//img.uscri.be/pth/342250f8f7166a37d31d8199e5340f1ea9d4c6bc
Cet ouvrage fait partie de la bibliothèque YouScribe
Obtenez un accès à la bibliothèque pour le lire en ligne
En savoir plus

Contribution à la prise en compte des plates-formes logicielles d'exécution dans une ingénierie générative dirigée par les modèles, Contribution to the software execution platform integration in a generative model driven engineering

De
212 pages
Sous la direction de François Terrier
Thèse soutenue le 21 novembre 2008: Evry-Val d'Essonne
Face à la complexité des applications logicielles multitâches, une approche prometteuse est l'automatisation des développements. En pratique, cela se concrétise par des générateurs capables de produire les implantations propres aux plates-formes logicielles d’exécution multitâche. Ces générateurs sont figés autour d'heuristiques d'implantations propres à chaque plate-forme visée. En vue d'obtenir des solutions plus flexibles, cette étude a pour objectif d'externaliser les formalismes propres aux plates-formes d'exécution dans des modèles explicites. Ces modèles sont alors utilisés en entrée des ingénieries ce qui permet de capitaliser et de réutiliser les générateurs. Pour y parvenir, cette étude définit un motif générique pour la modélisation des plates-formes logicielles d'exécution, une extension au langage UML pour la modélisation des plates-formes multitâches et une infrastructure de transformation intégrant ces modèles de plates-formes.
-Transformation de modèle
To minimize the inherent complexity of multitasking programs, a promising approach is to automate developments. In practice, automation is achieved by generators. Those generators produce applications which execute on software multitasking platforms (for example multitasking operating systems). Such generators are in fact specific to selected platforms. They are made of implementation rules which are specific to each platform. In order to cope with adaptable and flexible solutions, this study aims to explicitly describe executing platforms as parameters of generators. For that, it defines, firstly, a generic pattern dedicated to modelling software execution platforms, secondly, an extension to the UML language for modelling multitasking software execution platforms (the Software Resource Modeling profile) and, thirdly, a transformation framework based on explicit platform models.
-Model transformation
Source: http://www.theses.fr/2008EVRY0023/document
Voir plus Voir moins

Université d’Evry
Laboratoire d’Ingénierie Dirigée par les Modèles
des Systèmes Temps Réel Embarqués
Thèse
présentée en première version en vue d’obtenir le grade de
Docteur, spécialité «Informatique»
par
Frédéric Thomas
Contribution à la prise en compte
des plates-formes logicielles
d’exécution dans une ingénierie
générative dirigée par les modèles
Thèse soutenue le 21 novembre 2008 devant le jury composé de :
M. Jean Bézivin LINA (Rapporteur)
M. Jean-Philippe Babau LISyC
M. Patrick Albert ILOG (Invité)
M. François Terrier LISE (Directeur)
M. Sébastien Gérard LISE (Encadrant)
M. Jérôme Delatour ESEORemerciements
enesaispass’ilexistedesstatistiquessurlesujet,maisilmesemblequeJ lapagelaplusluedansunethèseestcelledesremerciements.L’exercice
est donc difficile. En espérant qu’ils ne soit pas trop rébarbatifs, voici les
remerciements de cette thèse.
Contrairement au ressenti d’un doctorant à certaines étapes de ce pro-
jet de trois ans : Maman, je suis perdu!, une thèse n’est pas le fruit d’une
seule tête pensante, mais d’un ensemble de têtes qui échangent, doutent,
rigolent et même parfois font la fête ensembles. Mes premiers remercie-
ments sont donc destinés à mes encadrants : Séb et Jérôme avec qui j’ai eu
plaisir à travailler. Jérôme a été le premier à me faire confiance. Séb m’a
permis de découvrir la recherche internationale. J’ai eu la chance d’être
encadré et soutenu par vous deux tout au long de mon doctorat. Je tiens
donc à vous remercier pour vos compétences techniques, votre disponibi-
lité et vos nombreuses qualités humaines.
Outre Sébastien Gérard et Jérôme Delatour, je remercie également
FrançoisTerrierpouravoirétémondirecteurdethèseetm’avoiraccueilli
dans son Laboratoire d’Ingénierie Dirigée par les Modèles des Sys-
tèmes Temps Réel Embarqués (LISE) du CEA Saclay. Merci, à toi, Fran-
çois pour m’avoir fourni les moyens matériels et financiers pour réaliser
ce projet.
Même si la rédaction est un but en soi, ce n’est pas le but final d’un
doctorant. Je remercie donc également les membres de mon jury qui ont
acceptéd’assisteràmasoutenance.Ainsi,jeremercieJean-philippeBabau
et Jean Bézivin pour avoir étudié et évalué ce manuscrit. Leurs retours
m’ont permis d’avancer dans ma réflexion. Je remercie également Patrick
Albert pour avoir participé au jury en apportant ses compétences indus-
trielles de recherche et développement.
Les remerciements ne sont jamais exhaustifs. Pour simplifier, je remer-
cie l’ensemble des équipes LISE du CEA Saclay et TRAME de l’ESEO.
Je remercie tout particulièrement : Arnaud, Brahim, Damien, François,
Fred, Guillaume, Gonzague, Huascar, Matthias, Rémy, Romain, Safouan,
les Sebs, Wassim... Les beautés de discussions, de pauses cafés et de bar-
becues que nous avons partagés me manqueront.
Enfin, je compte, bien évidemment, remercier mon entourage pour
m’avoir soutenu durant ces trois ans, en particulier, Isa et Chloé. Vous
m’avez accompagné, supporté et encouragé dans ce long projet. Comme
dirait Lalé : Appi!
Saclay, le 18 janvier 2009.
iiiTable des matières
Table des matières v
Note aux lecteurs ix
Introduction 1
Contexte................................. 1
Problématique ............................. 2
Objectifs de recherche........................ 2
Contributions 2
Démarche ................................ 3
I Caractérisation de la problématique et état de l’art 5
1C aractérisation de la problématique 7
1.1 Caractérisation des applications mises en œuvre.... 9
1.2 Caraation de l’ingénierie mise en œuvre ..... 13
Conclusion ............................... 20
2É tat de l’art 23
2.1 Définition des critères de comparaison .......... 25
2.2 État de l’artsurlamodélisationdesplates-formeslo-
gicielles d’exécution ...................... 28
Conclusion 34
II Contributions génériques à la modélisation des plates-
formes logicielles d’exécution 35
3D éfinition et implantation du motif Resource-Service 37
3.1 Définition des contours de modélisation......... 39
3.2 D du motif Resource-Service ........... 42
3.3 Implantation du motif Resource-Service dans UML . . 48
3.4 Discussion............................. 52
Conclusion ............................... 5
4S pécificationd’uncadreméthodologiquedédiéaumo-
tif Resource-Service 57
4.1 Identification des cas de modélisation .......... 59
4.2 Définition des heuristiques de modélisation....... 60
4.3 Discussions ............................ 71
Conclusion ............................... 73
v5S pécification d’un cadre technologique dédié au mo-
tif Resource-Service 75
5.1 Définition des architectures de transformations ... 7
5.2 Spécification des services detion ...... 79
5.3 Discussions ............................ 86
Conclusion ............................... 86
III Contributions appliquées aux ingénieries génératives
intégrant des modèles explicites de plates-formes d’exécu-
tion multitâche 89
6M étamodèlisationdesplates-formeslogiciellesd’exé-
cution multitâche 91
6.1 Définition d’un profil UML pour la modélisation des
plates-formes logicielles d’exécution multitâche ... 93
6.2 Évaluation du profilUML..................104
6.3 Discussions ............................107
Conclusion ...............................12
7I ntégrationdesmodèlesdeplates-formesmultitâches
dans une ingénierie générative expérimentale 113
7.1 Définition du contexte expérimental ...........15
7.2 Description de l’infrastructure de transformation . . 120
7.3 Évaluation de l’ detion . . 129
7.4 Discussion.............................135
Conclusion ...............................136
Conclusion 137
Bilan ...................................137
Discussion générale .........................138
Perspectives139
Annexes 143
AL ibrairies ATL dédiées à la manipulation de modèles
de plates-formes 143
A.1 Implantation des services primitifs.............143
A.2 Implantation d’une librairie d’équivalence .......14
BO ntologie des services des systèmes multitâches 147
CI ntégration de SRM dans MARTE 155
C.1 Intégration du profil SRM dans le profilMARTE....156
DD escription des modèles et des règles de transforma-
tion utilisés dans l’expérimentation du composant τ 159p2p
D.1 Modélisation de la plate-forme Cheddar.........159
D.2 Description des règles de transformation spécifiées
par l’utilisateur dans le processus expérimental ....164
viE UMLPatternDetectionLib:Une librairie de détection
de schémas de conception UML 169
E.1 Présentation des modèles d’entrée .............169
E.2 Pation des contraintes ................170
E.3 Présentation des algorithmes de la librairie ......173
Liste des figures 177
Liste des tableaux 181
Liste des algorithmes 183
Liste des codes 183
Bibliographie 185
Glossaire 193
Index 198
viiNote aux lecteurs
Conventions
Ce mémoire utilise les conventions typographiques et graphiques sui-
vantes :
Conventions typographiques
Les noms et les sigles des langages de programmation, des méthodes,
des outils, et des institutions sont en petites majuscules : Java, ATL,
OMG,
Les noms des constituants d’un métamodèle ou d’un modèle sont en
police non- proportionnelle avec empattement : Class, Task,
Les mots en langue étrangère sont en italique : design pattern,
Le terme «plate-forme» réfère à la plate-forme d’exécution. Les termes
«plate-forme» et «plate-forme d’exécution» sont donc utilisés,
Le sigle UML réfère à la version 2.1 de la norme UML,
Dans la description des codes sources, une flèche précise que la
ligneaétécoupéedanscedocumentpourdesraisonséditoriales.Cette
flèche n’apparait pas dans la description finale.
Conventions graphiques
La couleur bleue utilisée dans les diagrammes UML référence des in-
formations qui n’appartiennent pas au modèle décrit. Ce sont soit des
méta-informations, c’est-à-dire des informations renseignées dans le
métamodèle, ou soit des commentaires facilitant la compréhension du
diagramme,
Lacouleurverteutiliséedanslesdiagrammesréférenceunélémentqui
est importé d’un autre package du modèle,
Dans les illustrations des hypothèses et des besoins de cette étude, une
flèche,, signifie une décision prise à une étape du raisonnement. Une
ligne terminée par un rond,, signifie la non prise en compte du cas
pointé,
Dans les diagrammes de classes, certains niveaux d’héritage sont omis
pourfaciliterlacompréhensiondesconcepts.Lesigne estutilisépour
spécifier que des classes parentes ont été omises.
ix






Plan de lecture
Ce mémoire a été écrit en vue d’un parcours linéaire puisqu’il concrétise
une démarche de thèse. Cependant chaque chapitre est développé de fa-
çon indépendante, ainsi un lecteur averti et/ou pressé peut commencer
la lecture où bon lui semble. Pour faciliter une telle lecture, la figure 1
explicite les dépendances entre les sections de chaque chapitre. De même,
le lecteur dispose aussi d’un glossaire, d’une bibliographie et d’un index
à la fin de ce mémoire.