Software Development Tools
Part III: Defect Tracking
Conrad Huang
May 22, 2009
Much of this presentation is taken from Scooter's PowerPoint slides
Introduction: Defect Tracking
During software development, programmers (and managers) will need to keep track of:
what features need to be implemented
how far they got in the implementation
what remains to be done: milestone and release dates
good ideas that won't be implemented yet but shouldn't be lost
After software has been deployed, users may need to:
report problems
find whether others have seen similar problems
find fixes and workarounds
ask for new features
Desirable Features of Defect Tracking Systems
Support for flexible issue definitions
Bugs, "tracking" bugs, feature requests, milestones, releases, ...
Ability to define attributes for issues such as project, category, severity, priority, ...
Good reporting tools
Generate dependency tree generation
Time-to-fix, outstanding bugs, bugs fixed since last release, etc.
Milestones and progress towards completion
Support multiple interface types
Web-based programmer/manager dashboard
Web-based bug submission and search forms
E-mail notification of updates and fixes
Discussion forums
Open Source Packages
Bugzilla
Bug tracker for Mozilla, Apache, Linux, etc.
Perl-based with MySQL backend
Very flexible but requires effort to set up and maintain
Mantis
Bug tracker for Cytoscape
PHP-based with MySQL backend
Trac
Bug tracker for Chimera
Python-based with MySQL backend
A combination of defect tracking and wiki, with interface to Subversion
Many, many others