SlideShare a Scribd company logo
MOFAE: Multi-objective Optimization Approach to Framework API Evolution
Wei Wu1,2, Yann-Gaël Guéhéneuc1, Giuliano Antoniol2
Ptidej Team1, SOCCER Lab2
DGIGL, École Polytechnique de Montréal, Canada

 Problem
 Problem
Framework API changes may
break the client programs
after upgrading

 Multi-objective Optimization
 Multi-objective Optimization

 Output
 Output

 Effort Analysis
 Effort Analysis
 Search Effort (SE) + Evaluation Effort (EE)

Multi-objective optimization (MOOP) is the process of
finding solutions to problems with potentially conflicting
objectives

 Smax, a maximum number of tries.

Very few frameworks provide
adaptation rules

#C, Number of correct recommendations
|T| - total missing API number

The adaptation process is
time consuming

 Evaluation
 Evaluation

Single-recommendation approaches:

 Existing Approaches
 Existing Approaches
Existing approaches use different features:

 MOFAE
 MOFAE

 Call-dependency
SemDiff, Schäfer et al. ,
Beagle, HiMa, AURA, Halo

1. Recommendation system modeling framework API
evolution as a MOOP problem

 Text-similarity
Kim et al., Beagle,
AURA, Halo
 Software design model
Diff-CatchUp
 Software metrics
Beagle
 Comments
HiMa, Halo

2. Use four features: call-dependency similarity, method
signature text similarity, inheritance tree similarity, and
method comment similarity
3. Select the candidates that no other candidates are
better than in all the features

Multi-recommendation approaches:
 #Posavg – average correct replacement position
 #Sizeavg – average recommendation list size

 Results
 Results
Recommendation list sizes:

4. Sort the selected candidates by in how many features
they are the best

 Objectives
 Objectives
 Call dependency similarity
Confidence value and support
Correct replacement positions:

 Limitations
 Limitations
Single-feature approaches:

 Limitations
 Limitations
Semi-automatic
Depends on the features

 Comment similarity
Longest Common Subsequence (LCS)
 Method signature text similarity
LCS, Levenshtein Distance (LD), and
Method-level Distance (MD)

Hybrid approaches: which feature to trust?
 Inheritance similarity
Inheritance tree string LCS
p1:P1.p2:P2.p1:PI1.p1:I1.p2:PI2.p2:I2

 Conclusion
 Conclusion

Comparison with previous approaches:

 MOFAE can detect 18% more correct change rules
than previous works.
 Average size 3.7, median size 2.2, maximum size 8.
 87% correct recommendations are the first, 99%
correct recommendations are in top three.
 Effort saving 31%

 Acknowledgements
 Acknowledgements
This work was supported by Fonds québécois de la
recherche sur la nature et les technologies and Natural
Sciences and Engineering Research Council of Canada



More Related Content

PPTX
Towards Privacy-Preserving Evaluation for Information Retrieval Models over I...
PDF
Sound Empirical Evidence in Software Testing
PDF
Instance Space Analysis for Search Based Software Engineering
PDF
Testing with Fewer Resources: An Adaptive Approach to Performance-Aware Test ...
PDF
ICGSE2020: On the Detection of Community Smells Using Genetic Programming-bas...
PDF
ICSME 2016: Search-Based Peer Reviewers Recommendation in Modern Code Review
PDF
Search-based testing of procedural programs:iterative single-target or multi-...
PDF
On the application of SAT solvers for Search Based Software Testing
Towards Privacy-Preserving Evaluation for Information Retrieval Models over I...
Sound Empirical Evidence in Software Testing
Instance Space Analysis for Search Based Software Engineering
Testing with Fewer Resources: An Adaptive Approach to Performance-Aware Test ...
ICGSE2020: On the Detection of Community Smells Using Genetic Programming-bas...
ICSME 2016: Search-Based Peer Reviewers Recommendation in Modern Code Review
Search-based testing of procedural programs:iterative single-target or multi-...
On the application of SAT solvers for Search Based Software Testing

What's hot (19)

