Exercice I : Diagramme de classes
La Banque:
• Chaque client possède un ou plusieurs comptes. Les comptes sont des comptes
chèques ou des comptes épargne. Un client est caractérisé par son nom, son
adresse…
• Le client peut effectuer des opérations sur ses comptes. Une opération est
caractérisée par un montant, un type (débit / crédit) et une date. Chaque
compte possède un solde (qui est déduit des opérations effectuées sur ce
compte et de l’ancien solde…). De plus les comptes chèque possède un
découvert autorisé.
• Les comptes épargne donnent droit à des versements d’intérêts. Ces intérêts
sont fonction du solde du compte épargne et d’un taux d’intérêt constant de
3,5%. A l’opposé, un compte chèque peut se voir débiter des agios si son solde
est négatif. Le taux d’agios est constant (10%).
Corrigé DC Banque
Exercice II : Diagramme des Cas d’Utilisation
La Banque :
• A la demande d’un client, un employé de banque crée un nouveau
compte. (chèque ou épargne). Si le client est nouveau, il faut d’abord
l’enregistrer.
• Chaque jour, les clients peuvent venir au guichet pour réaliser des
opérations (crédit / débit). Si le débit engendre un nouveau solde
inférieur au découvert autorisé du compte, l’opération est refusée.
Cependant un client peut demander exceptionnellement au chef
d’agence que ce débit exceptionnel soit réalisé.
• S’il accepte, le chef d’agence effectue cette opération de débit
exceptionnel l’après-midi (le matin, il étudie la demande du client en
consultant ses comptes, ses opérations passées…). Ces débits
exceptionnels ne peuvent concerner que des comptes courants.
Exercice II : Diagramme des Cas d’Utilisation (suite)
La Banque :
• Un client peut aussi demander à consulter son compte en venant au
guichet de la banque.
• Tous les jeudis matin, le chef d’agence traite les agios (calcul puis
débit du montant). L’après-midi, il édite des avertissements aux clients
qui ont des comptes à découvert. Tous les mardis matin, un employé
traite les intérêts des comptes épargne (calcul puis crédit du montant).
Le dernier vendredi du mois, un employé édite les relevés de compte
des clients.
• Un client peut venir effectuer au guichet des transferts de compte à
compte. Le client n'effectue aucun traitement directement, il réalise ses
opérations bancaires par le biais des employés de la banque.
Exercice II : Diagramme des Cas d’Utilisation (corrigé)
ouvrir compte
transferer
cloturer compte
triater interets
editer relevés
debiter compte
<<include>>
débiter exceptionnel
éditer avertissements
traiter agios
<<include>>
employé
créer client
<<extend>>
chef agence
crediter compte
<<include>>
<<include>>
employé
consulter compte
<<include>>
<<include>>
<<include>>
<<include>>
Exercice III : Diagramme d’objets
La Banque :
• Un relevé de compte rassemble plusieurs informations:
- Le détail du client (nom, adresse…)
- Le détail de chaque compte du client (numéro, ancien solde, solde
actuel…)
- Le détail de chaque opération effectuée sur chaque compte (montant,
type, date..)
- Représenter par un diagramme d’objets le relevé de compte du mois de
janvier du client Martin.
Exercice III : Diagramme d’objets (corrigé)
rcMartinJanvier : ReleveCompte
c : Compte
o : Operation
martin : Client
rcMartinJanvier : ReleveCompte
c : Compte o : Operation
martin : Client
Exercice IV : Diagramme de séquence
• Réaliser le diagramme de séquence du scénario nominal de l’UC
«Traiter les intérêts ».
• Compléter le diagramme des classes précédent au vu des messages
échangés dans ce diagramme de séquence.
• Réaliser le diagramme de collaboration équivalent à ce diagramme de
séquence.
Exercice IV : Diagramme de séquence (corrigé)
employe
: compteEpargne : Operations
traiterInterets ( )
Pour tous les
comptes epargne i
Fin pour
si := i.getSolde ( )
opération de
classe...
mInt := si * compteEpargne.getTauxInterets ( )
i.crediter (mInt)
<<new (mInt, credit) >>
Exercice IV : Diagramme de séquence (corrigé)
Exercice IV : Diagramme de séquence (corrigé)
employe : compteEpargne
: Operations
2: si := i.getSolde ( )
3: mInt := si * compteEpargne.getTauxInterets ( )
4: i.crediter (mInt)
1: traiterInterets ( )
5: <<new (mInt, credit) >>
Exercice V : Diagramme d’états-transitions
• Réaliser le diagramme d’états-transitions de la classe « Compte ».
• Identifier d’abord les états, puis les transitions et enfin les actions.
• Modifier le diagramme de classes si nécessaire
Exercice V : Diagramme d’états-transitions (corrigé)
ouvert
crediteur
débiteur
event credit( mt )/ crediter (mt)
event debit( mt )[ (getSolde ( ) - mt ) >= decouvertAutorise ]/ debiter (mt)
event debit exceptionnel( mt )[ ( getSolde( ) - mt ) < decouvertAutorise) ET compteCheque ]/ debiterExceptionnel (mt)
fermeture compte[ getSolde( ) = 0 ]
ouverture compte( client ) / New
(versementInit)
New (versementInit) va invoquer crediter
(versementInit) qui va lui-même invoquer
^Operation.New(versementInit, credit)
crediteur
débiteur
getSolde ( ) >= 0
getSolde ( ) < 0 ET
compteCheque
Exercice V : Diagramme de classes (corrigé)
Exercice VI : Diagramme d’activités
• Réaliser le diagramme d’activités de l’UC « transférer ».
• Contrairement au diagramme de séquence qui ne montre
qu’une execution possible de l ’UC (un scénario), le diagramme
d’activités montre tous les combinaisons possibles d’execution
de l’UC (y compris les cas d’erreur).
Exercice VI : Diagramme d’activités (corrigé)
consulter solde
compte A
débiter compte
A
crediter compte
B
A : Compte
[ sinon ]
transfert réussi
debit sur A : Operations
[créé]
crédit sur B : Operations
[créé]
A : Compte
demander
transfert
décider si dmde débit
exceptionnel
[ (A.getSolde ( ) - mt ) <
decouvertAutorise ET compte A cheque ]
oui
non
client
chef d'agence
employe
transfert réussi
consulter
compte A
débiter exceptionnel
compte A
créditer B
A : Compte
accord[ compte
cheque ]
oui
transfert abandonné
refus
non
débit exceptionnel
sur A : Operations
[créé]
crédit sur cpte B :
Operations
[créé]
Exercice VII : Diagramme de composants
• Réaliser le diagramme de composants correspondant au diagramme de
classes précédent (chaque classe devient un composant).
• On prend le cas d’un développement en Java.
Exercice VII : Diagramme de composants (corrigé)
clients
compte
compteCheque compteEpargne
operations
releveComptes
Exercice VIII : Diagramme de déploiement
• Réaliser le diagramme de déploiement de l’agence bancaire en
considérant les informations suivantes:
– Chaque guichetier (ils sont 3) dispose d’un PC fonctionnant sous
Windows 2000 Professional.
– Chacun de ces PC est relié au serveur de l’agence sur lequel sont
stockés les composants du diagramme précédent. Le serveur est
relié à une puissante imprimante laser commune.
– Le chef d’agence possède un PC fonctionnant sous Windows 2000
Server. Ce PC est connecté au serveur de l’agence, au serveur du
siège départemental de la banque et à une imprimante personnelle.
Exercice VIII : Diagramme de déploiement (corrigé)
Imprimante laser en
réseau
ce noeud contient tous les
composants logiciels
PC Chef d'agence
<<Windows 2000 Server>>
serveur d'agence
PC guichetier
<<Windows 2000 Pro>>
Imprimante
personnelle
Serveur siege
FIN
Cliquez ici pour revenir à la page index

