Link to home
Start Free TrialLog in
Avatar of Serge Fournier
Serge FournierFlag for Canada

asked on

ms project gantt duration not moving when 2 ressources change % units

ms project 2007

i have a task job oriented, workload: 80 hours
i assigne 2 ressources, at 50% (r1 and r2)
duration: 16 days

i change the % units assigned to r2 from 50% to 100%
duration: 16 days

i change the % units assigned to r1 from 50% to 100%
duration: 8 days

why is the duration not changing when i change my ressource number 2 % units? (r2)
this behavior happen in project 2003 too on a brand new formated computer
it also happen on all computers we tried it (4 at the moment)

and yes my task is:
fixed work
driven by effort
SOLUTION
Avatar of aflockhart
aflockhart
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of bobsegrest
bobsegrest

Hello wildboy85,

Let's walk through this together.

I open Project 2007, double check to ensure my default task type is set to Fixed Work and effort driven.  I enter a new task (t1) and set the duration to 16 days.  

A point of confusion.  Using a standard calendar with 8 hour days, a 16 day duration task spans 128 (16x8) work hours, not 80...

Using the task form I create a resource (r1) on my task and set the units at 50%.  Project automatically sets the work for this resource to 64 hours.  I repeat this action to create a second resource (r2) with the same result.

Now I change the assigned units for my second resource to 100% and as you have described, the duration is still 16 days.

But when I look a bit closer, I notice that the work assigned to r2 is still 64 hours and the work assigned to r1 is 64 hours.  The reason that the duration has not changes is because the firt resource is still assigned to do half the work (64 hours) working half the work day (50% units) and this is going to take 16 days.  It doesn't matter that resource r2 finishes his assigned work 8 days earlier.  The task isn't finished untill ALL the work is finished.

The key to scheduling in Mictosoft Project is the formula

     Duration * Units = Work   (D * U = W)

The task Type and Effort Driven flag you choose tells Project how to apply the formula.

One thing Project will not do for you, is reallocate work between resources.  This is the project managers job and what has to happen to produce the result I suspect you were expecting in this case.

Does this answer your question?  If not elaborate a bit more...

Bob Segrest, PMP
MCITP, Microsoft Project Blackbelt




ScreenShot4.jpg
Avatar of Serge Fournier

ASKER

the answer look good, i understand it, but...

my task is tagged "as soon as possible"
that tell msproject to reallocate work between resources to finish the job faster

now, if msproject cannot do that... what is it's purpose?

i will wait for more answers a little bit, i cannot belive that there is not something to reallocate work automatically in ms project. That would be half of msproject reasons to exist blown away...


ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
that is perfect! exactly the answer i was looking for

i will simply use a team when poeple have the same skills

thx a lot

and next time, you can shorten the answers, by looking as my skill level ;)

you could have just said:
"form a team with the ressource that have the same skill"
"use the team as the only ressource"

appaprently, according to my boss, our resources have too many specialities to be put in teams
their work would be splitted in too many parts and lost in the size of the project itself
they must stay as individual

so i will program a macro to reassign the hours for each resources for a task

i will post it here once finished

Hello wildboy85,

Fair enough, we all work for someone.

Another approach would be to elaborate the task to another level of detail.

Extending my previous scenario a bit...

If Tom specializes in painting walls and Bill does the trim, consider creating a Walls task and a Trim task under Painting.  The assign Tom and Bill accordingly.  The original Painting task thus becomes a summary task and represents the sum of its sub-tasks.

The advantages to this approach include:

1.  One resource on one task means that accountability is clear.
2.  It becomes very easy to see which task and which resource is driving the duration.
3.  These points should make it easier for the project manager to reallocate resources when needed and you can always write a macro to automate where necessary.

Bob Segrest, PMP
MCITP, Microsoft Project Blackbelt
actually my boss know msproject more than me ;)
we are trying to generate a big msproject including all projects and all resources for planification purposes

we are not interested in seeing what group do what, but WHO is doing what
we want close individual monitoring even if both resources are doing the same task

what we really need is to assign "skills" to our resources
then ask project to recalculate the time schedule for the resouces with the same skills on a certain task
(only if all the resouces on this task have the same skills, the task will be shorter)

that is the beauty is relational database
you can look at it one way or the other
so the group will be assigned to the resources, as a skill, instead of the resource to the group, and lose it's visual identity that we absolutly need to make plans when we are in a planification meeting

i will still post the macro, when it's done, right here :)
this macro will recalculate the selected task schedule, assuming that all resources can do the same task
(curently, i am working on it part time, will take a day or 2)
this macro will recalculate hours/resources according to their units (%) contribution, assuming all the resources in the selected task work with the same skill, and the same number of hours each days

the duration of the task will go down if the % is bigger in one resource

use alt F11 to insert the macro in ms project
it will change all the selected task in the project explorer

so you select a task, press F8, run macro
OR
insert the macro as a button in the toolbar
and select a task and press the button to execute the macro

Sub test()
 
'=== trouver tous les travaux et les recalculer
 
Dim t01 As Tasks
Dim t As Task
Dim r As Resource
Dim t2 As Task
Dim res01 As String
Dim s As Assignment
 
 
'Set t01 = ActiveProject.Tasks
 
res01 = ""
houday = 8
 
For Each t In ActiveSelection.Tasks
   If Not t Is Nothing Then
      If Not t.Summary Then
         
         res01 = res01 & " name: " & t.Name & vbCrLf
         a = t.Work
         res01 = res01 & " Work: " & a & " " & a / 60 & " " & a / 60 / houday & vbCrLf
         
         alldistra = 0 '=== all disponibilities and work allocated
         
         '=== total productivity each day by all employe
         
         projrs = 0
         For Each s In t.Assignments
            projrs = projrs + s.Units * houday
         Next
         
         '=== total work according to productivity
         
         If projrs <> 0 Then
             totwrk = t.Work / projrs
         End If
         
         For Each s In t.Assignments
            's.b
            res01 = res01 & "   TEST: " & s.BudgetWork & vbCrLf
            res01 = res01 & "   % " & s.Units * 100 & vbCrLf
            res01 = res01 & "   OLD work: " & s.Work / 60 & "   NEW work: " & (s.Units * houday * totwrk) / 60 & vbCrLf
            s.Work = (s.Units * houday * totwrk)
         Next
      End If
   End If
Next
 
'MsgBox (res01)
 
End Sub

Open in new window