Le langage UML : Les diagrammes de séquence. Lydie du Bousquet Lydie.du-bousquet@imag.fr



Documents pareils
basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Les diagrammes de modélisation

Cours de Génie Logiciel

Université de Bangui. Modélisons en UML

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Table des matières Sources

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

Cours STIM P8 TD 1 Génie Logiciel

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

Langage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2

Comparaison de trois techniques de modélisation de processus: ADONIS, OSSAD et UML

IFT2255 : Génie logiciel

Information utiles. webpage : Google+ : digiusto/

UML (Paquetage) Unified Modeling Language

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Projet de Veille Technologique

UML : DIAGRAMME D ETATS

Génie logiciel avec UML. Notions sur le langage UML adapté pour les cours du programme Techniques de l informatique

Business Process Execution Language

GOL-502 Industrie de services. Travaux Pratique / Devoir #7

Plan. 1. La planification d un d 2. Méthodes et techniques de planification 3. Conclusion. D. Leclet

Démarches d urbanisation : réorganiser le Système d Information en structurant ses fonctions dans des blocs fonctionnels communicants.

Chapitre I : le langage UML et le processus unifié

Patrons de Conception (Design Patterns)

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Introduction au Génie Logiciel

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

MEGA ITSM Accelerator. Guide de Démarrage

Présentation générale de la méthode orientée objet : O.M.T. (Rumbaugh & al.)

UML (Diagramme de classes) Unified Modeling Language

Gé nié Logiciél Livré Blanc

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.

M1 : Ingénierie du Logiciel

Ingénérie logicielle dirigée par les modèles

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors

Urbanisation des Systèmes d Information Architecture d Entreprise. 04 Architecture du SI : identifier et décrire les services, structurer le SI

Rational Unified Process

Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm)

Le Guide Pratique des Processus Métiers

Nom de l application

Initiation à LabView : Les exemples d applications :

GOL502 Industries de services

RAPPORT DE CONCEPTION UML :

Métriques de performance pour les algorithmes et programmes parallèles

Projet Active Object

CCI Génie Logiciel UFR - IMA. Objectifs du cours d'aujourd'hui. Génie Logiciel Validation par le test. Qu est-ce que tester un programme?

Créer et modifier un fichier d'import des coordonnées approximatives avec Excel

Traduction des Langages : Le Compilateur Micro Java

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Manuel d utilisation. Notes. Page 9-10

Guichet automatique de banque

Cours 1 : introduction

Ordonnancement temps réel

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

NIVEAU D'INTERVENTION DE LA PROGRAMMATION CONCURRENTE

Aide : publication de décisions VS

C est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.

Messagerie asynchrone et Services Web

Présentation. Au programme. Fonctionnement. A l issue de ce module vous devriez...

DÉPLOIEMENT D UN ERP. Cours dispensé pour les L3 MSI Elaboré par : Mehdi M tir 2013/2014 Chapitre 3 : Modélisation des besoins

PLANIFICATION DE PROJET ET METHODES D ORDONNANCEMENT

Info0604 Programmation multi-threadée. Cours 5. Programmation multi-threadée en Java

Gestion de projets logiciels. Xavier Dubuc

Diagramme de classes

Modèle de procédure pour un. traitement efficace des retours

Guide d'utilisation. OpenOffice Calc. AUTEUR INITIAL : VINCENT MEUNIER Publié sous licence Creative Commons

CEP - Complex Event Processing ou Traitement des événements complexes

Le service FTP. M.BOUABID, Page 1 sur 5

Plan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml

Salle de technologie

Designer d escalier GUIDE DE L UTILISATEUR. Stair Designer-1

LOGICIEL KIPICAM : Manuel d installation et d utilisation

Annexe 6. Notions d ordonnancement.

Générer du code à partir d une description de haut niveau

Vers l'orchestration de grilles de PC par les mécanismes de publicationsouscription

ORDONNANCEMENT CONJOINT DE TÂCHES ET DE MESSAGES DANS LES RÉSEAUX TEMPS RÉELS 4. QUELQUES EXEMPLES DU DYNAMISME ACTUEL DU TEMPS RÉEL

Introduction à l informatique temps réel Pierre-Yves Duval (cppm)

Conception, architecture et urbanisation des systèmes d information

Architecture d'entreprise : Guide Pratique de l'architecture Logique

Mise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision

MEGA Designer - Integration. Guide d utilisation

Sommaire. Conduite de projet Méthode d analyse et de conception. Processus unifié. Objectifs d un processus de développement

Le Processus RUP. H. Kadima. Tester. Analyst. Performance Engineer. Database Administrator. Release Engineer. Project Leader. Designer / Developer

Mobyt Intégration par Webservice TABLE DES MATIERES

CNAM - CRA Nancy 2000/2001. Génie Logiciel. Jacques Lonchamp DEUXIEME PARTIE. Les techniques de spécification.

QUELQUES ÉLÉMENTS DU DÉVELOPPEMENT LOGICIEL

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

EXERCICES UML. Modéliser cette situation par un diagramme de cas d utilisation. Consulter planning

les outils de la gestion de projet

MEGA ITSM Accelerator. Guide de démarrage

Guide d'intégration à ConnectWise

Sommaire. G. Pujolle, F. Ravat, C. Soulé-Dupuy, G. Zurfluh

