Approche probabiliste pour l’analyse de l’impact des changements dans les programmes orientés objet


Autoria(s): Zoghlami, Aymen
Contribuinte(s)

Sahraoui, Houari

Dufour, Bruno

Data(s)

24/11/2011

31/12/1969

24/11/2011

03/11/2011

01/06/2011

Resumo

Nous proposons une approche probabiliste afin de déterminer l’impact des changements dans les programmes à objets. Cette approche sert à prédire, pour un changement donné dans une classe du système, l’ensemble des autres classes potentiellement affectées par ce changement. Cette prédiction est donnée sous la forme d’une probabilité qui dépend d’une part, des interactions entre les classes exprimées en termes de nombre d’invocations et d’autre part, des relations extraites à partir du code source. Ces relations sont extraites automatiquement par rétro-ingénierie. Pour la mise en oeuvre de notre approche, nous proposons une approche basée sur les réseaux bayésiens. Après une phase d’apprentissage, ces réseaux prédisent l’ensemble des classes affectées par un changement. L’approche probabiliste proposée est évaluée avec deux scénarios distincts mettant en oeuvre plusieurs types de changements effectués sur différents systèmes. Pour les systèmes qui possèdent des données historiques, l’apprentissage a été réalisé à partir des anciennes versions. Pour les systèmes dont on ne possède pas assez de données relatives aux changements de ses versions antécédentes, l’apprentissage a été réalisé à l’aide des données extraites d’autres systèmes.

We study the possibility of predicting the impact of changes in object-oriented code using bayesian networks. For each change type, we produce a bayesian network that determines the probability that a class is impacted given that another class is changed. Each network takes as input a set of possible relationships between classes. We train our networks using historical data. The proposed impact-prediction approach is evaluated with two different scenarios, various types of changes, and five systems. In the first scenario, we use as training data, the changes performed in the previous versions of the same system. In the second scenario training data is borrowed from systems that are different from the changed one. Our evaluation showed that, in both cases, we obtain very good predictions, even though they are better in the first scenario.

Identificador

http://hdl.handle.net/1866/5983

Idioma(s)

fr

Palavras-Chave #Analyse d’impact de changement, #maintenance #modèle probabiliste #réseaux bayésiens #Change impact analysis #maintenance #probabilistic models #bayesian networks #Applied Sciences - Computer Science / Sciences appliqués et technologie - Informatique (UMI : 0984)
Tipo

Thèse ou Mémoire numérique / Electronic Thesis or Dissertation