– Travaux Dirigés d’UML –
Diagramme de classes
Exercice 1 : Propriétés d'une classe
Une personne est caractérisée par son nom, son prénom, son sexe et son âge. Les objets de classe
Personne doivent pouvoir calculer leurs revenus et leurs charges. Les attributs de la classe sont
privés ; le nom, le prénom, le sexe ainsi que l'âge de la personne doivent être accessibles (en lecture)
par des opérations publiques.
1. Donnez une représentation UML de la classe Personne, en remplissant tous les compartiments
adéquats.
Deux types de revenus sont envisagés : d'une part le salaire et d'autre part toutes les autres sources
de revenus. Les deux revenus sont représentés par des nombres réels (float). Pour calculer les
charges globales, on applique un coefficient fixe de 20% sur les salaires et un coefficient de 15% sur
les autres revenus.
2. Enrichissez la représentation précédente pour prendre en compte ces nouveaux éléments.
Un objet de la classe Personne peut être créé à partir du nom et de la date de naissance. Il est
possible de changer le prénom d'une personne. Par ailleurs, le calcul des charges ne se fait pas de la
même manière lorsque la personne décède.
3. Enrichissez encore la représentation précédente pour prendre en compte ces nouveaux
éléments.
Exercice 2 : Relations entre classes
Pour chaque exemple ci-dessous, indiquez si la relation présentée est une généralisation (héritage),
une agrégation ou une association :
Une transaction boursière est un achat ou une vente.
Un répertoire contient des fichiers
Une pièce contient des murs
Deux personnes peuvent être mariées
Un compte bancaire peut appartenir à une personne physique ou morale. Le solde d'un
compte doit toujours être positif
Exercice 3 : Héritage multiple
1. Les étudiants et les enseignants sont deux sortes de personnes. Proposez un modèle de classes
correspondant.
2. Un doctorant est un étudiant qui assure des enseignements. Complétez le modèle de classes
précédent.
3. Les doctorants et les étudiants doivent s'inscrire au début de l'année et éventuellement modifier
leur inscription. On connaît le nom et le prénom de toutes les personnes. On doit pouvoir calculer
le salaire des doctorants aussi bien que celui des enseignants. Ajoutez ces éléments au modèle
précédent.
Exercice 4 : Diagramme de classes
Des interviews d’experts métier ont permis de mettre en évidence les éléments suivants :
– Un vol a un aéroport de départ et un aéroport d’arrivée ;
– Un vol a une heure de départ et une heure d’arrivée, ainsi qu’une date de départ et une d’arrivée ;
– Un vol peut comporter des escales dans des aéroports ;
– Les escales interviennent dans un ordre déterminé ;
– Une escale a une heure d’arrivée et une heure de départ ;
– Chaque aéroport a un nom ;
– On peut ouvrir (et fermer) à la réservation chacun des vols.
Question : Proposez un diagramme de classes pour modéliser les éléments ci-dessus. N’oubliez pas
les attributs et les cardinalités des associations
Exercice 6 : Elaboration d'un diagramme de classes complet
Un hôtel est composé d'au moins deux chambres. Chaque chambre dispose d'une salle d'eau : douche
ou bien baignoire. Un hôtel héberge des personnes. Il peut employer du personnel et il est
impérativement dirigé par un directeur. On ne connaît que le nom et le prénom des employés, des
directeurs et des occupants. Certaines personnes sont des enfants et d'autres des adultes (faire
travailler des enfants est interdit). Un hôtel a les caractéristiques suivantes : une adresse, un nombre
de pièces et une catégorie. Une chambre est caractérisée par le nombre de lits qu'elle contient, son
prix et son numéro. On veut pouvoir savoir qui occupe quelle chambre à quelle date. Pour chaque
jour de l'année, on veut pouvoir calculer le loyer de chaque chambre en fonction de son prix et de son
occupation (le loyer est nul si la chambre est inoccupée). La somme de ces loyers permet de calculer
le chiffre d'affaires de l'hôtel entre deux dates.
Question : Donnez un diagramme de classes pour modéliser le problème de l'hôtel.