Vous êtes sur la page 1sur 28

Recueils d’exercices UML

Mon Cahier
D’exercices
UML
Recueils d’exercices UML

Kamarou-deen Fagbémy
EXERCICE 1 Diagramme de cas d’utilisation complet

EXERCICE 2 Station-Service
Quel est le défaut du diagramme suivant?

EXERCICE 3 Agence de voyages


 Choisissez et dessinez les relations entre les cas suivants :
1. Une agence de voyages organise des voyages où l’hébergement se fait en hôtel. Le client doit
disposer d’un taxi quand il arrive à la gare pour se rendre à l’hôtel.

Kamaru-deen Fagbémy
2. Certains clients demandent à l’agent de voyages d’établir une facture détaillée. Cela donne
lieu à un nouveau cas d’utilisation appelé « Etablir une facture détaillée ». Comment mettre
ce cas en relation avec les cas existants ?
3. Le voyage se fait soit par avion, soit par train. Comment modéliser cela ?

EXERCICE 4 Formalisation de besoins mal exprimés

EXERCICE 4 Relations entre cas d’utilisation

Kamaru-deen Fagbémy
EXERCICE 4

EXERCICE 5 Réservation de salles et matériel

Kamaru-deen Fagbémy
EXERCICE 5 Réservation de salles et matériel

TTAVAIL A FAIRE

 Citez les types d’acteurs


 Citez les cas d’utilisation qui peuvent être identifiés
 DIAGRAMME DES CAS D’UTILISATION (DCU)

EXERCICE 1 Lecture de multiplicité


Multiplicité des associations
Chaque rôle peut porter une multiplicité montrant combien d’objets de la classe considérée (celle qui
joue ce rôle) peuvent être liés à une instance de l’autre classe par l’association. La multiplicité est
représentée sous la forme d’un couple de cardinalité

Kamaru-deen Fagbémy
EXERCICE : 2 Contrôle d'accès à un bâtiment (notion de classe candidate)

Kamaru-deen Fagbémy
EXERCICE : 3 Relation entre Classes

Kamaru-deen Fagbémy
EXERCICE 6

TRAVAIL A FAIRE

Kamaru-deen Fagbémy
EXERCICE 7

Diagrammes de séquence

EXERCICE 1 Un simulateur

Kamaru-deen Fagbémy
EXERCICE 2 Assistance Téléphonique

EXERCICE 3 Ascenseur

Kamaru-deen Fagbémy
EXERCICE 4

Kamaru-deen Fagbémy
Proposer une modélisation UML de ce cas : spécifier les besoins sous forme de cas
d’utilisation en ajoutant les hypothèses nécessaires, construire un diagramme de classe

Kamaru-deen Fagbémy
participantes de ce domaine, établir quelques diagrammes de séquence représentatifs,
construire les classes de conception.

EXERCICE 5

Exercice 2 : Modélisation d’un SI de syndic de copropriété (12 points)

L'agence Balzano est un société de copropriétés qui gère 200 résidences (la taille des résidences
variant de 20 à 300 appartements).

1 Décomptes des charges des copropriétés

La fonction du syndic est d'administrer les résidences dont il a mandat1 pour les services communs
(gardiennage, plantation, interphone, ascenseur) en place des propriétaires. Les frais de l'entretien
d'une résidence sont payés par les copropriétaires2. La part payée par un copropriétaire est
proportionnelle au nombre de quantièmes de son appartement. Par exemple, M. Bertrand Marin
propriétaire dans la résidence de Mont Mesnil, située au 37 avenue Verdun. 94600 Choisy-le-Roi paye
0,55% (55/10000) des frais de la résidence: car son appartement est «évalué» à 55 quantièmes. Nous
considérons que pour une résidence, le nombre total de quantièmes est toujours de 10 000.

L'agence Balzano possède un descriptif de chaque résidence qu'elle gère :


 numéro, nom, adresse et surface au sol de la résidence
 descriptif de chaque appartement: numéro, surface au sol, orientation principale (nord, est,
ouest, sud), nombre de fenêtres, étage et nombre de quantièmes. Les coordonnées du
propriétaire: nom, prénom, adresse et téléphone.

