UML : introduction
Achref El Mouelhi
Docteur de l’universite´ d’Aix-Marseille Chercheur en programmation par contrainte (IA) Ingenieur´ en genie´ logiciel
H & H: Research and Training 1 / 16 UML : introduction
Achref El Mouelhi
Docteur de l’universite´ d’Aix-Marseille Chercheur en programmation par contrainte (IA) Ingenieur´ en genie´ logiciel
H & H: Research and Training 2 / 16 UML
© Achref EL MOUELHI ©
Pour construire cette maison Il faut etablir´ un plan avant
H & H: Research and Training 3 / 16 UML
La realisation´ d’une application peut passer par plusieurs etapes´
Definition´ des besoins Analyse Conception Developpement´ Test Validation© Achref EL MOUELHI © Deploiement´ Maintenance ...
H & H: Research and Training 4 / 16 UML
Ou` est UML dans tout c¸a ?
UML permet de modeliser´ toutes les etapes´ du developpement´ d’une application de l’analyse au deploiement´ (en utilisant plusieurs diagrammes). © Achref EL MOUELHI ©
H & H: Research and Training 5 / 16 UML
UML : Unified Modeling Language
Un langage de modelisation´ unifie´ Ce n’est pas un langage de programmation Independant´ de tout langage de programmation (objet ou autre) Un langage base´ sur des notations graphiques Constitues´ de plusieurs graphes (diagrammes) permettant de visualiser© la Achref future application EL MOUELHI de plusieurs angles © differents´ Une norme maintenue par l’OMG (Object Management Group : organisation mondiale cre´ee´ en 1989 pour standardiser le modele` objet)
H & H: Research and Training 6 / 16 Exemple de graphe
arˆetes x6 x5 sommets
x1 x2 x3 x4
UML
Et un graphe ?
En mathematiques,´ c’est un outil compose´ de : un ensemble de sommets, et un ensemble d’aretesˆ (arcs) reliant les sommets
© Achref EL MOUELHI ©
H & H: Research and Training 7 / 16 UML
Et un graphe ?
En mathematiques,´ c’est un outil compose´ de : un ensemble de sommets, et un ensemble d’aretesˆ (arcs) reliant les sommets
Exemple de graphe ©arˆetes Achrefx EL6 MOUELHIx5 sommets ©
x1 x2 x3 x4
H & H: Research and Training 7 / 16 UML
Et un graphe ?
En mathematiques,´ c’est un outil compose´ de : un ensemble de sommets, et un ensemble d’aretesˆ (arcs) reliant les sommets
Exemple de graphe ©arˆetes Achrefx EL6 MOUELHIx5 sommets ©
x1 x2 x3 x4
H & H: Research and Training 7 / 16 UML
Avant UML : plusieurs methodes´ orientees´ objet (entre 1970 et 1995)
Booch (present´ ee´ par Grady Booch) OMT (introduite par James Rumbaugh) OOSE (proposee´ par Ivar Jacobson) OOA, OOD,© Achref HOOD... EL MOUELHI ©
H & H: Research and Training 8 / 16 UML
Debut´ d’UML En 1995, Booch, Rumbaugh et Jacobson commencent a` travailler sur une methode´ unifiee´ (Unified Method) En 1996, creation´ d’un consortium de partenaires pour travailler sur la definition´ d’UML En 1997,© normalisation Achref ELde la mMOUELHIethode´ UML 1.1 par © l’OMG
H & H: Research and Training 9 / 16 UML
Differente´ version d’UML
UML 1.1 : 1997
UML 1.2 : 1998
UML 1.3 : 1999
UML 1.4 : 2001
UML 1.5 : 2003
UML 2.0 : 2005
UML 2.1 : 2006 UML 2.2 :© 2009 Achref EL MOUELHI © UML 2.3 : 2010
UML 2.4 : 2011
UML 2.5 : 2015
UML 2.5.1 : 2017
H & H: Research and Training 10 / 16 UML
Remarques 14 diagrammes depuis UML 2.3 classes´ en deux categories´ 7 diagrammes de structure (statiques) : permettent de decrire´ la structure d’un systeme` selon plusieurs points de vue differents´ (classes, composants, nœuds, objets, packages...) 7 diagrammes© Achref de comportement EL MOUELHI (dynamiques) : permettent© de decrire´ le comportement d’un systeme` de plusieurs points de vue differents´ (temporel, changement d’etat...)´
H & H: Research and Training 11 / 16 UML
Diagrammes de structure (statiques)
Diagramme de classes (class diagram) Diagramme d’objets (object diagram) Diagramme des paquets (package diagram) Diagramme de composants (component diagram) Diagramme© Achref de deploiement´ EL (deployment MOUELHI diagram) © Diagramme de structure composite (composite structure diagram) Diagramme de profils (profile diagram)
H & H: Research and Training 12 / 16 UML
Diagrammes de comportement (dynamiques)
Diagramme de cas d’utilisation (use-case diagram) Diagramme etats-transitions´ (state machine diagram) Diagramme d’activite´ (activity diagram) Diagramme de sequence´ (sequence diagram) Diagramme© Achref de communication EL MOUELHI (communication diagram) © Diagramme global d’interaction (interaction overview diagram) Diagramme de temps (timing diagram)
H & H: Research and Training 13 / 16 <
Classeur Package Ster´ eotype´
UML Notations communes Classeur : a une forme rectangulaire et permet de representer´ plusieurs el´ ements´ dans de differents´ diagrammes UML Package (paquetage) : est un regroupement d’el´ ements´ de systeme` ou de diagrammes Ster´ eotype´ : annotation entouree´ par <
H & H: Research and Training 14 / 16 UML Notations communes Classeur : a une forme rectangulaire et permet de representer´ plusieurs el´ ements´ dans de differents´ diagrammes UML Package (paquetage) : est un regroupement d’el´ ements´ de systeme` ou de diagrammes Ster´ eotype´ : annotation entouree´ par <
Classeur Package Ster´ eotype´
H & H: Research and Training 14 / 16 UML
Les fl`eches en UML
Association bidirectionnelle Association unidirectionnelle D´ependance H´eritage © Achref ELImpl´ementation MOUELHI © Agr´egation Composition
H & H: Research and Training 15 / 16 UML
Quelques logiciels pour faire la modelisation´ UML
Power Designer (payant - version d’essai 30 jours) StarUML BoUML Visual Paradigm (payant - version d’essai 30 jours) Astah (payant - version d’essai 30 jours) Outil en© ligne Achref : https://www.draw.io/ EL MOUELHI © ArgoUML (Open source) PlantUML
H & H: Research and Training 16 / 16