[haiku-development] Re: Altering Trac's ticket workflow

  • From: Ingo Weinhold <ingo_weinhold@xxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Wed, 25 Nov 2009 17:27:44 +0100

On 2009-11-25 at 15:38:14 [+0100], Niels Reedijk <niels.reedijk@xxxxxxxxx> 
wrote:
> Hi,
> 
> 2009/11/25 Siarzhuk Zharski <zharik@xxxxxx>:
> > 1) "Nobody" user must be deleted. The bug ticket is a "hot potato" - it
> > should be either resolved in any way or "thrown" to someone else.
> 
> Okay, first let me talk a little bit about the technical aspects of
> how Trac (and thus dev.haiku-os.org) internally operate with regard to
> the ticket workflow. The Ticket workflow itself is very flexible: it
> can be extended through the configuration file. Please see
> http://trac.edgewall.org/wiki/TracWorkflow to get an overview of how
> it theoretically works.
> 
> Now as for the practicality. We are currently using the structure
> imported from Trac 0.10. That means tickets have four states: new,
> assigned, closed and reopened. One of the things is that we currently
> have the 'nobody' user. I agree that this is a bad policy as many of
> the tickets seem to be floating without any responsibility.
> 
> Now what I want to suggest is to migrate to the Trac 0.11 workflow.
> Here a new status is added: the accepted status.This will enable us to
> implement something like the 'first line support employee'.
> 
> Here's how the workflow would be:
> - A ticket is created, it has the status new. Either the component is
> assigned to a developer (useful for very specific components) or to a
> 'support employee'.
> - The support employee/developer try to categorize the ticket. If the
> developer thinks it is his, he 'accepts' the ticket and it gets the
> status acccepted. If the support employee/developer want to
> (re)categorize the ticket, they do so and it gets the status assigned
> (meaning it is assigned to a developer).
> - The assignee either accepts the ticket (status: accepted) or assigns
> it to another component/developer (or perhaps even back to the
> 'support employee').
> 
> This will give us a clear distinction between tickets that are
> actually accepted an those that are merely assigned but that await
> further input.

That's not fundamentally different from the current workflow: "support 
employee" is "nobody". The "accepted" state is currently implicit -- if the 
owner doesn't feel responsible, she can re-assign the ticket back. The only 
real difference I see is that all tickets would initially be owned by 
"nobody", while they now could have a real owner.

I don't quite see the advantage of the changed workflow. The initial 
"nobody" assignment and the need to accept a ticket just add one or two 
more steps without much benefit.

> Now the first line support person could take some workload of the devs
> and take over the General categories (and the categories with no
> maintainer) and try to triage some of the reports that are coming in.
> I guess I could (for example) volunteer for this, as I know the
> project closely, and I have some knowledge of how things work (in
> general).

You (or anyone really) could already do that. Just track the "nobody" 
tickets.

CU, Ingo

Other related posts: