UML
28 septembre 2006

Objectif du TD

Apprendre à utiliser un certain nombre de diagrammes UML parmi les plus importants.

Environnement

Tableau, papier, crayon. On utilisera un outil UML au TP suivant. 

Exercices

Diagrammes d'activité 

Créez un diagramme d'activité modélisant l'utilisation d'un cafetière électrique, de la recherche des ingrédients jusqu'à la dégustation. Vous pouvez ajouter des signaux et des objets au diagramme.

Diagrammes d'interactions (séquence / communication) / diagrammes de machines d'états 

On considère un monte-charge servant à transporter des pièces de gros volume entre deux niveau N0 et N1. Le fonctionnement est le suivant : 

    1. Appel du monte-charge : un bouton extérieur est disponible à chaque niveau pour appeler la cabine si celle-ci n'est pas disponible.
    2. Fonctionnement des portes  
      1. Chaque porte possède un détecteur optique d'obstacle utilisé au cours de la fermeture. En présence d'un obstacle, la porte se réouvre immédiatement.
      2. Lorsque la cabine arrive à un niveau, la porte s'ouvre, puis reste ouverte. 
      3. Une porte est en fait composée de deux portes : la porte intérieure et la porte extérieure. L'ouverture et la fermeture de ces deux portes sont liées mécaniquement : les portes ne peuvent s'ouvrir que si la cabine est à un étage.
    3. Fonctionnement de la cabine
      1. L'utilisateur qui désire se déplacer avec la cabine doit d'abord appuyer sur un bouton de fermeture de la porte, puis appuyer sur un autre bouton, soit montée, soit descente (il peut aussi réouvrir la porte grâce au bouton ad hoc).
      2. Un voyant lumineux indique si l'on est en montée ou en descente.
    4. Sécurité
      1. Un bouton stop permet d'arrêter la cabine au cours de son mouvement en cas d'urgence (on pourra la redémarrer en appuyant sur un bouton de montée ou de descente)
      2. En cours de mouvement seul le bouton stop fonctionne. Un capteur de mouvement détecte le mouvement de la cabine.
    5. Réparation
      1. Une trappe permet à un réparateur d'intervenir sur le monte-charge, qui lui permet de bloquer celui-ci, ou de le déplacer .

Q1 : Etablissez le diagramme de cas d'utilisation du monte-charge.

Q2 : Etablissez un modèle du domaine du monte-charge.

Q3 : Etablissez plusieurs diagrammes de séquences mettant en jeu des objets issus du modèle du domaine (et de nouveaux si besoin). On fera suffisamment de diagrammes pour couvrir les différents CU/scénarios possibles. Vous pourrez établir des diagrammes de machine d'état pour différents éléments, afin d'en mieux comprendre ou définir le fonctionnement.