SlideShare a Scribd company logo
1 of 22
Download to read offline
USING STRUCTURAL HOLES METRICS
FROM COMMUNICATION NETWORKS
TO PREDICT CHANGE DEPENDENCIES
Igor Wiese, Rodrigo Kuroda, Douglas Nassif, Reginaldo Ré,
Gustavo Oliva and Marco Aurélio Gerosa
2
MOTIVATION SCENARIO
Subsystem A
Class a
Class c
Class b
Subsystem B
Class d
Class e
Software systems are
composed by
Artifacts that
dependes one each
other
3
MOTIVATION SCENARIO
4
MOTIVATION SCENARIO
5
MOTIVATION SCENARIO
CHANGE DEPENDENCIES
6
Artifacts a1
Artifacts a2
time
Change coupling
commit
A change dependency indicates that two
artifacts changed together (co-changed)
in the past, making them evolutionarily
connected
7
CONWAY´S LAW
Subsystem A
Class a
Class c
Class b
Subsystem B
Class d
Class e
"organizations
which design
systems are
constrained to
produce designs
which are copies
of the
communication
structures of
these
organization”
8
CONWAY´S LAW
Artifacts a1
Artifacts a2
time
Change coupling
commit
to check the impact of the structure of communications networks to predict
the occurrence of change dependencies among artifacts
9
STRUCTURAL HOLE
Structural Holes Metric (SHM) can reflect gaps
between nodes in a social network indicating
that a developer on either side of the hole have
access to different flows of information.
Network A Network B
10
RQ1. Can SHM from communication
predict change dependencies?
RQ2. What is the role of SHM from
communication to predict change
dependencies?
DATA COLLECTION
11
Two years of data, Split into six-months timeframes.
COMPUTING CHANGE DEPENDENCIES
12
Combine all files
in pairs
Going throught
the timeframe
analysis
Filter out co-
changes (5 couplings
as support count)
Split the classes
(higher than the median =
strong)
BUILDING THE COMMUNICATION
NETWORK
13
Recover the PR
for each change
dependency
Build the network
Calculate the
SHM metrics
d1
d2
Submitted Pull Request (PR)
First comment
d3 Second comment
COMPUTING STRUCTURAL HOLES
14
Recover the PR
for each change
dependency
Build the network
Calculate the
SHM metrics
• Effective Size is the portion of non-redundant
neighbors of a node
• Efficiency normalizes the effective size by the
number of neighbors
• Constraint measure the lack of holes among
neighbors
• Hierarchy measures the concentration of
constraint to a single node
Few values: non-redundant neighbors
Few values: high redundant neighbors
High values: many alternatives to access
the neighbors
High values: constraint is concentrated in
a single neighbor
CLASSIFICATION APPROACH
15
𝐹 − measure = 2 ∗
𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 ∗ 𝑟𝑒𝑐𝑎𝑙𝑙
𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 + 𝑟𝑒𝑐𝑎𝑙𝑙
A good model yields both high precision and
high recall. However, increasing one often
reduces the other.
F-measure returns a balanced
score of recall and precision
CLASSIFICATION APPROACH
16
𝑀𝐶𝐶 =
𝑅𝑒𝑐𝑎𝑙𝑙 𝑊𝑒𝑎𝑘𝐶𝑜𝐶ℎ𝑎𝑛𝑔𝑒 + 𝑅𝑒𝑐𝑎𝑙𝑙 𝑆𝑡𝑟𝑜𝑛𝑔𝐶𝑜𝐶ℎ𝑎𝑛𝑔𝑒 − 1 ∗
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑊𝑒𝑎𝑘𝐶𝑜𝐶ℎ𝑎𝑛𝑔𝑒 + 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑆𝑡𝑟𝑜𝑛𝑔𝐶𝑜𝐶ℎ𝑎𝑛𝑔𝑒 − 1
MCC returns a value between -1 and +1. A
coefficient of +1 represents a perfect
prediction, 0 means a random prediction and
-1 indicates total disagreement between
prediction and observations
RESULTS: RQ1 CAN SHM FROM COMMUNICATION NETWORKS
PREDICT CHANGE DEPENDENCIES?
17
RESULTS: RQ1 CAN SHM FROM COMMUNICATION NETWORKS
PREDICT CHANGE DEPENDENCIES?
18
Models controlled by
process metrics (number
of commits and developers)
Area under the
Curve > 0.7
1
2
cannot found statistical
difference between SHM
and Process metrics
3
RESULTS: RQ2 WHICH IS THE ROLE OF SHM FROM
COMMUNICATION TO PREDICT CO-CHANGES?
• We generated the tree using the Classication tree algorithm.
• To rank the metrics we counted the amount of times that each metric
appeared on the first four levels of each tree for both projects.
• We generated 8 treens (4 timeframes periods for each Project)
• Node.JS only with SHM
• constraintAVG (6), hierarchySUM (6), hierarchyAVG (3), efficiencySUM (3),
• Node.Js with process
• Commits (19), updates (14), effectiveSizeSUM (6), efficiencySUM (2),
constraintMAX (3)
• For Rails with process
• commits (8), updates (3), efficiencyAVG (3), effectiveSizeSUM (3),
effectiveSizeAVG (2), constraintSUM (2), efficiencySUM (2)
RESULTS: WHAT IS THE ROLE OF SHM FROM COMMUNICATION
TO PREDICT CO-CHANGES?
CONTRIBUTIONS
• As main contribution, we shown that SHM obtained from
communication networks can support the Conway’s law and predict
change dependencies.
• Since this first effort to use social metrics presented promising results,
we will explore more broadly this social dimension of development
process.
• Adding new projects
• Adding new social metrics
• Comparing with other software aspects (code metrics,
architectural aspects, etc.)
http://lapessc.ime.usp.br/
Thank you
igor@utfpr.edu.br

