Keywords

Introduction

In 1997, Israeli physicist Goldratt wrote and published his book Critical Chain on project management. Goldratt introduced the Theory of Constraints (TOC) into the field of project management. The Critical Chain Project Method (CCPM) was proposed to replace the Critical Path Method [1]. The core of CCPM is to extract the safe time of project activities and form a buffer zone at the end of the project to absorb the delay of the activity duration caused by uncertain factors and improve the probability of the project being completed on time.

CCPM mainly includes three kinds of buffer: project buffer, feeding buffer and resource buffer. Critical Chain/Buffer Management (CC/BM) mainly includes two contents: buffer sizing and buffer monitoring.

Buffer sizing is how the buffer size is calculated, and Goldratt uses a Cut-and-Paste Method (C&PM). The cut-and-paste method uses half of the duration of all activities in the critical chain as the safety time and half of the sum of the safety time of all activities as the project buffer placed at the end of the project to absorb project risks. This buffer sizing method is simple and easy to implement, but the buffer size increases linearly with the length of the critical chain, which may lead to a waste of resources due to an oversized project buffer and does not serve well to shorten the project duration. In 1998, Newbold proposed the Root Square Error Method (RSEM) based on the Cut-and-Paste Method while considering the probability of project completion. That is, the root variance of half of the safe time is calculated and placed at the end of the project as the project buffer [2].

Buffer monitoring is the process of monitoring buffer consumption during project execution to determine whether measures need to be taken to avoid project delay. The Static Buffer Monitoring Method proposed by Goldratt divides the buffer into three equal parts, namely the green zone, the yellow zone and the red zone. The cut-off point of green zone and yellow zone is warning point 1, and the cut-off point of yellow zone and red zone is warning point 2. During the process of the project, if buffer consumption is in the green zone, no action shall be taken; when buffer consumption reaches the yellow zone, the project manager shall pay attention and prepare for action; when buffer consumption reaches the red zone, the project manager shall take immediate action to prevent the delay of the whole project due to the delay of the activity. However, this Static Buffer Monitoring Method does not consider the relationship between buffer consumption ratio and chain completion ratio. In the initial stage of a project, even if an activity consumes a lot of buffer, as long as the buffer consumption is still in the green zone, the project manager does not need to take any action. In the later stage of the project, as long as the buffer consumption reaches the red zone, even if the single activity does not consume much buffer, but the accumulated buffer consumption is already in the red zone, the project manager should take measures to rush work, which obviously does not conform to the actual implementation of the project. Firstly, static buffer monitoring does not consider the dynamic change of the buffer consuming. Secondly, as the activities are implemented, the project will face a decreasing level of uncertainty, and the static monitoring mechanism may give wrong early warning, causing unnecessary rush behavior decisions. To address the shortcomings of the Static Buffer Monitoring Method, Leach proposed the Relative Buffer Monitoring Method, which considers a linear relationship between the chain completion and buffer consumption by setting relative monitoring warning points[3]. However, Leach did not give a specific method to set the linear relationship.

On this basis, subsequent researchers have conducted a large number of studies in the field of buffer management, from Cut-and-Paste Method to Root Square Error Method, to various buffering determination methods based on project activity properties [4,5,6,7,8]; from Static Buffer Monitoring Method to Relative Buffer Monitoring Method, and then to Dynamic Buffer Monitoring Method considering project execution [9,10,11,12]. Fewer existing studies have considered both cost and activity risk in buffer management. In this paper, activity cost is considered based on project activity elasticity when buffer is determined, and activity risk is considered in buffer allocation process, then by setting buffer consumption warning point, a project buffer management method considering activity risk is proposed, which can reduce project cost and improve project management efficiency while ensuring timely completion.

Buffer Sizing Based on Project Activity Properties

Project activity property refers to the multiple properties of each activity, which are used to expand the description of the activity. In critical chain project management, the existing studies have considered the following project activity properties: resource density (including physical resources and information resources), network complexity, overlapping relationship between activities, project complexity, activity flexibility, activity location weight, activity start flexibility, resource sustainability, resource flexibility, activity cost, activity dependency, etc.

In the process of buffer setting, this paper mainly considers two kinds of project activity properties, one is activity elasticity, the other is activity risk.

Buffer Determination Based on Elasticity of Activity

In this paper, activity elasticity is defined as the ratio of the difference between the normal duration of the activity to the minimum emergency duration that can be compressed by a series of measures such as adding resources to the normal duration. In actual projects, some activities cannot be compressed by adding resources and other measures, the activity elasticity of this type of activity is zero.

