Méthodologies de développement de logiciels de gestion Chapitre 5 Traits caractéristiques des deux approches de méthodologie Présentation réalisée par P.-A. Sunier Professeur à la HE-Arc de Neuchâtel http://lgl.isnetne.ch
Références Ce document est rédigé, 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 concepts de la méthodologie CDM d Oracle que nous avons utilisée pour le projet. Pour l approche orientée objets, nous présentons les concepts d UP et du RUP que nous avons utilisé pour le projet. mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 2
Plan 1. Concepts de la méthodologie classique CDM d Oracle 2. Concepts de la méthodologie orientée objets UP / RUP 3. Comparaison des deux approches méthodologiques mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 3
1. Concepts de la méthodologie classique CDM d Oracle Oracle, par son service de consultants, commercialise une méthode de réalisation de systèmes d'information informatisés. La présentation complète de cette méthode, Oracle CDM -Custom Development Method- Advantage 2.0, inspirée du courant de pensée systémique, est accessible sur le site Oracle [Oracle CDM Advantage 2.0] mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 4
1. Oracle CDM Enracinement - Oracle Method SM mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 5 [Extrait de Oracle CDM]
1. Oracle CDM Fondements Oracle Method SM et CDM sont des descendants de Case*Method. [HS-94] La caractéristique principale de Case*Method est qu'elle fait partie de la famille des méthodes systémiques qui préconisent les trois concepts suivants: avoir une vue globale du système d'information distinguer plusieurs niveaux d'abstraction lors du processus de modélisation mettre en évidence la dualité données/traitements mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 6
1. Oracle CDM Eléments fondamentaux (a) Délivrable. Un délivrable, ou artefact, est un élément concret produit durant le déroulement d'un projet. Tâche. Une tâche est une unité de travail qui se termine par la production d'un simple délivrable. Dépendance. Une dépendance entre deux tâches permet d'ordonnancer les tâches. mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 7
1. Oracle CDM Eléments fondamentaux (b) Processus. Un processus est une série de tâches qui fournissent un ou plusieurs délivrables essentiels. Phase. Une phase est une série de tâches exécutées durant une période spécifique. Usuellement, les délivrables des projets sont réalisés dans différentes phases. Approche. Une approche de réalisation est un chemin particulier pour délivrer un projet. Par exemple: CDM Classic et CDM Fast Track; toutefois, tout en chacun peut utiliser les différents composants de CDM pour définir une approche personnalisée. mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 8
1. Oracle CDM CDM Classic - Phases & processus mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 9 [Extrait de Oracle CDM]
1. Oracle CDM CDM Fast Track - Phases mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 10 [Extrait de Oracle CDM]
1. Oracle CDM CDM Fast Track - Processus mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 11 [Extrait de Oracle CDM]
2. Concepts de la méthodologie orientée objets UP / RUP [JBR-00 p 3 Avant-propos] Cet ouvrage (UP Le processus unifié) présente le processus logiciel que nous avions constamment à l'esprit en mettant au point le langage UML (Langage de modélisation unifié). Si UML fournit un moyen standard de visualiser, spécifier, construire, documenter et communiquer les artefacts d'un système à logiciel prépondérant, nous admettons, bien entendu, qu'un tel langage doit être utilisé dans le cadre d'un processus logiciel complet. UML est un moyen, ce n'est pas une fin en soi. L'objectif est d'obtenir une application logicielle robuste, résistante et évolutive. Pour parvenir à ce but, il faut à la fois un processus et un langage... mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 12
2. UP Fondements [JBR-00 p 16] Les traits véritablement distinctifs du processus unifié tiennent en trois expressions clés: piloté par les cas d'utilisation centré sur l'architecture itératif et incrémental mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 13
2. UP Piloté par les cas d utilisation mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 14 [Extrait de RUP]
2. UP Centré sur l architecture mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 15 [Inspiré de PK-00]
2. UP Itératif et incrémental mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 16 [Extrait de RUP]
2. UP Eléments fondamentaux (a) [PK-00 p33] Un processus décrit qui fait quoi, comment et quand. Pour représenter le Rational Unified Process, on utilise quatre éléments primaires de modélisation: les travailleurs: - le qui les artefacts: - le quoi les activités et les étapes d'activités: - le comment les enchaînements d'activités: - le quand mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 17 [Extrait de RUP]
2. UP Relations entre éléments fondamentaux mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 18 [Extrait de RUP]
2. UP Architecture générale du RUP mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 19 [Extrait de RUP]
3. Comparaison des deux approches méthodologiques 1. A partir des concepts fondamentaux de l approche classique 2. A partir des concepts fondamentaux de l approche orientée objets 3. Meilleures pratiques 4. Conclusion mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 20
3. Comparaison 3.1 A partir des concepts fondamentaux de l approche classique [HS-94] avoir une vue globale du système d'information, c'est-à-dire considérer les données et les traitements d'une entreprise comme constituant unique et intégré. Cette approche globale conduit souvent vers un schéma de données, un schéma de traitement et un schéma organisationnel; distinguer plusieurs niveaux d'abstraction lors du processus de modélisation; on commence par le niveau le plus général (le conceptuel, le quoi) pour terminer par le niveau le plus détaillé et le plus technique (le physique, le comment); mettre en évidence la dualité données/traitements: les données et les traitements doivent être modélisés séparément dans un premier temps, pour être ensuite confrontés mutuellement. mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 21
3.1 Comparaison Classique Vue globale du système d information Entreprise SI mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 22
3.1 Comparaison Classique Niveaux d abstraction L'OMG propose la démarche de développement MDA. [ACC-92] qui est très semblable au concept de niveaux d'abstraction. Le Model Driven Architecture (MDA) permet de séparer les spécifications fonctionnelles d'un système des spécifications de son implémentation sur une plate-forme donnée. A cette fin, le MDA définit une architecture de spécifications structurée en modèles indépendants des plate-formes (PIM) et en modèles spécifiques (PSM). mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 23
3.1 Comparaison Classique Dualité données - traitements mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 24
3. Comparaison 3.2 A partir des concepts fondamentaux de l approche orientée objets [JBR-00 p 16] Les traits véritablement distinctifs du processus unifié tiennent en trois expressions clés: piloté par les cas d'utilisation centré sur l'architecture itératif et incrémental mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 25
3.2 Comparaison OO Piloté par les cas d utilisation [PK-00 p28] Les cas d'utilisation de UP ou RUP ne sont pas indispensables à une conception objet, mais ils fournissent un lien important entre le cahier des charges du système et d'autres artefacts de développement, tels que le modèle de conception et des tests. La modélisation des processus préconisée en gestion des exigences par la méthode CDM s'apparente aux modèles de cas d'utilisation de UP ou RUP; le modèle des processus conditionne ou pilote, lui aussi, la démarche de réalisation du système informatique qui devra satisfaire les besoins exprimés. mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 26
3.2 Comparaison OO Centré sur l architecture [PK-00 p82] Qu'est-ce qui est "architecturalement significatif"? C'est un élément ou un choix de conception qui a un très grand impact sur la structure du système, ses performances, sa robustesse, sa faculté d'évolution et d'expansion, et qui aide à comprendre comment fonctionne le système. CDM et l'approche fonctionnelle ne mettent pas en évidence ce point; toutefois, dans les approches s'appuyant sur une démarche itérative et incrémentale, comme avec CDM Fast Track, l'objectif des premières itérations est bien de maîtriser les risques sur la base de choix architecturaux pertinents. mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 27
3.2 Comparaison OO Itératif et incrémental Le choix de réaliser un système par une démarche en cascade ou itérative n'est pas lié à une approche particulière: classique ou orientée objets"; ce choix relève d'une problématique plus générale d'industrialisation pertinente du logiciel. Comme nous l'avons illustré dans la présentation de la méthode, CDM Fast Track propose une réalisation incrémentale et itérative sur la base de concepts similaires à ceux de UP ou RUP. mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 28
3. Comparaison 3.3 Meilleures pratiques Les meilleures pratiques du RUP [PK-00 p21] En combinant les meilleures pratiques de l'industrie logicielle, c'est-à-dire les approches éprouvées, on s'attaque aux causes profondes des problèmes de développement logiciel. On les appelle les "meilleures pratiques", non pas parce que l'on a pu évaluer quantitativement et avec précision leur valeur, mais parce qu'elles sont utilisées couramment par les organisations de développement performantes. mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 29
3.3 Comparaison Meilleures prat. Palmarès des meilleures pratiques [PK-00 p21] 1. développer le logiciel de manière itérative; 2. gérer les exigences; 3. utiliser des architectures à base de composants; 4. modéliser graphiquement le logiciel; 5. vérifier la qualité du logiciel; 6. contrôler les changements apportés au logiciel; mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 30
3.3 Comparaison Meilleures prat. Meilleures pratiques & outils selon Rational mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 31 [Extrait de RUP]
3.3 Comparaison Meilleures prat. Meilleures pratiques pour Oracle CDM [Oracle Method SM ] Oracle CDM a été développé par les praticiens chevronnés du développement grâce aux pratiques mises en oeuvre dans le monde entier par Oracle Consulting. CDM représente des années d'expérience dans la mise à jour permanente des techniques de développement appliquées au cycle de vie complet de projets de développement. mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 32
3. Comparaison 3.4 Conclusion Nous pouvons affirmer que les concepts fondamentaux de méthodologie de chacune des deux approches se retrouvent dans l'autre; ceci n'est pas étonnant dans la mesure où il s'agit, quelle que soit l'approche, de réaliser un système d'information informatisé de gestion satisfaisant les besoins d'utilisateurs pratiquant leurs métiers et mettant en oeuvre les technologies appropriées. mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 33
3.4 Comparaison Conclusion Différences essentielles A priori, les différences essentielles entre les deux approches apparaîtront dans les moyens intellectuels, logiciels et matériels utilisés en support de la méthode; nous pensons, par ordre chronologique aux modèles, diagrammes, ateliers de génie logiciel et environnements de programmation. mai 2005 / p.-a. sunier FCàOO / $5 - Traits caractéristiques de méthodologie 34