More Related Content

Viewers also liked

Collecting and Leveraging a Benchmark of Build System Clones to Aid in Qualit...
Collecting and Leveraging a Benchmark of Build System Clones to Aid in Qualit...Collecting and Leveraging a Benchmark of Build System Clones to Aid in Qualit...
Collecting and Leveraging a Benchmark of Build System Clones to Aid in Qualit...Shane McIntosh
 
Identifying Hotspots in the PostgreSQL Build Process
Identifying Hotspots in the PostgreSQL Build ProcessIdentifying Hotspots in the PostgreSQL Build Process
Identifying Hotspots in the PostgreSQL Build ProcessShane McIntosh
 
Orchestrating Change: An Artistic Representation of Software Evolution
Orchestrating Change: An Artistic Representation of Software EvolutionOrchestrating Change: An Artistic Representation of Software Evolution
Orchestrating Change: An Artistic Representation of Software EvolutionShane McIntosh
 
Identifying Hotspots in Software Build Processes
Identifying Hotspots in Software Build ProcessesIdentifying Hotspots in Software Build Processes
Identifying Hotspots in Software Build ProcessesShane McIntosh
 
Tracing Software Build Processes to Uncover License Compliance Inconsistencie...
Tracing Software Build Processes to Uncover License Compliance Inconsistencie...Tracing Software Build Processes to Uncover License Compliance Inconsistencie...
Tracing Software Build Processes to Uncover License Compliance Inconsistencie...Shane McIntosh
 
Module System in Standard ML
Module System in Standard MLModule System in Standard ML
Module System in Standard MLKeheliya Gallaba
 
Unicode - What you need to know
Unicode - What you need to knowUnicode - What you need to know
Unicode - What you need to knowKeheliya Gallaba
 
Cross-Project Build Co-change Prediction
Cross-Project Build Co-change PredictionCross-Project Build Co-change Prediction
Cross-Project Build Co-change PredictionShane McIntosh
 
Managing Knowledge in a Network Environment
Managing Knowledge in a Network EnvironmentManaging Knowledge in a Network Environment
Managing Knowledge in a Network EnvironmentAlbert Simard
 
Icse2011 build maintenance
Icse2011 build maintenanceIcse2011 build maintenance
Icse2011 build maintenanceShane McIntosh
 
Tracing Software Build Processes to Uncover License Compliance Inconsistencies
Tracing Software Build Processes to Uncover License Compliance InconsistenciesTracing Software Build Processes to Uncover License Compliance Inconsistencies
Tracing Software Build Processes to Uncover License Compliance InconsistenciesShane McIntosh
 
Open / Collaborative Innovation Networks
Open / Collaborative Innovation NetworksOpen / Collaborative Innovation Networks
Open / Collaborative Innovation Networksinnovation-3
 
Mining Co-Change Information to Understand when Build Changes are Necessary
Mining Co-Change Information to Understand when Build Changes are NecessaryMining Co-Change Information to Understand when Build Changes are Necessary
Mining Co-Change Information to Understand when Build Changes are NecessaryShane McIntosh
 
