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

UML : Unified Modeling Language. Plan ● Introduction ● Diagramme d'activité ● Diagramme de classe.

Présentations similaires


Présentation au sujet: "UML : Unified Modeling Language. Plan ● Introduction ● Diagramme d'activité ● Diagramme de classe."— Transcription de la présentation:

1 UML : Unified Modeling Language

2 Plan ● Introduction ● Diagramme d'activité ● Diagramme de classe

3 Introduction

4 Unified Modeling Language ● Auteurs ● James Rumbaugh ● Grady Booch ● Ivar Jacobson ● Standardisation par l'OMG en 1997 ● Version 2.0 (dernier trimestre 2003)

5 Filiation OMT (J. Rumbaugh) OOSE (I. Jacobson) Booch (G. Booch) UML

6 Versions ● Rational ● OMT+Booch = Unified Method (1995) ● Unified Method + OOSE = UML0.9 ● OMG ● UML1.1 (novembre 1997) ● UML1.3 (juin 1999) ● UML1.4 (fin 2001) ● UML2.0 (fin 2003)

7 UML : définition ● Langage de notation ● Indépendant vis à vis des langages de programmation ● Ouvert ● Extensible ● N'est pas une méthode ● Un ensemble de 13 diagrammes

8 Diagrammes de comportement ● Cas d'utilisation ● Activité ● État ● Séquence ● Collaboration ● Interaction ● Temps

9 Métamodèle : dynamique

10 Diagrammes de structure ● Paquetage ● Classe ● Objet ● Composant ● Déploiement ● Composant composite

11 Métamodèle : statique

12 Diagramme de cas d'utilisation ● Un cas d'utilisation représente une unité fonctionnelle du système. ● Un diagramme de cas d'utilisation visualise les besoins fonctionnels. ● Les acteurs qui interagissent avec le système ● Les relations entre les cas d'utilisation

13 Exemple de cas d'utilisation

14 Diagramme de classe ● Représente la structure statique du système. ● Acteurs internes au système. ● Niveaux de représentation : ● Logique ● Implémentation

15 Exemple de diagramme de classe

16 Diagramme de séquence ● Montre le détail des flux dans un cas d'utilisation. ● Modélise les appels entre les objets. ● Deux dimensions : ● Verticale : la chronologie des messages. ● Horizontale : les instances émettrices et réceptrices des messages.

17 Exemple de diagramme de séquence

18 Diagramme d'état ● Modélise les états par lesquels passe une classe. ● Modélise comment une classe change d'état. ● Cinq éléments de base : ● Points de départ et de fin ● Ligne orientée de transition ● Un rectangle d'état ● Point de transition

19 Exemple de diagramme d'état États des objets de type Commande

20 Diagramme d'activité ● Modélise les flux entre deux ou plusieurs classes en activité. ● Adapté pour des niveaux d'abstraction élevés. ● Logique métier ● Cas d'utilisation ● Reprend en partie la notation utilisée par les diagrammes d'état.

21 Exemple de diagramme d'activité

22 Diagramme de composant ● Modélise une vue physique du système. ● Montre les dépendances entre les composants qui constituent le système (librairies). ● Granularité ● Forte : composants de haut niveau ● Fine : niveau paquetage

23 Exemple de diagramme de composant

24 Diagramme de déploiement ● Modélise comment le système doit être déployer physiquement sur les entités matérielles (hardware). ● Montre où les composants logiciels s'exécutent et comment ils communiquent. ● La notation reprend, en l'étendant, la notation du diagramme de composant.

25 Exemple de diagramme de déploiement

26 Les 4+1 vues ● Vision d'architecture ● Il existe plusieurs manières de regarder un système ● Philippe Kruchten, le modèle 4+1 vues, IEEE Software, Nov 95 ● Vue logique ● Vue de réalisation ● Vue des processus ● Vue de déploiement ● Vue des cas d'utilisation

27 La vue logique ● Aspects statiques et dynamiques ● Les éléments ● Les objets ● Les classes ● Les collaborations ● Les interactions ● Les paquetages >

28 La vue de réalisation ● Organisation des modules dans l'environnement de développement ● Les éléments ● Les modules ● Les sous-programmes ● Les tâches (en tant que unités de programme) ● Les paquetages >

29 La vue des processus ● Décomposition en flots d'exécution et synchronisation entre ces flots ● Les éléments ● Les tâches ● Les threads ● Les processus ● Les interactions

30 La vue de déploiement ● Les ressources matérielles et l'implémentation du logiciel dans ces ressources ● Les éléments ● Les noeuds ● Les modules ● Les programmes principaux