Lorsque l'agence Balzano reçoit une facture, elle enregistre la facture: numéro de facture, date de
facturation, montant de la facture, raison sociale et adresse de la société émettrice de la facture, le
motif de la facture (réparation d'une gouttière, remplacement des boîtes aux lettres, produits
d'entretien, ... ) et la résidence concernée par la facture (qui a été l'objet des travaux). L'agence
Balzano paye les factures 90 jours après leur date de facturation. A chaque paiement, l'agence
enregistre la date de paiement.

A la fin de chaque trimestre, pour chaque résidence, l'agence Balzano établit le décompte des factures
reçues durant le trimestre (concernant cette résidence). Le décompte avec un double des factures est
envoyé au président des copropriétaires de la résidence (lui-même propriétaire d'un appartement de la
résidence). Le président vérifie ce décompte; lorsqu'il est d'accord avec ce dernier, il signe le
décompte et le retourne à l'agence. On considéra uniquement le cas où le président des copropriétaires
est d'accord avec le décompte.

Une fois l'accord du président des copropriétaires de la résidence obtenu, l'agence Balzano envoie aux
propriétaires un décompte personnalisé des charges du trimestre. Sur ce décompte personnalisé est
précisée la somme que doit payer le propriétaire. Si le propriétaire ne paye pas le décompte
personnalisé dans les deux mois (après sa date d'envoi) alors l'agence lui envoie une lettre de rappel

1
Mandat: pouvoir donné au syndic d'agir au nom de la résidence
2
Copropriétaire d'une résidence : personne propriétaire d'un appartement de la résidence.

Kamaru-deen Fagbémy
qui précise la somme due et l'indemnité de retard demandée : 2% de la somme due par moi de retard.

Si le décompte (et l'indemnité de retard) ne sont pas payés trois mois après la date d'envoi du
décompte, alors le dossier est transmis au service contentieux. Le service contentieux se charge des
démarches juridiques pour recouvrir la créance (ce service n'est pas dans le domaine étudié).

La destruction des données est hors du domaine étudié.

TRAVAIL A FAIRE

1) Construire le diagramme des cas d'utilisation.


2) Construire les diagrammes de séquence des scénarios suivants (en parallèle créer les classes
correspondantes) :
a) enregistrement d'une facture
b) création d'un décompte trimestriel
c) création des décomptes personnalisés
d) traitement d'un décompte personnalisé non
payé
e) envoi des relances.
3) Affiner éventuellement le diagramme des classes construit en parallèle des diagrammes de
séquence.
4) Etablir le diagramme Etat/Transition d’une classe significative.

DIAGAMME D’ACTIVITE
EXERCICE 1 Recette « Mousse au chocolat »
Voici la recette pour faire une bonne mousse au chocolat :

 Commencer par casser le chocolat en morceaux, puis le faire fondre.


 En parallèle, casser les œufs en séparant les blancs des jaunes.
 Quand le chocolat est fondu, ajouter les jaunes d’œuf.
 Battre les blancs en neige jusqu’à ce qu’ils soient bien fermes.
 Les incorporer délicatement à la préparation chocolat sans les briser.
 Verser dans des ramequins individuels.
 Mettre au frais au moins 3 heures au réfrigérateur avant de servir.

1. Etablir le diagramme d’activités pour modéliser la recette.


2. Dans le diagramme d’activité de la question 1, on ne voit pas encore les ingrédients manipulés.
Ajouter les flots d’objets (objet et son état) pour compléter le diagramme.
3. Le chef et son assistant vont partager le travail pour préparer la recette. Créer un autre les
partitions représentant les entités responsables des actions.

EXERCICE 2 organisation d’un examen

 Le service scolarité :

Kamaru-deen Fagbémy
 planifie l’examen,
 prépare les copies,
 puis, une fois l’examen corrigé, saisit et affiche les notes, et archive les copies.
 L’enseignant prépare un sujet et corrige les copies.
 Les étudiants rédigent une solution et prennent connaissance de leur note après affichage.
