Job tracker Review Document
Submitted by john on 12 December, 2005 - 03:02.
Information Technology
The requestors details should be gleaned out of the email address.
Allows reports to be generated on a range of different queries. Key reports would be:
Level 1 Requirements:
System allows submission, responding and commenting by email as well as a web interface.
- PloneCollector Yes
You can submit issues by email and also can reply to emails from Plone collector and have the comments automatically attached to the issue. No ability to change or resolve issues by email though. See https://plone3.fnal.gov/SAMGrid/documents/trackerintro/document_view - RT Yes
Can submit via email and also reply to messages from RT and have that response added to the ticket history and also remailed out to other watchers depending on how you configure RT. There are also enhanced versions of the RT mail gateway that allow attribute changes of tickets through the use PGP to establish identity. See chapter 3 of RT essentials. - OTRS Yes
Yes see the feature list at http://otrs.org/feature/ it appears that you can do most things by email including changing tickets status using PGP to ensure identification, automatic converting of html emails to plain text for searchability, configure remails via references within the email etc. - IssueTracker Yes
Submissions are allowed via email and recently the ability for all correspondence on an issue to occur through email has been added. See http://www.issuetrackerproduct.com/Documentation/Features. A word of warnig with the inbound email implementation http://sourceforge.net/mailarchive/forum.php?thread_id=8051630&forum_id=11904 posted on the 19th of September by the author saying that the inbound email implementation is quite poor as he doesn’t really have a great need for it.
The requestors details should be gleaned out of the email address.
(Assuming this means automatic creation of user accounts based on the system receiving an email)
- PloneCollector ?
You don’t have to be registered to submit issues via email or to reply to them your email is used to identify you. See https://plone3.fnal.gov/SAMGrid/documents/gettingstarted. I am uncertain exactly how an email address is added to the system, other systems have a user account with very limited privileges that is assigned to email addresses that are received. - RT Yes
Every person that interacts with RT is assigned a corresponding user object. This object is loaded whenever the person accesses RT no matter what interface they use. There are 2 general types of users in RT staff (people who do things in RT) and non-staff (people outside the organisation). Non-staff are un-privileged by default and this is the type of account that is automatically created from email submissions. You can control rights to this group and do things like automatically having a password sent to them if you want them to be able to access RT’s self service interface. - OTRS ?
Uncertain as I couldn’t find anything in the manual that explicitly explains what happens when an email is received by the system in terms of how it is recorded. - IssueTracker ?
Uncertain again what actually happens when Issuetracker gets an email. From what I can read on this page http://www.issuetrackerproduct.com/Documentation/Features/#issuesviaemail you need to see up a POP account to receive the email and then configure Issuetracker to get email from that pop account. You can define how every inbound email is dealt with so not sure if that is sufficient functionality to allow you to automatically create a user account, I would guess though that you would be able to write a script to extract the information from the incoming emails. By default IssueTracker allows anonymous users access to almost everything, the only thing they can’t do is change issues.
The ability to have multiple areas at once. For example, we should be able to have separate ticket management sections for Database, Internet and email, all of which can be looked at by management in one area.
- PloneCollector ?
You have to have a separate PloneCollector instance for each incoming mail address http://opensource.zopyx.biz/OpenSource/PloneCollectorNG/HelpCenter/howto/issue_submission. I am not sure if that would mean that we would need a separate PloneCollector instance for each separate ticket management section. I imagine that it would work well with our groups as it is a Plone product up but not sure how the email queues would fit in, maybe they mean that you just need a separate PloneCollector item created for each queue. - RT Yes
Queues are an intergral and advanced part of RT and you can customise access to them and the mailgate interface has options to process incoming emails into specific queues. You can can control user access to queues. - OTRS Yes
Queues are an intergral and advanced part of OTRS. You can have a raw queue which all incoming mail is received in and then it is manually processed into to other queues or you can have email addresses directed to specific queues. You can also have sub queues. - IssueTracker Yes
You can create separate sections eg email, database, web through the Zope Management Interface http://localhost:9673/Control_Panel/Products/IssueTrackerProduct/MailHost/manage_editIssueTrackerPropertiesForm . I don’t quite know how this relates to incoming email addresses though and whether you can process them into specific sections.
The ability to see what is outstanding, who is working on what, the amount of time spent on each area.
- PloneCollector Yes
Looking at the doc/REPORTS_API.txt file it looks like you could just right reports which are simple python sripts to generate this. There are only 2 reports that come by default and that is show unassigned and show assigned grouped by user. As far as showing the amount of time spent on an each area you should be able to do this. If you click on “Configuration” in collector actions and then click on “Schema Editor” you can create custom fields. I simply created a time_worked field and then every issue that is created has that field which can be filled in. You would then have to use that field in the python script that you are using to generate the report. All this is not built in so we would need to develop it ourself. The scripts look pretty simply though. Also I see when I look in the “Simple view” for an issue that there is an “Hours estimated” and “Hours needed” in the “Progress” window and if you click on the pencil icon you can change this. You could use this to store an overall time for an issue but doesn’t offer you to track time on individual repsonses to the issue. - RT Yes
There is an estimated, worked and left by default. You can construct the query using the query builder interface and then simply save that as a saved search. When you comment on an issue or reply to it you can fill in the time worked field. This will then automatically be added to the time worked for the issue so when you look at the issue you will see the total time spent on it. The query builer lets you construct queries that would display the outstanding for each person, all issues each person is working on and just about everthing else. I don’t think it lets you see a summary of time worked for each person but there is the statistics module which has a plugin for timeworked per person (http://wiki.bestpractical.com/index.cgi?RT3StatisticsPackageTimeWorked) and also scipts on the wiki eg http://wiki.bestpractical.com/index.cgi?RT3BatchStats that people have written which generate these reports. - OTRS Yes
It has a time worked field by default for issues and comments to that issue also have a time worked so I am guessing that it also cumulative for the issue. I couldn’t find anything in the Manual or on the list or even in google. OTRS does have reporting functionality with some reports there out of the box and assume that you could generate reports using external reports. I don’t know though whether it is possible to determine time worked on a per person basis rather than a per ticket basis but imagine you could if time is recorded against a specific comment to an issue rather than just been recorded in one field for the issue. - IssueTracker ?
Uncertain as there is no time worked by default for an issue. I would assume that you could customise the fields and then write scripts to generate a report from that custom field but I couldn’t find any documentation for this or anything in the mailing list or source code.
Capable of being used in conjunction with the TWS directory services (Genesis) for log in, authentication and authorisation.
- PloneCollector Yes
It is a plone product so uses Plones workflow, groups users etc. Would integrate well with genesis once we fix the problem that prevents us from actually adding and issue. At the moment when you try and add an issue you get a “Insufficient privileges errror” even if you are logged in as the admin user. It appears to be something to do with the genesis install as it worked fine on my clean debian unstable install of plone. - RT Yes
There are number of ways for RT to authenticate against an LDAP directory. The one that is recommended as the easiest is to just use apaches mod_ldap to authenticate and then RT just simply accepts the authentication of apache. There is also the Perl Net::LDAP module. An example of using this with a scrip is given in Chp 6 of RT Essentials. In this example they outline how you could look up in an LDAP directory the department someone belongs to based on their email address and then add as a custom field for all tickets. There is also the LdapOverlay module http://wiki.bestpractical.com/index.cgi?LdapOverlay which also authentication from LDAP without basic auth so you can use it for things like defining an LDAP attribute as the field to authenticate against. The example they give on the wiki appears to closely match what we want to do ”... the users can then track on the intranet (for instance) the state of all their requests to support/help-desk. There is also a powerful CLI interface for RT and API for the server that this interface makes use of is well documented so you are able to right applications to interface with RT in whatever language you chose. - OTRS Yes
In the feature list for OTRS they state that the customer source can come from an LDAP directory or SQL database. The also state that both the Agent and customer authentication can be done against LDAP, Radius and other external auth systems. OTRS also has an API that makes it easy to develop external addons and external frontends. - IssueTracker ?
Unknown as I couldn’t find anything at all on the website or in the mailing list that discussed LDAP. As this is a Zope Product though I imagine you would be able to use whatever module that Zope has for connecting to an LDAP directory. You might not even have to worry about LDAP though as it may be possible to authenticate against the users directly as they are in the Zope database after all, but this is just conjecture on my part.
Ability to assign and re-assign tasks to different people.
- PloneCollector Yes
Once you get the permissions sorted out it appears relatively easy to assign and reassign users on an issue. - RT Yes
You can steal tickets of other users and you also assign tickets to one another. You can also transfer tickets from one queue to another queue and even have the resolving of a ticket result in the automatic creation of a ticket in another queue. This feature is handy for creating a simple workflow, eg a review proces see Section 6.3.5 in RT Essentials. RT comes with the workflow for an Approvals system built in but the approvals queue doesn’t appear in the normal list of queues. See the bottom of Section 6.3.5. - OTRS Yes
You can move the ticket to a persons individual queue and you can change the ownership of the ticket. - IssueTracker ?
You can assign a ticket to someone but I couldn’t see exactly how you change that assignment if you edited the ticket or posted a follow up. There is an option to take a ticket so I am guessing you can change the assignment but wasn’t easy to see how and I couldn’t see any documentation for it on the web site.
Allows reports to be generated on a range of different queries. Key reports would be:
- Provides the ability for monthly reports to be generated that detail the time demands placed on helpdesk broken down by office and campaign group.
- A report of hours worked per person broken per issue
- PloneCollector Yes
I am saying that we could generate this by writing a report script to get whatever information we want out of the databse. So provided that we had fields that allowed the recording of this information we could get it out. As far as generating quality reports I am not sure what graphing options there are within python or plone and I am not sure just how well tools like Agata or Crystal Reports can interact with the Zope DB. - RT Yes
There is a statistics module and as the data is stored in MySQL you can use Agata or Crystal Reports or one of the other external reporting tools to generate reports. RT has a sophisticated query buider inteface which lets you construct searches that can be saved and even assigned to people so that the assignee just has to click a link to generate the report. This report can be exported to spreadsheet as a tab separated value formal, saved as bookmarkable link and is even available as an RSS feed eg http://localhost/rt/Search/Results.rdf?Query=%20id%20%3C%20’2’. - OTRS Yes
There is an internal statistics module that makes use of the Perl GD module to generate graphs as gif images (see Programming Web Graphics with Perl & GNU Software). It can also generate CSV or Print format reports. I didn’t see much in the manual about generating statistics but I am assuming that you could also use external tools look Agata or Crystal Reports to generate reports directly from the database as it is just using a SQL db like MySQL. - IssueTracker Yes
It has an inbuilt statistics and reporting option although there appear to be no options for exporting the reports in Print format, CSV etc. The graph generation within Issuetracker is quite cool and gives you some pretty reports. The same questions as PloneCollector arise as far as using external reporting tools go because they have to be able to access the Zope DB.
A complete log of the job, including when it was received, when it was opened, who worked on it and when it was completed.
- PloneCollector Yes
- RT Yes
- OTRS Yes
- IssueTracker Yes
All of the systems offer this as it is the most basic functionality of ticket/bug tracking system.
The ability to automatically respond to emails received which start a job.
- PloneCollector ?
Uncertain as incoming emails are stored in a POP3 account where they are then accessed by a script for processing. You can configure notifications based on work flow transition through the configuration option in the Collectors actions but not sure whether that means that you can have a custom email sent out to the requestee. - RT Yes
Scrips and templates in RT offer a sophisticated way of responding to incoming email and there are a range of default responses and templates that come with RT. - OTRS Yes
Autoresponders to customer can be set up for each incoming queue. - IssueTracker No
Judging by this email http://sourceforge.net/mailarchive/message.php?msg_id=13647076 the email interface for Issuetracker is very new so I don’t think they have customised autoresponders per tracker yet. There is no mention of it anywhere that I could find anyway and I couldn’t see anything in the interface that looked like it could do that.
Ability to make comments on the task without the requestee being informed.
- PloneCollector ?
Don’t know I couldn’t see anything in the permissions for a tracker outside of submit mode and view mode and there is no specific comment functionality like there is in RT. - RT Yes
RT has support for attaching comments to a ticket whether by email, the CLI or web interface that will not be seen by the requestor but are visible by others when they look at the ticket history or that can be emailed to people who are watching the ticket. - OTRS Yes
According to the feature list there is the ability to add notes with different types to an issue. - IssueTracker No
From looking at the user and group options at http://localhost:9673/Control_Panel/Products/IssueTrackerProduct/MailHost/manage_ManagementUsers it doesn’t look like you can do this. People can either view an issue or they can’t. There is nothing to indicate that responses to an issue can be set separate permissions.
System is well documented, including user, admin and developer manuals and there is effective community support at the minimum and ideally the option of commercial support is available.
- PloneCollector No
There is limited documentation. The best documentation I found was on the Fermi National Accelerator Laboratory website. The documentation is very poor, there is no manual and no documented examples of how you can use the Collector. There are only 5 howtos on the home website (http://opensource.zopyx.biz/OpenSource/PloneCollectorNG) and not all of them are complete. There some documents in the docs directory in the source which describe some specific things. There is a mailing list on sourceforge where this project is hosted along with other products in the collective project. There volume of traffic is pretty low but messages do seem to be responded to. You can get commercial support from the Author. - RT Yes
The documentation for RT is supurb and is well ahead the other three systems. There is a book that has just been released. This book provides good documentation of all the features of the product and a whole chapter is dedicated running through examples of how it can be used. The Architecture and API is also well documented. On top of the book you have a wiki thanks includes a manual released by BestPractical and is being updated via the wiki. You also have a contribs section where people share scripts they have written. You also have very active mailing list. On top of this you also have numerous websites with documentation for RT including training manuals and a range of other stuff. These include manuals from Universities like MIT and others so you can see how other people are using RT and make use of material they have produced. Finally you can purchase support from Best Practical. This inlcudes issue support the development of custom modules and integration. - OTRS Yes
There is a manual on the website and there is a reasonably active mailing list although it doesn’t come close to RT from what i can see. I think this might be because OTRS is backed by a german company and has a german language mailing list while RT is American based. There is no wiki for otrs and I couldn’t find much third party documentation. It is supported by a commercial company (see otrs.com) and is in wide use in enterprises. - IssueTracker No
While the documentation is better than PloneCollectorNG and there is a mailing list with a bit of traffic I would not say that this is well documented. The author does seem to be very responsive though and is quite active and it does seem to be one of the most popular featureful Issue trackers in the Zope world. I am not sure if commercial support is offered or not. It seems to be a project developed by someone who is using it for his hosting business.
When a job is closed an email is sent out to the requestee saying that the job has been closed and here are the details (time taken, people who worked on it et al.).
- PloneCollector ?
Emails are sent out on transitions in work flow but am sure just how easy it is to customise what data is included and what conditions you can place ie if the issue is resolved don’t just send on the response that closed it but include a summary of the Issue history as well. - RT Yes
You can use scrips and templates to achieve this and there are default templates and scrips that come with RT to do this. It would just be a matter of customising these templates and scrips to send out the data that you wanted and could be done on a per queue basis. For example there is even a Perl module on CPAN to integrate RT with Subversion. - OTRS Yes
Customers are notified when there requests are closed. You can customise the notifications based on what event triggered the notification, who the notification is being sent to eg a customer or an agent and there are a range of custom variables you can use to create the response. - IssueTracker ?
I don’t no if the functionality of the email interface is advanced enough to do this. It seems more aimed at just forwarding response onto people who are watching the issue, you might well be able to easily script it to include various variables but haven’t seen it documented.
People working on tasks do not necessarily need to log onto the Job tracking system. Rather, they can simply reply to the email and their reply will automatically be recorded within the system.
- PloneCollector Yes
You can’t resolve issues by email though but can respond. - RT Yes
By default you email usage is somewhat restricted due to the issues with authenticating via email so you are not allowed to resolve a ticket or change a ticket. However you can use and enhanced mail interface that allows PGP or SMIME to be used as an authentication mechanism and you can then modify and resolve tickets via email. - OTRS Yes
As for RT. - IssueTracker Yes
Again like PloneCollector I don’t think you can resolve issues and the email interface is limited compared to the Web interface.
The system offers a high level of security including the ability for the web interface to run over https, a small history of security problems and record of a good response with security fixes.
- PloneCollector Yes
Bit hard to tell as there is not so much community discussion. I did only see on release in the details though that was specifically for a security fix. - RT Yes
From the mailing list I could see that secuity issues have been discovered but the author is very responsive in fixing issues that do turn out to be real security holes. There also appears to be a active highly skilled community of developers who are regularly working on the code, many from Universities so I would say the code review process is quite good. - OTRS Yes
Active community support and a clearly laid out release schedule. Couldn’t see much on the mailing list for security issues. - IssueTracker Yes
Is being actively developed and used. Couldn’t see and specific releases for security issues in the change logs but security bugs are being fixed. Nothing in the mailing logs regarding security problems.
It must be possible to deal with spam while maintaining the integrity of the system ie not loosing issues.
- PloneCollector ?
No thing about this but guess you could use external filters and then process based on message headers. - RT Yes
A number of well documented ways of dealing with spam. Request tracker – yes eg http://www.soundwave.net/~wmono/rt/ - OTRS Yes
You manually move spam from queues or have it done automatically. - IssueTracker ?
http://www.issuetrackerproduct.com/News/spambayes-to-prevent-spam details how you can use Spambayes to have Spam automatically deleted and not uploaded into issuetracker. I am not sure just how much effort is made to ensure that a potentially legitimate message is not lost.
Level 2 Requirements
A system which allows the creation of submission forms that are able match the form https://intranet.wilderness.org.au/database/ or alternatively a system which can receive emails and break the content (provided in csv format) into separate fields which are then shown in the tracking system.
- PloneCollector
- RT
I believe that RT could do the 2nd option via the use of a scrip. RT comes with a number of built in actions on of which is a Create Tickets action. You can use this action to create one or more tickets based on the template associated with the scrip. This is a feature that allows you to create workflows using RT. I imagine it would be possible to use this to process the emails that come in from Chris’s database form and automatically generate tickets based on the contents of the email. By the looks of it if you can generate multiple tickets you could generate tickets with dependencies so it could be like a todo list with the items where you have a parent ticket and then children for each separate item so the workflow would just be working your way through each item. - OTRS
- IssueTracker
The ability to restrict people to viewing their own tickets.
- PloneCollector
- RT
- OTRS
- IssueTracker
The ability to restrict managers to see all tickets related to their group only (for example, the David Wanless may only be able to see the Database group). This would be especially useful if the system was to be extended beyond the IT group.
- PloneCollector
- RT Yes
David would be assigned as a CC or AdminCC to the Database queue depending on whether you want him to just be able to see and get notification of all the tickets going into that queue or you wanted to also allow him to modify them as well. - OTRS
- IssueTracker
The ability for people who have requested help to look online to see what is happening with their request.
- PloneCollector
- RT Yes
RT has a self service interface and as everyone is created as a user object in the database you can get RT to automatically email them a username and password and a URL to the Self-Service interface where they can check on the status of their ticket. The enabling of this self-service interface is optional. - OTRS
- IssueTracker
The ability to automatically respond to some emails received which start a job, but not others. For example, an automated reply to any emails sent to web@wilderness but no automated response for emails received on (say) email@wilderness
- PloneCollector
- RT Yes
Automated response are configurable by scrips and templates and these can be associated with different queues. - OTRS
- IssueTracker
Ability for the operator to open and close a ticket in one action without emailing the person asking for help.
- PloneCollector
- RT
- OTRS
- IssueTracker
Monthly reports which show user types by job role.
- PloneCollector
- RT
- OTRS
- IssueTracker
Level 3 Requirements
System should be themeable with it being easy to display the TWS logo throughout the system.
- PloneCollector
- RT
- OTRS
- IssueTracker
The ability to have default reports sent out to people automatically at set times (i.e. the end of each month) [this can be done using external applications if the back-end is suitable].
- PloneCollector
- RT
- OTRS
- IssueTracker
The ability to automatically track the time spent on a particular task. This could be done for example, through a small timer built into the app which the help desk operator clicks on.
- PloneCollector No
- RT No
RT has a time worked field so you assign time worked for each ticket and then use that to calculate time worked statistics for a individual tickets, people and anything else that tickets are associated with. There is however no automatic timer interface built into RT so you track the time spent on a ticket using either a desktop time tracking tool or simply looking at the clock. - OTRS No
- IssueTracker No
Integrates with a Revision Control System which will make it easier to track bugs in software.
- PloneCollector
- RT Yes
There is an RT-Integration-SVN package available from CPAN which lets programmers update tickets as they check source code into their version control system. - OTRS
- IssueTracker
» login to post comments
