La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Notation UML. Sommaire Historique La Modélisation Axe Statique Axe Dynamique Références NOTATION UMLNOTATION UML.

Présentations similaires


Présentation au sujet: "Notation UML. Sommaire Historique La Modélisation Axe Statique Axe Dynamique Références NOTATION UMLNOTATION UML."— Transcription de la présentation:

1 Notation UML

2 Sommaire Historique La Modélisation Axe Statique Axe Dynamique Références NOTATION UMLNOTATION UML

3 Historique

4 BOOCH PionnierPionnier de l Orienté-Objet –Article en 1981: Object Oriented Development méthode Ada –Au début, méthode pour le développement d applications en Ada pour le Department of Défense C++ –Etendue au C++ Distingue 2 niveaux: –Logique Diagrammes de classes Diagramme dinstance Diagramme états/transitions –Physique Diagrammes de modules Diagramme de processus Historique Les Principales Méthodes Objet NOTATION UMLNOTATION UML Grady Booch

5 OMT OMTObject Modeling Technique –Livre de James Rumbaugh (1991) 3 axes –Statique –Dynamique –Fonctionnel 4 phases de modélisation –Analyse –Conception Système –Conception Objet –Implantation Un article signe J. Rumbaugh parait chaque mois dans JOOP Historique Les Principales Méthodes Objet NOTATION UMLNOTATION UML James Rumbaugh

6 OOSE OOSEObject Oriented Software Engineering Objectory –Souvent appelée Objectory 5 modèles –Besoins –Analyse –Conception –Implantation –Test 3 types d objets (MVC en Design Paterns) –entités –contrôles –interfaces Use CasesNotion de Cas dUtilisation: Use Cases Historique Les Principales Méthodes Objet NOTATION UMLNOTATION UML Ivar Jacobson

7 Méthodes Objets 50 méthodesEn 1994, plus de 50 méthodes OO –Fusion, Shlaer-Mellor, ROOM, Classe-Relation, Wirfs-Brock, Coad- Yourdon, MOSES, Syntropy, BOOM, OOSD, OSA, BON, Catalysis, COMMA, HOOD, Ooram, DOORS... méta-modèles se ressemblentLes méta-modèles se ressemblent de plus en plus notations graphiquesdifférentesLes notations graphiques sont toutes différentes standardsLindustrie a besoin de standards Historique Les Principales Méthodes Objet NOTATION UMLNOTATION UML

8 Naissance dUML Booch93, OMT : Booch93, OMT-2 leaders –Les 2 méthodes sont leaders sur le marché proches –Elles sont de plus en plus proches Octobre 1994 –J. RumbaughG. BoochRational –J. Rumbaugh (OMT) rejoint G. Booch chez Rational –Annonce de lunification des deux méthodes Méthode UnifiéeOctobre 1995: Méthode Unifiée v0.8 Ivar Jacoson RationalFin 1995: le fondateur d Objectory, Ivar Jacoson, rejoint à son tour Rational SoumissionOMGJanvier 97 : Soumission à lOMG de la version UML 1.0 –OMG: Object Management Group Organisme à but non lucratif fondé en 1989 Plus de 700 entreprises y adhèrent Connu pour la norme CORBA UML 1.1Septembre 97 : UML 1.1 La Convergence vers UML NOTATION UMLNOTATION UML Historique

9 Conclusion Historique La Convergence vers UML NOTATION UMLNOTATION UML UMLmeilleurUML: Prendre le meilleur de chacune des méthodes –OOSEUse Cases –OOSE (Jacobson): Use Cases –OMTAnalyse –OMT (Rumbaugh): Analyse –Booch: Conception, Architecture domaine publicUML est dans le domaine public marchéSoutenu par le marché –Microsoft, HP, Oracle, IBM...

10 La Modélisation

