Buffering+plans

toc

Introduction
Projects inevitably carry uncertainty and for this reason, buffers are added to safeguard the project to avoid the outcome of the uncertainty. In critical chain scheduling,‍ there is a path and sequence of activities and iterations that are dependent on resources and rely on a logic of precedence  that needs to be followed in order for a project to be completed in the earliest time. In order to avoid delays in projects, ‍ we require buffers which perform a pivotal role in ensuring projects are not delayed.

 Buffers help protect the project from the impact of failure to meet the estimated schedule.For example failure to release a software as scheduled may mean total failure of the project or in this competitive world may mean the software is obsolete or beaten to the market by competitors. In practice you may be asked to commit to firm deadlines and functionality. Missing the deadline or delivering less than the defined functionality will damage the company's reputation.

Cohn (2006) is of the view that b uffers cover the risk posed by errors during Agile Estimating. A good example given by Cohn is a schedule for a trip to catch a plane. Uncertainties  in this case include the time to drive to the airport,.‍ In this case the departure time for the plane is fixed and wrong estimation of time results in missing the plane. Therefore in this case a buffer is necessary to overcome loss of time due to the highlighted uncertainties .

‍‍‍

Definition
A buffer can be defined as a boundary for inaccuracy around a project's estimate. This can be explained further as project that are characterised by a lot of uncertainties surrounding the delivery time and the requirements or user stories. In other to overcome estimation errors in time, allowances are added to activities and user stories are prioritised to enable early delivery and to focus on those features which the client or user considers to be essential or must have. These allowances or contingencies are known as project buffers.

Types of Buffers
 There are several types of buffers but the two common types are namely the feature buffer and the schedule buffer. On projects normally a combination of buffers are used.

<span style="font-family: Arial,Helvetica,sans-serif;"> **Feature buffers** - The creation of this type of buffers is triggered where meeting the requirements is the main concern and there is a recognition that some features may not be delivered. In general, feature buffers provides security to projects which carries uncertainty with regards to their features. <range type="comment" id="760770">‍‍This could be explained further by prioritisation of stories in Agile projects which <span style="font-family: Arial,Helvetica,sans-serif; font-size: 14px; line-height: 21px;">enables the stories of the product that is considered more important to be delivered first and if time permits, the not so important stories can be worked on later (Cohn, 2006).

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 14px;">Projects carried out following the Dynamic Systems Development Method (DSDM) groups the features into four parts; Must have, Should have, Could have and would not have. This division allows a maximum of 70% of the scheduled project effort to be directed to 'Must Have' needs which in turn enables feature buffers to be created with the 30% left. If the project is running behind schedule, some items in the feature buffer can be dropped as this will allow the project to meet its schedule.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">**Schedule buffers**- Schedule buffers offers security to projects in which uncertainty with regards to the schedule is involved. It is wise to move the activities buffers to one overall buffer at the end of the project to remove the impact of <range type="comment" id="253416">‍‍ [|Parkinson's Law and Student syndrome] ‍‍. ‍‍The w‍or‍‍‍‍‍‍‍‍‍‍k expands to fill the available time according to Parkinson's Law and students syndrome refers to works being done at the last possible moment resulting in failure of the plan <span style="font-family: Arial,Helvetica,sans-serif; font-size: 14px;">(Cohn, 2006).

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 14px; line-height: 21px;">**Resource buffers**;- resource buffers can be in the form of a budget to allow extra personnel to be added to the project to increase productivity in order to keep the project on track to achieve its objectives of being completed on time and budget. The resource buffer can also be known as the budget buffer or the personnel buffer where extra personnel is used to increase productivity.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 14px; line-height: 21px;">**Feeding Buffers**:- as shown in the figure below feeding buffers are used to protect the critical path. No delays should be allowed on the non critical paths on a project because this will impact on the critical path resulting in delays on the whole project.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;"><range type="comment" id="465801">‍‍ ‍‍

[[image:7bsp1018/Critical-Chain-Image_Buffer.png width="592" height="237" caption="Buffering Plans by ASTA Development"]]‍
<span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">The figure above shows the positioning of the buffers. The feeding buffer protects the critical path and the project buffer protects the project duration.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">Benefits of Buffering Plans

 * <span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">Buffering plans as a risk management technique helps to plan project far ahead in advance.
 * <span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">Buffering plans deals more with the overall estimate of the project instead of individual estimate for it to be more accurate.
 * <span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">Buffers helps to protect overall project deadlines <range type="comment" id="549194"><span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">‍‍by assessing individual stories and estimates <span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">‍‍.
 * <span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">B <range type="comment" id="287292"><span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">‍‍uffering plan allows the project team to know which tasks are deliverable <span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">‍‍.
 * <span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">Buffering plan allows the team members to structure their work and not be over committed. This helps reduce distractions whilst delivering iterations and supports the Lean Development Principles <range type="comment" id="899154"><span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">‍‍ <span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">‍‍which ensures an environment of high productivity.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">**Limitations of Buffering Plans**
<span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">In terms of working out or calculating the buffer using the mathematical formula as suggested by <span style="font-family: Arial,Helvetica,sans-serif; font-size: 14px;">(Cohn, 2006), It <span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">can sometimes give a wrong estimate in real life projects as the figures or data is based on notional figures. <span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">‍ <span style="font-family: Arial,Helvetica,sans-serif;"> Ordinal summation errors may occur because algebraic formulas are used to calculate buffers which tend to be statistically biased. <span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">If the project has less than ten items it should not be planned with a buffer. The project buffer should be at least 20% of the overall project duration. A small buffer will not be adequate to protect the overall project.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">Conclusion
<span style="font-family: Arial,Helvetica,sans-serif; font-size: 110%;">In projects there is always going to be a high amount of uncertainty and normally it is not fully illustrated in the scheduling and the deadlines that the project team creates. At the beginning of projects when there is less clarity of information, then uncertainty is a major issue thus, actions should be taken when estimating the length of the project.The most used buffering plans are feature buffers and schedule buffers. A feature buffer involves arranging the requirements of products which will then set out which features will or may not be delivered. A schedule buffer is formed by comprising in the schedule an amount of time and effort that imitates the uncertainty that is essential in a teams’ size.Therefore a project should have a buffering plan that prevents feature uncertainty with a feature buffer and also prevent against schedule uncertainty by having a schedule buffer in place.