Changes between Version 129 and Version 130 of ProjectManagementIdeas


Ignore:
Timestamp:
Sep 4, 2015, 7:21:17 AM (9 years ago)
Author:
figaro
Comment:

Further cosmetic changes

Legend:

Unmodified
Added
Removed
Modified
  • ProjectManagementIdeas

    v129 v130  
    255255We need a proposal for how to describe available resources within Trac. If tasks are tickets and tickets have owners who work on them, it seems reasonable that a resource is a Trac user. There may be information we need to track for a resource that it not part of the user configuration. It might also be necessary or desirable to allow tickets to have multiple owners. Or, we might want to have a way to have a list of `(resource,hours)` pairs independent of the owner.
    256256
    257 = Related Work
    258 
    259257== Trac Core
    260258
     
    263261== Trac Plugins
    264262
     263=== Dependencies
     264
     265MasterTicketsPlugin supports FS dependency, but calls it ''blocks'' and ''blocked by''.
     266
     267The [http://trac.edgewall.org/wiki/SubTickets SubTickets] proposal talks about adding composition type dependency (parent/child relationships).
     268
     269SubticketsPlugin and ChildTicketsPlugin provide composition type dependency that can be used for WBS.
     270
     271The TracDependencyPlugin was created in August 2009 and shows promise as a more complete and flexible solution than upgrading !MasterTickets.
     272
     273=== Time and Scheduling
     274
     275TimingAndEstimationPlugin and TracHoursPlugin add estimated and actual hours fields to tickets. There is some disagreement about whether the estimate is the remaining time (so total estimated time is actual + estimate) or total time (so remaining time is estimate - actual). A Gantt chart typically wants estimate and percent complete. It is possible to extract this from either recording convention and we should likely allow either convention via a configurable interface.
     276
     277DateFieldPlugin has some helpful wrappers around custom fields to validate them as dates.
     278
     279SchedulingToolsPlugin has a scheduler, resource availability and Gantt chart in a simple fashion. It is in alpha stage, however.
     280
     281TeamCalendarPlugin keeps track of user availability.
     282
    265283=== Gantt Charts
    266284
     
    275293 [wiki:GanttCalendarPlugin GanttCalendar]:: provides nice views of tickets. It uses "Completed [%]" in 5% increments, "Start" (YYYY-MM-DD), and "End" (YYYY-MM-DD) custom fields. It includes an administrative calendar, perhaps where holidays and such can be recorded.
    276294
    277 Pale Purple's [http://github.com/palepurple Virtual Planner] is an alternative visualization tool.
    278 
    279 === Dependencies
    280 
    281 MasterTicketsPlugin supports FS dependency, but calls it ''blocks'' and ''blocked by''.
    282 
    283 The [http://trac.edgewall.org/wiki/SubTickets SubTickets] proposal talks about adding composition type dependency (parent/child relationships).
    284 
    285 SubticketsPlugin and ChildTicketsPlugin provide composition type dependency that can be used for WBS.
    286 
    287 The TracDependencyPlugin was created in August 2009 and shows promise as a more complete and flexible solution than upgrading !MasterTickets.
    288 
    289 === Time and Scheduling
    290 
    291 TimingAndEstimationPlugin and TracHoursPlugin add estimated and actual hours fields to tickets. There is some disagreement about whether the estimate is the remaining time (so total estimated time is actual + estimate) or total time (so remaining time is estimate - actual). A Gantt chart typically wants estimate and percent complete. It is possible to extract this from either recording convention and we should likely allow either convention via a configurable interface.
    292 
    293 DateFieldPlugin has some helpful wrappers around custom fields to validate them as dates.
    294 
    295 SchedulingToolsPlugin has a scheduler, resource availability and Gantt chart in a simple fashion. It is in alpha stage, however.
    296 
    297 TeamCalendarPlugin keeps track of user availability.
    298 
    299295=== Data Exchange
    300296
     
    302298
    303299Because Microsoft products are present in many environments, it would be nice if we could get availability information from Exchange to feed a project calendar. Just reading from the group calendar would probably be enough. That way users would only have to put in their vacations, etc. in one place.
    304 
    305 == Other work
    306 
    307 There is a [http://www.viewpath.net/Website/ganttcharts/googlegadget.aspx Google Gadget Gantt chart] which might be used for the visualizations once the data is made available (e.g., using [https://opensvn.csie.org/traccgi/swlcu/wiki/En/Devel/TracGViz/ TracGViz plugin]). That widget is developed and maintained by [http://www.viewpath.com/ ViewPath]. Besides users need access to the internet and their projects environments '''have to''' be available too so that the iGoogle container be able to retrieve the data to display in the chart. All this means that local deployments (intranets) are not possible.
    308 
    309 [http://www.simpleprojectmanagement.com/planner/home.html Planner] is an open source project management program.
    310 
    311 Gnome Office has a [https://wiki.gnome.org/action/show/Apps/Planner Planner], which is also [https://github.com/GNOME/planner forked].
    312 
    313 [http://www.dotproject.net/index.php dotProject] is an open-source, web-based project management system. A quick review suggests its task management isn't as good as Trac. It has a Gantt chart but [http://en.wikipedia.org/wiki/DotProject wikipedia] notes "as of version 2.0 the task dependencies feature is not complete". It has a troubled history but is forked as [http://www.web2project.net/ Web2Project].
    314 
    315 The article [http://www.smashingmagazine.com/2008/11/13/15-useful-project-management-tools/ 15 Useful Project Management Tools] mentions Trac. None of the tools obviously have scheduling in them.
    316 
    317 [http://www.atlassian.com/software/jira/ Jira] sounded promising but doesn't seem to have scheduling. Their chart examples don't include a Gantt.
    318 
    319 [http://www.basecamphq.com/ Basecamp] is popular and promising, but it is also commercial and doesn't support Gantt charting capabilities:
    320 
    321   For years project management software was about charts, graphs, and stats. And you know what? It didn’t work. Pictures and numbers don’t get projects done. Basecamp tackles project management from an entirely different angle: A focus on communication and collaboration. Basecamp brings people together.
    322 
    323 There is no automatic scheduling either. They have a nice feature where you can subscribe to milestone updates via iCalendar.
    324 
    325 Also:
    326 
    327  * [http://www.openworkbench.org/ Open Workbench] is a Microsoft Windows-based application not suitable for integration with a web-based tool like Trac.
    328  * [http://www.ganttproject.biz/ GanttProject] is a desktop application developed in Java.
    329300
    330301== Microsoft Project Task Properties
     
    362333 * Custom Fields
    363334
    364 However, this doesn't seem to be all the data Project records for a task. If you add a column to the WBS in the Gantt chart, there are many more options. The most interesting is Work which is the amount of work required to complete a task. Only when a resource is assigned 100% are Work and Duration the same. We'd like to specify the ''work'' required for a task and let the system calculate its ''duration'' based on available resources.
     335However, this doesn't seem to be all the data that MS-Project records for a task. If you add a column to the WBS in the Gantt chart, there are many more options. The most interesting is Work which is the amount of work required to complete a task. Only when a resource is assigned 100% are Work and Duration the same. We'd like to specify the ''work'' required for a task and let the system calculate its ''duration'' based on available resources.
    365336
    366337== Roadmap
     
    368339There seems to be a consensus that grandiose project management features for Trac should be implemented with a combination of plugins. The following plan assumes that approach:
    369340
    370  * Tasks will be represented as tickets. Additional non-core data will be needed. In object-oriented terms, you might say that Task is a subclass of Ticket.
     341 * Tasks will be represented as tickets. Additional non-core data will be needed. In object-oriented terms, Task could be a subclass of Ticket.
    371342
    372343 * We need a way to express WBS relationships, assuming !MasterTickets will be used to express dependencies.
     
    555526''I specifically was of the line of thought that I would like to pull some of these values directly from my requirements specifications somehow, hence the lean toward some sort of configurable "provider" for the entries, as I have no idea how I would "pull" the data from the requirements at this point, other data from calculation and projections using different projection methods, as well as "override" capability where data is entered by hand sometimes.  -- JW, 03 Aug. 2011''
    556527
     528== Third party software
     529
     530There is a [http://www.viewpath.net/Website/ganttcharts/googlegadget.aspx Google Gadget Gantt chart] which might be used for the visualizations once the data is made available (e.g., using [https://opensvn.csie.org/traccgi/swlcu/wiki/En/Devel/TracGViz/ TracGViz plugin]). That widget is developed and maintained by [http://www.viewpath.com/ ViewPath]. Besides users need access to the internet and their projects environments '''have to''' be available too so that the iGoogle container be able to retrieve the data to display in the chart. All this means that local deployments (intranets) are not possible.
     531
     532[http://www.simpleprojectmanagement.com/planner/home.html Planner] is an open source project management program.
     533
     534Gnome Office has a [https://wiki.gnome.org/action/show/Apps/Planner Planner], which is also [https://github.com/GNOME/planner forked].
     535
     536[http://www.dotproject.net/index.php dotProject] is an open-source, web-based project management system. A quick review suggests its task management isn't as good as Trac. It has a Gantt chart but [http://en.wikipedia.org/wiki/DotProject wikipedia] notes "as of version 2.0 the task dependencies feature is not complete". It has a troubled history but is forked as [http://www.web2project.net/ Web2Project].
     537
     538The article [http://www.smashingmagazine.com/2008/11/13/15-useful-project-management-tools/ 15 Useful Project Management Tools] mentions Trac. None of the tools obviously have scheduling in them.
     539
     540[http://www.atlassian.com/software/jira/ Jira] sounded promising but doesn't seem to have scheduling. Their chart examples don't include a Gantt.
     541
     542[http://www.basecamphq.com/ Basecamp] is popular and promising, but it is also commercial and doesn't support Gantt charting capabilities:
     543
     544  For years project management software was about charts, graphs, and stats. And you know what? It didn’t work. Pictures and numbers don’t get projects done. Basecamp tackles project management from an entirely different angle: A focus on communication and collaboration. Basecamp brings people together.
     545
     546There is no automatic scheduling either. They have a nice feature where you can subscribe to milestone updates via iCalendar.
     547
     548Also:
     549
     550 * [http://www.openworkbench.org/ Open Workbench] is a Microsoft Windows-based application not suitable for integration with a web-based tool like Trac.
     551 * [http://www.ganttproject.biz/ GanttProject] is a desktop application developed in Java.
     552 * Pale Purple's [http://github.com/palepurple Virtual Planner] is an alternative visualization tool.
     553
    557554== References and Related research
    558555
     
    562559
    563560----
    564 == Old design notes
    565 
    566 (I'm reworking these into a better flow for the whole document.)
     561== Old design notes (to be reworked in document)
    567562
    568563=== Component Data