What is Critical Chain Method in Project Scheduling?


Creating realistic and accurate schedules is the first step towards project success. In Project Scheduling, PERT and Critical Path Method (CPM) are widely known methods. Using CPM, early Start and Finish dates and Late Start and Finish dates are calculated by forward & backward analysis of the project network diagram paths. But this method, does not take resource limitation into consideration. After identifying the path, resources are picked up & leveled. In general, activity owners add safety margin (buffers) to each of the activities in order to cope up with uncertainties. But this cause time waste when activities can be completed well before the estimated finish date.

Critical Chain Method, developed by Dr. Eliyahu M. Goldratt (1997), is a schedule network analysis technique that takes account of task dependencies, limited resource availability & buffers. First step in this method is identifying set of activities that results in longest path to project completion which are called critical chains. As it includes resources into consideration, it may be longer than CPM schedule. Resources used in those critical chain activities are critical resources. Set of activities that are in non-critical chain but converging to critical chain are feeders. Next step is shortening the project schedule by reducing the activity duration estimates with effective buffer management. CCM focuses on eliminating project schedule delays due to uncertainties, overestimation of task duration and wasted internal buffers.

In CPM, even a resource completes an activity before the planned finish date, the time gain is not propagated to next activity as he needs to wait till early start date of next activity. But delays are propagated which may even change the existing critical path. In the below example, I showed activity dependency & resource dependency across activities in a small project.

Any delay in Activity 1 (upper part of fig), will delay the entire project. Also if you see, the critical path is Activity 1 – Activity 3, though activity 2 is completed long before, Activity 3 has to wait till activity 1 is completed.

Critical_Chain_1

In the resource-leveled project(lower part of fig), same resource R1 used in two different activities A3 & A2. Though A1 is completed in 2 time units, but A2 has to wait till R1 finishes up A3 which 7 time units. Though A3-A4-Activity 3 is the critical path, but any delay in A3 or A2 will surely delay the entire project & due to Resource dependency another longest path comes into picture A3 – A2 – Activity 3 (15 time units). Hence, optimization of duration is required to concentrate not only on the activity dependencies but also on resource dependency.

Another important factor one need to deal in project scheduling is – safety margins(buffers) to beat the uncertainty. Due to addition of buffers at different activity level, it is very difficult to calculate exact time of project execution & this safety margin will go waste due to Student Syndrome or Parkinson’s Law.

In CCM, as calculation is based on set of activities in the critical chain, hence estimated finish dates for each activity is not of much use. Also, time gain or delay in an activity is fully passed throughout the chain activities. The internal buffers added to tasks are made explicit and summed up. The summed up value is called project buffer. As per CCPM, project buffer is part of project, hence project duration remain unchanged even after stripping off all the activity safety margins. And keeping them improves protection against uncertainties.

Also, 50% probability time estimates are used in calculating the activity durations in CCM instead of traditional 95% probability. Difference between original schedule estimates and new schedule estimates gives the project buffer. In general project scenario, there is 100% chance that activity-wise safety margin get exhausted by poor buffer management. In CCM, pooled project buffer is used as safeguard the entire project & even it is utilized up to 50% allows project completion well within the schedule.

Critical_Chain_2

CCM introduces 3 different buffers. 1. Resource buffer, 2. Feeding buffer, 3. Project buffer. Out of these, I discussed about project buffer previously. Let me give gist of other two buffers next.

Resource buffer

Resource buffer is inserted just before critical chain activity where ever a critical resource required. This is used to give a signal to the critical resource that a critical chain activity to which they are assigned is due to start shortly. According to CCPM, this wake-up call will cause the critical resource to wrap up any non-critical work and be ready to start work on the critical chain task as soon as its predecessors are completed. The resource buffer does not actually consume any resource, and it adds neither time nor cost to the project.[2]

Feeding buffer

Same like project buffer, pooling of activity safety margins in a non-critical chain & applying them at the end of those chain.Because this buffer is placed where the path feeds back into the critical chain path, it is called a feeding buffer. See the placement of feeding buffer in the fig.

References:

1.OVERVIEW OF CRITICAL CHAIN PROJECT MANAGEMENT by Francois Retief, Critical Chain Symposium 2002. http://www.hetproject.com/Francois_Retief_paper_Overview_of_Critical_Chain.pdf

