Post on 07-Nov-2015
Modles formels et outils gnriques pour la gestion et la recherche de composantsSoutenance de thseprsente parOualid KHAYATIdirige parJean-Pierre GIRAUDIN & Agns FRONT17 dcembre 2005
ProblmatiqueComposantDfinition(s)Cest une unit de conception (de nimporte quel niveau dabstraction) identifie par un nom, avec une structure dfinie et des directives de conception sous la forme de documentation pour supporter sa rutilisation (Pernici, 2000) Il peut tre spcifi et dvelopp par diffrentes quipesIl dcrit les services (interfaces) offerts et requis Il peut tre assembl avec dautres composants(OMG 2003)
ProblmatiqueLes bibliothques de composants au coeur des quipes de dveloppementBibliothques de Composants rutilisablesActeurs et processus
ProblmatiqueExemple de requte composite dun concepteur dapplicationRequtes
Cadre retenu4 sources dhtrognit
PlanProblmatiquetat de lartPropositionsConclusion et perspectives
PlanProblmatiquetat de lartApproches composantsApproches de recherche de composantsPropositionsConclusion et perspectives
tat de lartLes composants logiciels : concepts (COM, EJB, Fractal, ) Approches composantsInstance de composant
tat de lartExemple de composant logiciel : Client SIT logiciel en EJB Approches composants
tat de lartExemple de composant conception : le patron Composite de Gamma (Gamma, 1995) Approches composants
Nompatron CompositeAuteurE. GammaIntentionce patron permet de grer une composition rcursive dobjets. Il dfinit des hirarchies de classes dobjets simples et dobjets composites et facilite lajout des nouveaux composants.Solution
tat de lartExemple de composant Analyse : Client SIT analyse dans Symphony Approches composants
tat de lartBilanApproches composantsMultitude de niveaux dabstractionMultitude de modles de composants par niveau dabstraction
Extraire un mtamodle unificateur et volutifApproches composants :
tat de lartProblmatiquetat de lartApproches composantsApproches de recherche de composantsPropositionsExprimentationsConclusion et perspectives
tat de lartLes techniques de recherche de composants Approches de recherche de composants
tat de lartDomaine mtier : Bancaire, SIT, Technologie implantation : EJB, CCM, Niveau abstraction : Analyse, conception, Classification externe : classification par facettes (Asset, 1993) (Poulin, 1995) (Zhang, 2000) Approches de recherche de composantsRetrouver un composant Client du domaine mtier SIT.
tat de lartClassification structurelle : appariement de signatures (Gaudel, 1991) (Ritti, 1992) (Zarimski, 1995)Approches de recherche de composantsRetrouver un composant qui offre la fonction PayerAbonnement (p1:Type1)
tat de lartRecherche comportementale : analyse des traces dexcution(Podgursky, 1993) (Hall, 1993) (Chou, 1996) Approches de recherche de composants
tat de lartRecherche par navigation : navigation hypertexte (Cybulski, 1993) (Jeng, 1993) (Freitag, 1994) Approches de recherche de composantsC2C7C1C6C3C4C5utilisehritequivalent
tat de lartComparaison entre les techniques de recherche de composantsApproches de recherche de composantsCritres techniques : Prcision, Rappel, Couverture, Complexit dappariement, Potentiel dautomatisation
Critres conomiques : Cot dinvestissement, cot de fonctionnement, degr de diffusion, tat de dveloppement.
Critres humains : Difficult dutilisation et transparence.
Caractristiques de conception : Nature des composants, reprsentation des composants, objectif de la recherche, etc.
24 critres de comparaison diviss en 4 groupes :
tat de lartBilanMultitude de TRC pour multitude de types de requtesUne reprsentation spcialise pour chaque TRC
Crer un environnement pour intgrer diffrentes TRC
Approches de recherche de composants :
PlanProblmatiquetat de lartPropositionsExprimentationsConclusion et perspectives
PropositionsEnvironnement daide la ralisation et lutilisation de composantsCadre retenu
PropositionsEnvironnementM-SigmaC-SigmaB-SigmaModle de SRCInstanceInstanceTRCUtiliseSRCSGBDCGestion des composantsRecherche de composantsArchitecture
PlanPropositionsLa base B-Sigma et le modle C-SigmaLe Systme de Gestion de Bases Descriptives de ComposantsLe Systme de Recherche de Composants Une TRC structurelle externe spcifique
PropositionsObjectif : Gestion de composants et de leurs relationsLa base B-Sigma Niveau conceptionNiveau analyseNiveau logicielutiliseraffineimplanteComposant mtierimiteComposant
PropositionsExemple de composants grs dans B-SigmaLa base B-SigmaPatron RleimiteraffineimplanteClient Conception EJButiliseClient analyseutiliseutiliseClient Logiciel EJBraffineimplanteAgentConception EJBAgent analyseAgentLogiciel EJBUtiliseutiliseutiliseComposant mtierClientComposant mtierAgentraffineimplanteClientConception CCMClientLogiciel CCMPatron Composite
PropositionsExemple de description du composant Client SIT logiciel en EJBLa base B-Sigma
PropositionsLes conceptsLa base B-Sigma
PropositionsOrganisationModle AbstraitModle ConcretLe modle C-Sigma
PropositionsOrganisationModle AbstraitModle ConcretLe modle C-Sigma
PlanPropositionsLa base B-Sigma et le modle C-SigmaLe Systme de Gestion de Bases Descriptives de ComposantsLe Systme de Recherche de Composants Une TRC structurelle externe spcifique
PropositionsPositionnement : le mtamodle du SGBDC, une extension dUMLLe SGBDC
PropositionsLe mtamodle M-Sigma : Extension du mtamodle UMLLe SGBDCM-Sigma
PropositionsLe mtamodle M-SigmaLe SGBDCCore package Classifiers
Core package BackboneLe mtamodle M-SigmaPropositionsLe SGBDC
PropositionsLe mtamodle M-SigmaLe SGBDCCore package Relationships
PropositionsLe mtamodle M-SigmaLe SGBDCPackage Data Type
PropositionsExemple Le SGBDC
PlanPropositionsLa base B-SigmaLe systme de gestion de bases descriptives de composantsLe Systme de Recherche de ComposantsUne TRC structurelle externe spcifique
PropositionsPrendre en compte lhtrognit des TRCPar un modle gnrique, le modle de SRCPour composer des TRC
Le SRCObjectif
PropositionsModle de SRCLe SRCModle de SRC
PropositionsExemple de requte composite :Le SRC
PropositionsModle de SRCLe SRCSimple Query Package
PropositionsModle de SRCLe SRCQuery Integration Package
PropositionsModle de SRCLe SRCComponents Retrieval System Package
PropositionsBilan Le SRCPossibilit de composer des TRC Possibilit dutiliser les TRC faible complexit algorithmique comme outil de prslection pour les TRC haute complexit.Possibilit de raffiner les rsultats de la recherche par lapproche par navigation
PlanPropositionsLa base B-Sigma et le modle C-SigmaLe Systme de Gestion de Bases Descriptives de ComposantsLe Systme de Recherche de ComposantsUne TRC structurelle externe spcifique
PropositionsUne TRC spcifiqueObjectif : reconnaissance par appariement de diagrammes de classes Exemple : retrouver le diagramme du patron Composite dans un composant de la base
PropositionsDescription des DC sous forme logiqueLe calcul des prdicats offre des axiomes et des rgles dinfrence
Possibilit de prouver quune spcification cible est une consquence logique dune spcification source Une TRC spcifiqueUtilisation de la logique du premier ordre
PropositionsUne TRC spcifiqueLe processus de recherche
Base de composants
Diagrammes de classes des composants
SpcificationsSources
Extraction de la structure
Gnration desSpcifications sources
Spcificationcible
Gnration de laSpcification cible
Appariement deSpcifications
Mta-connaissances
Composants retrouvs
Processus
Produit
Diagramme de classes cible
Spcifications des composants de la Base de composants
Spcification de la requte utilisateur
entit(id_Classe_1) nom_entit(id_Classe_1, Component) classe(id_Classe_1)classe_abstraite(id_Classe_1)PropositionsUne TRC spcifiqueGnration dune spcification sourceentit(id_opration_1)nom_entit(id_opration_1, Operation)opration(id_opration_1)entit(id_signature_1) signature(id_signature_1) classe_opration(id_classe_1, id_opration_1, id_signature_1)opration_abstraite(id_opration_1)visibilit(id_opration_1, publique)
_id_Classe_11, _NomClasse, , _visibility1
entit(_id_Classe_11) nom_entit(_id_Classe_11, _NomClasse) classe(_id_Classe_11)classe_abstraite(_id_Classe_11)
entit(_id_opration_11)nom_entit(_id_opration_11, _NomOperation)opration(_id_opration_11)entit(_id_signature_11) signature(_id_signature_11) classe_opration(_id_classe_11, _id_opration_11, _id_signature_11)visibilit(_id_opration_11, _visibility1) Requte (_id_Classe_11, _NomClasse, , _visibility1)PropositionsUne TRC spcifiqueGnration dune spcification cibleDiagramme cibleAppariement : 5 rsultats
_id_Classe_11, _NomClasse, , _visibility1
entit(_id_Classe_11) nom_entit(_id_Classe_11, _NomClasse) classe(_id_Classe_11)classe_abstraite(_id_Classe_11)
entit(_id_opration_11)nom_entit(_id_opration_11, Operation)opration(_id_opration_11)entit(_id_signature_11) signature(_id_signature_11) classe_opration(_id_classe_11, _id_opration_11, _id_signature_11)visibilit(_id_opration_11, _visibility1) Requte (_id_Classe_11, _NomClasse, , _visibility1)PropositionsUne TRC spcifiqueGnration dune spcification cibleDiagramme ciblePourquoi pas 3 rsultats puisque la mthode Operation() est transmise par hritage aux classes Composite et Leaf ?
Appariement : 1 rsultat
Propagation des proprits par la gnralisation.Oprations, attributs, associations, interfacesMcanisme de relaxation des critres de rechercheType des associationsType, ordre et nombre des paramtres des oprations
PropositionsUne TRC spcifiqueExploitation de mtaconnaissances
PlanProblmatiquetat de lartPropositionsConclusion et perspectives
ConclusionUn environnement permettant : La gestion de composants htrognes par leur niveau dabstraction, leurs modles et leurs sourcesLa recherche de composants par des techniques htrognes dans un environnement unifiUn environnement volutif :Par sa structurePar la dmarche spcifie dans le guide mthodologique sous forme dun systme de patrons
Un prototype validant cet environnement
ConclusionPrototype SGBDC
Systme de gestion de bases descriptives de composants
Explorateur de MBDC
Gnrateur de BDC
diteur de BDC
diteur de MBDC
SGBDR
Gestionnaire desutilisateurs
Access
Postgres
ConclusionPrototype SRC
Systme de recherche de composants
diteur de requtes
Gnrateur de Spcifications
Moteur dvaluationdes requtes
Diagramme de classes (XMI)
Spcification cible (Requte Prolog)
SGBDR(Indexes)
Systme de Gestion de bases descriptives de composants
Moteurdindexation
Spcification sources(Programmes Prolog)
SGBDR
Diagramme de classes (XMI)
Atelier AGAP
SGBDR
Serveur de fichiers
Module dimport
Diagramme de classes (XMI)
PerspectivesSGBDCPasser du prototype un environnement plus grande chelleSRCtendre la TRC pour dautres diagrammes UML ( Prcision/Rappel) et intgrer dautres TRCtudier les fonctions de fusion de requtesAlimentation des BDCtudier le processus dalimentation des BDCtudier la possibilit dutiliser des techniques de routage et de filtrageAdopter une architecture base de composants connectables
Merci
Mes dames et messieurs les membres du jury.Honorable assistance.Je vous prsente les travaux raliss dans le cadre de ma thse intitul ralis lquipe SIMGA sous la direction de La documentation dun composant illustre le contexte dans lequel il peut tre utilis en spcifiant les contraintes et les autres composants dont il a besoin pour offrir sa solution (Pernici, 2000) vrifierAprs la ralisation de ltat de lart sur les composants. jai constat la diversit des MC donc de la diversit de la reprsentation des composants. on se pose alors la question de la rechercheMulti basesvolutif
Ajouter des transparents supplmentaires avec des exemples de mtaconaissances