Thèse de doctorat (2023)
Résumé
L’ingénierie logicielle est un domaine intensif en connaissances. Les activités quotidiennes des développeurs produisent une grande quantité de données, telles que du code source, des historiques de modifications, des traces d’interactions, etc. Cela crée une richesse de données logicielles, mais rend difficile l’analyse et l’extraction de données bénéfiques pour répondre aux besoins des développeurs dans le but d’accomplir des tâches spécifiques. Afin de faciliter l’analyse des données logicielles et l’identification d’informations pertinentes pour une tâche donnée, les chercheurs en génie logiciel développent des systèmes de recommandation, ou RSSE (Recommender Systems for Software Engineering), qui soutiennent le développement et la maintenance logicielle, ainsi que l’amélioration de la qualité des processus de prise de décision. Un système de recommandation pour le génie logiciel est une application qui fournit des éléments jugés précieux pour une tâche en génie logiciel donnée dans un contexte spécifique. Depuis le début des années 1990, différentes techniques de recommandation ont été proposées. Plus précisément, le premier système de recommandation a été introduit en 1992. Goldberg et al. ont créé Tapestry [1], un système de recommandation par courrier électronique qui recommande une liste de diffusion aux utilisateurs en fonction de leurs centres d’intérêt. Dans le domaine de l’ingénierie logicielle, une large gamme de RSSEs ont été développés sur la base de différentes techniques de recommandation pour soutenir les activités en génie logiciel. Bien que ces techniques puissent être efficaces, des études ont montré qu’elles peuvent présenter certaines limites. En effet, certaines de ces techniques ne sont pas en mesure de générer des recommandations sans une connaissance suffisante et des métadonnées sur les éléments. De plus, d’autres techniques, telles que les règles d’association, nécessitent une contribution de l’utilisateur avant de faire des recommandations. Bien que des techniques telles que l’extraction de données puissent être efficaces, elles sont coûteuses en termes de calcul, car elles nécessitent des ensembles de données énormes pour fournir des recommandations hautement précises. De plus, à notre connaissance, aucun de ces systèmes de recommandation pour l’ingénierie logicielle n’a été appliqué, testé et évalué sur une variété de types de données et d’applications logicielles pour démontrer leur généralisabilité. Il est donc important de fournir une technique de recommandation capable de produire des recommandations sans nécessiter de vastes ensembles de données, et ayant été prouvée comme suffisamment généralisable pour traiter différents types de données pour différentes applications logicielles.
Statistiques
Total des téléchargements à partir de PolyPublie
Téléchargements par année
Provenance des téléchargements
