UML (2) Rappel sur le modèle statique : classe / objet

Slides:



Advertisements
Présentations similaires
Le Nom L’adjectif Le verbe Objectif: Orthogram
Advertisements

ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
LES NOMBRES PREMIERS ET COMPOSÉS
Licence pro MPCQ : Cours
Distance inter-locuteur
Génie Logiciel 2 Julie Dugdale
M1 MASTER GESTION Séance 3 Pilotage coûts- délais
Les numéros
1 V-Ingénierie… La compétence au service de lexigence… vous présente.
Systèmes en temps réel Modélisation du comportement en temps réel avec UML.
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
Les cas d’utilisation (use cases)
Les diagrammes d’interactions
Les objets: représentation
ANALYSE DES TRAITEMENTS
Le Modèle Logique de Données
UML (2) Rappel sur le modèle statique : classe / objet
La diapo suivante pour faire des algorithmes (colorier les ampoules …à varier pour éviter le « copiage ») et dénombrer (Entoure dans la bande numérique.
Programme Introduction aux BD et aux SGBD Le modèle relationnel
Mr: Lamloum Med LES NOMBRES PREMIERS ET COMPOSÉS Mr: Lamloum Med.
Langage SysML.
1 5 octobre 2011 / paw Présentation du 7 octobre 2011.
PARTIE 3 : Le SYSTEME D’INFORMATION FUTUR
UML (2) Rappel sur le modèle statique : classe / objet
Développement d’applications web
Interagir avec un objet mixte Propriétés physiques et numériques Céline Coutrix, Laurence Nigay Équipe Ingénierie de lInteraction Homme-Machine (IIHM)
1 Cours MSI, modélisation de SI : livraison journaux version 1 du 8 février 2005 Modélisation de S.I. Livraison de journaux ENSGI – MSI 2ème année Michel.
Analyse et Conception des Systèmes d’Informations
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
GRAM 1 CE2 Je sais transformer une phrase affirmative en phrase négative.
Modélisation des bases de données avec UML
Titre : Implémentation des éléments finis sous Matlab
1 Journée de regroupement des correspondants "Egalité et genre" - 21 novembre 2011 Rectorat de Rouen - SAIO - CD-HD Résultats scolaires, appréciations.
1 Introduction : Management des systèmes dinformation version 1.1 du 13 Novembre 2001 Introduction : Management des systèmes dinformation ENSGI Cours MSI.
Static modeling, Thu G. Falquet, L. Nerima.
UML : Unified Modelling Language
Académie de Créteil - B.C Quest-ce quune Inscription 1)1 action + 1 stagiaire + 1 client 2)Parcours individuel (avec son Prix de Vente) 3)Un financement.
Projet poker 1/56. Introduction Présentation de léquipe Cadre du projet Enjeux Choix du sujet 2.
LES NOMBRES PREMIERS ET COMPOSÉS
Outils pour la modélisation des systèmes distribués
Management des systèmes d’information Conclusion
SYSTEMES D’INFORMATION
1 INETOP
GPA789 Analyse et conception orientées objet 1 Professeur: Tony Wong, Ph.D., ing. Chapitre 6 Correspondance UML et C++
Représentation des systèmes dynamiques dans l’espace d’état
Systèmes mécaniques et électriques
Représentation des systèmes dynamiques dans l’espace d’état
DUMP GAUCHE INTERFERENCES AVEC BOITIERS IFS D.G. – Le – 1/56.
1 INETOP
Le diagramme de séquences
UML : Unified Modelling Language
Michel Tollenaere SQL et relationnel 1 Cours MSI-2A filière ICL version 1.1 du 2 novembre 2010 Cours de Management des Systèmes dInformation
Démarche de développement
UML (2) Modèle dynamique le diagramme de séquence
Introduction : Management des systèmes d ’information
Michel Tollenaere SQL et relationnel ENSGI Cours MSI 2A Relationnel et SQL version 1.4 du 25 septembre 2007 (ajout jointures) 1 Modèle relationnel Historique.
Sensibilisation a la modelisation
Équipe 2626 Octobre 2011 Jean Lavoie ing. M.Sc.A.
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
Nom:____________ Prénom: ___________
UML (2) aspect dynamique
Partie II: Temps et évolution Energie et mouvements des particules
Initiation MS Access 2010 Structures – Tables, schémas et Données
Unified Modeling Langage
Nouvelles Technologies Internet & Mobile
Chapitre 5 Les diagrammes d’interaction (collaboration et séquence)
Chapitre 2 Rappels objet et Présentation des diagrammes UML
Chapitre 2 Rappels objet et Présentation des diagrammes UML
Michel TOLLENAERE 1 Cours MSI 2A ICL session automne 2015 Management des Systèmes d’Information (MSI) Cours : chapitre 3 UML Etude de cas Implémentation.
Transcription de la présentation:

UML (2) Rappel sur le modèle statique : classe / objet Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 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 l’héritage en relationnel (SGBD) Liens entre modèles statique et dynamique : Cohérence du modèle

Exemples : Quelques diagrammes Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Exemples : Quelques diagrammes : acteur (intéragissant avec VEGA2) Système (VEGA2) message Cas d’utilisation une fonctionnalité attendue du système (VEGA2) par les différents acteurs. Diagramme de Classes 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). C’est une ensemble de messages échangés entre les acteurs et le système, ordonnés chronologiquement.

Modèle Statique (rappels) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Modèle Statique (rappels) Diagramme de classes Diagramme d’objets

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

Gestion des commandes client (diagramme de classes et d’objets) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Gestion des commandes client (diagramme de classes et d’objets) article client commande comporte> 1 Passe une> 0 .. * 1 .. * * Ligne-Cmd Dell Lat400 :article Compaq tabletPC :article RAM 512MO :article Photosmart500 :article Toshiba SD300 :article 1 : lignecmd 2 : lignecmd CMD015 :commande CMD007 :commande CMD003 :commande Jacky Durand :client Pierre Dupond :client Hervé Latour :client

Gestion des commandes client (diagramme de classes et d’objets) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Gestion des commandes client (diagramme de classes et d’objets) Diagramme de classe Diagramme d ’objets article client commande comporte> 1 Passe une> 0 .. * 1 .. * Lien Association * Ligne-Cmd Conceptualise Objet Classe Illustre Photosmart500 :article 1 : lignecmd RAM 512MO :article 1 : lignecmd CMD003 :commande 2 : lignecmd CMD007 :commande Compaq tabletPC :article 1 : lignecmd Pierre Dupond :client CMD015 :commande 1 : lignecmd Dell Lat400 :article Jacky Durand :client Hervé Latour :client Toshiba SD300 :article

Gestion des commandes client (diagramme de classes 2) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Gestion des commandes client (diagramme de classes 2) commande client article num date adresse livraison nom prénom adresse téléphone code postal code désignation prix-U rayon ss-rayon comporte> 1 .. * 1 Passe une> 0 .. * * CalculMontant () ajout article modifier () paye Passe commande () paie commande (cmd) Ligne-Cmd quantité Ne respecte pas les formes normales On peut affiner le modèle au niveau de l’implantation des articles (très utile pour définir les tournées de constitution des commandes)

Gestion des commandes client (diagramme de classes 2) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Gestion des commandes client (diagramme de classes 2) commande client article num date adresse livraison nom prénom adresse téléphone code postal code désignation prix-U rayon ss-rayon 1 0 .. * * comporte> 1 .. * Faut il définir l’appartenance du sous rayon au rayon ?? Passe une> CalculMontant () ajout article modifier () paye contient> 1 Sous rayon Rayon emplacement Implantation comporte Passe commande () paie commande (cmd) Ligne-Cmd * quantité Rôle dans l’association

Gestion des commandes client (diagramme de classes 2) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Gestion des commandes client (diagramme de classes 2) article code désignation prix-U rayon ss-rayon Partage de propriétés et de comportements comporte * Rayon Sous rayon Nom emplacement Rayon emplacement nom 1 contient> * Implantation 1

Gestion des commandes client (diagramme de classes 2) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Gestion des commandes client (diagramme de classes 2) article Implantation code désignation prix-U rayon ss-rayon Nom emplacement Généralisation Héritage de propriétés comporte * Rayon Sous rayon Nom emplacement Rayon emplacement nom 1 contient> * Implantation 1

