UML - P. Bommel, J.P. Müller, M. Belem 1 Les principales notions des approches objets et de l’UML Partie 2 : Les modèles dynamiques.

Slides:



Advertisements
Présentations similaires
19 septembre 2006 Tendances Logicielles MDD/MDA : Génération dapplications avec IBM Rational Software Architect Jean-Pierre Schoch –
Advertisements

M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 3ème.
UML - Présentation.
Les diagrammes d’interactions
Introduction à UML NFE108 CNAM – LILLE Madame DELECLUSE
UML (Unified Modeling Langage)
UML : GENERALITES Rappel Diagrammes Niveaux de visions
UML : DIAGRAMME D’ACTIVITES
Systèmes d’information
Analyse et Conception des Systèmes d’Informations
Static modeling, Thu G. Falquet, L. Nerima.
Analyse et conception orientée objet
Le diagramme de séquences
Portée, arrimages et intervenants Évolution des méthodes
Sensibilisation a la modelisation
UML Séquence 3 : (Diagramme d’activités)
UML.
Design Patterns en programmation par objets. Plan  Design patterns –De quoi s’agit-il? –Pourquoi faut-il les utiliser?  Design patterns essentiels 
UML : un peu d’histoire H. Lounis.
Nouvelles Technologies Internet & Mobile
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Préambule Hiver 2002 Petko Valtchev.
Unified Modeling Language
UML support à la COO 2ème année IUT Calais-Boulogne Bénédicte Talon
RUP : une méthode itérative. Plan ● Introduction ● Mettre en oeuvre les bonnes pratiques ● RUP et XP pour les petits projets.
TP2: Statistique & Probabilité Intervalle de confiance et test d’hypothèses.
Création d’un site WEB 1 – Un site WEB c’est quoi ? 2 – Questions à se poser avant la construction d’un site WEB 3 – Principes de fonctionnement d’un site.
1 TECHNOLOGIE EN SEGPA Objets techniques instrumentés, didactisés et maquettisés que préconisent les nouveaux programmes Stage 10SEGDES2 du 14 et 15 décembre.
Modélisation d’équilibre général Théorie et Applications Solvay Brussels School of Economics and Management Bruxelles, 14 Avril 2016.
Mediator 9 - Un outil de développement multimédia 3AC Techno/Informatique.
Développement d’application avec base de données Semaine 3 : Modifications avec Entité Framework Automne 2015.
© Logica All rights reserved Veille secteur bancaire – Avril 2012 Emetteur Samuel Le Péchoux Pôle Conseil I-SC Produit2012 : l'avènement du paiement.
Diagrammes de comportement Présentation. Diagramme de séquence  Permet de modéliser les envois de messages entre objets chronologiquement.  Modélisation.
Étapes pour la Programmation du 68HC11 I. Écriture du programme dans un fichier *.a11 II. Le programme est compilé (traduit en langage machine) III. Le.
1 Les bases de données Séance 7 Les fonctions avancées : Opérateurs ensemblistes, Sous-requêtes et transactions.
Maths en Jean : Nager dans le brouillard. Présentation du sujet Une personne part du bord de la plage et nage 500 mètres en ligne droite dans une direction.
Introduction à la programmation
Chapitre 4 Gestion des disques Module S41. Plan du cours 1. Utilisation de l'outil Gestion des disques 2. Utilisation des disques de base 3. Utilisation.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 6 Support de cours rédigé par Bernard COFFIN Université.
 PNF BTS maintenance des véhicules (lycée Diderot Paris 18 mars 2016) 1 PNF BTS maintenance des véhicules lycée Diderot Paris - 18 mars 2016 LE DEVIS.
