Nancy, décembre 2002 page 1 Assises du GDR I3 Composants dans l'Ingénierie des SI Concepts clés et techniques de réutilisation Franck Barbier, LIUPPA Corine.

Slides:



Advertisements
Présentations similaires
Définitions Analyse documentaire
Advertisements

Les Systèmes d’Information Financière Atelier conjoint ACBF / Banque Mondiale / AFRITAC de l’Ouest Gérer l’application dans le temps, sur les plans fonctionnel,
1 Modéliser Ou comment RE-présenter sa connaissance.
Eléments de Génie Logiciel
6 — Aperçu du processus unifié
IREMIA : Institut de REcherche en Mathématiques et Informatique Appliquées Université de la Réunion Uniformisation des mécanismes de conception de SMA.
LOG4430 : Architecture logicielle et conception avancée
Introduction Pour concrétiser l’enseignement assisté par ordinateur
Projet n°4 : Objecteering
XML - Henry Boccon-Gibod 1 XML, Langage de description La question du choix de formalismes Les entités et leur représentations modalités de modèles et.
Le processus unifié UML est un langage de modélisation et n ’impose pas de démarche de développement Le processus unifié : méthodologie de développement.
M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 3ème.
UML - Présentation.
1 B Système Enjeux et principes Cours DESS Nantes 04 Décembre 2002 Didier ESSAME.
INTRODUCTION.
Urbanisation et Architecture CNAM NFE107
Rational Unified Process (RUP)
Les Ateliers de Génie Logiciel
Page de garde Introduction aux Design Patterns ISIA, Mars 2003
Initiation à la conception des systèmes d'informations
Démarche Analyse des OGL et des Méthodes Objectifs : Activités :
le profil UML en temps réel MARTE
Initiation à la conception de systèmes d'information
Réalisée par :Samira RAHALI
DURIBREUX, Michèle & COCQUEBERT & HOURIEZ, Bernard,
Introduction à la conception de Bases de Données Relationnelles
Spécification et Vérification de Modèles de Procédés de Développement
BPM – Processus Marc Lapraz Emilien Siegrist Christel Minguely
Vers la conception objet
Modèle, Méthode et Conception
MOT Éditeur de modèles de connaissances par objets typés
Présentation du mémoire
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Notions de Base Hiver 2002 Petko Valtchev.
Portée, arrimages et intervenants Évolution des méthodes
Introduction aux patrons
Journées Patterns, Grenoble, 3-4 Avril 2003 DR /AC/JPGpage 1 Agnès Conte Département Informatique - IUT2 Grenoble Transparents issus dune présentation.
Sensibilisation a la modelisation
Ingénierie Système en SysML appliquée à la rédaction du cahier des charges Y. Le Gallou Séminaire académique STI2D - Calais – 1er avril 2014.
Patrons de conceptions de créations
ANALYSE METHODE & OUTILS
UML.
Supports de formation au SQ Unifié
Hatainville Les Moitiers d’Allonne – Tel : Website : stratic.online.com La démarche projet Mars 2001.
Institut Supérieur des Sciences Appliquées et de Technologie Sousse
GENIE LOGICIEL
Conception de systèmes d’information : une approche orientée service
1 Emeric ROLLIN 1 Génie Logiciel GENIE LOGICIEL
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
UML : un peu d’histoire H. Lounis.
Introduction au Génie Logiciel
Extrait du Referentiel BTS Systèmes numériques Options : Informatique et réseaux et Électronique et communication S1 à S9 Définition des savoirs et savoir-faire.
Initiation à la conception des systèmes d'informations
Rétro-ingénierie d’un système existant
RAISONNEMENT À PARTIR DE CAS R à PC. PLAN DU TRAVAIL Introduction Introduction Raisonnement analogique Raisonnement analogique Principe et étapes de R.
Présentation AICHA REVEL INGENIEUR D’ÉTUDE STERIA DEPARTEMENT TRD
Problèmes du génie logiciel. H. Lounis Les problèmes zTaille et complexité des logiciels ; zTaille croissante des équipes ; zSpécifications peu précises.
Année 2006 – 2007 ENSEA © Emeric Rollin
ISNET-43 Atelier de génie logiciel Approche fonctionnelle ou objets Concurrence ou complémentarité ? Synthèse.
L’enseignement de spécialité SLAM
Les démarches de développement
2 Tracks Unified Process
CSC Proprietary 6/20/2015 9:42:54 AM 008_5849_ER_Red 1 BPM - SOA Logo du client Synthèse de notions “fondamentales” par Guillaume Feutren, Stagiaire *
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Le Processus Hiver 2002 Petko Valtchev.
UML support à la COO 2ème année IUT Calais-Boulogne Bénédicte Talon
Conférence 2TUP Stéphane Barthon 03/12/
Présentation de la méthode Merise
Les bases de données Séance 2 Méthodologies d’analyse.
19 avril Spécification d’un cadre d’ingénierie pour les réseaux d’organisations Laboratoire de recherche : OMSI à l’EMSE.
Schéma de base de données Présentation. Conception du schéma logique  Transformation du schéma conceptuel en structures de données supportées par les.
Transcription de la présentation:

