Dependencies and out of sequence scenario.

M

Manis

This is a problem that I'm having in my project.
The project plan was complete and we had all the dependencies set. Many of
them were start to finish. Now during the project, I'm finding that many of
the successor tasks are actually complete before the predecessor!
I understand that the dependencies were setup wrong. The users say that the
dependencies are actually resource dependent instead of task dependencies.
For eg:- if a task is being executed by an experienced resource, he has the
required knowledge and does not have to wait for the predecessor to be
complete. Valid argument. The problem is that the task has a generic resource
against it. So, at the time of planning, I don't know what kind of dependency
to set. I elected to use "start to finish". (Don't ask why.)
Question : If a successor is set as complete before the predecessor, what
happens to the dates?
if Task1, Task2 & Task3 are to be executed in that sequence and I mark Task2
as complete before Task1, what happens to the plan for Task1 and Task3?
 
J

John

Manis said:
This is a problem that I'm having in my project.
The project plan was complete and we had all the dependencies set. Many of
them were start to finish. Now during the project, I'm finding that many of
the successor tasks are actually complete before the predecessor!
I understand that the dependencies were setup wrong. The users say that the
dependencies are actually resource dependent instead of task dependencies.
For eg:- if a task is being executed by an experienced resource, he has the
required knowledge and does not have to wait for the predecessor to be
complete. Valid argument. The problem is that the task has a generic resource
against it. So, at the time of planning, I don't know what kind of dependency
to set. I elected to use "start to finish". (Don't ask why.)
Question : If a successor is set as complete before the predecessor, what
happens to the dates?
if Task1, Task2 & Task3 are to be executed in that sequence and I mark Task2
as complete before Task1, what happens to the plan for Task1 and Task3?

Manis,
Dependencies track the logical flow of work and that flow may or may not
be partially dependent on resources (see example below).

The most common type of dependency is finish-to-start so I have no idea
why someone would use start-to-finish as the main dependency type.

I wouldn't worry too much about what happens to the dates. Once a task
is started, it then has an actual start date and any dependencies that
might have been present are now null and void. The task start date will
take on the actual start date so in that regard the Start field may or
may not change depending on how progress was entered. If you simply
enter a non-zero value in the % Complete field then the Actual Start
will be equal to the Start. If however, you enter an actual start date
(i.e. the task stated earlier or later than the scheduled start date),
then Project adjusts the scheduled start to agree with the actual start.
This will then cause the scheduled finish to move accordingly.

In your case of linked task 1, task 2 and task 3, if task 2 starts and
completes before task 1 finishes, then task 1 simply shows as still
needing to be completed. Task 3 will still follow task 2 except that it
now can start based on the link.

The issue you describe isn't all that unusual. When a project plan is
first developed, the data entered, including task dependencies, is based
on the best information available at the time. As the plan is executed,
things often change and yes, sometimes a successor task may be started
and completed before its predecessor is finished. It doesn't mean the
plan was bad, it just means that the passage of time often provides
newer, better information. For example, let's say we are developing a
plan to paint several rooms in a house. For this job we only have one
painter available. The plan is laid out with prep as the first task
followed by painting followed by clean up. Joe starts the job and has
prepped the first two rooms when Frank becomes available from another
job. Now instead of waiting to start the painting phase, Joe can start
painting the first two rooms while Frank preps the remaining rooms. And
if yet another helper becomes available, the clean up process can also
start early. Was the original plan bad? No. Did two successor tasks
start before their predecessors were complete? Yes. That's the nature of
dynamic operating schedules.

Hope this helps.
John
Project MVP
 
M

Mike Glen

Hi Manis,

Welcome to this Microsoft Project newsgroup :)

There should be no direct relationship between resources and dependencies.
The logic should be set irrespective of the resource requirements. Logic
dictates that you have to have the walls built before you put on the roof.
This is a Finish (of the walls)-to-Start (starting the roof) relationship
and is generally the norm for most projects. This is the way you should
build your project. If you are unsure of this, have a read of my Guide to
Network Analysis in Article 1 referenced below. When you have defined the
logic to your satisfaction, you can then begin to assign resources. Then
you can let Project sort out overallocations by levelling. Thus, I would
begin by changing all the precedence links to be Finish-to-Start.

You might like to have a look at my series on Microsoft Project in the
TechTrax ezine, particularly #1, at this site: http://tinyurl.com/2xbhc or
this:
http://pubs.logicalexpressions.com/Pub0009/LPMFrame.asp?CMD=ArticleSearch&AUTH=23
(Perhaps you'd care to rate the article before leaving the site, :)
Thanks.)

FAQs, companion products and other useful Project information can be seen at
this web address: <http://www.mvps.org/project/>

Hope this helps - please let us know how you get on :)

Mike Glen
MS Project MVP
 
M

Manis

Sorry guys, that was a typo. All the dependencies are Finish to Start. That's
what I meant to say. (I am little bit confused by the earlier answers.)
My concern with this scenario is just one.
Eg:
Task1 - 1 day - 11/01 to 11/01
Task2 - 1 day - 11/02 to 11/02
Task3 - 1 day - 11/03 to 11/03.