Additional resources and other measures will inevitably increase the activity cost of the project, we can not blindly pursue the minimum duration of the project regardless of the project cost. Therefore, on the basis of activity elasticity, this paper comprehensively considers the impact of activity cost and determines the buffer size suitable for each activity to be extracted. This approach avoids the huge increase in project cost caused by simply taking all the safe time of the activity out as a project buffer, and ensures the cost effectiveness of the project while ensuring the project duration.

Elastic Coefficient of Project Activity

The activity safe time is defined as the difference between normal duration and emergency duration, and the activity safe time is the maximum buffer time that can be extracted from the activity [11]. Each activity will generate corresponding cost from normal construction duration to emergency construction duration, and the formula of compressed unit time cost is shown in Formula (25.1).

$$AR_i = \frac{Cc_i - Cn_i }{{Tn_i - Tc_i }}$$
(25.1)

where, \(AR_i\) is the cost per unit time of activity i; \(Cc_i\) is the emergency cost of activity i; \(Cn_i\) is the normal cost of activity i; \(Tn_i\) is the normal duration of activity i; \(Tc_i\) is the emergency duration of activity i.

According to the difference between the unit time cost of the compressed duration and the reward for early completion of the project, the strength suitable for each activity to be compressed, namely the activity elastic coefficient, can be calculated. RP is the reward per unit of time for early completion of the project.

If \({\text{AR}}_{\text{i}} - {\text{RP}} \le 0\), it means that the unit time cost of the activity's compressed duration is less than or equal to the reward for the early completion, it means that the activity can extract all the safe time as a buffer. At this point, the elastic coefficient of the project is the ratio of the difference between the normal duration and the emergency duration of the activity and the normal duration of the activity, as shown in Formula (25.2).

$$K_i = \frac{Tn_i - Tc_i }{{Tn_i }}$$
(25.2)

where, \(K_i\) is the activity elastic coefficient of activity i; (\(Tn_i - Tc_i\)) is the maximum reasonable buffer time that the activity safe time can be extracted.

If \({\text{ AR}}_{\text{i}} - {\text{RP}} > 0\), it means that the unit time cost of the activity’s compressed construction duration is bigger than the reward of the project’s early completion, it means that the activity cannot extract all the safe time. When the difference between the compression cost per unit time and the reward for early completion is larger, it indicates that the activity is less suitable to extract too much safe time as a buffer. In this case, an appropriate cost correction coefficient should be multiplied when calculating the activity elastic coefficient, and the difference between the maximum cost per unit time of the compressed duration in all activities and the early completion reward is used as a comparison parameter. The activity elastic coefficient is shown in Formula (25.3).

$$K_i = \frac{Tn_i - Tc_i }{{Tn_i }}\left( {1 - \frac{AR_i - RP}{{AR_{{\text{max}}} - RP}}} \right)$$
(25.3)

where, \(K_i\) is the activity elastic coefficient of activity i; \(AR_{{\text{max}}}\) is the maximum unit time cost of the compressed duration in all activities; (\(Tn_i - Tc_i\)) is the activity safe time, that is, the maximum reasonable buffer time; \(\left[ {1 - \left( {AR_i - RP} \right)/\left( {AR_{{\text{max}}} - RP} \right)} \right]\) is the cost correction coefficient.

Project Buffer Sizing

According to the elastic coefficient of project activity determined by Formula (25.2) and (25.3), the extracted buffer of activity i is shown in Formula (25.4).

$$PB_i = Tn_i \times K_i$$
(25.4)

where, \(PB_i\) is the buffer size that activity i is extracted.

According to the activity buffer formula, the project buffer of the critical chain is shown in Formula (25.5).

$$PB = \mathop \sum \limits_{i = 1}^n PB_i$$
(25.5)

where, PB is the project buffer size.

The project buffer can be determined according to the activity elasticity. Placing the project buffer at the end of the critical chain can realize the risk sharing of the project. The feeding buffer calculation method is similar to the project buffer calculation method. This paper mainly studies the buffer sizing and monitoring on the critical chain, so the feeding buffer calculation on the non-critical chain will not be described too much.

Buffer Allocation Based on Activity Risk

Activity risk refers to the risk events faced by activities in the project (in this paper, activity resource constraint risk and duration risk are comprehensively defined as activity risk), including the probability of risk occurrence and the degree of impact on activities. Each activity faces different types and quantities of risks, and the uncertainty brought by risks to activities is also different. Therefore, activity risk can be used as an important indicator to measure the uncertainty of activities.