Nancy, décembre 2002 page 1 Assises du GDR I3 Composants dans l'Ingénierie des SI Concepts clés et techniques de réutilisation Franck Barbier, LIUPPA Corine Cauvet, LSIS Mourad Oussalah, IRIN Dominique Rieu, LSR-IMAG Sondes Bennasri, Carine Souveyet, CRI, Paris 1

Nancy, décembre 2002 page 2 Plan * Introduction sur la réutilisation * Cadre de référence pour la comparaison des composants * Les types de composants pour les SI ( métiers, architecturaux, patrons ) * Types de démarche : Pour et Par réutilisation * Synthèse sur les démarches les plus appliquées * Conclusion

Nancy, décembre 2002 page 3 « Il n ’y a qu ’une méthode pour inventer, qui est d’imiter. Il n ’y a qu’une méthode pour bien penser, qui est de continuer quelque pensée ancienne et éprouvée ». Alain Réutilisation Une évolution « naturelle » du métier - réduire les coûts et les délais de conception, d’implantation - et de maintenance si la réutilisation s’allie à la traçabilité Conséquences sur les produits Plus rapides à développer, Plus faciles à maintenir, Certainement meilleurs, Moins originaux.

Nancy, décembre 2002 page 4 Réutilisation dans l’ingénierie logicielle adaptation de J-M. Nerson, CACM 92 Spécifications Informelles Modèle Descriptif & Normatif Informatisable Modèle Effectif Informatisé Logiciel Expression des besoins Analyse (abstraction du monde réel) Conception (solution technique) Implantation (solution opérationnelle) COMPOSANTS

Nancy, décembre 2002 page 5 Réutilisation dans l’ingénierie logicielle Spécifications Informelles Modèle Descriptif & Normatif Informatisable Modèle Effectif Informatisé Logiciel Expression des besoins Analyse (abstraction du monde réel) Conception (solution technique) Implantation (solution opérationnelle) Patrons d’analyse Modèles de domaine Composants métiers conceptuels ERP, Frameworks Patrons d’architecture Patrons de conception Composants métiers logiciels Bibliothèques de classes

Nancy, décembre 2002 page 6 Un composant réutilisable : - traite un problème récurrent de l’ingénierie des SI - capitalise un fragment de produit ou de processus - offre une solution conceptuelle et/ou logicielle testée, acceptée et adaptable Réutilisation dans l’ingénierie du logiciel èNécessité de les classifier, les documenter, les organiser, les composer… èNécessité de démarches centrées réutilisation. Une très grande variété de composants réutilisables La réutilisation ne doit plus être limitée aux produits logiciels

Nancy, décembre 2002 page 7 Plan * Introduction sur la réutilisation * Cadre de référence pour la comparaison des composants * Les types de composants pour les SI ( métiers, architecturaux, patrons ) * Types de démarche : Pour et Par réutilisation * Synthèse sur les démarches les plus appliquées * Conclusion

Nancy, décembre 2002 page 8 Critères de caractérisation des composants * type de connaissance : produit ou processus, * couverture : générale (horizontale), métier (verticale), entreprise * portée : étapes d ’ingénierie, * nature de la solution : logicielle ou conceptuelle, * technique de réutilisation : spécialisation, composition, instanciation, duplication… * ouverture : boîte noire, blanche ou en verre, * granularité : taille du composant en nombre de classes, de modules,…

Nancy, décembre 2002 page 9 Plan * Introduction sur la réutilisation * Cadre de référence pour la comparaison des composants * Les types de composants pour les SI ( métiers, architecturaux, patrons ) * Types de démarche : Pour et Par réutilisation * Synthèse sur les démarches les plus appliquées * Conclusion