They are in the correct sequence and that's their dependency.
If Task2 is complete on let's say, 10/25 and I mark it as complete. In what
situation would Task3 start on 11/02? Because now there's nothing happening
on 11/02.
For simplicity sake, let's assume just 3 tasks and 1 resource.
Would the Task3 dates change to 11/02? In my experiments, it didn't do that
automatically. If this does not happen, how can I make this happen? (not that
I would want to. just curious).

Thanks,
Manis.
 
J

John

Manis said:
Sorry guys, that was a typo. All the dependencies are Finish to Start. That's
what I meant to say. (I am little bit confused by the earlier answers.)
My concern with this scenario is just one.
Eg:
Task1 - 1 day - 11/01 to 11/01
Task2 - 1 day - 11/02 to 11/02
Task3 - 1 day - 11/03 to 11/03.

They are in the correct sequence and that's their dependency.
If Task2 is complete on let's say, 10/25 and I mark it as complete. In what
situation would Task3 start on 11/02? Because now there's nothing happening
on 11/02.
For simplicity sake, let's assume just 3 tasks and 1 resource.
Would the Task3 dates change to 11/02? In my experiments, it didn't do that
automatically. If this does not happen, how can I make this happen? (not that
I would want to. just curious).

Thanks,
Manis.

Manis,
Yeah, I wondered if it was a typo but I think both Mike and I took you
literally.

OK, about your scenario. If task 2 is completed early, task 3 will still
show as starting on 11/3 (not 11/2) if one of two things are true -
either calculation is set to manual (Tools/Options/Calculation tab), or
there is a start-no-earlier-than constraint on task 3. This constraint
will automatically be set by Project if you manually entered task start
dates.

One more comment. You may or may not want task 3 to automatically move
back to 10/26 as a start date. It depends on how valid your links were
in the first place. Clearly the link between task 1 and 2 was not
necessary since task 2 finished ahead of task 1. However, it may still
be true that task 3 cannot start until task 1 is complete. In that case,
the link should be changed accordingly.

John
Project MVP
 
M

Manis

John,
Just tried it with the 3 tasks. Calculation is automatic. I did not enter
either dates. Confirmed that the constraint type is "as soon as possible" for
all 3 tasks.
When I mark task2 as complete. Nothing happened. I went to
Tools/options/calculation tab and clicked on "calculate now". Still nothing.
(I'm testing this on Project 2007 Beta).

This behaviour is what I expected and actually helps me with the current
plan. But I'm wondering why the dates won't move and how to let project
optimize the utilization by itself.
I guess my question is .. What is that 1 day that we now have, considered
as? To me, it means that the project has come to a stop for that period. May
or maynot be a good thing.

Thanks!
 
J

John

Manis said:
John,
Just tried it with the 3 tasks. Calculation is automatic. I did not enter
either dates. Confirmed that the constraint type is "as soon as possible" for
all 3 tasks.
When I mark task2 as complete. Nothing happened. I went to
Tools/options/calculation tab and clicked on "calculate now". Still nothing.
(I'm testing this on Project 2007 Beta).

This behaviour is what I expected and actually helps me with the current
plan. But I'm wondering why the dates won't move and how to let project
optimize the utilization by itself.
I guess my question is .. What is that 1 day that we now have, considered
as? To me, it means that the project has come to a stop for that period. May
or maynot be a good thing.

Thanks!

Manis,
OK, you set task 2 as complete and nothing happened. Were you expecting
something to happen? Then you go on to say that this is what you expect.
I'm confused.

Here's my question. Why would any dates move just because a task is 100%
complete? The dates WILL move if an actual start and/or finish that is
entered that is different from the scheduled start and finish.
Otherwise, making the task 100% complete simply says that that task was
completed on schedule.

I don't quite follow what you expect when you say you want to, "...let
Project optimize the utilization by itself.". Project does not have
artificial intelligence - it doesn't know what you intend to do. All
Project can do is to calculate a schedule based on inputs provided by
the user. It does some some utility features such as resource leveling
that can be used to optimize a schedule but generally, it is just one
big schedule calculator.

And I don't understand you last question at all. I need a much better
explanation before I can begin to respond.

John
Project MVP
 
M

Manis

John,
Sorry. Didn't mean to frustrate you. (By the way, I found the answer, I'm
explaining it at the end).
I'll try again.
1. Create 3 simple tasks. You will notice that they all begin on the same day.
2. Make task2 dependent on Task1 and task3 dependent on task2. This will
make the tasks fall in sequence. (One after another).
3. If I mark task2 complete, shouldn't task3 start ASAP? Does this not
translate as the completion date of task1?

Answer: When you mark the task complete, the actual finish date is set to
the "finish" date. i.e if the finish date is in the future and you mark it
complete today, the actual finish date will show the future date and not
today's date! (I didn't know that.)

Some examples
Task1 - 1 day 10/19 - 10/19
Task2 - 1 day 10/20 - 10/20 - depends on Task1
Task3 - 1 day 10/23 - 10/23 - depends on Task2