2. A CRITICAL LOOK AT CRITICAL CHAIN PROJECT MANAGEMENT By Barnes, Robert, Publication: Project Management Journal, Date: Monday, December 1 2003 http://www.allbusiness.com/management/951030-1.html

3. 1. Critical Chain Project Scheduling By Kailash Awati & Arati Apte. http://www.orafusion.com/pm_cc.htm
4. Critical Chain Project Management Improves Project Performance by Larry P. Leach, Advanced Projects Institute, 1997. http://www.advanced-projects.com/CCPM/PMJOURN_R8.PDF

Resource Leveling


Development of schedule involves analyzing numerous options and applying different techniques to meet the project (imposed) delivery date. Various schedule network analysis techniques are used to generate project schedule. Some of them are Critical path method, critical chain method, what-if analysis and resource leveling. More than one technique can be applied on project schedule to come up with expected schedule.

Estimation of activity resource is a vital process which involves

* Determining what resources will be required (labor, equipment, material)
* What quantity for each resource will be required.
* When are resources available to perform project activities

Resource requirements by time period, often in the form of a resource histogram. Resource histogram is

* A bar chart showing the amount of time assigned to a resource for the time interval.
* Resource availability is depicted as a line for comparison purposes.
* Resources assigned more work than available hours are considered ‘over-allocated’.

If supply is sufficient to meet the demand, then projects does not have any resource allocation issues. But this may not be the case in real time scenario – Demand will exceed supply & resource scarcity arises. Project manager uses a technique called ‘Resource leveling’.

Resource Leveling is a project management technique used to examine a project for an unbalanced use of resources (usually people) over time, and smoothen distribution of resource usage by resolving over-allocations or conflicts. With this technique PM ensures resource demand does not exceed resource availability.

Resource leveling is used:-

* to address schedule activities that need to be performed to meet specified delivery dates
* to address a situation where shared or critical required resources are only available at certain times or are only available in limited quantities
* to keep selected resource usage at a constant level during specific time periods of the project work

Resource Leveling

Resource leveling is applied to a schedule model that has that has a critical path identified. In critical path method calculation, preliminary early start & late start schedule is calculated which may need more resources in different time line. After resource leveling schedule, projected start and finish dates(which may be longer than the preliminary dates) are calculated to reflect resource availability and even there could be a change in critical path. There are issues with using the simple bar chart for resource leveling as the interdependency between activities is not available in them, which may result incorrect schedule plan.

Generally, there are two approaches to leveling and smoothing the resources required:

* Time-constrained approach – In this case importance will be given on completing the project within a specified (imposed) date. This date will usually have been determined by network analysis. Changes in the duration of any activity, and the resources required at a given time, must be undertaken within the float (slack) available. Obviously there can be no adjustment of activities which are on the critical path.

* Resource-constrained approach – In this approach, the project must be completed with limited available resources even if this means extending the project duration. If the total resource demand exceeds the resource availability at any time then some of the activities must be delayed until there is sufficient resource availability.

For both of the above approaches, information regarding the earliest & the latest start times and slack will be used to level resources.

Few options that can be used in resource leveling are:

* Allocating scarce resources to critical path activities first can be used to develop a project schedule that reflects such constraints.
* Common way to bring the project back on track is resource reallocation from non-critical to critical activities. This may at least bring schedule as close as possible to its originally intended overall duration.
* Resources working extra hours , weekends, or multiple shifts by authorizing overtime to reduce the durations of critical activities.
* Adding or substituting resources of equal or greater productivity to shorten durations that have extended the preliminary project schedule.
* Last but not the least, delaying or extending critical path tasks/task duration. 😦

Other than impact in duration, some of the above options have impact on project cost & risk also.

What-if Scenario Analysis


Let me start with a typical real-life example:

Your wife is asking you to take her out.

You are planning to go to the latest movie in a nearby movie theater.

First thing that come in your mind would be – “What do I do if all tickets are sold out before we reach the theater?”

Oh, no! It is going to be a big fight in the night then.

Now, jump into preparing mitigation plan.

In case tickets are not available, shall I take her to a park or mall? will that make her happy?

