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 d’instance Diagramme états/transitions –Physique Diagrammes de modules (principe des packages) 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 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 d’Utilisation: 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... notations graphiquesdifférentesLes notations graphiques sont toutes différentes standardsL’industrie a besoin de standards Historique Les Principales Méthodes Objet NOTATION UMLNOTATION UML

8 Naissance d’UML Booch’93, OMT : Booch’93, 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 l’unification 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 Soumission’OMGJanvier 97 : Soumission à l’OMG 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 tousConvient à tous les langages objets –C++ (Héritage multiple, Template) –Java (Interface) –SmallTalk

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

13 Les 4+1 Vues Cycle de développement NOTATION UMLNOTATION UML La Modélisation Vue logiqueVue des composants Vue des processusVue de déploiement Besoins des utilisateurs Composant Fichiers Source => Configuration du systme 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

14 La modélisation des besoins

15 Acteur Use case - Acteur : entité externe qui agit sur le système (opérateur, composant interne…). - Use case : ensemble d’actions réalisées par le système, en réponse à une action d’un acteur. L’ensemble des uses cases décrit les objectifs (le but) du système. - Les relations de base entre cas d’utilisation et acteurs « include » « extends » héritage NOTATION UMLNOTATION UML Diagramme de uses cases

16 La représentation des scénarios

17 Scénario Diagramme de Séquence NOTATION UMLNOTATION UML Il y a autant de diagrammes de séquence qu’il y a de scénarios Un Scénario montre une séquence particulière d’interactions entre objets, dans un seul contexte d’exécution du système Un scénario peut être vu comme une réponse à un besoin ou une partie d ’un besoin du diagramme des Uses Cases. objetsmessagesévénementsOn y fait intervenir des objets, des messages et des événements Objets de type Classe Message synchrone Message asynchrone

18 Notation Graphique Diagramme de Séquence NOTATION UMLNOTATION UML Objet

19 L ’axe statique

20 Notation de base ClasseClasse –Une description d’un ensemble d’objets 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 d’une classe. L ’Axe Statique Classes et Objets NOTATION UMLNOTATION UML Objet de type Classe Classe

21 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 d’un attribut est limité à un objet portéeclasse’attribut de classe$souligné –quand cette portée s’applique à la classe elle même, on parle d’attribut de classe (représenté par le symbole $ ou souligné) Attribut dérivéAttribut dérivé déduitautres attributs / –attribut qui peut être déduit d’un ou plusieurs autres attributs (représenté par le symbole /) L ’Axe Statique Classes et Objets NOTATION UMLNOTATION UML

22 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 l’attribut –visibilité –méthode de classe L ’Axe Statique Classes et Objets NOTATION UMLNOTATION UML

23 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

24 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 d’instances 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

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

26 Sémantique L ’Axe Statique Associations NOTATION UMLNOTATION UML

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

28 Classe d’Association L ’Axe Statique Associations NOTATION UMLNOTATION UML Classe d’associationClasse d’association = Elément ayant à la fois les propriétés d ’une classe et d ’une association travaille Classe

29 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 l’association est un n-tuple de valeurs des classes respectives. Professeur Elève Salle Heure de début Heure de fin Cours lieu *

30 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 l’agrégat et un composant –Inclusion –Propagation Compositionforte d’agrégationcycle de vieComposition = forme forte d’agrégation avec un cycle de vie des parties lié à celui du composite

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

32 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 d’hé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 d’héritage). Discriminant Généralisation Spécialisation Héritage multiple

33 Interface L ’Axe Statique Généralisation, Spécialisation NOTATION UMLNOTATION UML Extends Implements Stéréotype Notations Hériter d’une interface

34 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

35 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

36 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

37 Notation L ’Axe Statique Diagramme de Classes NOTATION UMLNOTATION UML

38 Diagramme des composants NOTATION UMLNOTATION UML L ’Axe Statique

39 Permet de définir des composants logiciels en terme de constitution et de dépendance. L ’Axe Statique NOTATION UMLNOTATION UML Diagramme des composants

40 . L ’Axe Statique NOTATION UMLNOTATION UML Diagramme de déploiement

41 . L ’Axe Statique NOTATION UMLNOTATION UML Diagramme de déploiement Décrit les ressources matérielles et la répartition du logiciel dans ces ressources

42 L ’Axe Dynamique

43 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 d’un système en prenant compte du temps, du séquencement des opérations et des interactions entre objets Deux diagrammes fondamentaux : –Diagramme d ’activités –Diagramme Etats-Transitions

44 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 d’une instance d’une classe en réponse aux interactions avec d’autres objets une classe –est forcément associé à une classe, mais toutes les classes n’en 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

45 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 d’une 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 d’une instance juste avant sa destruction (un automate infini peut ne pas avoir d’état final)

46 Transition, Condition L ’Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML Transitionrelation entre 2 états action événementTransition : relation entre 2 états indiquant qu’un 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

47 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 l’on rentre dans l’état –exitquitte –exit : action exécutée chaque fois que l’on quitte l’état Activité Action

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

49 Généralisation d’états L ’Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML complexe unillisiblesDans le cas d’un 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

50 Notation Complète L ’Axe Dynamique Diagramme Etats-Transitions NOTATION UMLNOTATION UML Exemple :Exemple : transmission d’une automobile Super-état Sous-état

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

52 L ’Axe Dynamique Diagramme d ’activités NOTATION UMLNOTATION UML

53 L ’Axe Dynamique Diagramme d ’activités NOTATION UMLNOTATION UML * Utilisé pour étiqueter les autres diagrammes (traitements associés aux messages des diagrammes de séquences, transitions des diagrammes d’états-transitions, activité d’un état…) * Sert à spécifier un traitement à priori séquentiel en offrant un pouvoir d’expression très proche des algorithmes. * Branche conditionnelle

54 L ’Axe Dynamique Diagramme d ’activités NOTATION UMLNOTATION UML Refroidir Arrêter le chauffageAérer * Barre de synchronisation * Couloir d ’activités

55 L ’Axe Dynamique Diagramme d ’activités NOTATION UMLNOTATION UML * Flux d ’objets * Signal

56 UML 2 NOTATION UMLNOTATION UML Les apports d ’UML 2

57 UML 2 NOTATION UMLNOTATION UML Diagramme de séquences - Fragment “ Alternatif ” (IF - THEN - ELSE)

58 UML 2 NOTATION UMLNOTATION UML Diagramme de séquences - Fragment “ break ” utilisé pour représenter des scénarios d’exceptions.

59 UML 2 NOTATION UMLNOTATION UML Diagramme de séquences Fragment “ Parallel ” utilisé pour représenter des interactions en parallèle.

60 UML 2 NOTATION UMLNOTATION UML Diagramme de séquences Fragment “ Loop ” utilisé pour décrire un ensemble d’interactions qui s’exécutent en boucle.

61 UML 2 NOTATION UMLNOTATION UML Diagramme de séquences Références: un pointeur ou un raccourci vers un autre diagramme de séquences existant.

62 UML 2 NOTATION UMLNOTATION UML Diagramme de séquences Etat précise l’état dans lequel doit se trouver l’instance de classe concernée.

63 UML 2 NOTATION UMLNOTATION UML Diagramme de structure composite spécifier la connectique interne et externe entre ces classes

64 Références

65 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

66 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


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