improving bug tracking systems...jonathan sillito university of calgary improving bug tracking...

24
Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia Breu Cambridge University

Upload: others

Post on 19-Jun-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Jonathan SillitoUniversity of Calgary

ImprovingBug Tracking Systems

Thomas ZimmermannMicrosoft Research

Rahul PremrajSaarland University

Silvia BreuCambridge University

Page 2: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

CONTACT LEGAL

Bugzilla – Enter Bug wizard

Home | New | Search | Find | Reports | My Requests | My Votes | Preferences | Log out [email protected] | Terms of Use

Step 2: Where is the bug?

I am reporting a bug with:*

Pick one:

Eclipse Build ID: *

TIP: You can see the Build ID by clicking Help > About Eclipse (on the Mac: Eclipse > About Eclipse).

Step 3: Has it already been reported?

Please check the list below before entering a new bug. Your bug may have already been submitted by someone else.

Open bug activity in the last two weeks.

Step 4: Information

Summary: *

Steps to reproduce: *

TIP: If you can't reproduce the steps or correctly explain them, your bug will likely be closed as an invalidbug.

More information:

TIP: Write any information you can provide that will help identify the problem.

* denotes required field.

You're almost done!

Continue to the final step.

Actions: Home | New | Search | Find | Reports | My Requests | My Votes | Preferences | Log out [email protected]

| Terms of UseSaved Searches:My Bugs

Add the named tag to bugs Commit

1.2.3.

Bugzilla Form

Page 3: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

CONTACT LEGAL

Bugzilla – Enter Bug wizard

Home | New | Search | Find | Reports | My Requests | My Votes | Preferences | Log out [email protected] | Terms of Use

Step 2: Where is the bug?

I am reporting a bug with:*

Pick one:

Eclipse Build ID: *

TIP: You can see the Build ID by clicking Help > About Eclipse (on the Mac: Eclipse > About Eclipse).

Step 3: Has it already been reported?

Please check the list below before entering a new bug. Your bug may have already been submitted by someone else.

Open bug activity in the last two weeks.

Step 4: Information

Summary: *

Steps to reproduce: *

TIP: If you can't reproduce the steps or correctly explain them, your bug will likely be closed as an invalidbug.

More information:

TIP: Write any information you can provide that will help identify the problem.

* denotes required field.

You're almost done!

Continue to the final step.

Actions: Home | New | Search | Find | Reports | My Requests | My Votes | Preferences | Log out [email protected]

| Terms of UseSaved Searches:My Bugs

Add the named tag to bugs Commit

1.2.3.

Bugzilla Form

Choose Product

Page 4: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

CONTACT LEGAL

Bugzilla – Enter Bug wizard

Home | New | Search | Find | Reports | My Requests | My Votes | Preferences | Log out [email protected] | Terms of Use

Step 2: Where is the bug?

I am reporting a bug with:*

Pick one:

Eclipse Build ID: *

TIP: You can see the Build ID by clicking Help > About Eclipse (on the Mac: Eclipse > About Eclipse).

Step 3: Has it already been reported?

Please check the list below before entering a new bug. Your bug may have already been submitted by someone else.

Open bug activity in the last two weeks.

Step 4: Information

Summary: *

Steps to reproduce: *

TIP: If you can't reproduce the steps or correctly explain them, your bug will likely be closed as an invalidbug.

More information:

TIP: Write any information you can provide that will help identify the problem.

* denotes required field.

You're almost done!

Continue to the final step.

Actions: Home | New | Search | Find | Reports | My Requests | My Votes | Preferences | Log out [email protected]

| Terms of UseSaved Searches:My Bugs

Add the named tag to bugs Commit

1.2.3.

Bugzilla Form

More info.

Page 5: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Mozilla Bug #61287

27Novembe

r

Bug reported

Page 6: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Mozilla Bug #61287

27Novembe

r

Bug reported

29Decembe

r

Comment #16

if someone could provide a stack trace, that would be a huge help.

Page 7: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Mozilla Bug #61287

27Novembe

r

Bug reported

29Decembe

r

6March

Comment #16

if someone could provide a stack trace, that would be a huge help.

Comment #26

Fix verified.

Page 8: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Improvingbug tracking

systems

ToolCentric

ProcessCentric

InformationCentric

User Centric

Generation Next

Image by Sascha Just,VL/HCC ’08

Page 9: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Future of Bug Reporting

Page 10: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Future of Bug Reporting

My Eclipse has crashed.Alice

A User

Page 11: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Future of Bug Reporting

My Eclipse has crashed.

What did you do?

AliceA User

BobA bug tracking system

Page 12: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Future of Bug Reporting

My Eclipse has crashed.

What did you do?

I clicked on File ! New and OK

AliceA User

BobA bug tracking system

Page 13: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Future of Bug ReportingMy Eclipse has crashed.

What did you do?

I clicked on File ! New and OK

Did you choose a Java project?

Page 14: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

What did you do?

Future of Bug Reporting

I clicked on File ! New and OK

Did you choose a Java project?

Page 15: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

What did you do?

Future of Bug Reporting

I clicked on File ! New and OK

Did you choose a Java project?

No.

Page 16: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

I clicked on File ! New and OK

Future of Bug Reporting

Did you choose a Java project?

No.

Page 17: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

I clicked on File ! New and OK

Future of Bug Reporting

Did you choose a Java project?

No.

A few more messages later...

Page 18: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

A few more messages later...

No.

Did you choose a Java project?

Future of Bug Reporting

Page 19: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Thanks Alice. The bug is most likely in ProjectCreator.java. We

will fix it soon.

A few more messages later...

No.

Did you choose a Java project?

Future of Bug Reporting

Page 20: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

First steps...

9

Train a Decision Tree

X Fix location

Relevant QuestionsX

X

X

X

X

X

X

X

X

X

X

X

Page 21: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

A First Experiment

10

20 most frequentlyfixed files in ECLIPSE JDK

2,875 related bug reports

Page 22: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Questions as Inputs

• How severe is the bug? (bug_severity)

• On which OS does it occur? (op_sys)

• Which is the affected component? (component_id)

• Which version of Eclipse is affected? (version)

• What is your name? (reporter)

11

Page 23: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Decision Tree

component_id=Debugcomponent_id=Core,UI

component_id=Text

JavaEditor.java (0.98)version=1.0, 2.0, 2.1.1 version=2.0.1, 2.0.2, 3.0

ASTConverter.java (0.31)

Reporter = R1

FormatterRegressionTests.java (0.20)

Reporter = R2

ASTConverter.java (0.16)

Reporter = R3

JavaProject.java (0.16)

Root

Page 24: Improving Bug Tracking Systems...Jonathan Sillito University of Calgary Improving Bug Tracking Systems Thomas Zimmermann Microsoft Research Rahul Premraj Saarland University Silvia

Next Steps

• Build catalog of important questions (information) from a large sample of bug reports.

• Build a prediction model using the data.

• Evaluate model on a different set of bug reports.

13