L`approche UML
Transcription
L`approche UML
Méthodologies de développement de logiciels de gestion Chapitre 4 Comparaison des deux approches de modélisation Présentation réalisée par P.-A. Sunier Professeur à la HE-Arc de Neuchâtel http://lgl.isnetne.ch Références Ce chapitre est rédigée, pour l’essentiel, à partir de la phase 4 de notre projet de recherche: [ISNEt-43] Atelier de génie logiciel Approche fonctionnelle ou objet Concurrence ou complémentarité ? http://lgl.isnetne.ch/isnet43 Dans ce projet, nous utilisions le terme d’approche fonctionnelle en lieu et place d’approche «classique» proposée par Satzinger. Pour l’approche classique, nous présentons les éléments de l’AGL Designer d’Oracle que nous avons utilisé pour le projet. Pour l’approche orientée objets, nous présentons les diagrammes réalisés avec l’AGL Rose de Rational que nous avons utilisé pour le projet. mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation 2 Plan 1. Comparaison des métamodèles 2. Comparaison sur la base des principes de l’approche classique (Merise) 3. Comparaison sur la base des diagrammes d’UML mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation 3 1 Comparaison des métamodèles Métamodèle des paquetages UML Métamodèle du référentiel de Designer mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 4 1. Métamodèles Traits significatifs Approche objets UML Approche fonctionnelle Oracle Designer Éléments Éléments Éléments d’annotation Relations Associations Diagrammes Information des diagrammes Règles sémantiques Règles Mécanismes généraux Énoncés, décorations, extensions mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 5 1. Métamodèles Éléments Approche objets UML Approche fonctionnelle Oracle Designer Classes Entités Interfaces Vues - Portée des procédures Collaborations Hiérarchie de processus ou de fonctions Cas d’utilisation Processus ou fonction Classes actives Composants Modules et composants Nœuds Messages Événements d’entrée/sortie - Flux États Paquetages mai 2005 / p.-a. sunier Paquetages FCàOO / $4 - Comparaison de modélisation [ISNet-43] 6 1. Métamodèles Relations (au sens UML) Approche objets UML Approche fonctionnelle Oracle Designer Dépendances Dépendances Associations Associations Généralisations Sur-types et sous-types d’entités Réalisations Implémentations mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 7 1. Métamodèles Diagrammes Approche objets UML Approche fonctionnelle Oracle Designer de classes d’entités - associations logiques de données (relationnel) d’objets - de déploiement - de composants de traitements (modules) de séquence - de collaboration de processus et de flux de données de hiérarchie de fonctions de cas d’utilisation de processus et de flux de données d’états - transitions - d’activités de processus et de flux de données mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 8 2 Comparaison sur la base des principes de l’approche classique (Merise) 1. 2. 3. 4. Introduction Niveaux d’abstraction Approche fonctionnelle Dualité des données - traitements mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 9 2. Merise 2.1 Introduction [KETT-98 p 293] Cinq principes fondamentaux ont présidé à l'élaboration de Merise: l'approche systémique, les cycles de construction du système d'information, l'approche fonctionnelle, la vision duale des données-traitements et l'approche qui part du général pour atteindre le particulier. mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 10 2.2 Niveaux d’abstraction 4. Merise [KETT-98 p 297] L’approche Merise - Le cycle d'abstraction permet de sérier les niveaux de préoccupations lors de la description ou de l'analyse du système... Les trois niveaux retenus correspondent à des degrés de stabilité et d'invariance de moins en moins élevés. – Le niveau conceptuel – Le niveau logique – Le niveau physique L'approche UML - UML propose différentes notions (cas d'utilisation, paquetage, classe, composant, nœud) et différents diagrammes pour modéliser le systèmes aux différents niveaux d'abstraction. mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 11 4. Merise Niveaux mai 2005 / p.-a. sunier Niveau conceptuel - Modèle E-A / Designer FCàOO / $4 - Comparaison de modélisation [ISNet-43] 12 4. Merise Niveaux mai 2005 / p.-a. sunier Niveau conceptuel - Modèle du domaine / UML / RUP FCàOO / $4 - Comparaison de modélisation [ISNet-43] 13 4. Merise Niveaux mai 2005 / p.-a. sunier Niveau logique - Modèle relationnel / Designer FCàOO / $4 - Comparaison de modélisation [ISNet-43] 14 4. Merise Niveaux mai 2005 / p.-a. sunier Niveau logique - Modèle relationnel / UML / Rational Rose FCàOO / $4 - Comparaison de modélisation [ISNet-43] 15 4. Merise 2.3 Approche fonctionnelle [KETT-98 p 298] L'approche Merise - Merise propose une approche descendante où le système réel est décomposé en activités, ellesmêmes déclinées en fonctions. Les fonctions sont composées de règles de gestion, elles-mêmes regroupées en opérations. Ces règles de gestion au niveau conceptuel génèrent des modules décomposés en modules plus simples et ainsi de suite jusqu'à obtenir des modules élémentaires... Les limites d'une telle approche résident dans le fait que les modules sont difficilement extensibles et exploitables pour de nouveaux systèmes. L'approche UML - Dans UML les fonctions cèdent la place aux cas d'utilisation qui permettent de situer les besoins de l'utilisateur dans le contexte réel. A chaque scénario correspond des diagrammes d'interaction entre les objets du système et non pas un diagramme de fonction... mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 16 4. Merise Fonctionnel mai 2005 / p.-a. sunier TI – Démarche & composants réutilisables FCàOO / $4 - Comparaison de modélisation [ISNet-43] 17 4. Merise Fonctionnel mai 2005 / p.-a. sunier Cas d’utilisation et scénarios FCàOO / $4 - Comparaison de modélisation [ISNet-43] 18 4. Merise Fonctionnel 2.4 Dualité des données - traitements •[KETT-98 p 298] L'approche Merise - Merise propose de considérer le système réel selon deux points de vue: un point de vue statique (les données), un point de vue dynamique (les traitements). Il s'agit d'avoir une vision duale du système réel pour bénéficier de l'impression de relief qui en résulte, et donc consolider et valider le système final. •L'approche UML - L'approche objet associe les informations et les traitements. De cette façon, elle assure un certain niveau de cohérence mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 19 4. Merise Fonctionnel mai 2005 / p.-a. sunier Modèles d’analyse UML / Rose FCàOO / $4 - Comparaison de modélisation [ISNet-43] 20 4. Merise Fonctionnel mai 2005 / p.-a. sunier Module Designer FCàOO / $4 - Comparaison de modélisation [ISNet-43] 21 Modèle d’analyse OO et module Designer 4. Merise Fonctionnel Approche fonctionnelle Modèle logique de traitement Approche objets Modèle d'analyse Module Contrôle + Frontière Composant Frontière + Contrôle Utilisation de table Entité mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 22 4. Merise Fonctionnel Modèles relationnels Approche classique Oracle Designer mai 2005 / p.-a. sunier Approche orientée objets Rational Rose FCàOO / $4 - Comparaison de modélisation [ISNet-43] 23 3. Comparaison sur la base des diagrammes UML 1. 2. 3. 4. 5. 6. Introduction Diagrammes de classes Diagrammes de cas d’utilisation Diagrammes de séquences Diagrammes de collaboration Diagrammes d’activités mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 24 3. Diagrammes UML 3.1 Introduction Pas de diagramme équivalent avec l’approche classique d’Oracle Designer mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 25 3. Diagrammes UML 3.2 Diagrammes de classes La modélisation conceptuelle des données telle que nous la connaissons avec Merise existe aussi en UML, elle se représente sous forme de diagrammes de classes; les 2 concepts représentent certains aspects statiques des systèmes d'information. Les modèles conceptuels de Merise (ou autres) peuvent être vus comme un sous-ensemble des diagrammes de classes d'UML; ce sous-ensemble ne prenant en compte que les entités métiers ou les classes du domaine relatives aux "choses" du système à modéliser. [Tiré de notre cours UML http://lgl.isnetne.ch/uml/exercice/mcd/introduction.htm ] mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 26 3. Diagrammes UML mai 2005 / p.-a. sunier 3.3 Diagrammes de cas d’utilisation FCàOO / $4 - Comparaison de modélisation [ISNet-43] 27 3. UML Cas d’utilisation mai 2005 / p.-a. sunier Analogie avec le diagramme de processus FCàOO / $4 - Comparaison de modélisation [ISNet-43] 28 3. UML Cas d’utilisation mai 2005 / p.-a. sunier Analogie avec le diagramme de flux de données (DFD) FCàOO / $4 - Comparaison de modélisation [ISNet-43] 29 3. Diagrammes UML mai 2005 / p.-a. sunier 3.4 Diagrammes de séquences FCàOO / $4 - Comparaison de modélisation [ISNet-43] 30 3. UML Séquences mai 2005 / p.-a. sunier Analogie avec le diagramme de processus FCàOO / $4 - Comparaison de modélisation [ISNet-43] 31 3. Diagrammes UML mai 2005 / p.-a. sunier 3.5 Diagrammes de collaboration FCàOO / $4 - Comparaison de modélisation [ISNet-43] 32 3. UML Collaboration mai 2005 / p.-a. sunier Analogie avec le diagramme de processus FCàOO / $4 - Comparaison de modélisation [ISNet-43] 33 3. Diagrammes UML mai 2005 / p.-a. sunier 3.6 Diagrammes d’activités FCàOO / $4 - Comparaison de modélisation [ISNet-43] 34 3. UML Cas d’utilisation Analogie avec les diagrammes de processus et de flux de données Le diagramme d’activité étant utilisé pour montrer un flux de travaux, il est naturellement relativement des diagrammes de processus et de flux de données. mai 2005 / p.-a. sunier FCàOO / $4 - Comparaison de modélisation [ISNet-43] 35 3. UML Cas d’utilisation mai 2005 / p.-a. sunier Analogie avec le diagramme de flux de données (DFD) FCàOO / $4 - Comparaison de modélisation [ISNet-43] 36