Application
Guichet automatique de banque
Le GAB, guichet automatique de banque
1. Distribution d’argent à tout porteur de carte de crédit, via un
lecteur de carte et un distributeur de billets
2. Consultation de solde de compte, dépôt en numéraire et dépôt
de chèques pour les clients porteurs de carte de crédit de la
banque adossée au GAB
3. Toutes les transactions sont sécurisées
4. Il est parfois nécessaire de recharger le distributeur
On se propose de:
• Identifier les acteurs
• Identifier les cas d’utilisation
• Construire un diagramme des cas d’utilisation
• Décrire textuellement les cas d’utilisation
2
Identification des acteurs
Quelles sont les entités externes qui interagissent avec le GAB ?
• Porteur de carte
Phrase 1 • Carte de crédit
• Lecteur de carte
• Distributeur de billets
Phrase 2 • Porteur de carte
client de la banque
Phrase 3 Le système est sécurisé (par
quoi?)
1. Le système
d’autorisation
2. Le système
d’information de
la banque
Phrase 4 • Opérateur de 3
maintenance
Le GAB est un système fondamentalement
mono-utilisateur: à tout instant, il n’y a qu’une
instance de chaque acteur (au maximum)
connecté au système!
Pour simplifier, nous utiliserons le terme Client banque pour
l’acteur Porteur de carte client de la banque.
4
Diagramme de contexte statique
5
Les acteurs humains Client banque et Porteur de carte sont
mutuellement exclusifs, ce qui n’est pas implicite d’après les
multiplicités des associations. On peut ajouter une contrainte
{XOR} (ou exclusif)
6
Une autre solution, un peu plus élaborée, consiste à
considérer que Client banque est une spécialisation de
Porteur de carte (héritage entre acteurs)
7
Diagramme des cas d’utilisation
Porteur de carte:
• Retirer de l’argent
Client banque:
• Retirer de l’argent (bien sûr!)
• Consulter le solde de son compte courant Acteurs
• Déposer du numéraire primaires
• Déposer de l’argent (numéraire ou chèque)
Opérateur de maintenance
• Recharger le distributeur
• Maintenir l’état opérationnel
Système d’autorisation ([Link])
• Néant
Acteurs
Système d’information de la banque (SI banque)
secondaires
• Néant
8
Diagramme des cas d’utilisation sans les
acteurs secondaires
9
Diagramme des cas d’utilisation
10
Diagramme des cas d’utilisation
amélioration
11
Description textuelle du cas d'utilisation:
« RETIRER DE L’ARGENT »
Sommaire d'identification
Titre : Retirer de l'argent
Résumé : ce cas d'utilisation permet à un porteur de carte, qui n'est pas
client de la banque, de retirer de l'argent, si son crédit hebdomadaire le
permet.
Acteurs : Porteur de carte non client (principal), Sys. Auto. (secondaire).
Date de création : 03/01/07 Date de mise à jour : 09/02/07
Version : 1.0 Responsable : Pierre DUMONT
Description des scénarios
Pré conditions
•La caisse du GAB est alimentée (il reste au moins un billet !).
•Aucune carte ne se trouve déjà coincée dans le lecteur.
Scénario nominal
1. Le porteur de carte introduit sa carte dans le lecteur de cartes du GAB.
12
2. Le GAB vérifie que la carte introduite est bien une carte bancaire.
3. Le GAB demande au porteur de carte de saisir son code d'identification.
4. Le porteur de carte saisit son code d'identification.
5. Le GAB compare le code d'identification avec celui qui est codé sur la
puce de la carte.
6. Le GAB demande une autorisation au système d'autorisation.
7. Le système d'autorisation donne son accord et indique le solde
hebdomadaire.
8. Le GAB demande au porteur de carte de saisir le montant désiré du
retrait.
9. Le porteur de carte saisit le montant désiré du retrait.
10. Le GAB contrôle le montant demandé par rapport au solde
hebdomadaire.
11. Le GAB demande au porteur de carte s'il veut un ticket.
12. Le porteur de carte demande un ticket.
13. Le GAB rend sa carte au porteur de carte.
14. Le porteur de carte reprend sa carte.
15. Le GAB délivre les billets et un ticket.
16. Le porteur de carte prend les billets et le ticket.
17. Le GAB enregistre la transaction de retrait.
13
Description textuelle du cas d'utilisation:
RETIRER DE L’ARGENT (Représentation de [Link])
Une autre présentation dite de Larman consiste à séparer les
actions des acteurs et du système en deux colonnes:
Action d’acteur Action Système
1. Le porteur de carte introduit sa 2. Le GAB vérifie que la carte
carte dans le lecteur de cartes introduite est bien une carte
du GAB. bancaire.
3. Le GAB demande au porteur de
carte de saisir son code
d'identification.
4. Le porteur de carte saisit son 5. Le GAB compare le code
code d'identification. d’identification avec celui qui est
codé sur la puce de la carte.
6. Le GAB demande une
autorisation au système
d'autorisation global. 14
7. Le système donne son accord et 8. Le GAB de mande au porteur de
indique le solde hebdomadaire. carte de saisir le montant désiré
du retrait.
9. Le porteur de carte saisie le 10. Le GAB contrôle le montant
montant désiré demandé par rapport au solde
hebdomadaire
11. Le GAB demande au porteur de
carte s’il veut un ticket
12. Le porteur de carte demande 13. Le GAB rend sa carte au porteur
un ticket. de carte.
14. Le porteur de carte reprend sa 15. Le GAB délivre des billets et un
carte ticket.
16. Le porteur de carte prend les 17. Le GAB enregistre la transaction
billets et le ticket. de retrait.
15
Enchaînements alternatifs*
Al : code d'identification provisoirement erroné
L'enchaînement Al démarre au point 5 du scénario nominal.
6. Le GAB indique au porteur de carte que le code est erroné, pour la
première ou deuxième fois.
7. Le GAB enregistre l'échec sur la carte.
Le scénario nominal reprend au point 3.
A2 : montant demandé supérieur au solde hebdomadaire
L'enchaînement A2 démarre au point 10 du scénario nominal.
11. Le GAB indique au porteur de carte que le montant demandé est
supérieur au solde hebdomadaire.
Le scénario nominal reprend au point 8.
* Nous distinguons les enchaînements alternatifs (Ax) qui reprennent ensuite à
une étape du scénario nominal des enchaînements d'erreur (Ey) qui terminent
brutalement le cas d'utilisation en échec. L'objectif de l'acteur principal est donc
16
atteint par les scénarios nominaux et alternatifs mais pas par ceux d'erreur.
A3 : ticket refusé
L'enchaînement A3 démarre au point 11 du scénario nominal.
12. Le porteur de carte refuse le ticket.
13. Le GAB rend sa carte au porteur de carte.
14. Le porteur de carte reprend sa carte.
15. Le GAB délivre les billets.
16. Le porteur de carte prend les billets.
17. Le GAB enregistre la transaction de retrait.
Enchaînements d’erreur
El : carte non-valide
L'enchaînement El démarre au point 2 du scénario nominal.
3. Le GAB indique au porteur que la carte n'est pas valide (illisible,
périmée, etc.), la confisque ; le cas d'utilisation se termine en échec.
17
E2 : code d'identification définitivement erroné
L'enchaînement E2 démarre au point 5 du scénario nominal.
6. Le GAB indique au porteur de carte que le code est erroné, pour la
troisième fois.
7. Le GAB confisque la carte.
8. Le système d'autorisation est informé ; le cas d'utilisation se termine
en échec.
E3 : retrait non autorisé
L'enchaînement E3 démarre au point 6 du scénario nominal.
7. Le système d'autorisation interdit tout retrait.
8. Le GAB éjecte la carte ; le cas d'utilisation se termine en échec.
E4 : carte non reprise
L'enchaînement E4 démarre au point 13 du scénario nominal.
14. Au bout de 15 secondes, le GAB confisque la carte.
15. Le système d'autorisation est informé ; le cas d'utilisation se termine
en échec.
18
E5 : billets non pris
L'enchaînement E5 démarre au point 15 du scénario nominal.
16. Au bout de 30 secondes, le GAB reprend les billets.
17. Le système d'autorisation est informé ; le cas d'utilisation se termine
en échec.
E6 : annulation de la transaction
L'enchaînement E6 peut démarrer entre les points 4 et 12 du scénario
nominal.
4 à 12. Le porteur de carte demande l'annulation de la transaction en
cours.
Le GAB éjecte la carte ; le cas d'utilisation se termine en échec.
E4 : carte non reprise
L'enchaînement E4 démarre au point 13 du scénario nominal.
14. Au bout de 15 secondes, le GAB confisque la carte.
15. Le système d'autorisation est informé ; le cas d'utilisation se termine
en échec.
19
Enchaînements alternatifs et d’erreur
représentation de Cockburn
2a. Carte illisible ou non valable :
Le GAB avertit le porteur et éjecte la carte ; le cas d'utilisation
se termine en échec.
2b. Carte périmée :
Le GAB avertit le porteur et confisque la carte ; le cas
d'utilisation se termine en échec.
4a. Délai de saisie du code expiré :
Le GAB avertit le porteur et éjecte la carte ; le cas d'utilisation
se termine en échec.
4-12a. Le porteur annule la transaction :
Le GAB éjecte la carte ; le cas d'utilisation se termine en échec.
5a. Code d'identification erroné pour la première ou deuxième fois:
5al. Le GAB enregistre l'échec sur la carte.
5a2. Le GAB avertit le porteur et le scénario nominal
reprend à l'étape 4.
...etc… 20
Description textuelle du cas d'utilisation:
« RETIRER DE L’ARGENT »
informations optionnelles
Exigences non fonctionnelles
Contraintes Descriptif
Temps de réponse L’interface du GAB doit réagir en l’espace de 2
secondes au maximum. Une transaction nominale
de retrait doit durer moins de 2 minutes
Concurrence Non applicable (mono-utilisateur)
Disponibilité Le GAB est accessible 7j/7, 24h/24 . L’absence de
papier pour les tickets ne doit pas empêcher les
retraits.
Intégrité Les interface du GAB doivent être très robustes
pour prévenir le vandalisme
Confidentialité La vérification du code saisi doit être fiable à 10-6
21
Description textuelle du cas d'utilisation:
« RETIRER DE L’ARGENT »
informations optionnelles
Besoins d’IHM
Les dispositifs d'entrée/sortie à la disposition du porteur
de carte doivent être :
• Un lecteur de carte bancaire.
• Un clavier numérique (pour saisir son code), avec des
touches «validation », « correction » et « annulation ».
• Un écran pour l'affichage des messages du GAB.
• Des touches autour de l'écran pour sélectionner un
montant de retrait parmi ceux qui sont proposés.
• Un distributeur de billets.
• Un distributeur de tickets.
22