Guild of Project Controls: Compendium | Roles | Assessment | Certifications | Membership

Tips on using this forum..

(1) Explain your problem, don't simply post "This isn't working". What were you doing when you faced the problem? What have you tried to resolve - did you look for a solution using "Search" ? Has it happened just once or several times?

(2) It's also good to get feedback when a solution is found, return to the original post to explain how it was resolved so that more people can also use the results.

Critical Chain Theory

15 replies [Last post]
Toby Hunt
User offline. Last seen 11 years 5 days ago. Offline
Joined: 26 Jul 2007
Posts: 98
Groups: None
Has anyone had first hand experience of implementing Critical Chain Project Management as developed by Dr Eli Goldratt, which seems to be decribed as a step on from CPM and PERT?

See http://www.goldratt.co.uk/resources/critical_chain/index.html

Regards

Toby

Replies

Mike Testro
User offline. Last seen 30 weeks 5 days ago. Offline
Joined: 14 Dec 2005
Posts: 4418
OK Vladimir

I have never yet been involved in a complex pipeline project - although I did come close to being appointed expert witness in the Turkey oil pipeline arbitration dispute. Maybe this was the Caspian project in the Turkey area - I can’t remeber.

Let us leave it for now.

Hope to hear from you this year in a new thread.

Best regards

Mike Testro.
Hi Mike,
Thank you for the clarification.
Spider Project does not abort resource constrained scheduling if Finish No Later Than restriction is impossible to meet. It just moves activity finish for the least possible time and informs the scheduler.
Lower gang size is not always possible. Sometimes you need to move some activities to avoid overallocation. Avoiding overallocation of one resource you may cause overallocation of some other resource. So the process is iterative and may be very time consuming if done manually.
When your task is to define the number of resources of each type necessary for construction project at some remote place, you deal with the situation when almost all resources are restricted. And adjusting required number of rersources is multidimensional task. Resources that will be selected will be moved to the site and it costs a lot. It does not make sense to move the resource that will be used only a small amount of time, so you will avoid peak requirements. This task is too complicated for manual levelling. We had done this for Caspian Pipeline Construction program simulating the work of more than 1000 resource types. Even with automated levelling this task is rather complex with a lot of what if scenarios.
If overloads are few then it is much easier but still you will need to adjust the schedule manually each time when changes (like entering actual data) occur.
Why you do not use automated levelling? You will see the results, which activities were moved and where, which resources were overallocated at any moment. If the results are unsatisfactory you can make all necessary adjustments or assign priorities making the software to take into account your preferences. In most cases resource levelling change Critical Path. New critical activities with zero resource constrained floats create Resource Critical Path or Critical Chain. If it was calculated by the software you will not need to struggle with the resource overallocation all the time. The software will do it for you considering your preferences.
Best Regards,
Vladimir Liberzon
Mike Testro
User offline. Last seen 30 weeks 5 days ago. Offline
Joined: 14 Dec 2005
Posts: 4418
Hi Vladimir

PowerProject does have a resource levelling facility and you can see the results but not how the calculation is achieved. It aborts if you have a "must finish on" constraint which would have been pushed out.

Once the logic is in place and a critical path established you can see any overload of resources on the labour histogram.

By presetting your anticipated maximum gang size the histogram shows red above the limit.

Resource allocations are in the column and where an activity is contributing to the resource overload it is very quick to make the adjustments by typing in a lower gang size.

If your resource modelling is duration driven by resource allocation the duration changes and the histogram levels out.

I set up a filter for each resource so each can be dealt with one by one.

I only need to make any adjustments if there is an overload which is not that often.

If an adjustment affects the critical path it is necessary to go back to the pre set limits to see if they are reasonable.

At all times I am the one making decisions - not the machine.

Best regards

Mike Testro
Hi Mike,
I did not try PowerProject but expected that it has good levelling capabilities.
I use Spider Project and its automated levelling is reliable and the schedules are at least close to optimal (shortest).
The software can try much more options than you can do manually. Levelling 3000 activities with 20 limited resources is not easy and finding the best solution manually is just impossible when resources are really constrained. And doing it again and again is a nightmare.
Best Regards,
Vladimir
Mike Testro
User offline. Last seen 30 weeks 5 days ago. Offline
Joined: 14 Dec 2005
Posts: 4418
Hi Vladimir

I use PowerProject software.

Most projects are between 2000-3000 activities.

Resources rarely exceed 20 trades.

Best regards & wishes for a peaceful & prosperous new year.

Mike Testro
Mike,
what size have your models? What is the number of limited resources? I am not sure that it will take 30 minutes in programs consisting of many thousand activities with several hundred resources. In this case you shall play not piano but organ.
Besides you will repeat this play each time after entering actual data. It will not be funny very soon.
In any case I am not sure that you will find optimal solution.
I think that you have an experience of using poor PM software - that is why you avoid to use automated resource levelling and I understand you.

Best Regards in the New Year,
Vladimir


Mike Testro
User offline. Last seen 30 weeks 5 days ago. Offline
Joined: 14 Dec 2005
Posts: 4418
Hi Gents

In my experience the quickest way to screw up your programme is to press the "Resource Level" button.