After determining the appropriate buffer size for each activity to be extracted, we choose to allocate buffer to individual project activities. The traditional method is to set all buffer together in a fixed position in the project chain. Generally, the project buffer is set at the end of the critical chain and the feeding buffer is inserted at the intersection of the critical chain and non-critical chain. This centralized setting of buffer is conducive to the overall project response to the impact of uncertain factors, and has a higher completion probability, but centralized settings are the overall protection of the project, the buffer protection for individual activities is not enough, which easily affects the stability of the entire project plan. When the buffer is inserted into each activity, a relatively robust scheduling plan can be generated.

There are various risks and uncertainties in modern engineering projects, so we incorporate the activity risk into the calculation of the buffer allocation weight. The influence of the level of certainty enables activities with high uncertainty to be allocated more buffer time, and activities with low uncertainty to be allocated less buffer time. Such buffer allocation is more reasonable in actual projects.

Activity Risk Impact Coefficient

Assume that the set of risks affecting the project schedule is RS = {R1, R2, R3…, Rj} “, where each risk event is denoted as “R (risk) = {P, I}”, where P represents the probability of risk occurrence; I represents the impact of the risk on the activity duration. Suppose the project has n activities, each of which has m risk events. The influence coefficient of activity risk is calculated based on the above assumptions.

Risk exposure is the product of risk occurrence probability and the loss caused by risk, which can be used to measure the importance of risk. It is denoted as RE, and its formula is shown in Formula (25.6).

$${\text{RE}} = {\text{P}} \times {\text{I}}$$
(25.6)

where, \({\text{RE}}\) is the risk exposure; \({\text{P}}\) is the probability of risk occurrence; \({\text{I}}\) is the degree of impact of risk occurrence on the activity duration.

For activity i, the calculation of risk impact coefficient should take full account of the impact of all risk events in the execution of the activity. The risk exposure of all risk events should be multiplied by 1 respectively, which is the risk impact coefficient of the activity, as shown in Formula (25.7).

$$RI_i = \mathop \prod \limits_{j = 1}^m \left( {I_j \times P_j + 1} \right)$$
(25.7)

where, \(RI_i\) is the impact of the risk event of activity i on its duration; m is the number of risk events of activity i; \(I_j\) is the impact to the duration of activity i when risk j occurs, and \(P_j\) is the probability of risk j occurring.

Buffer Allocation Considering Activity Risk

  1. A.

    The initial buffer allocation weights

    When the impact of activity risk is not considered, the weight of buffer allocation is only related to the duration of the activity after the extraction, and the larger the duration after the extraction, the larger the buffer allocated to the activity, and vice versa. The initial buffer allocation weight is calculated as shown in Formula (25.8) [11].

    $$\omega_i = \frac{Tn_i - PB_i }{{T - PB}}$$
    (25.8)

    where, \(\omega_i\) is the initial buffer allocation weight; \(Tn_i\) is the normal duration of activity i; \(PB_i\) is the buffer extracted for activity i; \(T\) is the normal duration of the project; \(PB\) is the project buffer.

  2. B.

    Revised buffer allocation weights

Based on the weight of initial buffer allocation, the activity risk impact is considered. For activity i, multiply its initial buffer allocation weight with its risk impact factor to obtain its combined weight impact coefficient. compare the combined weight impact coefficient of activity i with the value obtained by accumulating the combined weight impact coefficients of all activities on the chain, which is the revised buffer allocation weight of activity i. and its calculation is shown in Formula (25.9).

$$\omega_i^R = \frac{\omega_i \times RI_i }{{\sum_{i = 1}^n \left( {\omega_i \times RI_i } \right)}}$$
(25.9)

where, \(\omega_i^R\) is the revised buffer allocation weight; n is the total number of activities on the chain. The sum of the revised buffer allocation weights of all activities on the chain is 1.

Therefore, the buffer size allocated to each activity while considering the impact of activity risk is shown in Formula (25.10).

$$PB_i^\prime = PB \times \omega_i^R$$
(25.10)

where, \(PB_i^\prime\) is the buffer size allocated to activity i; \(PB\) is the project buffer; \(\omega_i^R\) is the revised buffer allocation weight.

Dynamic Monitoring of Project Schedule

Buffer Monitoring Warning Point Setting

Two warning points will be set for each activity buffer, the purpose of which is to determine whether the activity will exceed the planned time and whether the crush measures are required.

