<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>David Draper on agile &#38; design &#187; Theory of Constraints</title>
	<atom:link href="http://www.agiledesign.co.uk/tag/theory-of-constraints/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.agiledesign.co.uk</link>
	<description>Building business agility though software</description>
	<lastBuildDate>Wed, 21 Jul 2010 09:28:31 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Theory of constraints for beginners</title>
		<link>http://www.agiledesign.co.uk/agile-management/theory-of-constraints-for-beginners/</link>
		<comments>http://www.agiledesign.co.uk/agile-management/theory-of-constraints-for-beginners/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 09:40:05 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[Agile Management]]></category>
		<category><![CDATA[Kanban]]></category>
		<category><![CDATA[Kanban Coaching]]></category>
		<category><![CDATA[Theory of Constraints]]></category>

		<guid isPermaLink="false">http://www.agiledesign.co.uk/kanban/theory-of-constraints-for-beginners/</guid>
		<description><![CDATA[Take-away #3 from David Anderson&#8217;s Kanban Coaching workshop.
A discussion of Kanban can only go on for so long before the subject of the Theory of Constraints comes up. In this post I&#8217;ll try to explain just enough to show this connection.
Theory of Constraints (TOC) is a large subject that I was first introduced to some [...]]]></description>
			<content:encoded><![CDATA[<p>Take-away #3 from David Anderson&#8217;s Kanban Coaching workshop.</p>
<p>A discussion of Kanban can only go on for so long before the subject of the Theory of Constraints comes up. In this post I&#8217;ll try to explain just enough to show this connection.</p>
<p>Theory of Constraints (TOC) is a large subject that I was first introduced to some time ago by <a href="http://blog.nayima.be" target="_blank">Pascal Van Cauwenberghe</a> and his explanation of the 5 focusing steps for process improvement. Since then I&#8217;ve seen TOC pop up at a few Agile conferences. The most notable aspects that tend to be discussed are the 5 focusing steps mentioned earlier and the TOC thinking tools. The Thinking tools offer techniques for root cause analysis, problems solving, conflict resolution and planning. While there have been a number of books explaining these techniques the source material is a set of novels written by Eliyahu Goldratt the first being <a href="http://www.amazon.co.uk/gp/product/0566086654?ie=UTF8&amp;tag=agiledesign-21&amp;linkCode=as2&amp;camp=1634&amp;creative=19450&amp;creativeASIN=0566086654">The Goal: A Process of Ongoing Improvement</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.co.uk/e/ir?t=agiledesign-21&amp;l=as2&amp;o=2&amp;a=0566086654" border="0" alt="" width="1" height="1" />.</p>
<p>David&#8217;s first book (<a href="http://www.amazon.co.uk/gp/product/0131424602?ie=UTF8&amp;tag=agiledesign-21&amp;linkCode=as2&amp;camp=1634&amp;creative=19450&amp;creativeASIN=0131424602">Agile Management for Software Engineering</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.co.uk/e/ir?t=agiledesign-21&amp;l=as2&amp;o=2&amp;a=0131424602" border="0" alt="" width="1" height="1" />) was focused on applying TOC in a software engineering context so I guess it&#8217;s not surprising that he wold choose to spend a little time explaining the connection between Kanban and TOC.</p>
<p>At this stage I should say that where David has applied TOC he has subsequently realised that a Kanban approach would have led to an equivalent result and is a conceptually more simple approach.</p>
<p>The areas of TOC that David chose to focus on were the classification of bottlenecks and the application of Goldratt&#8217;s 5 focusing steps.<span id="more-236"></span></p>
<ol>
<li>Identify the bottleneck</li>
<li>Decide how to exploit the bottleneck</li>
<li>Subordinate the system to the bottleneck</li>
<li>Elevate the bottleneck</li>
<li>Repeat</li>
</ol>
<p>These steps carry with them a set of pre-suppositions.</p>
<ul>
<li>We understand the goal of the system</li>
<li>A system has a single bottleneck that constrains it&#8217;s throughput</li>
<li>It is better to undertake changes that have no cost first i.e. improve utilisation of existing resources before adding resources</li>
</ul>
<p>While for most types of system I am willing to hold with these pre-suppositions we should accept that while bottlenecks can move in a manufacturing context they are likely to move more quickly within a software context due to the greater degree of variability.</p>
<p>So, an example of applying these steps in a software development context might be;</p>
<blockquote><p>Our goal is to construct, test and deploy software.<br /> Our constraint is in system test, this is apparent due to a build up of software that has not been tested.<br /> We identify exploit opportunities by considering where we loose test capacity e.g. recording timesheets. Since test is the bottleneck, time spent doing administration is directly reducing the output of the system.<br /> We subordinate the system to the bottleneck by changing responsibilities e.g. PM to take on some administrative tasks from testers.</p>
<p>At this stage we return to assessing where the bottleneck is. If we run out of exploit / subordinate opportunities we may choose to elevate the constraint. This is where we consider adding resources, automation or training.</p>
</blockquote>
<p>To close we should consider how a bottleneck might manifest it&#8217;s self in a system. Though others have suggested classifications for bottlenecks David&#8217;s approach is to consider 2 types.<br /> Capacity constrained resource<br /> Non-instantly available resource</p>
<p>For example compare a bridge with a ferry. A bridge has a fixed capacity, congestion occurs where too many cars attempt to cross. A car ferry will cause queues even where capacity is sufficient due to it&#8217;s non-instant availability.</p>
<p><!-- technorati tags start --></p>
<p style="text-align:right;font-size:10px;">Technorati Tags: <a rel="tag" href="http://www.technorati.com/tag/Kanban Coaching">Kanban Coaching</a>, <a rel="tag" href="http://www.technorati.com/tag/Theory of Constraints">Theory of Constraints</a></p>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.agiledesign.co.uk/agile-management/theory-of-constraints-for-beginners/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
