10. 12
13 different antipatterns
DECOR (Moha et al.)
# of Antipatterns
# Files
Systems #Antipatterns
Eclipse 273,766
ArgoUML 15,100
11. RQ1: Do antipatterns affect the density of bugs in
files?
RQ2: Do the proposed antipattern based metrics
provide additional explanatory power over
traditional metrics?
RQ3: Can we improve traditional bug prediction
models with antipatterns information?
14
12. Density of bugs in the files with antipatterns
and the other files without antipatterns is the
same.
15
13. 16
Systems Releases(#) DA – DNA> 0 p-value<0.05
Eclipse 12 8 8
ArgoUML 9 6 6
Files with
Antipatterns
Density of Bugs
Files without
Antipatterns
Density of Bugs
14. RQ1: Do antipatterns affect the density of bugs in
files?
RQ2: Do the proposed antipattern based metrics
provide additional explanatory power over
traditional metrics?
RQ3: Can we improve traditional bug prediction
models with antipatterns information?
17
15. Average Number of Antipatterns (ANA)
Antipattern Cumulative Pairwise Differences
(ACPD)
18
Antipattern Recurrence Length(ARL)
Antipattern Complexity Metric (ACM)
18. 21
Provide additional explanatory power over
traditional metrics
ARL shows the biggest improvement
19. RQ1: Do antipatterns affect the density of bugs in
files?
RQ2: Do the proposed antipattern based metrics
provide additional explanatory power over
traditional metrics?
RQ3: Can we improve traditional bug prediction
models with antipatterns information?
22
20. Step-wise analysis
1) Removing Independent
Variables
2) Collinearity Analysis
23
Metric name Description
LOC Source lines of codes
MLOC Executable lines of codes
PAR Number of parameters
NOF Number of attributes
NOM Number of methods
NOC Number of children
VG Cyclomatic complexity
DIT Depth of inheritance tree
LCOM Lack of cohesion of methods
NOT Number of classes
WMC Number of weighted methods per class
PRE Number of pre-released bugs
Churn Number of lines of code added
modified or deleted
21. 0
2
4
6
8
Churn PRE LOC MLOC NOT NOF NOM ACM ACPD ARL
ArgoUML
24
0
2
4
6
8
10
12
Churn PRE LOC MLOC NOT NOF NOM ACM ACPD ARL
Eclipse
ARL remained statistically significant and
had a low collinearity with other metrics
#Versions#Versions