This page shortly explains how Teamtrac is used in a company that uses open source tools to support the software development process.
IntroductionAt this company, the software development process is primarily milestone-driven. Every three months, a new milestone is planned. This rather short period between two milestones has been introduced because a longer time interval would impose problems on some of the customer projects which need a flexible software delivery (e.g., two releases a year would mean that a customer would have to wait up to 6 months before the software is delivered).
As a matter of fact, in some projects even the 3-month cycle is not flexible enough. Hence, the company has to deal with the problem that some tasks are milestone-related (hence not of high urgency) and other project-driven (i.e., they have to be delivered on time). Having a few hundred tasks at hand, the (balanced) distribution of these tasks to all developers may not be always that easy.
The company has also not only a single place where software development is done but is distributed over several countries in Europe - it has development centers in Germany, Austria, Switzerland and Slovakia.
SetupOne principle was to use open source tools to support the software development tools. Various such tools have been evaluated and a few have been picked at the end:
-
Tutos for time recording
-
Subversion as the code repository software
-
Trac for issue tracking and milestones (which provides an excellent integration with Subversion)
Every three months, a milestone is released. This is done by using two months for design and development and one month for testing. Trac is used to organize and provide all developers with a constant supply of tasks.
How Teamtrac is usedFor starters, in each Tutos time recording, the ID of the ticket that the developer is currently working on is referenced (by mentioning the ticket ID somewhere in the description field). Thus, we have now a link between a ticket and the amount of time a person has spent on the ticket.
The next step is to assign an estimated effort (in terms of working hours) with every ticket in Trac. Other issue tracking systems may support this feature but at the time of writing, this information has to be put into some other property fields of a ticket (e.g., in the Keywords-field). Furthermore, if a ticket is related to a project, the project ID has also to be referenced in one of the property fields of a ticket.
With this information at hand, Teamtrac can show a lot of information. For example, it can show for each project how many tickets already have been closed (thus showing the completion ratio). Furthermore, it can tell the user whether the estimated efforts have been correct or whether there was too much difference between the estimations and the actual amount of time spent. By knowing the estimated efforts and the time worked so far, Teamtrac can show the estimates of how much time it will take until all tickets for a project are finished. Teamtrac is further used to show the workload of each of the developers. This can be useful if one developers has too much work to do while another one is idle.
There are a lot more evaluation and reports available in Teamtrac. A list of some of them can be seen in the
Screenshots section.