Initiation aux bases de données et à la programmation événementielle Outil de création des tables Support de TD rédigé par Bernard COFFIN Université Paris.
Automates Programmables Industriels ( ITEEM 2004 ) I.T.E.E.M de BEAULIEU Enseignante : Mme RECHID CHAPITRE 7 Le Logiciel PL7 Présentation - Ergonomie Les.
RÉNOVATION BTS Comptabilité et Gestion 2015 CB2C : un exemple de situation professionnelle Christine Forest Stéphane Bessière Daniel Perrin Toinin.
Un outil spécifique à Moodle pour le calcul des indicateurs d’interaction Présenté par : Tarek DJOUAD Laboratoire LIRIS, Lyon1 Équipe SILEX
Quelle(s) méthodologie(s) pour le suivi des collectifs d’enseignants ? Hussein Sabra et Isabelle Quentin Séminaire avec les collectifs d'enseignants concepteurs.
UML : Unified Modeling Language. Plan ● Introduction ● Diagramme d'activité ● Diagramme de classe.
UML : méthode Processus. Introduction(1) ● Cycles ● Spécification par cas d'utilisation ● Identifier les besoins ● Analyse par cas d'utilisation ● Affiner.
Un guide d’aide à la mise en place d’Agenda 21 d’établissement scolaire Une aventure citoyenne et éducative en vue d’un développement durable S. Lagana.
Le Cycle de vie des organisations Cours G.Zara1. Le cycle de vie des organisation Le cycle de vie des organisations représente la phase qu’une entreprise.
Référentiel du BTS CG Du référentiel de compétences… … à la formation par les compétences …à l’évaluation des compétences 25/11/2014 BTS CG compétences.
Formation à l’utilisation de K-Sup V5 février 2009 CRISI - COM.
Rappel de la méthode :  Choisir un Etat de la technique le plus proche.  Définir le problème technique à résoudre à partir de cet Etat de la technique.
Nouveaux programmes de mathématiques cycles 3 et 4
GRAFCET Chaîne d’information Principes généraux Le GRAFCET
Modes de Marches et d’Arrêts
Human Task Service (2008) Oscar Barrios et François Charoy Human Task Service Service de tâches dans un système de gestion de workflow Oscar Barrios
On the analysis of CMMN expressiveness: revisiting workflow patterns Renata Carvalho Hafedh Mili.
Les limites de l’UML Présenté par : Samah Dekhil 1.
PROJET FIN D’ÉTUDE 4 ÈME ANNÉE OPTION : INGÉNIERIE DES SYSTÈMES AUTOMATISÉ ET CONTRÔLE QUALITÉ « SYSTÈME DE CONTRÔLE ET DE COMMANDE D’ACCÈS À DISTANCE.
Compétences: Capacité d’analyse et de recherche Présentation/Discussion Adjoints des commissions des finances - WAAPAC.
Présenté par  Samira BELHORMA  Imane ZEHHAF. Introduction I. Définitions II. Quand et comment évaluer une compétence? III. Le contexte d’évaluation.
Créer un SmartArt Les graphiques SmartArt permettent de communiquer visuellement de l'information. Il peut s'agir de listes ou de diagrammes simples, mais.
Séminaire Nouveaux Programmes de technologie Paris Diderot 24 mars 2016 Présentation des ressources pour le cycle 3. Lycée Diderot le 24 mars Samuel.
Les applications O.Legrand G. Seront. Les applications Chaque application a son Linux.
Cours de Langage C Récursivité. Objectifs de la séance 11 Connaître la récursivité. Mesurer un temps d’exécution. 2.
INSCRIPTIONS SPORTIVES
Veille technologique Les objets connectés.
1 UNIX AVANCE Yves PAGNOTTE – Janvier – PROCESSUS ET RESSOURCES.
RÉSERVER AVEC ADOC Mode d’emploi 1 Page 1 : Page de garde. Pages 2, 3, 4 et 5 : Mode d’emploi. Page 6 : Rubriques supplémentaires – Règlement. Défilement.
AUTOMATISME Chapitre 2: Le GRAFCET.
Transcription de la présentation:

UML - P. Bommel, J.P. Müller, M. Belem 1 Les principales notions des approches objets et de l’UML Partie 2 : Les modèles dynamiques