The Impact of Code Review Coverage and Participation on Software Quality
The Impact of Code Review Coverage and Participation on Software QualityThe Impact of Code Review Coverage and Participation on Software Quality
The Impact of Code Review Coverage and Participation on Software QualityShane McIntosh
 
O que é BIG DATA e como pode influenciar nossas vidas
O que é BIG DATA e como pode influenciar nossas vidasO que é BIG DATA e como pode influenciar nossas vidas
O que é BIG DATA e como pode influenciar nossas vidasElaine Naomi
 

Viewers also liked (20)

Collecting and Leveraging a Benchmark of Build System Clones to Aid in Qualit...
Collecting and Leveraging a Benchmark of Build System Clones to Aid in Qualit...Collecting and Leveraging a Benchmark of Build System Clones to Aid in Qualit...
Collecting and Leveraging a Benchmark of Build System Clones to Aid in Qualit...
 
Identifying Hotspots in the PostgreSQL Build Process
Identifying Hotspots in the PostgreSQL Build ProcessIdentifying Hotspots in the PostgreSQL Build Process
Identifying Hotspots in the PostgreSQL Build Process
 
Orchestrating Change: An Artistic Representation of Software Evolution
Orchestrating Change: An Artistic Representation of Software EvolutionOrchestrating Change: An Artistic Representation of Software Evolution
Orchestrating Change: An Artistic Representation of Software Evolution
 
Identifying Hotspots in Software Build Processes
Identifying Hotspots in Software Build ProcessesIdentifying Hotspots in Software Build Processes
Identifying Hotspots in Software Build Processes
 
Tracing Software Build Processes to Uncover License Compliance Inconsistencie...
Tracing Software Build Processes to Uncover License Compliance Inconsistencie...Tracing Software Build Processes to Uncover License Compliance Inconsistencie...
Tracing Software Build Processes to Uncover License Compliance Inconsistencie...
 
Buildtechs
BuildtechsBuildtechs
Buildtechs
 
Module System in Standard ML
Module System in Standard MLModule System in Standard ML
Module System in Standard ML
 
Unicode - What you need to know
Unicode - What you need to knowUnicode - What you need to know
Unicode - What you need to know
 
Cross-Project Build Co-change Prediction
Cross-Project Build Co-change PredictionCross-Project Build Co-change Prediction
Cross-Project Build Co-change Prediction
 
Managing Knowledge in a Network Environment
Managing Knowledge in a Network EnvironmentManaging Knowledge in a Network Environment
Managing Knowledge in a Network Environment
 
Icse2011 build maintenance
Icse2011 build maintenanceIcse2011 build maintenance
Icse2011 build maintenance
 
Tracing Software Build Processes to Uncover License Compliance Inconsistencies
Tracing Software Build Processes to Uncover License Compliance InconsistenciesTracing Software Build Processes to Uncover License Compliance Inconsistencies
Tracing Software Build Processes to Uncover License Compliance Inconsistencies
 
Open / Collaborative Innovation Networks
Open / Collaborative Innovation NetworksOpen / Collaborative Innovation Networks
Open / Collaborative Innovation Networks
 
ICSE2011_SRC
ICSE2011_SRC ICSE2011_SRC
ICSE2011_SRC
 
Mining Co-Change Information to Understand when Build Changes are Necessary
Mining Co-Change Information to Understand when Build Changes are NecessaryMining Co-Change Information to Understand when Build Changes are Necessary
Mining Co-Change Information to Understand when Build Changes are Necessary
 
The Impact of Code Review Coverage and Participation on Software Quality
The Impact of Code Review Coverage and Participation on Software QualityThe Impact of Code Review Coverage and Participation on Software Quality
The Impact of Code Review Coverage and Participation on Software Quality
 
Qt Apresentação
Qt ApresentaçãoQt Apresentação
Qt Apresentação
 
Sonar Metrics
Sonar MetricsSonar Metrics
Sonar Metrics
 
5 Structural Holes
5 Structural Holes5 Structural Holes
5 Structural Holes
 
O que é BIG DATA e como pode influenciar nossas vidas
O que é BIG DATA e como pode influenciar nossas vidasO que é BIG DATA e como pode influenciar nossas vidas
O que é BIG DATA e como pode influenciar nossas vidas
 

Similar to USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE DEPENDENCIES