Rédiger un diagramme d’activités (en remettant les choses dans l’ordre)

EXERCICE 3 ATELIER

EXERCICE 4 Recette « Mousse au chocolat »

EXERCICE 5 DISTRIBUTEUR DE BILLETS


Décrire le fonctionnement d'un distributeur de billets. Le client introduit sa carte dont la
validité est immédiatement vérifiée. Il est ensuite invité à saisir le code de la carte. Après

Kamaru-deen Fagbémy
trois tentatives infructueuses, la carte est avalée. Sinon le client peut indiquer le montant
qu'il désire retirer, le solde de son compte bancaire est alors consulté pour s'assurer que le
retrait est possible. En cas de solde insuffisant, le client en est informé et peut alors saisir un
montant inférieur. Si le solde du compte est suffisant, le distributeur restitue la carte et
délivre alors les billets accompagnés d'un reçu.

EXERCICE 2 Fournisseur de produit

EXERCICE
Pour créer une fiche de réparation, le chef d’atelier saisit les critères de recherche de
voitures dans le système. Le logiciel de gestion des réparations lui donne la liste des voitures
correspondant aux critères entrés. Si la voiture existe, le chef d’atelier va sélectionner la
voiture. Le logiciel va, ensuite, fournir les informations sur le véhicule. Si la voiture est sous
garantie, le chef devra saisir la date de demande de réparation. Si la voiture n’existe pas, le
chef va saisir les informations concernant ce nouveau véhicule. Dans tous les cas, le chef
d’atelier devra saisir la date de réception et de restitution. Si le dommage de la voiture est
payé par l’assurance, le logiciel va fournir une liste d’assurances au chef d’atelier. Ce dernier
sélectionnera l’assurance adéquate. Enfin, le logiciel enregistre la fiche de réparation.

TAF : Créer un diagramme d’activité pour le use case « Créer une fiche de réparation »

EXERCICE
Le logiciel de gestion des réparations est destiné en priorité au chef d'atelier, il devra lui
permettre de saisir les fiches de réparations et le travail effectué par les divers employés de
l'atelier. Pour effectuer leur travail, les mécaniciens et autres employés de l'atelier vont
chercher des pièces de rechange au magasin. Lorsque le logiciel sera installé, les magasiniers

Kamaru-deen Fagbémy
ne fourniront des pièces que pour les véhicules pour lesquels une fiche de réparation est
ouverte; ils saisiront directement les pièces fournies depuis un terminal installé au magasin.
Lorsqu'une réparation est terminée, le chef d'atelier va essayer la voiture. Si tout est en
ordre, il met la voiture sur le parc clientèle et bouclera la fiche de réparation informatisée.
Les fiches de réparations bouclées par le chef d'atelier devront pouvoir être importées par le
comptable dans le logiciel comptable.

TAF : Créer un diagramme d’activité pour tout le traitement d’une réparation.

DIAGRAMME D’ÉTAT-TRANSITION (DET)

EXERCICE 1

Soit à représenter le diagramme d’état-transition d’un objet personnel en suivant les


événements de gestion depuis le recrutement jusqu’à la mise en retraite.

Après le recrutement, une personne est considérée en activité dès sa prise de fonction dans
l’entreprise. Au cours de sa carrière, nous retiendrons seulement les événements : congé de
maladie et prise de congé annuel. En fin de carrière, nous retiendrons deux situations : la
démission et la retraite.

EXERCICE 2

En reprenant l’exercice relatif à la gestion de la bibliothèque traité dans les cas d’utilisation
nous pouvons élaborer le diagramme d’activité correspondant.

– Deux acteurs ont été identifiés :

• Bibliothécaire chargé de l’approvisionnement des ouvrages, de la gestion du catalogue et


de l’enregistrement des emprunts et retours d’ouvrages ;

• Gestionnaire, chargé de l’inscription des adhérents et de la relance des adhérents ayant


dépassé le délai de restitution des ouvrages.