PDF
AUTOMATIC GENERATION AND OPTIMIZATION OF TEST DATA USING HARMONY SEARCH ALGOR...
PDF
A Mono- and Multi-objective Approach for Recommending Software Refactoring
PPT
Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...
PDF
A Survey on Automatic Software Evolution Techniques
PDF
A Crowdsourceable QoE Evaluation Framework for Multimedia Content
PPT
Experiments on Design Pattern Discovery
PPTX
Source code comprehension on evolving software
PDF
Recommending Software Refactoring Using Search-based Software Enginnering
PPTX
On QoE Metrics and QoE Fairness for Network & Traffic Management
PPTX
Promise 2011: "Empirical validation of human factors on predicting issue reso...
PDF
Tag recommendation in social bookmarking sites like deli
PDF
Ssbse12b.ppt
PPT
Online feedback correlation using clustering
PDF
New Testing Standards Are on the Horizon: What Will Be Their Impact?
PPTX
On Parameter Tuning in Search-Based Software Engineering: A Replicated Empiri...
PPTX
The Tester’s Dashboard: Release Decision Support
PDF
QoE-driven Networking
PPT
Prov4J: A Semantic Web Framework for Generic Provenance Management
PPTX
Mihai mahulea the zen of test driven development
AUTOMATIC GENERATION AND OPTIMIZATION OF TEST DATA USING HARMONY SEARCH ALGOR...
A Mono- and Multi-objective Approach for Recommending Software Refactoring
Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...
A Survey on Automatic Software Evolution Techniques
A Crowdsourceable QoE Evaluation Framework for Multimedia Content
Experiments on Design Pattern Discovery
Source code comprehension on evolving software
Recommending Software Refactoring Using Search-based Software Enginnering
On QoE Metrics and QoE Fairness for Network & Traffic Management
Promise 2011: "Empirical validation of human factors on predicting issue reso...
Tag recommendation in social bookmarking sites like deli
Ssbse12b.ppt
Online feedback correlation using clustering
New Testing Standards Are on the Horizon: What Will Be Their Impact?
On Parameter Tuning in Search-Based Software Engineering: A Replicated Empiri...
The Tester’s Dashboard: Release Decision Support
QoE-driven Networking
Prov4J: A Semantic Web Framework for Generic Provenance Management
Mihai mahulea the zen of test driven development
Ad

Similar to Cser13.ppt (20)

PDF
PPTX
Evaluation of eLearning
PPTX
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
PDF
Thesis Part II EMGT 699
PPT
Software testing
PDF
Check upload1
PDF
Ranking The Refactoring Techniques Based on The External Quality Attributes
PPT
Quality, Cost, and Governance of Open Source Software
PDF
Evolvea Frameworkfor SelectingPrime Software DevelopmentProcess
PDF
Recommendation System for Design Patterns in Software Development
PDF
Agile maintenance
PDF
Generation of Search Based Test Data on Acceptability Testing Principle
PDF
D017642026
PPT
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
PPT
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
PPT
Prvt file test
PDF
Check upload1
PPT
Sfeldman performance bb_worldemea07
PPT
B2 2006 sizing_benchmarking
PPT
B2 2006 sizing_benchmarking (1)
Evaluation of eLearning
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
Thesis Part II EMGT 699
Software testing
Check upload1
Ranking The Refactoring Techniques Based on The External Quality Attributes
Quality, Cost, and Governance of Open Source Software
Evolvea Frameworkfor SelectingPrime Software DevelopmentProcess
Recommendation System for Design Patterns in Software Development
Agile maintenance
Generation of Search Based Test Data on Acceptability Testing Principle
D017642026
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
Prvt file test
Check upload1
Sfeldman performance bb_worldemea07
B2 2006 sizing_benchmarking
B2 2006 sizing_benchmarking (1)
Ad

More from Ptidej Team (20)

