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 U.M.L. partie 2 1 UML (2) Rappel sur le modèle statique : classe / objet Modèle dynamique les diagrammes état - transition les diagrammes.

Présentations similaires


Présentation au sujet: "Michel Tollenaere U.M.L. partie 2 1 UML (2) Rappel sur le modèle statique : classe / objet Modèle dynamique les diagrammes état - transition les diagrammes."— Transcription de la présentation:

1 Michel Tollenaere U.M.L. partie 2 1 UML (2) Rappel sur le modèle statique : classe / objet Modèle dynamique les diagrammes état - transition les diagrammes de séquences IHM (sous Windows, HTML) Extension du modèle de classes : le concept de généralisation/spécialisation. Héritage. Polymorphisme. Implantation de lhéritage en relationnel (SGBD) Liens entre modèles statique et dynamique : Cohérence du modèle Cours MSI-2A filière ICL UML 2 version 3.0 du 15 novembre 2013

2 Michel Tollenaere U.M.L. partie 2 2 Cas dutilisation une fonctionnalité attendue du système (VEGA2) par les différents acteurs. : 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 Exemples : Quelques diagrammes

3 Michel Tollenaere U.M.L. partie 2 3 Modèle Statique (rappels) Diagramme de classes Diagramme dobjets Cours MSI-2A filière ICL UML 2 version 3.0 du 15 novembre 2013

4 Michel Tollenaere U.M.L. partie 2 4 Gestion des commandes client (diagramme de classes 1) commande client Passe une>10.. * nom prénom adresse téléphone code postal Passe commande () paie commande (cmd) num date adresse livraison CalculMontant () ajout article modifier () paye article code désignation prix-U rayon ss-rayon comporte>1.. * * Ligne-Cmd quantité Cours MSI-2A filière ICL UML 2 version 3.0 du 15 novembre 2013

5 Michel Tollenaere U.M.L. partie 2 5 Gestion des commandes client (diagramme de classes et dobjets) commande client Passe une>10.. * article comporte> 1.. * * Ligne-Cmd CMD015 :commande CMD007 :commande CMD003 :commande Jacky Durand :client Pierre Dupond :client Hervé Latour :client 1 : lignecmd 2 : lignecmd 1 : lignecmd Dell Lat400 :article Compaq tabletPC :article RAM 512MO :article Photosmart500 :article Toshiba SD300 :article Cours MSI-2A filière ICL UML 2 version 3.0 du 15 novembre 2013

6 Michel Tollenaere U.M.L. partie 2 6 Gestion des commandes client (diagramme de classes et dobjets) commande client Passe une>10.. * article comporte> 1.. * * Ligne-Cmd CMD015 :commande CMD007 :commande CMD003 :commande Jacky Durand :client Pierre Dupond :client Hervé Latour :client 1 : lignecmd 2 : lignecmd 1 : lignecmd Dell Lat400 :article Compaq tabletPC :article RAM 512MO :article Photosmart50 0 :article Toshiba SD300 :article Diagramme de classe Diagramme d objets Illustre Conceptualise Objet Classe Lien Association

7 Michel Tollenaere U.M.L. partie 2 7 Gestion des commandes client (diagramme de classes 2) commande client Passe une>10.. * nom prénom adresse téléphone code postal Passe commande () paie commande (cmd) num date adresse livraison CalculMontant () ajout article modifier () paye article code désignation prix-U rayon ss-rayon comporte>1.. * * Ligne-Cmd quantité Ne respecte pas les formes normales On peut affiner le modèle au niveau de limplantation des articles (très utile pour définir les tournées de constitution des commandes)

8 Michel Tollenaere U.M.L. partie 2 8 Gestion des commandes client (diagramme de classes 2) commande client Passe une> 10.. * nom prénom adresse téléphone code postal Passe commande () paie commande (cmd) num date adresse livraison CalculMontant () ajout article modifier () paye article code désignation prix-U rayon ss-rayon comporte>1.. ** Ligne-Cmd quantité * contient>1 Sous rayon Rayon emplacement Implantation comporte Rôle dans lassociation Faut il définir lappartenance du sous rayon au rayon ??