EXERCICE 3

On considère la machine a état comportementale suivante d’un classifier CC.


1. A sa création, le classifier passe dans l´état E1 après avoir exécuté l’action init().
2. Etant en E1, il passe en E2 sur occurrence d’un ´évènement evtX en exécutant l’action
act1.
3. Une occurrence de evtY en E2 rend le classifier inactif.
4. Etant en ´ E1, si la condition cond est vraie, et quand l’évènement t evtY se produit, le

Kamaru-deen Fagbémy
classifier passe dans l’état E3 en exécutant act2.
5. Etant en ´ E3, evtY le refait passer en E1.
Représentez ce comportement sous forme d’un diagramme états–transitions Uml.

EXERCICE 4

Réveil matin Considérons un réveille-matin simplifie :

 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 d’Etat correspondant

2 – Complétez le diagramme pour prendre en compte le fait que la sonnerie s’arrête d’elle-
même au bout d’un certain temps

EXERCICE 5

1. Le mode courant est le mode “affichage”


2. 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é.
3. 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é.
4. Quand on appuie une nouvelle fois sur le bouton mode, la montre repasse en mode
Affichage.

TRAVAIL A FAIRE

1 – Dessinez le diagramme d’états correspondant Question


2 – Ajoutez le comportement suivant : quand on appuie sur le bouton avance plus de deux

Kamaru-deen Fagbémy
secondes, les heures (ou les minutes) s’incrémentent rapidement jusqu’`a ce qu’il se
produise un relâchement dans la pression du bouton. Envisagez plusieurs solutions possibles

EXERCICE 6
1. L’appui sur une touche numérique provoque l’affichage du chiffre correspondant `à
l’´écran.

2. La touche ’Valider’ provoque l’appel du numéro, sauf si aucun chiffre n’a ´été saisi.

3. Lors de l’appel, quand la ligne est d´détectée comme occupée, l’appareil affiche le
message ’occupé et, après 1 seconde, l’´écran de composition s’affiche `à nouveau.

4. Lors de l’appel, on peut abandonner l’opération en appuyant sur la touche ’Fin’.

5. Lors de l’appel, si le correspondant décroche, la communication est ´établie.

6. En cours de la conversation, si le correspondant raccroche, on affiche un message et on


revient `a l’´écran d’accueil.

7. En cours de conversation, la touche ’Fin’ interrompt la communication et l’´écran d’accueil


s’affiche à nouveau.

TRAVAIL A FAIRE

