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

Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 1 UML : Unified Modelling Language Historique : Grady.

Présentations similaires


Présentation au sujet: "Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 1 UML : Unified Modelling Language Historique : Grady."— Transcription de la présentation:

1 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 1 UML : Unified Modelling Language Historique : Grady Booch 1981, ADA, « Object Oriented Development » James Rumbaugh 1991, OMT, JOOP (Journal of OO programming) Ivar Jacobson, OOSE sept 97, UML 1.1. Références : site en français en France Pierre Alain Muller (U- Mulhouse) et Valtech UML 2 : De l'apprentissage à la pratique, 2009, Ellipses, Laurent Audibert Outils : Objecteering Rational ROSE, plus de 30 outils de modélisation et de CASE (Computer Aided Software Engineering)

2 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 2 Technologie Architecture propriétés Constituant : acteur (intéragissant avec VEGA2) Système (VEGA2) message UML modelling information systems at conceptual level at logical level

3 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 3 Booch methodOMT Unified Method 0.8 OOPSLA ´95 OOSE Other methods UML 0.9 Web - June ´96 public feedback Final submission to OMG, Sep 97 First submission to OMG, Jan ´97 UML 1.1 OMG Acceptance, Nov 1997 UML 1.3 UML 1.0 UML partners Creating the UML UML

4 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 4 Meyer Before and after conditions Harel Statecharts Gamma, et al Frameworks and patterns, HP Fusion Operation descriptions and message numbering Embley Singleton classes and high-level view Wirfs-Brock Responsibilities Odell Classification Shlaer - Mellor Object lifecycles Rumbaugh OMT Booch Booch method Jacobson OOSE Contributions to the UML

5 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 5 diagramme de classes diagramme dobjets diagramme de composants diagramme de déploiement Statique (ce que le système EST) diagramme de séquence diagramme de collaboration diagramme détats-transitions diagramme dactivités Fonctionnel (ce que le système FAIT) Dynamique (comment le système EVOLUE) diagramme de cas dutilisation diagramme de collaboration Axes de modélisation d un système

6 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 6 Conceptuel organisationnel logique physique En UML, les mêmes modèles peuvent être utilisés à différents niveaux d abstraction du plus conceptuel à limplantation. On peut donc appliquer des mécanismes de transformation continue. Niveaux dabstraction dun SI

7 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 7 diagramme de cas dutilisation diagramme de classes diagramme de séquence diagramme de collaboration diagramme dobjets diagramme détats-transitions diagramme dactivités (nous utiliserons IDEF 0) diagramme de composants diagramme de déploiement Les 9 diagrammes UML 1

8 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 8 DiagrammeClassesComposantsDéploiementCollaborationEtats TransitionsSéquenceObjetsCas d utilisation ClassesEtats TransitionsSéquence Ceci est un commentaire Description UML des 9 diagrammes UML Activité

9 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 9 Cas dutilisation une fonctionnalité attendue du système (VEGA2) par les différents acteurs. Exemples : Quelques diagrammes : acteur (intéragissant avec VEGA2) Système (VEGA2) message Diagramme de séquence Chaque cas d'utilisation apparaît comme un scénario, décrit par un ou plusieurs diagrammes de séquence. Un diagramme de séquences montre les interactions entre les acteurs et le système selon un point de vue temporel pour accomplir une fonctionnalité attendue du système (un cas d utilisation). Cest une ensemble de messages échangés entre les acteurs et le système, ordonnés chronologiquement. Diagramme de Classes

10 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 10 cas d'utilisation Acteur 1 Acteur 2 article code désignation prix-U rayon ss-rayon * contient> 1 Sous rayon Rayon emplacement nom Implantation comporte Rayon Nom emplacement * 1 Implantation Nom emplacement En préparati on do / ajout article état initialétat initial état finalétat final Confirmé e do / préparer livraison Livrée do / attente paiement Pa yée Confi rmati on client paiem ent effect ué 10 ans après paiem ent état finalétat final Pas de confir matio n client après 1 mois

11 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 11 Modèle Fonctionnel Use Cases : cas d utilisation diagramme de collaboration

12 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 12 Représente les fonctions du système de point de vue de l utilisateur. Cas d utilisationActeur relation Eléments du diagramme : acteur : un rôle joué par une personne, un service, etc. qui interagit avec le système étudié cas dutilisation : manière spécifique d utiliser un système. Image dune fonctionnalité attendue, déclenchée en réponse à la stimulation dun acteur relations entre cas dutilisations et acteurs Ceci est un cas dutilisation Ceci est une relation Ceci est un acteur Diagramme de cas dutilisation

