Focus-&-Finish: The necessary and sufficient solution to delivering projects on-time
Realization Technologies, Inc.
Improved flow for faster projects
Abstract:?There are some well-known best practices for managing and controlling time and cost overrun in projects – good planning (scope, cost, detailed schedules), good resource estimation, good risk mitigation, minute tracking, stringent monitoring, and transparent visibility. These are, very obviously, necessary for successful project execution.
And they are also sufficient considering real-world uncertainties like scope modifications (requirements change, a new scope is discovered, rework happens) and, day-to-day delays, that plague us throughout the duration of execution.
But add the reality of facing resource shortages that we also frequently encounter, and these are no longer sufficient to guarantee efficiency, predictability or control.
Over the last few articles, we have highlighted the difficulties of handling resource shortages in projects –
a.??????Whenever shortages are faced the outcome is unknown and has a wide range
b.??????There is no known way to prioritize resources efficiently
c.???????The impact of day-to-delays and changes gets amplified unpredictably
We have highlighted that the project management methods (e.g. Critical Path, Resource Constrained Project Scheduling etc.) known to us are mostly detrimental for practical application and there are no known ways to avoid the many possible bad outcomes that applying these methods can lead to.
In order to find a solution, it is important to accept the problem that requires solving – We have to execute a given scope without violating technical sequences, within a targeted duration, within a fixed budget, without compromising quality, while the very scope will keep changing, all the duration estimates will keep going wrong and resource shortages (money, material, decision-making capacity, expert capacity, issue resolution capacity, coordination capacity, direct resource capacity etc.) are going to appear unpredictably but relentlessly.?
Therefore, it is quite expected that, during project execution, we are going to be forced to keep deviating from the plan. And all we can do to is keep prioritizing the scope, make efficient use of whatever resources we have and find ways to recover delays and keep clawing back.
In such a reality, a sufficient solution for handling resource shortages must be available:
a.??????We must have a simple prioritization rule that all stake-holders can follow uniformly
b.??????The rule has to be efficient (the prioritization has to ensure best possible outcomes)
c.???????The rule has to be robust (it has to remain efficient even when changes and delays happen on top)
d.??????It should have reliable predictability of outcome
In this article, we are going to propose such a solution.
What we will show is that dealing with the project reality is actually very simple. The formula for success in project execution is simply to have ample resources. Since that is not really a practical solution, barring a few exceptional cases, the next best thing is to divide it in to sub-projects and ensuring maximum resource loading on as many of them as possible, inside the larger project.
But, again ‘sub-project’ is a vague term. Choosing any sub-project does not help. If we have to define a definite mechanism for handling the reality, we cannot leave this choice open to interpretation.
In this article, we will propose a repeatable, reproducible grammar for defining such special sub-projects –?Streams, and, batches for concentrating available resources –?Focus-&-Finish?batches, and derive an overall solution that meets all the sufficiency criteria listed above.?We are proposing that the key solution to our project woes lies in the modelling of the project, not in some perfect run-time optimization technique (ad-hoc or software driven) or data accuracy/ availability. We have used simulations to test the model and have shared the findings at the end.
We showed in the earlier articles (here,?here?and?here) that the Critical Path method or ad-hoc prioritization cannot possibly meet the above criteria, because the combination of resource shortages and integration points render them inefficient and unpredictable.
We also observed (in?this?article) that near-optimal outcomes are generated when resource shortages are able to bypass integration points throughout the project, except right at the very end.?
And hence, we concluded that if we have to meet the criteria listed above, we need to find a way to plan and devise a prioritization rule that can guarantee this even when there is a shortage at the project level.
A new approach for planning and executing projects for the real world
To solve this problem, instead of banging our heads against the wall trying to find an optimization solution, we are instead going to propose a modeling solution that allows us to avoid the problem altogether. And this modelling solution requires the new concepts of Streams and Focus-&-Finish Batches, instead of paths/ chains and tasks.
We will first introduce a new concept of “Streams” to replace traditional task sequences e.g. paths/ chains.
A Stream is more than a mere sequence of tasks. It can be thought of as a collection of paths, encapsulating all Integration points amongst them, that runs right up to the final integration of the project, independent of other Streams. Look at the more complicated example below:
Once the streams have been identified, the strategy for execution is pretty simple – Whenever there is a resource shortage, make sure the available resources are used to load individual streams. Streams that cannot be loaded have to wait. This simple strategy ensures the outcome that we seek – integration points will never face resource shortages.
In essence, the streams define special sub-projects. And the simplest and the best way to control the project timelines is to make sure that we load resources on and ensure the fastest possible progress in only as many streams as we can?afford, given the available resources at our disposal.
To ensure predictability with respect to which stream(s) should be chosen, if and when shortages are faced (we do not know where shortages will strike and when), we obviously will need to define stream priorities that are uniform across stake-holders.
Given that shortages require us to concentrate available resources on priority streams, we must therefore, also find a way to ensure that once deployed, resources work for the shortest possible time on a stream and can be available for deployment in the next as quickly as possible.
To ensure that, we simplify the streams further by defining a sequence of?Focus-&-Finish batches of work inside each. Each F&F batch defines the resources to concentrate and the scope to be executed before they can be deployed to the next priority stream.
We have thus defined the grammar for creating a simple project network (in the example, a network of 13 batches vs. a network of 29 tasks, 4 streams vs 16 paths) – A single prioritization mechanism guaranteeing predictable and efficient (near optimal/ optimal) outcomes, even in the face of resource shortages, changes and day-to-day delays.?
An innovation in project planning networks: Key to applying Focus-&-Finish
Applying this method requires a new network definition for planning projects – traditional project networks based on tasks and technical dependencies cannot be used for modelling.
We need to introduce an alternate network type for modeling project plans – a 2-tier project network (Figure 4).
The top tier represents the stream and batches. And, prioritization (manual or Critical Path) needs to happen at this level.
Each F&F batch, in the lower tier, houses a local, detailed task level network. We can run Critical Path locally inside each batch but not across the task-level network (as in Figure 1).
When in execution, task priorities need to be derived from the stream – all tasks belonging to a batch will have the same priority to ensure resource concentration around all the integration points residing inside the stream.?
Testing the model
We explained the theoretical basis for this new way of project modelling and execution and the expectation is that this simpler plan is a much better tool for minimizing time and cost overruns in projects.
To test our hypothesis, we have run simulations to test whether the expected benefits can be demonstrated.
We have used the following techniques to mimic prioritization decisions during project execution:
领英推荐
To test the performance of the different approaches we have tested them against the following cases:
The conclusions of the simulation results are presented below:
When there is no resource shortage, prioritization is irrelevant
1.??????There is no difference in the outcomes when only task durations are increased
The impact of resource shortages can be as damaging as the impact of changes and day-to-day delays
2.??????Resource shortages cause as much damage as increase in task durations, there is a wide range of possible outcomes in both?Random?and?Planned Start
When resource shortages happen, F&F performs better on all parameters
?i ?Average performance
3.??????When only resource shortages occur, average performance of?Planned Start?is better than?Random. Average performance of?F&F?is at least twice as better than?Planned Start?consistently
4.??????Higher the shortage, better the performance of?F&F
?ii.???Predictability of outcome
5.??????Random?produces many outcomes over the widest range,?Planned Start?produces many outcomes over a wide but smaller range than?Random,?F&F?produces one definite outcome
?iii.?Efficiency of outcome
6.??????Random?produces a very small percentage of highly optimal outcomes; the best outcomes of?Planned Start?are worse than that of?Random;?F&F?solutions are near or better than best solutions found by?Random
?iv.?Robustness of outcome (how resilient is the solution to task delays)
7.??????Even when task durations increase in addition to resource shortages, average performances demonstrate the same trend as 3
8.??????The best solutions of?F&F?are near or better than the best solutions of?Random; the best solutions of?Planned Start?are worse than both
9.??????Because of variations in task durations, all 3 generate a wide range of solutions, but?F&F?solutions are able to avoid the worst outcomes of the other 2 and are confined to an optimal zone.
Conclusions
We have presented a simple solution for executing projects that allows us to control the timelines in the real world. It is not an optimization solution for projects – it does not promise a theoretically optimal answer to a complex mathematical problem. Instead, it provides a modelling solution involving Streams, Focus-&-Finish batches and a 2-Tier planning network, that guarantees a near-optimal outcome every time we execute a project in the real-world and is easy to plan, monitor and control.
Using these, it ensures that whatever be the real life complexities that emerge, there is a simple practical approach that can be implemented in project organizations and can ensure an outcome that is pretty close to the best that could possibly happen.
While planning, all it requires is to divide the entire project, however large and complex it might be, in to independent Streams (a special type of sub-project) that are independent from each other.
And the only efficient, predictable and robust way of handling resource shortages, changes and day-to-day delays are to provide ample resources to as many streams as possible and holding the rest.
Other useful aspects of this approach are that
a.??????Prioritization of Streams is an easy concept in execution. There can be confusion over how to prioritize. The good news is that prioritization can follow the Critical Path logic or can also be fixed manually based on the project need. There is not much difference in outcomes whichever way the streams are prioritized
b.??????Stability of this structure is key to creating contracts with external parties, preventing priority switching during execution, enabling a single version of truth and allowing digitization of the project eco-system.
There are a few important considerations that should also be highlighted.
This way of planning does not in any way dilute the importance of best practices like good scoping, validation of durations, resource estimation, risk mitigation etc. during planning or detailed tracking, review processes, full kitting etc. during execution. Instead, it enhances the effectiveness of these practices and makes them more relevant.
It also does not dilute the ongoing optimization efforts that good managers on the ground deploy from time to time. Again, it provides a stable starting solution and a guiding framework on top of which these efforts can become more effective.
Some people often point out that it is already well accepted that a high-level plan is a more effective tool for better project performances than detailed plans. Some also point out that the staggering of the green batches that we had shown in Figure 5 is what Critical Chain has already proposed.
It is important to understand that the definition of a Stream is by no means just ‘high-level’. The term ‘High-level’ is a vague description for a plan.?If we can’t define how ‘high’ it should be, or, what should be the logic used to determine a high-level batch, it is open to interpretation. Any high-level plan cannot prevent the interplay of resource shortages and integration points during execution.
The second problem is even having the right high-level plan is not foolproof enough, in order to execute it we must have a way to define the detailed scope inside the high-level tasks. Again, a 2-Tier planning network definition is necessary for doing that – the prevalent Level 1, Level 2, Level 3 schedules that are generated in practice today, provide no means to work and monitor around the high-level plan once the project goes in to execution and real-world disturbances are faced.
As far as Critical Chain is concerned, it has introduced the concepts of multitasking, staggering and WIP control and highlighted the risk of integration points. It has described how to find the Critical Chain and has proposed the idea of subordinating all other resources to the critical resource. A combination of all these ideas, in special cases, could lead to the same solution as the F&F solution proposed here, especially in case of a multi-project environment.
However, the exact solution is quite open to interpretation. Even when all of its solution elements are being complied with, it is still open to possibilities of resource shortages at integration points. Especially when it comes to large, complex single projects, where resource shortages and constraints cannot be ascertained from before and different resources are activated at different points in time, it is very difficult to apply the concepts without knowing the Streams.
E.g. The ‘staggering’ of work for the green resources in Figure 5, could have been done in many ways – without the definition of streams and F&F batches, it is not possible to know HOW the staggering has to be done.
`Look at the examples we had shown in earlier articles. In none of the cases are individual resource groups ‘Multitasking’. The work has automatically gotten staggered for each individual resource type. Yet, this does not stop the delay multiplication due to the combination of resource shortages and integration points. All 3 cases shown here, are CCPM compliant. The last case is also the Stream-based solution.
Without defining what Streams are, Staggering, Multitasking, WIP control are terms that are open to interpretation. Without defining Focus-&-Finish batches, constituents of a Stream can easily get separated during execution.
Also, when resource availability is something that is discovered along the way, there is really no basis for deciding a WIP limit that Critical Chain postulates.
However, once Streams and F&F batches have been defined, WIP control and Staggering are natural outcomes of the shortages that we might facing.
Again, we would argue that once we have applied the planning logic proposed in this article, it only strengthens the Critical Chain concepts. Concepts of Full Kitting, Buffering are very effective means for managing timelines and mitigating risks, and, can become immensely valuable when applied on top of the F&F Batch level plan (Figure 4).
To summarize, the method that has been highlighted here does not undermine the industry best practices in any way – be it traditional techniques, IT-based enhancements or new management philosophies like Critical Chain or Agile etc. techniques. It provides the framework on top of which each of these can become truly effective in managing complex projects.?
For previous articles in the series, Visit - https://lnkd.in/dCtUsrKK
Author:?Sourav Basu, Director, India Business Operations at Realization Technologies
Chartered Engineer I Professor of Practice I Advisor I Hydropower I PSP I Water I Tunnel I Cavern I Dam
1 年MS Project is one of the pioneer project management tool for decades when people were making PERT -CPM mannuallly in drawing charts . One need to be expert in construction to make use of the all features of the softwere or can use it as per their need. But surely never, it can be bulldozed by lucrative vissual by selling old wine in new bottle. The only thing what can be done is automation of the inputs and visualisation by BIM technology.
Site-incharge in Hydrogen Gas Plant(Project and O&M) at Shield Technologies.
1 年Excellent knowledge..