SlideShare una empresa de Scribd logo
1 de 23
Using Method Similarity  over Versions  to Improve Predictions based on Change History BhavyaRawal
The Eclipse Project	 Open source toolkit for designing toolkits 25 releases so far 419 packages 24 million LOC  Over 380 committers 8 years of development Distributed team 2
Bug Fixing in Eclipse Bug #230 – Interface field correction doesn't offer to create the field  3
Learning from History  Change history based recommender approaches exploit rich project history [Ying et al., Zimmerman et al., etc.] What is a recommendation?  Programmers who changed Foo.java also changed… Example change pattern in Eclipse: {ASTResolving.java, NewMethodCompletionProposal.java} Both classes part of solution for Bug #230 4
Ying et al.’s CHB approach	 CVS Change Sets  {Foo.java, Bar.java, build.xml, …}  {Foo.java, …, build.xml…}  {Foo.java, Bar.java, …}  {Foo.java, Bar.java,} ……………………………….. ……… Frequent  Pattern  Mining Frequent Pattern: {Foo.java, Bar.java, build.xml} Changing Foo.java? Programmers who changed Foo.java also changed Bar.java and          build.xml 5
Shortcomings of Ying et al.’s Approach CVS      Change Sets  {Foo.java, Bar.java, build.xml, …}  {Foo.java, …, build.xml…}  {Foo.java, Bar.java, …}  {Foo.java, Bar.java,} ……………………………….. ……… Frequent  Pattern  Mining Frequent Pattern: {Foo.java, Bar.java, build.xml} Changing  Foo1.java? Major Refactoring Foo.java            Foo1.java Sorry!  No recommendations for Foo1.java 6
Shortcomings of Ying et al.’s Approach ,[object Object]
Change in name/location results in loss of history
Transformedentities will not result in valid recommendationsA transformation is a set of operations performed on or using p software entities in a given version, resulting in q software entities in the successive version. 7
Proposed Solution Extending CHB Detect transformations Use original entity’s history for recomm. Compare CHB against Extended CHB (ECHB) We use Ying et al.’s approach as Baseline CHB Test CHB and ECHB for different granularities File-level Method-level 8
Recommender Systems Compared Ying et al.’s CHB approach ,[object Object]
 file-levelSimilarity based (SB) approach ,[object Object]
 class-levelExtended CHB (ECHB) approach  ,[object Object]
 file-level9
Evaluation of the 6 Approaches Generate Frequent Patterns  Select 20 modification tasks  to test quality of approaches 10
Evaluation of the Approaches CHB, SB, ECHB evaluated on real tasks Technique Pick modification task and identify solution set For each entity in solution set  Use entity as input to obtain recommendations Compare recommendations against solution set Repeat for other modification tasks 11
Measuring the quality of recommendations? R S All entities in a system Correct recommendations Evaluated the 3 approaches on Precision and Recalland Throughput Precision          =|R ∩ S| / |R| Recall=|R∩ S| / |S| Throughput=|Inputs resulting in recomm.|                                         |Total Inputs| Correctly returned  recommendations Returned recommendations 12
Replicating Ying et al.’s work (Difficulties) ,[object Object]
Difficulties in recreating their work
Problems in finding solution set,
counting the number of recommendations
 technique for finding average precision and recall 13
Results: CHB File-level v/s Method-level Higher precision for method-level CHB Higher recall for file-levelCHB Higher throughput for file-levelCHB 14

Más contenido relacionado

Destacado

Bougainville July 2010
Bougainville  July 2010Bougainville  July 2010
Bougainville July 2010bizchange
 
Europa_GetInOurGame
Europa_GetInOurGameEuropa_GetInOurGame
Europa_GetInOurGametammyvt
 
Hot Tip! - Automatically name an opportunity
Hot Tip! - Automatically name an opportunityHot Tip! - Automatically name an opportunity
Hot Tip! - Automatically name an opportunityLarry Nipon
 
Managing user roles in WordPress
Managing user roles in WordPressManaging user roles in WordPress
Managing user roles in WordPressAngela Wilson
 
Renewable Energy Todd Wadena 2
Renewable Energy Todd Wadena 2Renewable Energy Todd Wadena 2
Renewable Energy Todd Wadena 2geris67
 
Zer0frixion Overview
Zer0frixion OverviewZer0frixion Overview
Zer0frixion OverviewLarry Nipon
 