I Stabilité, Commandabilité et Observabilité Introduction Un exemple emprunté à la robotique Le plan Problème...

Mobyt Intégration HTTP TABLE DES MATIERES

NFP111 Systèmes et Applications Réparties

HA2000 RTC Transmetteur téléphonique

Génie Logiciel avec Ada. 4 février 2013

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

CINEMATIQUE DE FICHIERS

Transcription:

Le langage UML : Les diagrammes de séquence Lydie du Bousquet Lydie.du-bousquet@imag.fr 1

Modélisation des interactions Les objets d un système ont un comportement Ils interagissent entre eux Dynamique générale du système 2 diagrammes UML pour représenter les interactions entre les objets Diagramme de séquence Diagramme de communication 2

Séquence vs communication Diagramme de séquences Focalisé sur les aspects temporels Diagramme de communication Focalisé sur la représentation spatiale (Diagramme de collaboration en UML 1) 3

Diagramme de séquence Lire un livre UML pour une explication détaillée des diagrammes de communication 4

Plan 1. Définition 2. Utilisation 3. Objets 4. Ligne de vie 5. Messages 6. Structures de contrôle 5

1. Diagramme de séquence définition Décrit la dynamique du système Plusieurs diagrammes nécessaire pour capturer «toute» la dynamique d un système Un / plusieurs diagramme(s) lié(s) à chaque sousfonction Diagramme de séquence Montre de façon séquentielle Les envois de messages entre objets Éventuellement les flux de données 6

1. Définition: interactions Les objets s envoient des messages entre eux pour interagir Une interaction se traduit par un envoi de message entre objets Envoi de message = appel de méthode A la réception d un message, Un objet devient actif Exécute la méthode du même nom 7

2. Utilisation Documentation des cas d utilisation : description des interactions en des termes proches de l usager, les étiquettes des messages correspondent à des événements se produisant dans le système Représentation des interactions informatiques et répartition des flots de contrôle : le concept de message unifie les formes de communication entre objets (appel de procédure, événement discret, signal,...) 8

3. Objets Entités appartenant au système ou se trouvant à ses limites Ils représentent : acteurs concepts abstraits (cas d utilisation) soit des objets d implantation (interactions informatiques ) Ils sont identifiés par l intermédiaire des cas d utilisation ou des diagrammes de classe. 9

3. Objets : représentation En UML, les objets sont représentés comme suit : Le nom de l objet est composé de son rôle (ou nom) et/ou du nom de la classe instanciée (classe) Le nom est souligné pour indiquer qu il s agit d une instance. 10

4. Ligne de vie d un objet Le diagramme de séquence fait apparaître les instances des classes A chaque instance est associée une ligne de vie Ligne verticale en dessous des objets qui montre Période de temps durant laquelle l objet existe Les actions et réactions de l objet Ses périodes actives / inactives (éventuellement) sa création et/ ou sa destruction 11

4. Ligne de vie 12

4. Ligne de vie Création d un objet un message pointe sur le symbole de l objet. Destruction d un objet sa ligne de vie se termine par une croix en trait épais ( ). 13

5. Messages Les objets communiquent en échangeant des messages représentés sous forme de flèches L ordonnancement horizontal des messages n a aucune signification Les messages sont étiquetés par le nom de l opération ou du signal invoqué. 14

5. Message et activation Une période d activité correspond au temps pendant lequel Un objet effectue une action directe ou indirecte Représentation : bande verticale le long de la ligne de vie de l objet 15

5. Différent types de message message simple Message dont on ne spécifie aucune caractéristique d'envoi ou de réception particulière message minuté (timeout) Bloque l'expéditeur pendant un temps donné (qui peut être spécifié dans une contrainte), en attendant la prise en compte du message par le récepteur L'expéditeur est libéré si la prise en compte n'a pas eu lieu pendant le délai spécifié message synchrone Bloque l'expéditeur jusqu'à prise en compte du message par le destinataire Le flot de contrôle passe de l'émetteur au récepteur (l'émetteur devient passif et le récepteur actif) à la prise en compte du message 16

5. Différent types de message message asynchrone N'interrompt pas l'exécution de l'expéditeur. Le message envoyé peut être pris en compte par le récepteur à tout moment ou ignoré (jamais traité) message dérobant N'interrompt pas l'exécution de l'expéditeur et ne déclenche une opération chez le récepteur que s'il s'est préalablement mis en attente de ce message 17

5. Différent types de message 18

5. Message asynchrone 19

5. Message synchrone 20

6. Structures de contrôle des opérateurs De choix et de boucle : alternative, option, break et loop Contrôlant l envoi en parallèle de messages : parallel et critical region Contrôlant l envoi de messages : ignore, consider, assertion et negative Fixant l ordre d envoi des messages : weak sequencing, strict sequencing 21

Alternative 22

Loop 23

Exemple : DAB 24

Exemple : outil de recherche de carte sur Internet 25

Diagramme de cas d utilisation 26

Diagramme de classe 27

Chercher une adresse 28

Exercice Système de réservation de ressource 1. Traduire 2 scénarios en diagramme de séquence 2. Proposer un diagramme de classe 3. Détailler les 2 scénarios par rapport au diagramme de classe 29

Exercice distributeur de boisson 30

Exercice Achat sur un site marchand Internet 31