L’article explique comment analyser un graphe de dépendances d’une application pour y détecter des « communautés », c’est-à-dire des groupes de composants fortement liés entre eux mais peu connectés au reste du système, afin de mieux comprendre et améliorer l’architecture logicielle. Il s’appuie sur des techniques issues de la théorie des graphes, notamment des algorithmes de détection de communautés basés sur l’optimisation de la modularité, qui cherchent à maximiser les liens internes et minimiser les liens externes ([rouviere.pages.math.cnrs.fr][1]). L’objectif est d’identifier des sous-ensembles cohérents (souvent assimilables à des modules ou contextes métiers) et de repérer d’éventuels problèmes de couplage ou de structure dans les dépendances, permettant ainsi de guider le refactoring et d’améliorer la maintenabilité du code.
26734 shaares