UML - P. Bommel, J.P. Müller, M. Belem 2 Les modèles dynamiques Les modèles dynamiques è Permettent de comprendre et de décrire le comportement des objets et leurs interactions è Sont utilisés pour définir ou préciser les comportements è Trois types de représentations  Diagrammes d'états - transitions (dynamique interne à un objet)  Diagrammes d‘activité (dynamique intra ou inter objets)  Diagrammes d'interaction (dynamique entre objets) Diagrammes de séquence Diagrammes de collaboration

UML - P. Bommel, J.P. Müller, M. Belem 3 Modèles dynamiques : PLAN è Diagrammes d’états-transitions è Diagrammes d'activités è Diagrammes d'interaction  Diagrammes de collaboration  Diagrammes de séquences

UML - P. Bommel, J.P. Müller, M. Belem 4 Modèles dynamiques : PLAN è Diagrammes d’états-transitions è Diagrammes d'activités è Diagrammes d'interaction  Diagrammes de collaboration  Diagrammes de séquences

UML - P. Bommel, J.P. Müller, M. Belem 5 Diagramme d’état-transition èObjectif :  Décrire la dynamique de l’objet èÉléments :  État d'un objet valeurs de ses attributs et de ses liens au cours du temps un objet peut changer d'état  Transition Événement (stimuli d'un objet vers un autre objet) Garde (conditions) Actions

UML - P. Bommel, J.P. Müller, M. Belem 6 Notation de base des diagrammes d’état-transition èUne transition est provoquée par un événement Etat initial Etat final Transitions État 1 faire : Activité 1 Événement 1 [Cond1] / Action1 État 2 faire : Activité 2 stimulus

UML - P. Bommel, J.P. Müller, M. Belem 7 Exemples èChauffage à thermostat èCycle de vie État : Veille T° < 15°C État : Chauffe

UML - P. Bommel, J.P. Müller, M. Belem 8 Exemple: Exploitation d’une parcelle

UML - P. Bommel, J.P. Müller, M. Belem 9 Exercices èChoix d’assolement :  A Chaque mise en culture, l’age de culture augmente de 1  l’exploitant affecte une culture de la façon suivante: âge culture = 0 => cultiver(igname) âge culture = 1 => cultiver(maïs) 2 cultiver(sorgho) âge culture = 5 => mettreEnjachère  En jachère, l’âge de la jachère augmente d’un point chaque année  Elle est mise en culture (nouvelle rotation) si l’âge de la jachère atteint 15 ans

UML - P. Bommel, J.P. Müller, M. Belem 10 Exemple : Choix d’assolement èChoix d’assolement :  A Chaque mise en culture, l’age de culture augmente de 1  A cet age, on affecte une culture de la façon suivante: âge culture = 0 => occupation=igname Âge culture = 1 => maïs 2 sorgho âge culture = 5 => jachère  En jachère, l’âge de la jachère augmente d’un point chaque année  La parcelle est cultivée si l’âge de la jachère atteint 15 ans

UML - P. Bommel, J.P. Müller, M. Belem 11 Exemple: Choix d’assolement Rotation des cultures sur une parcelle IgnameMaïsSorgho Jachère 1 ère année 2 ème année 3 ème année 4 ème année 5 ème année 6 ème année 15 ème année

UML - P. Bommel, J.P. Müller, M. Belem 12 Exemple: Choix d’assolement

UML - P. Bommel, J.P. Müller, M. Belem 13 Exercices èChoix d’assolement :  Modifier le digramme en supposant qu’une jachère a une probabilité de 0,55 de se transformer en forêt au delà de 30 années de jachère

UML - P. Bommel, J.P. Müller, M. Belem 14 Les actions èPour les transitions èPour les états Etat AEtat B Event( arg1,... )[ condition ] / Action ^aTargetClass.sendEvent(arg1,...)

UML - P. Bommel, J.P. Müller, M. Belem 15 Exemple d’une machine à café 1 € or 2 € Annule Petit (1€) Grand (2€) Rendu Café Petit Grand 1€ / Rendre(1) 2€ / Rendre(2) 2€ 1€ Annule / Rendre(1) Petit / petitCafé, Rendre(1) Grand 2€ / rendre(1) 1€ Annule 5 événements possibles Annule Petit Grand 1€ 2€ Petit Grand Rendu Entrées Sorties 5 événements possibles 3 actions possibles Etat-1 Etat-0 Etat-2 3 états possibles Petit / Petit café Grand / grandCafé Annule / Rendre(2)

UML - P. Bommel, J.P. Müller, M. Belem 16 Exercice èEvolution d’un mètre carré de terrain :  L’indice d’un couvert végétal est une valeur entière positive : indice ≈ biomasse ≈ age  Chaque année l’age augmente de 1  A cet age, on attribut un état du couvert de la façon suivante: 0 ≤ age sol nu 2 ≤ age pelouse 7 ≤ age lande 15 ≤ age maquis 30 ≤ age => foret Au delà de 50 ans, la forêt a 1 chance sur 2 de disparaître pour laisser place à un sol nu  Faire un diagramme d’état-transition du couvert végétal

UML - P. Bommel, J.P. Müller, M. Belem 17 Solution : Diagramme d’état-transition du couvert végétal sol nu pelouse lande maquis foret incrément age [age >= 15] incrément age [age >=30] incrément age [age>= 7] incrément age [age >= 2] incrément age [age >= 50 et Prob >= 0,5] / age(0)

UML - P. Bommel, J.P. Müller, M. Belem 18 Exercice èFaire un diagramme d’état-transition du cycle de vie du papillon  Les Lepidoptères subissent une 'métamorphose complète’ au cours de leur vie. Ils passent par quatre étapes très distinctes : Oeuf (Ovum), chenille (larve), Chrysalides (nymphéa) et adulte (imago).  l'étape larvaire est habituellement beaucoup plus longue...

UML - P. Bommel, J.P. Müller, M. Belem 19 Solution : Diagramme d’état-transition du cycle de vie du papillon

UML - P. Bommel, J.P. Müller, M. Belem 20 Super état èÉtats d’un feu tricolore èEtats d’une machine à laver

UML - P. Bommel, J.P. Müller, M. Belem 21 Exercice èEvolution d’un mètre carré de terrain :  Transformer le diagramme de l’exercice précédent en considérant le feu : Quelque soit l’état du couvert végétal et quelque soit l’indice, la portion de terrain redevient « sol nu » si le feu survient.

UML - P. Bommel, J.P. Müller, M. Belem 22 Solution : Diagramme d’état-transition du couvert végétal avec feu sol couvert sol nu pelouselande maquisforet i >=7 i >= 15 i >=30 i >=50 [Prob >= 0,5] ]/ indice(0) i >=2 feu / indice(0)