PDF
From IoT to Software Miniaturisation
PDF
Presentation
PDF
Presentation
PDF
Presentation
PDF
Presentation by Lionel Briand
PDF
Manel Abdellatif
PDF
Azadeh Kermansaravi
PDF
Mouna Abidi
PDF
CSED - Manel Grichi
PDF
Cristiano Politowski
PDF
Will io t trigger the next software crisis
PDF
PDF
Thesis+of+laleh+eshkevari.ppt
PDF
Thesis+of+nesrine+abdelkafi.ppt
PDF
Medicine15.ppt
PDF
Qrs17b.ppt
PDF
Icpc11c.ppt
PDF
Icsme16.ppt
PDF
Msr17a.ppt
PDF
Icsoc15.ppt
From IoT to Software Miniaturisation
Presentation
Presentation
Presentation
Presentation by Lionel Briand
Manel Abdellatif
Azadeh Kermansaravi
Mouna Abidi
CSED - Manel Grichi
Cristiano Politowski
Will io t trigger the next software crisis
Thesis+of+laleh+eshkevari.ppt
Thesis+of+nesrine+abdelkafi.ppt
Medicine15.ppt
Qrs17b.ppt
Icpc11c.ppt
Icsme16.ppt
Msr17a.ppt
Icsoc15.ppt

Recently uploaded (20)

PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
Big Data Technologies - Introduction.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Spectroscopy.pptx food analysis technology
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
KodekX | Application Modernization Development
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Programs and apps: productivity, graphics, security and other tools
Review of recent advances in non-invasive hemoglobin estimation
Agricultural_Statistics_at_a_Glance_2022_0.pdf
MIND Revenue Release Quarter 2 2025 Press Release
Building Integrated photovoltaic BIPV_UPV.pdf
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Digital-Transformation-Roadmap-for-Companies.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Big Data Technologies - Introduction.pptx
Network Security Unit 5.pdf for BCA BBA.
Per capita expenditure prediction using model stacking based on satellite ima...
Spectroscopy.pptx food analysis technology
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Diabetes mellitus diagnosis method based random forest with bat algorithm
KodekX | Application Modernization Development
Understanding_Digital_Forensics_Presentation.pptx
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx

Cser13.ppt

  • 1. MOFAE: Multi-objective Optimization Approach to Framework API Evolution Wei Wu1,2, Yann-Gaël Guéhéneuc1, Giuliano Antoniol2 Ptidej Team1, SOCCER Lab2 DGIGL, École Polytechnique de Montréal, Canada  Problem  Problem Framework API changes may break the client programs after upgrading  Multi-objective Optimization  Multi-objective Optimization  Output  Output  Effort Analysis  Effort Analysis  Search Effort (SE) + Evaluation Effort (EE) Multi-objective optimization (MOOP) is the process of finding solutions to problems with potentially conflicting objectives  Smax, a maximum number of tries. Very few frameworks provide adaptation rules #C, Number of correct recommendations |T| - total missing API number The adaptation process is time consuming  Evaluation  Evaluation Single-recommendation approaches:  Existing Approaches  Existing Approaches Existing approaches use different features:  MOFAE  MOFAE  Call-dependency SemDiff, Schäfer et al. , Beagle, HiMa, AURA, Halo 1. Recommendation system modeling framework API evolution as a MOOP problem  Text-similarity Kim et al., Beagle, AURA, Halo  Software design model Diff-CatchUp  Software metrics Beagle  Comments HiMa, Halo 2. Use four features: call-dependency similarity, method signature text similarity, inheritance tree similarity, and method comment similarity 3. Select the candidates that no other candidates are better than in all the features Multi-recommendation approaches:  #Posavg – average correct replacement position  #Sizeavg – average recommendation list size  Results  Results Recommendation list sizes: 4. Sort the selected candidates by in how many features they are the best  Objectives  Objectives  Call dependency similarity Confidence value and support Correct replacement positions:  Limitations  Limitations Single-feature approaches:  Limitations  Limitations Semi-automatic Depends on the features  Comment similarity Longest Common Subsequence (LCS)  Method signature text similarity LCS, Levenshtein Distance (LD), and Method-level Distance (MD) Hybrid approaches: which feature to trust?  Inheritance similarity Inheritance tree string LCS p1:P1.p2:P2.p1:PI1.p1:I1.p2:PI2.p2:I2  Conclusion  Conclusion Comparison with previous approaches:  MOFAE can detect 18% more correct change rules than previous works.  Average size 3.7, median size 2.2, maximum size 8.  87% correct recommendations are the first, 99% correct recommendations are in top three.  Effort saving 31%  Acknowledgements  Acknowledgements This work was supported by Fonds québécois de la recherche sur la nature et les technologies and Natural Sciences and Engineering Research Council of Canada 