predicting build failures using social network analysis developer ... · social network analysis...
Post on 17-Oct-2020
8 Views
Preview:
TRANSCRIPT
Predicting Build Failuresusing Social Network Analysis
on Developer Communication
Timo Wolf Adrian Schröter Daniela Damian Thanh NguyenSIEMENS AGCorporate TechnologySoftware & Engineering
Software Engineering Global interAction Lab – SEGALComputer Science DepartmentUniversity of Victoria, BC Canada
SIEMENS AG timowolf@siemens.com
Introduction
2
SIEMENS AG timowolf@siemens.com
Introduction
2
SIEMENS AG timowolf@siemens.com
Introduction
2
Build Failure- Compile Error- Test Failure
SIEMENS AG timowolf@siemens.com
IntroductionThe damn build broke again! WHY ?
2
Build Failure- Compile Error- Test Failure
SIEMENS AG timowolf@siemens.com
IntroductionThe damn build broke again! WHY ?
DB changed!But that’s transparent.Analyses takes time!
We should have talked earlier!
2
Build Failure- Compile Error- Test Failure
SIEMENS AG timowolf@siemens.com
Introduction
• Collaboration essential in software development
• Communication problems lead to coordination and integration failures
The damn build broke again! WHY ?
DB changed!But that’s transparent.Analyses takes time!
We should have talked earlier!
2
Build Failure- Compile Error- Test Failure
SIEMENS AG timowolf@siemens.com
Introduction
• Collaboration essential in software development
• Communication problems lead to coordination and integration failures
Do specific communication behaviors enable effective and successful coordination?
The damn build broke again! WHY ?
DB changed!But that’s transparent.Analyses takes time!
We should have talked earlier!
2
Build Failure- Compile Error- Test Failure
SIEMENS AG timowolf@siemens.com
Communication for collaboration
3
SIEMENS AG timowolf@siemens.com
Communication for collaboration
• Communication:
• Task related content
Task relatedContent &
Information
3
SIEMENS AG timowolf@siemens.com
Communication for collaboration
• Communication:
• Task related content
Task relatedContent &
Information
• Structure
3
SIEMENS AG timowolf@siemens.com
Communication for collaboration
• Communication:
• Task related content
Our focus:Communication Structure and relationship to coordination outcome
• Structure
3
SIEMENS AG timowolf@siemens.com 4
Study Settings: IBM Jazz
SIEMENS AG timowolf@siemens.com 4
Study Settings: IBM Jazz
IBM Research&
SIEMENS AG timowolf@siemens.com 5
Study Settings: IBM Jazz
151 developers
47 functional teams
SIEMENS AG timowolf@siemens.com 6
7 development sites in USA, Canada, Europe
Study Settings: IBM Jazz
SIEMENS AG timowolf@siemens.com 7
Study Settings: IBM Jazz
SIEMENS AG timowolf@siemens.com
Coordination & Integration in Jazz
8
SIEMENS AG timowolf@siemens.com
Coordination & Integration in Jazz
Team A
Stream
Build 1
Team A Contributor 1 Contributor 2 Contributor 3
8
SIEMENS AG timowolf@siemens.com
Coordination & Integration in Jazz
Team A
Stream
Build 1
Team A Contributor 1 Contributor 2 Contributor 3
8
!! !! !!
SIEMENS AG timowolf@siemens.com
Coordination & Integration in Jazz
Team A
Stream
Build 1
Team A Contributor 1 Contributor 2 Contributor 3
8
SIEMENS AG timowolf@siemens.com
Coordination & Integration in Jazz
Team A
Stream
Build 1
Team A Contributor 1 Contributor 2 Contributor 3
Team B
Stream
Build 1
commits changes
Team B Contributor 4 Contributor 5 Contributor 6
ChangeSets
8
SIEMENS AG timowolf@siemens.com
Coordination & Integration in Jazz
Team A
Stream
Build 1
Team A Contributor 1 Contributor 2 Contributor 3
Team B
Stream
Build 1
commits changes
Team B Contributor 4 Contributor 5 Contributor 6
ChangeSets
ProjectBuild 1Project
IntegrationStream
publish changesget changes
8
SIEMENS AG timowolf@siemens.com
Coordination & Integration in Jazz
Team A
Stream
Build 1
Team A Contributor 1 Contributor 2 Contributor 3
Team B
Stream
Build 1
commits changes
Team B Contributor 4 Contributor 5 Contributor 6
ChangeSets
ProjectBuild 1Project
IntegrationStream
publish changesget changes
Coordination Outcome: Build Result8
SIEMENS AG timowolf@siemens.com
Research Questions
9
SIEMENS AG timowolf@siemens.com
! OK ERROR
Research Questions
9
SIEMENS AG timowolf@siemens.com
! OK ERROR
Research Questions
SNA Measurese.g. Density = 0.8
SNA Measurese.g. Density = 0.4predictmeasure predictmeasure
9
SIEMENS AG timowolf@siemens.com
! OK ERROR
Research Questions
• RQ1: Can individual measures of communication structure predict integration failure?
SNA Measurese.g. Density = 0.8
SNA Measurese.g. Density = 0.4predictmeasure predictmeasure
9
SIEMENS AG timowolf@siemens.com
! OK ERROR
Research Questions
• RQ1: Can individual measures of communication structure predict integration failure?
• RQ2: Can the combination of communication structure measures predict integration failure?
SNA Measurese.g. Density = 0.8
SNA Measurese.g. Density = 0.4predictmeasure predictmeasure
9
SIEMENS AG timowolf@siemens.com
Constructing Social Networks in Jazz
10
SIEMENS AG timowolf@siemens.com
Constructing Social Networks in Jazz
10
time
Stream
t0 t1
Build N
Failed
Previous
Build
Build N
Failed
Previous
Build
SIEMENS AG timowolf@siemens.com
Constructing Social Networks in Jazz
10
Build N Network
c1
c2
c3
c4
time
Stream
t0 t1
Build N
Failed
Previous
Build
Build N
Failed
Previous
Build
SIEMENS AG timowolf@siemens.com
Constructing Social Networks in Jazz
10
Build N Network
c1
c2
c3
c4
time
Stream
t0 t1
Build N
Failed
Previous
Build
Build N
Failed
Previous
Build
c1c2 c3 c4
SIEMENS AG timowolf@siemens.com
Constructing Social Networks in Jazz
10
Build N Network
c1
c2
c3
c4
time
Stream
t0 t1
Build N
Failed
Previous
Build
Build N
Failed
Previous
Build
w1 w2
c1c2 c3 c4
SIEMENS AG timowolf@siemens.com
Constructing Social Networks in Jazz
10
Build N Network
c1
c2
c3
c4
time
Stream
t0 t1
Build N
Failed
Previous
Build
Build N
Failed
Previous
Build
w1 w2
c1c2 c3 c4
SIEMENS AG timowolf@siemens.com
Constructing Social Networks in Jazz
10
Build N Network
c1
c2
c3
c4
SNA
quantitativemeasures
of communication structure
time
Stream
t0 t1
Build N
Failed
Previous
Build
Build N
Failed
Previous
Build
Social NetworkAnalysis (SNA)
w1 w2
c1c2 c3 c4
SIEMENS AG timowolf@siemens.com
SNA Measures
11
SIEMENS AG timowolf@siemens.com
SNA Measures
12
SIEMENS AG timowolf@siemens.com
SNA Measures
13
SIEMENS AG timowolf@siemens.com
SNA Measures
14
SIEMENS AG timowolf@siemens.com
SNA Measures
15
SIEMENS AG timowolf@siemens.com
Data Collection & Selection
• Time Range: Nov. 5, 2007 - Feb. 26, 2008
• 1288 Build Results
• 25713 Work Items
• 71019 Comments
• Selected Build Results of 5 Teams
• Selected 3 Integration Builds (nightly, weekly, beta)
16
SIEMENS AG timowolf@siemens.com
RQ1: individual measure prediction?
17
SIEMENS AG timowolf@siemens.com
RQ1: individual measure prediction?
SN Build 1
SN Build 3
SN Build 4
SN Build 2
SN Build 5
SN Build 6
17
SIEMENS AG timowolf@siemens.com
RQ1: individual measure prediction?
SN Build 1
SN Build 3
SN Build 4
SN Build 2
SN Build 5
SN Build 6
Social Network Measures
• Densityfor Completeness
• Degree Centralityfor Activity
• Betweenness Centralityfor Control
• Structural Holesfor Redundancy
17
SIEMENS AG timowolf@siemens.com
RQ1: individual measure prediction?
SN Build 1
SN Build 3
SN Build 4
SN Build 2
SN Build 5
SN Build 6
Social Network Measures
• Densityfor Completeness
• Degree Centralityfor Activity
• Betweenness Centralityfor Control
• Structural Holesfor Redundancy
No statistically significant difference!
17
SIEMENS AG timowolf@siemens.com
RQ2: multi measures prediction?
18
SIEMENS AG timowolf@siemens.com
?
RQ2: multi measures prediction?
18
SIEMENS AG timowolf@siemens.com
?
RQ2: multi measures prediction?
Bayesian Classifier
1. Train withall measures
18
SIEMENS AG timowolf@siemens.com
?
RQ2: multi measures prediction?
2. Input
Bayesian Classifier
1. Train withall measures
18
SIEMENS AG timowolf@siemens.com
?
RQ2: multi measures prediction?
2. Input3. Predict
Bayesian Classifier
1. Train withall measures
18
SIEMENS AG timowolf@siemens.com
?
RQ2: multi measures prediction?
2. Input3. Predict
Bayesian Classifier
1. Train withall measures
18
SIEMENS AG timowolf@siemens.com
Prediction Results
19
SIEMENS AG timowolf@siemens.com
Prediction ResultsERROR Team Builds Project Builds
B C F P W nightly weekly beta
Recall 55% 75% 62% 66% 74% 89% 100% 92%
Precision 52% 50% 75% 76% 66% 73% 92% 92%
19
SIEMENS AG timowolf@siemens.com
Prediction ResultsERROR Team Builds Project Builds
B C F P W nightly weekly beta
Recall 55% 75% 62% 66% 74% 89% 100% 92%
Precision 52% 50% 75% 76% 66% 73% 92% 92%
19
SIEMENS AG timowolf@siemens.com
Prediction Results
• Recall:
• 62 of 100 failed builds are classified correctly
ERROR Team Builds Project Builds
B C F P W nightly weekly beta
Recall 55% 75% 62% 66% 74% 89% 100% 92%
Precision 52% 50% 75% 76% 66% 73% 92% 92%
19
SIEMENS AG timowolf@siemens.com
Prediction Results
• Recall:
• 62 of 100 failed builds are classified correctly
• Precision:
• 75 of 100 failure predictions are actual failures
• 75% confidence that a prediction is correct
ERROR Team Builds Project Builds
B C F P W nightly weekly beta
Recall 55% 75% 62% 66% 74% 89% 100% 92%
Precision 52% 50% 75% 76% 66% 73% 92% 92%
19
SIEMENS AG timowolf@siemens.com
Summary
• Quantitative empirical evidence:Communication structures make a difference!
20
SIEMENS AG timowolf@siemens.com
Summary
• Quantitative empirical evidence:Communication structures make a difference!
• Communication structures:
• impact integration build results
• are key for successful collaboration
20
SIEMENS AG timowolf@siemens.com
Summary
• Quantitative empirical evidence:Communication structures make a difference!
• Communication structures:
• impact integration build results
• are key for successful collaboration
• Single measures do not predict build results
20
SIEMENS AG timowolf@siemens.com
Summary
• Quantitative empirical evidence:Communication structures make a difference!
• Communication structures:
• impact integration build results
• are key for successful collaboration
• Single measures do not predict build results
• Combination measures do predict build results
20
SIEMENS AG timowolf@siemens.com
Practical Implications
• Communication assessment for future builds
• Notification system for build failures
• Communication structure improvement
21
SIEMENS AG timowolf@siemens.com
Future Work
• Factor analysis of combined measures
• Include technical information
• Prediction effectiveness case study
22
Questions?
Timo Wolftimowolf@siemens.com
Adrian Schröterschadr@uvic.ca
Daniela Damiandanielad@cs.uvic.ca
Thanh Nguyenduythanh@uvic.ca
http://segal.uvic.ca
SIEMENS AGCorporate TechnologySoftware & Engineering
Backup Slides
SIEMENS AG timowolf@siemens.com
Descriptive Statistics I
25
SIEMENS AG timowolf@siemens.com
Descriptive Statistics II
26
top related