Changes between Version 2 and Version 3 of ProjectManagementIdeas
- Apr 16, 2009, 6:45:15 PM (8 years ago)
v2 v3 9 9 Trac has three Gantt chart plugins: 10 10 11 * [wiki:FlashGanttPlugin FlashGantt] 12 * [wiki:GanttChartPlugin GanttChart] 13 * [http://willbarton.com/code/tracgantt/ TracGantt]. 11 [wiki:FlashGanttPlugin FlashGantt]:: seems complex and stale. 14 12 15 !FlashGantt seems complex and stale. 13 . 16 14 17 !GanttChart is a very simple Gantt chart implemented in a formatted text region. It is manually edited, not data-driven. 18 19 !TracGantt has potential but has some funky fields (e.g., Due to Assign) that don't seem to be appropriate to what we want to do with a Gantt chart. 15 [http://willbarton.com/code/tracgantt/ TracGantt]:: has potential but has some funky fields (e.g., Due to Assign) that don't seem to be appropriate to what we want to do with a Gantt chart. 20 16 21 17 There is a [http://www.viewpath.net/Website/ganttcharts/googlegadget.aspx Google Gadget Gantt chart] which might be leveraged for the visualizations once the data is made available. … … 39 35 == Component Data == 40 36 41 Each Gantt chart component or feature requires data to support it. For Trac-based project management, this data is often in addition to the core ticket data. Core ticket fields include: 37 Each Gantt chart component or feature requires data to support it. For Trac-based project management, this data is often in addition to the core ticket data. 38 39 === Core Fields === 40 41 Core ticket fields include: 42 42 43 43 * type (bug, task, enhancement, etc.) … … 56 56 * description 57 57 58 59 58 60 For a simple Gantt chart, we may use the following ticket fields: 59 61 … … 68 70 * dependencies 69 71 72 73 74 75 70 76 While Gantt charts typically show percent complete, this can be computed from hours remaining vs. total estimate or hours worked vs. total estimate. We will not, necessarily, store percent complete. It is intuitive for display and analysis but difficult for data entry. 71 77 72 == Dependencies == 78 79 === Dependencies === 73 80 74 81 There are four general types of dependencies for tasks: … … 93 100 dependencies (mastertickets does this fine) 94 101 95 estimates (timingandestimation is mostly ok, but needs computation 96 logic a little more towards earned value) 97 98 102 recording of available resources (people in hours/week) 99 103 … … 103 107 a way to show the schedule 104 108 105 106 109 = Features = 107 110 108 111 A Gantt plugin for Trac should analyze ticket dependencies and produce an interactive, explorable Gantt chart showing task progress and project status. … … 110 113 By "project", I mean a set of related milestones. Perhaps a software project has a Design Phase, an Alpha Release, a Beta Release, and a General Release. Each would be a milestone with a target date and tickets to complete the work for that milestone. There must be a way to specify which milestones to include either listing explicitly or by giving a pattern or substring filter. 111 114 112 The chart should be able to show all tickets, though that may be a very complex chart. 113 114 > or alternately all those tickets matched by a (query | report) or any 115 > other ticket group provider ;) 116 115 The chart should be able to show all tickets (though that may be a very complex chart) or alternately all those tickets matched by a (query | report) or any other ticket group provider. A "chart these" button on a report page would be very nice. 117 116 118 117 The chart should support interactively "folding" groups of tasks to hide detail. 119 118 120 Tasks /ticketsin the chart should be links to the tickets they represent. 119 Tasks in the chart should be links to the tickets they represent. 121 120 122 121 To effectively display project progress, tickets must have estimated and actual times as in the TimingAndEstimation plugin. Each task's bar in the chart should show actual hours. 123 122 124 123 The chart should have a Today line 125 126 Ticket dependencies that must be supported include: 127 128 1. Task B must follow task A. 129 2. Task A is composed of tasks B and C. A's estimated time is the total of B's and C's. (SubTickets) 130 3. Tasks A and B start at the same time 131 4. Tasks A and B must end at the same time 132 133 Type 1 dependency is implemented in the MasterTicket plugin. Note that a task may have many predecessors and many successors. 134 135 Type 2 dependency is necessary to support "folding" or "zooming" detail in the chart. It is also generally useful and might be implemented as its own plugin that the Gantt chart could require. Note that is should be possible to create a tree where A is composed of B and C, and B is composed of D and E, and C is composed of F, G, and H. 136 137 Types 3 and 4 are more unusual and a useful Gantt chart can be created without immediate support for these links in the first release. 138 124 139 125 It is also desirable to have loop detection to error-proof the tool used to create dependencies.