SlideShare a Scribd company logo
1 of 15
Download to read offline
AN EMPIRICAL STUDY OF THE RELATION
BETWEEN STRONG CHANGE COUPLING
AND DEFECTS USING HISTORY AND SOCIAL
METRICS IN THE APACHE ARIES PROJECT
Igor
Wiese
Rodrigo
Kuroda
Reginaldo
Ré
Gustavo
Oliva
Marco
Gerosa
2
MOTIVATION
+ Dependencies
+ Maintenance effort
[Banker et al.1998]
+ Defects
[D’ambros et al. 2009b, Cataldo et al. 2009, Kirbas et. al 2014]
+ ripple effects
[Pressman, 2001]
Software systems comprise
artifacts that depend on each other
3
MOTIVATION SCENARIO
Subsystem A
Class a
Class c
Class b
Subsystem B
Class d
Class e
CHANGE COUPLING
4
Artifacts a1
Artifacts a2
time
Co-change
commit
A change coupling indicates that two artifacts
changed together (co-changed) in the past,
making them evolutionarily connected.
WHY IS CHANGE COUPLING IMPORTANT?
5
Correlation with
Defects
[D’ambros et al. 2009b,
Kirbas et. al 2014]
Change
Coupling
Change Impact Analysis
[Zimmermann et al. 2005, Zhou et al.
2008, Hassan 2009]
Code
Refactoring
[D’ambros et al. 2009a]
Understand
the Sotware
Architecture
[Zimmermann et al.
2003]
Modularity
Assessment
[[[Silva et al. 2014]
Trace
Requiriments
[Ali et al. 2013]
Change couplings reveal relationships not present in
the code or in the documentation.
6
THE MAIN GOALS OF THIS PAPER ARE:
1
2
investigate the relation between
strong change couplings and
the number of defects (RQ1)
characterize strong change couplings
using historical and social metrics (RQ2)
3
predict defects associated with strong
change couplings (RQ3)
7
METHODOLOGY
Data
Collection
Identify the strong
change couplings
Compute the
set of Metrics
Build the
Classifiers
RQ1: Are strong change couplings
related to defects?
RQ2: Can historical and social
metrics identify if a change
coupling is strong?
RQ3: Can we predict defects
associated with strong change
couplings?
8
IDENTIFYING STRONG CHANGE COUPLINGS
Support
Number of transactions when both artifacts were changed together (support = 3).
Confidence
The confidence for the change coupling from A to B would be 3/9 = 0.33.
In turn, the confidence for the change coupling from B to A would be 3/4 = 0.75.
Strong change coupling
After ranking all change couplings by support value, we used a quartile analysis to
determine the relevant change couplings. All couplings with support value higher
than the third quartile were labeled as “strong”.
Artifact A
Artifact B
time
Co-change
commit
9
APACHE ARIES
The Aries project delivers a set of pluggable Java
components enabling an enterprise OSGi
application programming model
..has had 3,901 commits made by 35 contributors
representing 189,241 lines of code
397 Commits Up +77 (24%) from previous 12 months
11 Contributors Up +1 (10%) from previous 12 months
We collected data from six releases, 556
issue reports, five years of software
developments history
10
RQ1: ARE STRONG CHANGE COUPLINGS
RELATED TO DEFECTS?
The majority of the strong change couplings could be
associated with at least one defect.
strong change couplings are moderately correlated (rho 0.46, p < 0.001)
11
RQ2: CAN HISTORICAL AND SOCIAL METRICS
IDENTIFY IF A CHANGE COUPLING IS STRONG?
To answer this question, we conducted two studies:
•  Cross-validation for each release;
•  Using one release to train, the consecutive release to test
Cross Validation Results:
•  Models with high
Accuracy
•  AUC ranging 88% - 99%
•  F-measure from
70%-99%
Inter-Release Train/Test
•  Models can correctly
predicted strong change
couplings range from 56%
to 100%.
•  Problems when the train
release have few
instances
12
RQ2: WHICH ARE THE BEST METRICS TO IDENTIFY
STRONG CHANGE COUPLINGS?
•  In average 5 metrics were used (models were
built with 16 metrics)
•  The best subset selected:
•  The length of discussion (number of words) – 4
releases
•  The number of distinct committers – 3 releases
•  The experience of committers – 2 releases
•  The number of defect issues associated with – 2
releases
•  The number of weeks between the first and last
commit – 2 releases
13
RQ3: CAN WE PREDICT DEFECTS ASSOCIATED
WITH STRONG CHANGE COUPLINGS?
We found 81 strong change couplings in the post-release
to fix defects. We correctly predicted 37 strong change
couplings (45.67%).
CONCLUSIONS
•  We studied the relationship between strong change couplings
and defects
•  We developed models with high accuracy to identify strong
change couplings
•  In some cases, it is necessary to group the data.
•  In average, 5 metrics were necessary to get better results
•  6 metrics were selected at least in two releases.
•  We correctly predict 45.67% of strong change couplings changed
•  We want to go deeper and investigate the ways in which strong
change couplings can influence code quality
•  Build tools to monitor and track the “damage” caused by these
couplings;
•  Change propagation analysis using contextual information;
14
http://lapessc.ime.usp.br/
Thank you
igor@utfpr.edu.br

More Related Content

Viewers also liked

доклад текст
доклад текстдоклад текст
доклад текстgalya-av
 
Remajaislamideologis 130627023248-phpapp02
Remajaislamideologis 130627023248-phpapp02Remajaislamideologis 130627023248-phpapp02
Remajaislamideologis 130627023248-phpapp02Rohaedah Abdullah
 
Construccion de cuerpos geométricos
Construccion de cuerpos geométricosConstruccion de cuerpos geométricos
Construccion de cuerpos geométricosjosemanuelcremades
 
Biztanleria eta lana
Biztanleria eta lana  Biztanleria eta lana
Biztanleria eta lana koldokoak
 
Case Study - Electric Star Ltd
Case Study - Electric Star LtdCase Study - Electric Star Ltd
Case Study - Electric Star LtdCarolyne Wahlen
 
Tecnologia de la informacion 701 yuranis y camila
Tecnologia de la informacion 701 yuranis y camilaTecnologia de la informacion 701 yuranis y camila
Tecnologia de la informacion 701 yuranis y camilaAlma2015
 
Review paper
Review paperReview paper
Review paperananta200
 
Nano teks editor
Nano teks editorNano teks editor
Nano teks editorjoandi11
 

Viewers also liked (10)

доклад текст
доклад текстдоклад текст
доклад текст
 
Remajaislamideologis 130627023248-phpapp02
Remajaislamideologis 130627023248-phpapp02Remajaislamideologis 130627023248-phpapp02
Remajaislamideologis 130627023248-phpapp02
 
Fundraising Shops
Fundraising ShopsFundraising Shops
Fundraising Shops
 
Construccion de cuerpos geométricos
Construccion de cuerpos geométricosConstruccion de cuerpos geométricos
Construccion de cuerpos geométricos
 
Biztanleria eta lana
Biztanleria eta lana  Biztanleria eta lana
Biztanleria eta lana
 
Case Study - Electric Star Ltd
Case Study - Electric Star LtdCase Study - Electric Star Ltd
Case Study - Electric Star Ltd
 
Property for sale in dubai
Property for sale in dubaiProperty for sale in dubai
Property for sale in dubai
 
Tecnologia de la informacion 701 yuranis y camila
Tecnologia de la informacion 701 yuranis y camilaTecnologia de la informacion 701 yuranis y camila
Tecnologia de la informacion 701 yuranis y camila
 
Review paper
Review paperReview paper
Review paper
 
Nano teks editor
Nano teks editorNano teks editor
Nano teks editor
 

Similar to Strong Change Coupling and Defect Prediction

USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE ...
USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE ...USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE ...
USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE ...Igor Wiese
 
Early Detection of Collaboration Conflicts & Risks in Software Development
Early Detection of Collaboration Conflicts & Risks in Software DevelopmentEarly Detection of Collaboration Conflicts & Risks in Software Development
Early Detection of Collaboration Conflicts & Risks in Software DevelopmentRoopesh Jhurani
 
130404 fehmi jaafar - on the relationship between program evolution and fau...
130404   fehmi jaafar - on the relationship between program evolution and fau...130404   fehmi jaafar - on the relationship between program evolution and fau...
130404 fehmi jaafar - on the relationship between program evolution and fau...Ptidej Team
 
Beyond Strong Consistency
Beyond Strong ConsistencyBeyond Strong Consistency
Beyond Strong Consistencyjsinglet
 
An Implementation on Effective Robot Mission under Critical Environemental Co...
An Implementation on Effective Robot Mission under Critical Environemental Co...An Implementation on Effective Robot Mission under Critical Environemental Co...
An Implementation on Effective Robot Mission under Critical Environemental Co...IJERA Editor
 
Is robustness really robust? how different definitions of robustness impact d...
Is robustness really robust? how different definitions of robustness impact d...Is robustness really robust? how different definitions of robustness impact d...
Is robustness really robust? how different definitions of robustness impact d...Environmental Intelligence Lab
 
Mining and Untangling Change Genealogies (PhD Defense Talk)
Mining and Untangling Change Genealogies (PhD Defense Talk)Mining and Untangling Change Genealogies (PhD Defense Talk)
Mining and Untangling Change Genealogies (PhD Defense Talk)Kim Herzig
 
[ASE2014] An Empirical Study on Reducing Omission Errors in Practice
[ASE2014] An Empirical Study on Reducing Omission Errors in Practice[ASE2014] An Empirical Study on Reducing Omission Errors in Practice
[ASE2014] An Empirical Study on Reducing Omission Errors in PracticeJihun Park
 
Pairwise testing
Pairwise testingPairwise testing
Pairwise testingKanoah
 
AIAA-Aviation-VariableFidelity-2014-Mehmani
AIAA-Aviation-VariableFidelity-2014-MehmaniAIAA-Aviation-VariableFidelity-2014-Mehmani
AIAA-Aviation-VariableFidelity-2014-MehmaniOptiModel
 
nature inspired algorithms
nature inspired algorithmsnature inspired algorithms
nature inspired algorithmsGaurav Goel
 
DEFECT PREDICTION USING ORDER STATISTICS
DEFECT PREDICTION USING ORDER STATISTICSDEFECT PREDICTION USING ORDER STATISTICS
DEFECT PREDICTION USING ORDER STATISTICSIAEME Publication
 
A new development in the hierarchical clustering of repertory grid data
A new development in the hierarchical clustering of repertory grid dataA new development in the hierarchical clustering of repertory grid data
A new development in the hierarchical clustering of repertory grid dataMark Heckmann
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentIJERD Editor
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
 
2Regression testing refers to a software testing technique that re-runs non-f...
2Regression testing refers to a software testing technique that re-runs non-f...2Regression testing refers to a software testing technique that re-runs non-f...
2Regression testing refers to a software testing technique that re-runs non-f...gjeyasriitaamecnew
 

Similar to Strong Change Coupling and Defect Prediction (20)

USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE ...
USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE ...USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE ...
USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE ...
 
Early Detection of Collaboration Conflicts & Risks in Software Development
Early Detection of Collaboration Conflicts & Risks in Software DevelopmentEarly Detection of Collaboration Conflicts & Risks in Software Development
Early Detection of Collaboration Conflicts & Risks in Software Development
 
130404 fehmi jaafar - on the relationship between program evolution and fau...
130404   fehmi jaafar - on the relationship between program evolution and fau...130404   fehmi jaafar - on the relationship between program evolution and fau...
130404 fehmi jaafar - on the relationship between program evolution and fau...
 
Csmr13c.ppt
Csmr13c.pptCsmr13c.ppt
Csmr13c.ppt
 
Beyond Strong Consistency
Beyond Strong ConsistencyBeyond Strong Consistency
Beyond Strong Consistency
 
An Implementation on Effective Robot Mission under Critical Environemental Co...
An Implementation on Effective Robot Mission under Critical Environemental Co...An Implementation on Effective Robot Mission under Critical Environemental Co...
An Implementation on Effective Robot Mission under Critical Environemental Co...
 
Is robustness really robust? how different definitions of robustness impact d...
Is robustness really robust? how different definitions of robustness impact d...Is robustness really robust? how different definitions of robustness impact d...
Is robustness really robust? how different definitions of robustness impact d...
 
Mining and Untangling Change Genealogies (PhD Defense Talk)
Mining and Untangling Change Genealogies (PhD Defense Talk)Mining and Untangling Change Genealogies (PhD Defense Talk)
Mining and Untangling Change Genealogies (PhD Defense Talk)
 
[ASE2014] An Empirical Study on Reducing Omission Errors in Practice
[ASE2014] An Empirical Study on Reducing Omission Errors in Practice[ASE2014] An Empirical Study on Reducing Omission Errors in Practice
[ASE2014] An Empirical Study on Reducing Omission Errors in Practice
 
Pairwise testing
Pairwise testingPairwise testing
Pairwise testing
 
AIAA-Aviation-VariableFidelity-2014-Mehmani
AIAA-Aviation-VariableFidelity-2014-MehmaniAIAA-Aviation-VariableFidelity-2014-Mehmani
AIAA-Aviation-VariableFidelity-2014-Mehmani
 
Team Nile EE416 Final Report
Team Nile EE416 Final ReportTeam Nile EE416 Final Report
Team Nile EE416 Final Report
 
nature inspired algorithms
nature inspired algorithmsnature inspired algorithms
nature inspired algorithms
 
DEFECT PREDICTION USING ORDER STATISTICS
DEFECT PREDICTION USING ORDER STATISTICSDEFECT PREDICTION USING ORDER STATISTICS
DEFECT PREDICTION USING ORDER STATISTICS
 
A new development in the hierarchical clustering of repertory grid data
A new development in the hierarchical clustering of repertory grid dataA new development in the hierarchical clustering of repertory grid data
A new development in the hierarchical clustering of repertory grid data
 
F1083644
F1083644F1083644
F1083644
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and Development
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
 
2Regression testing refers to a software testing technique that re-runs non-f...
2Regression testing refers to a software testing technique that re-runs non-f...2Regression testing refers to a software testing technique that re-runs non-f...
2Regression testing refers to a software testing technique that re-runs non-f...
 

Recently uploaded

Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxnelietumpap1
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptxmary850239
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceSamikshaHamane
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 

Recently uploaded (20)

Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptx
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in Pharmacovigilance
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 

Strong Change Coupling and Defect Prediction

  • 1. AN EMPIRICAL STUDY OF THE RELATION BETWEEN STRONG CHANGE COUPLING AND DEFECTS USING HISTORY AND SOCIAL METRICS IN THE APACHE ARIES PROJECT Igor Wiese Rodrigo Kuroda Reginaldo Ré Gustavo Oliva Marco Gerosa
  • 2. 2 MOTIVATION + Dependencies + Maintenance effort [Banker et al.1998] + Defects [D’ambros et al. 2009b, Cataldo et al. 2009, Kirbas et. al 2014] + ripple effects [Pressman, 2001] Software systems comprise artifacts that depend on each other
  • 3. 3 MOTIVATION SCENARIO Subsystem A Class a Class c Class b Subsystem B Class d Class e
  • 4. CHANGE COUPLING 4 Artifacts a1 Artifacts a2 time Co-change commit A change coupling indicates that two artifacts changed together (co-changed) in the past, making them evolutionarily connected.
  • 5. WHY IS CHANGE COUPLING IMPORTANT? 5 Correlation with Defects [D’ambros et al. 2009b, Kirbas et. al 2014] Change Coupling Change Impact Analysis [Zimmermann et al. 2005, Zhou et al. 2008, Hassan 2009] Code Refactoring [D’ambros et al. 2009a] Understand the Sotware Architecture [Zimmermann et al. 2003] Modularity Assessment [[[Silva et al. 2014] Trace Requiriments [Ali et al. 2013] Change couplings reveal relationships not present in the code or in the documentation.
  • 6. 6 THE MAIN GOALS OF THIS PAPER ARE: 1 2 investigate the relation between strong change couplings and the number of defects (RQ1) characterize strong change couplings using historical and social metrics (RQ2) 3 predict defects associated with strong change couplings (RQ3)
  • 7. 7 METHODOLOGY Data Collection Identify the strong change couplings Compute the set of Metrics Build the Classifiers RQ1: Are strong change couplings related to defects? RQ2: Can historical and social metrics identify if a change coupling is strong? RQ3: Can we predict defects associated with strong change couplings?
  • 8. 8 IDENTIFYING STRONG CHANGE COUPLINGS Support Number of transactions when both artifacts were changed together (support = 3). Confidence The confidence for the change coupling from A to B would be 3/9 = 0.33. In turn, the confidence for the change coupling from B to A would be 3/4 = 0.75. Strong change coupling After ranking all change couplings by support value, we used a quartile analysis to determine the relevant change couplings. All couplings with support value higher than the third quartile were labeled as “strong”. Artifact A Artifact B time Co-change commit
  • 9. 9 APACHE ARIES The Aries project delivers a set of pluggable Java components enabling an enterprise OSGi application programming model ..has had 3,901 commits made by 35 contributors representing 189,241 lines of code 397 Commits Up +77 (24%) from previous 12 months 11 Contributors Up +1 (10%) from previous 12 months We collected data from six releases, 556 issue reports, five years of software developments history
  • 10. 10 RQ1: ARE STRONG CHANGE COUPLINGS RELATED TO DEFECTS? The majority of the strong change couplings could be associated with at least one defect. strong change couplings are moderately correlated (rho 0.46, p < 0.001)
  • 11. 11 RQ2: CAN HISTORICAL AND SOCIAL METRICS IDENTIFY IF A CHANGE COUPLING IS STRONG? To answer this question, we conducted two studies: •  Cross-validation for each release; •  Using one release to train, the consecutive release to test Cross Validation Results: •  Models with high Accuracy •  AUC ranging 88% - 99% •  F-measure from 70%-99% Inter-Release Train/Test •  Models can correctly predicted strong change couplings range from 56% to 100%. •  Problems when the train release have few instances
  • 12. 12 RQ2: WHICH ARE THE BEST METRICS TO IDENTIFY STRONG CHANGE COUPLINGS? •  In average 5 metrics were used (models were built with 16 metrics) •  The best subset selected: •  The length of discussion (number of words) – 4 releases •  The number of distinct committers – 3 releases •  The experience of committers – 2 releases •  The number of defect issues associated with – 2 releases •  The number of weeks between the first and last commit – 2 releases
  • 13. 13 RQ3: CAN WE PREDICT DEFECTS ASSOCIATED WITH STRONG CHANGE COUPLINGS? We found 81 strong change couplings in the post-release to fix defects. We correctly predicted 37 strong change couplings (45.67%).
  • 14. CONCLUSIONS •  We studied the relationship between strong change couplings and defects •  We developed models with high accuracy to identify strong change couplings •  In some cases, it is necessary to group the data. •  In average, 5 metrics were necessary to get better results •  6 metrics were selected at least in two releases. •  We correctly predict 45.67% of strong change couplings changed •  We want to go deeper and investigate the ways in which strong change couplings can influence code quality •  Build tools to monitor and track the “damage” caused by these couplings; •  Change propagation analysis using contextual information; 14