Automatically calculate work effort and duration

M

MSPLearner

I am looking for ideas (or VBA code) to help me accomplish the following. BTW
- this very simple is MS Excel, but I wonder if it can also be done in MS
Project. Based on the effort and duration of a previouly entered task (Task
A) , can I calculate a subsequent task's (Task B) effort and duration as a %
Task A's effort and duration.

Task A Effort = 8 hrs Duration = 2 days

Task B Effort = 16 hrs Duration = 4 days (200% of Task A)

Thanks in advance for any help.
 
S

Steve House [Project MVP]

I suppose it could be done with VBA but I can't imagine any real world
project where the duration of each task in the project would be double (or
any other fixed ratio) of the duration of the task that preceeds it. Work
estimates just aren't that tidy.
 
D

davegb

Steve said:
I suppose it could be done with VBA but I can't imagine any real world
project where the duration of each task in the project would be double (or
any other fixed ratio) of the duration of the task that preceeds it. Work
estimates just aren't that tidy.

I'd have to disagree with you on this one, Steve. Seems to me that in
many cases, for estimating purposes, factoring one tasks duration from
another's would be quite valid. If I were an experienced painter, I
might have discovered that if it takes me a day to prep a room, it will
take about 2 days to paint it. Or some such thing. It is just an
estimate.
 
M

MSPLearner

Thanks for the feedback.

Yes, Davegb is on the right track. I have a level-of-effort (LOE) model in
MS Excel that I'd like to convert to project (because there is obviously more
project management capability I can harvest from MS Project). The LOE is an
estimating tool that is getting too cumbersome esp around resource planning
(where MS Project would be fabulous). But this LOE has a lot of tasks and
effort automatically derived based on previous tasks/effort. This is
modeling/sizing excercise, not a schedule development exercise.
 
S

Steve House [Project MVP]

Oh I agree with that strategy for estimating, but that's still a decision
that would be made on a case-by-case, task-pair by task-pair basis. Our
poster wanted some automated system that would set each task to a fixed
proportion of the task before it, scanning (I gather) all the tasks in the
project and applying the same ratio to every set of tasks across the board.
Still doesn't make sense to me.
 
S

Steve House [Project MVP]

So if the first task in the project lasts one day and the second task lasts
2 days, etc, the last task in a 100 task chain of events will last 2E100
(two to the 100th power) (or would that be 2E99?) days? I don't think so
LOL (no offense meant).
 
S

Steve House [Project MVP]

By the way, the numbers work out for the 100th task in my previous example
to take well over 1 billion times the age of the universe, assuming the
universe is 16 billion years old. <grin>


--
Steve House [Project MVP]
MS Project Trainer & Consultant
Visit http://www.mvps.org/project/faqs.htm for the FAQs
 
M

MSPLearner

Let me give an example.

Task 1 - Analysis (is fixed, enter effort and duration)

Task 2 - Code & Unit Test (is 200% of Task 1)

Task 3 - System Test (is 50 % of Task 2)

Task 4 - User Acceptence (is 25% of Task 3)


Steve House said:
Oh I agree with that strategy for estimating, but that's still a decision
that would be made on a case-by-case, task-pair by task-pair basis. Our
poster wanted some automated system that would set each task to a fixed
proportion of the task before it, scanning (I gather) all the tasks in the
project and applying the same ratio to every set of tasks across the board.
Still doesn't make sense to me.
--
Steve House [Project MVP]
MS Project Trainer & Consultant
Visit http://www.mvps.org/project/faqs.htm for the FAQs


davegb said:
I'd have to disagree with you on this one, Steve. Seems to me that in
many cases, for estimating purposes, factoring one tasks duration from
another's would be quite valid. If I were an experienced painter, I
might have discovered that if it takes me a day to prep a room, it will
take about 2 days to paint it. Or some such thing. It is just an
estimate.
 
D

davegb

MSPLearner said:
Let me give an example.

Task 1 - Analysis (is fixed, enter effort and duration)

Task 2 - Code & Unit Test (is 200% of Task 1)

Task 3 - System Test (is 50 % of Task 2)

Task 4 - User Acceptence (is 25% of Task 3)

Seems to me a reasonable approach. With code development, I'd put it
some schedule buffer somewhere downstream to account for those modules
that don't debug easily.

It's pretty easy to use calculated fields to get the durations. It's a
bit more complex (VBA) to get those durations into the standard
duration field to base the schedule on. If someone can think of an
easier way, I'm all ears.
Steve House said:
Oh I agree with that strategy for estimating, but that's still a decision
that would be made on a case-by-case, task-pair by task-pair basis. Our
poster wanted some automated system that would set each task to a fixed
proportion of the task before it, scanning (I gather) all the tasks in the
project and applying the same ratio to every set of tasks across the board.
Still doesn't make sense to me.
--
Steve House [Project MVP]
MS Project Trainer & Consultant
Visit http://www.mvps.org/project/faqs.htm for the FAQs


davegb said:
Steve House [Project MVP] wrote:
I suppose it could be done with VBA but I can't imagine any real world
project where the duration of each task in the project would be double
(or
any other fixed ratio) of the duration of the task that preceeds it.
Work
estimates just aren't that tidy.
--
Steve House [Project MVP]
MS Project Trainer & Consultant
Visit http://www.mvps.org/project/faqs.htm for the FAQs

I'd have to disagree with you on this one, Steve. Seems to me that in
many cases, for estimating purposes, factoring one tasks duration from
another's would be quite valid. If I were an experienced painter, I
might have discovered that if it takes me a day to prep a room, it will
take about 2 days to paint it. Or some such thing. It is just an
estimate.



I am looking for ideas (or VBA code) to help me accomplish the
following.
BTW
- this very simple is MS Excel, but I wonder if it can also be done in
MS
Project. Based on the effort and duration of a previouly entered task
(Task
A) , can I calculate a subsequent task's (Task B) effort and duration
as
a %
Task A's effort and duration.

Task A Effort = 8 hrs Duration = 2 days

Task B Effort = 16 hrs Duration = 4 days (200% of Task A)

Thanks in advance for any help.
 
S

Steve House [Project MVP]

But that's not the example proposed - he said task 1 is 1 day, task 2 is 2
days, task 3 is 4 days, task 4 is 8 days ... set by rote throughout the
project, the idea of a calculation, formula, or VBA proceedure to apply a
fixed progression to every task pair throughout the project and eliminating
the human judgement intervention. A very unwise move IMHO.
--
Steve House [Project MVP]
MS Project Trainer & Consultant
Visit http://www.mvps.org/project/faqs.htm for the FAQs



MSPLearner said:
Let me give an example.

Task 1 - Analysis (is fixed, enter effort and duration)

Task 2 - Code & Unit Test (is 200% of Task 1)

Task 3 - System Test (is 50 % of Task 2)

Task 4 - User Acceptence (is 25% of Task 3)


Steve House said:
Oh I agree with that strategy for estimating, but that's still a decision
that would be made on a case-by-case, task-pair by task-pair basis. Our
poster wanted some automated system that would set each task to a fixed
proportion of the task before it, scanning (I gather) all the tasks in
the
project and applying the same ratio to every set of tasks across the
board.
Still doesn't make sense to me.
--
Steve House [Project MVP]
MS Project Trainer & Consultant
Visit http://www.mvps.org/project/faqs.htm for the FAQs


davegb said:
Steve House [Project MVP] wrote:
I suppose it could be done with VBA but I can't imagine any real world
project where the duration of each task in the project would be double
(or
any other fixed ratio) of the duration of the task that preceeds it.
Work
estimates just aren't that tidy.
--
Steve House [Project MVP]
MS Project Trainer & Consultant
Visit http://www.mvps.org/project/faqs.htm for the FAQs

I'd have to disagree with you on this one, Steve. Seems to me that in
many cases, for estimating purposes, factoring one tasks duration from
another's would be quite valid. If I were an experienced painter, I
might have discovered that if it takes me a day to prep a room, it will
take about 2 days to paint it. Or some such thing. It is just an
estimate.



