Vous êtes sur la page 1sur 3

USTHB / FEI / DPT INFO 2019/2020

L2 ISIL / Section B Module : Génie Logiciel 1


SERIE D’EXERCICE N° 2
(UML – Cas d’utilisation)

Exercice 3 :
Un comptable s'occupe du traitement des factures d'une société. Lorsqu'il traite chaque
facture, il peut être amené à calculer une remise (on considérera que ce calcul est toujours
effectué, éventuellement avec une remise de 0%). Les factures étrangères nécessitent un
traitement particulier.

Donner le diagramme de cas d'utilisation correspondant à cette situation.

« include
Traiter une facture » Calculer une remise

Comptable

Traiter une facture à


l’étranger

Remarque 1 : Autre solution pour ne pas utiliser la relation de généralisation

« include »
Traiter une facture Calculer une remise

Comptable
« extend »
[Facture à l’étranger]

Ajouter traitement spécifique


à une facture à l’étranger

Remarque 2 : si on change l’énoncé de l’exercice pour dire que le comptable ne fait un calcul de remise
quand il traite une facture que lorsque le montant de celle-ci est supérieur à une certaine grande valeur.

Traiter une facture « extend »


[Montant_Facture >= ‘certaine grande somme’ ]
Comptable
Calculer une remise

Traiter une facture à


l’étranger

1
Exercice 5 : Choisissez et dessinez les relations entre les cas suivants :
1. Une agence de voyage 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.

« include » « include »
« include »

2. Le voyage se fait soit par avion, soit par train. Comment modéliser cela ?

1ère solution :

Réserver Billet

« extend »
« include » [choix user
« include »
Réserver Billet
« extend » Avion
[choix user

Cette solution permet à l’agent de choisir le mode de voyage qui convient à son client. Mais, on ne voit
l’obligation d’en choisir toujours un parmi les deux.

2ème solution : En activant le cas d’utilisation « organiser voyage », on force l’acteur de réserver un
billet de voyage qu’il soit de train ou d’avion.

Réserver Billet Avion Réserver Billet


Train

Organiser un voyage « extend » « extend »


« include » [choix user [ Choix user ]

Agent de Voyage « include »


« include »
Réserver Billet
Voyage
Réserver chambre
Réserver Taxi
Hôtel

2
3. Certains clients demandent à l’agent de voyage d’établir une facture détaillée. Cela donne lieu à un
nouveau cas d’utilisation appelé « établir une facture détaillée ». comment mettre ce cas en relation avec
les cas existants ?

La relation à utiliser est « extend »

1ère solution :

Réserver Billet

« extend »
« include » [choix user]
« include »
Réserver Billet
« extend » Avion
Etablir facture détaillée « extend »
[choix user]
[choix user]

Cette solution permet à l’agent de choisir le mode de voyage qui convient à son client. Mais, on ne voit
l’obligation d’en choisir toujours un parmi les deux.

2ème solution :

Etablir facture détaillée

« extend » Réserver Billet Avion Réserver Billet


[choix user] Train

Organiser un voyage « extend » « extend »


« include » [choix user] [ Choix user ]

Agent de Voyage « include »


« include »
Réserver Billet
Voyage
Réserver chambre
Réserver Taxi
Hôtel

Vous aimerez peut-être aussi