Nancy, décembre 2002 page 10 Critères de caractérisation : application aux bibliothèques logicielles Type des connaissances Couverture Portée Nature de la solution Tech. de réutilisation Ouverture Granularité Spécialisation et Instanciation Classe de bibliothèques Logicielle Boîte en verre Très faible Produit Implantation Horizontale

Nancy, décembre 2002 page 11 Critères de caractérisation : application aux aux composants métiers Type des connaissances Couverture Portée Nature de la solution Tech. de réutilisation Ouverture Granularité Spécialisation et Instanciation Classe de bibliothèques Conceptuelle Boîte blanche variable Produit Analyse Verticale Plusieurs définitions Un composant métier est un composant logiciel: une entité encapsulée une entité autonome de déploiement différence avec un composant logiciel spécifique à un domaine d’application c-à-d réutilisable au sein du même domaine d’application Problème lors de l’intégration des composants Interopérabilité sémantique le demandeur et le fournisseur ont la même sémantique des services et des données échangées

Nancy, décembre 2002 page 12 Type des connaissances Couverture Portée Nature de la solution Tech. de réutilisation Ouverture Granularité Patron Conceptuelle Imitation puis Intégration Boîte blanche Faible Critères de caractérisation : application aux patrons « un patron décrit à la fois un problème qui se produit très fréquemment dans votre environnement et l’architecture de la solution à ce problème de telle façon que vous puissiez utiliser cette solution des milliers de fois sans jamais l’adapter deux fois de la même manière» C. Alexander Une base de savoir et de savoir-faire pour résoudre un problème récurrent dans un domaine permet d’identifier le problème à résoudre propose une solution consensuelle pour y répondre offre les moyens d’adapter cette solution

Nancy, décembre 2002 page 13 Type des connaissances Couverture Portée Nature de la solution Tech. de réutilisation Ouverture Granularité Patron de conception Produit Horizontale (générale) Conception Détaillée Conceptuelle Imitation puis Intégration Boîte blanche Faible : 2 à 4 classes Critères de caractérisation : application aux patrons [Gamma 95] E.Gamma Est = 20,4 Ouest = 30,6 Nord = 45,9 sujet observateurs Exemple : l’Observateur Intention : définir une ou plusieurs dépendances entre un sujet et ses observateurs de sorte que si le sujet change d'état, tous ses observateurs en soit informés et mis à jour. Motivation :

Nancy, décembre 2002 page 14 Type des connaissances Couverture Portée Nature de la solution Tech. de réutilisation Ouverture Granularité Patron de conception ProduitHorizontale (générale) Conception Détaillée ConceptuelleImitation puis Intégration Boîte blancheFaible : 2 à 4 classes Critères de caractérisation : application aux patrons [Gamma 95] Exemple : l’Observateur Solution: Sujet état_sujet lire_etat () modifier_etat () notifier () lier (Observeur) délier (Observeur) Observateur état-obs. mise_à_jour( ) 1..* observateurs pour tout o de observateurs o.mise_a_jour() return état-sujet

Nancy, décembre 2002 page 15 CoadGoF Systèmes de patrons SIGMA 2000 produit processus entreprise domaine générique analyse conception implantation SIP [Gzara 00] CoadGoF Ambler « Un langage de patrons est une collection structurée de patrons construits l’un sur l’autre pour transformer les besoins et les contraintes dans une architecture ». C. Alexander / J. Coplien Portée couverture Type de connaissance Un patron processus fournit une collection de techniques, d’actions et/ou de tâches à suivre pour le développement des logiciels. Ambler 98

Nancy, décembre 2002 page 16 Critères de caractérisation : application aux patrons architecturaux Type des connaissances Couverture Portée Nature de la solution Tech. de réutilisation Ouverture Granularité Patrons architecturaux ADL (Architecture Description languages) Architecture Composant- Architecture Système Composant- Système est-composant-de est-conforme-à Décomposition hiérarchique Conformité d’interface Intégrité de la communication Critères de conformité Conceptuelle Produit Horizontale Conception détaillée Imitation puis Intégration Boîte blancheFaible : 2 à 4 classes

