User Tools

Site Tools


2015_2016:s2:td:td_sequences

Diagramme de séquence

Commencer par finir le TD de la semaine prochaine.

Vous pouvez y consacrer une heure maximum.

  • Représentez le diagramme de séquence Système correspondant au cas d'utilisation

(3) Un internaute s'inscrit sur le site pour devenir client de la galerie d'art

Nous le décomposons ainsi :

  1. L'internaute saisit son nom, son prénom, son adresse email;
  2. Le système vérifie que ces informations sont bien construites;
  3. Le système enregistre le nouveau client;
  4. Le système signale au client que tout s'est bien passé.
  • Enrichissez le diagramme de séquence Système et visualisez la présence de flots alternatifs par des notes (comme dans le slide 28 par exemple):
    • A1 : Données non valides
    • A2 : Client déjà enregistré

  • Représentez le diagramme de séquence Système correspondant au cas d'utilisation Acheter des oeuvres d’art

Nous partons du principe que l'utilisateur a déclenché ce scénario précédemment, ce qui a eu pour conséquence de créer le panier puis de le connecter au début du scénario ci-après.

  1. Le système propose les oeuvres d’art.
  2. Le client sélectionne des oeuvres d’art.
  3. Chaque oeuvre est placée dans le panier par le système
  4. Le client demande à acheter.
  5. Le contenu du panier est réservé dans les stocks1).
  6. Le système demande au système de paiement l’encaissement du panier.
  7. Le système de paiement valide le paiement et retourne une facture.
  8. Le système enregistre le retrait du stock.
  9. Le système confirme l’achat au client
  • Complétez le diagramme de classe du TD 3 pour prendre en compte les nouveaux objets apparus par votre analyse du diagramme de séquence.
  • Peut-on avoir payé sans que l'oeuvre soit retirée du stock ?
  • Quel est le meilleur moment pour ajouter de la pub sur le site des galerie d'art relativement à ce diagramme de séquence ?

Reverse Engineering et diagramme de séquence

Dans le TD précédent, vous avez implémenté le déplacement du Robot qui déplace son véhicule.

  1. Visualisez cette méthode sous la forme d'un diagramme de séquence.
  2. Repérez la correspondance entre votre code, les lignes de vie et les envois de message.
  3. Qui implémente le message? Qui déclenche l'envoi de message?
  4. Faîtes la même chose pour votre programme de tests.

Je sais identifier les interactions entre les objets de mon système

Essayer de faire cet exercice tout seul ! Pensez à identifier les objets “nouveaux” de votre application.

Le mécanicien présente son badge devant le lecteur de badge. Celui-ci se connecte à l'application qui vérifie auprès du gestionnaire des comptes, que cet employé est autorisé à accéder au système. Si c'est le cas, l'application salue le mécanicien par son nom et son prénom.

Le mécanicien présente le badge associé à la voiture devant le lecteur de badge. Celui-ci se connecte à l'application et demande au gestionnaire des voitures quelle voiture est associée à ce badge, puis à la voiture quelle est la réparation en cours. L'application affiche alors la réparation en cours. Le mécanicien sélectionne la fin de la réparation. Elle est automatiquement enregistrée comme terminée. Le mécanicien est averti que l'action a bien été enregistrée.

  1. Dessiner le diagramme de séquence correspondant à ce scénario. Quels sont les nouveaux objets qui sont apparus? Identifiez-vous de nouvelles méthodes?
  2. Dans le scénario précédent, le mécanicien n'est pas “déconnecté” à la fin du scénario. Imaginez une solution pour le déconnecter automatiquement au bout de 3 minutes qu'il est connecté.
1)
Vous pouvez affiner ici la notion de Stock!!
2015_2016/s2/td/td_sequences.txt · Last modified: 2016/02/29 15:03 by blay