11 UML ? La Modélisation Définition NOTATION UMLNOTATION UML notation, pas une méthodeEst une notation, pas une méthode langageEst un langage de modélisation objet toutesConvient à toutes les méthodes objets –Unified Software Development Process –Catalysis tousConvient à tous les langages objets –C++ (Héritage multiple, Template) –Java (Interface) –SmallTalk

12 Pourquoi Modéliser La Modélisation Pourquoi NOTATION UMLNOTATION UML Propos tenus par Grady Booch « Dog House » –clous, planches, marteau, scie « House for your Family » plans, fondation, lumière, chauffage, plomberie, équipe –clous, planches, marteau, scie, plans, fondation, lumière, chauffage, plomberie, équipe « High-Rise Office Building » –maquette, planning, plusieurs équipes (communication), parallèlisation des taches, spécialistes, machines

13 Processus de développement Cycle de développement NOTATION UMLNOTATION UML UML ne définit pas de processus standard de dévelopementUML ne définit pas de processus standard de dévelopement –Ce nest le but ni d UML, ni de l OMG restent applicablesCeux de Booch, OMT, et OOSE restent applicables itératifincrémentalProcessus itératif et incrémental –Segmentation du travail –Les premières itérations sont des prototypes The Unified Software Development Process (addison-Wesley, 1999) La Modélisation

14 Axe de Modélisation Cycle de développement NOTATION UMLNOTATION UML Statique DynamiqueFonctionnel Diagramme de Classes Diagramme dObjets Diagramme de Composants Diagramme de Déploiement Diagramme de Use Case Diagramme d'Etats-Transitions Diagramme d'Activité Diagramme de Séquence Diagramme de Collaboration La Modélisation

15 Les 4+1 Vues Cycle de développement NOTATION UMLNOTATION UML La Modélisation Design View Implementation View Process View Deployment View Use Case View Composant Fichiers Source => Configuration du système Classes Interfaces Collaboration => Les services du systèmes Thread Process Concurrence Synchronisation => Performance du système Architecture Hardware Distribution => Topologie du système => Comportement du système

16 L Axe Statique

17 Notation de base ClasseClasse –Une description dun ensemble dobjets qui partage les mêmes attributs, opérations, méthodes, relations et contraintes ObjetObjet –Une entité avec une limite et une identité bien définies qui encapsule de l'état et du comportement. Létat est représenté par des attributs et des relations, le comportement est représenté par des opérations et des méthodes. Un objet est une instance dune classe. L Axe Statique Classes et Objets NOTATION UMLNOTATION UML Objet de type Classe Classe

18 Attribut AttributpropriétéAttribut = propriété nommée d une classe SyntaxeSyntaxe –visibilité nom : type = valeur initiale VisibilitéVisibilité –+ public –# protégé –- privé – package Attribut de classeAttribut de classe portée standardobjet –la portée standard dun attribut est limité à un objet portéeclasseattribut de classe$souligné –quand cette portée sapplique à la classe elle même, on parle dattribut de classe (représenté par le symbole $ ou souligné) Attribut dérivéAttribut dérivé déduitautres attributs / –attribut qui peut être déduit dun ou plusieurs autres attributs (représenté par le symbole /) L Axe Statique Classes et Objets NOTATION UMLNOTATION UML

19 Méthode MéthodeserviceMéthode = service que l on peut demander à un objet pour réaliser un comportement SyntaxeSyntaxe –visibilité nom (paramètres) : type retour Mêmes notions que lattribut –visibilité –méthode de classe –méthode dérivée L Axe Statique Classes et Objets NOTATION UMLNOTATION UML

20 Notation Complète L Axe Statique Classes et Objets NOTATION UMLNOTATION UML Visibilité Static Dérivé Paramètre Retour Initialisation Nom de la Classe } } Attributs Méthodes