AN EMPIRICAL STUDY OF THE RELATION BETWEEN STRONG CHANGE COUPLING AND DEFECTS...
AN EMPIRICAL STUDY OF THE RELATION BETWEEN STRONG CHANGE COUPLING AND DEFECTS...AN EMPIRICAL STUDY OF THE RELATION BETWEEN STRONG CHANGE COUPLING AND DEFECTS...
AN EMPIRICAL STUDY OF THE RELATION BETWEEN STRONG CHANGE COUPLING AND DEFECTS...Igor Wiese
 
Distributed Near Real-Time Processing of Sensor Network Data Flows for Smart ...
Distributed Near Real-Time Processing of Sensor Network Data Flows for Smart ...Distributed Near Real-Time Processing of Sensor Network Data Flows for Smart ...
Distributed Near Real-Time Processing of Sensor Network Data Flows for Smart ...Otávio Carvalho
 
Modeling the Complexity of Critical Infrastructures
Modeling the Complexity of Critical InfrastructuresModeling the Complexity of Critical Infrastructures
Modeling the Complexity of Critical InfrastructuresCommunity Protection Forum
 
Jeffrey xu yu large graph processing
Jeffrey xu yu large graph processingJeffrey xu yu large graph processing
Jeffrey xu yu large graph processingjins0618
 
Efficient Doubletree: An Algorithm for Large-Scale Topology Discovery
Efficient Doubletree: An Algorithm for Large-Scale Topology DiscoveryEfficient Doubletree: An Algorithm for Large-Scale Topology Discovery
Efficient Doubletree: An Algorithm for Large-Scale Topology DiscoveryIOSR Journals
 
Discrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and eventDiscrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and eventNitish Nagar
 
Scalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTESScalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTESSubhajit Sahu
 
Mobile Networking and Mobile Ad Hoc Routing Protocol Modeling
Mobile Networking and Mobile Ad Hoc Routing Protocol ModelingMobile Networking and Mobile Ad Hoc Routing Protocol Modeling
Mobile Networking and Mobile Ad Hoc Routing Protocol ModelingIOSR Journals
 
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...State and fault estimation based on fuzzy observer for a class of Takagi-Suge...
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...IJEECSIAES
 
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...State and fault estimation based on fuzzy observer for a class of Takagi-Suge...
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...nooriasukmaningtyas
 
Why ∆Q is the ideal network metric
Why ∆Q is the ideal network metricWhy ∆Q is the ideal network metric
Why ∆Q is the ideal network metricMartin Geddes
 
Software architacture recovery
Software architacture recoverySoftware architacture recovery
Software architacture recoveryImdad Ul Haq
 
The Quality of the New Generator Sequence Improvent to Spread the Color Syste...
The Quality of the New Generator Sequence Improvent to Spread the Color Syste...The Quality of the New Generator Sequence Improvent to Spread the Color Syste...
The Quality of the New Generator Sequence Improvent to Spread the Color Syste...TELKOMNIKA JOURNAL
 
Using Genetic Algorithm for Shortest Path Selection with Real Time Traffic Flow
Using Genetic Algorithm for Shortest Path Selection with Real Time Traffic FlowUsing Genetic Algorithm for Shortest Path Selection with Real Time Traffic Flow
Using Genetic Algorithm for Shortest Path Selection with Real Time Traffic FlowIJCSIS Research Publications
 
Analysis of programming aspects of wireless sensor networks
Analysis of programming aspects of wireless sensor networksAnalysis of programming aspects of wireless sensor networks
Analysis of programming aspects of wireless sensor networksiaemedu
 
Towards modelling and analysing non-functional properties of SoS
Towards modelling and analysing non-functional properties of SoSTowards modelling and analysing non-functional properties of SoS
Towards modelling and analysing non-functional properties of SoSVanea Chiprianov
 
Ontonix: Engineering - Healthcare applications
Ontonix: Engineering - Healthcare applicationsOntonix: Engineering - Healthcare applications
Ontonix: Engineering - Healthcare applicationsDavid Wilson
 
Lesson02 - Network Design & LAN
Lesson02 - Network Design & LANLesson02 - Network Design & LAN
Lesson02 - Network Design & LANAngel G Diaz
 
Graphical Structure Learning accelerated with POWER9
Graphical Structure Learning accelerated with POWER9Graphical Structure Learning accelerated with POWER9
Graphical Structure Learning accelerated with POWER9Ganesan Narayanasamy
 
Big data analytics for smart and sustainable city galway
Big data analytics for smart and sustainable city galwayBig data analytics for smart and sustainable city galway
Big data analytics for smart and sustainable city galwayLaura Po
 

