Users, use-cases, and other tools for discussing how distributed bug tracking should work.

Users

  • Amanda is a software developer, one of the main authors of a wildly successful free software package. She hacks mainly at home, with fast network access, multiple fast computers, and oodles of time to spend on the project. Being an old-timer in the computing industry, she has a tendency to prefer the command line. Indeed, she only uses X11 to display xterms (16 per screen, with 7 screens total, not counting virtual desktops).

  • Brenda is a college student majoring in theoretical physics. As a hobby, she helps maintain Debian, and is one of the team that maintains the Debian package of Amanda's software. Brenda has a very busy life, but often has fifteen or thirty minute time slots to do stuff on her laptop, e.g., between lectures, labs, on the train, and so on. Often she does not have network access during these time slots, or indeed all day.

  • Cecil is a user of Amanda's software. He has no computer expertise at all: he's a Mac user and the one time he saw a command line, he panicked and ran out of the room. He's smart, though, and is perfectly able to follow instructions and generally his bug reports are of high quality, after the developer's ask him to provide the exact data they require, and explain how to get it.

  • Dan is a Debian user. He's not really technical, but he's really happy about the reportbug tool. In fact, he uses it several times every day.

Use cases/scenarios

  • Report a new bug, either against the Debian package, or the upstream package, and have the information be shared to the other.

  • Ask for additional information related to a bug.

  • Add a comment to a bug, with more information to help the developer find and fix the cause.

  • Mark a bug as fixed, and include the fix or reference to it.

How would Amanda, Brenda, and Cecil act in these cases? What would they do, how would the distributed system act, what data needs to go where, and how is stuff communicated between instances of the distributed tracker ("branches" in dvcs)?

For now, discussion of these should go to the mailing list.