Professional Documents
Culture Documents
Génie Logiciel
Introduction à UML 2
- Vocabulaire -
Saïd Mahmoudi
Said.mahmoudi@umons.ac.be
−
Plan : 1 - Sommaire
2 Modèles complémentaires
Diagramme de communication (collaboration)
1 En 1994
deux méthodologistes bien connus, Rumbaugh et Booch décident de
fusionner et unifier leurs approches, ils travaillent ensemble à la
corporation Rational Software
2 En 1995
un autre méthodologist, Jacobson, se joint à l’équipe son travail met
l’emphase sur l’analyse par cas d’utilisation
3 En 1997
le « Object Management Group » (OMG) lance le processus de
standardisation UML
UML v2.0 date de 2005. Il s’agit d’une version majeure apportant des
innovations radicales et étendant largement le champ d’application d’UML.
Vues multiples
Diagramme de classes et d’objets : décrit les classes, leurs
inter-relations, et leurs instances
Diagramme de séquence et de communication : montre le
comportement du système par l’interaction des objets qui le composent
Diagramme d’états / machine à états : montre comment le système se
comporte de façon interne et modélise le comportement discrèt piloté
par les évènements
Diagramme de cas d’utilisation : montre les utilisations possibles d’un
logiciel
Diagramme d’activités : modélise le comportement d’un système ou
processus basé sur les flux de contrôle
Sommaire
2 Modèles complémentaires
Acteurs principaux :
Personnes qui utilisent les fonctions principales du système
Acteurs secondaires :
Personnes qui effectuent des tâches administratives ou de maintenance
Le cas d’utilisation
Un ensemble de séquences d’actions qu’un système peut exécuter
Typiquement, une description textuelle
Parfois, on utilise les diagrammes de séquences et de communication
Toujours lié à, et déclenché par, un acteur (c.à.d. un utilisateur)
Exceptions : les cas d’extension et d’inclusion (à voir plus tard)
Fournit toujours un résultat de valeur à un acteur
Un cas d’utilisation est lié à un acteur
un cas d’utilisation doit :
couvrir l’ensemble des étapes à suivre dans l’accomplissement d’une
tâche donnée
être écrit, dans la mesure du possible, d’une façon indépendante de
toute interface utilisateur
Stéréotypes «extend» :
Indique qu’un cas pourrait avoir besoin d’un autre
Dépendance faible car conditionnelle
Le sense de la flèche est inversé par rapport au stéréotype «include»,
Indique que le cas source étends les objectifs du cas destination,
Exemple :
1 Définition du contexte
2 Identification des acteurs,
3 Identification des cas d’utilisation,
4 Définition des associations entre cas et acteurs,
5 Trouver les améliorations possibles,
6 Evaluation des dépendances «include»,
7 Evaluation des dépendances «extend»,
8 Trouver les opportunités de généralisation.
Exercice
Exercice
Classes et objets
Les attributs et les opérations sont les propriétés d’une classe. Leurs
noms commencent par une minuscule.
Un attribut décrit une donnée de la classe.
Les types des attributs et leurs initialisations ainsi que les modificateurs
d’accès peuvent être précisés dans le modèle,
Les attributs prennent des valeurs lorsque la classe est instanciée : ils sont en
quelque sorte des variables attachées aux objets.
Une opération est un service offert par la classe (un traitement que les
objets correspondant peuvent effectuer).
Un attribut peut être initialisé et sa visibilité est définie lors de sa
déclaration.
Syntaxe de la déclaration d’un attribut :
modifAcces nomAtt : nomClasse [ multi ]= valeurInit
Une opération est définie par nom son ainsi que par les types de ses
paramètres et le type de sa valeur de retour.
Méthodes et Opérations
Encapsulation
Multiplicités
Associations
Classe-association
Une association peut être raffinée et avoir ses propres attributs, qui ne
sont disponibles dans aucune des classes qu’elle lie.
Une classe association est caractérisée par l’ajout d un trait
discontinu entre la classe et l’association qu’elle représente.
Association qualifiée
Association qualifiée
Association qualifiée
Relation d’agrégation
Une agrégation dénote une relation d’un ensemble à ses parties. L’ensemble
est l’agrégat et la partie l’agrégé.
Relation de composition
Propriétés de la composition
La destruction et la copie de l’objet composite (l’ensemble) impliquent
respectivement la destruction ou la copie de ses composants (les
parties).
Une instance de la partie n’appartient jamais à plus d’une instance de
l’élément composite.
Relation de composition
Propriétés de la composition
La destruction et la copie de l’objet composite (l’ensemble) impliquent
respectivement la destruction ou la copie de ses composants (les
parties).
Une instance de la partie n’appartient jamais à plus d’une instance de
l’élément composite.
Composition et agrégation
Interface
Exemples d’interfaces
Association dérivée
Attributs de classe
Par défaut, les valeurs des attributs définis dans une classe diffèrent
d’un objet à un autre.
Parfois, il est nécessaire de définir un attribut de classe qui garde une
valeur unique et partagée par toutes les instances. Graphiquement, un
attribut de classe est souligné
Opérations de classe
Classe active
Une classe passive (par défaut) sauvegarde les données et offre les
services aux autres.
Une classe active initie et contrôle le flux d’activités.
Graphiquement, une classe active est représentée comme une classe
standard, avec une épaisseur de trait plus prononcée.
Exercice
Une académie souhaite gérer les cours dispensés dans plusieurs collèges. Pour cela,
on dispose des renseignements suivants :
Chaque collège possède un site Internet
Chaque collège est structuré en départements, qui regroupent chacun des enseignants
spécifiques. Parmi ces enseignants, l’un d’eux est responsable du département.
Un enseignant se définit par son nom, prénom, tél, mail, date de prise de fonction et son
indice.
Chaque enseignant ne dispense qu’une seule matière.
Les étudiants suivent quant à eux plusieurs matières et reçoivent une note pour chacune
d’elle.
Pour chaque étudiant, on veut gérer son nom, prénom, tél, mail, ainsi que son année
d’entrée au collège.
Une matière peut être enseignée par plusieurs enseignants mais a toujours lieu dans la
même salle de cours (chacune ayant un nombre de places déterminé).
On désire pouvoir calculer la moyenne par matière ainsi que par département
On veut également calculer la moyenne générale d’un élève et pouvoir afficher les
matières dans lesquelles il n’a pas été noté
Enfin, on doit pouvoir imprimer la fiche signalétique (, prénom, tél, mail) d’un enseignant
ou d’un élève.
Saïd Mahmoudi Said.mahmoudi@umons.ac.be Génie Logiciel − 72 / 122
Sommaire Le diagramme de cas d’utilisation
Les modèles de base Diagrammes de classes
Modèles complémentaires Diagrammes de séquences
Exercices supplémentaires
Exercices supplémentaires
ACHAT DE VOITURE :
Une personne physique peut avoir jusqu’à trois sociétés (personnes morales) qui
l’emploient. Chaque personne physique possède un numéro de sécurité sociale qui
l’identifie. Une voiture a un numéro d’immatriculation. Une voiture est la propriété
d’une personne (physique ou morale). Un emprunt dans une banque peut être
demandé pour l’achat d’une voiture.
Diagrammes de séquences
Exemple d’interaction
Ligne de vie
Messages
La création d’un objet est matérialisée par une flèche qui pointe sur le
sommet d’une ligne de vie.
On peut aussi utiliser un message normal portant le nom «create»
La destruction d’un objet est matérialisée par une croix qui marque la
fin de la ligne de vie de l’objet.
Messages et événements
Messages de retour
Implémentation
Exercice
Exercices suppleméntaire
CONVERSATION TELEPHONIQUE :
Décrire par un diagramme de séquences une conversation téléphonique (je décroche,
tonalité, je compose le numéro, sonnerie...).
Sommaire
2 Modèles complémentaires
Diagramme de communication (collaboration)
Diagrammes de séquences
Diagrammes d’interactions
Diagramme de communication
Rôles et connecteurs
Types de messages
Attention
Bien faire la distinction entre les messages et les connecteurs : on pourrait
avoir un connecteur sans message, mais jamais l’inverse.
Multiplicité
Messages simultanés
Exercices supplémentaires
ASCENSEUR :
Décrire par un diagramme de communications pour le fonctionnement d’un ascenseur
(une personne appuie sur un bouton, l’ascenseur arrive, les portes s’ouvrent, la
personne entre...).
Exercices supplémentaires
BUREAU DE POSTE :
A la poste, les personnes arrivent dans une file d’attente. Avec deux guichets, décrire
par un diagramme de collaborations l’arrivée, l’attente et la prise en charge des
personnes.