• Aucun résultat trouvé

CHAPITRE 5 PROCESSUS D‟ÉVALUATION DE LA FAISABILITÉ DE

6.3 Composition de SOCAF : entités conceptuelles

Les sections suivantes décrivent les entités conceptuelles qui composent le cadre de travail

SOCAF. Pour chaque entité, on présente une brève description, les services fournis et des

exemples des outils de support potentiels pour promouvoir son utilisation durant l‟exécution du processus SOCAP.

6.3.1 Gestionnaire des métadonnées des composants SOCOM

Cette entité devra permettre le référencement des composants logiciels avec la proposition des métadonnées SOCOM. Elle permet de produire une fiche de métadonnées SOCOM pour chaque composant candidat afin que ce dernier participe au processus d‟agrégation. Elle permettra aussi la recherche et la classification des composants logiciels.

Cette entité offre essentiellement les services suivants :

 référencement des composants SOCOM;

 gestion des fiches des composants SOCOM;

 recherche des composants SOCOM;

 extraction des métadonnées de services du code binaire des composants;

 exportation des données des fiches SOCOM à partir de la base de données en document XML;

 conversion du document XML des composants SOCOM en ontologie OWL.

L‟entité « Gestionnaire des composants SOCOM » est implantée sous la forme d‟une application Web développée en Java/JEE avec une base de données MySQL. L‟exportation en document XML utilise une bibliothèque Java pour la sérialisation XML. Un programme Scheme est développé pour la transformation des données des fiches SOCOM de l‟XML en OWL. L‟extracteur des métadonnées de services du code binaire des composants est un ensemble de composants développés en JAVA, C++ et .NET. Ces extracteurs sont exécutés sur des composants implantés dans la même technologie pour extraire automatiquement leurs métadonnées de services et, ainsi, aider dans l‟automatisation du référencement des composants SOCOM.

6.3.2 Gestionnaire du code des composants

Cette entité permet de sauvegarder les codes des composants SOCOM lorsque le contexte d‟agrégation le permet. Il est important de rappeler que parfois, les codes des composants participants dans les agrégations peuvent ne pas être disponibles, ce qui rend impossible la

sauvegarde des composants binaires dans le gestionnaire. Si, le code source n‟est pas disponible, seul le code exécutable pourra être sauvegardé. Ce gestionnaire de code est utile durant les phases du développement de l‟agrégat et, surtout, au cas où une adaptation du composant source serait requise.

Cette entité offre essentiellement les services suivants :

 sauvegarde des codes sources ou binaires des composants SOCOM;

 gestion des versions des codes des composants SOCOM;

 recherche simple des codes des composants SOCOM.

Pour le stockage et la gestion des versions des codes sources, nous utilisons l‟outil « Apache Subversion » communément appelé SVN. Un logiciel libre a servi au contrôle et à la gestion du code source des projets logiciels, TortoiseSVN25. D‟autres outils peuvent être utilisés pour contrôler et gérer les codes sources des composants comme CVS. Il important de préciser que, si les composants sources sont sauvegardés dans d‟autres systèmes, des convertisseurs sont disponibles pour les exporter dans l‟outil SVN.

6.3.3 Recherche des composants

Cette entité permet la recherche des composants SOCOM suite à leur référencement dans le « Gestionnaire des métadonnées des composants ». La recherche se base essentiellement sur les métadonnées des composants sauvegardées dans le modèle relationnel des spécifications SOCOM. Aussi, cette entité permet la navigation/exploration de l‟ontologie SOCOM. Une recherche plus intelligente, qui utilise des langages de requête ontologique, est souhaitable. Cette entité offre essentiellement les services suivants :

 classification des composants SOCOM;

 recherche simple des composants SOCOM;

 recherche avancée des composants SOCOM;

 recherche dans l‟ontologie des composants SOCOM.