21 Définition L Axe Statique Associations NOTATION UMLNOTATION UML AssociationAssociation connexion –Exprime une connexion sémantique bi-directionnelle entre classes –Abstraction des liens qui existent entre objets sensflêche –Le sens d une association peut-être précisé par une flêche Association binaire n-aireAssociation binaire = Association entre 2 classes. Cas particulier d association n-aire Rôle = rôle joué par une classe dans une association nombreMultiplicité = indique le nombre dinstances d une classe qui peut être mise en relation avec une seul instance de la classe associée –1: obligatoire – 0..1: optionnel – 0..* ou *: quelconque – 1..*: au moins 1 – 1..5, 10: entre 1 et 5, ou 10

22 Exemple L Axe Statique Associations NOTATION UMLNOTATION UML Classe Rôle Multiplicité Nom Sens

23 Sémantique L Axe Statique Associations NOTATION UMLNOTATION UML

24 Note L Axe Statique Associations NOTATION UMLNOTATION UML Note = Commentaire placé sur un diagramme

25 Contrainte L Axe Statique Associations NOTATION UMLNOTATION UML Contrainte vraies pour que le modèle soit valideContrainte = relation sémantique entre éléments de modèle qui spécifie des conditions ou propositions devant rester vraies pour que le modèle soit valide { contrainte } Pré-DéfiniesContraintes Pré-Définies –Inclusion –Exclusion Contrainte

26 Contraintes Pré-définies L Axe Statique Associations NOTATION UMLNOTATION UML OrdreOrdre CheminsChemins Contrainte

27 Associations dérivée L Axe Statique Associations NOTATION UMLNOTATION UML association dérivéedéduireUne association dérivée est une association qui peut se déduire des associations existantes Contrainte Dérivée

28 Attribut dAssociation L Axe Statique Associations NOTATION UMLNOTATION UML Attribut dassociationpropriétéAttribut dassociation = propriété du lien entre deux objets Attribut

29 Classe dAssociation L Axe Statique Associations NOTATION UMLNOTATION UML Classe dassociationClasse dassociation = Elément ayant à la fois les propriétés d une classe et d une association travaille Classe

30 Association n-aire L Axe Statique Associations NOTATION UMLNOTATION UML Association n-aireAssociation n-aire = Une association parmi 3 classes ou plus. Chaque instance de lassociation est un n-tuple de valeurs des classes respectives. Professeur Elève Salle Heure de début Heure de fin Cours lieu *

31 Définitions L Axe Statique Agrégation et Composition NOTATION UMLNOTATION UML AgrégationassociationAgrégation = association particulière spécifiant une relation tout - partie entre lagrégat et un composant –Inclusion –Propagation Compositionforte dagrégationcycle de vieComposition = forme forte dagrégation avec un cycle de vie des parties lié à celui du composite

32 Exemples L Axe Statique Agrégation et Composition NOTATION UMLNOTATION UML Agrégation Composition Multiplicité

33 Définitions L Axe Statique Généralisation, Spécialisation NOTATION UMLNOTATION UML Généralisation = relation ente un élément plus général et un élément plus spécifique qui est entièrement conforme avec le premier élément, et qui ajoute de l information supplémentaire dhéritageSpécialisation = mécanisme par lequel des éléments plus spécifiques incorporent la structure et le comportement déléments plus généraux (notion dhéritage). Discriminant Généralisation Spécialisation Héritage multiple

34 Interface L Axe Statique Généralisation, Spécialisation NOTATION UMLNOTATION UML Extends Implements Stéréotype Notations Hériter dune interface

35 Contraintes L Axe Statique Généralisation NOTATION UMLNOTATION UML contraintesLes seules contraintes pré-définies en UML pour la généralisation sont : –disjointoverlapping –disjoint (un moyen courrier ne peut être long courrier) / overlapping –completeincomplete –complete (liste éxhaustive de classe) / incomplete

36 Classe Abstraite L Axe Statique Généralisation NOTATION UMLNOTATION UML instancierClasse Abstraite = classe que l on ne peut pas instancier Notation : Avion {abstract} Ou Italic Contrainte

