TOC – Theory of Constraints, Critical Chain, and management of projects with floating objectives

Theory of constraints is based on idea that an organization is as strong as its weakest link. This comes from the critival chain theory.

Objectives:

 * Synergy of projects within a program.
 * Knowledge management and PPP management in a service system lifecycle.
 * Management of service using time cycles.
 * Lessons learnt from Interim Project point of view.

Definition of TOC
The Theory of Constraints is a management philosophy that focuses the resources of an organization on improving the performance of the constraint that directly affects the Profit and Loss. It is an approach to solve constraints and problems in a logical way by building a logic chart of the problem, finding its roots and developing steps to remove the root of the problem. TOC methods are used by managers and sales to improve the management and sales of their companies.

History
TOC origin is dated in year 1984 when Eliyahu M. Goldratt introduced this management philosophy in his book "The goal". This book intends to help organizations to achieve there goals. The real origin was in year 1999 when Goldratt combined his knowledge about "The goal" and "Critical chain". Even Goldratt is considered as a founder of TOC, there were others who used it 20 year before him.

Key assumptions
To be able to use TOC an organization has to be able to measure 3 major units


 * Throughput
 * Operational expense
 * Inventory

Those three has its own meaning. Throughpus is the rate by which a system is able to generate money with using sales. Inventory represents all the money invested into the organization's goods which are going to be sold. It means those are production costs. Oprerational expenses are all the money needed to turn inventory into throughput (including marketing, PR). Another major task comes with legal. Before a product or service is being sold, there are other consumptions which has to be solved. Those include safety and quality assurance, legal obligatory items.

Key elements
Constraint is anything that prevents a system to achieve its goal (or part of the goal). In TOC the basic assumption says that there is at least one constraint in the system and at most there are a few. There are two major types:


 * internal constraint is when the market demands more the the system is able to provide. If this is the case than the organization should follow five focusing steps to lower or remove the constraint.
 * external constraints is when the system is able to produce more than the market is able to accept. If this is the case the organization should focus on increasing the demand.

Typs of internal constraints:


 * 1) People - lack of skills limits the system, habits and mental models creates behaviour contraints
 * 2) Equipment - the way the equipment is using limits the ability to increase the production
 * 3) Policy - written or unwritten policy limits the production amount

Buffer serves as a mechanism that prevents througput against starvation. It means that buffer is mainly placed before the constraint. But buffer can be also placed behind the weak spot to prevent downstream failure to block the output. Therefore the buffer management is a crucial attribute of TOC, thus buffers are often vizualized in designing and monitoring systems with 3 types of color (red, yellow and green). Those represents the state of buffer.

Drum is the narrowest part of process which determines the rate of throughput. Since the drum prevents to use the process efficienciently and effectively, it has to be runnig for whole time without errors. Drum has to be secured against starvation.

Rope is a time period from the beginning of the process until it reaches the Drum. It has to be as long as needed to prevent overloading, but also not to long to cause starvation.

Plant type is an attribute that defines the way of processing data, materials or anything else in the process of creating througput. There are 4 main types which could be also combined:


 * I-plant: Material flows in a sequence, such as in an assembly line. The constraint here is the slowest operation on the line.
 * A-plant: The general flow is many-to-one (imagine one raw material and many sub-products converting into one final product). Main problem is hidden into synchronization of converging lines which has to supply the other lines in order to finalize some product.
 * V-plant: Is one-to-many flow type (imagine one raw material on input and many final products on output). The risk is hidden into a robbing of materials where one plant steal material to second plant. Therefore one plant can starve.
 * T-plant: The flow of T-plant is a combination of I-plant and others. First the flow starts with one line and than it splits into many. Because there are mostly several T-plants together which combines the outputs those are suffer by robbing and synchronization.

The five focusing steps
TOC is based on the idea that a rate of goal achievement by a goal-oriented system is limited at least by one constraint. The reason is simple, if there is nothing that has to be prevented in order to achieve a higher throughtput the system's throughput could be infinite. That is impossible in real-life systems.