UML - P. Bommel, J.P. Müller, M. Belem 23 Parallélisme èT et U en parallèles èÉvénement E1 diffuse dans T et U èU mémorise dans quel état il était

UML - P. Bommel, J.P. Müller, M. Belem 24 Ex: les états de la Sardinelle

UML - P. Bommel, J.P. Müller, M. Belem 25 Ex: les états de la Sardinelle et suivi dans la filière capture consommable vivant adulte oeufjuvenile age > 2 age > 18 event partenaire [femelle & non fécondée]/ reproduction pêche [taille > 20] mareyeur dispo [Port] pêché consommateur dispo [Marché] à vendrevendu age>30 consommé pas frais

UML - P. Bommel, J.P. Müller, M. Belem 26 Exercice èExploitation d’une parcelle :  Transformer le diagramme suivant en considérant qu’une plantation est cultivée pendant les cinq premières années

UML - P. Bommel, J.P. Müller, M. Belem 27 Exercice: Exploitation de parcelle

UML - P. Bommel, J.P. Müller, M. Belem 28 Modèles dynamiques : PLAN èDiagrammes d’états-transitions è Diagrammes d'activités è Diagrammes d'interaction  Diagrammes de collaboration  Diagrammes de séquences

UML - P. Bommel, J.P. Müller, M. Belem 29 Diagramme d'activités èObjectif:  Décrire un ensemble d’activités  Représenter les actions et leurs enchaînements èPeut représenter  le comportement d'un cas d’utilisation  le comportement interne d'une classe,  le comportement d'une opération  un flux de contrôle entre activités (un algorithme,...)

UML - P. Bommel, J.P. Müller, M. Belem 30 Diagramme d'activités: les éléments è Activités è Transitions entre activités  En fait ces diagrammes peuvent être vus comme une forme simplifiée des diagrammes d'états - transitions (voir chapitre suivant) è (Pseudo) états initial et final è Points de décision et barres de synchronisation è Flots d’objets (branches parallèles de flux, réseau de Pétri) activité état1 État2 évènement

UML - P. Bommel, J.P. Müller, M. Belem 31 Notation de base des diagrammes d'activités èUne activité est une action èUne transition permet de passer d’une activité à une autre Etat initial Etat final Transitions

UML - P. Bommel, J.P. Müller, M. Belem 32 Exemple : diagramme d’activité de la vraie vie

UML - P. Bommel, J.P. Müller, M. Belem 33 Notation de base des diagrammes d'activités

UML - P. Bommel, J.P. Müller, M. Belem 34 Les "couloirs de nages" (swimlanes)

UML - P. Bommel, J.P. Müller, M. Belem 35 Exemple: activités d’un exploitant

UML - P. Bommel, J.P. Müller, M. Belem 36 Exemple: diagramme d’activités d’une parcelle

UML - P. Bommel, J.P. Müller, M. Belem 37 Exemple: activités d’un troupeau èL’excrétion et la recherche de pâturage sont synchrones

UML - P. Bommel, J.P. Müller, M. Belem 38 Swimlane : Culture d’une parcelle cultiver Récolter stocker incrémenterAgeCulture évaluerRendement :Parcelle:Fermier MettreEnJachère [fin saison] incrémenterAgeJachère [parcelle épuisée]

UML - P. Bommel, J.P. Müller, M. Belem 39 Exemple « d’object flow »: Achat de parcelle èParcelle  Pas de « swimlane »  Pas d’activité  Change simplement d’état Demande Parcelle Accepter Proposition payer Proposer parcelle confirmer p:Parcelle [proposée] p:Parcelle [payée] Karim:FermierJoseph:Fermier

UML - P. Bommel, J.P. Müller, M. Belem 40 « Object flow » s: Sardinelle [vivante] s: Sardinelle [pêchée] s: Sardinelle [jetée] :Mareyeur versZonePêche pêcher retourPort chercherMareyeur vendrePoisson jeterPoisson :Pecheur [mareyeur] [pas de mareyeur] versPort cherchePêcheur acheterPoisson déplacerMarché vendrePoisson [pêcheur] [pas de pêcheur] s: Sardinelle [vendue] s: Sardinelle [consommée] èavec  Swimlanes  Points de décision  Barres de synchronisation  Flux d’objets

UML - P. Bommel, J.P. Müller, M. Belem 41 Modèles dynamiques : PLAN è Diagrammes d'activités è Diagrammes d’états-transitions è Diagrammes d'interaction  Diagrammes de collaboration  Diagrammes de séquences

UML - P. Bommel, J.P. Müller, M. Belem 42 Scénarios Diagrammes d'interaction Cas d'utilisation Démarche proposée è S1) Définir et décrire les cas d'utilisation è S2) Pour chaque cas d'utilisation, choisir les scénarios principaux et les décrire : diagrammes de séquence (vue externe) è S3) Construire les diagrammes d'interaction pour chaque scénario : diagrammes de séquence ou de collaboration