I prefer to filter on the resource that needs leveling - keep the live histogram running - keep the total float column open and then play piano with the resource allocation for each task.

It takes about 30 minutes but at least you know what has been done.

Best regards

Mike Testro.
Exactly!
Andrew Flowerdew
User offline. Last seen 2 years 49 weeks ago. Offline
Joined: 14 Dec 2004
Posts: 960
Groups: None
Vladimir,

Hence the need to know where the "level resources" button resides on whatever software you’re using.
Andrew,
when planning we try to optimize necessary resources - to calculate the amount necessary for achieving the result on time. If one day there is a need in 60 resource units, next day 40, then 70, etc. we can find that 53 is sufficient.
This is the usual task for project planning.
Besides some resources can be limited by the reasons that we cannot change. Like no space for installing the third crane on the construction site.
Regards,
Vladimir
Andrew Flowerdew
User offline. Last seen 2 years 49 weeks ago. Offline
Joined: 14 Dec 2004
Posts: 960
Groups: None
Vladimir,

I wish more people would pay attention to resources when programming, there are many programmes out there that if resourced would show you need 50 men today, 70 tomorrow and 40 the day after!!!!! (well maybe not that dramatic but along those lines).

The paper appeared to suggest:

I have 50 men on site this week therefore I should only plan to do 50 mandays of work each day. Nothing wrong with that, you can’t do more than you can do.

But such an approach seemed to miss the point that by planning ahead, if the programme had shown that I needed 55 men on site this week, then I should have been trying to sort out prior to this week having 55 men on site for this week, (or working overtime for the week or….), not be resigned to the fact I only have 50 men and letting that dictate the programme and progress.
Andrew,
I think the same - that Critical Chain theory did not suggest anything new but it proposed to pay more attention on resource constrained scheduling and using contingency reserves (buffers) for management by collecting all contingencies in one place. We had done it long before 1998 when Goldratt printed his book. In my presentation I described the approach that we use for many years, we call it Success Driven Project Management. Approaches are somewhat similar.

I don’t understand your point on resources for short term planning. We are involved in many large scale projects with limited resources. Limitations may have many reasons - supply limitations, lack of space, shortage of skilled workers, financing constraints, etc.
Besides peaks in resource requirements shall be avoided if possible. This is also one of the reasons for resource constrained scheduling in large programs.
Andrew Flowerdew
User offline. Last seen 2 years 49 weeks ago. Offline
Joined: 14 Dec 2004
Posts: 960
Groups: None
Vladimir,

Every programme should be resource loaded and constrained appropriately, (rarely happens), but is there anything in the critical chain theory that can’t be done in traditional CPM programming?

Or as I viewed it, it’s a twist on traditional CPM, but contained nothing new. It’s just another way of doing the same, but taking any contingency out of activities and showing/using it as buffers.

Yes, the programme should be constrained by critical resources, that’s just common sense. The paper I read was talking of short term planning on the basis of available resources such as run of the mill plant and labour, not tower cranes or other specialist plant. Hence my point that the resources should be matched to the programme, not the other way around.
Andrew,
resources are always limited. Not all of them but some. For an example you can be able to install not more than two cranes on the construction site, or you may have financial restrictions, or there are some peaks of manpower requirements that may be unreasonable to follow. So resource constrained scheduling is useful for optimizing resource requirements for completing the project on time and within available budget restrictions.
Resource levelling is necessary for proper resource planning. It is useful to understand which resources are critical in your project and what activities belong to Resource Critical Path (or Critical Chain - this is the name given to RCP by Goldratt). Activities that belong to RCP have zero total float calculated in the levelled schedule. Activities that belong to RCP may be unlinked and create a sequence basing on resource availability.
By the way most packages (including MS Project) calculate wrong total floats (slacks) when resources are constrained.

We use the approach that is similar to Critical Chain for many years (long before Critical Chain was invented by Dr. Goldratt). It includes RCP calculation and creating amd managing project buffers basing on risk simulation. Unlike Critical Chain approach for buffer management we use buffers not only for time but also for cost and materials.

I suggest to look at http://www.spiderproject.ru/library/tt.ppt and some other papers and presentations at http://www.spiderproject.ru/publ_e.php#eng

Best Regards,
Vladimir
Andrew Flowerdew
User offline. Last seen 2 years 49 weeks ago. Offline
Joined: 14 Dec 2004
Posts: 960
Groups: None
Toby,

Have never come across anyone using it, but have read a few papers on it.

An original paper by Dr Eli Goldratt tried to disassociate the method from CPM, (as per the paper you have linked to - longest chain (not path), type comment), but then went on to say you needed to establish a critical chain!!!!!, (that’s not a critical or longest path by any chance is it?) How do you establish the critical ’chain’ without using CPM calculations? Has someone invented a new calculation method to determine criticality?

My own conclusion was that it did or added nothing that couldn’t be done within the conventional CPM method.

In the same paper, (which I will try and find), there was also another theory based on your short term programme should only reflect that which you have the resources available for on site.

This seemed to me to miss the point that if you planned ahead, you should be trying to match your resources to the programmed work, not the programme to the resources currently available.

Maybe I’m missing something but nothing inspired me to go out and start preaching the values of critical chain theory.