Impact analysis - A Seismology-inspired Approach to Study Change Propagation
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Impact analysis - A Seismology-inspired Approach to Study Change Propagation

on

  • 566 views

Paper: "A Seismology-inspired Approach to Study Change Propagation"....

Paper: "A Seismology-inspired Approach to Study Change Propagation".

Authors: Salima Hassaine, Ferdaous Boughanmi, Yann-Gaël Guéhéneuc, Sylvie
Hamel and Giuliano Antoniol

Session: "Research Track Session 2: Impact Analysis"

Statistics

Views

Total Views
566
Views on SlideShare
565
Embed Views
1

Actions

Likes
0
Downloads
5
Comments
0

1 Embed 1

http://www.slashdocs.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Impact analysis - A Seismology-inspired Approach to Study Change Propagation Presentation Transcript

  • 1. Soccerlab and Ptidej team SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano A Seismology-inspired Approach Antoniol to Study Change PropagationIntroductionThe EarthquakeMetaphor Salima Hassaine, Ferdaous Boughanmi, Yann-Ga¨leApproachEmpirical Study Gu´h´neuc, Sylvie Hamel, Giuliano Antoniol e eStudy Results ´ SOCCER Lab. and Ptidej Team – DGIGL, Ecole Polytechnique deConclusion Montr´al, Qu´bec, Canada e e September 27, 2011 Pattern Trace Identification, Detection, and Enhancement in Java SOftware Cost-effective Change and Evolution Research Lab
  • 2. Soccerlab and Ptidej team Context and Motivation SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano Antoniol Software evolves continuously, requiring continuousIntroduction maintenance and developmentThe EarthquakeMetaphor Software maintenance is the most costly and difficultApproach phase in software life cycleEmpirical StudyStudy Results Making changes without understanding theirConclusion effects can lead to poor effort estimation and delays in release schedules, because of their consequences (e.g., the introduction of bugs, etc.) 2 / 25
  • 3. Soccerlab and Ptidej team Change Impact Analysis SeminarSalima Hassaine, Ferdaous Boughanmi, Change impact analysis is defined by Bohner and Yann-Ga¨l eGu´h´neuc, Sylvie e e Arnold [1] as “identifying the potential consequences of Hamel, Giuliano Antoniol a change, or estimating what needs to be modified to accomplish a change”.IntroductionThe EarthquakeMetaphorApproachEmpirical StudyStudy ResultsConclusion [1] S. A. Bohner and R. S. Arnold, Software Change Impact Analysis. IEEE Computer Society Press, 1996. 3 / 25
  • 4. Soccerlab and Ptidej team Existing approaches SeminarSalima Hassaine, Ferdaous Structure-based Analysis Boughanmi, Yann-Ga¨l e Dependency analysis of source code is performed usingGu´h´neuc, Sylvie e e Hamel, Giuliano static or dynamic program analyses Antoniol The relationships between classes make change impactIntroduction difficult to anticipate (e.g., hidden propagation)The Earthquake History-based AnalysisMetaphor Mining software repositories to identify co-changes ofApproach software artefacts within a change-setEmpirical Study It is often able to capture change couplings that cannotStudy Results be captured by static and dynamic analyses.Conclusion They lack to capture how changes are spread over space (e.g., class diagram) They could not help developers prioritise their changes according to the forecast scope of changes Probabilistic Approaches Building change propagation models to predict future change couplings using probabilistic tools (e.g., Bayesian Networks, Time Series Analysis, etc.) 4 / 25
  • 5. Soccerlab and Ptidej team Motivating example SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano AntoniolIntroduction Bug ID200551 reports a bug in Rhino, that wasThe Earthquake introduced by a developer when he implemented aMetaphor change to class Kit and missed a required change toApproach class DefiningClassLoader.Empirical StudyStudy Results Information passes from class Kit to classConclusion DefiningClassLoader through an intermediary class ContextFactory that remains unchanged. 5 / 25
  • 6. Soccerlab and Ptidej team Our goal SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano Antoniol Propose an approach to study the scope of change propagation based on a seismology metaphoreIntroductionThe EarthquakeMetaphor Our approach considers changes to a class as anApproach earthquake that propagates through a long chain ofEmpirical Study relationshipsStudy ResultsConclusion Our approach combines static dependencies between classes and historical co-change relations to study how far a change propagation will proceed from a given class to the others. 6 / 25
  • 7. Soccerlab and Ptidej team The Earthquake Metaphor SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano AntoniolIntroductionThe EarthquakeMetaphorApproachEmpirical StudyStudy ResultsConclusion Active seismic areas “Important” classes Earthquake Software change Epicenter “Important” changed class Seismic wave propagation Change propagation Damaged sites “Impacted” classes Distance from an epicenter Class level 7 / 25
  • 8. Soccerlab and Ptidej team Approach SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano Antoniol Step 1: Identifying the most important classesIntroduction Using PageRank-based metric, History-based metric,The EarthquakeMetaphor and Combination of the both metrics.Approach Step 2: Identifying class levelsEmpirical Study Using static dependencies between classesStudy Results Step 3: Identifying impacted classesConclusion Using historical co-change relations extracted from software repositories 8 / 25
  • 9. Soccerlab and Ptidej team Step 1: Identifying the most important classes SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano AntoniolIntroductionThe EarthquakeMetaphorApproachEmpirical StudyStudy ResultsConclusion 9 / 25
  • 10. Soccerlab and Ptidej team Step 2: Identifying class levels (1/2) SeminarSalima Hassaine, Ferdaous A ag F as G Boughanmi, Yann-Ga¨l e A ag F as G inGu´h´neuc, Sylvie e e B Hamel, Giuliano in cr cr cr Antoniol B dm cr cr cr in in inIntroduction co C D E in in inThe Earthquake dm dm dm dmMetaphor C D E coApproach (a) UML-like model (b) Eulerian modelEmpirical StudyStudy ResultsConclusion (c) String representation of the Eulerian model Figure: The conversion of a class diagram into string (from [2]). [2] O. Kaczor, Y.-G. Gu´h´neuc, and S. Hamel, Efficient identification of e e design patterns with bit-vector algorithm,pp. 175–184. IEEE Computer Society Press, 2006. 10 / 25
  • 11. Soccerlab and Ptidej team Step 2: Identifying class levels (2/2) SeminarSalima Hassaine, Ferdaous Bit-Vector Algorithm Boughanmi, Yann-Ga¨l e Input:Gu´h´neuc, Sylvie e e The Epicenter Class (e.g., class A) Hamel, Giuliano Antoniol The String Representation of the program Output:Introduction Class levels (e.g., Level0 = {A}, Level1 = {B, F },The EarthquakeMetaphor Level2 ={D, E , C }, Level3 = {G }, Level4 = {F })ApproachEmpirical StudyStudy ResultsConclusion 11 / 25
  • 12. Soccerlab and Ptidej team Step 3: Identifying impacted classes SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano Antoniol We define a time window T of observation as the median of time between two subsequent changes to theIntroduction epicenter class.The EarthquakeMetaphorApproach We extract all the commits that happened after anyEmpirical Study change to the epicenter class and within the chosenStudy Results time window T.Conclusion We use our framework Ibdoos to implement queries for collecting the set of classes that changed after any change to the epicenter class and during T. 12 / 25
  • 13. Soccerlab and Ptidej team Empirical Study Design SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l e Goal: to show the applicability and usefulness of ourGu´h´neuc, Sylvie e e Hamel, Giuliano approach Antoniol Purpose: to gather interesting observations on theIntroduction scope of change propagation and confirming theseThe EarthquakeMetaphor observations statisticallyApproach Quality focus: is the accuracy of the identified scope ofEmpirical Study change propagationStudy Results Perspective: researchers and practitioners who shouldConclusion be aware of the scope of a change to estimate the effort required for future maintenance tasks. The observed phenomena can help for making decisions concerning the process of future software projects. Context: three open source systems: Pooka, Rhino, and Xerces-J. 13 / 25
  • 14. Soccerlab and Ptidej team Research Questions (1/3) SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano RQ1: Does our metaphor allow us to observe the scope of Antoniol change impact?Introduction We investigate whether it is possible to apply ourThe EarthquakeMetaphor approach to observe change propagation through classApproach levelsEmpirical Study We perform a qualitative study to confirm ourStudy Results observations of change propagation, using externalConclusion information Thus, we can show that, indeed, like in seismology, certain levels are more impacted by a change than others 14 / 25
  • 15. Soccerlab and Ptidej team Research Questions (2/3) SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano Antoniol RQ2: What is the level most impacted by a change?Introduction We perform a quantitative study to confirm ourThe EarthquakeMetaphor observations of change propagation, using statisticalApproach tests to investigate which level may be the mostEmpirical Study impacted by a change, and classifying the levels havingStudy Results similar impactConclusion Thus, we can deduce all classes with a higher risk to be impacted by any change to epicenter class 15 / 25
  • 16. Soccerlab and Ptidej team Research Questions (3/3) SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano AntoniolIntroduction RQ3: What is the most reachable level by a change?The EarthquakeMetaphor As in RQ2, we perform a quantitative study to confirmApproach our observations of change propagation, using statisticalEmpirical Study tests to investigate, for each level, the number ofStudy Results earthquakes that propagate until a given level.Conclusion Thus, we can deduce the most reachable level. 16 / 25
  • 17. Soccerlab and Ptidej team Analysis Methods SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e RQ1: Using the R statistical system, we build the 3D Hamel, Giuliano Antoniol graph visualising the change propagation from theIntroduction epicenter class to other classes.The EarthquakeMetaphor RQ2: We compute, for each level, the number ofApproach classes that changed after any change to the consideredEmpirical Study epicenter class.Study ResultsConclusion RQ3: For each level, we create a subset that contains the number of earthquakes that stop at this level. We conduct Duncan’s multiple range test to classify the subsets with respect to the differences between them. 17 / 25
  • 18. Soccerlab and Ptidej team Study Results (1/3) SeminarSalima Hassaine, Ferdaous RQ1: Does our metaphor allow us to observe the scope of Boughanmi, Yann-Ga¨l e change impact?Gu´h´neuc, Sylvie e e Hamel, Giuliano AntoniolIntroductionThe EarthquakeMetaphorApproachEmpirical StudyStudy ResultsConclusion (a) class XMLEventImpl (b) class TypeValidator Figure: Change propagation Epicenter class XMLEntityScanner: we found the bug ID1099 that relate the changes to the epicenter class with changes to XMLParser (level 3). 18 / 25
  • 19. Soccerlab and Ptidej team Study Results (2/3) SeminarSalima Hassaine, Ferdaous RQ2: What is the level most impacted by a change? Boughanmi, Yann-Ga¨l e Homogenous subsets for alpha = 0.1Gu´h´neuc, Sylvie e e Levels Range 1 Range 2 Range 3 Hamel, Giuliano Antoniol 5 107.5410 4 147.7778Introduction 3 150.0000The Earthquake 2 202.0408Metaphor 1 354.4828Approach Table: Rhino: Duncan’s test applied on “number of changes”Empirical StudyStudy ResultsConclusion Homogenous subsets for alpha = 0.1 Levels Range 1 Range 2 Range 3 6 6.4015 5 10.8485 4 24.8333 3 50.2789 2 83.7273 1 895.2652 Table: Xerces-J: Duncan’s test applied on “number of changes” 19 / 25
  • 20. Soccerlab and Ptidej team Study Results (3/3) SeminarSalima Hassaine, Ferdaous RQ3: What is the most reachable level by a change? Boughanmi, Yann-Ga¨l e Homogenous subsets for alpha = 0.1Gu´h´neuc, Sylvie e e Max Level Range 1 Range 2 Range 3 Hamel, Giuliano Antoniol 5 .5833 4 1.3712Introduction 3 1.7500The Earthquake 2 4.6136Metaphor 1 11.7121Approach Table: Rhino: Duncan’s test applied on “number of earthquakes”Empirical StudyStudy ResultsConclusion Homogenous subsets for alpha = 0.1 Max Level Range 1 Range 2 Range 3 6 10.5333 5 16.3333 4 21.6667 3 30.0033 2 43.2000 1 54.8667 Table: Xerces-J: Duncan’s test applied on “number of earthquakes” 20 / 25
  • 21. Soccerlab and Ptidej team Threats to Validity (1/2) SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano Antoniol Construct validity concerns the relation betweenIntroduction theory and observations. In this study, they could beThe EarthquakeMetaphor due to the chosen time windows which may affect ourApproach observations.Empirical Study Internal Validity of a study is the extent to which aStudy Results treatment impacts the dependent variable. TheConclusion internal validity of our study is not threatened because we have not manipulated the independent variable, extent of the change propagation. 21 / 25
  • 22. Soccerlab and Ptidej team Threats to Validity (2/2) SeminarSalima Hassaine, Ferdaous Boughanmi, External Validity of a study relates to the extent to Yann-Ga¨l eGu´h´neuc, Sylvie e e which we can generalise its results. The main threat Hamel, Giuliano Antoniol to the external validity of our study that could affectIntroduction the generalisation of the presented results relates to theThe Earthquake analysed programs. Future work includes replicating thisMetaphor study on other programs to confirm our results.Approach Conclusion validity threats deals with the relationEmpirical StudyStudy Results between the treatment and the outcome. We paidConclusion attention not to violate assumptions of the performed statistical tests. Thus, we improved our conclusion validity by increasing the risk of making a Type I error (increase the chance that we will find a relationship when in fact there is not), we can do that statistically by raising the alpha level. For instance, instead of using 0.05 significance level, we use 0.1 as our cutoff point. 22 / 25
  • 23. Soccerlab and Ptidej team Conclusion (1/2) SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano Antoniol We proposed an approach to study how far a changeIntroduction propagation will proceed from a given class to theThe Earthquake others.MetaphorApproach We performed a qualitative and two quantitativeEmpirical Study studies. We showed that our intuition, about theStudy Results impacted classes by a change must be near to theConclusion changed class, is incorrect in some cases. However, there are some change propagations that reach the 5th level in Rhino (and 6th in Xerces-J). 23 / 25
  • 24. Soccerlab and Ptidej team Conclusion (2/2) SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano Antoniol Identifying the scope of change propagation could help,Introduction both developers and managers. Developers could locateThe EarthquakeMetaphor easily the change impact. Managers could estimate theApproach efforts required to perform changes more accurately.Empirical StudyStudy Results Future work: Apply our metaphor and our approach toConclusion other programs to confirm our observations. We will also adapt seismology models to predict changes to classes. 24 / 25
  • 25. Soccerlab and Ptidej team Questions? SeminarSalima Hassaine, Ferdaous Boughanmi, Yann-Ga¨l eGu´h´neuc, Sylvie e e Hamel, Giuliano AntoniolIntroductionThe EarthquakeMetaphorApproachEmpirical StudyStudy ResultsConclusion 25 / 25