Similar to USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE DEPENDENCIES (20)

AN EMPIRICAL STUDY OF THE RELATION BETWEEN STRONG CHANGE COUPLING AND DEFECTS...
AN EMPIRICAL STUDY OF THE RELATION BETWEEN STRONG CHANGE COUPLING AND DEFECTS...AN EMPIRICAL STUDY OF THE RELATION BETWEEN STRONG CHANGE COUPLING AND DEFECTS...
AN EMPIRICAL STUDY OF THE RELATION BETWEEN STRONG CHANGE COUPLING AND DEFECTS...
 
Distributed Near Real-Time Processing of Sensor Network Data Flows for Smart ...
Distributed Near Real-Time Processing of Sensor Network Data Flows for Smart ...Distributed Near Real-Time Processing of Sensor Network Data Flows for Smart ...
Distributed Near Real-Time Processing of Sensor Network Data Flows for Smart ...
 
Modeling the Complexity of Critical Infrastructures
Modeling the Complexity of Critical InfrastructuresModeling the Complexity of Critical Infrastructures
Modeling the Complexity of Critical Infrastructures
 
Jeffrey xu yu large graph processing
Jeffrey xu yu large graph processingJeffrey xu yu large graph processing
Jeffrey xu yu large graph processing
 
Efficient Doubletree: An Algorithm for Large-Scale Topology Discovery
Efficient Doubletree: An Algorithm for Large-Scale Topology DiscoveryEfficient Doubletree: An Algorithm for Large-Scale Topology Discovery
Efficient Doubletree: An Algorithm for Large-Scale Topology Discovery
 
Discrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and eventDiscrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and event
 
Scalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTESScalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTES
 
Mobile Networking and Mobile Ad Hoc Routing Protocol Modeling
Mobile Networking and Mobile Ad Hoc Routing Protocol ModelingMobile Networking and Mobile Ad Hoc Routing Protocol Modeling
Mobile Networking and Mobile Ad Hoc Routing Protocol Modeling
 
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...State and fault estimation based on fuzzy observer for a class of Takagi-Suge...
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...
 
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...State and fault estimation based on fuzzy observer for a class of Takagi-Suge...
State and fault estimation based on fuzzy observer for a class of Takagi-Suge...
 
Why ∆Q is the ideal network metric
Why ∆Q is the ideal network metricWhy ∆Q is the ideal network metric
Why ∆Q is the ideal network metric
 
Software architacture recovery
Software architacture recoverySoftware architacture recovery
Software architacture recovery
 
The Quality of the New Generator Sequence Improvent to Spread the Color Syste...
The Quality of the New Generator Sequence Improvent to Spread the Color Syste...The Quality of the New Generator Sequence Improvent to Spread the Color Syste...
The Quality of the New Generator Sequence Improvent to Spread the Color Syste...
 
Using Genetic Algorithm for Shortest Path Selection with Real Time Traffic Flow
Using Genetic Algorithm for Shortest Path Selection with Real Time Traffic FlowUsing Genetic Algorithm for Shortest Path Selection with Real Time Traffic Flow
Using Genetic Algorithm for Shortest Path Selection with Real Time Traffic Flow
 
Analysis of programming aspects of wireless sensor networks
Analysis of programming aspects of wireless sensor networksAnalysis of programming aspects of wireless sensor networks
Analysis of programming aspects of wireless sensor networks
 
Towards modelling and analysing non-functional properties of SoS
Towards modelling and analysing non-functional properties of SoSTowards modelling and analysing non-functional properties of SoS
Towards modelling and analysing non-functional properties of SoS
 
Ontonix: Engineering - Healthcare applications
Ontonix: Engineering - Healthcare applicationsOntonix: Engineering - Healthcare applications
Ontonix: Engineering - Healthcare applications
 
Lesson02 - Network Design & LAN
Lesson02 - Network Design & LANLesson02 - Network Design & LAN
Lesson02 - Network Design & LAN
 
Graphical Structure Learning accelerated with POWER9
Graphical Structure Learning accelerated with POWER9Graphical Structure Learning accelerated with POWER9
Graphical Structure Learning accelerated with POWER9
 
Big data analytics for smart and sustainable city galway
Big data analytics for smart and sustainable city galwayBig data analytics for smart and sustainable city galway
Big data analytics for smart and sustainable city galway
 

Recently uploaded