Nancy, décembre 2002 page 17 Critères de caractérisation : application aux patrons architecturaux Point de vue architectural Niveau d’abstraction Domaine Implémentation Processus Flot de contrôle Flot de données Graphique Textuel Mon domaine Domaine connexe Tout Domaine.. Spécification architecture Haut-niveau Architecture détaillée Code source Type des connaissances Couverture Portée Nature de la solution Tech. de réutilisation Ouverture Granularité Patrons architecturaux Conceptuelle Produit/ Processus Horizontale Conception détaillée Imitation puis Intégration Boîte blancheFaible : 2 à 4 classes

Nancy, décembre 2002 page 18 Un patron constitue une base de savoir et de savoir-faire pour résoudre un problème récurrent dans un domaine Un système de patrons est une collection de patrons coordonnés intégrant une démarche de conception pour résoudre un problème complexe Patron & système de patrons Actuellement les systèmes de patrons sont des catalogues « papiers » - Peu organisés, formalisés, instrumentés De nombreux travaux : - Formalisation des solutions qu’est ce qu’une spécification générique ? Comment exprimer la variabilité ? - Expression des relations inter-patrons pour organiser les systèmes, exprimer les démarches,… - Mise en œuvre des patrons dans des ateliers de développement - Unification des formalismes existants….

Nancy, décembre 2002 page 19 Plan * Introduction sur la réutilisation * Cadre de référence pour la comparaison des composants * Les types de composants pour les SI ( métiers, architecturaux, patrons ) * Types de démarche : Pour et Par réutilisation * Synthèse sur les démarches les plus appliquées * Conclusion

Nancy, décembre 2002 page 20 Ingénieur d ’applications Ingénierie d ’applications Application Par réutilisation Pour la réutilisation Concepteur de composants Ingénierie de composants Bibliothèque de composants Développement Pour et Par Réutilisation

Nancy, décembre 2002 page 21 Plan * Introduction sur la réutilisation * Cadre de référence pour la comparaison des composants * Les types de composants pour les SI ( métiers, architecturaux, patrons ) * Types de démarche : Pour et Par réutilisation * Synthèse sur les démarches les plus appliquées * Conclusion

Nancy, décembre 2002 page 22 Démarches d’Ingénierie de systèmes à base de composants Trois méthodes sont sélectionnées – Catalysis [D ’Souza et al. 98] – Select perspective [Allen et al. 98] – Rational Unified Process (RUP)[Jacobson et al. 99]

Nancy, décembre 2002 page 23 Résumé des caractéristiques générales RUPSelectCatalysis Itératif et incrémental UML + extensions UML, E/R, CSC Catalyst Cool:Spex, Cool:Gen... Rational Rose, etc Select Component Factory Très complexe Moyennement complexe Processus de développement Notation Outils Case Complexité d’apprentissage

Nancy, décembre 2002 page 24 Étude détaillée de la prise en charge des composants (1/2) Logique, implémentation Pas de règles Pas d’indications Introduction des composants dans le cycle de développement Règles d’identifications des composants Niveau de décomposition Logique, implémentation CatalysisRUPSelect Pas de règles Pas d’indications

Nancy, décembre 2002 page 25 Oui avec OCL Framework avec des indications sur la manière pour les construire Rigueur dans la spécification des composants Réutilisation Non mentionné CatalysisRUPSelect Package de services sans précision sur l’approche à suivre pour les identifier et les construire Un processus supportant la gestion d’une librairie de composants réutilisables Logique : Type Implémentation: package, composant Représentation des composants Logique : sous système Implémentation: diagramme composants Logique : package de services Implémentation: diagramme composants

Nancy, décembre 2002 page 26 Faiblesses Introduction tardive des composants dans le cycle de développement (logique, implémentation) Manque de guidage du concepteur –Difficulté de passer des besoins aux composants –Pas de règles précises sur la granularité des composants (arrêt de la décomposition) Prise en charge partielle de la réutilisation

Nancy, décembre 2002 page 27 Plan * Introduction sur la réutilisation * Cadre de référence pour la comparaison des composants * Les types de composants pour les SI ( métiers, architecturaux, patrons ) * Types de démarche : Pour et Par réutilisation * Synthèse sur les démarches les plus appliquées * Conclusion

Nancy, décembre 2002 page 28 Conclusion Effervescence des travaux dans le domaine mais beaucoup de disparité. Diversité des composants : composants logiciels, métiers, architecturaux, patrons. Des solutions commencent à émerger mais : –Nécessité de standardiser la notion de « composant » –D’organiser les composants en fonction du problème (classification) –De définir des mécanismes d’intégration (assemblage, composition …) –De formaliser des démarches centrées réutilisation dès la phase d’analyse