What am I doing wrong tracking progress?

J

Jonathan Kamens

Greetings.

I have never been able to get Project to behave as I'd expect when
trying to track the progress of my projects. I don't know whether
this is because I don't know how to use it properly or because it's
not capable of doing what I want it to do. I'm perfectly happy to
spend some money (or, more accurately, to convince my boss to spend
some of the company's money :) on a training course to learn how to
use it properly, if that's what it's going to take to get me up to
speed, but before committing time and money to training, I'd like to
gain some confidence that Project *can* actually do what I want it to.
I don't want to blow a wad of cash and several days of my time only to
discover at the end of it that Project simply isn't as smart as I want
it to be.

Starting to plan a project is pretty straightforward. I break it down
into tasks and subtasks, estimating how many man hours each single
task will take and creating the necessary dependencies.

Next, I assign resources to tasks. I usually enable minute-by-minute
automatic leveling of resources. I very rarely assign multiple
resources to a single task. When I do, I almost always mean that each
of the resources will be busy for the indicated number of man hours,
not that they can split the work between them. (Question: Does this
mean that I should disable effort-driven tasks by default?)

Next, my people start working on the project. Some wrinkles I need to
deal with:

People don't always work on the individual tasks in the order
specified in the project plan. I want them to be able to use their
judgment to decide in what order to work on things, as long as it
doesn't impact the schedule (i.e., if a task has successors, they
probably need to work on it when Project says they should to avoid
delaying the successors).

Sometimes something urgent comes up and one of my people needs to stop
working on a task in the middle and come back to it later. If I tell
the automatic leveling to split tasks, and add the urgent task to the
project with fixed start and finish times, will Project automatically
level around it? Is there a better way to do this?

Even though my people are usually dedicated to my project full-time, I
assume that there is some overhead, e.g., a task that is estimated to
take 4 man hours to complete will, on average, take them longer than
that because of meetings, time keeping up with email, etc. I would
rather not see "[75%]" next to every resource assignment in the
project to account for this -- I would rather find some way to tell
Project to assign some amount of overhead (or its inverse rate of
productivity) to each resource and take into account the overhead or
productivity when scheduling that resource's tasks. I haven't found a
way to do this, so up to now I've "cheated" by changing the work
calendar to block off some hours in each day for overhead. I'm hoping
there's a better way.

I don't always know when someone started a task; sometimes I only find
out when they finished it. I would like to be able to tell Project,
"Here is when this task was actually completed," and have it
automatically count backward and calculate when it was started. I've
tried doing this by putting the completion date/time in the "Actual
Finish" column, but that recalculates the work and duration instead of
recalculating the start time. This interacts rather poorly with the
issue I noted above, i.e., that sometimes my people work on tasks in
an order different from what Project suggested. If I try to update
the "Actual Finish" time of such a task, then more often than not
Project decides that it's a zero-duration task and turns it into a
milestone. This is annoying, to say the least.

I want to be able to explicitly enter the "Actual Start" and "Actual
Finish" times for a task and have Project understand that what I'm
really saying is that I really mean that the person really started
and finished working on the task exactly when I said he did. Project
seems to delight in moving the dates I enter, perhaps because
sometimes my people work on things during non-working hours.

I would like to be able to easily split tasks when I know there's
going to be a break in the middle of them. You can sort of do this in
the Gantt chart, but not with any degree of accuracy, especially since
Project seems to have this kick about not letting you indicate that
part of a task is going to start during non-working hours. I would
like to be able to tell Project, yes, this is really the time when
this task is starting, please do what I'm telling you to do and stop
moving the task to 9am the next day.

I've seen Gantt charts, I believe produced by Project, where there's
one set of bars for the original Project plan and one set of bars for
when the work was actually done. I suspect there's something extra I
need to do to make my Gantt charts look like that, and I don't know
what it is.

I'd love any advice you can offer on how to handle any or all of these
issues properly. Every little bit helps :). I'd also love any
suggestions you might have for on-line resources or decent training
courses of which I can/should avail myself to fill the gaps in my
Project knowledge. Independent of all that, I find myself wondering
something: when I'm done learning what I need to learn about Project,
am I going to be able to make it do what *I* want, or am I going to
have to do what *it* wants? That is, what I've described above is how
I want to be able to track my projects; is Project going to be able to
support my doing things this way, or am I going to have to change how
I do things to be able to track using Project?

Thanks for any help you can provide.
 
W

Wiley

Wow Jonathan. You asked a lot. For the future, multiple subjects are best
handled in sperate posts. You will get more replies, and other users will
find asnwers to their searchesd easier. Having said that, i have placed my
asnwers in line.

Jonathan Kamens said:
Greetings.

I have never been able to get Project to behave as I'd expect when
trying to track the progress of my projects. I don't know whether
this is because I don't know how to use it properly or because it's
not capable of doing what I want it to do. I'm perfectly happy to
spend some money (or, more accurately, to convince my boss to spend
some of the company's money :) on a training course to learn how to
use it properly, if that's what it's going to take to get me up to
speed, but before committing time and money to training, I'd like to
gain some confidence that Project *can* actually do what I want it to.
I don't want to blow a wad of cash and several days of my time only to
discover at the end of it that Project simply isn't as smart as I want
it to be.

Project will handle what you are asking. Another way to think about it: If
your organization has chosen MSP as the project tracking tool, you are
already “blowing a wad of cash and several days†of time by learning without
assistance. MSP is a complex tool. Contrary to the beliefs of many who have
tried to use it out of the box without any assistance, it does exactly what
you tell it to do. Training is available through a number of different
sources. I like books best as they serve as a good refresher/reference later
on, but you may prefer hands on. There are some recent threads on selecting
classes in this forum.
Starting to plan a project is pretty straightforward. I break it down
into tasks and subtasks, estimating how many man hours each single
task will take and creating the necessary dependencies.

Next, I assign resources to tasks. I usually enable minute-by-minute
automatic leveling of resources. I very rarely assign multiple
resources to a single task. When I do, I almost always mean that each
of the resources will be busy for the indicated number of man hours,
not that they can split the work between them. (Question: Does this
mean that I should disable effort-driven tasks by default?)

Next, my people start working on the project. Some wrinkles I need to
deal with:

People don't always work on the individual tasks in the order
specified in the project plan. I want them to be able to use their
judgment to decide in what order to work on things, as long as it
doesn't impact the schedule (i.e., if a task has successors, they
probably need to work on it when Project says they should to avoid
delaying the successors).

Please take no offense, but this is a planning issue regardless of the
project tracking software you use. If you have tasks that have predecessors,
those need to be honored by the resources. That does not mean they cannot
overlap. Read Help for setting lag time and link dependencies (which can be
negative for overlaps). If tasks can be worked on without regard to order,
be more careful in how you assign predecessors for those tasks. In the real
world, most tasks have some sort of predecessor. Ex: Maybe Tasks 50 thru 55
can be worked on simultaneously or with out order. But in reality they all
cannot start until task 45 is complete. Tasks 50 thru 55 can all have 45 as
a predecessor and finish independently of each other.
Sometimes something urgent comes up and one of my people needs to stop
working on a task in the middle and come back to it later. If I tell
the automatic leveling to split tasks, and add the urgent task to the
project with fixed start and finish times, will Project automatically
level around it? Is there a better way to do this?

First of all is that urgent task part of your project? If so, you may want
to record it in the schedule. If it is not, then I would just let it slip
(with an awareness to the sponsor/management).

Secondly, I will admit that I do not use automatic leveling. I do it
manually. Call me a control freak, but maybe someone else should tackle this
question for you.
Even though my people are usually dedicated to my project full-time, I
assume that there is some overhead, e.g., a task that is estimated to
take 4 man hours to complete will, on average, take them longer than
that because of meetings, time keeping up with email, etc. I would
rather not see "[75%]" next to every resource assignment in the
project to account for this -- I would rather find some way to tell
Project to assign some amount of overhead (or its inverse rate of
productivity) to each resource and take into account the overhead or
productivity when scheduling that resource's tasks. I haven't found a
way to do this, so up to now I've "cheated" by changing the work
calendar to block off some hours in each day for overhead. I'm hoping
there's a better way.

Yes there is a better way. Adjust you working calendar to reflect the
availability minus overhead. I have organizations use 7 working hours per
day. Then a 100% resource is really working expected to work 7 hours on your
project and 1 hour on other things. You can do this via the standard
(project) calendar (Tools/Change Working Time) Either create a new calendar
or select one to edit. Click Options. Edit the Hours Per Day and Hours per
Week at a minimum. Click “Set as Defaultâ€.
NOTE1: If you want to select a different Calendar as the default (Project
Calendar), do it under Project/Project Information.
NOTE2: If you change the working time of a calendar, Project may recalc all
of your durations, depending upon which Task Type you are using. (Task Type
is a lesson in and of itself.)
NOTE3: You can also change the working time per resource by going into the
resource calendars. This is preferable for the issue you noted above,
because the Resource Calendar is used to schedule resource hours.
I don't always know when someone started a task; sometimes I only find
out when they finished it. I would like to be able to tell Project,
"Here is when this task was actually completed," and have it
automatically count backward and calculate when it was started. I've
tried doing this by putting the completion date/time in the "Actual
Finish" column, but that recalculates the work and duration instead of
recalculating the start time. This interacts rather poorly with the
issue I noted above, i.e., that sometimes my people work on tasks in
an order different from what Project suggested. If I try to update
the "Actual Finish" time of such a task, then more often than not
Project decides that it's a zero-duration task and turns it into a
milestone. This is annoying, to say the least.

Project does not know how to resolve this any other way. As best I know,
it only counts forward, not backward. What is most important for your
metrics, Actual Start, Actual Duration, Actual Work, or Actual Finish?. If
the resources don’t tell you when they started, are they accurate on how many
hours of Work it took? To enter completion on tasks when you don’t know the
Actual Start, but you want o maintain the planned Duration and Work, before
you set it to 100%, set the Actual Start date. It will calculate forward
based upon the planned Duration.
I want to be able to explicitly enter the "Actual Start" and "Actual
Finish" times for a task and have Project understand that what I'm
really saying is that I really mean that the person really started
and finished working on the task exactly when I said he did. Project
seems to delight in moving the dates I enter, perhaps because
sometimes my people work on things during non-working hours.

See above answer. Enter Actual Start first. If the duration calcs the
Actual Finish on a weekend (non working days) it will ignore those days –
because the calendar told it to. If you want to reflect those non working
days, you can either change the calendar ( not recommended unless they always
work those days) or just change the Actual Finish for the task after setting
the Actual Start.
I would like to be able to easily split tasks when I know there's
going to be a break in the middle of them. You can sort of do this in
the Gantt chart, but not with any degree of accuracy, especially since
Project seems to have this kick about not letting you indicate that
part of a task is going to start during non-working hours. I would
like to be able to tell Project, yes, this is really the time when
this task is starting, please do what I'm telling you to do and stop
moving the task to 9am the next day.

If you want to get down to the hours, use the Task Usage view and set the
timescale to hours. In the right pane, right click and select “Actual Workâ€.
You can edit the actuals just about anyway you want. Or if you use the
split window, you can display the Gantt also and drag to the exact hour.
I've seen Gantt charts, I believe produced by Project, where there's
one set of bars for the original Project plan and one set of bars for
when the work was actually done. I suspect there's something extra I
need to do to make my Gantt charts look like that, and I don't know
what it is.

Right click on the Gantt. Select Progress lines. There are other
formatting options under this menu that you may want to check out.
I'd love any advice you can offer on how to handle any or all of these
issues properly. Every little bit helps :). I'd also love any
suggestions you might have for on-line resources or decent training
courses of which I can/should avail myself to fill the gaps in my
Project knowledge. Independent of all that, I find myself wondering
something: when I'm done learning what I need to learn about Project,
am I going to be able to make it do what *I* want, or am I going to
have to do what *it* wants? That is, what I've described above is how
I want to be able to track my projects; is Project going to be able to
support my doing things this way, or am I going to have to change how
I do things to be able to track using Project?
Realize any tracking software will have “it’s way of doing thingsâ€. If it
didn’t have preset methods, you would be doing a tremendous amount of setup
before you could even get started. I use to hate Project, but only because I
hadn’t taken the time to master it. You do not have to become a master, but
you will thank yourself many times if you learn more of the MSP scheduling
engine.
Thanks for any help you can provide.


Jonathan Kamens said:
Greetings.

I have never been able to get Project to behave as I'd expect when
trying to track the progress of my projects. I don't know whether
this is because I don't know how to use it properly or because it's
not capable of doing what I want it to do. I'm perfectly happy to
spend some money (or, more accurately, to convince my boss to spend
some of the company's money :) on a training course to learn how to
use it properly, if that's what it's going to take to get me up to
speed, but before committing time and money to training, I'd like to
gain some confidence that Project *can* actually do what I want it to.
I don't want to blow a wad of cash and several days of my time only to
discover at the end of it that Project simply isn't as smart as I want
it to be.

Starting to plan a project is pretty straightforward. I break it down
into tasks and subtasks, estimating how many man hours each single
task will take and creating the necessary dependencies.

Next, I assign resources to tasks. I usually enable minute-by-minute
automatic leveling of resources. I very rarely assign multiple
resources to a single task. When I do, I almost always mean that each
of the resources will be busy for the indicated number of man hours,
not that they can split the work between them. (Question: Does this
mean that I should disable effort-driven tasks by default?)

Next, my people start working on the project. Some wrinkles I need to
deal with:

People don't always work on the individual tasks in the order
specified in the project plan. I want them to be able to use their
judgment to decide in what order to work on things, as long as it
doesn't impact the schedule (i.e., if a task has successors, they
probably need to work on it when Project says they should to avoid
delaying the successors).

Sometimes something urgent comes up and one of my people needs to stop
working on a task in the middle and come back to it later. If I tell
the automatic leveling to split tasks, and add the urgent task to the
project with fixed start and finish times, will Project automatically
level around it? Is there a better way to do this?

Even though my people are usually dedicated to my project full-time, I
assume that there is some overhead, e.g., a task that is estimated to
take 4 man hours to complete will, on average, take them longer than
that because of meetings, time keeping up with email, etc. I would
rather not see "[75%]" next to every resource assignment in the
project to account for this -- I would rather find some way to tell
Project to assign some amount of overhead (or its inverse rate of
productivity) to each resource and take into account the overhead or
productivity when scheduling that resource's tasks. I haven't found a
way to do this, so up to now I've "cheated" by changing the work
calendar to block off some hours in each day for overhead. I'm hoping
there's a better way.

I don't always know when someone started a task; sometimes I only find
out when they finished it. I would like to be able to tell Project,
"Here is when this task was actually completed," and have it
automatically count backward and calculate when it was started. I've
tried doing this by putting the completion date/time in the "Actual
Finish" column, but that recalculates the work and duration instead of
recalculating the start time. This interacts rather poorly with the
issue I noted above, i.e., that sometimes my people work on tasks in
an order different from what Project suggested. If I try to update
the "Actual Finish" time of such a task, then more often than not
Project decides that it's a zero-duration task and turns it into a
milestone. This is annoying, to say the least.

I want to be able to explicitly enter the "Actual Start" and "Actual
Finish" times for a task and have Project understand that what I'm
really saying is that I really mean that the person really started
and finished working on the task exactly when I said he did. Project
seems to delight in moving the dates I enter, perhaps because
sometimes my people work on things during non-working hours.

I would like to be able to easily split tasks when I know there's
going to be a break in the middle of them. You can sort of do this in
the Gantt chart, but not with any degree of accuracy, especially since
Project seems to have this kick about not letting you indicate that
part of a task is going to start during non-working hours. I would
like to be able to tell Project, yes, this is really the time when
this task is starting, please do what I'm telling you to do and stop
moving the task to 9am the next day.

I've seen Gantt charts, I believe produced by Project, where there's
one set of bars for the original Project plan and one set of bars for
when the work was actually done. I suspect there's something extra I
need to do to make my Gantt charts look like that, and I don't know
what it is.

I'd love any advice you can offer on how to handle any or all of these
issues properly. Every little bit helps :). I'd also love any
suggestions you might have for on-line resources or decent training
courses of which I can/should avail myself to fill the gaps in my
Project knowledge. Independent of all that, I find myself wondering
something: when I'm done learning what I need to learn about Project,
am I going to be able to make it do what *I* want, or am I going to
have to do what *it* wants? That is, what I've described above is how
I want to be able to track my projects; is Project going to be able to
support my doing things this way, or am I going to have to change how
I do things to be able to track using Project?

Thanks for any help you can provide.
Wishing you success...
 
J

Jonathan Kamens

Project will handle what you are asking.

It doesn't seem like it, judging from the rest of your message.

If that's how it is, so be it... I'll have to either figure out how to
do what I want within the boundaries that Project sets, or find a
different tool. But I really don't want to be told that Project will
do what I want when in fact it won't.

In other words, although your response is both helpful and
appreciated, I don't agree with your characterization of it. You
didn't tell me how to make Project do what I want, you told me how to
change what I'm doing to fit Project. That's what I was expecting,
albeit not what I was hoping for.
Please take no offense, but this is a planning issue regardless of the
project tracking software you use.

No, it isn't. The tasks in question really have no dependencies
between them. I do not want to micromanage when my people work on
them; all I care about is that they get finished by their shared
deadline.

As far as I can tell, Project simply does not handle well when people
work on things in a different order from what it suggested.
First of all is that urgent task part of your project? If so, you may want
to record it in the schedule. If it is not, then I would just let it slip
(with an awareness to the sponsor/management).