9 Michel Tollenaere U.M.L. partie 2 9 Gestion des commandes client (diagramme de classes 2) article code désignation prix-U rayon ss-rayon * contient>1 Sous rayon Rayon emplacement nom Implantation comporte Rayon Nom emplacement * 1 Partage de propriétés et de comportements

10 Michel Tollenaere U.M.L. partie 2 10 Gestion des commandes client (diagramme de classes 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 Généralisation Héritage de propriétés

11 Michel Tollenaere U.M.L. partie 2 11 Gestion des commandes client (diagramme de classes 1) commande client Passe une>10.. * nom prénom adresse téléphone code postal num date adresse livraison CalculMontant () ajout article modifier () paye article code désignation prix-U rayon ss-rayon comporte>1.. * * Ligne-Cmd quantité Passe commande () paie commande (cmd) Comportement des objets Quand peut on ajouter un article ? Etat des commandes ? Nécessité de définir et spécifier un modèle dynamique

12 Michel Tollenaere U.M.L. partie 2 12 Modèle Dynamique Diagramme détat-transition Diagramme de séquences

13 Michel Tollenaere U.M.L. partie 2 13 Diagramme détats-Transition Description des séquences possibles détats et dactions par lesquels un objet peut passer tout au long de sa vie. Ces séquences résultent de sa réaction à des événements discrets. Eléments du diagramme : état : situation dun objet à un moment donné transition : connexion entre deux états, permettant le passage dun état à lautre

14 Michel Tollenaere U.M.L. partie 2 14 Diagramme détat-transition événement : occurrence dune situation donnée dans le domaine du système qui déclenche la transition garde : condition booléenne qui valide ou non le déclenchement dune transition lors de loccurrence dun événement (cas de plusieurs transitions exclusives déclenchées par le même événement) action : opération exécutée pendant que lobjet est dans un état donné ou lorsque une transition est déclenchée (correspondant à des opérations déclarées dans la classe de lobjet destinataire). Une action dun état est dite « activité » quand lopération associée a un temps dexécution non négligeable (do : nom_opération) (exemple notification)

15 Michel Tollenaere U.M.L. partie 2 15 Diagramme détat-transition de la classe « commande » En préparation do / ajout article état initial état final Confirmée do / préparer livraison Livrée do / attente paiement Payée Confirmation client [Si solvable] Livraison effectuée paiement effectué 10 ans après paiement état final Pas de confirmation client après 1 mois commande num date adresse livraison CalculMontant () ajout article modifier () paye

16 Michel Tollenaere U.M.L. partie 2 16 Une implémentation dans MS-Access un attribut « Etat » de type « liste déroulante » dont le contenu correspond aux valeurs des états du diagramme

17 Michel Tollenaere U.M.L. partie 2 17 Une meilleure implémentation dans MS-Access

18 Michel Tollenaere U.M.L. partie 2 18 Une meilleure implémentation dans MS-Access

19 Michel Tollenaere U.M.L. partie 2 19 Perte d emploi société personne est employée par> 0..1* nom prénom age adresse téléphone code postal n° SIREN nom C.A. Implantation Les personnes ne possèdent pas toutes un emploi et se trouvent, à un moment donné, dans un des états suivants : en activité, au chômage, à la retraite Létat d une personne donnée est déterminé selon son âge et la présence ou non dun lien vers une société. Diagramme détat-transition Exemple Diagramme de classesDiagramme d états-transitions En activité do: travailler Au chômage A la retraite Embauche Plus de 60 ans

20 Michel Tollenaere U.M.L. partie 2 20 Diagramme détat-transition Une classe peut posséder plusieurs diagrammes détat (selon le point de vue examiné). Exemple, pour une personne, létat matrimonial et létat professionnel. Les diagrammes détat-transition peuvent être imbriqués et hiérarchisés. Exemple : pour une machine, (cf photocopieuse, imprimante) commandée, livrée, qualifiée, en service, en maintenance, au rebut, en service est détaillée par les différents éléments du cycle de fonctionnement

21 Michel Tollenaere U.M.L. partie 2 21 Diagramme de Séquences Pour chaque cas dutilisation, un ou plusieurs scénario peut être détaillé chacun par un diagramme de séquences. Diagramme de séquence : exprime la séquence des interactions entre objets du système selon un point de vue temporel, pour réaliser le cas dutilisation. Niveau 1 : diagramme de séquences fonctionnel = = interactions acteur(s) – système dans le cadre dun use case Niveau 2 : diagramme de séquences technique = = interactions acteur – IHM - objets système ou objets système/ objets système dans le cadre dun use case

22 Michel Tollenaere U.M.L. partie 2 22 Diagramme de Séquences (principes généraux) Objet 1Objet 2 1 : [condition A] message 2 : message synchrone 4 : message 6 : [condition B] message 9 : message asynchrone 7 : message réflexif Evénement / Communication entre objets Objet 3 3 : message de création 5 : message 8 : message de destruction Période dactivité de lobjet : ligne de vie

23 Michel Tollenaere U.M.L. partie 2 23 Diagramme de Séquences (principes généraux) Objet 1Objet 2 1 : [condition A] message 2 : message synchrone 4 : message 6 : [condition B] message 9 : message asynchrone 7 : message réflexif Objet 3 3 : message de création 5 : message 8 : message de destruction message synchrone: lémetteur est bloqué et attend que lappelé ait fini de traiter le message (message 1) message asynchrone: lémetteur nest pas bloqué et peut continuer son exécution (message 6) Un message réflexif indique souvent un point d entrée dans une activité de plus bas niveau qui s exerce entre objets contenus par l objet composite (message 7)

24 Michel Tollenaere U.M.L. partie 2 24 Diagramme de Séquences (principes) Objet 1Objet 2 1 : [condition A] message 2 : message synchrone 4 : message 6 : [condition B] message 9 : message asynchrone 7 : message réflexif Objet 3 3 : message de création 5 : message 8 : message de destruction Un message dont les délais de transmission sont non négligeables est matérialisé par une flèche oblique (message 4) Messages conditionnés : flèches prenant leur origine au même instant avec des conditions mutuellement exclusives (messages 1 et 6) Possibilité de compléments d informations sous forme de texte libre ou de pseudo- code à côté du diagramme

25 Michel Tollenaere U.M.L. partie 2 25 Diagramme de Séquences (principes généraux) Objet 1Objet 2 1 : [condition A] message 2 : message synchrone 4 : message 6 : [condition B] message 9 : message asynchrone 7 : message réflexif Objet 3 3 : message de création 5 : message 8 : message de destruction Période d activité : temps pendant lequel un objet effectue une action, directement ou par l intermédiaire d un autre objet sous-traitant Des contraintes temporelles peuvent être exprimées en graduant la ligne de vie (pour dire par exemple: « 10 secondes plus tard ») Ligne de vie de lobjet

26 Michel Tollenaere U.M.L. partie 2 26 Diagramme de Séquences Appelant Ligne téléphonique Appelé décroche tonalité numérotation sonnerieindication de sonnerie décroche allô Exemple de Diagramme Niveau 1

27 Michel Tollenaere U.M.L. partie 2 27 Exemple de Diagramme Niveau 2

28 Michel Tollenaere U.M.L. partie 2 28 Exemple de Diagramme Niveau 2

29 Michel Tollenaere U.M.L. partie 2 29 Nouvelle mission Exemple de Diagramme Niveau 2

30 Michel Tollenaere U.M.L. partie 2 30 I.H.M. Les Interfaces Homme-Machine I.H.M. sous Windows html étendus

31 Michel Tollenaere U.M.L. partie 2 31 Resp de production : supervision dun process Ou visualisation des plannings de techniciens libres

32 Michel Tollenaere U.M.L. partie 2 32 En logistique, les interfaces carto

33 Michel Tollenaere U.M.L. partie 2 33 Modèles Statique et Dynamique Concept de généralisation et dhéritage Implantation de lhéritage en relationnel Méta-modélisation UML

34 Michel Tollenaere U.M.L. partie 2 34 Généralisation : Relation non réflexive : une classe ne peut dériver delle- même Relation non symétrique : si une une voiture est une sorte de véhicule, alors le véhicule ne peut pas être une sorte de voiture Relation transitive : si voiture est une sorte de véhicule terrestre qui elle même est une sorte de véhicule alors voiture est une sorte de véhicule

35 Michel Tollenaere U.M.L. partie 2 Part - number - version - status - short description - full description - release date - creation date - author - relevant property 1 - relevant property 2 - relevant property 3 Part and document modelling Document - number - version - status - short description - format - release date - creation date - author - relevant property 1 - relevant property 2 - relevant property 3 - display - print - create - display - print - create Part number should be under control when creating new part or document.

36 Michel Tollenaere U.M.L. partie 2 Part - number - version - status - short description - full description - release date - creation date - author - relevant property 1 - relevant property 2 - relevant property 3 Part and document modelling Document - number - version - status short description - format - release date - creation date - author - relevant property 1 - relevant property 2 - relevant property 3 Purchased_PartManufactured_Part Drawing Quality DocRequirement

37 Michel Tollenaere U.M.L. partie 2 Product Structures, BOM BOM with an engineering viewpoint BOM with a manufacturing viewpoint

38 Michel Tollenaere U.M.L. partie 2 Object-Oriented Representation of Electro-Mechanical Assemblies Using UML, Sriram & al., NIST Research report n°7057, oct 2003

39 Michel Tollenaere U.M.L. partie 2 item Component standard Sub-assembly Is made of - I-number - description - Quantity - order 2.. * 0.. * Class - attribut 1 - attribut 2 - méthod 1InheritanceAssociation Rôle in association Miultiplicities 2.. *0.. * - where used - mass Where used function Properties communication

40 Michel Tollenaere U.M.L. partie 2 item document représents ComponentAssembly is made of Task CorrectionChange Work-about - author - date - part-number - description item - changes in progress

41 Michel Tollenaere U.M.L. partie 2 41 Cours MSI-2A filière ICL UML 2 version 3.0 du 15 novembre 2013 Classe abstraite Classe Abstraite Non instanciable Sert de Type pour manipuler les objets instances d'une (ou plusieurs) de leurs sous-classes Propriété Abstraite définie pour tous les éléments généralisables Propriété Abstraite définie aussi pour une opération

42 Michel Tollenaere U.M.L. partie 2 42 Implantation de lhéritage en relationnel Sous rayonRayon * 1 Implantation Nom emplacement Principe : 1 classe = 1 table 1 association n - m = 1 table Table Implantation ID-implant : entier Nom : string Emplacement : string Table Rayon ID-rayon : entier Nom : string Emplacement : string Table Sous-Rayon ID-ss-rayon : entier Nom : string Emplacement : string Rayon : entier On ne factorise pas les attributs (Nom, emplacement) Il faudra coder 3 fois les accès communs définis dans la classe « implantation »

43 Michel Tollenaere U.M.L. partie 2 43 Implantation de l héritage en relationnel Sous rayonRayon * 1 Implantation Nom emplacement Principe : 1 table pour toutes les classes 1 association n - m = 1 table Table Implantation ID-implant : entier Nom : string Emplacement : string Type : {rayon ; ss-rayon} Rayon : entier Schéma relationnel plus concis, mais : un rayon ou sous rayon peut être constitué dautres rayons aucun contrôle de cohérence sur les compositions récursives * 1 Implantation Nom emplacement type : {rayon ; ss-rayon}

44 Michel Tollenaere U.M.L. partie 2 44 Diagramme de Classes Métier

45 Michel Tollenaere U.M.L. partie 2 45 UML cohérence des diagrammes Use cases Diagramme détat-transition Diagramme de séquences Diagramme de classes Interfaces Homme/Machine.

46 Michel Tollenaere U.M.L. partie 2 46 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 Cours MSI-2A filière ICL UML 2 version 3.0 du 15 novembre 2013


Télécharger ppt "Michel Tollenaere U.M.L. partie 2 1 UML (2) Rappel sur le modèle statique : classe / objet Modèle dynamique les diagrammes état - transition les diagrammes."

Présentations similaires


Annonces Google