Studying the impact of dependency network measures on software quality
1. Studying
the
impact
of
dependency
network
measures
on
soIware
quality
Thanh
H.
D.
Nguyen,
Bram
Adams,
Ahmed
E.
Hassan
SAIL,
School
of
Compu?ng,
Queen’s
University,
Kingston,
Canada
3. Bug
predic?on
models
Bug
Predic5on
Model
High
Recall
-‐>
We
won’t
miss
a
possible
bug
High
Precision
-‐>
We
won’t
waste
effort
3
4. SoIware
is
more
than
just
size
and
complexity
Node" A
D
C
Local
Neighborhood" B
F
Global
Neighborhood" E
G
4
5. SoIware
is
more
than
just
size
and
complexity
Traditional Metrics
Node"
(MET)"
Local
Neighborhood" Social Network
Measures!
Global (SNA)"
Neighborhood"
5
6. Bug
Predic5on
Model
Would
SNA
improve
performance?
6
16. Which
metrics
provide
the
improvement?
Node" 12
Metrics
Local
11
Metrics
Neighborhood"
Global
Neighborhood" 12
Metrics
Use
hierarchical
modeling
to
find
important
group
[Caltado
et
al.
TSE10]
16
17. Which
metrics
provide
the
improvement?
Node" 12
Metrics
7%
Local
11
Metrics
+2.7%
Neighborhood"
Global
Neighborhood" 12
Metrics
+0.3%
17
18. Which
metrics
provide
the
improvement?
Node" 12
Metrics
7%
Local
11
Metrics
+2.7%
Neighborhood"
Global
Neighborhood" 12
Metrics
+0.3%
Local
neighbours
have
most
of
the
important
improvement
18
28. Comparing
Performance
Using
Effort
Aware
Curves
100
80
File
A
B
C
% bugs caught
#bug
0
1
2
60
LOC
48
8
44
40
ROI
0
0.125
0.045
20
Risk
0.78
0.56
0.34
0
0 20 40 60 80 100
% lines of code reviewed
28
29. Comparing
Performance
Using
Effort
Aware
Curves
100
80
File
A
B
C
% bugs caught
#bug
0
1
2
60
LOC
48
8
44
40 A
ROI
0
0.125
0.045
20
Risk
0.78
0.56
0.34
0
0 20 40 60 80 100
% lines of code reviewed
29
30. Comparing
Performance
Using
Effort
Aware
Curves
100
80
File
A
B
C
% bugs caught
#bug
0
1
2
60
LOC
48
8
44
40
ROI
0
0.125
0.045
20
B
Risk
0.78
0.56
0.34
0
0 20 40 60 80 100
% lines of code reviewed
30
31. Comparing
Performance
Using
Effort
Aware
Curves
100
80
File
A
B
C
% bugs caught
#bug
0
1
2
60
LOC
48
8
44
40 C
ROI
0
0.125
0.045
20
Risk
0.78
0.56
0.34
0
0 20 40 60 80 100
% lines of code reviewed
31
32. Is
this
a
good
predic?on?
100
80
File
A
B
C
% bugs caught
#bug
0
1
2
60
LOC
48
8
44
40
ROI
0
0.125
0.045
20
Risk
0.78
0.56
0.34
0
0 20 40 60 80 100
% lines of code reviewed
32
33. Beeer
predic?on
means
a
higher
curve
100
Good
80
File
A
B
C
% bugs caught
#bug
0
1
2
60
LOC
48
8
44
40
ROI
0
0.125
0.045
Bad
20
Bad
0.78
0.56
0.34
Good
0.32
0.72
0.55
0
0 20 40 60 80 100
% lines of code reviewed
33
34. The
predic?on
model
helps
reduce
tes?ng
effort
100
Random
File
80
% bugs caught
60
File
40
Package
20
0
0 20 40 60 80 100
% lines of code reviewed 34