37 Stéréotype et Valeur Etiquetée L Axe Statique Extensibilité NOTATION UMLNOTATION UML extensibilitéDeux mécanismes d extensibilité d UML, applicables à tout élément de modèle : –Stéréotypes représentation visuelle –Stéréotypes = nouveau type d élément de modélisation qui étend la sémantique du méta-modèle (peut avoir une représentation visuelle) : > Valeur Etiquetée Valeur Etiquetée = définition explicite d une propriété sous la forme d une contrainte : {étiquette = valeur} > Client {version=2.3} Client {phase=analyse} {fait par=Antonio} Client

38 Pour Structurer L Axe Statique Package NOTATION UMLNOTATION UML PackageRegroupementPackage = Regroupement déléments de modèle Les Packages divisent et organisent les modèles de la même manière que les répertoires organisent les systèmes de fichiers imbriquésLes Packages eux-mêmes peuvent être imbriqués à l intérieur d autres Packages

39 Notation L Axe Statique Diagramme de Classes NOTATION UMLNOTATION UML

40 L Axe Dynamique

41 Que représente-t-on dans le modèle dynamique ? L Axe Dynamique Introduction NOTATION UMLNOTATION UML dévénementsdétats réactionsLe modèle dynamique représente les séquences dévénements, détats et de réactions qui doivent survenir dans le système. temps, séquencement des opérationsinteractionsIl est intimement lié au modèle objet et décrit les aspects de contrôle dun système en prenant compte du temps, du séquencement des opérations et des interactions entre objets Deux diagrammes fondamentaux : –Diagramme de Séquence –Diagramme Etats-Transitions

42 Scénario L Axe Dynamique Diagramme de Séquence NOTATION UMLNOTATION UML Il y a autant de diagrammes de séquence quil y a de scénarios Un Scénario montre une séquence particulière dinteractions entre objets, dans un seul contexte dexécution du système Un scénario peut être vu comme une des instances possibles des Use Cases. objetsmessagesévénementsOn y fait intervenir des objets, des messages et des événements Objets de type Classe Messages

43 Diagramme de classes L Axe Dynamique Diagramme de Séquence NOTATION UMLNOTATION UML Exemple de lascenseur ScénarioScénario –Deuxétages différents troisième –Deux usagers situés à des étages différents empruntent le même ascenseur pour se rendre au troisième étage –Troismême étage troisième et cinquième –Trois usagers situés au même étage empruntent le même ascenseur pour se rendre au troisième et cinquième étage

44 Notation Graphique L Axe Dynamique Diagramme de Séquence NOTATION UMLNOTATION UML Objet Méthode

45 Notation L Axe Dynamique Diagramme de Séquences NOTATION UMLNOTATION UML

46 Définition L Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML Etats-TransitionsAutomateUn diagramme Etats-Transitions (ou Automate) : lévolution –décrit lévolution au cours du temps dune instance dune classe en réponse aux interactions avec dautres objets une classe –est forcément associé à une classe, mais toutes les classes nen ont pas besoin étatstransitions –est un graphe orienté détats (noeuds) connectés par des transitions (arc orientés) StatechartsDavid HarelSource: Les Statecharts de David Harel David Harel

47 Etats L Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML étatChaque objet est à un moment donné dans un état particulier : –Etat Initial –Etat Initial : état dune instance juste après sa création (un seul état initial) –Etat –Etat Intermédiaire : un objet est toujours dans un état donné pour un certain temps –Etat Final –Etat Final : état dune instance juste avant sa destruction (un automate infini peut ne pas avoir détat final)

48 Transition, Condition L Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML Transitionrelation entre 2 états action événementTransition : relation entre 2 états indiquant quun objet dans le premier état va exécuter une action et entrer dans le deuxième état quand un événement apparaîtra Conditionexpression booléennevérifiéeCondition : expression booléenne devant être vérifiée pour permettre la transition Etat initial Etat final Evénement Condition Transition

