EXERCICES UML
1°) Dans un établissement scolaire, on désire gérer la réservation des salles de cours ainsi que
du matériel pédagogique (ordinateur portable ou/et Vidéo projecteur).
Seuls les enseignants sont habilités à effectuer des réservations (sous réserve de disponibilité
de la salle ou du matériel).
Le planning des salles peut quant à lui être consulté par tout le monde (enseignants et
étudiants).
Par contre, le récapitulatif horaire par enseignant (calculé à partir du planning des salles) ne
peut être consulté que par les enseignants.
Enfin, il existe pour chaque formation un enseignant responsable qui seul peut éditer le
récapitulatif horaire pour l’ensemble de la formation.
Modéliser cette situation par un diagramme de cas d’utilisation
Consulter planning
Utilisateur salle
Consulter récap horaire enseignant
Enseignant
Réservation
<<include>>
Vérification disponibilité
Responsable formation
Editer récap formation
Réservation salle
Réserver matériel
Réserver vidéo
Réserver portable
1
2°) Dans le cadre d’un projet de recherche en viticulture, on désire collecter les temps de
travaux sur des exploitations agricoles pilotes, pour travailler en particulier sur les opérations
phytosanitaires.
Pour ce faire, un glossaire des opérations culturales types a été mis en place (afin que tout le
monde ait le même cadre analytique).
Des contraintes assez fortes sont apparues sur le projet : les ouvriers agricoles des
exploitations pilotes n’ont pas accès aux outils informatiques et la lourdeur d’enregistrement
des temps de travaux a donc de fait écarté l’utilisation d’un outil informatique.
La procédure suivante a ainsi été définie : chaque ouvrier agricole saisit ses temps de travaux
sur un cahier au format prédéfini. (dans ce cahier, il peut consulter en annexes le glossaire
afin d’identifier l’opération culturale type).
Nb : pour les opérations de type phytosanitaire, les informations complémentaires sont
demandées : liste des maladies visées, stade phénologique, méthodes de traitements et
observation.
En fin de mois, le chef d’exploitation vérifie la saisie effectuée sur le cahier et apporte
d’éventuelles corrections.
Il saisit ensuite les opérations du mois sur une application internet connectée à une base de
données.
Le chercheur en charge du projet reçoit automatiquement un mail qui lui indique que la saisie
mensuelle a été effectuée.
Après avoir vérifié la pertinence de la saisie, il notifie au chef d’exploitation que tout s’est
bien passé et que les données intégrées dans la base de données sont valides et prêtes à être
exploitées.
Le chef d’exploitation imprime alors 2 documents sur le mois écoulé :
-
-
l’état mensuel des travaux pour chaque salarié (qui est remis à chaque salarié)
l’état des opérations phytosanitaires (état Terravitis)
En fin d’année, le chercheur analyse toutes les opérations saisies et rédige une synthèse
générale sur les temps de travaux dans les différentes exploitations.
Cette synthèse est alors transmise à tous les chefs d’exploitation.
2
Exemple d’un état mensuel :
Exemple d’impression Terravitis :
3
Saisie BDD
<<include>>
Correction éventuelle
Identification
Vérification saisie cahier
Etat terravitis
Chef exploitation
Notification saisie ok
Saisie opération
Vérification données BDD
Correction données BDD
Ouvrier Agricole
<<extend>>
Consultation du glossaire
Opération phyto
Autre opération
Chercheur
Rédaction synthèse
Analyse résultats
4
Cahier de saisie
Etat phyto
BDD
OUVRIER AGRICOLE
saisie temps de travaux
saisie temps de travaux
Fin de mois
CHEF EXPLOITATION
CHERCHEUR
Vérification
Vérification
Correction éventuelle
Correction éventuelle
Saisie
Saisie
Vérification
Vérification
Correction
Correction
Notification saisie ok
Notification saisie ok
consulter
consulter
Fiche mensuelle
Impression
Impression
Transmission
Transmission
Fin d'année
Analyse
Analyse
Rédaction
Rédaction
Synthèse
Transmission
Transmission
5
0..*
PERSONNE
-
-
-
Code personne
Nom personne
Prénom personne
: int
: varchar(50)
: varchar(50)
1..1
1..1
+ Editer relevé mensuel ()
: int
Fonction personne
-
-
Code fonction
Libellé fonction
: varchar(5)
: varchar(50)
Publicité
1..*
1..1
Exploitation
-
-
Code exploitation
Nom exploitation
: varchar(5)
: varchar(50)
+ Editer état terravitis ()
: int
1..*
PARCELLES
-
-
Code parcelle
Nom parcelle
: varchar(5)
: varchar(50)
0..*
0..*
Intervention
-
-
-
No intervention
Date intervention
Nb heures
: number
: date
: number
+ Editer fiche intervention ()
: int
0..*
1..1
0..*
MALADIES
-
-
Code maladie
Libellé maladie
: varchar(5)
: varchar(50)
0..*
0..*
Intervention phyto
- Observation phyto : text
0..*
1..1
1..1
OPERATION
-
-
Code opération
Libellé opération
: varchar(5)
: varchar(50)
STADE PHENOLOGIQUE
-
-
Code stade
Libellé stade
: varchar(5)
: varchar(50)
6
3°) Dans un magasin, le processus de vente est le suivant : le client entre, passe dans les
rayons, demande éventuellement des renseignements ou procède à des essais, prend des
articles (si le stock est suffisant), passe à la caisse où il règle ses achats (avec tout moyen de
paiement accepté). Il peut éventuellement bénéficier d’une réduction.
Modéliser cette situation par un diagramme de cas d’utilisation
Prospecter
<<extend>>
Renseigner
<<extend>>
<<extend>>
Essayer
Vendeur
Vérification stock
Client
<<include>>
Acheter
<<include>>
Payer
<<extend>>
Caisse
Bénéficier réduction
Payer CB
Groupement des banques
Payer chèque
Payer liquide
7
4°) On considère le système suivant de gestion d’un DAB (Distributeur automatique de
billets) :
-
le distributeur délivre de l’argent à tout porteur de carte (carte Visa ou carte de la
banque)
- pour les clients de la banque, il permet :
o
o
la consultation du solde du compte
le dépôt d’argent (chèque ou numéraire)
toute transaction est sécurisée et nécessite par conséquent une authentification
-
- dans le cas où une carte est avalée par le distributeur, un opérateur de maintenance se
charge de la récupérer. C’est la même personne qui collecte également les dépôts
d’argent et qui recharge le distributeur.
-
Modéliser cette situation par un diagramme de cas d’utilisation
Porteur de visa
Retirer argent avec visa
<<include>>
<<include>>
<<include>>
Retirer argent
SI gestion CB
S'authentifier
Consulter solde
<<include>>
SI banque
Client banque
Déposer argent
Déposer numéraire
Recharger DAB
Déposer chèques
Opératuer maintenance
Récupérer cartes avalées
Récupérer chèque
8
5°) Dans un magasin, un commerçant dispose d’un système de gestion de son stock d’articles,
dont les fonctionnalités sont les suivantes :
- Edition de la fiche d’un fournisseur
- Possibilité d’ajouter un nouvel article (dans ce cas, la fiche fournisseur est
automatiquement éditée. Si le fournisseur n’existe pas, on peut alors le créer)
- Edition de l’inventaire. Depuis cet écran, on a le choix d’imprimer l’inventaire,
d’effacer un article ou d’éditer la fiche d’un article).
Modéliser cette situation par un diagramme de cas d’utilisation
Impression inventaire
<<extend>>
Affichage inventaire
<<extend>>
Effacement article
<<extend>>
Edition article
Publicité
Commerçant
Edition fournisseur
<<extend>>
<<include>>
Ajouter article
<<extend>>
Ajout fournisseur
9
6°) Le déroulement normal d’utilisation d’une caisse de supermarché est le suivant :
• un client arrive à la caisse avec ses articles à payer
•
le caissier enregistre le numéro d’identification de chaque article, ainsi que la quantité
si elle est supérieure à 1
la caisse affiche le prix de chaque article et son libellé
lorsque tous les achats sont enregistrés, le caissier signale la fin de la vente
la caisse affiche le total des achats
le caissier annonce au client le montant total à payer
le client choisit son mode de paiement
o
liquide : le caissier encaisse l’argent, la caisse indique le montant à rendre au
client
o chèque : le caissier note le numéro de pièce d’identité du client
o carte de crédit : la demande d’autorisation est envoyée avant la saisie
la caisse enregistre la vente et l’imprime
le caissier donne le ticket de caisse au client
•
•
•
•
•
•
•
Modéliser cette situation à l’aide d’un diagramme de séquence en ne prenant en compte que
le cas du paiement en liquide.
Caissier
Caisse
dépôt articles
Client
Pour
chaque
article
Saisie article (no et quantité)
Prix et description
Prix et description
Fin de vente
Total
Total
Total à payer
Liquide
Saisie montant
A rendre
A rendre
Ticket
Monnaie
Ticket
10
7°) Le déroulement normal d’utilisation d’un distributeur automatique de billets est le
suivant :
•
•
• si le code est correct, elle envoie une demande d’autorisation de prélèvement au
le client introduit sa carte bancaire
la machine vérifie alors la validité de la carte et demande le code au client
groupement de banques. Ce dernier renvoie le solde autorisé à prélever.
le distributeur propose alors plusieurs montants à prélever
le client saisit le montant à retirer
•
•
• après contrôle du montant par rapport au solde autorisé, le distributeur demande au
client s’il désire un ticket
• Après la réponse du client, la carte est éjectée et récupérée par le client
•
•
les billets sont alors délivrés (ainsi que le ticket)
le client récupère enfin les billets et son ticket
Modéliser cette situation à l’aide d’un diagramme de séquence en ne prenant en compte que
le cas où tout se passe bien. NB : on identifiera les scénarios qui peuvent poser problème en
incluant des commentaires dans le diagramme
DAB
Porteur de carte
Groupement de banques
Introduction carte
Demande code
Entrée valeur code
Demande montant retrait
Entrée valeur retrait
demande ticket
ok
Ejection carte
récupération carte
Ejection billet et ticket
récpération billets et tickets
Voir cas
carte non
valide
Vérification carte
Voir cas
code erroné
Vérification code
Demande autorisation
Autorisation solde
contrôle montant demandé
Voir cas
monté
demandé >
solde
Voir cas
ticket refusé
Voir cas
carte non
rendue
Voir cas
billets non
repris
11
8°) On souhaite gérer les différents objets qui concourent à l’activité d’un magasin de vente
de fleurs.
• Le client demande au vendeur des renseignements des renseignements sur les
compositions florales
• Le vendeur lui fournit toutes les informations nécessaires
• Le client commande alors la composition de son choix et le vendeur émet le bon de
fabrication qu’il transmet à son ouvrier fleuriste.
• Le vendeur édite ensuite la facture correspondante.
• L’ouvrier fleuriste crée la composition puis archive le bon de fabrication
•
• La facture est remise au client pour règlement une fois le bouquet réalisé
• Une fois la facture réglée, le client récupère sa composition et quitte le magasin.
Il remet alors la composition au vendeur
Modéliser cette situation à l’aide d’un diagramme de séquence et d’un diagramme de
collaboration.
Client
Vendeur
Demande renseignements
Fournir informations
Commande
Ouvrier
Créer
Bon de fabrication
Transmettre
Editer facture
Impression facture
Facture
Publicité
Composition
Créer
Archivage
livrer
remettre facture
régler
remettre bouquet
12
facture
1 : Demande renseignements
6 : Editer
7 : Imprimer
4 : créer
Bon de fabrication
2 : Fournir informations
3 : Commande
11 : remettre bouquet
12 : remettre facture
Client
13 : régler facture
Vendeur
5 : Transmettre
9 : Archiver
10 : Livrer
Composition
8 : créer
Ouvri er
13
9°) Soient les phrases suivantes :
• Un répertoire contient des fichiers
• Une pièce contient des murs
• Les modems et claviers sont des périphériques d’entrée / sortie
• Une transaction boursière est un achat ou une vente
• Un compte bancaire peut appartenir à une personne physique ou morale
Elaborez les diagrammes de classe correspondants en choisissant le type de relation
approprié
Répertoire
1..1
Contenir
0..*
Fichier
Pièce
1..*
composer
1..*
Mur
Périphérique
Transaction boursière
Modem
Clavier
Achat
Vente
Compte bancaire
Appartenir
1..1
Client
1..*
Personne morale
Personne physique
NB : Pour le compte bancaire, on aurait également pu modéliser 2 associations entre « compte
bancaire » et « personne physique » et « personne morale » en y incluant une contrainte
d’exclusion.
14
10°) Une académie souhaite gérer les cours dispensés dans plusieurs collèges. Pour cela, on
dispose des renseignements suivants :
• Chaque collège possède d’un site Internet
• Chaque collège est structuré en départements, qui regroupent chacun des enseignants
spécifiques. Parmi ces enseignants, l’un d’eux est responsable du département.
• Un enseignant se définit par son nom, prénom, tél, mail, date de prise de fonction et
son indice.
• Chaque enseignant ne dispense qu’une seule matière.
• Les étudiants suivent quant à eux plusieurs matières et reçoivent une note pour
chacune d’elle.
• Pour chaque étudiant, on veut gérer son nom, prénom, tél, mail, ainsi que son année
d’entrée au collège.
• Une matière peut être enseignée par plusieurs enseignants mais a toujours lieu dans la
même salle de cours (chacune ayant un nombre de places déterminé).
• On désire pouvoir calculer la moyenne par matière ainsi que par département
• On veut également calculer la moyenne générale d’un élève et pouvoir afficher les
matières dans lesquelles il n’a pas été noté
• Enfin, on doit pouvoir imprimer la fiche signalétique (, prénom, tél, mail) d’un
enseignant ou d’un élève.
Elaborez le diagramme de classes correspondant. Pour simplifier l’exercice, on limitera le
diagramme à une seule année d’étude
DEPARTEMENT
code département
nom
1..*
+ Calculer moyenne ()
: void
Constituer
1..1
0..1
1..1
COLLEGE
code college
nom
adresse site
PERSONNE
No personne
Nom
prénom
tel
Appartenir
+ Afficher fiche signalétique ()
: void
Etre chef de
1..1
1..*
ENSEIGNANT
date prise de fonction
Indice
1..*
1..*
Enseigner
1..1
COURS
No cours
libellé cours
+ Calculer moyenne ()
: void
0..*
Dérouler
1..1
SALLE
No salle
nom
capacité
ETUDIANT
Année entrée
+
+
Calculer moyenne ()
Afficher mat sans note ()
: void
: void
0..*
Suivre
NOTE
Note contrôle
15
Publicité
11°) On souhaite gérer les réservations de vols effectués dans une agence. D’après les
interviews réalisées avec les membres de l’agence, on sait que :
• Les compagnies aériennes proposent différents vols
• Un vol est ouvert à la réservation et refermé sur ordre de la compagnie
• Un client peut réserver un ou plusieurs vols, pour des passagers différents
• Une réservation concerne un seul vol et un seul passager
• Une réservation peut être confirmée ou annulée
• Un vol a un aéroport de départ et un aéroport d’arrivée
• Un vol a un jour et une heure de départ, et un jour et une heure d’arrivée
• Un vol peut comporter des escales dans un ou plusieurs aéroport(s)
• Une escale a une heure de départ et une heure d’arrivée
• Chaque aéroport dessert une ou plusieurs villes
A partir des éléments qui vous sont fournis ci-dessus, élaborez le diagramme de classes
(en y ajoutant tout attribut que vous jugez pertinent et qui n’a pas été décrit ci-dessus).
16
Compagnie aérienne
+
+
Code cie
Nom cie
: char
: char
1..1
Gérer
1..*
0..*
0..*
0..*
Vol générique
+
+
+
+
no vol générique
jour
heure depart
heure arrivee
: int
: date
: date
: date
+ Calculer durée ()
: void
1..1
décrire
0..*
Vol
+
+
+
No vol
date depart
date arrivée
: int
: date
: date
concerner
1..1
départ
Aeroport
+
+
No aeroport
Nom aeroport
: int
: char
0..*
concerne
escale
1..1
arrivée
0..*
1..1
Concerne
0..*
desert
ESCALE
+
+
+
heure départ
heure arrivée
no escale
: Date
: date
: int
+ calculer durée ()
: void
1..*
Ville
+
+
no ville
Nom ville
: int
: charhar
Effectuer
0..*
+
+
Numéro
Date
: long
: Date
0..*
Concerne
Réservation
individu
+
+
+
+
+
+
No individu
Nom
prénom
Adresse
code postal
Ville
: long
: char
: char
: char
: char
: char
1..1
1..1
passager
Client
+
+
Code passager
nb points
: int
: int
+ Code client
: char
17