Gestion des commandes client (diagramme de classes 1) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Gestion des commandes client (diagramme de classes 1) commande client article num date adresse livraison nom prénom adresse téléphone code postal code désignation prix-U rayon ss-rayon comporte> 1 .. * 1 Passe une> 0 .. * * Quand peut on ajouter un article ? Etat des commandes ? CalculMontant () ajout article modifier () paye Passe commande () paie commande (cmd) Comportement des objets Ligne-Cmd quantité Nécessité de définir et spécifier un modèle dynamique

Modèle Dynamique Diagramme d’état-transition Diagramme de séquences Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Modèle Dynamique Diagramme d’état-transition Diagramme de séquences

Diagramme d’états-Transition Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Diagramme d’états-Transition Description des séquences possibles d’états et d’actions 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 d’un objet à un moment donné transition : connexion entre deux états, permettant le passage d’un état à l’autre

Diagramme d’état-transition Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Diagramme d’état-transition événement : occurrence d’une 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 d’une transition lors de l’occurrence d’un événement (cas de plusieurs transitions exclusives déclenchées par le même événement) action : opération exécutée pendant que l’objet est dans un état donné ou lorsque une transition est déclenchée (correspondant à des opérations déclarées dans la classe de l’objet destinataire). Une action d’un état est dite « activité » quand l’opération associée a un temps d’exécution non négligeable (do : nom_opération) (exemple notification)

Diagramme d’état-transition de la classe « commande » Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Diagramme d’état-transition de la classe « commande » commande num date adresse livraison Confirmée do / préparer livraison En préparation do / ajout article Confirmation client [Si solvable] Livraison effectuée paiement effectué 10 ans après paiement CalculMontant () ajout article modifier () paye état initial état final Pas de confirmation client après 1 mois Livrée do / attente paiement Payée état final

Une implémentation dans MS-Access Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Une implémentation dans MS-Access un attribut « Etat » de type « liste déroulante » dont le contenu correspond aux valeurs des états du diagramme

Une meilleure implémentation dans MS-Access Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Une meilleure implémentation dans MS-Access

Une meilleure implémentation dans MS-Access Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Une meilleure implémentation dans MS-Access

Diagramme d’état-transition Diagramme d ’états-transitions Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Diagramme d’état-transition Exemple personne En activité do: travailler société Plus de 60 ans nom prénom age adresse téléphone code postal est employée par> n° SIREN nom C.A. Implantation * 0..1 Perte d ’emploi A la retraite Embauche Au chômage Plus de 60 ans Diagramme de classes Diagramme d ’états-transitions 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 d’un lien vers une société.

Diagramme d’état-transition Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 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

Diagramme de Séquences Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Diagramme de Séquences Niveau 1 : diagramme de séquences fonctionnel = = interactions acteur(s) – système dans le cadre d’un 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 d’un use case Pour chaque cas d’utilisation, 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 d’utilisation.

Diagramme de Séquences (principes généraux) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Diagramme de Séquences (principes généraux) Objet 1 Objet 2 1 : [condition A] message 2 : message synchrone 3 : message de création Objet 3 Evénement / Communication entre objets 4 : message 5 : message 6 : [condition B] message 7 : message réflexif Période d’activité de l’objet : ligne de vie 9 : message asynchrone 8 : message de destruction

Diagramme de Séquences (principes généraux) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Objet 1 Objet 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 l’appelé ait fini de traiter le message (message 1) message asynchrone: l’émetteur n’est 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)

Diagramme de Séquences (principes) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Objet 1 Objet 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

Diagramme de Séquences (principes généraux) Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Diagramme de Séquences (principes généraux) Objet 1 Objet 2 1 : [condition A] message 2 : message synchrone Ligne de vie de l’objet 3 : message de création Objet 3 4 : message 5 : message 6 : [condition B] message 7 : message réflexif 9 : message asynchrone 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 »)

Diagramme de Séquences Exemple de Diagramme Niveau 1 Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Diagramme de Séquences Exemple de Diagramme Niveau 1 Appelant Ligne téléphonique Appelé décroche tonalité numérotation sonnerie indication de sonnerie allô

Exemple de Diagramme Niveau 2 Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Exemple de Diagramme Niveau 2

Exemple de Diagramme Niveau 2 Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Exemple de Diagramme Niveau 2

Exemple de Diagramme Niveau 2 Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Exemple de Diagramme Niveau 2 Nouvelle mission

Les Interfaces Homme-Machine I.H.M. Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Les Interfaces Homme-Machine I.H.M. sous Windows html étendus

