UML Diagrammes de Collaboration

Documents pareils
UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

Les diagrammes de modélisation

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

Université de Bangui. Modélisons en UML

IFT2255 : Génie logiciel

Apprendre la Programmation Orientée Objet avec le langage Java (avec exercices pratiques et corrigés)

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

Génie Logiciel Avancé Cours 3 Le modèle à objets

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

Cours STIM P8 TD 1 Génie Logiciel

RTDS G3. Emmanuel Gaudin

Modélisation multi-agents - Agents réactifs

Le Guide Pratique des Processus Métiers

JOURNEES SYSTEMES & LOGICIELS CRITIQUES le 14/11/2000. Mise en Œuvre des techniques synchrones pour des applications industrielles

Chapitre I : le langage UML et le processus unifié

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

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

UML (Paquetage) Unified Modeling Language

M1 : Ingénierie du Logiciel

Business Process Modeling (BPM)

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

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

Table des matières Sources

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Mineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)

Master Informatique et Systèmes. Architecture des Systèmes d Information. 02 Architecture Applicative

Génie logiciel pour le commerce électronique Hiver 2003 Prof.: Julie Vachon

Algorithmique des Systèmes Répartis Protocoles de Communications

Ingénierie des Modèles. Méta-modélisation

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

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Technologie Web. Conception de sites Web. Alexandre Pauchet. INSA Rouen - Département ASI. INSA - ASI TechnoWeb : Rappels UML 1/21

Pascal Brunot Hadrien Cambazard UML FOR BUSINESS INTELLIGENCE PROJECT

RAPPORT DE CONCEPTION UML :

Guichet automatique de banque

REQUEA. v PD 20 mars Mouvements d arrivée / départ de personnels Description produit

SQL SERVER 2008, BUSINESS INTELLIGENCE

UML : DIAGRAMME D ETATS

Méthodes d évolution de modèle produit dans les systèmes du type PLM

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

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

Chapitre 5 Vision Informatique Logique Architectures Applicative et Logicielle

AnaXagora LMS v3.0. Guide d utilisation

Travaux soutenus par l ANR. Jean-François CAPURON (DGA) Bruno LEGEARD (Smartesting)

Systèmes d information et bases de données (niveau 1)

NFP111 Systèmes et Applications Réparties

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

Conception des systèmes répartis

Prêt de série et création de groupes d emprunteurs

Nom de l application

Les attentes du marché

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

Diagrammes de Package, de déploiement et de composants UML

Développement itératif, évolutif et agile

Cours de Génie Logiciel

UDSG CLASSIFICATION DOSSIER DOCUMENTAIRE

Business Process Execution Language

Annexe C Spécification pour les fichiers importés en format XML

GOL502 Industries de services

Cours en ligne Développement Java pour le web

Les 10 Etapes de la conduite de projet

Plateforme AnaXagora. Guide d utilisation

Introduction au datamining

Description de la formation

Communiquer avec un ou plusieurs interlocuteurs. Michel Futtersack, Faculté de Droit, Université Paris Descartes, Sorbonne Paris Cité

Valoriser vos bases de connaissances avec AMI Help Desk. AMI Enterprise Discovery version 3.9

UML (Diagramme de classes) Unified Modeling Language

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

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Présentation et portée du cours : CCNA Exploration v4.0

Prise en compte des ressources dans les composants logiciels parallèles

BES WEBDEVELOPER ACTIVITÉ RÔLE

Urbanisation de système d'information. PLM 4 (Product Lifecycle Management) Préoccupation d'assurance qualité Processus et Procédures

Introduction au Génie Logiciel

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

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

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

TD sur JMS ) Qu est-ce qu un middleware orienté message (MOM)? Quelles différences faites-vous entre un MOM et JMS?

MEGA ITSM Accelerator. Guide de Démarrage

Réussir la modélisation UML des phases amont Techniques de «pré-modélisation» : un pont vers le modèle

openarchitectureware & transformation de modèle Yannick Lizzi Architecte Logiciel itemis France Mail: lizzi@itemis.de

UML est-il soluble dans les méthodes agiles?

Business Intelligence avec Excel, Power BI et Office 365

Workflow et Service Oriented Architecture (SOA)

Université Saint-Joseph. Manuel de pédagogie universitaire. avec le soutien de

Systèmes de recommandation de produits Projet CADI Composants Avancés pour la DIstribution

Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence

Théories comptables. Théories normatives

Agrément des hébergeurs de données de santé. 1 Questions fréquentes

TP3 Intégration de pratiques agiles. 1. User Stories (1) Scénario d intégration agile. En direct-live du château

Messagerie asynchrone et Services Web

Analyse,, Conception des Systèmes Informatiques

Cours de bases de données. Philippe Rigaux

Par : Abdel YEZZA, Ph.D. Date : avril 2011 / mise à jour oct (ajout de la section 3 et augmentation de la section 1)

Modélisation et Simulation

Services OSI. if G.Beuchot. Services Application Services Présentation - Session Services Transport - Réseaux - Liaison de Données - Physique

Formation : Modélisation avec UML 2.0 et Mise en pratique

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

Conception collaborative en STI Retour d expériences, outils, perspectives

Transcription:

UML Diagrammes de Collaboration Collaboration, le lien entre modèle externe et interne Collaboration et cas d utilisationd Collaboration et diagramme de classe