A gentle introduction to Artificial Intelligence
A gentle introduction to Artificial IntelligenceA gentle introduction to Artificial Intelligence
A gentle introduction to Artificial IntelligenceApostolos Syropoulos
 
Unveiling the Intricacies of Leishmania donovani: Structure, Life Cycle, Path...
Unveiling the Intricacies of Leishmania donovani: Structure, Life Cycle, Path...Unveiling the Intricacies of Leishmania donovani: Structure, Life Cycle, Path...
Unveiling the Intricacies of Leishmania donovani: Structure, Life Cycle, Path...Dr. Asif Anas
 
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptxSandy Millin
 
Quality Assurance_GOOD LABORATORY PRACTICE
Quality Assurance_GOOD LABORATORY PRACTICEQuality Assurance_GOOD LABORATORY PRACTICE
Quality Assurance_GOOD LABORATORY PRACTICESayali Powar
 
Diploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdfDiploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdfMohonDas
 
In - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptxIn - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptxAditiChauhan701637
 
Ultra structure and life cycle of Plasmodium.pptx
Ultra structure and life cycle of Plasmodium.pptxUltra structure and life cycle of Plasmodium.pptx
Ultra structure and life cycle of Plasmodium.pptxDr. Asif Anas
 
Riddhi Kevadiya. WILLIAM SHAKESPEARE....
Riddhi Kevadiya. WILLIAM SHAKESPEARE....Riddhi Kevadiya. WILLIAM SHAKESPEARE....
Riddhi Kevadiya. WILLIAM SHAKESPEARE....Riddhi Kevadiya
 
AUDIENCE THEORY -- FANDOM -- JENKINS.pptx
AUDIENCE THEORY -- FANDOM -- JENKINS.pptxAUDIENCE THEORY -- FANDOM -- JENKINS.pptx
AUDIENCE THEORY -- FANDOM -- JENKINS.pptxiammrhaywood
 
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...Nguyen Thanh Tu Collection
 
5 charts on South Africa as a source country for international student recrui...
5 charts on South Africa as a source country for international student recrui...5 charts on South Africa as a source country for international student recrui...
5 charts on South Africa as a source country for international student recrui...CaraSkikne1
 
Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.EnglishCEIPdeSigeiro
 
The Stolen Bacillus by Herbert George Wells
The Stolen Bacillus by Herbert George WellsThe Stolen Bacillus by Herbert George Wells
The Stolen Bacillus by Herbert George WellsEugene Lysak
 
How to Make a Field read-only in Odoo 17
How to Make a Field read-only in Odoo 17How to Make a Field read-only in Odoo 17
How to Make a Field read-only in Odoo 17Celine George
 
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdfP4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdfYu Kanazawa / Osaka University
 
How to Show Error_Warning Messages in Odoo 17
How to Show Error_Warning Messages in Odoo 17How to Show Error_Warning Messages in Odoo 17
How to Show Error_Warning Messages in Odoo 17Celine George
 
How to Add a New Field in Existing Kanban View in Odoo 17
How to Add a New Field in Existing Kanban View in Odoo 17How to Add a New Field in Existing Kanban View in Odoo 17
How to Add a New Field in Existing Kanban View in Odoo 17Celine George
 
KARNAADA.pptx made by - saransh dwivedi ( SD ) - SHALAKYA TANTRA - ENT - 4...
KARNAADA.pptx  made by -  saransh dwivedi ( SD ) -  SHALAKYA TANTRA - ENT - 4...KARNAADA.pptx  made by -  saransh dwivedi ( SD ) -  SHALAKYA TANTRA - ENT - 4...
KARNAADA.pptx made by - saransh dwivedi ( SD ) - SHALAKYA TANTRA - ENT - 4...M56BOOKSTORE PRODUCT/SERVICE
 
CapTechU Doctoral Presentation -March 2024 slides.pptx
CapTechU Doctoral Presentation -March 2024 slides.pptxCapTechU Doctoral Presentation -March 2024 slides.pptx
CapTechU Doctoral Presentation -March 2024 slides.pptxCapitolTechU
 

Recently uploaded (20)

A gentle introduction to Artificial Intelligence
A gentle introduction to Artificial IntelligenceA gentle introduction to Artificial Intelligence
A gentle introduction to Artificial Intelligence
 
Unveiling the Intricacies of Leishmania donovani: Structure, Life Cycle, Path...
Unveiling the Intricacies of Leishmania donovani: Structure, Life Cycle, Path...Unveiling the Intricacies of Leishmania donovani: Structure, Life Cycle, Path...
Unveiling the Intricacies of Leishmania donovani: Structure, Life Cycle, Path...
 
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
 