In this paper, the setting of warning points also adopts the trisection method, that is, the buffer zone is divided into three equal parts, and the warning points are set at 33% and 66% respectively. \(PB_i\) is the buffer extracted from activity i, \(PB_i^\prime\) is the buffer allocated for activity i. When \(PB_i \ge PB_i^\prime\), the early warning points a and b were respectively a = 33% × \(PB_i^\prime\), b = 66% × \(PB_i^\prime\); when \(PB_i < PB_i^\prime\) the early warning points a and b were respectively a = 33% × \(PB_i\), b = 66% × \(PB_i\). The above formula takes the smaller one between the buffer to which the activity i is extracted and the buffer to which it is allocated as the parameter for setting the warning point. When \(PB_i \ge PB_i^\prime\), that is, the extracted buffer of the activity is bigger than or equal to the allocated buffer, indicating that the compression cost of this activity is small, and the faster the completion is, the better; when \(PB_i < PB_i^\prime\), the compression cost of this activity is relatively large, and more buffer need to be allocated, but the early warning point setting is based on the extracted buffer, in order to consume as little buffer as possible during the project execution process, so as to avoid the more allocated buffer being wasted as safe time.

Dynamic Monitoring

Each activity execution process is regarded as a buffer monitoring cycle, that is, a rolling period, and activity i is the monitoring point i. In this paper, the redistribution of buffer is mainly carried out according to the accumulative consumption of buffer in the rolling period of the project so as to improve the ability of replanning in the process of buffer monitoring. During the implementation of activities, some activities may consume much buffer, while others may consume less. In order to allocate the residual buffer of activities with less buffer consumption to the subsequent activities or the buffer used to offset the excessive consumption of some activities, literature [11] put forward the concept of accumulative project buffer (APB) and used accumulative buffer to control the project. When activity i ends, the cumulative buffer of this activity is shown in Formula (25.11).

$$APB_i = PB^{\prime}_i - PBA_i$$
(25.11)

where, \(APB_i\) is the accumulated buffer of activity i, and \(PBA_i\) is the buffer consumed during the actual execution of activity i.

Project cumulative buffer APB is shown in Formula (25.12).

$$APB = \mathop \sum \limits_{i = 1}^n APB_i = \mathop \sum \limits_{i = 1}^n (PB^{\prime}_i - PBA_i )$$
(25.12)

The project is dynamically monitored by setting a rolling period for the project. Whether to change the allocation buffer of each activity in the next rolling period is determined according to the accumulated buffer of the project, there are mainly the following two possible situations:

  1. (1)

    \(APB \ge 0\), that is, the completion of activities is good, and the project buffer plan does not need to be changed due to the change of the cumulative project buffer;

  2. (2)

    \(APB < 0\), in other words, if the activity is not well completed and delayed, the project buffer plan of the next rolling period shall be changed to share the negative value of the accumulated buffer of the project.

Dynamic Monitoring Steps

The dynamic buffer monitoring steps of this paper are as follows:

  1. Step 1:

    Determine the critical chain of the project before the project implementation;

  2. Step 2:

    Calculate the elastic coefficient of project activities;

  3. Step 3:

    Calculate the buffer that each activity is suitable for being extracted through the elastic coefficient, and accumulate it to get the project buffer;

  4. Step 4:

    Consider the impact of risk events to calculate the risk impact coefficient of each activity;

  5. Step 5:

    Based on the influence coefficient of activity risk, the buffer allocation weight is revised, and the buffer monitoring amount of each activity is obtained according to the revised weight.

  6. Step 6:

    Track the project and monitor it at the monitoring point i (activity i);

  7. Step 7:

    Check the buffer consumption:

    1. (1)

      If buffer consumption is below the warning point A, no action is required;

    2. (2)

      If buffer consumption is between warning point A and B, monitoring should be strengthened and plans should be made to deal with possible problems;

    3. (3)

      If buffer consumption is above the warning point B, check whether the project has been completed. If it has been completed, no action is required; if not, timely measures should be taken to prevent the project from being delayed;

  8. Step 8:

    Extract the remaining buffer at the monitoring point;

  9. Step 9:

    Incorporate the remaining buffer into the subsequent activity buffer (reduce if it is negative, add if it is positive);

  10. Step 10:

    Monitor the buffer consumption at the next monitoring point and repeat steps 6 to 9 until the project is completed.

Simulation Study

In order to verify the effectiveness of the proposed method in this paper, the buffer monitoring method is compared with the Static Buffer Monitoring Method (SBMM) and the Root Square Error Method (RSEM). The case selected in this paper has 10 activities in the critical chain, with a total planned duration of 168 days and a planned cost of 1,242,000 yuan. The project network diagram is shown in Fig. 25.1, the project activity duration and cost base data are shown in Table 25.1, and the project early completion bonus RP = 6000 yuan/day.