ArnoldDesigns
ArnoldDesignsArnoldDesigns
ArnoldDesignstammyvt
 
Trendalytics Overview Features & Use Cases
Trendalytics Overview Features & Use CasesTrendalytics Overview Features & Use Cases
Trendalytics Overview Features & Use CasesLarry Nipon
 

Destacado (14)

Bougainville July 2010
Bougainville  July 2010Bougainville  July 2010
Bougainville July 2010
 
Europa_GetInOurGame
Europa_GetInOurGameEuropa_GetInOurGame
Europa_GetInOurGame
 
WordPress SEO Beginner to Advanced
WordPress SEO Beginner to AdvancedWordPress SEO Beginner to Advanced
WordPress SEO Beginner to Advanced
 
Hot Tip! - Automatically name an opportunity
Hot Tip! - Automatically name an opportunityHot Tip! - Automatically name an opportunity
Hot Tip! - Automatically name an opportunity
 
Bsl Uk
Bsl  UkBsl  Uk
Bsl Uk
 
Managing user roles in WordPress
Managing user roles in WordPressManaging user roles in WordPress
Managing user roles in WordPress
 
School Investigator
School InvestigatorSchool Investigator
School Investigator
 
Renewable Energy Todd Wadena 2
Renewable Energy Todd Wadena 2Renewable Energy Todd Wadena 2
Renewable Energy Todd Wadena 2
 
Zer0frixion Overview
Zer0frixion OverviewZer0frixion Overview
Zer0frixion Overview
 
ArnoldDesigns
ArnoldDesignsArnoldDesigns
ArnoldDesigns
 
Effective Social Media Press Releases
Effective Social Media Press ReleasesEffective Social Media Press Releases
Effective Social Media Press Releases
 
Pearly Whites
Pearly WhitesPearly Whites
Pearly Whites
 
Google News & How To Make It Work For You
Google News & How To Make It Work For YouGoogle News & How To Make It Work For You
Google News & How To Make It Work For You
 
Trendalytics Overview Features & Use Cases
Trendalytics Overview Features & Use CasesTrendalytics Overview Features & Use Cases
Trendalytics Overview Features & Use Cases
 

Similar a Using Method Similarity over Versions to Improve Predictions based on Change History

Improving Code Review Effectiveness Through Reviewer Recommendations
Improving Code Review Effectiveness Through Reviewer RecommendationsImproving Code Review Effectiveness Through Reviewer Recommendations
Improving Code Review Effectiveness Through Reviewer RecommendationsThe University of Adelaide
 
Data Mining-based Tools to Support Library Update. PhD Defence of Oleksandr Z...
Data Mining-based Tools to Support Library Update. PhD Defence of Oleksandr Z...Data Mining-based Tools to Support Library Update. PhD Defence of Oleksandr Z...
Data Mining-based Tools to Support Library Update. PhD Defence of Oleksandr Z...Oleksandr Zaitsev
 
RBHF_SDM_2011_Jie
RBHF_SDM_2011_JieRBHF_SDM_2011_Jie
RBHF_SDM_2011_JieMDO_Lab
 
COSMOS1_Scitech_2014_Ali
COSMOS1_Scitech_2014_AliCOSMOS1_Scitech_2014_Ali
COSMOS1_Scitech_2014_AliMDO_Lab
 
9781439035665 ppt ch07
9781439035665 ppt ch079781439035665 ppt ch07
9781439035665 ppt ch07Terry Yoast
 
LNCS 5050 - Bilevel Optimization and Machine Learning
LNCS 5050 - Bilevel Optimization and Machine LearningLNCS 5050 - Bilevel Optimization and Machine Learning
LNCS 5050 - Bilevel Optimization and Machine Learningbutest
 
AIAA-SDM-SequentialSampling-2012
AIAA-SDM-SequentialSampling-2012AIAA-SDM-SequentialSampling-2012
AIAA-SDM-SequentialSampling-2012OptiModel
 
WCSMO-ModelSelection-2013
WCSMO-ModelSelection-2013WCSMO-ModelSelection-2013
WCSMO-ModelSelection-2013OptiModel
 
ModelSelection1_WCSMO_2013_Ali
ModelSelection1_WCSMO_2013_AliModelSelection1_WCSMO_2013_Ali
ModelSelection1_WCSMO_2013_AliMDO_Lab
 