Quality Assurance_GOOD LABORATORY PRACTICE
Quality Assurance_GOOD LABORATORY PRACTICEQuality Assurance_GOOD LABORATORY PRACTICE
Quality Assurance_GOOD LABORATORY PRACTICE
 
Diploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdfDiploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdf
 
In - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptxIn - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptx
 
March 2024 Directors Meeting, Division of Student Affairs and Academic Support
March 2024 Directors Meeting, Division of Student Affairs and Academic SupportMarch 2024 Directors Meeting, Division of Student Affairs and Academic Support
March 2024 Directors Meeting, Division of Student Affairs and Academic Support
 
Ultra structure and life cycle of Plasmodium.pptx
Ultra structure and life cycle of Plasmodium.pptxUltra structure and life cycle of Plasmodium.pptx
Ultra structure and life cycle of Plasmodium.pptx
 
Riddhi Kevadiya. WILLIAM SHAKESPEARE....
Riddhi Kevadiya. WILLIAM SHAKESPEARE....Riddhi Kevadiya. WILLIAM SHAKESPEARE....
Riddhi Kevadiya. WILLIAM SHAKESPEARE....
 
AUDIENCE THEORY -- FANDOM -- JENKINS.pptx
AUDIENCE THEORY -- FANDOM -- JENKINS.pptxAUDIENCE THEORY -- FANDOM -- JENKINS.pptx
AUDIENCE THEORY -- FANDOM -- JENKINS.pptx
 
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
 
5 charts on South Africa as a source country for international student recrui...
5 charts on South Africa as a source country for international student recrui...5 charts on South Africa as a source country for international student recrui...
5 charts on South Africa as a source country for international student recrui...
 
Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.
 
The Stolen Bacillus by Herbert George Wells
The Stolen Bacillus by Herbert George WellsThe Stolen Bacillus by Herbert George Wells
The Stolen Bacillus by Herbert George Wells
 
How to Make a Field read-only in Odoo 17
How to Make a Field read-only in Odoo 17How to Make a Field read-only in Odoo 17
How to Make a Field read-only in Odoo 17
 
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdfP4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
 
How to Show Error_Warning Messages in Odoo 17
How to Show Error_Warning Messages in Odoo 17How to Show Error_Warning Messages in Odoo 17
How to Show Error_Warning Messages in Odoo 17
 
How to Add a New Field in Existing Kanban View in Odoo 17
How to Add a New Field in Existing Kanban View in Odoo 17How to Add a New Field in Existing Kanban View in Odoo 17
How to Add a New Field in Existing Kanban View in Odoo 17
 
KARNAADA.pptx made by - saransh dwivedi ( SD ) - SHALAKYA TANTRA - ENT - 4...
KARNAADA.pptx  made by -  saransh dwivedi ( SD ) -  SHALAKYA TANTRA - ENT - 4...KARNAADA.pptx  made by -  saransh dwivedi ( SD ) -  SHALAKYA TANTRA - ENT - 4...
KARNAADA.pptx made by - saransh dwivedi ( SD ) - SHALAKYA TANTRA - ENT - 4...
 
CapTechU Doctoral Presentation -March 2024 slides.pptx
CapTechU Doctoral Presentation -March 2024 slides.pptxCapTechU Doctoral Presentation -March 2024 slides.pptx
CapTechU Doctoral Presentation -March 2024 slides.pptx
 

USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE DEPENDENCIES

  • 1. USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE DEPENDENCIES Igor Wiese, Rodrigo Kuroda, Douglas Nassif, Reginaldo Ré, Gustavo Oliva and Marco Aurélio Gerosa
  • 2. 2 MOTIVATION SCENARIO Subsystem A Class a Class c Class b Subsystem B Class d Class e Software systems are composed by Artifacts that dependes one each other
  • 6. CHANGE DEPENDENCIES 6 Artifacts a1 Artifacts a2 time Change coupling commit A change dependency indicates that two artifacts changed together (co-changed) in the past, making them evolutionarily connected
  • 7. 7 CONWAY´S LAW Subsystem A Class a Class c Class b Subsystem B Class d Class e "organizations which design systems are constrained to produce designs which are copies of the communication structures of these organization”
  • 8. 8 CONWAY´S LAW Artifacts a1 Artifacts a2 time Change coupling commit to check the impact of the structure of communications networks to predict the occurrence of change dependencies among artifacts
  • 9. 9 STRUCTURAL HOLE Structural Holes Metric (SHM) can reflect gaps between nodes in a social network indicating that a developer on either side of the hole have access to different flows of information. Network A Network B
  • 10. 10 RQ1. Can SHM from communication predict change dependencies? RQ2. What is the role of SHM from communication to predict change dependencies?
  • 11. DATA COLLECTION 11 Two years of data, Split into six-months timeframes.
  • 12. COMPUTING CHANGE DEPENDENCIES 12 Combine all files in pairs Going throught the timeframe analysis Filter out co- changes (5 couplings as support count) Split the classes (higher than the median = strong)
  • 13. BUILDING THE COMMUNICATION NETWORK 13 Recover the PR for each change dependency Build the network Calculate the SHM metrics d1 d2 Submitted Pull Request (PR) First comment d3 Second comment
  • 14. COMPUTING STRUCTURAL HOLES 14 Recover the PR for each change dependency Build the network Calculate the SHM metrics • Effective Size is the portion of non-redundant neighbors of a node • Efficiency normalizes the effective size by the number of neighbors • Constraint measure the lack of holes among neighbors • Hierarchy measures the concentration of constraint to a single node Few values: non-redundant neighbors Few values: high redundant neighbors High values: many alternatives to access the neighbors High values: constraint is concentrated in a single neighbor
  • 15. CLASSIFICATION APPROACH 15 𝐹 − measure = 2 ∗ 𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 ∗ 𝑟𝑒𝑐𝑎𝑙𝑙 𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 + 𝑟𝑒𝑐𝑎𝑙𝑙 A good model yields both high precision and high recall. However, increasing one often reduces the other. F-measure returns a balanced score of recall and precision
  • 16. CLASSIFICATION APPROACH 16 𝑀𝐶𝐶 = 𝑅𝑒𝑐𝑎𝑙𝑙 𝑊𝑒𝑎𝑘𝐶𝑜𝐶ℎ𝑎𝑛𝑔𝑒 + 𝑅𝑒𝑐𝑎𝑙𝑙 𝑆𝑡𝑟𝑜𝑛𝑔𝐶𝑜𝐶ℎ𝑎𝑛𝑔𝑒 − 1 ∗ 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑊𝑒𝑎𝑘𝐶𝑜𝐶ℎ𝑎𝑛𝑔𝑒 + 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑆𝑡𝑟𝑜𝑛𝑔𝐶𝑜𝐶ℎ𝑎𝑛𝑔𝑒 − 1 MCC returns a value between -1 and +1. A coefficient of +1 represents a perfect prediction, 0 means a random prediction and -1 indicates total disagreement between prediction and observations
  • 17. RESULTS: RQ1 CAN SHM FROM COMMUNICATION NETWORKS PREDICT CHANGE DEPENDENCIES? 17
  • 18. RESULTS: RQ1 CAN SHM FROM COMMUNICATION NETWORKS PREDICT CHANGE DEPENDENCIES? 18 Models controlled by process metrics (number of commits and developers) Area under the Curve > 0.7 1 2 cannot found statistical difference between SHM and Process metrics 3
  • 19. RESULTS: RQ2 WHICH IS THE ROLE OF SHM FROM COMMUNICATION TO PREDICT CO-CHANGES? • We generated the tree using the Classication tree algorithm. • To rank the metrics we counted the amount of times that each metric appeared on the first four levels of each tree for both projects. • We generated 8 treens (4 timeframes periods for each Project) • Node.JS only with SHM • constraintAVG (6), hierarchySUM (6), hierarchyAVG (3), efficiencySUM (3), • Node.Js with process • Commits (19), updates (14), effectiveSizeSUM (6), efficiencySUM (2), constraintMAX (3) • For Rails with process • commits (8), updates (3), efficiencyAVG (3), effectiveSizeSUM (3), effectiveSizeAVG (2), constraintSUM (2), efficiencySUM (2)
  • 20. RESULTS: WHAT IS THE ROLE OF SHM FROM COMMUNICATION TO PREDICT CO-CHANGES?
  • 21. CONTRIBUTIONS • As main contribution, we shown that SHM obtained from communication networks can support the Conway’s law and predict change dependencies. • Since this first effort to use social metrics presented promising results, we will explore more broadly this social dimension of development process. • Adding new projects • Adding new social metrics • Comparing with other software aspects (code metrics, architectural aspects, etc.)