Système complet
Ce corrigé est une des solutions parmi d’autre… N’hésitez pas à en débattre sur le forum !
Diagramme de cas d'utilisation
Ordi banque
Saisir num compte
extend
Authentifier Client Banque
Caissier include
Gérer compte include
Gérer transaction
Ce premier diagramme permet de modéliser le premier paragraphe. J’ai rajouté le cas d’utilisation
Authentifier client qui n’était pas explicitement écrit car il me semble que c’est un des devoirs de
l’ordinateur de la banque. De plus, ça permet d’afficher des include et des extend !
Distributeur
Insérer carte crédit
include
Délivrer Argent Ordi Central
Client Authentifier client
Imprimer Reçu
Envoyer transaction
Ce deuxième diagramme permet de modéliser le deuxième paragraphe. De même, Authentifier
client n’est pas explicitement écrit, mais c’est un des devoirs du distributeur, qui va demander à l’ordi
central la validité du client.
Diagramme de classe
On s’intéresse uniquement au logiciel qu’on mettra sur le distributeur.
Distributeur Client
* *
numCarte : int
* 1
1 1
* * *
1 Transaction Reçu
OrdiCentral
Montant :int
adresseIP :string
Diagramme de séquence
J’ai décidé de représenter ce qu’il se passe lorsqu’un utilisateur cherche à retirer de l’argent :
Client Distributeur OrdiCentral
InsereCarte()
VerifieCarte()
DemandeCode()
3615
VerifieCode()
OK VerifieCode()
DemandeMontant()
100
VerifieMontant()
OK VerifieMontant()
new
Transaction
effectueTransaction()
OK ModifieSolde()
DelivreBillet()
Récupère
ImprimeReçu()
Récupère
RendCarte()
Récupère
Diagramme état-transition
[code mauvais && essais=3] Saisi code
/éjecte carte
Allume Attente InsereCarte Attente
utilisateur code
Eteint
[argent
[code bon] Saisi code
récupéré] client part
Délivre [montant bon] Attente [montant trop élevé]
argent montant Saisi montant
Saisi code