J
Jan De Messemaeker
Hi Dave,
I only looked at one competitive product in this regard and I found PMW's
solution logical. They offer a task type called "meeting" which will be
scheduled only on times all the resources assigned to it have working time
(BTW this si also what Project's leveling does with he appropriate option).
This solves most of the problems we have like man-machine combinations,
craftsman-apprentice or... meetings. Why the mlakers of Project don't think
of it? I have my ideas on that but this is not the place to develop such
theories.
Greetings,
--
Jan De Messemaeker
Microsoft Project MVP
http://users.online.be/prom-ade
Steve,
I think your explanation of how Project sees a task, the work of a
single resource, is accurate and lucid. OTH, I think this is a major
flaw in Project that should have been corrected many versions back.
Many resources on many kinds of tasks work together. To break down a
project to a one resource per task is simply not acceptable. I've
never heard of this idea in all my years in PM until I came to this
forum. This is simply a major defect of Project, NOT good scheduling
practice. The ability to "bind" resources together should be standard
in any scheduling software, though I don't know if it is.
In project, I can create resources of multiple people. I.e., I can
create a resource called carpenders with 800% availbility if I have 8
carpenders on the project. But this doesn't help if, as in reality,
usually a single carpender works with a single carpender's apprentice.
Of course, we can then create a resource called Carpender Team
composed of one of each. But what about situations where either of
them works, say on a specific task, separately? Or just splits up
temporarily to work on separate tasks? Or I need 3 teams on a one task
for it's duration?
I think Project should have the ability to "bind" resources,
temporarily or permanently together. On some tasks, I could
temporarily bind the Carpender and the Apprentice together for the
duration of the task. On other tasks, assign them separately. On
others, they would be "bound" for part of the task and not "bound" for
the rest of the task. This would also work for other kinds of teams,
like surgical teams or any kind of group whose members may vary from
task to task or project to project.
To have to break projects down to one resource/one task is absurd! It
could easily make a 1,000 task project into a 5,000 task project. I
certainly wouldn't want to have to manage 5,000 tasks when the work is
really 1,000! And it doesn't even accurately represent what is really
happening, that people are frequently working in groups, not solo all
the time.
It's one thing to understand this flaw in Project. It's entirely
another to represent it as good scheduling practice. To quote from
your post,
"In fact, the task types are only consistently meaningful when viewed
in the context of 1 task == 1 resource's work, the classic endpoint in
the breakdown of a complete, fully decomposed, WBS." I'd like to see
some reference in some highly regarded text on PM, like Kerzner or
Lewis, where it says anything like that. I certainly can't recall, in
all my reading and in all the classes I've taken on PM and Scheduling
over the last 30 years, any comment even suggesting that a WBS should
be broken down to one task/one resource level. It's simply an
oversight, at best, or a major flaw, at worst, in Project that it
behaves in this manor.
I only looked at one competitive product in this regard and I found PMW's
solution logical. They offer a task type called "meeting" which will be
scheduled only on times all the resources assigned to it have working time
(BTW this si also what Project's leveling does with he appropriate option).
This solves most of the problems we have like man-machine combinations,
craftsman-apprentice or... meetings. Why the mlakers of Project don't think
of it? I have my ideas on that but this is not the place to develop such
theories.
Greetings,
--
Jan De Messemaeker
Microsoft Project MVP
http://users.online.be/prom-ade
What I'm trying to say is that a task with more than one resource assigned
to it is actually multiple tasks. But there is certainly an ambiguity in
that. If I have 2 carpenters and list them in my resource definitions as
Bill Carpenter and Joe Carpenter, each available 100% I have 2 resources.
But if I choose to list them as an aggregate "Carpenters" available 200% I
have only 1 resource. When I have a task and assign two resources defined
as in the first case, it is as if I had two separate tasks. "Fixed
Duration" as defining the constant term in the equation W=D*U still holds
true, but only for each individual resource's task - it does not hold true
for the combination of the two. OTOH, if I have that same task and assign
'Carpenters, 200%' I have 1 task with only 1 resource, NOT 2 resources,
and
Fixed Duration / W=D*U holds true for the whole.
One source of confusion is thinking that the number of resources is equal
to
the number of warm bodies. It's not. One could say that as far as
Project
is concerned, the number of resources assigned to a task is more properly
the number of distinct resource NAMES listed for the task. When Joe and
Bill are each assigned to the same task, that is 2 resources. But when 2
Carpenters are assigned to a task, that is only ONE resource. When viewed
at the overall task level, it appears that 'fixed duration' is behaving
differently in the two cases. In fact, the task types are only
consistently
meaningful when viewed in the context of 1 task == 1 resource's work, the
classic endpoint in the breakdown of a complete, fully decomposed, WBS.
When viewed at a summary level, they may or may not behave the same way.
And as I said in my earlier message, if you assign two resources to a
single
task, that task is no longer a single task but for scheduling purposes
becomes a summary task with 2 independent subtasks. And just like any
other
summary task, when the two subtasks don't run concurrently the total
duration may change when in fact the durations for each of the resource's
piece of the total work does not.
Fixed duration is not the same thing as fixed work because work and
duration
are very different metrics, even for one resource. Work is the amount of
effort expended (measures sweat), units is the rate at which it is
expended
(measures motivation LOL), and duration is the time over which it is
expended (measures time). But as mentioned before, the equation W=D*U
strictly holds true only for a single resource's (or if you prefer, a
single
resource name's) activity. As long as you remember that, the model
becomes
perfectly predictable.
Interesting discussion!
--
Steve House [Project MVP]
MS Project Trainer & Consultant
Visithttp://www.mvps.org/project/faqs.htmfor the FAQs
Steve,This would be all well and good, but you are essentially saying that
work
is fixed not duration. This is the issue. Some people want duration to
be
fixed. There is already a fixed work task, but now there is no longer a
real fixed duration task. There is a hybrid task that acts differently
under different conditions. Predictability of the model is something I
rely on.-Jack
Steve House said:In your example where you say that the task violates fixed duration it
really hasn't. Now before you think me mad, here me out <grin>. The
task
is Monday 8am to 5pm, 8 hours in duration, fixed duration. You assign
both Joe and Bill to it. The duration of Bill's work is 8 hours, the
duration of Joe's work is 8 hours. Now Bill has something come up and
he
has to delay his work by one day and we mark off on his resource
calendar
that Monday is, for him, a non-working day but Tuesday is normal. The
task times will now show starting Monday 8am and ending Tuesday 5pm.
So
far, so good? It appears the duration is now 16 hours but actually the
apparent change in duration is an artifact, not real! Why do I say
that?
Because the duration of Joe's work is still 8 hours and the duration of
Bill's work is still 8 hours. The durations that the two independent
pieces of work take place in, as expressed in the equation W=D*U for
each
resource assignment, has not changed at all. All that has changed is
the
two parts of the task that were originally scheduled concurrently are
now
scheduled consecutively. You always have to keep in mind that W=D*U
ONLY
applies to the work performed by a single resource on a single task.
I'll admit that Project is counter-intuitive by not recognizing that
the
task might require the two resources to always work together and could
be
improved in that regard but once you recognize that Project treats one
task with two resources assigned exactly the same way it treats two
independent tasks with one resource assigned to each, it starts to make
sense and is predictable enough to use for detailed schedule planning.
A way to illustrate what I'm saying most clearly is to make up a simple
project file with a normal task A, a summary task B with subtasks B1
and
B2, and a normal task C. A links FS to both B1 and B2, B1 and B2 both
link FS to C, but B1 and B2 are not linked to each other in any way.
Assign Joe to B1 and Bill to B2. Change Bill's resource calendar and
B2
will change accordingly while B1 remains the same (and the duration of
the "summary" B changes to reflect the collective duration between the
start of the earliest subtask task and the finish of the latest
subtask).
Split B2 in the middle and you'll see the duration of "summary" B
change
even though the durations of B1 and B2 remain exactly the same! That's
the exact situation that MS Project is modeling when you assign
multiple
resources to a task, except that you only see the "summary" task B in
the
schedule, showing up there looking as if it was a conventional task,
and
you don't see the "subtasks" at all (unless you look at the task usage
views where you do in fact see them - shall we call them 'virtual
subtasks'? - as two separate rows of hours, a row for each resource).
And that's why I'm saying the change in duration you're talking about
is
an artifact - what you're seeing is the change in duration for the
"summary" task while the actual durations over which each of the
component work activities will take place, the components of the
schedule
where the equation W=D*U is inviolate, haven't changed at all.
--
Steve House [Project MVP]
MS Project Trainer & Consultant
Visithttp://www.mvps.org/project/faqs.htmfor the FAQs
Steve,
See my response embedded in your reply, below.
:
While there certainly are a number of instances of fixed durations in
the
real world, I stand by my guns that they are relatively rare. Fixed
duration means the time it takes to do a task will not be dependent
either
on how hard the resource who does it is working or on how many
man-hours of
work will be required to achieve the tasks deliverable. If the task
is
to
make widgets and Joe can produce 10 widgets per hour when he's
devoting
his
full attention to it, setting the task to 'fixed duration' would mean
essentially that if we're going to create the 1 day duration task
"Make
Widgets" and put Joe on it, we just don't care how hard he works or
many
widgets he makes - we'll have him work for one day and we'll consider
the
task done regardless of whether there's 1 or 75 widgets produced.
Further,
we'll pay Joe $5 per widget no matter how many he's made at the end
of
that
day. All we care about is that he's at the widget workbench for 8
hours.
While that scenario may sometimes be an accurate description of
reality, I
still maintain it doesn't happen that way very often.
OK, but the problem is that I want Joe to be at that workbench with
his
teammate Frank at the same time! What happens though is that if I one
of
them can not make it to that workbench as we planned it, MS Project
incorectly "assumes" that they work independently. Do you know that
when
leveling, MS Project provides the behaviour I expect from a Fixed
Duration
tasks. I'll I'm asking for is that we extend the same behaviour to
the
Fixed
duration tasks for when we change resource schedule.
As for not having resource calendars, I suggest you actually NEED to
update
resource calendars to produce a meaningful detailed schedule.
Of course, but as I am trying to tell you if I do that I compromise
the
"fixed" duration.
For example,
we have 1 day day task and we put Joe and Bill both on it We need 16
widgets and each man can produce 1 widgets per working hour IF he's
not
distracted with other duties. Thus the 16 widgets requires a total
of
16
man-hours of work, Joe will do 8 and Bill will do 8. If both guys
work
day
shift, this task will begin at 8am and end at 5pm. But if Joe works
days
and Bill works swing, the same task will start at 8am and end at
11pm.
If
Joe takes a holiday on Monday the task will start Monday at 3pm and
end
Tuesday at 5pm. If Bill takes a holiday in Monday the task will
start
Monday at 8am and end Tuesday at 11pm. You only get those detailed
schedule
results if you have different calendars to model Joe and Bill's work
...
read more »- Hide quoted text -
- Show quoted text -
Steve,
I think your explanation of how Project sees a task, the work of a
single resource, is accurate and lucid. OTH, I think this is a major
flaw in Project that should have been corrected many versions back.
Many resources on many kinds of tasks work together. To break down a
project to a one resource per task is simply not acceptable. I've
never heard of this idea in all my years in PM until I came to this
forum. This is simply a major defect of Project, NOT good scheduling
practice. The ability to "bind" resources together should be standard
in any scheduling software, though I don't know if it is.
In project, I can create resources of multiple people. I.e., I can
create a resource called carpenders with 800% availbility if I have 8
carpenders on the project. But this doesn't help if, as in reality,
usually a single carpender works with a single carpender's apprentice.
Of course, we can then create a resource called Carpender Team
composed of one of each. But what about situations where either of
them works, say on a specific task, separately? Or just splits up
temporarily to work on separate tasks? Or I need 3 teams on a one task
for it's duration?
I think Project should have the ability to "bind" resources,
temporarily or permanently together. On some tasks, I could
temporarily bind the Carpender and the Apprentice together for the
duration of the task. On other tasks, assign them separately. On
others, they would be "bound" for part of the task and not "bound" for
the rest of the task. This would also work for other kinds of teams,
like surgical teams or any kind of group whose members may vary from
task to task or project to project.
To have to break projects down to one resource/one task is absurd! It
could easily make a 1,000 task project into a 5,000 task project. I
certainly wouldn't want to have to manage 5,000 tasks when the work is
really 1,000! And it doesn't even accurately represent what is really
happening, that people are frequently working in groups, not solo all
the time.
It's one thing to understand this flaw in Project. It's entirely
another to represent it as good scheduling practice. To quote from
your post,
"In fact, the task types are only consistently meaningful when viewed
in the context of 1 task == 1 resource's work, the classic endpoint in
the breakdown of a complete, fully decomposed, WBS." I'd like to see
some reference in some highly regarded text on PM, like Kerzner or
Lewis, where it says anything like that. I certainly can't recall, in
all my reading and in all the classes I've taken on PM and Scheduling
over the last 30 years, any comment even suggesting that a WBS should
be broken down to one task/one resource level. It's simply an
oversight, at best, or a major flaw, at worst, in Project that it
behaves in this manor.