13 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 13 Trois types de relations : relation de communication : entre un acteur et un cas dutilisation. Exprime léchange dinformations entre lacteur et le système. virementclient déclenche relation dutilisation : entre deux cas dutilisation. Exprime que le cas dutilisation source comprend également le comportement décrit par le cas dutilisation destinataire (utile pour la factorisation de cas). virementidentification « use » relation dextension : entre deux cas dutilisation. Exprime que le cas dutilisation source étend le comportement du cas dutilisation cible (utile pour la spécialisation de cas). Virement par Internet virement « extend » Relations entre cas dutilisations

14 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 14 Récupère les Acteur humain : il s agit ici d un rôle et non d un acteur identifié. Acteur non humain : exemple un logiciel de comptabilité ou dERP avec lequel le système interagit Exemple Définit les contraintes mécaniques Conçoit les schémas et nomenclatures Gère la création et les révisions des dossiers variantes Gère la création et les révisions d un job Développeur Gestion des schémas Responsable CFAO Gestion des jobs Gestion des contraintes Gestion des dossiers > Responsable BE schémas Récupère les contraintes Acteurs : diagramme de cas dutilisation

15 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 15 Interactions entre objets du système avec un accent particulier sur la structure spatiale statique des objets (contexte des objets). Les messages sont numérotés pour indiquer lordre des envois. Permet de situer le contexte du système. Message: Simple, Asynchrone, Synchrone, Minuté : ascenseur : cabine : porte : lumière 1 : monter 3 : fermer 2 : allumer Objet 1 Objet 2 Objet 3 1 : message 3 : message 2 : message 4 : message 5 : message Diagramme de Collaboration

16 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 16 Modèle Statique diagramme d objets Diagramme de classes

17 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 17 Objet : une entité concrète avec une identité bien définie qui encapsule un état et un comportement. L état est représenté par des valeurs dattribut et des associations, le comportement par des méthodes. Un objet est une instance d une classe. Classe : une description dun ensemble dobjets qui partagent les mêmes attributs, opérations, méthodes, relations et contraintes. Une classe peut posséder des attributs ou des méthodes « de classe ». Objets et classes MaVoiture : Voiture marque = Renault Modèle = Nevada Immatriculation = 648ADX38 AnnéeModele = 1992 Kilométrage = Voiture marque : chaîne Modèle : chaîne Immatriculation : chaîne (8) AnnéeModele : date Kilométrage : entier Rouler ( ) Kilometrage_annuel_moyen ( )

18 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 18 Structure statique dun système, en termes dobjets et de liens entre ces objets. Ces objets et ces liens possèdent des attributs qui possèdent des valeurs. Un objet est une instance de classe et un lien est une instance dassociation. Personne âge : entier patron collaborateur 1 * Diagramme de classes Nom de lobjet : Classe Attributs = valeurs Diagramme dObjets Etienne : personne âge = 35 Jean-Luc : personne âge = 25 patron Diagramme d objets collaborateur emploie> Abstraction Concrétisation