EContent_11_2023_04_09_11_30_38_Unit_3_Objects_and_Classespptx__2023_03_20_12...
EContent_11_2023_04_09_11_30_38_Unit_3_Objects_and_Classespptx__2023_03_20_12...EContent_11_2023_04_09_11_30_38_Unit_3_Objects_and_Classespptx__2023_03_20_12...
EContent_11_2023_04_09_11_30_38_Unit_3_Objects_and_Classespptx__2023_03_20_12...vekariyakashyap
 
Kursi Java Basic
Kursi Java Basic Kursi Java Basic
Kursi Java Basic tctal
 
Triantafyllia Voulibasi
Triantafyllia VoulibasiTriantafyllia Voulibasi
Triantafyllia VoulibasiISSEL
 
The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...Ali Ouni
 
Automating Speed: A Proven Approach to Preventing Performance Regressions in ...
Automating Speed: A Proven Approach to Preventing Performance Regressions in ...Automating Speed: A Proven Approach to Preventing Performance Regressions in ...
Automating Speed: A Proven Approach to Preventing Performance Regressions in ...HostedbyConfluent
 
Icse 2011 ds_1
Icse 2011 ds_1Icse 2011 ds_1
Icse 2011 ds_1SAIL_QU
 
On the Performance of the Pareto Set Pursuing (PSP) Method for Mixed-Variable...
On the Performance of the Pareto Set Pursuing (PSP) Method for Mixed-Variable...On the Performance of the Pareto Set Pursuing (PSP) Method for Mixed-Variable...
On the Performance of the Pareto Set Pursuing (PSP) Method for Mixed-Variable...Amir Ziai
 
Accounting for uncertainty in species delineation during the analysis of envi...
Accounting for uncertainty in species delineation during the analysis of envi...Accounting for uncertainty in species delineation during the analysis of envi...
Accounting for uncertainty in species delineation during the analysis of envi...methodsecolevol
 
Metabolomic Data Analysis Workshop and Tutorials (2014)
Metabolomic Data Analysis Workshop and Tutorials (2014)Metabolomic Data Analysis Workshop and Tutorials (2014)
Metabolomic Data Analysis Workshop and Tutorials (2014)Dmitry Grapov
 
Experiments on Design Pattern Discovery
Experiments on Design Pattern DiscoveryExperiments on Design Pattern Discovery
Experiments on Design Pattern DiscoveryTim Menzies
 
A Performance Study of BDD-Based Model Checking
A Performance Study of BDD-Based Model CheckingA Performance Study of BDD-Based Model Checking
A Performance Study of BDD-Based Model CheckingOlivier Coudert
 

Similar a Using Method Similarity over Versions to Improve Predictions based on Change History (20)

Improving Code Review Effectiveness Through Reviewer Recommendations
Improving Code Review Effectiveness Through Reviewer RecommendationsImproving Code Review Effectiveness Through Reviewer Recommendations
Improving Code Review Effectiveness Through Reviewer Recommendations
 
Data Mining-based Tools to Support Library Update. PhD Defence of Oleksandr Z...
Data Mining-based Tools to Support Library Update. PhD Defence of Oleksandr Z...Data Mining-based Tools to Support Library Update. PhD Defence of Oleksandr Z...
Data Mining-based Tools to Support Library Update. PhD Defence of Oleksandr Z...
 
RBHF_SDM_2011_Jie
RBHF_SDM_2011_JieRBHF_SDM_2011_Jie
RBHF_SDM_2011_Jie
 
COSMOS1_Scitech_2014_Ali
COSMOS1_Scitech_2014_AliCOSMOS1_Scitech_2014_Ali
COSMOS1_Scitech_2014_Ali
 
9781439035665 ppt ch07
9781439035665 ppt ch079781439035665 ppt ch07
9781439035665 ppt ch07
 
LNCS 5050 - Bilevel Optimization and Machine Learning
LNCS 5050 - Bilevel Optimization and Machine LearningLNCS 5050 - Bilevel Optimization and Machine Learning
LNCS 5050 - Bilevel Optimization and Machine Learning
 
AIAA-SDM-SequentialSampling-2012
AIAA-SDM-SequentialSampling-2012AIAA-SDM-SequentialSampling-2012
AIAA-SDM-SequentialSampling-2012
 
