íãáÚáÇ
ËÍÈáÇ æ
íáÇÚáÇ
ã?áÚÊáÇ
ÉÑÇÒæ
Centre universitaire
de Souk-Ahras
ÜÚ ?? ? ? ÜÜ ? ?
ÓÇÑÜÜ ? ?
ÜÓ
Institut : Sciences &
Techniques Département : Sciences
Mémoire
uwuuuwu w uuu Uu wuwuuuu UU UWWUU UU LICENCE EN
INFORMATIQUE
Génération automatique du code
java
A partir d'un modèle de classe UML
Par
HERAGUEMI KAMEL EDDINE OULD YESLEM MOUHAMED
devant le jury si-dessous
Président : Examinateur : Encadreur :
|
Mr MOUHAMED BENDRISS Mme NADIA BENATI
DR ABDELKRIM AMIRAT
|
UWW UUUU
Remerciement
A l'issue de ce travail, nous remercions, en premier lieu, le
bon Dieu de nous avoir donné la force et le courage de le mener
à terme.
Nous tenons, également, à exprimer notre
sincère reconnaissance et notre profonde gratitude à tous ceux
qui ont contribué de près ou de loin à la
réalisation de ce mémoire, notamment notre promoteur Dr :
Amirat dont les conseils et orientations nous ont
été précieusement utiles.
Introduction 1
Motivations et Objectifs 2
Organisation du document 2
Chapitre 1 Développement Orienté Objet
3
1.1. Introduction 3
1.2 Paradigme Orienté Objet 3
1.2.1 Encapsulation 4
1.2.2 Héritage 5
1.2.3 Polymorphisme 6
1.3 Définitions 7
1.3.1 Objet 7
1.3.2 Classe 7
1.4 UML langage de modélisation Orienté Objet 8
1.4.1 Historique 8
1.4.2 Description d'UML 2.0 9
1.4.2.1 Diagrammes structurels 9
1.4.2.2 Diagrammes comportementaux 10
1.5 Document XMI 11
1.5.1 Historique 11
1.5.2 Concepts de base 11
1.5.3 Le standard XMI 12
1.5.3.1 Principe de fonctionnement 12
1.5.3.2 Le format XMI 13
1.5.3.4 Structure générale d'un document 13
1.5.3.5 Représentation des diagrammes de classes en XMI
13
1.6. Conclusion 14
Chapitre 2 Diagramme de classe 15
2.1. Introduction 15
2.2 Les paquetages 15
2.3 Les interfaces 16
2.4 Classes 16
2.4.1 Classes abstraites 16
2.4.2 Classes non abstraites 17
2.4.3 Les attributs 17
2.4.4 Les méthodes 17
2.5 Relations entre classes 18
2.5.1 Relation d'association 18
2.5.2 Relation d'Association binaire et n-aire 19
2.5.2 .1 Relation d'Association binaire 19
2.5.2 .2 Relation d'Association n-aire 19
2.5.3 Multiplicité 20
2.5.4 Navigabilité 20
2.5.5 Qualification 21
2.5.6 Classe-association 22
2.5.6.1 Définition et représentation 22
2.5.6.2 Auto-association sur classe-association 22
2.5.7 Agrégation et composition 23
2.5.7 .1 Relation d'Agrégation 23
2.5.7.2 Relation Composition 24
2.5.8 Relation de Généralisation 24
2.5.9 Relation de Dépendance 25
2.5.10 Relation d'Implémentation 26
2.5.11 Commentaires en UML 26
2.6 Conclusion 27
Chapitre 3 Génération de code
28
3.1. Introduction 28
3.2 Définition 28
3.2 Objectifs 29
3.3 Etapes de génération de code 29
3.3.1 Génération structurelle de code 29
3.3.2 Génération comportementale du code 29
3.3.3 Génération de la spécification 29
3.4 Approches de la génération de code 30
3.5 Conclusion 31
Chapitre 4 Développement de l'outil
32
5.1. Introduction 32
4.2 Environnement de développement 32
4.2.1 Environnement matériel 32
4.2.1 Environnement logiciel 32
4.3 Choix technique 33
4.3.1 Choix de L'environnement 33
4.3.1.1 Java JDK 6.0 sur Eclipse 3.5 33
4.3.1.2 StarUML 5.02 34
4.4 Implémentation et validation de GenJava 35
4.4.1 Principe de fonctionnement 36
4.4.2 Phase de test et de validation 36
4.4.2.1 Déploiement de l'application 36
4.4.2.2 Création du fichier setup « GenJava.exe
» de l'application 37
4.4.2.3 Installation de l'application 38
4.4.2.4 Interfaces de l'application 40
4.4.2.4.1 La page d'accueil 40
4.4.2.4.1 Page de travaille 41
4.4.2.5 Fonctionnement de GenJava 42
4.5 Limites de GenJava 44
4.5 Transformation de modèles de classe UML vers code JAVA
45
Conclusion 51
Bibliographie 53
|