categorizing bugs with social networks

12
Categorizing Bugs with Social Networks: a case study of four open source software communities Presented by A. Ibrahim ECE 654 – Spring 2013

Upload: ahmed-ibrahim

Post on 24-Jun-2015

153 views

Category:

Education


2 download

DESCRIPTION

This is a course participation during the Spring 2013 at the ECE654. Marcelo Serrano Zanetti, Ingo Scholtes, Claudio Juan Tessone, Frank Schweitzer: Categorizing bugs with social networks: a case study on four open source software communities. ICSE 2013: 1032-1041

TRANSCRIPT

Page 1: Categorizing Bugs with Social Networks

Categorizing Bugs with Social Networks: a case study of four open source software communities

Presented by A. Ibrahim

ECE 654 – Spring 2013

Page 2: Categorizing Bugs with Social Networks

Bug Reports Categorization (Problem)

• Open source systems such as Firefox receive incredibly large number of bug reports every month through there bug tracking system.

• Mozilla Firefox

• Community has processed 64,000 bug reports (until current release)

• 50,000 (~ 79 %) of those were faulty

• An automatic categorization will be appreciated

• Automated prioritization of valid reports

• Can decrease response and fix time

• Can increase productivity

Source: Mozilla Quest Magazine (mozillaquest.com)

Page 3: Categorizing Bugs with Social Networks

Classification of Bugs with Social Network Analysis (solution)

• Social organization of bug reportersprovides a novel dimension forcategorizing bug report.

• In particular, using topological

measures to qualify the position of

bug reporters in a collaborative

development network can predict the

status of bug report (valid or faulty).

Social Organization of Bug Reporters

[Zanetti et al. 2013]

Page 4: Categorizing Bugs with Social Networks

Valid Faulty

Classification of Bugs with Social Network Analysis (cont.)

timet+30t

The position of a bug reporter in the monthly collaboration network is indicative for the eventual outcome of the

bug handling process

Bug reports

Predictive

Model

Bugzilla is general

purpose bug

tracker and testing

tool originally

developed and used

by the Mozilla

project

Time Frame

(30 days)

Page 5: Categorizing Bugs with Social Networks

Network Construction

• When a new user join a community of OSS, he can add his name to CC of Assign list.

• CC is a list of users that subscribing into the community to receive information about future updates on bug reports.

• Assign is a list of users assigning the task of handling a bug to another user.

Social Organization of Bug Reporters

[Zanetti et al. 2013]

• For the construction of social networks, the authors focus on capturing the pairwise

interactions between two types of users (community manages and developers) in the

communities of the selected open source systems.

Page 6: Categorizing Bugs with Social Networks

Methodology Verification

time

tt-30

Time Frame

(30 days)

t+30

����Eigenvector Centrality

�1: �� < ��

�2: �� > ��

(Valid Report)

(Faulty Report)

H3: The position of a bug

reporter in the monthly

collaboration network

preceding the time of the

report is indicative for the

eventual outcome of the

bug handling process.

Bug Report Submission

Page 7: Categorizing Bugs with Social Networks

Building a Predictive Model (Classifier)

Page 8: Categorizing Bugs with Social Networks

Simple Classifiers

LCC (the network’s largest connected components) is

the size of the largest group of nodes in a network that

are all reachable from each other.

Page 9: Categorizing Bugs with Social Networks

Support Vector Machine

• Topological measures used for the prediction of bug reports quality:

• centrality

• eigenvector

• closeness

• Betweenness

• k-coreness

• Degree

• Total, In-degree, out-degree

• Clustering coefficient

Page 10: Categorizing Bugs with Social Networks

Data retrieval (4 open source programs)

• Authors used a data set of more than 700,000 bug reports obtained from Bugzilla installations of four OSS (Firefox, Thunderbird, Eclipse and NetBeans) communities for a period of 10 years (Jan 1999 to Jun 2012).

• This data set contains the full history of change events (5.8 million).

112,968

35,388

356,415

210,921

64,088

21,644

158,957

42,851

FIREFOX THUNDERBIRD ECLIPSE NETBEANS

# o

f B

ug

Re

po

rts

Open Software Systems Selected for Study

Total bug reports Resolved bugs

Page 11: Categorizing Bugs with Social Networks

Results

• Social networks can be used to automatically categorize bug reports.

• Precision and recall higher than for competing methods (except?).

44.1

62.1

76.3

71.9

60.4 68.6 76.3

76.782.5 90.3

88.7

78.9

FIREFOX THUNDERBIRD ECLIPSE NETBEANS

PRECISION

LCC EVCENT SVM

50.9

44.5

62.6

62.4

30.5

5.4

62.6

38.844.5

38.9

91

87

F IREFOX THUNDERBIRD ECL IPSE NETBEANS

RECALL

LCC EVCENT SVM

Page 12: Categorizing Bugs with Social Networks

Questions?