La recherche est implantée dans l‟application Web du «Gestionnaire des métadonnées des composants ». En effet, les critères de la recherche utilisent quelques attributs de SOCOM pour les recherches simples et avancées. Pour parcourir l‟ontologie de SOCOM, l‟application Web génère l‟ontologie des composants SOCOM et l‟outil Protégé est utilisé pour explorer l‟ontologie et voir une classification des composants SOCOM. Le langage de requête OWL fourni par l‟outil Protégé peut être utilisé pour formuler des requêtes plus intelligentes. Aussi, le moteur d‟inférence Pellet est utilisé pour exécuter des requêtes intelligentes et valider l‟ontologie en question.

6.3.4 Modélisation des composants logiciels SOCOM

Cette entité de modélisation des composants est composée de plusieurs environnements existants qui offrent la modélisation de composants logiciels et l‟agrégation de leur modèle dans un formalisme donné. Les langages de modélisation choisis dans notre cas sont UML pour les composants, l‟annotation BPMN pour les processus, MOT-PLUS OWL pour les ontologies.

Cette entité offre essentiellement les services suivants :

 modéliser les composants SOCOM;

 modéliser les composants agrégats;

 modéliser les interactions des composants de l‟agrégat;

 générer partiellement les signatures du code du composant agrégat;

 générer partiellement les signatures du code des composants sources.

Plusieurs outils de modélisation UML2 peuvent être utilisés pour répondre à ce besoin. Dans notre cas, nous avons utilisé Rational Rose, IBM-Rational Architect, IBM-Rational Modeler et Eclipse UML.

6.3.5 Assistance à l’agrégation des composants SOCOM

Cette entité permet d‟évaluer la faisabilité de l‟agrégation en se basant sur les fiches SOCOM des composants sources, les règles d‟agrégation et des activités d‟évaluation. Elle supporte entièrement le processus d‟évaluation de la faisabilité d‟agrégation des composants présenté dans la section 5.5.

Cette entité offre essentiellement le service d‟étude de la faisabilité de l‟agrégation des composants logiciels SOCOM. Cette entité d‟assistance, développée sous forme de processus, est implantée à l‟aide d‟un gabarit Excel avec différents onglets dans lesquels nous avons spécifié les étapes, l‟application des règles et la présentation des résultats d‟exécution des activités. Cet outil est central pour le support du processus parce qu‟il contient le flux des données correspondants au flux de contrôle présenté par le diagramme BPMN du processus SOCAP.

6.3.6 Développement des composants logiciels

Cette entité sert d‟outil pour le développement, l‟adaptation ou la transformation des composants logiciels. Durant la phase de codage, les composants peuvent subir des changements dictés par le contexte d‟agrégation. Ainsi, cette entité propose un ou plusieurs environnements spécialisés afin de réaliser les activités de codage conformément au scénario proposé par le processus SOCAP. Cette entité offre essentiellement les services d‟outils pour le développement, l‟adaptation et l‟intégration des composants logiciels SOCOM par la réutilisation.

Tous les environnements de développement logiciel peuvent servir pour implanter cette entité. Voici quelques exemples : Eclipse, IBM WebSphere, Microsoft Visual Studio, Oracle JDevelopper, etc.

6.3.7 Processus d’agrégation des composants logiciels

Cette entité définit les activités nécessaires pour réaliser une agrégation des composants logiciels dirigés par les métadonnées et les modèles. D‟autres aspects tels que les principes d‟agrégation, les hypothèses, les contraintes, les limites et les parties prenantes sont décrits afin de définir un processus d‟agrégation cohérent et valide. Cette entité assiste un ensemble d‟acteurs dans leur mission de développement par la réutilisation. Elle représente le pivot du cadre de travail SOCAF. Toutes les autres entités offrent des éléments conceptuels, logiciels et environnementaux pour contribuer au bon déroulement de ce processus.

Cette entité offre essentiellement le service de développement de nouveaux composants par agrégation de composants existants en utilisant les modèles d‟agrégats et les métadonnées SOCOM et SOCAM.

Cette entité est implantée sous forme du processus SOCAP et modélisé à l‟aide du formalisme BPMN. Ce processus est composé de sous processus de recherche, de sélection, d‟étude de faisabilité, de conception pour le développement de composants logiciels par agrégation. Un fichier Excel sert d‟outil pour l‟exécution du processus SOCAP dans différents contextes d‟agrégation.