WCSMO-ModelSelection-2013
WCSMO-ModelSelection-2013WCSMO-ModelSelection-2013
WCSMO-ModelSelection-2013
 
ModelSelection1_WCSMO_2013_Ali
ModelSelection1_WCSMO_2013_AliModelSelection1_WCSMO_2013_Ali
ModelSelection1_WCSMO_2013_Ali
 
EContent_11_2023_04_09_11_30_38_Unit_3_Objects_and_Classespptx__2023_03_20_12...
EContent_11_2023_04_09_11_30_38_Unit_3_Objects_and_Classespptx__2023_03_20_12...EContent_11_2023_04_09_11_30_38_Unit_3_Objects_and_Classespptx__2023_03_20_12...
EContent_11_2023_04_09_11_30_38_Unit_3_Objects_and_Classespptx__2023_03_20_12...
 
Kursi Java Basic
Kursi Java Basic Kursi Java Basic
Kursi Java Basic
 
Triantafyllia Voulibasi
Triantafyllia VoulibasiTriantafyllia Voulibasi
Triantafyllia Voulibasi
 
The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...
 
Automating Speed: A Proven Approach to Preventing Performance Regressions in ...
Automating Speed: A Proven Approach to Preventing Performance Regressions in ...Automating Speed: A Proven Approach to Preventing Performance Regressions in ...
Automating Speed: A Proven Approach to Preventing Performance Regressions in ...
 
Icse 2011 ds_1
Icse 2011 ds_1Icse 2011 ds_1
Icse 2011 ds_1
 
On the Performance of the Pareto Set Pursuing (PSP) Method for Mixed-Variable...
On the Performance of the Pareto Set Pursuing (PSP) Method for Mixed-Variable...On the Performance of the Pareto Set Pursuing (PSP) Method for Mixed-Variable...
On the Performance of the Pareto Set Pursuing (PSP) Method for Mixed-Variable...
 
Accounting for uncertainty in species delineation during the analysis of envi...
Accounting for uncertainty in species delineation during the analysis of envi...Accounting for uncertainty in species delineation during the analysis of envi...
Accounting for uncertainty in species delineation during the analysis of envi...
 
Metabolomic Data Analysis Workshop and Tutorials (2014)
Metabolomic Data Analysis Workshop and Tutorials (2014)Metabolomic Data Analysis Workshop and Tutorials (2014)
Metabolomic Data Analysis Workshop and Tutorials (2014)
 
Experiments on Design Pattern Discovery
Experiments on Design Pattern DiscoveryExperiments on Design Pattern Discovery
Experiments on Design Pattern Discovery
 
A Performance Study of BDD-Based Model Checking
A Performance Study of BDD-Based Model CheckingA Performance Study of BDD-Based Model Checking
A Performance Study of BDD-Based Model Checking
 

Último

VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service Kolhapur
VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service KolhapurVIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service Kolhapur
VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service KolhapurRiya Pathan
 
VIP Call Girls Asansol Ananya 8250192130 Independent Escort Service Asansol
VIP Call Girls Asansol Ananya 8250192130 Independent Escort Service AsansolVIP Call Girls Asansol Ananya 8250192130 Independent Escort Service Asansol
VIP Call Girls Asansol Ananya 8250192130 Independent Escort Service AsansolRiya Pathan
 
(KRITI) Pimpri Chinchwad Call Girls Just Call 7001035870 [ Cash on Delivery ]...
(KRITI) Pimpri Chinchwad Call Girls Just Call 7001035870 [ Cash on Delivery ]...(KRITI) Pimpri Chinchwad Call Girls Just Call 7001035870 [ Cash on Delivery ]...
(KRITI) Pimpri Chinchwad Call Girls Just Call 7001035870 [ Cash on Delivery ]...ranjana rawat
 
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...Apsara Of India
 
College Call Girl in Rajiv Chowk Delhi 9634446618 Short 1500 Night 6000 Best ...
College Call Girl in Rajiv Chowk Delhi 9634446618 Short 1500 Night 6000 Best ...College Call Girl in Rajiv Chowk Delhi 9634446618 Short 1500 Night 6000 Best ...
College Call Girl in Rajiv Chowk Delhi 9634446618 Short 1500 Night 6000 Best ...perfect solution
 