UML - P. Bommel, J.P. Müller, M. Belem 43 Cas / scénarios / diagrammes de séquence

UML - P. Bommel, J.P. Müller, M. Belem 44 B C A M1 M2 M3 M4 M6 M5 Diagramme de séquence

UML - P. Bommel, J.P. Müller, M. Belem 45 B C message A 1: M1 2: M2 3: M3 4: M4 6: M6 5: M5 Diagrammes de collaboration

UML - P. Bommel, J.P. Müller, M. Belem 46 La ligne de vie « create » Création par le message «create» Activation de l’objet qui exécute une opération op Destruction par un autre objet :C1 « destroy » op Diagramme de séquence

UML - P. Bommel, J.P. Müller, M. Belem 47 Diagrammes de séquence (4) : itération èTraitements répétés sur "n" instances (noté avec *) èL'itération peut être associée avec une condition  * [condition] équivaut à Tant que [condition] : Scheduler : Forestier : Exploitation : Parcelle * évaluerExploitation valeur * valeur

UML - P. Bommel, J.P. Müller, M. Belem 48 Diagrammes de séquence (4) èType d’envoi de messages  synchrone:  asynchrone:  réflexif:  constructif:  destructif:  alternative:  boucles: [X]mess. [non X]mess. *[X]mess. :Ca  message simple:  le flot d ’exécution est passé par l ’objet A à l ’objet B.  A est alors bloqué jusqu ’à ce que B lui redonne la main

UML - P. Bommel, J.P. Müller, M. Belem 49 Diagrammes de séquence valeur

UML - P. Bommel, J.P. Müller, M. Belem 50 Diagrammes de séquence (7) : Mise en culture d’une parcelle Bommel

UML - P. Bommel, J.P. Müller, M. Belem 51 è Outil de dialogue :  langage de représentation des modèles  graphique et simple  formel et normalisé (OMG) è Outil ouvert  Indépendant des langages de programmation  Pas un processus d'élaboration des modèles  Adaptable (stéréotype) UML: Conclusion

UML - P. Bommel, J.P. Müller, M. Belem 52 Livres UML (1) è Booch Grady, Rumbaugh James, and Jacobson Ivar, The Unified Modeling Language User Guide, , Addison Wesley, Fall 1998, traduit : Le guide de l'utilisateur UML, Eyrolles è Jacobson Ivar, Booch Grady and Rumbaugh James, The Unified Software Development Process, , Addison Wesley, Fall 1998, traduit : Le processus unifié de développement logiciel, Eyrolles è Rumbaugh James, Jacobson Ivar, and Booch Grady, The Unified Modeling Language Reference Manual, X, Addison Wesley, Fall 1998

UML - P. Bommel, J.P. Müller, M. Belem 53 Livres UML (2)  Conallen Jim, Concevoir des applications Web avec UML, Eyrolles,  Douglass Bruce Powell, Doing Hard Time : Developping Real-Time Systems with UML, Addison Wesley,  Eriksson, UML Toolkit, Wiley, 1997  Fowler Martin, UML Distilled, Applying the Standard Object Modeling Language Addison Wesley, 1997  Kettany N et al, De Merise à UML,Eyrolles, 1998  Larman Craig, Applying UML and Patterns,Prentice Hall, 1998  Lee R, Tepfenhart W, UML et C++, Simon et Schuste, 1998  Lopez N, Intégrer UML dans vos projets, Eyrolles, 1997  Muller Pierre-Alain, Modélisation objet avec UML, Eyrolles, 1997  Roques Pascal, Vallée Franck, UML en action, Eyrolles,  Roques Pascal, UML par la pratique, Eyrolles,  Schmuller Joseph, Teach Yourself UML in 24 Hours, Sams Publishing, 1999  Texel Williams, Uses cases combined with Booch/OMT/UML, Prentice Hall, 1998