If I mark Task2 complete on 10/19. The actual finish is still set to 10/20
and not 10/19. This ensures that Task3 starts on 10/23 and not 10/20. If I
change the actual finish on Task2 to 10/02, The duration is set to 0, Task3
starts on 10/02.
This puts Task3 before Task1! Screwing up the whole plan. I was not sure if
this was happening in my plan. It didn't look like it. So, I wanted to know
why it was not happening.

Bottom line - the default behaviour of actual finish date is what is desired
and marking tasks complete ahead of schedule does not impact the plan. (Not
unless you mess around with the actual finish date).

Please let me know if there's more to this.

Thanks guys!
Manis.
 
J

John

Manis said:
John,
Sorry. Didn't mean to frustrate you. (By the way, I found the answer, I'm
explaining it at the end).
I'll try again.
1. Create 3 simple tasks. You will notice that they all begin on the same
day.
2. Make task2 dependent on Task1 and task3 dependent on task2. This will
make the tasks fall in sequence. (One after another).
3. If I mark task2 complete, shouldn't task3 start ASAP? Does this not
translate as the completion date of task1?

Answer: When you mark the task complete, the actual finish date is set to
the "finish" date. i.e if the finish date is in the future and you mark it
complete today, the actual finish date will show the future date and not
today's date! (I didn't know that.)

Some examples
Task1 - 1 day 10/19 - 10/19
Task2 - 1 day 10/20 - 10/20 - depends on Task1
Task3 - 1 day 10/23 - 10/23 - depends on Task2

If I mark Task2 complete on 10/19. The actual finish is still set to 10/20
and not 10/19. This ensures that Task3 starts on 10/23 and not 10/20. If I
change the actual finish on Task2 to 10/02, The duration is set to 0, Task3
starts on 10/02.
This puts Task3 before Task1! Screwing up the whole plan. I was not sure if
this was happening in my plan. It didn't look like it. So, I wanted to know
why it was not happening.

Bottom line - the default behaviour of actual finish date is what is desired
and marking tasks complete ahead of schedule does not impact the plan. (Not
unless you mess around with the actual finish date).

Please let me know if there's more to this.

Thanks guys!
Manis.

Manis,
I thought I mentioned in an earlier response that if task progress is
entered via a task's Actual Start and Actual Finish fields, then Project
will change the Start and Finish fields to agree with the actual dates.
Project is simply adjusting the estimated dates (i.e. the schedule) to
agree with reality (i.e. actual dates). However if progress is entered
via the % Complete or % Work Complete fields, then Project will make the
Actual Start and Actual Finish fields equal to the scheduled dates.
Project is simply saying that the plan dates were good and the task was
preformed "on schedule". However, maybe it was someone else's post where
I explained this.

At any rate, it is a little confusing when you say, "If I mark task 2
compete on 10/19". Is 10/19 the day you entered 100% in the % Complete
field or is 10/19 the actual date the task was completed? In the former,
the task's actual finish date will indeed be 10/20, while in the latter,
the task's actual finish date will of course be 10/19.

Why would you want to set the actual finish date of a task to a date
before the task's scheduled start date? Indeed that is "screwing up the
whole plan". It is OK to enter an actual finish date without entering a
actual start date but that finish date MUST be on or after the scheduled
start date, otherwise the task duration doesn't make any sense.

Hopefully you now have a better understanding of how the Start, Finish,
Actual Start and Actual Finish fields interact.

John
Project MVP
 
M

Manis

I'm not trying to do anything with the actual dates. It was just that I
expected the actual finish date to be current date, when I mark the task
complete (using the % complete field). Apparently, that's not how the actual
dates work.

I have a better understanding now. Got some more reading to do I guess :)

Thanks again!
Manis.
 
J

John

Manis said:
I'm not trying to do anything with the actual dates. It was just that I
expected the actual finish date to be current date, when I mark the task
complete (using the % complete field). Apparently, that's not how the actual
dates work.

I have a better understanding now. Got some more reading to do I guess :)

Thanks again!
Manis.

Manis,
You're welcome.
John
 
G

Gary L. Chefetz [MVP]

Manis:

You might want to explore Tools > Tracking. Read the help on this feature.
It will help.
 
S

Steve House

IMHO, task dependencies describe the process logic of the project and not
resource availability. Resource leveling is the tool to handle situations
where the tasks in question are sequenced not by the process but by the
availability of the resources. IF you have two tasks that can only be done
by one particular resource, lets say, but are otherwise independent of each
other, you don't sequence by links. You put them in and assign the resource
.... at that point the two tasks will occur simultaneously but the resource
will be overallocated. If there's a preferred (as opposed to process
required) order in which they should be done, assign a higher priority to
the task you wish done first than you have on the other task. Then resource
level. The higher priority task will remain on the original date and the
lower priority task will shift out into the future to begin after the first
task ends, all without links being necessary to drive it there. In summary,
task links generate process dependent sequencing while resource leveling
generates resource dependent sequencing, controlled when necessary by task
priorities.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top