SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Andere mochten auch

Identifying Hotspots in Software Build Processes
Identifying Hotspots in Software Build ProcessesIdentifying Hotspots in Software Build Processes
Identifying Hotspots in Software Build Processes
Shane 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
 
Unicode - What you need to know
Unicode - What you need to knowUnicode - What you need to know
Unicode - What you need to know
Keheliya Gallaba
 
Cross-Project Build Co-change Prediction
Cross-Project Build Co-change PredictionCross-Project Build Co-change Prediction
Cross-Project Build Co-change Prediction
Shane McIntosh
 
Open / Collaborative Innovation Networks
Open / Collaborative Innovation NetworksOpen / Collaborative Innovation Networks
Open / Collaborative Innovation Networks
innovation-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 Necessary
Shane 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 Quality
Shane McIntosh
 

Andere mochten auch (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
 

Ähnlich wie USING STRUCTURAL HOLES METRICS FROM COMMUNICATION NETWORKS TO PREDICT CHANGE DEPENDENCIES

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
Nitish 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 : NOTES
Subhajit Sahu
 
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
iaemedu
 

Ähnlich wie 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
 

Kürzlich hochgeladen

The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 

Kürzlich hochgeladen (20)

Plant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptxPlant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).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.)