Ingénierie agile de lignes de produits logiciels pour des applications d’aide à la décision pour l’agriculture
Auteur / Autrice : | Thomas Georges |
Direction : | Chouki Tibermacine |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 23/01/2024 |
Etablissement(s) : | Université de Montpellier (2022-....) |
Ecole(s) doctorale(s) : | École doctorale Information, Structures, Systèmes (Montpellier ; 2015-....) |
Partenaire(s) de recherche : | Laboratoire : Laboratoire d'informatique, de robotique et de micro-électronique (Montpellier ; 1992-....) |
Jury : | Président / Présidente : Vincent Berry |
Examinateurs / Examinatrices : Marianne Huchard, Clémentine Nebut, Sophie Ebersold, Raúl Mazo Peña | |
Rapporteurs / Rapporteuses : Gilles Perrouin, Peggy Cellier |
Résumé
L'industrialisation du développement des logiciels en entreprise favorise la création de solutions logicielles sur mesure, de meilleure qualité et à moindre coût. Dans ce contexte, la migration vers une ligne de produits logiciels (LPL) représente une option intéressante pour les entreprises qui proposent déjà une gamme de produits logiciels similaires.Le partenaire industriel de ces travaux de recherche est l'entreprise ITK. Cette entreprise développe une gamme de produits logiciels d'aide à la décision pour différentes cultures agricoles et ont pour projet de migrer vers une LPL.Afin de favoriser une migration réussie vers une ligne de produits logiciels, il est essentiel de préparer les différents acteurs du projet à adopter de nouvelles méthodes et pratiques. C'est pourquoi une évaluation approfondie des attentes et de la préparation des parties prenantes est nécessaire, permettant ainsi de faciliter cette transition.La première contribution de cette thèse consiste à réaliser cette évaluation. Elle a été réalisée au moyen d'entretiens avec les acteurs du projet et d'une analyse approfondie de leurs réponses. La migration de la gamme de logiciels existants vers une LPL implique de localiser et d'identifier les fonctionnalités existantes. La création de modèles de fonctionnalités représentatifs du système à migrer constitue une première étape cruciale. De nombreuses ressources sont liées au code source et peuvent être exploitées pour enrichir la migration, la génération de modèles et la maintenance de la LPL.Les plateformes de gestion de versions du code source offrent par exemple des moyens de lier les spécifications au code source, notamment grâce à l'utilisation d'récits utilisateurs (user stories) et de fusions (merge requests) de code par fonctionnalités. La deuxième contribution de cette thèse est un processus automatisé qui utilise les récits utilisateurs pour générer des modèles de fonctionnalités. Cette méthode combine le traitement naturel du langage, des modèles supervisés d'intelligence artificielle et l'analyse formelle et relationnelle de concepts afin de générer des modèles de fonctionnalités pour chaque utilisateur des logiciels étudiés. Ces modèles sont enrichis en tenant compte des contraintes issues des fusions de code et d'une ontologie du domaine.La troisième contribution de cette thèse est une méthode identifiant la variabilité dans les schémas de données des différents simulateurs des logiciels existants. En effet, le développement d'un nouveau logiciel chez l'entreprise ITK débute d'abord par l'intégration d'un simulateur, développé par les agronomes, pour une nouvelle culture. Cette méthode est basée sur l'analyse formelle de concepts et permet d'enrichir les configurations pour de créer de nouveaux produits.