Sciences de l'ingénieur1ère

Diagrammes de séquence
Exercices corrigés

Maîtrisez les diagrammes de séquence : identification des objets, établissement des interactions, représentation des activations, gestion des conditions et boucles dans la modélisation des systèmes grâce à ces 5 exercices détaillés.

Concepts & Exercices
\(\text{Séquence} = \sum_{i=1}^{n} \text{Message}_i(t_i)\)
Modèle de séquence
Ligne de vie
LL(x) → existence
Représentation temporelle
Activation
A(t) → activité
Période d'activité
Message
M(o_1, o_2) → interaction
Échange entre objets
⏱️
Définition : Un diagramme de séquence montre l'interaction entre objets dans un ordre chronologique.
🔄
Éléments : Lignes de vie, activations, messages (appels, retours, asynchrones).
🔗
Objectif : Représenter le comportement dynamique d'un système à travers les interactions.
✅
Avantages : Compréhension du flot d'informations, identification des responsabilités.
Exercice 1
Identifier les objets d'un système de réservation de billets de train.
Exercice 2
Établir les interactions d'un processus d'authentification utilisateur.
Exercice 3
Représenter les activations dans un système de commande en ligne.
Exercice 4
Gérer les conditions dans un diagramme de séquence de paiement.
Exercice 5
Représenter les boucles dans un processus de mise à jour logicielle.
Corrigé : Exercices 1 à 3
1 Identification des objets
Définition :

Objet : Instance d'une classe qui représente une entité du système participant aux interactions.

Méthode d'identification :
  1. Analyser le scénario ou le cas d'usage
  2. Identifier les entités actives du système
  3. Distinguer les objets manipulateurs des objets manipulés
  4. Représenter chaque objet par une ligne de vie
  5. Attribuer un nom significatif à chaque objet
  6. Positionner les objets de gauche à droite selon leur rôle

Système de Réservation de Billets de Train - Objets

Client
Interface Web
Serveur
Base de données
Sélectionner trajet
Requête trajet
Requête BD
👥
Objets principaux
• Client : Utilisateur du système
• Interface Web : Point d'entrée du système
• Serveur : Traite les requêtes
• Base de données : Stocke les informations
⚙️
Objets secondaires
• Panier : Gère la sélection temporaire
• Paiement : Gère les transactions
• Notification : Envoie des confirmations
• Historique : Conserve les réservations
Étape 1 : Analyse du scénario

Comprendre le processus de réservation de billets pour identifier les participants.

Étape 2 : Identification des entités

Lister toutes les entités qui participent activement au processus.

Étape 3 : Classification des objets

Distinguer les objets manipulateurs (initiateurs) des objets manipulés.

Objets = Entités + Rôles + Interactions
Réponse finale :

Objets identifiés : Client, Interface Web, Serveur, Base de données, avec leurs lignes de vie respectives.

Règles appliquées :

• Signification : Chaque objet doit avoir un rôle clair dans le système

• Identité : Les objets doivent être identifiables et nommés correctement

• Responsabilité : Chaque objet doit avoir des responsabilités bien définies

2 Établissement des interactions
Définition :

Interaction : Échange de messages entre objets représentant une communication ou un appel de méthode.

Méthode d'établissement :
  1. Identifier les points de communication entre objets
  2. Déterminer le sens des messages (synchrone/asynchrone)
  3. Attribuer un nom significatif à chaque message
  4. Respecter l'ordre chronologique des échanges
  5. Représenter les retours de messages si nécessaire
  6. Indiquer les paramètres éventuels des messages

Processus d'Authentification - Interactions

Utilisateur
Interface
Authentification
Base Utilisateurs
Saisir identifiants
Valider()
Rechercher()
Retourner()
💬
Types d'interactions
• Message synchrone : Attente d'une réponse (flèche pleine)
• Message asynchrone : Pas d'attente de réponse (flèche ouverte)
• Message de retour : Indication de fin de traitement (flèche en pointillés)
• Auto-appel : Appel à soi-même (flèche bouclée)
🔄
Flot d'interactions
• Utilisateur → Interface : Saisie des identifiants
• Interface → Authentification : Validation des données
• Authentification → Base Utilisateurs : Recherche du compte
• Base Utilisateurs → Authentification : Retour des résultats
• Authentification → Interface : Indication du résultat
Étape 1 : Identification des communications

Déterminer tous les points où les objets échangent des informations.

Étape 2 : Détermination du sens

Identifier si les messages sont synchrones ou asynchrones.

Étape 3 : Nom des messages

Donner un nom significatif à chaque interaction.

Interactions = Objets + Messages + Ordre chronologique
Réponse finale :

Interactions établies : Saisir identifiants → Valider() → Rechercher() → Retourner().

Règles appliquées :

• Chronologie : Les messages doivent respecter l'ordre temporel

• Sens : Respecter la direction des communications

• Clarté : Les noms des messages doivent être explicites

3 Représentation des activations
Définition :

Activation : Rectangle sur la ligne de vie indiquant la période pendant laquelle un objet est actif.

Méthode de représentation :
  1. Identifier les périodes d'activité des objets
  2. Dessiner un rectangle sur la ligne de vie
  3. Commencer l'activation au moment du message entrant
  4. Terminer l'activation après le traitement complet
  5. Superposer les activations si nécessaire
  6. Indiquer la fin d'activation par un X ou une fin de rectangle

Système de Commande en Ligne - Activations

Client
Panier
Paiement
Stock
Ajouter article
Valider commande
Vérifier stock
Retour stock
⏱️
Caractéristiques des activations
• Début : Activation au moment du message entrant
• Durée : Pendant le traitement du message
• Fin : Après l'envoi d'un message de réponse ou la fin du traitement
• Superposition : Plusieurs activations peuvent se chevaucher
📊
Analyse des activations
• Client : Activé lors de l'ajout d'article et de la validation
• Panier : Activé pendant la gestion de la commande
• Paiement : Activé pendant la validation et le traitement
• Stock : Activé seulement pendant la vérification
Étape 1 : Identification des activations

Déterminer les périodes pendant lesquelles chaque objet est actif.

Étape 2 : Dessin des rectangles

Représenter chaque période d'activité par un rectangle.

Étape 3 : Synchronisation

Aligner les activations avec les messages correspondants.

Activations = Périodes + Rectangle + Synchronisation
Réponse finale :

Activations correctement représentées pour chaque objet selon les interactions.

Règles appliquées :

• Temporalité : L'activation commence avec le message entrant

• Durée : L'activation se termine après le traitement complet

• Visibilité : Les activations doivent être clairement visibles

Corrigé : Exercices 4 à 5
4 Gestion des conditions
Définition :

Condition : Alternative dans le flot d'interaction basée sur une expression booléenne.

Méthode de gestion :
  1. Identifier les points de décision dans le processus
  2. Créer un cadre alt (alternative) pour les conditions
  3. Spécifier la condition dans le cadre
  4. Représenter les branches alternatives
  5. Indiquer les conditions de chaque branche
  6. Rejoindre les branches au point de convergence

Processus de Paiement - Conditions

Condition Expression Branc