Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parMarie-Christine Roussel Modifié depuis plus de 8 années
1
1 Adaptation Structurelle de Composants Logiciels Stage de DEA informatique effectué à L’ENSM-Douai Encadré par Mr. Abdelhak SERIAI & Mr. Mourad OUSSALAH Par : SARI Abdallah sari@lina-univ.nantes.fr
2
2 Plan de travail Introduction État de l’art : Composant logiciels & Adaptation Adaptation structurelle Implantation Conclusion
3
3 Introduction Limites de l’approche orientée objets - Structures peu visible. - Manipulation difficile. - Construction à la charge totale du programmeur. Nouveau paradigme : « composant logiciel » Problématique d’adaptation Variations des contextes d’utilisation des composants Correction ou changement d’environnement. Problématique étudiée « Adaptation structurelle »
4
4 Composants Logiciels & Adaptation
5
5 Approche composant C’est quoi un composant logiciel [Szy 98] ? Une entité autonome de déploiement qui encapsule des codes informatiques qui décrit par des interfaces les interactions qu’elle autorise avec d’autres composants Catégories de composants logiciels Point de vue Conceptuel Boite blanche, Boite noire & boite grise. Point de vue fonctionnel: Métiers & non métiers. Objectifs Réutilisation. Réduire le temps de développement Diminuer le coût de production et de la maintenance
6
6 Adaptation Adaptation d’un composant ? Des modifications apportées par le constructeur d’application à un composant pour l’ajuster par rapport à différentes situations d’usage. Évolution : Modification du composant par le concepteur du composant lui même. Customisation : Modification au moyen de l’API du logiciel. Perspective d’Adaptation, Customisation et Évolution
7
7 1. Raison d’adaptation : Pourquoi et Par rapport à quoi? - Adaptation Correctionnelle. - Adaptation Adaptative. - Adaptation évolutive. - Adaptation perfective. 2. Type d’adaptation : adapter quoi? - Adapter l’architecture conceptuelle de l’application. - Adapter l’implémentation d’un composant. - Adapter l’interface d’un composant. - Adapter l’architecture de déploiement de l’application. Classification des approches d’adaptation (1)
8
8 3.Nature de l’adaptation : dans quel état adapter ? Approche statique. Approche dynamique. 4. Facette d’adaptation : qu’est qu’il faut adapter ? Comportement. Fonctionnement. 5. Impact de l’adaptation : quel est le sujet résultat ? Mécanismes de modification. ( Wrapper & composants adaptatteur ) modification de l’élément à adapter. Évaluation des approches d’adaptation -Cohérence : (Sécurité, Complétude,Temporisation et retour en arrière). -Degré d’automatisation. Classification des approches d’adaptation (2)
9
9 1.1 Les techniques de mise en ouvre des approches d’adaptation Critère d’évaluations R1. Boite noire. R2. Transparent. R3. Incorporé. R4. Indépendance de langage. R5. Composable. R6. Réutilisable. R7. Connaissance de l’architecture. R8.Configurable. Techniques d’Adaptation 1. Adaptation par les interfaces de programmation d’applications. 2. Adaptation par des langages de scripts. 3. Adaptation par les « Plugins » ou « Framework ». 4. Adaptation par les interfaces actives. 5. Adaptation de composants binaires. 6. Adaptation par le mécanisme d’héritage. 7. Adaptation par la modification sur place. 8. Adaptation par la superposition. 9. Adaptation à travers les wrapper (couches).
10
10 Adaptation Structurelle de Composants Logiciels
11
11 Définition Notions de base Modification de la structure d’un composant ou d’une application à base de composants afin de répondre à des exigences d’utilisation, tout en préservant son comportement et ses services.
12
12 Adaptation de l’assemblage et/ou de l’intégration de composants Mise à jour de la structure des interfaces. Adaptation du déploiement du composant Suivant les besoins de déploiement et de configuration la création des différentes entités structurelles pour la manipulation séparée. Adaptation par rapport aux ressources disponibles (optimisation). Répartition des charges d’un composants entre différents sous- ensemble, chaque sous-ensemble est représenté par un sous-composant. Séparation de préoccupations métiers. Décomposition suivant les préoccupation métiers Applications possibles de l’adaptation structurelle
13
13 Choix de base: Adaptation par décomposition. Spécification des interfaces des composants résultants de l’adaptation. Démarche d’adaptation structurelle(1) Adaptation statique. Développement par Intégration dans un modèle de composants existant. Adoption des concepts UML2 du composants logiciel pour la conception du modèle. (Port, Interface, Service, Composite, Méthode, Classe, attribut.)
14
14 Concepts de bases Entité structurelle Ressource. Démarche d’adaptation structurelle(2) Un élément faisant partie de la définition d’une entité structurelle Un élément faisant partie de la structure du sujet de l’adaptation
15
15 1.Spécification de l’adaptation StructAdapt (CompAadapté,({Compt :{Port{Interface+}+}+}) Processus d’adaptation Structurelle(1) Exemple : AgendaP. AdaptInterface. StructAdapt ( { { P-BDD {I1:droit, I2: MiseAjourDroit} }, { P-Agenda1{I3:dates, I4:MiseAjourAgenda},P-Agenda2 {I5:Réunion } }, { P-Absence{I6:Absence, I7:MiseAjourAbsence} } } )
16
16 Processus d’adaptation Structurelle (2) Mise à jour de la structure Création du nouvelles structures Garantie de l’intégrité d’un composant Dépendance entre les entités structurelles Gestion de partage.
17
17 1.Assemblage des nouvelles entité Gestion de dépendance Dépendances d’intégrité. Dépendances de cohérence. Processus d’adaptation Structurelle(3)
18
18 Intégration du résultat de l’adaptation Approches d’intégration: - Établissement des liens d’assemblage directes entres sous- composants.( Pb : accès possible aux services de gestion de dépendances). - Composant virtuel.(Pb : nécessité d’intégration des mécanicismes déploiement). Processus d’adaptation Structurelle (4)
19
19 Modèle de composants logiciels avec adaptation structurelle Interfaces de Maintien de la cohérence pour l’assemblage Notification Mise à jour ressource états Ressources Mémorisation R1 R2.. Rn 1432 Mise à jour & manipulation Ressource R i i Composant 1Composant 2 Notification Mise à jour ressource états Ressources Mémorisation R1 R2.. Rn 1432 Mise à jour & manipulation Ressource R i i Composant 1Composant 2 Notification Mise à jour ressource états Ressources Mémorisation R1 R2.. Rn 1432 Mise à jour & manipulation Ressource R i i Composant 1Composant 2 Interfaces de communication Ressource R i Composant 1Composant 2 Composant 3 Ressource R i Composant 1Composant 2 Composant 3 Ressource R i Composant 1Composant 2 Composant 3 Interface de synchronisation Ressource R i Composant 1 Composant 3 Composant 2 Composant Gestion de Ressources Partagées Ressource R i Composant 1 Composant 3 Composant 2 Composant Gestion de Ressources Partagées Composant de gestion de partage Composants virtuels pour l’intégration et protection d’accès Même structure externe (interfaces fournis et requis ). Structure interne différente(composite).
20
20 Évaluation de la démarche d’adaptation structurelle Critères R1R2R3R4 R5 R6R7R8 Adaptation structurelle X/-X-XXXXX R1. Boite noire. R2. Transparent.R3. Incorporé. R4. Indépendance de langage. R5. Composable.R6. Réutilisable. R7. Connaissance de l’architecture. R8.Configurable.
21
21 Implantation
22
22 Définition : Est un modèle de composants logiciels Général, modulaire et extensible. Permet : d’implémenter, de déployer, et de gérer des systèmes et des applications complexes sur différentes plates formes avec divers langages de programmation. Fractal Spécification Interfaces de contrôle Interfaces serveurs Interface client Contenu Contrôleur Julia Implémentation en Java de la spécification Fractal Développée par France Télécom.
23
23 Composant avant adaptation (décomposition ) Exemple d’implantation(1) Démonstration
24
24 Cpt AgendaCollaboratif Composant Agenda Composant Absence Composant BDD abs dr majAbs cf majAgd pr Composant1 Composant2 cf majAgd pr Itf1Itf2Itf3 Itf1Itf2Itf3 Modèle du composant Agenda Collaboratif après décomposition du sous-Composant Agenda Exemple d’implantation(2) Démonstration
25
25 Conclusion Contributions - Études et évaluation des approches d’adaptation existantes. - Une nouvelle technique d’adaptation : adaptation structurelle. - Réalisation d’un prototype d’adaptation structurelle statique sous Julia. Perspectives - Dynamisation de l’adaptations structurelle. - Séparation des préoccupations métiers. - Applications ubiquitaires.
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.