TD3-Diagramme de Sequence
TD3-Diagramme de Sequence
TD3-Diagramme de Sequence
TD Diagramme de séquence
Exercice 1 : Types de messages
1. Quand un courrier électronique est envoyé par l'émetteur, celui-ci ne veut pas attendre
que le destinataire l'ait reçu et il n'y a pas d'intermédiaire. Peut-on utiliser un message
synchrone ou asynchrone ? Complétez la figure ci-dessous par des flèches représentant
des messages.
Exercice 1 : Types de messages
1. Un message asynchrone est indiqué ici.
Exercice 1 : Types de messages
2. Est-ce que transmettre est une opération ou un signal ? Dans tous les cas, donnez des
éléments d'un diagramme de classe cohérent avec le diagramme de séquence.
• Un signal est un type de message pouvant être échangé entre deux objets. Les signaux
sont utilisés pour représenter les messages asynchrones. Un signal peut transporter des
données, spécifiées au moyen des paramètres du signal.
3. Elaborer le diagramme
de séquence du scénario
alternatif?
Exo 1 : Diagramme de séquence système (Forme simplifiée)
On a deux diagrammes de séquences. Chaque diagramme permet de décrire un scénario
du cas d’utilisation "Acheter un billet en utilisant une borne automatique":
• flot d’événement principal (déroulement nominal)
• flot d événements alternatifs (changement de la gare de départ)
3. Elaborer un seul diagramme de séquence qui regroupe les deux scénarios (nominal et
alternatif) en utilisant les fragments combinés?
Exo1 : Diagramme de séquence d’objets (Borne automatique)
1. Modifier le diagramme de séquence simplifié en insérant les objets potentiels (classes),
à la place de l’objet «système»
2. compléter les messages nécessaires à la description du fonctionnement du cas
d’utilisation « Acheter un billet de train en utilisant la borne automatique »
Forme détaillée d’un DS : éclatement du système en classes
Dans la forme simplifiée d’un diagramme de séquence, le système est vu comme une
boîte noire. Sa forme détaillée permet de :
• mettre en évidence les différents composants et classes du système,
• décrire plus précisément les interactions entre les objets.
• Responsabilité (appelée aussi service) : description de haut niveau de la raison d’être d’une
classe, qui décrit l’un des objectifs attendus de la classe au sein du système ;
• Collaboration : interaction de la classe potentielle avec d’autres classes du système nécessaire
à la réalisation d’une responsabilité.
Dans le cas d’utilisation "acheter un billet de train", on note un ensemble de classes potentielles à
priori nécessaires au bon fonctionnement du système : Système, Clavier, Écran, Imprimante, Trajet.
Eclatement du système: Recherche des classes
Au final, pour chaque classe analysée on doit avoir :
• Une ou plusieurs responsabilité(s) bien définie(s), sans doublon avec les responsabilités d’une autre classe ;
• Au moins une collaboration avec une autre classe pour l’une ou l’autre de ses responsabilités.
Exo 1 : Diagramme de séquence d’objets
Exo1 : Diagramme de séquence d’objets « Borne automatique »
1. Ajouter d’autres classes potentielles « card reader » et « coin reader » par exemple?
2. Ajouter des fragments combinés au DS Objet de la borne automatique?
3. Elaborer le diagramme de séquence d’objets détaillé
Eclatement du système: Recherche des classes
• Autres classes potentielles : LecteurCarteBleue (lit les infos de la CB), Lecteur de Billet, …etc.
LecteurCarteBlue
Attendre le message indiquant le mode de paiement par CB avec le montant du billet Système
(paramètre)
Attendre l’insertion de la carte bancaire Utilisateur
Valide la carte (date expiration, numéro et type de la carte) Système
Attendre le code saisi par l’utilisateur Utilisateur
Valide transaction (code-pin, code-carte, montant) S.A Banque
Transmettre le retour du SB (imprimer, msg erreur) Système
Exo2 : Guichet Automatique de Billets (GAB)
• Le GAB offre les services suivants :
• Distribuer de l’argent à tout porteur de carte bancaire (CB visa ou de la banque)
• Consultation du solde, dépôt en numéraire et dépôt de chèques pour le clients de la banque
porteurs de la carte de la banque
• Il faut également savoir que :
• Toutes les transactions sont sécurisées
• Il est nécessaire parfois de recharger le GAB en argent, en papier pour l’impression des
tickets, récupérer les chèques déposés, les cartes avalées et les numéraires déposés … etc.
• T.A.F
1. Identification des acteurs du GAB (principaux, secondaires)
2. Identification des cas d’utilisation
3. Diagramme des cas d’utilisation
4. Documentation du cas d’utilisation “Retirer de l’argent avec une carte visa"
Exo 2 : Diagramme de cas d’utilisation du GAB (Version: 2.2)
Quelques améliorations:
1. Les associations ne sont pas
unidirectionnel
2. Ajout du UC « S’authentifier»
3. Ajout des UCs (acteur opérateur de
maintenance)
• Recharger distributeur papier,
• Recharger distributeur
monnaie,
• récupérer numéraires déposés,
Exo2: Diagramme de cas d’utilisation du GAB (Version: 2.3)
Exo2: Documentation des cas d’utilisation
Scénario nominal(UC: Retirer de l’argent avec une carte bancaire):
1. Le porteur de CB introduit la carte dans le lecteur du GAB
2. Le GAB vérifie que la carte introduite est bien une carte Visa
3. Le GAB demande au porteur de saisir son code d’identification
4. Le porteur saisit son code d’identification
5. Le GAB compare le code saisi avec celui inscrit dans la puce de la carte
6. Le GAB demande une autorisation au système d’autorisation (SA Visa)
7. Le SA Visa donne son accord en indiquant le solde hebdomadaire
8. Le GAB demande au porteur de CB d’indiquer le montant souhaité
9. Le porteur saisit le montant
10. Le GAB contrôle le montant demandé par rapport au solde et le montant maximal permis
11. Le GAB demande au porteur de CB s’il veut un ticket
12. Le porteur de CB demande un ticket
13. Le GAB rend la carte au porteur de CB
14. Le porteur de CB reprend sa carte
15. Le GAB délivre les billets et un ticket
16. Le porteur de CB prend les billets et le ticket.
Exo2: Détailler un cas d’utilisation du système GAB avec un DSS
Notez la contrainte
temporelle sur la réponse
du système d’autorisation.
Exo2: Elaborer le diagramme de séquence objet du système GAB?
1. Ajouter d’autres fragments combinés (opt, alt, ref,…) au DS Objet du système GAB?
2. Elaborer le diagramme de séquence d’objets détaillé
Diagramme d’activités
Ce diagramme représente la
dynamique globale du GAB du
point de vue de l’acteur Client
banque, en représentant les
interactions entre ses cas
d’utilisation:
Tout d’abord le processus
d’authentification est représenté,
suivi du choix du type de
transaction : retrait, consultation
ou dépôt…
Un acteur adhérent peut emprunter un exemplaire d'une œuvre donnée. L'emprunt se fait de la façon
suivante : la méthode emprunter est appelée avec un objet de classe Adhérent donné en argument ; s'il
reste des exemplaires dans la bibliothèque, l'un des exemplaires associés à l'œuvre est extrait via la
méthode extraireExemplaire, une instance de la classe Prêt est créée, puis l'exemplaire extrait de la
bibliothèque est attribué à l'adhérent grâce à l'opération attribuer. S'il restait un exemplaire, l'œuvre
retourne « OK » et dans le cas contraire, elle retourne « PasOK ».Donner le diagramme de séquence
correspondant.
1. Donner le diagramme de séquence correspondant.
2. Donner le code source (Java ; C++) correspondant au diagramme de classes?