[wplug-internet] Proposal to set up a ticket tracking system on the server

Pat Barron pat at lectroid.com
Tue Oct 11 18:42:44 EDT 2016


On 10/11/2016 12:33 AM, Vance Kochenderfer wrote:
>
> Pat, it seems like you have a very clear idea of what you're trying to
> accomplish - I'd like to get a good handle on that.  What types of
> issues do you want to track?  Is this just for technical stuff, or are
> organizational issues included?
Ultimately, my goal is to be able to track items of work that need to be 
done and who is supposed to do it, and give other potentially interested 
parties a way to have visibility into it as progress is made.  I think 
this makes it less likely that tasks will get misplaced or tabled 
indefinitely because other things came up and the work was lost track 
of, since you have a nice (for some value of "nice", I guess...) 
dashboard you can look at at any time to see what work is open and who 
is supposed to act on it.

The items that could be trackable are really anything - technical 
issues, organizational issues, whatever we find that our needs are.

One of the nice things about Trac (I will speak from the perspective of 
Trac for the moment, because that's what I have working right now, and 
am somewhat familiar with) is that it supports the concept of multiple 
projects - each with it's own (potentially completely different) user 
base, ticket categories, ticket statuses, project areas and/or component 
identifiers, etc. - even all the way down to what Trac plugins are 
available for each project.  And once you have a Trac system set up, 
adding new projects to it is a piece of cake. For example, we could have 
one project area set up for the Technology Committee to work with 
technical issues (which is how I put together the example Trac project 
that is running right now), with the appropriate user list, categories 
of tickets that are applicable to technical issues, etc. - and an 
entirely separate project for the Board to track it's own activities, 
that has a completely separate user list, potentially different ticket 
categories that are a better fit for organizational tasks, etc.  I have 
lived in environments where there was "One Ticket System To Rule Them 
All", and absolutely *everything* was force-fit into that one single 
system, from technical "fix the server" tickets, to things like sales 
lead tracking - it can become very messy, and quite unpleasant to deal 
with (for both the people who have to use it, and the people who have to 
take care of it).

>
> Who are we anticipating to submit tickets?  Who will address them?  What
> notifications do we want the system to send?
The assumption I'm working with is that the people who will submit 
tickets will be the people generally involved in the work being done, 
and that the same population will be addressing the tickets. In other 
words, I'm not envisioning that the ticket system would have general 
access for anyone to open tickets.  What I have in mind is not like a 
"help desk" system, where anyone in the community being served can open 
tickets, which get triaged by a dispatcher of some kind and distributed 
to people who will resolve them (Trac actually does have the ability for 
anonymous users to open tickets without having an account in the system, 
and - via the account management plugin - the ability for anyone to fill 
out a form to request an account in the ticket system.  I have both of 
those functions disabled at this time).  I'm envisioning more of a 
"distributed to-do list", with perhaps some support for various sensible 
types of workflow (like ticket assignment workflow).

Notifications of ticket changes to whoever opened a ticket, whoever is 
supposed to own the ticket, and perhaps a given CC list of interested 
parties, is good.  From my perspective, it would be nice to see 
notifications to component or subject area "owners" anytime a ticket is 
opened in their area (though Trac doesn't support that, AFAIK).

Reporting (as distinct from real-time notifications) are also nice - 
like, show me a report of all open tickets, or show me a report of all 
tickets closed in the last 30 days, etc.  Though for the volume of 
tickets I'd imagine we'd be managing, probably not necessary. Most 
ticketing systems that store things in a relational database, you can do 
various kinds of ad hoc reporting "offline", by pulling data directly 
from the database.

For me, though, the primary characteristic of any system that we would 
want to use should be *simplicity*.  My own goal is a lightweight 
solution that doesn't require much (if any) supporting infrastructure, 
and doesn't require a lot of care and feeding.  I'm willing to give up 
some types of functionality (other than obvious "showstoppers") as a 
trade-off to make that part happen.  Our needs (as I envision them) are 
fairly simple, so I don't think we need, like, a full-blown CRM solution 
like Redmine, or an all-singing, all-dancing, "does every possible thing 
that anyone could ever want to do" configuration control system like 
Rational Team Concert, to satisfy those needs.  In fact, I'm kind of 
shying away from any kind of solution that would be more like, "this is 
really a configuration control system that has an issue tracking 
function, and we'd only use the issue tracking function and ignore 
everything else".  My immediate impression is that even something like 
Bugzilla is more complex than we'd really want.

In my mind, the two leading contenders at the moment are Trac and Fossil 
(even though Fossil is, in fact, a "configuration control system that 
has an issue tracking function, and we'd only use the issue tracking 
function and ignore everything else...."), in that they're both single 
executables that you just run, and they (for the most part) just work.  
Joe did some investigation of Fossil, and one of the stumbling blocks is 
it really isn't set up to do any kind of notifications, at all, unless 
you hack on it and write code yourself.

I'd love to learn of any additional candidates!

--Pat.



More information about the wplug-internet mailing list