Yes, of course it's part of the project, since the project is
"everything my team is working on for the next few months.". I don't
know about all of those tasks at the start of the project, because
some of them are urgent client issues that take precedence over
ongoing project work. I do not have the luxury of being able to
allocate some of my people to address only such on-demand issues, nor
do I have enough free resource time to simply set aside a portion of
each person's time for such issues. I need to be able to tell
Project, "Hey, this just came along, please juggle everything else
appropriately and tell me how it's going to change the schedule."

More concretely, can/will Project do the right thing if I stick a new
task right in the middle of another task that someone is working on?
It doesn't seem to me that it does.
Yes there is a better way. Adjust you working calendar to reflect the
availability minus overhead.

As I've already said, this is exactly what I did. However, what you
proposed, in particular...
You can do this via the standard
(project) calendar (Tools/Change Working Time) Either create a new calendar
or select one to edit. Click Options. Edit the Hours Per Day and Hours per
Week at a minimum.

....won't work for me, because I schedule tasks that take hours, not
days or weeks. Therefore, the only way I found to do what I want is
to actually change the daily shifts to leave out some hours, and the
problem that causes is that this prompts Project to enforce arbitrary,
incorrect rules about when people can actually be working on tasks.

I suspect that issue points to the root cause of much of my trouble
with Project. It inappropriately conflates two different things --
the specific hours that people are available to work with their rate
of productivity. They aren't the same, and yet the only way to make
Project handle the latter, when tasks are scheduled on an hourly basis
rather than a daily or weekly basis, is to make artificial adjustments
in the former.
Project does not know how to resolve this any other way. As best I know,
it only counts forward, not backward. What is most important for your
metrics, Actual Start, Actual Duration, Actual Work, or Actual Finish?.

Let me give a more concrete description of what I'm trying to do. It
actually ties back into two different issues discussed above, the
issue of letting my resources choose the order in which they work on
tasks and the issue of handling rate of productivity without
artificial shift schedules.

Let's say someone comes to me and tells me that they've finished a
task and it took them six hours to complete. I want to go into
Project and tell it, "My resource worked on this task for six hours,
ending at this time." The correct amount of work for the task is
already in Project. Finally, let's say that Project thought that this
particular task wasn't going to be started until tomorrow.

If I enter the Actual Finish date, Project will immediately conclude
that the task took 0 hours of work and mark it as a milestone, because
the Start Date wasn't scheduled to be until tomorrow. So that's
obviously not going to work.

If I subtract six hours from the desired Actual Finish date, enter
that as the Actual Start date, and tell Project that the task is 100%
complete, then the Actual Finish date will probably end up getting set
later than it should be, because Project has this silly idea of
working hours that I had to impose on it to account for overhead, so
it's going to skip some of those hours when calculating the Actual
Finish date.

If I then go and fix the Actual Finish date, Project will reduce the
amount of work involved in the task to account for those hours in the
middle where it things my resource wasn't working when in fact he was.

This is even more obvious when the task only took an hour -- if my guy
worked on it during what Project thinks is his lunch hour, then I
can't convince Project to set the Actual Start and Finish times
without Project deciding that the task took 0 hours of work.

From your response, and from what I've written above, I suspect that
what I'm going to have to do to get Project do behave closest to how I
want is to modify the working calendars so that people are able to
work 24 hours per day, and specify a maximum units for each resource
to something like 25%. This will cause Project to estimate task
durations based on six hours of work from each resource in any 24 hour
period, while allowing me to put task start and end times exactly
where I want them.

The guys on my team frequently don't take lunch breaks, and they work
at all hours of the day and night. I would like my schedules to
accurately represent that, rather than spending my time fighting
Project to get task start and end times to end up somewhere near while
I want them to be while still preserving correct work and duration
values.
See above answer. Enter Actual Start first. If the duration calcs the
Actual Finish on a weekend (non working days) it will ignore those days â
because the calendar told it to. If you want to reflect those non working
days, you can either change the calendar ( not recommended unless they always
work those days) or just change the Actual Finish for the task after setting
the Actual Start.

I certainly don't want to have to constantly be updating the calendar
for every one of my people to indicate which off hours they worked. I
don't *care* which off hours they worked.

As noted above, changing the Actual Finish breaks the amount of work
that went into the task.
Realize any tracking software will have 'its way of doing things'. If it
didn't have preset methods, you would be doing a tremendous amount of setup
before you could even get started.

I know. I just want to be able to change the preset methods to work
the way I want them to, rather than making changes to the way I manage
my projects, changes that do not actually increase productivity,
merely to make the tool happy.

Thanks again for your response. I realize I'm doing a lot of
disagreeing, but that doesn't mean I don't appreciate your
help. I do.
 

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