Jan and I differ on this approach. I don't believe that one should input
into Project what you want your schedule to be which is what you do when you
force tasks to specific dates using constraints. Instead, my approach is to
input what needs to be done, with the task linkages, durations, resource
availability and assignments, etc. and let Project calculate a schedule
come-what-may. I then examine the calculated dates to see if the meet my
business objectives and hard deadlines. If they do I'm in gravy. But if
they don't, as will frequently be the case on a first iteration, then I have
a valuable tool to see what will happen when I change the factors that are
under my control - things like putting resource A on Task X instead of
resource B or hiring some temps or starting these two tasks together instead
of having them in sequence - and see if the revised calculated dates are
better at meeting my objectives. When you put in a constraint it instructs
Project to place the task in the schedule so that it always obeys the
constraint condition. This sounds good at first glance but it doesn't
address the question of whether or not it is even *possible* for that task
to happen then given what has to come before it.
In a trivial example, we have a single task followed by finish milestone.
We can begin the task on July 1st and with one person working on it, it has
6 weeks of work involved. Our required finish date, your "hard date,"
according to the work contract is August 1st. If we put this plan into
Project with a "Finish No Later Than" constraint on the milestone, Project
will show that we're finishing right on time according the reported date
we'll hit the milestone yet the task that leads up to it won't actually
finish until 2 weeks later, sometime mid-August. Yes, Project usually gives
a warning message during data entry but simply hitting enter ignores it. My
contention is that simply declaring the milestone will happen Aug 1st, which
is what you do when you use a constraint, is not sufficient to make it
actually happen that way in the real world. In our example we must do some
real managing, ie scheduling the task to start earlier or getting more than
one person to work on it so it takes less time, in order to make it possible
for the milestone to happen on time. I do NOT want a schedule that fibs to
me, promising that everything is peachy when in fact it is patently
impossible to meet our objectives. I want a schedule that serves as a
reality check, giving me a predictive model for what-if experimentation to
answer the question of "Is the plan as presently outlined going to meet our
objectives and if not, what can we do about it?" It can't do that if it
can't freely move tasks back and forth in response to unconstrained
calculations showing me what probably is going to happen if people work
according to the plan I publish.
So why have constraints available at all? Because the outside world sends
them our way. An example I like is, our project is to build an oil drilling
plaform in port and tow it into place in the North Atlantic. The area is
locked in by ice during the winter and impassable. So the task to tow the
platform out is constrained with a "Start No Earlier Than" constraint of the
date the ice should break up because we can't do it before that date even if
everything else is ready to go and the crew and tug are available - Mother
Nature drives that part of the schedule, not us, and Project's model should
reflect that reality.
Hope this gives you some food for thought...
--
Steve House [MVP]
MS Project Trainer/Consultant
Visit
http://www.mvps.org/project/faqs.htm for the FAQs
DaveN said:
Thanks Jan.
I manage proposals and the due date is a "hard date" meaning that there is
no tomorrow. And in order for our executives review proposals before they
are submitted, I must establish hard review dates. My question is then, How
do I tell Project that these particular dates cannot float? I don't care
about resource units or work. I have to set certain dates. These projects
are controlled by the end date.