Diagrammes de comportement Présentation
Diagramme de séquence Permet de modéliser les envois de messages entre objets chronologiquement. Modélisation dans le cadre d'un cas d'utilisation. Messages Synchrones Asynchrones
Diagramme de séquence Message entre deux objets
Diagramme de séquence Ligne de vie (lifeline)
Diagramme de séquence Rôles et activité
Diagramme de séquence Message de création et de destruction
Diagramme de séquence Période d'activité
Diagramme de séquence Invocation de message réflexif ou récursif
Diagramme de séquence Messages asynchrones
La formalisation des contraintes Notion de « guard » Ajoute de la sémantique au modèle Formalisme [ contrainte(s) ]
Diagramme de séquence Boucle d'envoi de messages
Diagramme de séquence Condition alternative d'envoi de messages (alt)
Diagramme de séquence Condition sans alternative d'envoi de messages
Diagramme de séquence Référence à un autre diagramme de séquence
Référence Le label du diagramme référencé prend la forme suivante : Type diagramme Nom diagramme [ (nom paramètre : type) ] : [ valeur retour : type ] Exemple SD recherche (argument : int) : Objet
Diagramme de séquence Gestion d'exceptions
Diagramme de séquence Gestion d'interactions parallèles
Mise en oeuvre Patron de conception de Jacobson basé sur le modèle MVC Une interface (View) Un contrôleur (Controler) Les objets (niveau analyse) réalisent le cas d'utilisation (Model) Architecture du diagramme En fourchette (fork) En escalier (step)
Diagramme de séquence Modèle en fourchette
Diagramme de séquence Modèle en escalier
Diagramme d'activité Permet de modéliser Workflows Activité métier Logique événementielle Cas d'utilisation
Diagramme d'activité Représentation (icônes) Début, action, fin, décision (alternative), flux divergents, flux convergents
Diagramme d'activité Enrichissement sémantique par les stéréotypes Exemple : contexte événementiel > (conversationnel) >(lien vers un autre diagramme) >(exception) >(page web) >(fenêtre graphique) >(saisie de données)
Diagramme d'activité Exemple : Cas d'utilisation Quand une commande est réceptionnée, chaque ligne détail de la commande est contrôlée pour savoir si les produits sont disponibles en stock. Si c'est le cas, les produits sont affectés à la commande. Si la quantité en stock arrive au seuil d'alerte alors une demande de réapprovisionnement est lancée. Pendant ce temps, le paiement est contrôlé. Si le paiement est OK et que les produits sont disponibles la commande est expédiée au client. Si le paiement n'est pas OK la commande est annulée.
Diagramme d'activité Exemple
Diagramme d'activité Exercice Scénario de base 1. L'utilisateur désire se connecter au système 2. L'utilisateur saisit son login et son mot de passe 3. Le système valide les permissions de l'utilisateur 4. Le menu principal est présenté à l'utilisateur
Diagramme d'activité Exercice (suite) Scénario alternatif 1. En 2 du scénario de base, l'utilisateur désire un nouveau mot de passe. 2. L'utilisateur saisit son login et son ancien et son nouveau mot de passe. 3. Le système valide les permissions de l'utilisateur et continue avec le 4 du scénario de base.
Diagramme d'activité Exercice (suite) Scénario exceptionnel 1. En 3 du scénario de base ou en 2 du scénario alternatif, l'utilisateur entre un login invalide ou un mot de passe incorrecte. 2. Le système répond par un erreur. 3. Le scénario reprend au 2 du scénario de base. Réaliser le diagramme d'activité de ce cas d'utilisation
Diagramme d'état Permet de modéliser Cycle de vie d'objets complexes MonoThread MultiThread
Diagramme d'état Représention (icônes)
Diagramme d'état Exemple
Diagramme de déploiement Permet de modéliser Les relations physiques entre le software et le hardware, en terme de composants. Noeud Représente une unité de calcul (périphérique, machine, etc.). Connexion Représente les chemins de communication entre les composants.
Diagramme de déploiement Permet de modéliser (suite) Composant Représente un module physique de code. Correspond aux packages. Dépendances Représente comment les composants communiquent
Diagramme de déploiement Représentation (icônes)