31 La vue des cas d'utilisation ● Le recouvrement entre les vues ● Les éléments ● Les acteurs ● Les cas d'utilisation ● Les classes ● Les collaborations

32 Récapitulatif

33 UML : métamodèle ● MOF (Meta Object Facility) ● Langage utilisé pour définir le méta- modèle d'UML. ● Permet de définir d'autres langages de modélisation. ● Langage universel.

34 Fragment du métamodèle UML

35 Niveaux du métamodèle ● M3 ● L'ensemble des éléments utilisé pour définir des métamodèles. ● Classes MOF, attributs MOF, etc. ● M2 ● Métamodèles instances de MOF. ● Classes UML, attributs UML, associations UML, etc. ● Tables, vues, colonnes, etc.

36 Niveaux du métamodèle ● M1 ● Modèles instances de métamodèles M2. ● Classe ''Commande'', classe ''Client'', etc. ● Table ''Produit'', table ''Vendeur'', etc. ● M0 ● Objets et données instances de M1. ● La commande 1515, le Client ''Marignan'', etc.

37 Niveaux du métamodèle MOF UML Objets d'une application Diagrammes d'une application

38 Diagramme d'activité

39 Utilité ● Modéliser le flux procédural d'actions au sein d'activités plus larges. ● Détailler les cas d'utilisation ● Modéliser les fonctions de niveau métier ● Modéliser les fonctions de niveau système

40 Action ● Exemple d'une action. ● Partie d'un diagramme d'activité

41 État initial ● Point de départ unique ● Une seule action à partir du départ

42 État final ● Sur des points de décision il peut y avoir des actions concurrentes. ● Donc il peut y avoir plusieurs points d'arrêt.

43 Séquence d'actions (1)

44 Séquence d'actions (2) 1. Le client appelle le service vente de tickets 2. L'employé demande pour quel concert 3. Le client fait part de son choix 4. L'employé indique les places disponibles et leur prix 5. Le client choisit ses places 6. L'employé réserve les places choisies 7. L'employé demande la carte de crédit et l'adresse du client 8. Le client renseigne l'employé 9. L'employé réalise la transaction bancaire sur la carte de crédit 10. L'employé envoie les tickets au client

45 Point de décision

46 Point de convergence

47 Actions asynchrones

48 Objet de flux

49 Diagramme de classe

50 Utilité ● Montrer la structure statique du système. ● Montrer les entités du système. ● Structure interne des entités. ● Relations entre les entités. ● Niveau de détail suffisant pour la phase d'implémentation ● Méthodes ● Attributs

51 Notation pour une classe

52 Accédants, assesseurs

53 Spécialisation

54 Association nom de l'associationsens de lecture du nom rôle joué par les objets multiplicité contrainte navigation

55 Association bidirectionnelle

56 Association unidirectionnelle

57 Classe associative

58 Agrégation Agrégation et composition sont vecteurs de propagation de comportements Le cycle de vie des objets agrégés est indépendant de l'objet agrégation

59 Composition Le cycle de vie des objets composants est lié à leur composition

60 Association réflexive

61 Qualification Avion Siège N°siège Avion Siège Avion 320 1 6 N°rangée La qualification réduit la multiplicité

62 Dépendance Relation ponctuelle, les objets Produit n'entretiennent pas de référence permanente avec l'objet Convertisseur.

63 Interface

64 Notes, contraintes, stéréotypes

65 Bibliographie ●UML distilled – Martin Fowler – Addison-Wesley ●Model Driven Architecture – David S. Frankel – OMG PRESS ●Unified Modeling Language User Guide - G. Booch – Addison- Wesley ●Unified Software Development Process – I. Jacobson – Addison-Wesley ●Unified Modeling Language Reference Manual – J. Rumbaugh - Addison-Wesley

66 Sites Web ● Ressources documentaires ● www.omg.org www.omg.org ● www.uml.org www.uml.org ● www.cetus-links.org www.cetus-links.org ● www.rational.com www.rational.com ● Ressources outils ● www.argouml.tigris.org - AGL ArgoUML www.argouml.tigris.org ● www.gentleware.com - AGL Poseidon [ basé sur le projet ArgoUML ] www.gentleware.com ● uml.sourceforge.net - AGL Umbrello uml.sourceforge.net ● www.omondo.com - Plugin Eclipse OMONDO (Modeleur) www.omondo.com ● www.lysator.liu.se/~alla/dia - Créateur de diagrammes DIA www.lysator.liu.se/~alla/dia


Télécharger ppt "UML : Unified Modeling Language. Plan ● Introduction ● Diagramme d'activité ● Diagramme de classe."

Présentations similaires


Annonces Google