Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Discussion Paper: Bugs Tracking
1. CONFIDENTIAL
Discussion Paper of :Discussion Paper of :
Bug TrackingBug Tracking
Prep.By : Deny PrasetiaPrep.By : Deny Prasetia
January 12th
2013, Rev.00.
PT. Berlian Sistem Informasi
2. CONFIDENTIAL
2 of 14
Outline:
• Introduction
• What is a Bug?
• What is a Bug Tracking?
• Consideration Regarding Bug Tracking
• Bug Tracking Tool
• Anatomy of Bug
• Lifecycle of Bug
• Benefit of Bug Tracking Tool
• Common Issues of Bug Tracking Tool
• What Should You Look For In Bug Tracking Tool
• The Most Popular of Bug Tracking Systems (BTS)
• Comment & Opinion
I will explain about ….
3. CONFIDENTIAL
3 of 14
Introduction:
What is a "Bug” (read: “Computer/ Software Bug”) ?
Wikipedia offers a good literature:
• A computer bug is any problem with a computer, whether caused by
software or hardware. (source:
http://en.wikipedia.org/wiki/Computer_bug)
• Bug (software bug) - an error, flaw, mistake, "undocumented feature",
failure, or fault in a computer program that prevents it from behaving as
intended (e.g., producing an incorrect result). (source: “A study
concerning the bug tracking applications “ – Journal – Prof. Dr.
Christian Bac – Telecom Sudparis)
A few of popular understanding:
• Bug Tracking - the process of reporting and tracking the progress of
bugs from discovery through to resolution. (source: “A study concerning
the bug tracking applications “ – Journal – Prof. Dr. Christian Bac –
Telecom Sudparis)
• Bug Tracking System - a software application that is designed to help
quality assurance and programmers keep track of reported software
bugs in their work (source: http://www.bugzilla.org/docs/)
What is a “Bug Tracking” ?
4. CONFIDENTIAL
4 of 14
Introduction:
• Lesson Learned
Base on team experiences from a real project on PMU Automotive Division during after mid year 2012,
below the following fact were found by team on the last project:
• Found limitations “to gather bugs” and “to assign resources” for fixing them, because PM had to
wait ”to make sure” the item of issue
• Found difficulties “to manage bug report” (Reproduce/ simplify/ generalize/ analyze)
• Found difficulties “to track back of bugs history”
• Bug Communication
“Bug Tracking” is not only to keep track of issue or problem to reports and
maintain feature requests (if any changes) , but also to coordinate work
among developers team, management & customers
General Consideration Regarding “Bug Tracking”
6. CONFIDENTIAL
6 of 14
Bug Tracking Tool: (Cont…)
Bug TrackingBug Tracking
New bugs and enhancements
are submitted by Testing
Team
New bugs and enhancements
are submitted by Testing
Team
Team leaders set priority to
each new issues and assign
specific programmer
Team leaders set priority to
each new issues and assign
specific programmer
Programmers fix issues that
have been assigned to them
Programmers fix issues that
have been assigned to them
System analyst releases a
new internal version with the
new features and fixed issues
System analyst releases a
new internal version with the
new features and fixed issues
The testing team checks
whether all issues that have
been marked as fixed
The testing team checks
whether all issues that have
been marked as fixed
The testing team including QA
team closes the fixed issues
The testing team including QA
team closes the fixed issues
Bug
Tracking
Tool
Bug
Tracking
Tool
11
22
33
44
55
66
Lifecycle of Bug (Best Practice)
7. CONFIDENTIAL
7 of 14
Bug Tracking Tool: (Cont…)
“If you’re going to write software of any size, you're going to have a few bugs along the way, and you’ll
need to keep track of them somehow. If you’re going to track your bugs, you may as well do it right. ” –
(source: http://www.bugtracker.com/bug-tracking-guide-best-practices)
Here are some benefit to use Bug Tracking:
•Increase visibility of development process
•Traceability of bugs and their resolutions
•Release planning
•Resource scheduling
•Prioritization
•Improved control of a project
•Information consolidation
•Improve the quality of your software by increasing productivity
•Raise customer satisfaction
Benefit of Bug Tracking Tool
8. CONFIDENTIAL
8 of 14
Bug Tracking Tool: (Cont…)
• Designing workflow or framework
An workflow is a diagram that describes the states of the bug or defect from it is created to it is closed.
The first issue deals with the question: How workflow to design with standard framework?
Common Issues of Bug Tracking Tool
StartStart
OpenOpen In ProgressIn Progress
ReopenedReopenedFixedFixed
Create issue
Issue fixed
Reopen issue
Issue fixed
Start progress
Start progress
Reopen issue
Verified issue
EndEnd
9. CONFIDENTIAL
9 of 14
Bug Tracking Tool: (Cont…)
• Meaning Fields
The second issue deals with the following questions:
• Which component does this bug fit in ?
• What does a "critical" priority mean ?
• etc. (undefined)
Also, there must be provided descriptions of each component, and a default owner for each component
• One Bug Many Releases
A very important characteristic of a bug tracking is the methods used
in order to track the same bug in different releases
Common Issues of Bug Tracking Tool
Release 1.0
Release 2.0
Release 2.1
Bug Found Bug Fixed
10. CONFIDENTIAL
10 of 14
Bug Tracking Tool: (Cont…)
• Trusting History
Many interesting pieces of project information are time-based. For example:
• The minimum time necessary to find a bug
• The time necessary to fix a bug
• The estimative number of bugs delivered with a specific release
Common Issues of Bug Tracking Tool
11. CONFIDENTIAL
11 of 14
Bug Tracking Tool: (Cont…)
• Choosing Bug Tracking Tool
• E-mail notifications
• File attachments
• History Trail
• Full Customization
• Powerful Reports
• Submitting issues
• Internet Based
• Integrated with other resources
• Multiple platform needs?
• Cost (tool cost / license ..)?
• Using Bug Tracking Tool
• What happen
• What the tester thinks should happen instead
• Steps to reproduces the problem
• How to improve Bug Communication
• How to ensure accountability
• How to automation & precise reports
What should you look for in bug tracking tool?
12. CONFIDENTIAL
12 of 14
Bug Tracking Tool: (Cont…)
• Open source software
• Bugzilla
• Ozibug
• Flyspray
• BugTracker.Net
• BugNet
• WebIssues
• Trac
• BugGenie
• Eventum
• Mantis
• GNATS
• Redmine
• Scarab
• PhpBugTracker
• Project Open
• Etc.
The Most Popular of Bug Tracking Systems (BTS)
• Commercial Software
• Inflectra
• FogBugz
• BugTracker
• BugTrack
• Zoho BugTracker
• Etc.
13. CONFIDENTIAL
13 of 14
Comment & Opinion:
“The most important info that
reporter can provide is a way to
reliably reproduce the issue”
“The most important info that
reporter can provide is a way to
reliably reproduce the issue”
“The most annoying problem is
too brief bug description”
“The most annoying problem is
too brief bug description”
“Incomplete information is the
biggest problem …”
“Incomplete information is the
biggest problem …”
“Using Bug Report template for
bug Description would be
helpful, I think”
“Using Bug Report template for
bug Description would be
helpful, I think”
Bug tracking is a fundamental part of the Software Engineering
lifecycle process. Effective use of a bug tracking system will lead to a
more structured approach throughout the development lifecycle,
resulting in a higher quality product while also reducing development
and support costs.
Bug Tracking