I am looking for ideas (or VBA code) to help me accomplish the
following.
BTW
- this very simple is MS Excel, but I wonder if it can also be done
in
MS
Project. Based on the effort and duration of a previouly entered
task
(Task
A) , can I calculate a subsequent task's (Task B) effort and
duration
as
a %
Task A's effort and duration.

Task A Effort = 8 hrs Duration = 2 days

Task B Effort = 16 hrs Duration = 4 days (200% of Task A)

Thanks in advance for any help.
 
T

Trevor Rabey

I suspect that you really mean that the Work (hours), rather than Duration,
of the Tasks lower down the list is a function of Tasks higher up the list.

But OK, let's say it is the Duration.

In your example, Task 4 Duration is a function (ie a simple linear
proportion) of Task 3 Duration.
But since Task 3 Duration is a function of Task 2 Duration and so on up the
chain to Task 1, really the Duration of all of the Tasks is a function of
the Duration of Task 1.

In EXCEL this is very easy to get with a formula that has an absolute
reference to the cell in Row 1, where Task 1 is, or alternatively you use
the cell above.

In MSP, it is very easy to do calculations on data within the row of a
particular Task, but not so easy (needs VBA) to use data for one Task for a
calculation for another Task. This is because it's a database, not a
spreadsheet. My VBA isn't strong, so my approach to your problem is to copy
the whole list of Tasks and their Durations from MSP into EXCEL, do the
calculation there, where it's easy, and then just paste the calculated
Durations back into MSP.

However, I think it is a mistake to estimate Durations as essentially
arbitrary functions of some arbitrary variable.
You can get Duration estimates by any method you like, but I agree with
Steve that you should get them by estimating the Duration of the Task.
Arriving at a Duration by some calculation does tend to give it a veneer of
respectability but it is not really any better or more valid than and
educated guess.
I doubt that you really have historical data or any basis for the 200%, 50%,
25%.. correlation, so these look like they have just been nominated for
convenience, ie they are an estimate.
May as well just estimate the Durations directly.



MSPLearner said:
Let me give an example.

Task 1 - Analysis (is fixed, enter effort and duration)

Task 2 - Code & Unit Test (is 200% of Task 1)

Task 3 - System Test (is 50 % of Task 2)

Task 4 - User Acceptence (is 25% of Task 3)


Steve House said:
Oh I agree with that strategy for estimating, but that's still a decision
that would be made on a case-by-case, task-pair by task-pair basis. Our
poster wanted some automated system that would set each task to a fixed
proportion of the task before it, scanning (I gather) all the tasks in
the
project and applying the same ratio to every set of tasks across the
board.
Still doesn't make sense to me.
--
Steve House [Project MVP]
MS Project Trainer & Consultant
Visit http://www.mvps.org/project/faqs.htm for the FAQs


davegb said:
Steve House [Project MVP] wrote:
I suppose it could be done with VBA but I can't imagine any real world
project where the duration of each task in the project would be double
(or
any other fixed ratio) of the duration of the task that preceeds it.
Work
estimates just aren't that tidy.
--
Steve House [Project MVP]
MS Project Trainer & Consultant
Visit http://www.mvps.org/project/faqs.htm for the FAQs

I'd have to disagree with you on this one, Steve. Seems to me that in
many cases, for estimating purposes, factoring one tasks duration from
another's would be quite valid. If I were an experienced painter, I
might have discovered that if it takes me a day to prep a room, it will
take about 2 days to paint it. Or some such thing. It is just an
estimate.



I am looking for ideas (or VBA code) to help me accomplish the
following.
BTW
- this very simple is MS Excel, but I wonder if it can also be done
in
MS
Project. Based on the effort and duration of a previouly entered
task
(Task
A) , can I calculate a subsequent task's (Task B) effort and
duration
as
a %
Task A's effort and duration.

Task A Effort = 8 hrs Duration = 2 days

Task B Effort = 16 hrs Duration = 4 days (200% of Task A)

Thanks in advance for any help.
 

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