wiki:ProjectPlanPlugin

Version 13 (modified by makadev, 5 years ago) (diff)

--

Project Plan Plugin

Description

ProjectPlan introduces time, dependency Fields and enables Project Management Features, especially for graphical visualisation, like Reports and Networks. Furthermore its a Development Base for several graphical Representations.

  • Current Testing Version is 0.60a (alpha)
    • Features
      • GraphViz based MPM Network
      • GraphViz based Hierarchical MPM Network
      • Critical Path Analysis (Simple Workloadbases)
      • Sorted Reports for Delayed Tickets and Slacktimes
      • Other small things
    • Known Problems
      • not all/good Images for this Package
      • possible unused Imports in several Modules
      • Other small things in code and documentation

Software Requirements

  • Python 2.5 or 2.6 with Python Standard Library
  • a recent GraphViz Package
  • Trac 0.11 (.1-5)
  • XML Template Engine Genshi 0.51 or compatible (is part of Trac 0.11)

Basic Setup

  1. Install the Plugin, either Global or Local (Local is recommended at this point)
  2. Setup Ticket-Custom Fields in your Projects trac.ini
    • For the case, you already have Dependency, Assign/Close Date Ticket-Custom Fields
      • Add the Fieldnames (as long as the format is compatible) with
        [pp_options]
        custom_dependency_field = <your dependency fieldname>
        custom_due_assign_field = <your assign Date fieldname>
        custom_due_close_field = <your close Date fieldname>
        
      • This lets ProjectPlanPlugin use these configured fields
    • If you dont have corresponding Dependency and Date Fields, they need to be added as Ticket-Custom Fields
      [ticket-custom]
      dependencies = text
      dependencies.label = Dependencies
      due_assign = text
      due_assign.label = Due to assign
      due_assign.value = DD/MM/YYYY
      due_close = text
      due_close.label = Due to close
      due_close.value = DD/MM/YYYY
      
  1. Basic GraphViz Configuration (needed for Networks):
    • login with administrative Rights, navigate to Admin (WebAdmin)
      • Select the Panel ProjectPlan -> General Settings (on the left)
      • Verify the Settings for cachepath and dot_executable
    • or set the following options in the projects trac.ini
      [pp_options]
      cachepath = <full path to the cache directory>
      dot_executable = <path to graphviz binaries>\dot.exe
      
      • restart your webserver for configuration reload
    • Verify access and execution rights for the webserver User
    • cachepath should be a separate directory for each project, this reduces possible cache collisions
  1. Color Setup:
    • login with administrative Rights, navigate to Admin (WebAdmin)
      • Select the Panel ProjectPlan -> Color Settings (on the left)
      • Set HTML Color codes and apply Settings
  1. Image Setup
    • login with administrative Rights, navigate to Admin (WebAdmin)
      • Select the Panel ProjectPlan -> Image Settings (on the left)
      • Select the Images, you'd like to use (the 16x16pixel images can reduce the network size) and apply Settings

Daily Usage

  • The Cache size can grow quite big because Changes in Tickets and per User/Macro produce a lot of files and images
    • it is recommended to either wipe the cache in intervals or setup a daily cronjob to for cache cleaning

Example

Add Ticket dependencies and close/assign Times.

  • Network Graphics
    • Use the ProjectPlan Macro for (mpm like) Network graphics with several options enabling Project runtime estimation and (workload based) critical path analyses.
  • Special Reports
    • Use special Reports which show Delays and Slacktimes
  • ...

Macro Samples:

  1. Both Network (hierarchical and non-hierarchical) use critical path analysis. This wont work without ticket times for all tickets (either start,end, or both).
  2. The critical path analysis wont work with cyclic dependencies
  3. Dependencies are saved in Ticket-Custom fields. A dependency line consists of Ticket Identifiers "#<Ticket ID>".

    == hierarchical Network ==
    [[ProjectPlan(macroid=1,renderer=gvhierarchical)]]
    
    == hierarchical Network with start and end times==
    [[ProjectPlan(macroid=1,renderer=gvhierarchical,betickets)]]
    
    == filtered (milestone=milestone1) ==
    [[ProjectPlan(macroid=filtered,renderer=gvhierarchical,filter_milestone=milestone1)]]
    
    == non-hierarchical (full network) ==
    [[ProjectPlan(renderer=gvrender,macroid=2,withbuffer)]]
    
    == Network Legends ==
    [[ProjectPlan(macroid=legend,renderer=gvrender,statuslegend,prioritylegend,notickets)]]
    
    == Special Reports ==
    [[ProjectPlan(macroid=report_buffer,renderer=report_buffer,limitlines=4)]]
    [[ProjectPlan(macroid=report_closing_delay,renderer=report_closing_delay,limitlines=10)]]
    [[ProjectPlan(macroid=report_assign_delay,renderer=report_assign_delay,limitlines=10)]]

Devel

Development?

Bugs/Feature Requests

Existing bugs and feature requests for ProjectPlanPlugin are here.

If you have any issues, create a new ticket.

Download

Download the zipped source from here.

Source

You can check out ProjectPlanPlugin from here using Subversion, or browse the source with Trac.

Recent Changes

[13331] by anbo on 2013-07-07 20:32:10
v2.1.5, patch release

fixes a bug, where the depending tickets are not saved during ticket creation

[13302] by makadev on 2013-06-22 19:25:20
sync to trunk (v2.1.4@r13300)
[13300] by makadev on 2013-06-20 07:33:02
v2.1.4, patch release
fixed

  • b.e. ticket mode for gv renderer: b.e. tickets were still datetime objects, but due times are date objects, so comparision raises an exception
  • added authname to init for DataAccessDependenciesInCustomFields, thought currently unused
  • convert ticket_id to string for str/unicode replace
  • removed false from sqlconstraint, because sqlite (and maybe others) treats both false or FALSE identifier as column name and fails
  • corrected use_fast_save_changes check, since PPBooleanSwitchOption inherits PPSingleSelOption the result is not realy Boolean and needs to be checked against its selectables

refs #11074

Author/Contributors

Author: makadev
Contributors:

Attachments (3)

Download all attachments as: .zip