Even non-UI experts need to understand usability

Have you ever used a bug/issue/feature tracker? Most of them are awful. But it’s not the software powering the bug tracker that stinks. It’s the way they are configured. Because so many are customizable, many project managers will add fields at the drop of a hat.

Need to track what version of the software the bug was found in? No problem, let’s add a field! Need to track which iteration it will be fixed in? Let’s add a field! Module, functional area, size, estimates, tester, developer, tech lead, reporter, requested completion date, customer? No problem, we’ll add a field for each!

And boom, you’ve just made the issue tracker unusable. Sure, people may still enter tickets, but the data will either guessed, or not entered at all. There are a few ways I see that you can do better:

  1. Just say no! This is what I recommend. Keep it simple. Don’t add many (or any) fields beyond the basics – title, description, assignee, status. Additional information can go in the description or in the comments on the issue.
  2. Use different trackers for different things. Be careful here, you don’t want to have too many buckets of issues. However, if you are tracking support requests, bugs, feature requests, and user stories all in the same tracker, you’re overloading the tracker.
  3. Take advantage of custom workflows. This can be powerful but maybe too restrictive. Some bug trackers give you the option of creating workflows in which you are able to customize what fields appear when and to who(m). If done right, a tester could report the issue and see only the fields necessary for that, a developer could analyze and come up with a fix and resolve the issue, and the tester could verify it’s fixed and close the issue.

At least that’s what I think, but it might not work for everybody. How do you handle government or corporate CYA requirements for tracking an insane amount of data? How do you track issues down the road where there is a lot of legacy data and you just want to see the items related to the project your team is working on?