UML
20 septembre 2007

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 de classes 

(exercice extrait de [Roques, 2004], livre d'exercices reprenant des exercices de Valtech Training)

Cette étude concerne un système simplifié de réservation de vols pour une agence de voyages.

Les interviews des experts métier ont permis de résumer les connaissances du domaine sous la forme des phrases suivantes :

    1. Des compagnies aériennes proposent différents vols.
    2. Un vol est ouvert à la réservation et refermé sur ordre de la compagnie.
    3. Un client peut réserver un ou plusieurs vols.
    4. Une réservation concerne un seul vol et un seul passager.
    5. Une réservation peut être annulée ou confirmée.
    6. Un vol a un aéroport de départ et un aéroport d'arrivée.
    7. Un vol a un jour et une heure de départ, et un jour et une heure d'arrivée.
    8. Un vol peut comporter des escales dans des aéroports.
    9. Une escale a une heure d'arrivée et une heure de départ.
    10. Chaque aéroport dessert une ou plusieurs villes.

Modèle du domaine 

Construisez un modèle de classes du domaine en analysant les phrases précédentes. 

Structuration en package

Structurez le modèle de classes en packages en respectant les principes de cohérence et d'indépendance des packages.

Autre modèle du domaine

Imaginez un modèle de domaine adapté à la réservation de voyages en bus.

Factorisation et abstraction

Proposez une architecture de package qui permette de mettre en commun les similitudes entre modèles du domaine.

Lien diagramme de classes / code 

Soient deux classes en relation d'association : 

Pour chacun des cas, réflechissez à la manière de coder les classes en JAVA, notamment en termes d'attribution de responsabilité pour la création, les modifications. Vous pourrez vous aider de quelques diagrammes de séquences pour expliquer les choses.

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 en quelques lignes, les cas d'utilisation  (niveau système et objectifs utilisateur, niveau organisation si nécesssaire pour expliquer, en style abrégé : quelques lignes), et leurs relations éventuelles. Vous décrirez quelques cas d'utilisation au niveau détaillé, avec scénario nominal, extension, erreurs.