You are on page 1of 4

5/7/2016

The Theory of Constraints Five Focusing Steps in action Thinking for a Change

Whyestimate?
APR

16

ThesecrettricktomakeITprojectseasy

TheTheoryofConstraintsFiveFocusing
Stepsinaction

Wheredoweinterveneandwhatdowedo?
When we first start to improve processes, the situation is daunting: we can see so much that can be
improved.Wheredowestart?Whatwillhavethebiggesteffect?Andwhenwevedonethat,whatdowe
donext?
The Theory of Constraints gives us a simple and powerful framework to guide our process
improvement:TheFiveFocusingSteps.

Step0:Whatisthegoal?
Thefirstandmostdifficultstepistodetermine(andagreeon)thegoaloftheSystem.
BeforewecandothatwemustdeterminewhattheSystemis.AsaruleofthumbtheSystemequalsthe
SphereofInfluenceofourClient:everythingthatourClienthastheauthoritychange.
To determine the goal of the System, we must ask ourselves Who uses the results the output of the
Systemandwhatdotheyvalue?.Wetrytofindmetricsthatmeasuretheamountofvaluableoutputwe
produce.TheTheoryofConstraintscallsthistheThroughputoftheSystem.
OntheBproject,ourgoalwastoreleasevaluablefeaturesthatwereactivelyusedby
our users. Our measurement was the Business Value estimate that our onsite
customerputoneachUserStory.
Whatisyoursystem?Whatisitsgoal?

Step1:Whereisthebottleneck?
ThefundamentalinsightoftheTheoryofConstraintsisthis:theoutputofanysystemisdetermined
byonebottleneck.Achainisasstrongasitsweakestlink.Ifwewanttomakethechainstronger,we
needtoworkontheweakestlink.
Atthestartofanimprovementprocess,thebottleneckiseasytospot.Abottleneckresourceis:
Always busy. But busyness isnt the only (or even a good) criterion by which to recognise
bottlenecks. Many systems are mistakenly optimised to get high utilisation (or rather busyness)
outofallresources.
Workpilesupinfrontofthem.
Downstreamresourcesareregularlyidle.
Thedevelopmentteamwasthebottleneck.Wehadalistoffeaturesthatwaspilingup
infrontofus.Itwouldtakeusseveralreleasestoimplementourbacklog.Userswere
gettingimpatientforfeaturestobeimplementedanddeployed.
Whereisyourbottleneck?

Step2:Exploitthebottleneck
http://blog.nayima.be/2009/04/16/the-theory-of-constraints-ve-focusing-steps-in-action/

1/4

5/7/2016

The Theory of Constraints Five Focusing Steps in action Thinking for a Change

Iftheoutputofthesystemisconstrainedbytheoutputofthebottleneck,wemustfirsttrytoincreasethe
outputofthebottleneck.Anyidletimeofthebottleneckreducesoutputofthesystem.Whatcanwedo?
Removeanynonvalueaddingwork.
Removeorlimitinterruptions.Removeimpediments.
Letthebottleneckresourceworkatasteadypace.
Providehighqualitytoolsandmaterials.
Carefullyprioritisethebottlenecksworksothattheyalwaysworkonthemostimportanttasks.
Ensure that theres always enough work to do for the team (the backlog), so that they dont
becomeidlethroughlackofinput.
Asteamlead,Ireceivedandprioritisedallincomingrequestsandquestions.AsI
coulddealwithmostofthem,theteamwasntinterrupted.
Productionissuesneededtobehandledquickly.Allissueswerehandledbyme
and one developer. The bugfixer role rotated after every bug. This provided a
nice balance between keeping the team focused on developing the current
iterationandfeelingthepainofproductionissues.
Imadesurethateveryoneworkedatasustainablepace.Nomoreovertime!
Warning:dontshieldtheteamfromusefulinformationlikeinputfromthecustomer,productionissues,
installationsandfeedbackfromusers.
Westartbyfullyexploitingthebottleneckbecausethistypeofimprovementisrelativelyeasy:
Itrequiresnoextracostorinvestment.
Onlyoneresourceisinvolved.
Howcanyouexploityourbottleneck?

Step3:Subordinateeveryotherdecisiontothebottleneck
Whenwevefullyexploitedthebottleneck,wemustsubordinateeveryotherdecisiontoourdecisionto
exploitthebottleneck.Alltheresourcesthatarentbottleneckshave,bydefinition,someslack.Usethat
slacktosupportthebottleneck.Wecansubordinateby:
Lettingthenonbottleneckshelpthebottleneckortakeoversomerequiredbutlowvalueadding
work.
Everybody works at the pace of the bottleneck, no faster no slower, to avoid overloading the
bottleneckwithworkinprogress.
Thoseinfrontofthebottleneckensurethatthebufferofworkforthebottleneckisalwaysfilled,
butnottoomuch.
Thoseafterthebottleneckensurethattheyhavesomeslacktodealwithvariationsinoutputof
thebottleneck.
Nonbottlenecksensurethatonlyhighqualityworkinprogresshandedtothebottleneck.
As team lead, I subordinated all my work to the team: whenever there was a
requestfortheteam,aproductionissueoranimpediment,Idroppedallmywork
and supported the team. I quickly learned that I shouldnt commit to delivering
stories.Mycontributiontotheteamwaslessincontributingtoitsthroughputand
moreinprotectingthethroughputoftherestoftheteam.
The onsite customer performed acceptance testing on completed stories every
week, so that the developers got rapid feedback on the quality and fit of their
development.
TheonsitecustomerandIpreparedstoriesforthenextiterationandrelease,so
thattheteamalwayshadsomethingtoworkon.
Subordinatingisstillrelativelyeasy:
Itrequiresnoextracostorinvestment.
Onlyafewresources,typicallythosethatinteractdirectlywiththebottleneck,areinvolved.
http://blog.nayima.be/2009/04/16/the-theory-of-constraints-ve-focusing-steps-in-action/

