Le langage de programmation Python est devenu populaire parmi les chercheurs et un nombre croissant de logiciels de recherche est écrit en Python. Cependant, il manque de réutilisabilité pour ceux qui n'ont pas été maintenus selon les principes RSE. De plus, beaucoup d'entre eux restent sans maintenance lorsque les développeurs ne trouvent plus d'intérêts académiques à leur égard. Une fois que les développeurs ayant une expertise dans le logiciel quittent le projet, il est très peu probable que des développeurs novices dans le logiciel puissent le comprendre et le maintenir depuis le début. Cela pose un défi encore plus grand si la base de code du logiciel est grande ou insuffisamment documentée. Dans cette présentation, nous présentons l'analyse dynamique et statique de logiciels Python, une technique qui permet l'ingénierie inverse de programmes écrits en Python. Notre approche d'analyse visualise l'application cible, produisant des graphes d'appels, des diagrammes de séquence et des graphes de dépendance de composants. De cette manière, notre visualisation fournit un aperçu du comportement interne du programme cible. Avec ce travail, nous présentons un nouveau support Python qui utilise les parties de surveillance et d'analyse du cadre d'observabilité Kieker. Ce travail constitue également une étape de nos efforts de recherche continue en RSE pour soutenir l'observabilité des logiciels Python avec Kieker, dans le cadre de notre projet SustainKieker financé par la DFG, ainsi que du programme de subventions de recherche Metascience de UKRI. Pour l'étape suivante, nous examinerons la possibilité d'étendre notre surveillance et notre analyse aux bibliothèques externes des applications Python, qui sont natives au système et conçues pour la performance. SustainKieker est financé par la Deutsche Forschungsgemeinschaft (DFG – Fondation allemande pour la recherche) (numéro de subvention 528713834) et UK Research and Innovation (UKRI) à travers le programme de subventions de recherche Metascience de UKRI (Référence S26368).
Larrivain et al. (Mon,) ont étudié cette question.