An open source project scheduling tool for Windows, Macintosh, and Linux.

Workload Management

Use the new "Calculate Assignment Hours" script to manage your team's workload. With this feature GanttPV calculates the workload for each assigned resource and displays task and assignment hours by day and week. Requires GanttPV 0.4 or later.

Step-by-step with GanttPV

To use GanttPV to calculate resource commitments for each day or week:

  1. Confirm that GanttPV version 0.4 or later is installed.
  2. Start GanttPV and open your project database.
  3. Select the "Install Assignment Hours" from the "Scripts" menu. (This is pre-installed in databases created with GanttPV v0.7 or later.)
  4. To display all resources and all their assignments.
    • Select the main window.
    • Select the "All Projects" row and click the "New Report" button.
    • Select the "Resource/Assignment" report from the pop-up menu.
    • Click "OK"
  5. To see a project's task resource assignments.
    • Select the main window.
    • Select the individual project row and click the "New Report" button.
    • Select the "Task/Assignment" report from the pop-up menu.
    • Click "OK"
  6. Add the desired columns to each report. (Starting with GanttPV v0.7 new reports already include columns, so this step becomes optional.)
    • Open the report by double clicking report row or pressing "return" or "enter"
    • The first time you open a report, insert the necessary columns.
      • Click the "Insert Column" button.
      • Select all of the desired columns from the pop-up menu. (Note that the columns that are listed first apply to the Task or Resource. The columns that apply to assignments are listed at the end. Often the columns with the same name will appear in both areas, but they do not display the same data. An exception is the time scale columns, they are usually defined to display data for both tables.)
      • "ProjectID" and "ProjectName" are only needed for the report under "All Projects".
      • Click "OK"
      • Re-order columns as desired.
  7. You probably shouldn't insert rows into either of these report types.
    • Insertion into the Task/Assignment report will create a new task, not a new assignment.
    • Similarly, insertion into the Resource/Assignment report will create a new resource.
  8. Use "Sort Like Related Report" to bring these new reports into the same order as your Task or Resource reports.
    • Select the two table report.
    • Run the "Sort Like Related Report" script from the "Scripts" menu.
    • The script will try to find a closely related report to use as a model. The model report must have the same primary table and the same project. If more than one qualifying report is found it will ask which to use.
    • After sorting, examine the new order of the report. If it didn't work as you thought use "Undo" and play with it until you are comfortable with how it works.

Assigning resources

  1. Add the resources to the "All Projects" or project specific resource report.
  2. Define new assignments in the project's task (or gantt report). Use the "Assign Resource" button on the tool bar.
  3. To override the default allocation of hours, change the assignment's effort hours in the Task/Assignment report.
  4. To do the calculations, run the "Calculate Assignment Hours" script.

Assign Resources Data

These are the Follow Up tracking columns:

  1. EffortHours Effort Hours can be entered at the Task and Assignment levels. The script assigns resource hours at the Assignment/Day level and summarizes by Task, Resource, and Week.

Effort Hour information is summarized into the following tables:

  1. ProjectWeek Effort Hours for the total project summarized by week.
  2. TaskWeek Effort Hours for the task summarized by week.
  3. TaskDay Effort Hours for the task summarized by day.
  4. ResourceWeek Effort Hours for the task summarized by week.
  5. ResourceDay Effort Hours for the task summarized by day.
  6. AssignmentWeek Effort Hours for the task summarized by week.
  7. AssignmentDay Effort Hours are allocated to each of the assigned resources by day.

What GanttPV will do

These are the rules that the calculation uses:

  1. If you don't specify a task's effort hours, GanttPV will default to the duration hours.
  2. If you specify a task's effort hours, GanttPV will evenly divide the effort hours across the duration.
    • If the task has a duration of 40 hours and effort of 20, it will divide it up as 4 hours per day. The logic is that GanttPV is trying to believe that when you specify a duration of 40 hours that you mean that someone will be working on it all week. But if you also tell it that they will only be putting in 20 hours of effort, then it understand that those 20 hours should be spread over that whole week. If you specify 60 effort hours and 40 duration hours and assign one person, it will assume that you want the person to work 12 hours per day.
  3. The developers thought about adding another options such as: "put the all the hours as early as possible", but decided to just offer one flavor at present. The rule is: Get the simple version working first and let people's experience with it dictate what else is needed.
  4. If you specify effort hours for a task and add a second person, it will give half of the effort hours to each person. If you don't specify effort hours, it will give all of the duration hours to each person. The logic is that if you specified a specific number of effort hours, you meant it. If you didn't then you expected the people to work on it full time for the whole of the duration.
  5. You can also specify the effort hours for each person in the assignment record. If you do it will override the task hours for that person, but won't affect the calculation for others. That can create a situation where the sum of the task/assignment effort hours doesn't match the task effort hours.
    • For example, if you specify 20 hours for the whole task, 5 hours for one person, and let the other default. The total hours assigned to people will be 15 hours, not 20. GanttPV thinks that should be okay because you are telling it that even though it is a 20 effort hour task, person A will do his half of the work in 5 hours. But person B, whose hours haven't been overridden is expected to complete his half in 10 hours. If you want the assignments to total 20, you must specify the hours of the second person to 15 hours.

How to manage assignment hours

Here are some considerations that can help.

  1. Remember that estimates are just that: estimates.
    • If you have added a safety factor to the estimates, then be sure tell your team members how much you expect them to beat the estimates by.
    • Don't spend a lot of time "leveling" the hours you have assigned. Any small change will throw off all the leveling.
  2. Where possible assign the same people to all of the tasks in a path.
    • You are much more likely to avoid wait time if people are waiting only for themselves before they start the next task.