Like the one mentioned above, every day, for every activity which we perform, we have this proactive question – “What if the situation represented by scenario ‘X’ happens?” This What-If Scenario Analysis(shortly WISA) becomes our part of life and we ask this question till the end of life. Businesses use what-if scenarios to determine the effect different costs or investments have on profit and other financial indicators.

In businesses and projects, unanticipated adversities makes the business or project unstable and proactive handling of these uncertainties is required. With what-if scenario analysis, Project Manager & Project management team

* can evaluate the feasibility of completing the project under unfavorable conditions,

* prepare contingency and response plans to avoid or overcome the worst scenario,

* mitigate the impact of uncertain or unexpected situations

WISA (sometimes referred as deterministic simulation) used mainly in project analysis and schedule development. A schedule network analysis is performed using the schedule model to compute the different scenarios like delayed delivery of a major deliverable, impact of external factors such as a strike or change in the shipping procedures & processes, extending duration of certain specific activity under certain circumstances.

With different sets of activity assumptions, dozens of project schedule can be prepared through simulation.The most common simulation technique is Monte Carlo Analysis, in which a distribution of possible activity durations is defined for each schedule activity and used to calculate a distribution of possible outcomes for the total project. Early start/early finish, late start/late finish dates can be simulated.

To simulate what-if scenario analysis, number of tools are available in Excel. Following are the few links to them

1. Markham, I. S. and S.W. Palocsay (2006), “Scenario Analysis in Spreadsheets with Excel’s Scenario Tool,” INFORMS Transactions on Education, Vol. 6, No 2, http://ite.pubs.informs.org/Vol6No2/MarkhamPalocsay/

2. Using scenario manager to evaluate what-if questions- http://office.microsoft.com/en-us/excel/HA011117761033.aspx

3. Add Muscle to “What-If” Analyses BY JAMES A. WEISEL – http://www.aicpa.org/pubs/jofa/sep2004/weisel.htm

Schedule Compression Techniques


Time management is always challenging in project management. Through proper planning project managers can avoid schedule overrun.

Project Time Management involves

# defining required activities to complete the project,

# sequencing those activities based on their dependencies,

# estimating required resources & time for each activity,

# developing a project schedule, and

# executing the activities within the estimated time limit.

Schedule overrun may affect Cost, Quality and increases risk on project success. Few scenarios that may lead to schedule overrun are:

* Required resources are not available on time

* Activities takes longer time than estimated

* More reworks identified in quality process

Project management team can identify schedule overrun and possible risks due to overrun during project status performance reviews. Having quality management plan reviewed early in planning stage, projects can get benefit of cost reduction and schedule overruns caused by rework.

Project manager can use one of the schedule compression techniques or take corrective action to bring schedule back on track. It is not required that schedule compression techniques to be used only after encountering a schedule overrun. Project manager can use it as a preventive measure for anticipated schedule overrun. Let us review the definition:

Schedule compression shortens the project schedule without changing the project scope, to meet schedule constraints, imposed dates, or other schedule objectives. [1]

Mainly, schedule compression is to reduce the schedule without modifying project scope. Following 2 techniques are widely used for schedule compression: 1) Crashing 2) Fast tracking

Crashing: This technique may affect project cost. Trade-off between cost and schedule is analyzed and it is used to get maximum schedule compression for a minimal cost increase.

Following may be few actions by Project managers for crashing:

* Getting resources from other projects as loan

* Paying extra for fast shipment purchased materials

* Asking team members to work for extra hours against compensatory off or overtime

Crashing –

* does not always be an affordable choice; and

* may result in increased risk and/or cost.

Fast tracking: By simple definition, fast tracking is getting schedule compression by executing phases or activities in parallel that were originally scheduled in sequence. Fast tracking can be achieved by overlapping of phases or activities by starting subsequent activity or phase without finishing earlier one. But overlapping phases or activities may increase risk and gives rise to more reworks.

Following may be few actions by Project managers for fast tracking:

* identify phases that can overlap and start execute next phase before finish of earlier one

* identify activities that uses different set of resources and execute them parallel

* find activities that give low risk or low cost for time when executed prior to the completion of earlier phase

Fast tracking may result in –

* Rework – extra cost/time to fix

* Increased risk

As far as these compression techniques are concerned, managers can take risks if the risks are in balance with the benefits that may be gained by taking the risks.

References:

[1]. PMBOK® Guide 3rd Edition