19 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 19 Structure statique dun système, en termes de classes et de relations entre ces classes. Nom de classe Attributs Opérations () Voiture Couleur Cylindrée Vitesse max Démarrer () Accélérer () Freiner () Visibilité : trois niveaux de visibilité pour les attributs et les opérations: public (+) : élément visible à tous les clients de la classe protégé ( #) : élément visible aux sous-classes de la classe privé (-) : élément visible à la classe seule Syntaxe: nom_attribut : type_attribut = valeur initiale nom_opération (nom_argument : type_argument = valeur_par_défaut, …) : type_retourné exemple : Diagramme de classes

20 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 20 Agrégation : quand une classe fait partie dune autre classe (agrégat - composant) Association : toute relation structurelle entre classes, autre que l agrégation et la généralisation Généralisation : factorisation des éléments communs dun ensemble de classes dits sous- classes dans une classe plus générale dite super-classe. Elle signifie que la sous-classe est un ou est une sorte de la super-classe. Le lien inverse est appelé spécialisation classe 4 classe 3 classe 2 classe 1 agrégation association généralisation spécialisation véhicule voiturecamionavion moteur constructeur 1 1..* 1 Diagramme de classes : Relations entre classes

21 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 21 Agrégation: Association transitive : si voiture est composée de moteur et si moteur est composé de courroie alors voiture est composée de courroie Association non systémique : si voiture est composée de moteur, moteur ne peut pas être composé de voiture Association qui peut être réflexive : une fonction peut être composée d autres fonctions Rôle et multiplicité : Une classe a un rôle dans une association. Les rôles portent une information de multiplicité précisant le nombre d associations auquel une instance d objet peut être associée. Les multiplicités les plus courantes sont : 1 / 0..1 / m..n / * /0..* / 1..* Associations

22 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 22 Nommage des associations véhiculeconstructeur fabricant produit véhiculepersonne Conduit> conducteurvéhicule Possède> propriétairevéhicule directeursociété Possède> actionnaire société

23 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 23 PersonneSociétéEmployeur Employé1 0..* m.. n * ou 0.. * 1.. * Un et un seul (obligatoire) Zéro ou un (optionnel) De m à n (entiers) quelconque Au moins 1 Multiplicité des associations

24 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 24 Arité des associations Salle EnseignantEtudiant Début Fin Cours lieu Association darité 3

25 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 25 Placement des attributs et des associations Diplôme TravailEtudiant Chambre Réalise > Note Numéro Mention 0..* * 1

26 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 26 Contraintes comptepersonne {Ordonnée} Est_titulaire> * classepersonne {Sous ensemble} 0.. * Parent d élève Délégués universitépersonne {Ou-exclusif} 0.. * Enseignants Etudiants

27 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 27 Agrégation ChapitreLivre {Ordonnée} * Paragraphe {Ordonnée} 1.. *

28 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 28 Composition TêteHomme 1 1 La composition traduit une dépendance existentielle forte.

29 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML * 1 0..* EstResoluPar 1 0..* 1..* 1 Induit 1..* LesProblèmes LesProjets 1..* LesEtudes 0..1 ComplétéePar 0..* * 0..1 Suivant 0..* * Exemple de diagramme de classes

30 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 30 Modèle Statique Passage d un diagramme de classe à un modèle relationnel

31 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 31 Relation / Table Produit (Réf-produit, Libellé-p, Prix-vente-p) Fournisseur (Code-fournisseur, Adresse, Téléphone) Règle 0 & 1: attribut et classe produit Réf-produit Libellé-p Prix-vente-p fournisseur Code-fournisseur Adresse Téléphone Classe Passage du modèle statique UML au relationnel : les associations

32 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 32 Produit (Réf-produit, Libellé-p, Prix-vente-p, Code-fournisseur, remise) Fournisseur (Code-fournisseur, Adresse, Téléphone) Relation / Table Règle 2 : relation de multiplicité (1) fournisseur Code-fournisseur Adresse Téléphone Classe < fournir 1 produit Réf-produit Libellé-p Prix-vente-p remise Passage du modèle statique UML au relationnel : les associations

33 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 33 Classe Produit (Réf-produit, Libellé-p, Prix-vente-p, remise, Code-fournisseur) Fournisseur (Code-fournisseur, Adresse, Téléphone) Relation / Table Règle 3 : relation de multiplicité (0-1) fournisseur Code-fournisseur Adresse Téléphone < fournir 0-1 produit Réf-produit Libellé-p Prix-vente-p remise Passage du modèle statique UML au relationnel : les associations *

34 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 34 Produit (Réf-produit, Libellé-p, Prix-vente-p) Fournisseur (Code-fournisseur, Adresse, Téléphone) Relation / Table Fournir (Réf-produit, Code-fournisseur, remise) Règle 4 : relation de multiplicité (0..*) (1..*) fournisseur Code-fournisseur Adresse Téléphone < fournir 0..* ou 1..* produit Réf-produit Libellé-p Prix-vente-p remise Classe Passage du modèle statique UML au relationnel : les associations

35 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 35 Père (nom-fils, nom-père) Relation / Table Personne nom père de > Classe 0..* 1 Règle 5 : relation réflexive orientée Passage du modèle statique UML au relationnel : les associations

36 Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 36 Personne nom frère de Classe Personne (Nom) Frère (nom, nom) Relation / Table Règle 6 relation réflexive symétrique Passage du modèle statique UML au relationnel : les associations Attention, la relation étant transitive, des traitements devront être associés au modèle. 0..*


Télécharger ppt "Michel Tollenaere version 2.1 du 20 novembre 2012 Grenoble INP Génie industriel 2A ICL MSI – UML 1 1 UML : Unified Modelling Language Historique : Grady."

Présentations similaires


Annonces Google