ExosBanqueCorriges.ppt

  • 1.
    Exercice I :Diagramme de classes La Banque: • Chaque client possède un ou plusieurs comptes. Les comptes sont des comptes chèques ou des comptes épargne. Un client est caractérisé par son nom, son adresse… • Le client peut effectuer des opérations sur ses comptes. Une opération est caractérisée par un montant, un type (débit / crédit) et une date. Chaque compte possède un solde (qui est déduit des opérations effectuées sur ce compte et de l’ancien solde…). De plus les comptes chèque possède un découvert autorisé. • Les comptes épargne donnent droit à des versements d’intérêts. Ces intérêts sont fonction du solde du compte épargne et d’un taux d’intérêt constant de 3,5%. A l’opposé, un compte chèque peut se voir débiter des agios si son solde est négatif. Le taux d’agios est constant (10%).
  • 2.
  • 3.
    Exercice II :Diagramme des Cas d’Utilisation La Banque : • A la demande d’un client, un employé de banque crée un nouveau compte. (chèque ou épargne). Si le client est nouveau, il faut d’abord l’enregistrer. • Chaque jour, les clients peuvent venir au guichet pour réaliser des opérations (crédit / débit). Si le débit engendre un nouveau solde inférieur au découvert autorisé du compte, l’opération est refusée. Cependant un client peut demander exceptionnellement au chef d’agence que ce débit exceptionnel soit réalisé. • S’il accepte, le chef d’agence effectue cette opération de débit exceptionnel l’après-midi (le matin, il étudie la demande du client en consultant ses comptes, ses opérations passées…). Ces débits exceptionnels ne peuvent concerner que des comptes courants.
  • 4.
    Exercice II :Diagramme des Cas d’Utilisation (suite) La Banque : • Un client peut aussi demander à consulter son compte en venant au guichet de la banque. • Tous les jeudis matin, le chef d’agence traite les agios (calcul puis débit du montant). L’après-midi, il édite des avertissements aux clients qui ont des comptes à découvert. Tous les mardis matin, un employé traite les intérêts des comptes épargne (calcul puis crédit du montant). Le dernier vendredi du mois, un employé édite les relevés de compte des clients. • Un client peut venir effectuer au guichet des transferts de compte à compte. Le client n'effectue aucun traitement directement, il réalise ses opérations bancaires par le biais des employés de la banque.
  • 5.
    Exercice II :Diagramme des Cas d’Utilisation (corrigé) ouvrir compte transferer cloturer compte triater interets editer relevés debiter compte <<include>> débiter exceptionnel éditer avertissements traiter agios <<include>> employé créer client <<extend>> chef agence crediter compte <<include>> <<include>> employé consulter compte <<include>> <<include>> <<include>> <<include>>
  • 6.
    Exercice III :Diagramme d’objets La Banque : • Un relevé de compte rassemble plusieurs informations: - Le détail du client (nom, adresse…) - Le détail de chaque compte du client (numéro, ancien solde, solde actuel…) - Le détail de chaque opération effectuée sur chaque compte (montant, type, date..) - Représenter par un diagramme d’objets le relevé de compte du mois de janvier du client Martin.
  • 7.
    Exercice III :Diagramme d’objets (corrigé) rcMartinJanvier : ReleveCompte c : Compte o : Operation martin : Client rcMartinJanvier : ReleveCompte c : Compte o : Operation martin : Client
  • 8.
    Exercice IV :Diagramme de séquence • Réaliser le diagramme de séquence du scénario nominal de l’UC «Traiter les intérêts ». • Compléter le diagramme des classes précédent au vu des messages échangés dans ce diagramme de séquence. • Réaliser le diagramme de collaboration équivalent à ce diagramme de séquence.
  • 9.
    Exercice IV :Diagramme de séquence (corrigé) employe : compteEpargne : Operations traiterInterets ( ) Pour tous les comptes epargne i Fin pour si := i.getSolde ( ) opération de classe... mInt := si * compteEpargne.getTauxInterets ( ) i.crediter (mInt) <<new (mInt, credit) >>
  • 10.
    Exercice IV :Diagramme de séquence (corrigé)
  • 11.
    Exercice IV :Diagramme de séquence (corrigé) employe : compteEpargne : Operations 2: si := i.getSolde ( ) 3: mInt := si * compteEpargne.getTauxInterets ( ) 4: i.crediter (mInt) 1: traiterInterets ( ) 5: <<new (mInt, credit) >>
  • 12.
    Exercice V :Diagramme d’états-transitions • Réaliser le diagramme d’états-transitions de la classe « Compte ». • Identifier d’abord les états, puis les transitions et enfin les actions. • Modifier le diagramme de classes si nécessaire
  • 13.
    Exercice V :Diagramme d’états-transitions (corrigé) ouvert crediteur débiteur event credit( mt )/ crediter (mt) event debit( mt )[ (getSolde ( ) - mt ) >= decouvertAutorise ]/ debiter (mt) event debit exceptionnel( mt )[ ( getSolde( ) - mt ) < decouvertAutorise) ET compteCheque ]/ debiterExceptionnel (mt) fermeture compte[ getSolde( ) = 0 ] ouverture compte( client ) / New (versementInit) New (versementInit) va invoquer crediter (versementInit) qui va lui-même invoquer ^Operation.New(versementInit, credit) crediteur débiteur getSolde ( ) >= 0 getSolde ( ) < 0 ET compteCheque
  • 14.
    Exercice V :Diagramme de classes (corrigé)
  • 15.
    Exercice VI :Diagramme d’activités • Réaliser le diagramme d’activités de l’UC « transférer ». • Contrairement au diagramme de séquence qui ne montre qu’une execution possible de l ’UC (un scénario), le diagramme d’activités montre tous les combinaisons possibles d’execution de l’UC (y compris les cas d’erreur).
  • 16.
    Exercice VI :Diagramme d’activités (corrigé)
  • 17.
    consulter solde compte A débitercompte A crediter compte B A : Compte [ sinon ] transfert réussi debit sur A : Operations [créé] crédit sur B : Operations [créé] A : Compte demander transfert décider si dmde débit exceptionnel [ (A.getSolde ( ) - mt ) < decouvertAutorise ET compte A cheque ] oui non client chef d'agence employe
  • 18.
    transfert réussi consulter compte A débiterexceptionnel compte A créditer B A : Compte accord[ compte cheque ] oui transfert abandonné refus non débit exceptionnel sur A : Operations [créé] crédit sur cpte B : Operations [créé]
  • 19.
    Exercice VII :Diagramme de composants • Réaliser le diagramme de composants correspondant au diagramme de classes précédent (chaque classe devient un composant). • On prend le cas d’un développement en Java.
  • 20.
    Exercice VII :Diagramme de composants (corrigé) clients compte compteCheque compteEpargne operations releveComptes
  • 21.
    Exercice VIII :Diagramme de déploiement • Réaliser le diagramme de déploiement de l’agence bancaire en considérant les informations suivantes: – Chaque guichetier (ils sont 3) dispose d’un PC fonctionnant sous Windows 2000 Professional. – Chacun de ces PC est relié au serveur de l’agence sur lequel sont stockés les composants du diagramme précédent. Le serveur est relié à une puissante imprimante laser commune. – Le chef d’agence possède un PC fonctionnant sous Windows 2000 Server. Ce PC est connecté au serveur de l’agence, au serveur du siège départemental de la banque et à une imprimante personnelle.
  • 22.
    Exercice VIII :Diagramme de déploiement (corrigé) Imprimante laser en réseau ce noeud contient tous les composants logiciels PC Chef d'agence <<Windows 2000 Server>> serveur d'agence PC guichetier <<Windows 2000 Pro>> Imprimante personnelle Serveur siege
  • 23.
    FIN Cliquez ici pourrevenir à la page index