TOC – Critical chain J.Skorkovský ESF-MU, KPH TOC concisely I (see PWP presentation about TOC) • • •origin: Eliahu Moshe Goldratt, Jerusalem •cost world<->throughput world •analogy weight of the chain – solidity of the chain •how to find a bottleneck? •tools of TOC – tree structures •Five TOC steps •CRT – EC – TT – PT – FRT meaning: •Current Reality Tree - Evaporating Cloud Tree– Transition Tree - • - Prerequisite Tree – Future Reality Tree A modest repetition of TOC, because the theory of the critical chain is built on this theory TOC concisely I (see PWP presentation about TOC) •bottleneck in the project management is a critical path •finding (assessment) of bottleneck is not easy and often it is not explicit (uncompromising) •everybody knows something about TOC and nobody knows how to implement it to the real world- and this is again another bottleneck (tendon of Achilles from the heel to the scruff) • TOC-five steps (revision) •Five steps process: • Step 0. Identify the Goal of the System/Organization Step 0.5 Establish a way to measure progress to Goal • •Step 1. Identify the system’s constraint. •Step 2. Exploit the system’s constraint. •Step 3. Subordinate everything else to the above decision. •Step 4. Elevate the system’s constraint. •Step 5. If a constraint is broken (that is, relieved or improved), go back to Step 1. But don’t allow inertia to become a constraint. • Linear image of the project •activities – abscissas – Gantt graph •constantly changing conditions (Parkinson low, Murphy low, Student syndrome, customer changes - „fancies “,“caprices“.. …. ), • • Solvina z Austrálie Trouble Trouble Ajtík z Autsralie 20020416 Parkinson´s law •Parkinson's Law is the old adage that work expands to fill the time allotted. Put simply, the amount of work required adjusts (usually increasing) to the time available for its completion. The term was first coined by Cyril Northcote Parkinson Parkinson´s laws •Work complicates to fill the available time •The demand upon a resource tends to expand to match the supply of the resource (If the price is zero). The reverse is not true. • Parallel image of the project PlannerOne Scheduler PlannerOne Resource Planner Project and its budget •price of the whole project (see MS Dynamics NAV next slide) •project length (time) •project stages and length of each activity •assigned resources to every activity and their capacities (time per defined period) •time reserves (buffers-time reserves) and their estimation •unfavourable influences (see Murphy´s lows - http://murphy.euweb.cz, etc.) •additional activities (unexpected costs) • • • • Projects and MS Dynamics NAV Projects and MS Dynamics NAV List o tasks and related costs (scheduled and used) Schedule :The planning line contains expected usage for the job that will not be invoiced to the customer. You use this option if the costumer will be invoiced from a different planning line (of type Contract or Both Schedule or Contract), or if the expected usage for this planning line is not chargeable. . Contract :The planning line specifies an amount that should be invoiced to the customer, but no usage relates to the line. You use this option if no schedule of usage has been planned for the job, or if the expected usage for the job has been specified on different planning lines (of type Schedule). Projects and MS Dynamics NAV Resource and assigned capacitiy Selected Murphy´s laws •If your attack is going well, you have walked into an ambush (trap) •Planner is alerted about modification of the plan exactly in the moment, when the plan is finally adjusted •To carry out n+1 trivialities you need two times more time than time necessary to carry out n trivialities (law 99 %) •If anything can go wrong, it will •Any given program, when running, is obsolete •No matter how many resources you have, it is never enough • Resources and orders Matrix structure of multi-project environment – responsibility of project managers and responsibility of department managers are in conflict time capacity Order 1=O1 Order 2 =O2 Project manager 1 (manages O2 Project manager 2 (manages O1) Chief 1 Chief 2 overload 0789209039 Probability– median an element of statistical file, which is after sorting in the middle .Median of the set (1,5,2,2,1) is 2 5 min 15min 45min 100 „5-miniutes meeting happened. How many times it took 5 minutes only ? Variability of the real time assigned to activity Colleague ask for a quick rendez-vous: „Do not worry, it will take maximum 5 minutes!“. How long it takes on average? Partial time of any activity in the project Probability of finishing tasks A to E in time is 50%. (50*50*….*50=3,125 %) What is a probability, that task F will start in time ? A B C D E F 50% 3% 50% 50% 50% 50% How the timely finishing of the tasks A,B,C and D will influence the integration point ? a)saving are fully wasted b)delay in one task will be immediately transferred to the next project task (activity) see +10 -2 -5 -1 -7 +10 +10 Project environment is very complicated because of integration linkages and their dependencies Project environment is very complicated because of integration linkages and their dependencies G G G B B B In order to start B in the upper branch, you have to finish G and also B in the lower branch. The probability, that B start in time is 50 % worse, than it was shown on the previous slide. The project must be protected against influences of breakdowns (troubles) activity 1 activity 2 activity 3 B B B B = buffer Standard estimation with protecting buffers for every activity activity 1 activity 2 activity 3 buffer 1st step : every activity is shorten to 50 % of its original time size. 2nd step : critical path buffer at the end of the project will have size of 50 % of the total sum of saved time created by shortening all partial activities istockphoto_245312-steam-train-buffer-close-up Simplified scenario CPM and CCPM Task1 Implicit Buffer 1 Task 2 Saved time Implicit Buffer 2 Task1 Task 2 Explicit Buffer Explicit-directly specified, opened Implicit= hidden, internally defined, indirect CPM = Critical Path Method CCPM = Critical Chain Project Methodology EC and project management (EC=evaporating cloud) Critical path, adjoining branches of the project and adjoining buffers (AB) Project buffer Critical path activity X activity Y AB Adjoining project branch Buffer serves as a safety tool to accumulate reasons of expected and unexpected delays activity 1 activity 2 activity 3 Critical Path (CP) • Critical path is defined as the longest way (meaning time) from the starting point of the project graph to the ending point. • Every project has at least one critical path The rules of Critical Path: • Every delayed task on CP will essentially delay the whole project • • Truncation of duration of any task on CP will shorten whole project Critical Path (CP) •Critical Path Method, abbreviated CPM, or Critical Path Analysis, is a mathematically based algorithm for scheduling a set of project activities. It is an important tool for effective project management. Critical Path (CP) Milestones Activity Critical Path (CP) Building a CP diagram 1 Critical Path (CP) Building a CP diagram 2 Critical Path (CP) Building a CP diagram 3 Critical Path (CP) Building a diagram 4 – calculating the FORWARD PASS Early Starts and Early Finishes dates are calculated by means of Forward Pass ES EF 13-7=6 16=7+6+3 Integration point. B had to start 7 time units later !! Critical Path (CP) Building a diagram 5 – calculating the BACKWARD PASS Late Starts and Late Finishes dates are calculated by means of Backward Pass LS LF 18-2=16 16-3=13 13-3=10 13-2=11 10-3=7 16-3=13 13-3=10 Difference Forward-Backward : you can start 7 minutes later and the time of the project (duration) is the same Planüberhang, Slip, Scivolo, Regresso, Загрузочный περίοδοι απραξίας Critical Path (CP) Building a diagram 6 – calculating the FLOAT(SLACK)/CP Free Float (Slack): Amount of time a single task can be delayed without delaying the early start of any successor task =LS-ES or LF-EF Slack=Float Proper description (Home study) :Slack or Float provide flexibility in the project schedule. When leveraged properly, project managers can shift activities and resources to meet the project objectives and priorities. It is the amount of time an activity can be delayed without impacting other activities or the project end date and changes over the course of the project implementation. Activity 1 Due Date Planner SW (calculated) Earliest Start Date Today Activity 2 Activity 3 Activity 1 Activity 2 Activity 3 Activity 1 Activity 2 Activity 3 Activity 1 Activity 2 Activity 3 Critical Path (CP) •Project Planning and control. •Time-cost trade-offs. •Cost-benefit analysis. • Reducing risk. CPM is helpful in : Critical Path (CP) Limitation of CPM : •Does not consider resource capacities. •Less efficient use of buffer time. •Less focus on non critical tasks that can cause risk. •Based on only deterministic task duration. •Critical Path can change during execution. Multi-project Management w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 w12 w13 w14 DAP Project 1 12 Project 2 12 Project 3 12 36 K1 K2 K3 w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 w12 DAP Project 1 6 Project 2 6 Project 3 6 18 Bad multitasking causes, that one project will be significantly longer and no other project will be shorter Multitasking characterization •people always overestimate the length of their tasks •salesman offers impracticable terms (dates) •The fight for reserves (capacities) causes, that all saved time is fully wasted (Student´s syndrome) •Reserves (if any) are used badly !!!!!! •Bad use of reserves causes lack of transparent assignment •Non transparent priorities are parents of bad multitasking •Bad multitasking causes longer duration of all activities (tasks) and thus all the projects • CP definition (more in detail) Critical path is defined as the longest way (meaning time) from the starting point of the project graph to the ending point Critical path represents technological dependencies and given times of every task on Critical path inclusive of necessary condition for fulfilment of foregoing tasks (activities) framed by integration points. Critical Chain Task Resource and capacities Contemplation I. Computing power Contemplation II. E-mails Parallel telephoning Parallel problem solving Contemplation III. Is this the goal of my lifelong efforts? Maybe not …. I guess I reached another peak¨… Critical chain definition • In TOC the Critical chain is defined as the longest way (meaning time) from the starting point of the project graph (Gantt) to the ending point which takes into account technological dependencies as well as time of the tasks and moreover, capacities of assigned resources. • With infinite capacities of resources you can consider Critical path=Critical chain Multi-project management and critical resources (CCR) used in more that one project branch X X X X AB AB AB AB Project buffer X Disadvantageous variant Critical chain Critical path CCR = Capacity Constrained Resource = X Multi-project management and critical resources (CCR) used in more that one project branch X X X X AB AB AB AB X After transformation of activities Project buffer Critical chain Project management based on remainimg time in buffers – Buffer Management •Buffers are used for timely warning and that is to say predicting and avoiding future problems related to project deadlines (milestones) • •It is also used as a guideline for corrective actions Basic metrics showing the project status •The partial size of Critical chain (CC) fulfilled in days (in %) •How much of buffer size was used to fulfil above mentioned partial size of CC ? •Trend of project (buffer consumption graph- see next slide) •Consumption of the financial buffer •Priorities – bigger buffer penetration- bigger priority •Adjoining branches have always lower priorities •It is not allowed to create bad multitasking • Trends of the project % use of the buffer % consumption of the critical chain Dangerous zone Warning zone Safety zone peril print_guardian_angel_watching_over_children_bridge_litho pompier_009 Trend of the project advancement – (another angle of view) 0 % 100 % 100 % Time remaining till the end of the project 0 % OK Action plan Action Resource: DP R.Jurka (2006); taken from LEACH, L., P. (2004), s. 12. Planning - principles •We are working with plan , which takes into account different times of tasks : •- start of the tasks are changed based on termination of preceding tasks - you have to react in project in such a way , that handover is done as a baton pass during races A1 B1 C1 D1 B Buffer Plan with sharp deadlines with buffers 50% (2+3+3=8 8+4=12) 2 4 6 8 10 Planned start 12 Critical chain completion 8 days 0 100% 100% Resource MPM systems Buffer Planning - principles •A1 did not started yet , because this A1 resource is still working on another order (task), which may be part of another project •B1 already started an for completion will need another two days A1 C1 D1 r 2 4 6 8 10 Planned start 12 B1 0 100% 100% Resource MPM systems Plan with sharp deadlines with buffers 50% (2+3+3=8 8+4=12) Critical chain completion 8 days 1 Plan 2nd day after start •A1 started and will be finished (completed) tomorrow. •B1 will be finished (completed) tomorrow A1 C1 D1 r B1 0 100% 100% 2 4 6 8 10 Planned start Plan with sharp deadlines with buffers 50% (2+3+3=8 8+4=12) Critical chain completion 8 days Buffer 12 Resource MPM systems Plan 3rd day after start •A1 despite all efforts resource A1 needs another day to complete. •B1 has completed his work with 2 days delay A1 C1 D1 r B1 0 100% 100% Plan with sharp deadlines with buffers 50% (2+3+3=8 8+4=12) Planned start 2 4 6 8 10 Critical chain completion 8 days 12 3 Buffer Resource MPM systems Plan 6 day after start •A1 completed his task with 2 days delay •B1 completed his task with 2 days delay •C1 completed his task 1 day earlier than expected (planned) •D1 will start to work tomorrow A1 C1 D1 r B1 0 100% 100% Plan with sharp deadlines with buffers 50% (2+3+3=8 8+4=12) Planned start Critical chain completion 8 days 2 4 6 8 10 12 Buffer Plan 8 day after start •A1 completed his task with 2 days delay •B1 completed his task with 2 days delay •C1 completed his task 1 day earlier than expected (planned) •D1 needs one day more to complete A1 C1 D1 r B1 0 100% 100% Plan with sharp deadlines with buffers 50% (2+3+3=8 8+4=12) Planned start Critical chain completion 8 days 2 4 6 8 10 12 Buffer rezerva Plan 11 day after start •A1 completed his task with 2 days delay •B1 completed his task with 2 days delay •C1 completed his task 1 day earlier than expected (planned) •D1 completed his task with 2 days delay A1 C1 D1 r 0 B1 Plan with sharp deadlines with buffers 50% (2+3+3=8 8+4=12) Planned start 100% 100% Critical chain completion 8 days 2 4 6 8 10 12 11 https://www.youtube.com/watch?v=4ARI1qIG1vA Example of using real SW package to control project by CCPM methodology Clear way to setup and control priorities. Setup of priorities of partial tasks based on assigned reserves. Do as good as you can, but only where it is needed reserves Project Quick, resources A-E and activities X,Z,X,W, and V Resource and activity Activity=Task A-Y Median of the required time 10 days You can say, that 50 % of any activities finish earlier, and other 50 % will be delayed, meaning, that 10 days represents 50 % of the estimated time for chosen activity. Project managers decided, that activity ends if 90 % of estimated time will be consumed. It means, that they add a time buffer of 8 days (for the safety reasons). 10 d= 50%, 20d=100%, 2d=10%, 20d-2d=18d, 18d-10d=8days A-Y B-Z C-X D-W E-V 5 x 10 days=50 days (90 %) Time distribution Time 10 days 18 days Five activities (tasks) and applied modifications •If we consider for every activity time buffer 8 days we will get : A-Y B-Z C-X D-W E-V 5 x 10 days= 50 days A-Y 8 B-Z 8 C-X 8 D-W 8 E-V 8 5 x 18 days= 5 x (10+8)=90 days Vložte obrázek některého z významných geografických úkazů země. Five activities and modifications (added buffers) and four types of troubles A-Y 8 B-Z 8 C-X 8 D-W 8 E-V 8 A-Y B-Z C-X D-W E-V Delayed „reporting“ We wait for resource D (even if C finished earlier) Parkinson Real delay No one trouble causes project delay taking into consideration planned delivery date (agreed date of the project). Dissipation of acquired time reserves was caused by company strategy saying strictly stick to the planned project schedule (example of rigid management) Five projects after modification (buffers united to one and placed to the end of the project) A-Y B-Z C-X D-W E-V 8 8 8 8 8 A-Y B-Z C-X D-W Parkinson Little bit longer than 20 days median but shorter than 18 days Earlier end of activity A 8 8 8 8 8 = CPB=current project buffer = 40 days 8 8 4 = new buffer = 50 % out of CPB, which makes CPB/2 E-V Critical path- Critical chain START Activity V 14 days, resource A Activity W 6 days, resource B Activity X 6 days, resource C Activity Y 10 days, resource A Activity Z 4 days, resource D END Critical path Critical Chain Project is considered as successful if is finished in expected time and financial budget is not exceeded Critical chain with buffers START Activity V 7 days=14/2, RES A Activity W 3=6/2 days, RES B Activity X 3=6/2 days, RES C Activity Y 5=10/2 days, RES A Activity Z 2=4/2 days, RES D END > Adjoining buffer 1,5 days > Project buffer 7 days 7=(7+5+2)/2 Length of the Critical Chain (white line): 7+5+2+7=21 and originally it was all in all 28 days > Adjoining buffer 1,5 days Project Buffer (10) Buffer consumption Activity A(10) Activity B(10) Project Buffer (10) Activity A(5+8) Activity B(10) Buffer penetration = 3 days 10=(10+10)/2 Rate of penetration is used to assign priorities to the partial activities Project Buffer 2 Priorities assigned to resources •If one resource have (red A) to be assigned to two activities starting in the same moment so the first activity which will start is the one belonging to the project with bigger project buffer penetration. •If none of all project buffers were penetrated with previous activities, so the first starts this activity which belongs to the critical chain. A 1 AB 1 AB 2 A 2 A2 starts firstly because PB 2 is partially consumed (penetrated) AB-Adjoining Buffer PB-Project Buffer Project Buffer 1 Priorities assigned to resources A 1 Project Buffer 1 AB 1 AB 3 A 2 A 2 DFB 3 AB 2 Critical chain This activity (A1) starts first because it is a part of the Critical chain and Project Buffer 1 is penetrated AB-Adjoining Buffer PB-Project Buffer Project Buffer 2 Main benefits of the Critical Chain (CC) usage •Every single project ends significantly earlier, than projects where other project management methods than CC were applied • •Total time needed to end more project than one is markedly shorter • •Promised delivery times are fulfilled with higher rate of credibility • •You will have more free capacity of all used resources (Home study) Main benefits of the Critical Chain (CC) usage •Better initial estimation about project timing and thus bore accurate planning • •During starting of the projects you did not meet any problem taking into consideration drum resource • •Decrease of unfavourable effects such as Student syndrome, Murphy attacks and impacts of Parkinson´s laws by redeployment and integration of all buffers to one and only one project buffer at the end of the project • •Utilization of benefits caused by earlier ended activities • •Use of reporting system which provides you with valuable information of buffer penetration , the extent of time reserves and thus better helping system for assigning priorities (Home study) project-manager-attributes Waterfall methodology–Big design up front, milestones,..no iterations !! It is based on prediction Agile methodology– Scrum (Sprints,..)- iterations approach Critical Chain- based on TOC – (see https://www.youtube.com/watch?v=mpc_FdAt75A ) Prince2 -Projects IN Controlled Environments (rolling wave planning) Lean management Different approaches to Project Management Waterfall - predictive approach Clients may not know exactly what their requirements are before they see working software and so change their requirements, leading to redesign, redevelopment, and retesting, and increased costs One of the differences between agile software development methods and waterfall is the approach to quality and testing. In the waterfall model, there is always a separate testing phase after a build phase; however, in agile software development (see next slide) testing is completed in the same iteration as programming Agile PM approach – for instance SCRUM Scrum is an iterative and incremental agile SW development framework for managing product development A key principle of Scrum is the dual recognition that customers will change their minds about what they want or need (often called requirements volatility) and that there will be unpredictable challenges for which a predictive or planned approach is not suited Sprint->Stage Scrum ->Iteration, daily work SCRUM The seven Prince2 principles are: 1. Continued Business Justification 2. Learn from Experience 3. Defined Roles and Responsibilities 4. Manage by Stages 5. Manage by Exception 7.Focus on Products 8.Tailor to Suit the Project Environment 7. 7. Not suitable for SW project e.g. SRUM, based on best practice, use WBS,roles,… suitable for corporate projects, • Some slides to complete presentation – final review 11-80 Critical Chain Solutions John Feeder Buffer Feeder Buffer Feeder Buffer ProjectBuffer John John Drum principleDrum – system-wide constraint that sets the beat for the firm’s throughput Drum prinicple- CCPM) (CC=Critical chain) Drum – system wide constraint, that sets the beat for the firm’s throughput Drum – person, department, policy, resource Capacity Constraint Buffer (CCB) – safety margin between projects Drum buffer – extra safety before the constraint (DB) Project 1 buffer CCB Project 2 buffer Project 1 buffer DB 1. Project management and Drum (Capacity Constraint resource) - principle of schedule projects based on drums 1. Identify the drum 2. Exploit the drum - Prepare a project schedule for ech project - Determine priority for the drum - Create the drum schedule 3. Subordinate the project schedules (next slide) 4. Elevate the capacity of the drum 5. Go back to step 2 Schedule project based on drum->Designate CC-> ->Insert buffers capacity constraint buffers->Resolve conflicts ->Insert DB Difference Between Buffer and Float (or Slack) - (home study) People often get confused between buffer and float. They find these two terms similar; however, they are not. The following are a few differences between the float and buffer: •Float or slack is a critical path phenomenon, while buffer blongs to the critical chain. • •A float is a difference between the duration of the critical path and the non-critical path. A float is zero on a critical path. • •A buffer is based on contingencies (unpredictable actions). For example, the project buffer is about 50% of the safety time that you have removed from the activity estimate duration. Based on the definition of buffer, it is not zero on a critical chain or any other chain. • •A float is the same for all activities on a non-critical path, any activity can consume it partially or fully, and other activities can utilize balance. There is no further analysis. • •Any activity can also borrow a buffer if the activity is delayed. The project manager analyzes the remaining buffer to find the status of the project. • •Buffer can be divided into three categories: project buffer, feeding buffer and resource buffer Complition of slides 16 and 17 Resource Dependencies Across Projects Project 1 A B C D E H I J F G Project 2 Operations D and H are done by the same resource Delays: If Op D on Project 1 is late, Op H on Project 2 also get delayed as its resource is blocked on Op D Gains: Even if Op D finishes early, the resource cannot start Op H as has to wait for Op F finish (home study) Op = operation http://www.fortezzaconsulting.com/blog/5-myths/ https://www.workflowmax.com/blog/choose-your-project-management-methodology-pros-and-cons-of-agile- waterfall-prism-and-more Very usefull one : https://www.tutorialspoint.com/management_concepts/pareto_chart_tool.htm Thanks for Your Attention Wave_Surfing_At_Pipeline,_Hawaii