UML
8-9 octobre 2008
Objectif du TD
Apprendre à utiliser un certain nombre de
diagrammes UML parmi les plus importants.
Environnement
Tableau, papier, crayon.
Exercices
Cas d'utilisation
On se donne pour objectif de définir les acteurs et les cas d'utilisation d'un système d'information pour l'UFR d'informatique, permettant de faciliter le fonctionnement de l'organisation pour le personnel et les étudiants. Evidemment, ce qui fonctionne bien doit être intégré au système comme acteurs extérieurs : authentification, serveurs d'impression, etc.
Décrivez
- les acteurs du SI : nom / une ligne de description si besoin
- 4 cas d'utilisation du SI portée organisation boîte blanche, objectif stratégique : un nom / acteurs impliquées /une ou deux phrases de description.
- 15 cas d'utilisation du SI portée système boîte noire, objectif utilisateur : un nom / acteurs impliquées / une ou deux phrases de description.
Diagrammes d'activité
Créez un diagramme d'activité
modélisant
l'utilisation d'un cafetière électrique telle que celle ci-dessous, de la
recherche
des ingrédients jusqu'à la dégustation. Vous pouvez ajouter des signaux et des objets au diagramme.
Diagrammes d'interaction et conception
On vous donne le code suivant (code-td-uml.pdf - sources : code-td-uml.zip) qui correspond au diagramme de classe ci-joint (dc4.pdf) (versions SVG : dc1, dc2, dc3, dc4).
Etudiez les classes et construisez :
- Un diagramme de séquence à partir du message trouvé affiche() dans Reservation
- Un diagramme de communication à partir du message trouvé affiche() dans Reservation
- Un diagramme de séquence à partir du message trouvé constructReservationVol() dans Client
On souhaite
- lister les passager d'un vol
- créer une réservation pour un nouveau passager à côté d'un passager existant
- ajouter un vol
Proposez des diagrammes de séquence pour réaliser ces services et complétez le diagramme de classe en conséquence.
Diagrammes de machines d'états (d'après P. Roques - Valtech)
On se donne un un réveil-matin simplifié :
- on peut mettre l’alarme “on” ou “off”,
- quand l’heure courante devient égale à l’heure d’alarme, le réveil sonne sans s’arrêter,
- on peut interrompre la sonnerie.
1- Dessinez le diagramme de machine d’états correspondant.
2- Complétez le diagramme pour prendre en compte le fait que la sonnerie s’arrête d’elle-mˆeme au bout d’un certain temps.
On considère ensuite une montre à cadran numérique simplifiée :
- Le mode courant est le mode “affichage”
- Quand on appuie une fois sur le bouton mode, la montre passe en « modification heure ». Chaque pression sur le bouton avance incrémente l’heure d’une unité.
- Quand on appuie une nouvelle fois sur le bouton mode, la montre passe en « modification minute ». Chaque pression sur le bouton avance incrémente les minutes d’une unité.
- Quand on appuie une nouvelle fois sur le bouton mode, la montre repasse en mode «Affichage ».
3- Dessinez le diagramme de machine d’états correspondant.
4- Ajoutez le comportement suivant : quand on appuie sur le bouton avance plus de deux secondes, les heures (ou les minutes) s’incrémentent rapidement jusqu’à ce qu’il se produise un relâchement dans la pression du bouton.
On rajoute à la montre deux boutons :
- un bouton éclairage ; en le pressant, on "claire le cadran de la montre, jusqu’à ce qu’on le relâche ;
- un bouton alarme, qui ajoute à la montre digitale une fonctionnalité classique d’alarme, comme cela a éyé décrit lors de l'exercice sur le réveille-matin.
5 -Dessinez le diagramme de machine d'états complet incluant tous les comportements de la montre.