This feature came form the work we have done with TikiWiki since 2003 (see my presentation at WikiSym), where we need a way to easily see who was doing what, when and for whom.
We have started using Trackers for this, but it was hard to view the information. So we have developed a plugin that allowed us to see the tracker's information on a Gantt chart.
The idea
The basic idea was to have a simple way to view the information available in one or more trackers that a group of geographically spread software developers could enter.
The picture below shows the result of invoking the plugin on the month of June.
There are three kinds of tasks:
- Holidays: the last task shown, on a dark yellow color;
- Support: the one week red tasks, starting on fridays;
- Others: one in grey, onde in green and the rest in purple
National holidays (10th of June) and weekends are marked in pale yellow.
The data
We have used three distinct trackers to hold different types of information:
- Tasks: the main tracker, with tasks that everyone can enter and update;
- Support: teams have one person from friday to friday, on support;
- Holidays: where people register when they're absent;
Tasks
The tasks tracker holds the following information:
- Status: a default field, used to indicate the status of the task; can be one of Open, Pending or Closed;
- Projecto: the project to which the task belongs to;it's mandatory;
- Tipo: type of task;it's mandatory;
- Tarefa: task's description;it's mandatory;
- Prior.:;it's mandatory;
- Responsável:;it's mandatory;
- Dias Estimados (original):
- Data Atribuição: ;it's mandatory;
- Data Estimada InÃcio:;it's mandatory;
- Data Estimada Fim:;it's mandatory;
- Dias Gastos :
- Data Fim:
- Quem Atribui: ;it's mandatory;
- Participantes: up to four
- Observações:
Support
Holidays
The code
Attached there are two files:
- taskgantt_config.php: some configuration stuff, like holydays, project colors, etc.;
- wikiplugin_taskgantt.php: the code itself;
What's next?
Well...
Next, I'd like to see the GUI improved, e.g.:
- why not use timeline to interact with the user, sliding tasks on a Gantt chart, moving them up and down, etc.?
- or why not using some jquery code for the gantt display. For instance: