Icpc11a.ppt
Upcoming SlideShare
Loading in...5
×
 

Icpc11a.ppt

on

  • 342 views

 

Statistics

Views

Total Views
342
Views on SlideShare
332
Embed Views
10

Actions

Likes
0
Downloads
0
Comments
0

3 Embeds 10

http://www.ptidej.net 7
http://ptidej.net 2
http://squirrel.polymtl.ca 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

    Icpc11a.ppt Icpc11a.ppt Document Transcript

    • Change Impact Analysis: an Earthquake Metaphor Salima Hassaine, Ferdaous Boughanmi, Yann-Gaël Guéhéneuc, Sylvie Hamel and Giuliano Antoniol 1. MOTIVATION 5. CONTRIBUTIONS AND FUTURE WORK Making changes without understanding their effects can lead to poor effort estimation and delays in release schedules because of their consequences, e.g., the introduction of bugs. We proposed an approach to analyse change propagation and to study how far a change propagation will proceed from a given class to the others. Our approach considers changes to a class as an earthquake that propagates through the class levels, defined by the length of relationships chain that relate the epicenter class to the other classes. Motivating example In Rhino, Bug ID2005511 was introduced by a developer when he implemented a change to class Kit and missed a required change to class DefiningClassLoader. In this case, information passes from class Kit to class DefiningClassLoader through an intermediary class ContextFactory (remained unchanged). Future work Adapt eismology models to predict changes to classes. 2. EARTHQUAKE METAPHOR Level 3 Seismology Change Impact Analysis G Level 2 Level 1 D A B F C E 3. APPROACH Step 1: Identifying Epicenter Class PageRank-based Metric Step 2: Identifying Class Levels 3. APPROACH Step 3: Identifying Impacted Classes History-based Metric 1. We define a time window T of observation as the median of time between two subsequent changes to the important epicenter class. 2. We extract all the commits that happened after any change to an epicenter class and within the chosen time window T. Bit-Vector Algorithm Combination of the above metrics We use Ibdoos to implement queries to collect the set of classes that changed after any change to the epicenter class and during T. Extracting data from Software repositories 4. EMPIRICAL STUDY Context Analysis Method Results RQ1: Using the R statistical system, we build the 3D graph visualising the change propagation from the epicenter class to other classes. Research Questions RQ1 RQ2 For each level, we create a subset that Change propagation from XMLEventImpl contains the number of classes that changed after any change to the considered epicenter class. RQ1: Does our metaphor allow us to observe the scope of change impact? RQ3: For each level, we create a subset that RQ2: What is the level most impacted by a change? contains the number of earthquakes that stop at this level. RQ3: What is the most reachable level by a change? RQ2 Change propagation from TypeValidator RQ3 We conduct Duncan’s multiple range test to classify the subsets with respect to the differences between them. CONTACT INFORMATION ACKNOWLEDGMENT PTIDEJ Team Pattern Trace Identification, Detection, and Enhancement in Java Salima Hassaine hassaisa@iro.umontreal.ca Ferdaous Boughanmi ferdaous.boughanmi@polymtl.ca Yann-Gaël Guéhéneuc Sylvie Hamel yann-gael.gueheneucg@polymtl.ca hamelsyl@iro.umontreal.ca Giuliano Antoniol antoniol@ieee.org This research was partially supported by FQRNT, NSERC, and Research Chairs in Software Patterns and Patterns of Software and in Software Evolution.