Méthodes et stratégies pour la sélection de composants logiciels
Transcription
Méthodes et stratégies pour la sélection de composants logiciels
Méthodes et stratégies pour la sélection de composants logiciels Bart GEORGE Laboratoire VALORIA – Action SE Universite de Bretagne-Sud Contexte de l’approche ● ● ● Monde des COTS (composants “sur étagère”) – “Boîtes noires” réutilisables – “Marchés” aux composants (exemple : Componentsource) Cycle de developpement de la CBSE – Première phase : recherche et sélection – Deuxième phase : adaptation Notion de “composant recherché” et de “composant candidat” ou “concret” – On ne cherche pas forcément le “meilleur en tout” Plan ● Problématique ● Solution proposée ● Présentation du modèle génerique ● Application aux composants ● Stratégies possibles ● Problèmes ● Conclusion Problématique ● Manque de standardisation des composants – ● Documentation tres incomplète – ● Modèles, origines et concepts différents Manque d’indication sur les propriétés nonfonctionnelles Notion de “meilleur composant” tres vague – Dichotomie entre satisfaction du besoin et effort d’adaptation à fournir Solution proposée ● ● ● Structure générique à deux niveaux – Modèle générique, compatible avec les modèles existants – Comparaison générique, adaptable selon les spécifications disponibles et les besoins de l’utilisateur Comparaison progressive, de type “trial-anderror” Entrelacement des propriétés fonctionnelles et non-fonctionnelles Modèle générique (1) ● Arbre de comparaison valué (inspirée du pattern Composite) – Feuilles – Noeuds homogènes – Noeuds hétérogènes – Notion de valuation Modèle générique (2) ● Calcul d’indice – – Feuilles : indice différent pour chaque type de feuille Noeuds hétérogènes – Noeuds homogènes Application aux composants (1) ● Structure choisie Application aux composants (2) ● ● Comparaison de NFPs – Utilisation de métriques – Métriques numériques ou ordinales Comparaison de signatures d’opération – ● Signature Matching (Amy Zaremski et Jeannette Wing) Indices choisis – Indice de satisfaction – Indice d’effort Stratégies actuelles ● Recherche de la satisfaction, puis de l’effort ● Recherche avec “zoom” ● – D’abord, des mots-clés – Ensuite, une description plus précise – En cas d’échec, retour-arrière et on recommence Perspectives – Combinaison “indice numérique + visualisation” – Exemple : Google + Google Map + Google Earth Problèmes ● Exemples “boîteux” – Pas de librairie qui possède “tout a la fois” – Librairie DREAM : descriptive, mais trop petite – ComponentSource : vaste, mais peu descriptif ● Trop peu de stratégies ● Il reste des choses a automatiser – Comment choisir les attributs qualité ? – Comment valuer l’arbre ? – Comment définir la meilleure stratégie ? Conclusion ● Un modèle qui peut servir à plein de choses... ● ...mais qui manque de validation... ● ...et c’est pour ça que je suis ici ● Des questions ?