De l analyse l à la conception objet en UML L analyse fonctionnelle conduit à un modèle fonctionnel : comportement externe conforme aux besoins du client. La conception objet conduit à un modèle du comportement interne du logiciel et de sa structuration Des cas d utilisation d aux diagramme de classe Contenu de ce cours Diagrammes de collaboration D un diagramme de collaboration à un diagramme de classes 2

Notion de collaboration Principe de modélisation objet Les objets sont indépendants Chaque objet est responsable de certaines activités Pour réaliser une activité, il faut le concours collaboratif d objetsd Les objets collaborent via des interactions Pas de système hiérarchique : système basé sur l individu l «objet» Collaboration Modélise une activité réalisée par un ensemble d objetsd Peut représenter un scénario d un d cas d utilisation d du point de vue du fonctionnement interne du système 3

Diagrammes de collaboration Types de diagrammes Diagrammes statiques : diagrammes d objetsd Exprime les liens entre objets impliqués dans une collaboration Diagrammes dynamiques : diagrammes de collaboration Interactions entre objets Interactions entre rôles r d objetsd Composants Objets Rôles Classes Acteurs Liens 4

Diagramme d objetsd 5

Diagramme de collaboration entre objets 6

Objets Objet Nom de l objetl Classe de l objet l (si connue) Syntaxe : cetobjet:saclasse (facultatif) État de l objetl Création/destruction États intermédiaires Syntaxe : {new} {destroyed{ destroyed} } {ouvert} {en cours} Acteur : objet «externe» participant à la collaboration Rôle : rôle d un d objet dans une collaboration Syntaxe : cetobjet / sonrole : SaClasse (tous facultatifs) Cas particulier : rôle r unique de l objet l dans la collaboration rôle non explicité 7

Exemple états objets 8

Types de liens Diagrammes d objetsd Liens Interaction = instance d association d entre objets (instance de classe) Diagrammes de collaboration Interaction = message entre objets. Syntaxe graphique Instance d association d : fil simple. Message : flèche ajoutée au fil. 9

Message Représente une demande faite par l objetl émetteur à l objet destinataire Le destinataire doit pouvoir comprendre le message Message = méthode de l objet l destinataire Nécessité d une d association entre les classes correspondantes des objets. Syntaxe graphique Message synchrone Message simple ou asynchrone Retour de message 10

Message : syntaxe détaillée [prédécesseurs "/" ] [ [ "[" garde "]" ] [numéro_de_s[ numéro_de_séquence] [ "*" [ " " ][ "[" itération "]" ] ] ":" ] [résultat ":=" ] message "(" [paramètres] ")» Garde : condition d envoi d du message Numéro de séquence : ordre du message dans la collaboration Prédécesseurs : liste des numéros de séquence des message devant être envoyés avant le message Itération : type d itération d (informel et précisé par * ou //) Message : méthode invoquée Paramètres : paramètre effectifs de la méthode SANS OUBLIER : économie de moyens et KISS 11

Messages et types d objetsd Messages synchrones asynchrones Objets actifs versus passifs passifs : il faut leur envoyer un message pour qu ils s activents actifs : constamment en activité, autonomes = peuvent faire des calcul et envoyer des messages sans être requis par un autre. Message synchrones L envoyeur perd le contrôle et reste actif en attente de réponse Messages asynchrones Envoi de message sans attente de réponse objet actif : garde le contrôle objet passif : perd le contrôle et s inactives 12

Résumé syntaxe 13

Comment procéder? Diagramme de collaboration Attaché à une collaboration d und cas d utilisationd Diagrammes de collaboration et d objetsd avec objecteering Diagramme d objetd Attaché à un package Outils Objecteering Rôle d objet d ou objeto Attribut d un d objet Lien entre objets Dans tous les cas : gestion des accès inter-packages Message sur un lien NB : idem avec «I» pour les diagrammes d objetsd 14

Exemple diagramme collaboration Objecteering 15

Exemple diagramme objets Objecteering 16

Exemple Collaboration Assurance Déclaration de sinistre 17

Des diagrammes de cas d utilisation d aux diagrammes de classe LA question de base de la conception objet. Comment faire pour «trouver» les classes modélisant le fonctionnement interne du logiciel? Un processus semi-formel Partir du fonctionnement externe : les cas d utilisation d et leurs scénarios externes. Pour chaque scénario d un d cas d utilisation, d détailler sur un exemple (en utilisant des rôles r d instances d d objets) d le fonctionnement interne. En généralisant les rôles r instances d objets d et leurs communications, en déduire les classes et leurs relations. Choix d une d architecture : modèle organique. Classes «métiers» Classes d interfaced Classes d «analyse» : utilitaires ou spécifiques au fonctionnement logiciel 18

Transformation très simple : Du scénario aux classes Un objet de scénario => une classe Un message entre objets => une méthode de la classe correspondant à l objetl Reste à détailler Objets : attributs, méthodes Liens entre objets : généralisation, relation, agrégation, dépendance 19

Une autre façon de modéliser une collaboration : diagrammes de séquence Similaire au diagramme de collaboration Une vue orientée temps versus orienté objet Plus facile à lire sur la vie des objets Création Destruction Activité Parallélisme et déroulement du temps Moins fine sur la composition des objets Attributs NB : le même formalisme que celui utilisé pour décrire l interaction Acteur / Système du scénario 20

Exemple Assurance Collaboration par diagramme de séquence Déclaration de sinistre 21

Déclaration de sinistre Exemple Assurance Diagramme de classes 22

Exemple Assurance Diagramme de collaboration avec classes Déclaration de sinistre 23