2/4

5/7/2016

The Theory of Constraints Five Focusing Steps in action Thinking for a Change

However, there is one aspect of subordinating that wont be accepted easily: whereas the bottleneck
resources should be fully loaded, nonbottleneck resources must have slack time to be able to
supportthebottleneckanddealwithvariations.Mostmanagersareevaluatedontheefficiencyandnot
theeffectivenessoftheirpeople.Deliberatelymakingpeopleworkbelowtheircapacitygoesagainsttheir
goals. We can solve this problem by fully loading the nonbottlenecks but ensuring that a part of their
work is discardable, nice if it gets done, but not essential or timecritical. Whenever the non
bottlenecksneedtosupportthebottleneck,theycandropthenonessentialworktofreeuptime.
Whichdecisionsdoyouneedtosubordinatetothebottleneck?

Step4:Elevatethebottleneck
Thisisthestepmostpeoplewillintuitivelyapplyfirst:addmorepeople,moremachines,moretraining,
more tools, more of everything. We only take this step when all the free improvements have been
performed.Wecanelevateby:
Addingmorepeopleormachines
Trainingandmentoring
Bettertools,fastermachines
Switchingtoadifferenttechnology
My manager asked me about every week if I wanted some more developers, if I
wantedtoelevatemyteambyaddingmorepeople.Ideclined,becausewehadplenty
ofroomforimprovementleftwithexploitandsubordinateimprovements.Iaskedifwe
could get faster computers instead. He told me we couldnt because the hardware
budgetwasexhausted.ButtherewasbudgetforextradevelopersifIneededany
Elevationimprovementsaremoredifficultbecausetheyrequireaninvestment.Elevationimprovements
aredangerousbecausemostoftheseimprovementstakesometimetoproduceresults.Resultsmight
evenworsenuntiltheimprovementsstarttohaveapositiveeffect.Forexample,whenweaddpeopleto
ateamwelowertheteamsvelocityandacceptlessworkwhiletheteammembershelpthenewcomer
getuptospeed.
Dontelevateyet.Iknowyoucanapplysomanymoreexploitandsubordinateimprovements.

Step5:Andagain!
Whenweveappliedoneimprovementandhaveseenapositiveeffect,wegobacktothebeginning:
Isourgoalstillvalid?Isourmeasurementofthroughputstillcorrect?
Wheres the bottleneck?After some improvements we may have solved our worst problem.As
theresalwaysabottleneck,oursecondworstproblemgetsapromotion.Wenowneedtofocus
ourattentiononthenewbottleneck.

Andtheresultwas
Theteamgotbetterandbetterbyrepeatedlygoingthroughthefivefocusingsteps.Afterawhile,they
started to develop stories faster than customers could write them. Thats when we needed to apply
focusingstepssixandseven.

Iwanttoknowmore
ReadtheGoldrattbooksabouttheTheoryofConstraints.

http://blog.nayima.be/2009/04/16/the-theory-of-constraints-ve-focusing-steps-in-action/

3/4

5/7/2016

The Theory of Constraints Five Focusing Steps in action Thinking for a Change

DownloadandplaytheImnotaBottleneck!Imafreeman!simulationfromhttp://www.agilecoach.net
ReadmoreabouttheTheoryofConstraintsonthisblog.
April16th,2009|Category:agile,games,theoryofconstraints

3commentstoTheTheoryofConstraintsFiveFocusingStepsinaction
ThepowerofthejuniorontheteamPaircoachingsWeblog
October9th,2009at8:49am

[]ThepowerofthejuniorontheteamPostedonOctober9,2009bypaircoachingIknowsomesenior
developersthatdontlikePairProgramwithjuniorsastheyslowthemdown.Firstofall,thespeedofthe
team(andthusthevelocityoftheteam)isdetermentbytheslowestontheteam,notbythefastest.First
reactioncouldbe:letsthrowoutthesejuniors.Atfirstsightitmightbegoodtoonlyhiresmart,seniors
developers.Wecanadvancemuchquicker.Wellnotexactlytrue.Alotofseniorpeoplehaveahardtime
askingforhelp.Iprefertobringthejuniorsuptospeed.[]

ThepowerofthejuniorontheteamYvesHanoulle
April16th,2010at4:48pm

[]IknowsomeseniordevelopersthatdontlikePairProgramwithjuniorsastheyslowthemdown.Firstof
all,thespeedoftheteam(andthusthevelocityoftheteam)isdetermentbytheslowestontheteam,notby
thefastest.Firstreactioncouldbe:letsthrowoutthesejuniors.Atfirstsightitmightbegoodtoonlyhire
smart,seniorsdevelopers.Wecanadvancemuchquicker.Wellnotexactlytrue.Alotofseniorpeoplehave
ahardtimeaskingforhelp.Iprefertobringthejuniorsuptospeed.[]

BlogsFromTheGeeksBlogArchiveADayintheLifeofa7digitalDeveloperIntermittent
insightfulnuggets
November9th,2011at1:03pm

[]tasks,otherteams,hardwareissuesandconfigurations.Toensurethattheflowcontinueswe
subordinatetothebottleneckandswarmontheproblem.Thismeansthewholeteamwillattempttohelp
solvetheblockingissue[]

http://blog.nayima.be/2009/04/16/the-theory-of-constraints-ve-focusing-steps-in-action/

4/4

You might also like