49 Action, Activité L Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML ActionatomiqueAction : opération atomique (non interruptible) déclenchée par une transition ActivitédureActivité : opération qui dure un certain temps (interruptible) dans un état particulier –entryrentre –entry : action exécutée chaque fois que lon rentre dans létat –exitquitte –exit : action exécutée chaque fois que lon quitte létat Activité Action

50 Notation Complète L Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML Exemple :Exemple : fonctionnement dune montre digitale Action Activité Evénement Etat initial

51 Généralisation détats L Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML complexe unillisiblesDans le cas dun comportement dynamique complexe, les diagrammes détats sur un niveau deviennent rapidement illisibles structurerPour éviter ce problème, il est nécessaire de structurer les diagrammes détats en: –super-états –super-états : états généraux –sous-états –sous-états : héritent des caractéristiques des états généraux = Même evt Super-état Sous-état

52 Notation Complète L Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML Exemple :Exemple : transmission dune automobile Super-état Sous-état

53 Historique L Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML pas de mémoirePar défaut, un automate na pas de mémoire Hmécanisme pour mémoriserLa notation H offre un mécanisme pour mémoriser le dernier sous-état qui lenglobe ExempleExemple : cycle de lavage dun lave vaisselle Historique H

54 Notation L Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML

55 Références

56 Livres Références Pour en Savoir Plus NOTATION UMLNOTATION UML G. BoochJ. Rumbaugh, I. Jacobson,The Unified Modeling Language User Guide, G. Booch, J. Rumbaugh, I. Jacobson, 1999, Addison Wesley J. RumbaughObject-Oriented Modeling and Design, J. Rumbaugh, 1991, Prentice- Hall G. BoochObject Solution, G. Booch, 1996, Addison-Wesley I. JacobsonObject-Oriented Software Engineering: A Use Case Driven Approach, I. Jacobson, 1992, Addison-Wesley Modélisation Objet avec UML, P. A. Muller, 1997, Eyrolles UML Distilled, M. Fowler, 1997, Addison-Wesley UML La notation unifiée de modélisation objet, M. Lai, Masson Designing Object Systems: Object-Oriented Modeling with Syntropy, S. Cook, J. Daniels, 1994, Prentice-Hall

57 Articles Références Pour en Savoir Plus NOTATION UMLNOTATION UML Getting started: using use case to capture requirements, J. Rumbaugh, Sept 1994, JOOP Formalizing use-case modeling, I. Jacobson, Juin 1995, JOOP OMT: The object model, J. Rumbaugh, Jan 1995, JOOP A search values: Attributes and associations, J. Rumbaugh, Juin 1996, JOOP A matter: How to define subclasses, J. Rumbaugh The life of an object model: How the object model changes during development, J. Rumbaugh, Mars 1994, JOOP Statecharts: a visual Formalism for Complex Systems, D. Harel, 1987, Science of Computer Programming vol 8 Executable Object Modeling with Statecharts, D. Harel, Juillet 1997, Computer OMT: The dynamic model, J. Rumbaugh, Fev 1995, JOOP

58 Sur le Web Références Pour en Savoir Plus NOTATION UMLNOTATION UML Rational Software / UML Resource Software –http://www.rational.com/uml OMG –http://www.omg.org Groupe UML France –http://www.essaim.univ-mulhouse.fr/uml/index.html Carrefour Cetus : Orienté Objet –http://www.csioo.com/cetusfr/software.html Using Use Cases (Tutorial) –http://www.csc.calpoly.edu/~dbutler/tutorials/winter96/use Object Constraint Language –http://www.software.ibm.com/ad/ocl David Harel s Home Page –http://www.wisdom.weizmann.ac.il/people/homepages/harel I-Logix (société de Harel): produit Rhapsody –http://www.ilogix.com


Télécharger ppt "Notation UML. Sommaire Historique La Modélisation Axe Statique Axe Dynamique Références NOTATION UMLNOTATION UML."

Présentations similaires


Annonces Google