To increase the throughput of the system (knowing the definition method for measuring that system), the following process is defined:


 * 1) Identify the system's constraint(s)
 * 2) Decide how to exploit the constraint(s)
 * 3) Subordinate everything else to previous step
 * 4) Elevate the system's contraint(s)
 * 5) If the previous steps removed a constraint go back to step 1, but do not allow "interia" to cause a constraint

Critical chain
It is a method of a project management focusing on resources which are necessary to execute the process. The Critical chain originates from a Critical Path Method (CPM). It is a logical sequence of tasks which are connected and when one task is delayed, the rest is delayed so. Critical chain plans a time for each task to be executed and with no buffer. Buffer is added at the end of each phase of the process afterwards. This solves the problem since the task is done in estimated time and if the delay appears, we count with it for whole phase, so the effect is minimal. To make the critical chain work, you need:


 * 1) Priority tasks has to be balanced (prevention agains starvation or overload).
 * 2) Multitasking is limited (normally multitasking of a resource extends execution time by 4 to 6 times).
 * 3) Resources are distributed equally.
 * 4) Resources are evaluated by task completition (not by time limit).

Project with floating objectives
Projects with floating objectives are mostly those which invents something new or innovative. The floating objective means that you do not know what has to be achieved until you will achieve it. It means that the project solution itself creates and showes what should be considered as deliverables. It means that it defines WHAT is it, HOW to achieve it, with WHOM, for HOW long and HOW MUCH it will cost. The floating objective means, that even when we think the objective is achieved we can find that there is something else that has to be done and the objective is not reached yet.

According to M. D. Rosenau in his book "Project management", the beginning starts in the mist. Than the objectives are achieved by going through phases and gates. It means that the project is splitted into several phases when each phase ends with a gate. Gate closes the phase which you could imagine as a project in the project. Gate serves as a decision-making mechanism that can stop and close the project in case the objectives could not be achieved or starts new phase if there is a possibility to succeed. First key product is the product itself and the second is the plan of next phase. It means that both, the end and the start are hidden in the mist since we do not know where we are starting and when where we will finish.

Synergy in services
We speak about synergy in services when we talk about a program. It means several projects where one project affect another project. Those could be connected by shared resources, goals or products. Commonly a success of one of the project does not mean success of the program. It is because from a prespective of byznys you need a success of whole program to meet the project triangle. Mutual connections represents limitation of program.

To manage the program you have to use strategic planning with double-level management architecture. This includes management of projects and management of a program (which is a project consisting of other projects).

Image: https://is.muni.cz/auth/do/fi/ssme/samostudium/systemy_v_souvis/blok03/rvv.jpg

To be able to manage portfolio you have to focus your attention on higher level. It means you have to focus not on each of the projects but on their mutual features (resources, connections, ...). To fulfill the project you have to form 3 teams:


 * 1) Steering comittee
 * 2) Support team
 * 3) Project Implementation team

Project Implementation team is a team of buyer (subscriber), which is formed for cooperation with a supplier. Those are people who communicates with the supplier because they are end users of the final product/service.

Support team consists from employees mainly of the supplier, who executes the project. Sometimes a byuer provides his stuff to cooperate on the solution.

Steering comitte is a high level competent body of the project which is in charge of approval of objectives and deliverables created by support team, attends a molding workshops, decides the plan by quality checks and handsover the project. It consists from high managers of the buyer, supplier. The reason is that when a problem occurs both sides are informed properly.

Knowledge management and PPP management in a service system lifecycle
???

Management of service using time cycles
On every project it is important to create a routines since each project consists of some activities which are executed on a regular basis. E. g. planning, forming, strategic management,... Basicaly you can image this regularity as a mill which rotates regurally for whole time of the project (converting grain into flour). The key to the sustainability of the project is the working mill in action. For a daily management you can check figure:

https://is.muni.cz/auth/do/fi/ssme/samostudium/systemy_v_souvis/blok03/pravidlenost.jpg

In case you talk about management of Project, program or portfolio you can choose a regularity by some time periods. Then each project should be devided into


 * stage - the biggest time period which is recognizable for deliverables (yearly)
 * iteration - smaller period, mostly 2 or 3 are in one stage (monthly)
 * phase - smaller period which are converted into iterations (weekly)