Ingénierie agile de lignes de produits logiciels pour des applications d'aide à la décision pour l'agriculture - LIRMM - Laboratoire d’Informatique, de Robotique et de Microélectronique de Montpellier Access content directly
Theses Year : 2024

Agile Software Product Line Engineering for Agriculture Decision-Support Software Systems

Ingénierie agile de lignes de produits logiciels pour des applications d'aide à la décision pour l'agriculture

Abstract

The industrialization of software development in the business sector promotes the creation of custom software solutions, of better quality, and at a lower cost. In this context, migrating to a Software Product Line (SPL) represents an interesting option for companies that already offer a range of similar software products. The industrial partner for this research project is the ITK company. This company develops a range of decision support software products for various agricultural cultures and is planning to migrate to an SPL. To facilitate a successful migration to a software product line, it is essential to prepare the various project stakeholders to adopt new methods and practices. This is why a thorough assessment of the expectations and readiness of the stakeholders is necessary to ease this transition. The first contribution of this thesis is to carry out this evaluation. It was conducted through interviews with project stakeholders and a detailed analysis of their responses. Migrating the existing software range to an SPL involves localizing and identifying the existing functionalities. Creating representative feature models of the system to be migrated is a crucial initial step. Many resources are linked to the source code and can be leveraged to enrich the migration, feature model generation, and SPL maintenance. Source code version control platforms, for example, provide means to link specifications to source code, primarily through the use of user stories and feature-based code merges. The second contribution of this thesis is an automated process that utilizes user stories to generate feature models. This method combines natural language processing, supervised artificial intelligence models, and formal and relational concept analysis to generate feature models for each user of the studied software. These models are enriched by considering constraints from code merges and a domain ontology. The third contribution of this thesis is a method for identifying variability in the data schemas of different simulators for existing software. In fact, the development of a new software at ITK begins with the integration of a simulator, developed by agronomists, for a new crop. This method is based on formal concept analysis and allows for enriching configurations to create new products.
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.
Fichier principal
Vignette du fichier
Manuscrit_these_Thomas_GEORGES_definitive.pdf (4.12 Mo) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

tel-04553907 , version 1 (21-04-2024)

Identifiers

  • HAL Id : tel-04553907 , version 1

Cite

Thomas Georges. Ingénierie agile de lignes de produits logiciels pour des applications d'aide à la décision pour l'agriculture. Génie logiciel [cs.SE]. LIRMM (UM, CNRS), 2024. Français. ⟨NNT : ⟩. ⟨tel-04553907⟩
10 View
6 Download

Share

Gmail Facebook X LinkedIn More