Représentez ce comportement `à l’aide d’un diagramme ´états–transitions UML.

EXERCICE 7 Gestion Hospitalisation


Assistance Publique-Hôpitaux de Cotonou (AP-HC) souhaite développer un système
d'information pour gérer le dossier médical d'un patient hospitalisé dans un de ses hôpitaux.
Vous avez été retenu pour documenter le système existant en utilisant la notation UML, en
vue d’une réalisation en C++ par la suite. La société exige une solution type LAMP (Linux,
Apache, MySql, PHP) combinée avec des composants logiciels en C++.

1. Description du domaine

L’AP-HC gère plusieurs hôpitaux sur Paris et la région parisienne. Un hôpital est structuré en
services (administration, pédiatrie, chirurgie...). Chaque service a un chef de service qui est
aussi un médecin.
A chaque service sont affectés des médecins spécialistes, des infirmières et des aides-
soignantes. Chaque service contient des chambres et des lits. Le dossier médical du patient
doit contenir des informations sur son identité, ainsi que sur toutes ses hospitalisations et
les soins qu'il a reçus.

Le dossier médical du patient doit contenir aussi les hospitalisations effectuées dans d’autres
hôpitaux dans le but d’avoir un dossier national du patient unique (DNP).

2. Description de l'application

Kamaru-deen Fagbémy
L’application est un logiciel informatique qui doit permettre de constituer le dossier médical
d'un patient hospitalisé (on ne gèrera donc pas les patients qui viennent consulter sans être
hospitalisés).

Le dossier médical est initialisé par une secrétaire médical lorsque le patient est admis pour
hospitalisation dans un service. Elle renseigne les informations sur l’admission du patient et
lui attribue une chambre dans le service d’hospitalisation. Si le patient a déjà un dossier
médical dans l’AP-HC, la secrétaire médicale doit juste mettre à jour les informations du
patient (genre: nouvelle mutuelle, changement d’adresse ou de téléphone, etc...). Si le
patient est admis pour la première à l’AP-HC, elle doit créer son dossier. Elle enregistre
toutes les informations du patient: son numéro de sécurité sociale, adresse, téléphone,
mutuelle, personne à contacter, etc...
A chaque visite d'un médecin, une infirmière doit saisir dans le dossier médical un compte-
rendu de la visite. Ce compte rendu pourra contenir une prescription et une demande de
soin.
A chaque fois que le patient reçoit des soins, une infirmière doit les consigner dans le
dossier.
Vu la sensibilité des informations contenues dans le dossier médical, l’authentification par
login et mot de passe des utilisateurs de l’application est indispensable.

3. TRAVAIL A FAIRE:

1. Donner le diagramme des cas d’utilisation décrivant le système ci-dessus.


2. Pour l’un des cas d’utilisation ci-dessous, écrivez une description textuelle du cas (scenario
nominal, un scenario alternatif, et un scenario d’exception):
Initialiser dossier médical
Rechercher patient
3. Modélisez le scenario nominal du cas choisi sous forme d’un diagramme de séquence en
boite blanche
4. Modélisez la structure logique du système sous forme d’un diagramme de classes. Un
modèle complet comprenant les méthodes utilisées dans le diagramme de séquence
précédent est exigé mais sans les constructeurs et accesseurs.
5. Donner le diagramme d’état-transition de la classe Patient.

EXERCICE 8 PUBLICPHONE
L’utilisation d’un publiphone doit respecter les éléments suivants
:
1. Le prix minimal d’une communication interurbaine est de 1€.
2. Après l’introduction de la monnaie, l’utilisateur a 2 min pour composer son numéro (ce
délai est décompté par le standard).
3. La ligne peut être libre ou occupée.
4. Le correspondant peut raccrocher le premier.
5. Le publiphone consomme de l’argent dès que l’appelé décroche et à chaque unité de
temps
(UT) générée par le standard.

Kamaru-deen Fagbémy
6. On peut ajouter des pièces à tout moment.
7. Lors du raccrochage, le solde de monnaie est rendu.

TRAVAIL A FAIRE
 Diagramme de séquence
 Diagramme d’état transition

EXERCICE 8

EXERCICE 9

Kamaru-deen Fagbémy
EXERCICE 9

Kamaru-deen Fagbémy
EXERCICE 10

Kamaru-deen Fagbémy
EXERCICE 11

EXERCICE 12: Diagramme de Classe et D’Etat Transition Monte


On considère une montre digitale simplifiée:

Travail à faire

EXERCICE 1 3 Diagramme D’Etat Transition PublicPhone

L’objectif est de réaliser une application qui simule le comportement d’un Publiphone à Pièces sur
un système d’exploitation classique à partir de quelques périphériques standard dans la micro-
informatique: microphone, haut-parleur, lecteur de carte bancaire type Moneo.

Pour débuter ce projet, on part de l’existant en analysant un système simplifié de Publiphone à


pièces :

Kamaru-deen Fagbémy
1. Le prix minimal d'une communication interurbaine est de 0.3 Euro TTC.

2. Après l'introduction de la monnaie, l'utilisateur a 2 minutes pour composer son numéro du


correspondant (ce délai est décompté).

3. La ligne appelée peut être libre ou occupée.

4. Le correspondant peut raccrocher le premier.

5. Le Publiphone consomme de l'argent dès que le correspondant décroche, et à chaque unité de


temps (U.T.) engendrée par le standard.

6. On peut ajouter des pièces à tout moment.

7. Lors du raccrochage, le solde de monnaie est rendu.

Travail à faire

1. Dessiner le Diagramme des Cas d'utilisation du Publiphone à pièces.

2. Réaliser un Diagramme (préliminaire) de séquence système qui décrive le Scénario nominal du cas
d'utilisation: Téléphoner.

3. Réaliser un premier Diagramme d'états qui décrive le comportement nominal du Publiphone,


d'après le diagramme de séquence système.

4. Sur le Diagramme d'états précédent, comment représenter le fait que l'appelant peut raccrocher à
tout moment, et pas seulement dans l'état Conversation ?

EXERCICE 14
Un dispositif de contrôle d'accès par carte magnétique à un photocopieur est équipé d'un écran de
visualisation qui peut afficher les messages suivants :

• "INSEREZ VOTRE CARTE" lorsque le dispositif est inutilisé.

• "PATIENTER" pendant que le dispositif lit le code d'une carte introduite.

• "CARTE INVALIDE" lorsque le code n'est pas reconnu (illisible) ; la carte est alors automatiquement
éjectée. • "COMPOSEZ VOTRE CODE" lorsque celui-ci a pu être lu.

• "CODE REFUSE" si le code composé n'est pas identique au code lu ; la carte est alors
automatiquement éjectée.

• "UTILISATION EN COURS" lorsque le code composé est correct.

L'utilisateur peut à tout moment actionner un bouton qui provoque l'éjection de la carte. Après toute
éjection de carte, le dispositif affiche "INSERER CARTE".

Travail à faire : Proposer le graphe états-transitions du lecteur de carte.

Kamaru-deen Fagbémy
Partie 1

Une partie d’échecs peut être décrite comme suit :

• Au départ, le tour de jouer est au joueur possédant les pièces blanches,

• Quand le joueur aux pièces blanches joue, le tour de jouer devient à celui possédant les pièces
noires. L’inverse est aussi vrai.

• Quand le joueur possédant les pièces blanches (respectivement, les pièces noires) fait un échec et
mat, il gagne la partie,

• S’il y a un pat, la partie est finie par un nul.

Imaginons qu’il existe un contrôleur qui surveille la partie d’échec. Décrivez, d’un point de vue
contrôleur, le digramme Etats-Transitions de la partie d’échecs.

Partie 2

Supposons maintenant que l'on veuille décrire la même partie d'échecs du point de vue du
comportement d'un objet Afficheur (interface graphique). Son rôle est d'afficher sur un écran
l'échiquier et les pièces du jeu. Sur le jeu d'une pièce, il doit effacer celle-ci de sa position initiale, la
réafficher dans sa nouvelle position et, pour faire joli, simuler graphiquement la trajectoire du
déplacement.

EXERCICE 15 Formation d’un contrat

Dessinez un diagramme d’état/transition résumant les états possibles d’un objet “contrat” tel que
décrit dans l’énoncé suivant.

Un ensemble de personnes décident d’établir un contrat. Pour ce faire elles rédigent un projet par
itération successive. Le contrat est ensuite informellement accepté par les parties, et devient ce que
l’on appelle un préaccord. A ce stade il peut toujours être l’objet de modification et revenir à l’état
de projet. Une fois le préaccord définitivement établi, le contrat est signé par les parties. Dès ce
moment les partenaires sont liés. Une fois signé, le contrat peut être rendu exécutoire par une
décision d’une des parties. Un contrat en exécution peut faire l’objet de discussions qui sont réglées
par un arbitre désigné à cet effet. Le contrat une fois exécuté prend fin.

EXERCICE 14 : Montre digitale

Ma montre affiche l’heure, si j’appuie 2X sur le bouton 1, la montre passe en mode “modification”.
Chaque pression sur le bouton 2, incrémente l’heure d’une unité. Si j’appuie encore une fois sur le

Kamaru-deen Fagbémy
bouton 1, je peux régler les minutes de la même façon que les heures. Si j’appuie une quatrième fois
sur le bouton 1, la montre affiche à nouveau l’heure courante.

Kamaru-deen Fagbémy
Kamaru-deen Fagbémy

Vous aimerez peut-être aussi