Fig. 25.1
A network of ten blocks where block 10 connects to P B, blocks 1 through 3 connect to H and F B, and blocks 5 through 7 connect to K and F B.

Critical chain project network diagram

Table 25.1 Basic data of critical chain project

The activity elastic coefficient and activity extracted buffer data calculated according to Formula (25.1)–(25.4) are shown in Table 25.2.

Table 25.2 Activity elastic coefficient and extracted buffer

According to Table 25.2, we can calculate the planned duration of the project is 168 days, of which the project duration is 124 days and the project buffer is 44 days. And the result calculated according to the RSEM is 30 days for the buffer and 84 days for the duration.

In this project, it is assumed that there are three risks for activity 1 and only one risk for the remaining activities. The identification of the project risk events can be determined and assessed based on historical data or using Delphi Method and Bayesian network method. Since the project has historical data to refer to, the uncertainty of the risk events for each activity of the project is estimated directly by the project staff based on historical data. The risk impact factor for each activity can be calculated from Formula (25.7), as shown in Table 25.3.

Table 25.3 Activity risk impact factor

The activity buffer allocation data calculated according to Formula (25.7)–(25.9) are shown in Table 25.4.

Table 25.4 Activity buffer allocation data

As can be seen from Table 25.4, the buffer extracted and the buffer allocated are not the same for each activity. It can be calculated that the buffer assigned to the green zone, yellow zone and red zone in the static buffer monitoring method are all 10 days each. While the relative buffer monitoring method divides the buffer into 3 parts as the completion rate changes, the green zone is divided by a straight line determined by (0, 15% × 30) and (100%, 75% × 30) points, and the red zone is divided by a straight line determined by (0, 30% × 30) and (100%, 90% × 30) points.

After obtaining the above basic data, 1000 simulations of the three buffer monitoring methods were conducted by Matlab, and the corresponding performance of the three buffer monitoring methods in terms of duration and cost were shown in Figs. 25.2 and 25.3.

Fig. 25.2
An area graph depicts the highs and lows of N E W, S B M M, and R B M M in a Simulation Times versus duration, in days, plane.

Contrast of duration

Fig. 25.3
An area graph depicts the highs and lows of N E W, S B M M, and R B M M in a Simulation Times versus Cost (in C N Y) plane.

Contrast of cost

From Figs. 25.2 and 25.3, it can be seen that the buffer monitoring method proposed in this paper has a greater advantage in terms of both duration and cost. The average duration of the SBMM is 148 days, the average duration of the RBMM is 142 days, and the average duration of the NEW buffer monitoring method is 128 days. The average cost of the SBMM is 1,537,000, the average cost of the RBMM is 1,484,000, and the average cost of the NEW buffer monitoring method is 1,325,000. The buffer management method proposed in this paper has obvious advantages in both duration and cost. The activity cost and early completion reward factors are considered in the buffer determination, and the activity risk factors are considered in the buffer allocation, which make the buffer extraction and allocation more reasonable. Combined with the setting of rolling period, the accumulative buffer can be reallocated in time, which effectively reduces the project duration and cost.

Conclusion

Based on the idea of critical chain, we propose an implementation plan for dynamic monitoring of project schedule considering activity risks. When extracting the project buffer, because the compression of activity duration will lead to the increase of activity cost, not all activities are suitable to be compressed to the shortest duration, the activity cost is compared with the reward of early completion, and the elastic coefficient of activity is calculated to determine the buffer size suitable for extraction of each activity. Due to the high risk and uncertainty of modern projects, we introduce activity risk into buffer allocation, comprehensively considers the compressed activity duration and activity risk coefficient, calculate the weight of comprehensive buffer allocation, and obtains the buffer size allocated for each activity. Dynamic monitoring is adopted in the process of buffer monitoring, which not only ensures the overall schedule of the project but also protects the execution of individual activities. The final simulation shows that the buffer management scheme not only reduces the project duration but also reduces the project cost, which proves the effectiveness of the buffer management scheme for project schedule monitoring.

In this paper, the buffer management method of critical chain project considering activity risk provides a more scientific and reasonable solution to the actual project schedule management problem. Although the proposed method has made some improvements on the existing buffer management method, the monitoring method in this paper still only focuses on the current buffer consumption at the monitoring point to make behavioral decisions, and does not analyze the subsequent buffer consumption trend. The future research will introduce the buffer prediction method to conduct comprehensive buffer monitoring.