Part VII. Issue Management Tools

And Eeyore whispered back: “I’m not saying there won’t be an Accident now, mind you. They’re funny things, Accidents. You never have them till you’re having them.”

“Tiggers Don’t Climb Trees,” The House at Pooh Corner, A. A. Milne

Despite all our best wishes and ardent efforts, bugs remain an inevitable part of the development process. Keeping track of defects, change requests, and tasks in general is a crucial best practice for any development project. All need to be tracked, prioritized, assigned, reviewed, and so on. A good tool facilitates interaction between project managers, testers, developers, and other team members, improves visibility on the current state of the project, and makes the development, testing, and debugging processes go more smoothly.

A good defect tracking system should also integrate smoothly with the version control system and make your life a little easier when it comes to organizing releases. For example, you should be able to indicate which issues were fixed when you commit changes to the version control system, and use this information to generate release notes listing the issues fixed in a particular release. When you commit code changes to your version control system, you should be able to refer to issues in your issue tracking system, and the issues should be updated accordingly. All of these little things make team communication just that much more efficient.

There are literally hundreds of bug tracking applications out there. There are a plenty of source solutions, of varying quality, as well as a wide range of commercial tools. It would be impossible even to list them all, let alone do them justice. Although we will not be discussing it in detail, JIRA—from Atlassian—is one commercial tool that deserves special mention, because it is both full-featured and highly usable.

In this part, we will limit ourselves to two open source products. Bugzilla is a well-known, robust, and feature-rich issue tracking system, well suited to large development teams and extended user communities. Trac, at the other end of the scale, is a lightweight issue-tracking tool that also offers some good project management and team communication features, as well as seamless integration with Subversion. Trac imposes little in the way of formal process and is well suited to small, agile teams using Subversion.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.133.127.37