recommendation system for code bugs

21
Predicting Bug Fixing Efforts for Open-source Software Systems Prashant Raghav, Jenny Wang CS 846

Upload: prashant-raaghav

Post on 25-May-2015

60 views

Category:

Engineering


2 download

DESCRIPTION

Recommendation System that recommends Similar Bugs and estimates efforts required. Each Defect is broken into set of Keywords and applying ML algorithms to calculate a similarity coefficient.

TRANSCRIPT

Page 1: Recommendation system for code bugs

Predicting Bug Fixing Efforts for Open-source Software SystemsPrashant Raghav, Jenny WangCS 846

Page 2: Recommendation system for code bugs

OUTLINE

1.Problem and Our Solution2.Initial Setup 3.COS4.Effort Estimation 5.References

Page 3: Recommendation system for code bugs

Traditional Approach

LOC/Avg LOC ph by a developer = Total number of developer hours● Doesn’t account for

○ Project complexity○ Developer Proficiency

Page 4: Recommendation system for code bugs

Our Tool ...

Tell me who the bug is Assigned to I will tell you How much time it gonna take ?

Page 5: Recommendation system for code bugs
Page 6: Recommendation system for code bugs

1.Selecting Dataset

Choices : BugZilla, JBoss project, Linux

Apache Hadoop Common Issue Tracking System.

Page 7: Recommendation system for code bugs

Issues 30 Day Summary

Hadoop Common is the common library for Apache Hadoop

Issues 30 Day Summary.Issues: 114 created 66 resolved

Page 8: Recommendation system for code bugs

2.Data Extraction

Download Data Extract Developers Bug Fix Activity

ID, Title, Description, Status, Detail, Developer

Page 9: Recommendation system for code bugs

3. Database

Store each Defect in DB with defect information.

Page 10: Recommendation system for code bugs

3.New Defect

Compare with Previous Defects.

● Duplicate Defect● New Feature

Page 11: Recommendation system for code bugs

Bug : Incomplete Closing of FirefoxHadoop : Bug-12435Unable to run Hadoop (2.2.0) commands on Cygwin (2.831) on Windows XP 3

Bug-239223 (Ghostproc) – Hadoop version 2.2.0 command while running on Windows XP3 using Cygwin(2.831)

Page 12: Recommendation system for code bugs

Bug : Incomplete Closing of FirefoxHadoop : Bug-12435Unable to execute Hadoop (2.2.0) commands on Cygwin (2.831) running on Windows XP SP3

Bug-239223 (Ghostproc) – Hadoop version 2.2.0 command could not run on Windows XP (service pack 3) using Cygwin(2.831)

Page 13: Recommendation system for code bugs

More Bugs

Bug-244372: "Document contains no data" message on continuation page of NY Times article

Bug-219232: random "The Documentcontains no data." Alerts

Page 14: Recommendation system for code bugs

4.Coefficient of Similarity

CoS : Depends on various factors.a) Are the code files similar?b) Input Files Similar ?c) Fraction of common keywords ?d) Which component ?

Page 15: Recommendation system for code bugs

5.COS

More the similarity Higher the CoS. Exact Duplicate Defect CoS =1 CoS = w1*TS + w2*FS + w3*CS + w4*IFS* TS : Bug Report Similarity FS : Source Files Similarity SC : Component Similarity IS : Input Files Similarity where Wi are weight to be determined by experiments.

Page 16: Recommendation system for code bugs

6. Programmer Proficiency

4 Buckets : ● Beginner ● Intermediate● Seasoned● Expert

Page 17: Recommendation system for code bugs

7.Bracket Determination

Bracket Adjustment Factor(BAF)

● Commits to Software(Features)● 6 months time Frame.

○ No of Defects Solved○ No of Defects Reopened

Page 18: Recommendation system for code bugs

8.Priority of Bug

Priority Adjustment Factor● High● Medium● Low

Page 19: Recommendation system for code bugs

9.Comparing CoS for all defects

Each New Defect Compared against all defects defined in the database. Those with Highest CoS are extracted .

Page 20: Recommendation system for code bugs

10. Effort Estimate

COS > threshold

ES -> ∑ CoSi * DTi / nWhere n - > No Of Similar Defects DTi : Developer Time

Programmer ProficiencyPriority of Defect

If CoS = 1 : Duplicate Defect Discard

Page 21: Recommendation system for code bugs

References

● https://issues.apache.org● http://menzies.us/pdf/11ase.pdf● Local vs. Global Models for Effort Estimation and Defect

Prediction , Tim Menzis , Andrian Marcus● Towards Improving Bug Tracking Systems with Game

Mechanisms ,Leonardo Pasos ,University of Waterloo