Resp de production : supervision d’un process Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Resp de production : supervision d’un process Ou visualisation des plannings de techniciens libres

En logistique, les interfaces carto Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 En logistique, les interfaces carto

Modèles Statique et Dynamique Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Modèles Statique et Dynamique Concept de généralisation et d’héritage Implantation de l’héritage en relationnel Méta-modélisation UML

Relation non réflexive : une classe ne peut dériver d’elle-même Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Généralisation : Relation non réflexive : une classe ne peut dériver d’elle-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

GENERALISATION Super-classe Animal Généralisation Spécialisation Chat Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 GENERALISATION Super-classe Animal Généralisation Spécialisation Chat Chien Raton laveur COHERENCE Sous-classe

CLASSES, PAQUETAGES, CAS D'UTILISATION Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 GENERALISATION CLASSES, PAQUETAGES, CAS D'UTILISATION EST UN => GENERALISATION A => COMPOSITION GENERALISATION => HERITAGE COUPLAGE FORT ENTRE CLASSES

GENERALISATION MULTIPLE Tapis Véhicule Super-classe Super-classe Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 GENERALISATION MULTIPLE Tapis Véhicule Super-classe Super-classe Terrestre Aérien Tapis volant Fusion de plusieurs classes en une seule classe Sous-classe

GENERALISATION Véhicule DISCRIMINANT DISCRIMINANT Motorisation Milieu Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 GENERALISATION Véhicule DISCRIMINANT DISCRIMINANT Motorisation Milieu A voile A moteur Terrestre Marin

GENERALISATION Champignon {Exclusif} Agaricus Boletus Pied bleu Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 GENERALISATION Champignon {Exclusif} Agaricus Boletus Pied bleu Bolet de loup

GENERALISATION Véhicule Motorisation Milieu {Inclusif} A voile Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 GENERALISATION Véhicule Motorisation Milieu {Inclusif} A voile A moteur Terrestre Marin Pétrolette Mélange des deux dimensions

GENERALISATION Complète Incomplète Cours {Incomplète} Maths Français Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 GENERALISATION Complète Incomplète Cours {Incomplète} Maths Français Géographie

GENERALISATION ... Vue partielle Cours Maths Géographie Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 GENERALISATION Vue partielle Cours Maths Géographie ...

CLASSE ABSTRAITE Classe Abstraite  Non instanciable Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 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

Implantation de l’héritage en relationnel Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Implantation de l’héritage en relationnel Principe : 1 classe = 1 table 1 association n - m = 1 table Implantation Nom emplacement Table Implantation ID-implant : entier Nom : string Emplacement : string Table Rayon ID-rayon : entier Table Sous-Rayon ID-ss-rayon : entier Rayon : entier Rayon Sous rayon * 1 On ne factorise pas les attributs (Nom, emplacement) Il faudra coder 3 fois les accès communs définis dans la classe « implantation »

Implantation de l ’héritage en relationnel Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Implantation de l ’héritage en relationnel * 1 Implantation Nom emplacement type : {rayon ; ss-rayon} Implantation Principe : 1 table pour toutes les classes 1 association n - m = 1 table Nom emplacement Table Implantation ID-implant : entier Nom : string Emplacement : string Type : {rayon ; ss-rayon} Rayon : entier Rayon Sous rayon * 1 Schéma relationnel plus concis, mais : un rayon ou sous rayon peut être constitué d’autres rayons aucun contrôle de cohérence sur les compositions récursives

Diagramme de Classes Métier Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 Diagramme de Classes Métier

UML cohérence des diagrammes Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 UML cohérence des diagrammes Use cases Diagramme d’état-transition Diagramme de séquences Diagramme de classes Interfaces Homme/Machine.

do / préparer livraison Pas de confirmation client après 1 mois Cours MSI-2A filière ICL UML 2 version 2.0 du 21 novembre 2009 cas d'utilisation Acteur 1 cas d'utilisation article code désignation prix-U rayon ss-rayon * contient> 1 Sous rayon Rayon emplacement nom Implantation comporte Nom cas d'utilisation Acteur 2 En préparation do / ajout article état initial état final Confirmée do / préparer livraison do / attente paiement Livrée Payée Confirmation client paiement effectué 10 ans après paiement Pas de confirmation client après 1 mois