Kolkata Call Girl Bara Bazar 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Bara Bazar 👉 8250192130 ❣️💯 Available With Room 24×7Kolkata Call Girl Bara Bazar 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Bara Bazar 👉 8250192130 ❣️💯 Available With Room 24×7Riya Pathan
 
Call Girl Nashik Amaira 7001305949 Independent Escort Service Nashik
Call Girl Nashik Amaira 7001305949 Independent Escort Service NashikCall Girl Nashik Amaira 7001305949 Independent Escort Service Nashik
Call Girl Nashik Amaira 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
VIP Call Girls Service Banjara Hills Hyderabad Call +91-8250192130
VIP Call Girls Service Banjara Hills Hyderabad Call +91-8250192130VIP Call Girls Service Banjara Hills Hyderabad Call +91-8250192130
VIP Call Girls Service Banjara Hills Hyderabad Call +91-8250192130Suhani Kapoor
 
(Dipika) Call Girls in Bangur ! 8250192130 ₹2999 Only and Free Hotel Delivery...
(Dipika) Call Girls in Bangur ! 8250192130 ₹2999 Only and Free Hotel Delivery...(Dipika) Call Girls in Bangur ! 8250192130 ₹2999 Only and Free Hotel Delivery...
(Dipika) Call Girls in Bangur ! 8250192130 ₹2999 Only and Free Hotel Delivery...Riya Pathan
 
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur Escorts
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur EscortsCall Girl Nagpur Roshni Call 7001035870 Meet With Nagpur Escorts
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...noor ahmed
 
Call Girls Nashik Gayatri 7001305949 Independent Escort Service Nashik
Call Girls Nashik Gayatri 7001305949 Independent Escort Service NashikCall Girls Nashik Gayatri 7001305949 Independent Escort Service Nashik
Call Girls Nashik Gayatri 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Russian Call Girl South End Park - Call 8250192130 Rs-3500 with A/C Room Cash...
Russian Call Girl South End Park - Call 8250192130 Rs-3500 with A/C Room Cash...Russian Call Girl South End Park - Call 8250192130 Rs-3500 with A/C Room Cash...
Russian Call Girl South End Park - Call 8250192130 Rs-3500 with A/C Room Cash...anamikaraghav4
 
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...Apsara Of India
 
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...anamikaraghav4
 
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7Riya Pathan
 
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...ritikasharma
 
Private Call Girls Durgapur - 8250192130 Escorts Service with Real Photos and...
Private Call Girls Durgapur - 8250192130 Escorts Service with Real Photos and...Private Call Girls Durgapur - 8250192130 Escorts Service with Real Photos and...
Private Call Girls Durgapur - 8250192130 Escorts Service with Real Photos and...Riya Pathan
 
Call Girl Nashik Saloni 7001305949 Independent Escort Service Nashik
Call Girl Nashik Saloni 7001305949 Independent Escort Service NashikCall Girl Nashik Saloni 7001305949 Independent Escort Service Nashik
Call Girl Nashik Saloni 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 

Último (20)

VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service Kolhapur
VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service KolhapurVIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service Kolhapur
VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service Kolhapur
 
VIP Call Girls Asansol Ananya 8250192130 Independent Escort Service Asansol
VIP Call Girls Asansol Ananya 8250192130 Independent Escort Service AsansolVIP Call Girls Asansol Ananya 8250192130 Independent Escort Service Asansol
VIP Call Girls Asansol Ananya 8250192130 Independent Escort Service Asansol
 
(KRITI) Pimpri Chinchwad Call Girls Just Call 7001035870 [ Cash on Delivery ]...
(KRITI) Pimpri Chinchwad Call Girls Just Call 7001035870 [ Cash on Delivery ]...(KRITI) Pimpri Chinchwad Call Girls Just Call 7001035870 [ Cash on Delivery ]...
(KRITI) Pimpri Chinchwad Call Girls Just Call 7001035870 [ Cash on Delivery ]...
 
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...
 
College Call Girl in Rajiv Chowk Delhi 9634446618 Short 1500 Night 6000 Best ...
College Call Girl in Rajiv Chowk Delhi 9634446618 Short 1500 Night 6000 Best ...College Call Girl in Rajiv Chowk Delhi 9634446618 Short 1500 Night 6000 Best ...
College Call Girl in Rajiv Chowk Delhi 9634446618 Short 1500 Night 6000 Best ...
 
