La plupart des systèmes logiciels doivent ˆêtre adapté ́es au cours de leur vie. On estime que plus de 60% du coût d’un logiciel est lié à sa maintenance et à son évolution. L’́évolution d’un logiciel ne consiste pas seulement en la modification apportées à ses différents composants, mais elle comprend aussi une phase préliminaire indispensable qui est la compréhension en profondeur de chaque composant du système. C’est d’autant plus vrai pour une certaine catégorie de systèmes, tel que les systèmes à forte intensité de données (Data-intensive systems). Dans ce genre de systèmes, l’interaction entre les programmes d’application et la base de données est de plus en plus difficile à analyser, et donc à comprendre. De ce fait, la compréhension de programmes est devenue aujourd’hui une réelle préoccupation des chercheurs et développeurs. Car il s’agit d’un problème complexe, en particulier dans le cas de ce type de systèmes qui nécessitent l’utilisation de méthodes et techniques automatisées et ingérées aux sein des environnements de développement de logiciels. Cette thèse a pour objectif l’amélioration de la compréhension de ces grands systèmes à l’aide des techniques de l’analyse dynamique, de la visualisation de programmes et de l’exploration de processus. La technique d’analyse dynamique a pour but d’analyser et de visualiser le comportement de la manipulation de données d’un programme d’application via l’analyse de leurs traces d’exécution SQL. La technique d’exploration de processus a pour objectif de retrouver des patterns récurrents et d’extraire le workflow de la manipulation de données suivi par le programme.
- Data-intensive systems, Program Comprehension, Dynamic Analysis, Process Mining, Visualization, Software Evolution and Maintenance
Understanding Data-Intensive Systems Through The Analysis of SQL Execution Traces
Noughi, N. (Auteur). 19 juin 2018
Student thesis: Doc types › Docteur en Sciences