Thèse soutenue

Combler le fossé entre les exigences du système exprimées en langage naturel et les modèles de conception d’architecture
FR  |  
EN
Accès à la thèse
Auteur / Autrice : Takwa Kochbati
Direction : Sébastien GérardShuai Li
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 19/10/2021
Etablissement(s) : université Paris-Saclay
Ecole(s) doctorale(s) : École doctorale Sciences et technologies de l'information et de la communication (Orsay, Essonne ; 2015-....)
Partenaire(s) de recherche : Laboratoire : Laboratoire d'intégration des systèmes et des technologies (Gif-sur-Yvette, Essonne ; 2001-....)
référent : Faculté des sciences d'Orsay
graduate school : Université Paris-Saclay. Graduate School Informatique et sciences du numérique (2020-....)
Jury : Président / Présidente : Aurélie Névéol
Examinateurs / Examinatrices : Ileana Ober, Reda Bendraou, Xavier Le Pallec
Rapporteurs / Rapporteuses : Ileana Ober, Reda Bendraou

Résumé

FR  |  
EN

Au cours des dernières années, les contraintes liées à la conception des systèmes évoluent de plus en plus et nécessitent l’intégration d’un plus grand nombre d’intervenants dans les projets. Par conséquent, les projets de logiciels modernes deviennent beaucoup plus complexes que dans le passé. L'ingénierie des systèmes basée sur les modèles (MBSE) est de son côté reconnue pour favoriser une vision holistique de la conception et permettre une architecture logicielle de haute qualité et maintenable. Cependant, les modèles de conception d'architecture sont toujours extraits manuellement par les ingénieurs, ce qui est devenu une tâche fastidieuse, chronophage et sujette aux erreurs. En particulier, la croissance exponentielle du nombre d'exigences système soulève des difficultés pour gérer les exigences manuellement et avoir une vision claire et cristalline des attentes et de la portée du système à concevoir. Le manque d'expertise humaine ainsi que des outils d'automatisation puissants sont souvent cités comme les principaux obstacles clés qui ralentissent encore l'adoption de l'approche MBSE et présentent des obstacles importants pour démontrer son retour sur investissement (ROI). Récemment, l'intelligence artificielle (IA) a fait l'objet d'une attention intense et ses applications ont fait leur chemin dans les produits de notre vie quotidienne. En fait, les techniques d'IA associées à une technologie appropriée ont permis aux systèmes de percevoir, de prédire et d'agir pour aider les humains dans un large éventail d'applications. Par conséquent, il va de soi que les progrès de l'IA peuvent apporter une grande valeur pratique pour atténuer certains des défis soulevés par l'adoption du MBSE. Dans cette thèse, nous avons contribué à une première étape vers l'application de l'IA pour le MBSE afin d'optimiser l'adoption du MBSE et de résoudre certains de ses défis. Plus précisément, nous avons proposé un nouveau flux de composants d'apprentissage automatique (ML) et de traitement automatique du langage naturel (TALN), permettant à l'automatisation de la transition des exigences exprimées en langage naturel vers un modèle préliminaire de conception d'architecture exprimé en UML comprenant un modèle de paquet décrivant la décomposition du système. Premièrement, nous avons proposé une solution de clustering qui aide à décomposer le système complexe en sous-systèmes plus petits en fonction de la similarité sémantique des exigences logicielles. Le cœur de la solution de clustering proposée est un module de calcul de similarité sémantique qui analyse les informations sémantiques des mots ainsi que des énoncés d'exigences pour chaque paire d'exigences en utilisant le modèle de prolongements lexicaux neuronaux word2vec. Par conséquent, un ensemble de groupes d’exigences sémantiquement similaires sont générés pour désigner les sous-systèmes identifiés et, qui aident à réduire la complexité du système cible. Ensuite, nous avons proposé un extracteur de modèle qui extrait de chaque groupe d'exigences identifié (c.-à-d., sous-système), les éléments pertinents qui sont nécessaires pour construire le modèle de packages de cas d’utilisation exprimé en UML en utilisant un ensemble d’heuristiques de TALN. Enfin, nous avons proposé une opération de mapping qui transforme les éléments extraits pour construire le modèle en leurs éléments correspondants dans le modèle de paquet de cas d’utilisation cible exprimé en UML. Notre travail a été prototypé sur Papyrus et évaluée sur plusieurs cas d'étude englobant différents types d'exigences logicielles exprimées en langage naturel.