Kolkata Call Girl Bara Bazar 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Bara Bazar 👉 8250192130 ❣️💯 Available With Room 24×7Kolkata Call Girl Bara Bazar 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Bara Bazar 👉 8250192130 ❣️💯 Available With Room 24×7
 
Call Girl Nashik Amaira 7001305949 Independent Escort Service Nashik
Call Girl Nashik Amaira 7001305949 Independent Escort Service NashikCall Girl Nashik Amaira 7001305949 Independent Escort Service Nashik
Call Girl Nashik Amaira 7001305949 Independent Escort Service Nashik
 
VIP Call Girls Service Banjara Hills Hyderabad Call +91-8250192130
VIP Call Girls Service Banjara Hills Hyderabad Call +91-8250192130VIP Call Girls Service Banjara Hills Hyderabad Call +91-8250192130
VIP Call Girls Service Banjara Hills Hyderabad Call +91-8250192130
 
(Dipika) Call Girls in Bangur ! 8250192130 ₹2999 Only and Free Hotel Delivery...
(Dipika) Call Girls in Bangur ! 8250192130 ₹2999 Only and Free Hotel Delivery...(Dipika) Call Girls in Bangur ! 8250192130 ₹2999 Only and Free Hotel Delivery...
(Dipika) Call Girls in Bangur ! 8250192130 ₹2999 Only and Free Hotel Delivery...
 
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur Escorts
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur EscortsCall Girl Nagpur Roshni Call 7001035870 Meet With Nagpur Escorts
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur Escorts
 
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...
 
Call Girls Nashik Gayatri 7001305949 Independent Escort Service Nashik
Call Girls Nashik Gayatri 7001305949 Independent Escort Service NashikCall Girls Nashik Gayatri 7001305949 Independent Escort Service Nashik
Call Girls Nashik Gayatri 7001305949 Independent Escort Service Nashik
 
Call Girls Chirag Delhi Delhi WhatsApp Number 9711199171
Call Girls Chirag Delhi Delhi WhatsApp Number 9711199171Call Girls Chirag Delhi Delhi WhatsApp Number 9711199171
Call Girls Chirag Delhi Delhi WhatsApp Number 9711199171
 
Russian Call Girl South End Park - Call 8250192130 Rs-3500 with A/C Room Cash...
Russian Call Girl South End Park - Call 8250192130 Rs-3500 with A/C Room Cash...Russian Call Girl South End Park - Call 8250192130 Rs-3500 with A/C Room Cash...
Russian Call Girl South End Park - Call 8250192130 Rs-3500 with A/C Room Cash...
 
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...
 
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...
 
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7
 
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
 
Private Call Girls Durgapur - 8250192130 Escorts Service with Real Photos and...
Private Call Girls Durgapur - 8250192130 Escorts Service with Real Photos and...Private Call Girls Durgapur - 8250192130 Escorts Service with Real Photos and...
Private Call Girls Durgapur - 8250192130 Escorts Service with Real Photos and...
 
Call Girl Nashik Saloni 7001305949 Independent Escort Service Nashik
Call Girl Nashik Saloni 7001305949 Independent Escort Service NashikCall Girl Nashik Saloni 7001305949 Independent Escort Service Nashik
Call Girl Nashik Saloni 7001305949 Independent Escort Service Nashik
 

Using Method Similarity over Versions to Improve Predictions based on Change History

  • 1. Using Method Similarity over Versions to Improve Predictions based on Change History BhavyaRawal
  • 2. The Eclipse Project Open source toolkit for designing toolkits 25 releases so far 419 packages 24 million LOC Over 380 committers 8 years of development Distributed team 2
  • 3. Bug Fixing in Eclipse Bug #230 – Interface field correction doesn't offer to create the field 3
  • 4. Learning from History Change history based recommender approaches exploit rich project history [Ying et al., Zimmerman et al., etc.] What is a recommendation? Programmers who changed Foo.java also changed… Example change pattern in Eclipse: {ASTResolving.java, NewMethodCompletionProposal.java} Both classes part of solution for Bug #230 4
  • 5. Ying et al.’s CHB approach CVS Change Sets {Foo.java, Bar.java, build.xml, …} {Foo.java, …, build.xml…} {Foo.java, Bar.java, …} {Foo.java, Bar.java,} ……………………………….. ……… Frequent Pattern Mining Frequent Pattern: {Foo.java, Bar.java, build.xml} Changing Foo.java? Programmers who changed Foo.java also changed Bar.java and build.xml 5
  • 6. Shortcomings of Ying et al.’s Approach CVS Change Sets {Foo.java, Bar.java, build.xml, …} {Foo.java, …, build.xml…} {Foo.java, Bar.java, …} {Foo.java, Bar.java,} ……………………………….. ……… Frequent Pattern Mining Frequent Pattern: {Foo.java, Bar.java, build.xml} Changing Foo1.java? Major Refactoring Foo.java Foo1.java Sorry! No recommendations for Foo1.java 6
  • 7.
  • 8. Change in name/location results in loss of history
  • 9. Transformedentities will not result in valid recommendationsA transformation is a set of operations performed on or using p software entities in a given version, resulting in q software entities in the successive version. 7
  • 10. Proposed Solution Extending CHB Detect transformations Use original entity’s history for recomm. Compare CHB against Extended CHB (ECHB) We use Ying et al.’s approach as Baseline CHB Test CHB and ECHB for different granularities File-level Method-level 8
  • 11.
  • 12.
  • 13.
  • 15. Evaluation of the 6 Approaches Generate Frequent Patterns Select 20 modification tasks to test quality of approaches 10
  • 16. Evaluation of the Approaches CHB, SB, ECHB evaluated on real tasks Technique Pick modification task and identify solution set For each entity in solution set Use entity as input to obtain recommendations Compare recommendations against solution set Repeat for other modification tasks 11
  • 17. Measuring the quality of recommendations? R S All entities in a system Correct recommendations Evaluated the 3 approaches on Precision and Recalland Throughput Precision =|R ∩ S| / |R| Recall=|R∩ S| / |S| Throughput=|Inputs resulting in recomm.| |Total Inputs| Correctly returned recommendations Returned recommendations 12
  • 18.
  • 20. Problems in finding solution set,
  • 21. counting the number of recommendations
  • 22. technique for finding average precision and recall 13
  • 23. Results: CHB File-level v/s Method-level Higher precision for method-level CHB Higher recall for file-levelCHB Higher throughput for file-levelCHB 14
  • 24. Extending CHB How do we detect Transformations? Transformed entities share facts with its parent entity. Method Facts: Name, Return Type, Parameters, Callers, Callees public ProgressStatusgetProgressUpdate (boolean complete, IProgressMonitor monitor) public ProgressStatusgetBriefProgressUpdate (IProgressMonitor monitor) 15 Version n-1 Version n
  • 25. AB Extending CHB Transformed entities share facts with its parent entity. Method Facts: Name, Return Type, Parameters, Callers, Callees Caller A Transformed Callee B Version n Version n-1 16
  • 26. DetectingTransformations over 2 Versions Two pass approach to detect transformations Eliminate unchanged methods Compare remaining methods Method-pair Similarity based on individual fact-similarity Name similarity, Caller Similarity etc. Individual fact similarity Param(m1): {int, Str} Param(m2): {int, Str, bool} Parameter Similarity = 2/3 = 0.67 Facts(m1) ∩ Facts(m2) Facts(m1) ∪ Facts(m2) 17
  • 27.
  • 30. Detect similar classes using method-pair similarity
  • 32. Experiments use versions 2.0 and 2.1 of Eclipse18
  • 34.
  • 35. Best Match(BM) and Threshold(TH)
  • 36. BM variation provides better results
  • 37. ECHB approach works better for method-level20
  • 38. ECHB Selected Results Method-level BM Variation Selected inputs based on transformation cond. Input exists in Version 2.1 but not in Version 2.0 ECHB versus CHB Results Throughput: 49% versus 14% Precision: 9% versus 47% Recall: 18% versus 13% 21
  • 39. Summary CHB approaches do not take transformations into account Including transformations can provide better recomm. Recreated Ying et al.’s CHB approach For file-level and method-level granularity ECHB extends CHB by incorporating transformations 22
  • 40. Takeaway Method-level ECHB approach provides valid recomm. in 35% more cases compared to CHB in the event of a potential transformation. However, for a given input CHB provides significantly higher precision rates and slightly higher recall rates compared to ECHB. 23