<?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>Tim Lovelock &#187; safety stock</title>
	<atom:link href="http://www.timlovelock.net/tag/safety-stock/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.timlovelock.net</link>
	<description>Materials / Master Scheduling / Production Control / Supply Chain Management Professional</description>
	<lastBuildDate>Sun, 22 Aug 2010 16:37:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>A Logical Approach to Safety Stock, Without Statistics</title>
		<link>http://www.timlovelock.net/2009/10/05/logical-safety-stock-without-statistics/</link>
		<comments>http://www.timlovelock.net/2009/10/05/logical-safety-stock-without-statistics/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 00:28:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Manufacturing]]></category>
		<category><![CDATA[inventory analysis]]></category>
		<category><![CDATA[inventory control]]></category>
		<category><![CDATA[MRP]]></category>
		<category><![CDATA[problem solving]]></category>
		<category><![CDATA[production control]]></category>
		<category><![CDATA[safety stock]]></category>
		<category><![CDATA[SCM]]></category>
		<category><![CDATA[supply chain]]></category>

		<guid isPermaLink="false">http://timlovelock.net/?p=223</guid>
		<description><![CDATA[In it&#8217;s entry on Safety Stock, Wikipedia states that some of the more common reasons for safety stock include: # Supplier may deliver their product late or not at all # The warehouse may be on strike # A number of items at the warehouse may be of poor quality and replacements are still on [...]]]></description>
			<content:encoded><![CDATA[<p><a title="dandoodlescan065-inventory is waste" href="http://www.flickr.com/photos/46835425@N00/3966823194/" target="_blank"><img class="alignright" style="border: 0pt none; margin: 5px;" src="http://farm3.static.flickr.com/2640/3966823194_fb9f9b5a2e_m.jpg" border="0" alt="dandoodlescan065-inventory is waste" width="240" height="185" /></a>In it&#8217;s entry on <a href="http://en.wikipedia.org/wiki/Safety_stock">Safety Stock, Wikipedia</a> states that some of the more common reasons for safety stock include:</p>
<blockquote><p># Supplier may deliver their product late or not at all<br />
# The warehouse may be on strike<br />
# A number of items at the warehouse may be of poor quality and replacements are still on order<br />
# A competitor may be sold out on a product, which is increasing the demand for your products<br />
# Random demand (in reality, random events occur)<br />
# Machinery Breakdown<br />
# Unexpected increase in demand</p></blockquote>
<p>There are many reasons and methods for calculating safety stock, <span id="more-223"></span>and one of the more common reasons I&#8217;ve seen in the world of complex electronic assemblies is <strong>Test Yield</strong>. As electronic assemblies get more complex due to smaller component packages and denser placement on the board, as well as tougher requirements for the boards themselves, there will always be issues with yield. Couple this with complex testing requirements for certain high-reliability electronic assemblies, and yield issues begin to multiply. While zero defects is the goal we all strive for through continuous improvement programs, the real world has to take  defects into account. Along with the actual defect comes accounting for the turnaround time to troubleshoot and repair boards, and finally, accounting for the loss of irreparable assemblies.</p>
<p>It might be easy to say &#8220;Well, I&#8217;ll just take whatever my first-pass fall-out is and release that many more in each work order&#8221;. But, releasing extra quantities in each work order isn&#8217;t safety stock; <strong>safety stock is the quantity of units required in your supply chain to account for VARIANCE and achieve your target service levels to the demands from your customer</strong>. While there are statistical formulae to determine order quantities and safety stock, if you understand your planning factors and your processes, you should be able to model your order quantities while achieving inventory and service goals.</p>
<p>Depending how the planning factors are set in your materials requirement planning (MRP) module, you won&#8217;t be releasing the same quantity in each work order. Most MRP systems will &#8220;see&#8221; those defective units unless they are immediately placed in an inventory status that &#8220;blocks&#8221; MRP. If your processes allow for defective units to sit in WIP through the next MRP cycle, your planned orders will be reduced accordingly.</p>
<p>For the example below, I assumed a first-pass yield of 97% and a scrap rate of 0.5%. Another factor that is important in the cycle below is that the test occurs on Day 5 of a 5-day cycle and it takes 2 days to troubleshoot and repair the units, which means the units show in WIP at the time of the next order release. See this example:</p>
<blockquote>
<table style="border-collapse: collapse; width: 265pt;" border="0" cellspacing="0" cellpadding="0" width="353">
<col style="width: 217pt;" width="289"></col>
<col style="width: 48pt;" width="64"></col>
<tbody>
<tr style="height: 15pt;" height="20">
<td style="height: 15pt; width: 217pt;" width="289" height="20">Manufacturing   Lead Time (days)</td>
<td style="border-left: medium none; width: 48pt;" width="64" align="right">5</td>
</tr>
<tr style="height: 15pt;" height="20">
<td style="border-top: medium none; height: 15pt;" height="20">Weekly Demand</td>
<td style="border-top: medium none; border-left: medium none;" align="right">100</td>
</tr>
<tr style="height: 15pt;" height="20">
<td style="border-top: medium none; height: 15pt;" height="20">Historical   First-Pass Yield</td>
<td style="border-top: medium none; border-left: medium none;" align="right">97%</td>
</tr>
<tr style="height: 15pt;" height="20">
<td style="border-top: medium none; height: 15pt;" height="20">Historical   Final Yield</td>
<td style="border-top: medium none; border-left: medium none;" align="right">99.50%</td>
</tr>
<tr style="height: 15pt;" height="20">
<td style="border-top: medium none; height: 15pt;" height="20">Historical   Troubleshoot &amp; Repair Time (days)</td>
<td style="border-top: medium none; border-left: medium none;" align="right">2</td>
</tr>
<tr style="height: 15pt;" height="20">
<td style="border-top: medium none; height: 15pt;" height="20">Day Test   Occurs</td>
<td style="border-top: medium none; border-left: medium none;" align="right">5</td>
</tr>
<tr style="height: 15pt;" height="20">
<td style="border-top: medium none; height: 15pt;" height="20">Initial Order   Qty + Safety Stock</td>
<td style="border-top: medium none; border-left: medium none;" align="right">103</td>
</tr>
</tbody>
</table>
<table style="border-collapse: collapse; width: 426pt;" border="0" cellspacing="0" cellpadding="0" width="565">
<col style="width: 141pt;" width="188"></col>
<col style="width: 28pt;" span="9" width="37"></col>
<col style="width: 33pt;" width="44"></col>
<tbody>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="height: 15pt; width: 141pt;" width="188" height="20"></td>
<td style="border-left: medium none; width: 28pt;" width="37"><span style="text-decoration: underline;"><strong>Wk 1</strong></span></td>
<td style="border-left: medium none; width: 28pt;" width="37"><span style="text-decoration: underline;"><strong>Wk 2</strong></span></td>
<td style="border-left: medium none; width: 28pt;" width="37"><span style="text-decoration: underline;"><strong>Wk 3</strong></span></td>
<td style="border-left: medium none; width: 28pt;" width="37"><span style="text-decoration: underline;"><strong>Wk 4</strong></span></td>
<td style="border-left: medium none; width: 28pt;" width="37"><span style="text-decoration: underline;"><strong>Wk 5</strong></span></td>
<td style="border-left: medium none; width: 28pt;" width="37"><span style="text-decoration: underline;"><strong>Wk 6</strong></span></td>
<td style="border-left: medium none; width: 28pt;" width="37"><span style="text-decoration: underline;"><strong>Wk 7</strong></span></td>
<td style="border-left: medium none; width: 28pt;" width="37"><span style="text-decoration: underline;"><strong>Wk 8</strong></span></td>
<td style="border-left: medium none; width: 28pt;" width="37"><span style="text-decoration: underline;"><strong>Wk 9</strong></span></td>
<td style="border-left: medium none; width: 33pt;" width="44"><span style="text-decoration: underline;"><strong>Wk 10</strong></span></td>
</tr>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="border-top: medium none; height: 15pt; text-align: left;" height="20"><strong>Demand</strong></td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
</tr>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="border-top: medium none; height: 15pt; text-align: left;" height="20"><strong>Order Release</strong></td>
<td style="border-top: medium none; border-left: medium none;">103</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">101</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">101</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">101</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">101</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
</tr>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="border-top: medium none; height: 15pt; text-align: left;" height="20"><strong>Order Shipment</strong></td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
</tr>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="border-top: medium none; height: 15pt; text-align: left;" height="20"><strong>Fallout/Scrap</strong></td>
<td style="border-top: medium none; border-left: medium none;"></td>
<td style="border-top: medium none; border-left: medium none;">1</td>
<td style="border-top: medium none; border-left: medium none;"></td>
<td style="border-top: medium none; border-left: medium none;">1</td>
<td style="border-top: medium none; border-left: medium none;"></td>
<td style="border-top: medium none; border-left: medium none;">1</td>
<td style="border-top: medium none; border-left: medium none;"></td>
<td style="border-top: medium none; border-left: medium none;">1</td>
<td style="border-top: medium none; border-left: medium none;"></td>
<td style="border-top: medium none; border-left: medium none;">1</td>
</tr>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="border-top: medium none; height: 15pt; text-align: left;" height="20"><strong>Balance in   Troubleshoot WIP</strong></td>
<td style="border-top: medium none; border-left: medium none;">3</td>
<td style="border-top: medium none; border-left: medium none;">2</td>
<td style="border-top: medium none; border-left: medium none;">3</td>
<td style="border-top: medium none; border-left: medium none;">2</td>
<td style="border-top: medium none; border-left: medium none;">3</td>
<td style="border-top: medium none; border-left: medium none;">2</td>
<td style="border-top: medium none; border-left: medium none;">3</td>
<td style="border-top: medium none; border-left: medium none;">2</td>
<td style="border-top: medium none; border-left: medium none;">3</td>
<td style="border-top: medium none; border-left: medium none;">2</td>
</tr>
</tbody>
</table>
</blockquote>
<p>As you can see, the quantity of units in WIP from one cycle to the next fluctuates between 2 and 3 units &#8211; 2%-3%.</p>
<p>There will be some in your organization (for instance, the production supervisor <img src='http://www.timlovelock.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  ) suggesting you should always release 103 units in each work order. Not only are they wrong,  doing so will actually drive up your work-in-process (WIP) inventory &#8211; a cerain percentage of your first-pass defects will go through a troubleshoot-and-repair cycle, making them available for finished good shipments. If you continue to release &#8220;X&#8221; extra in each work order, WIP inventory builds according to this formula:</p>
<p>(Units released) + (Units Repaired) &#8211; (Shipments)</p>
<p>In the example above, watch what happens to your WIP inventory:</p>
<blockquote>
<table style="border-collapse: collapse; width: 426pt;" border="0" cellspacing="0" cellpadding="0" width="565">
<col style="width: 141pt;" width="188"></col>
<col style="width: 28pt;" span="9" width="37"></col>
<col style="width: 33pt;" width="44"></col>
<tbody>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="height: 15pt; width: 141pt;" width="188" height="20"></td>
<td style="border-left: medium none; width: 28pt;" width="37"><strong>Wk 1</strong></td>
<td style="border-left: medium none; width: 28pt;" width="37"><strong>Wk 2</strong></td>
<td style="border-left: medium none; width: 28pt;" width="37"><strong>Wk 3</strong></td>
<td style="border-left: medium none; width: 28pt;" width="37"><strong>Wk 4</strong></td>
<td style="border-left: medium none; width: 28pt;" width="37"><strong>Wk 5</strong></td>
<td style="border-left: medium none; width: 28pt;" width="37"><strong>Wk 6</strong></td>
<td style="border-left: medium none; width: 28pt;" width="37"><strong>Wk 7</strong></td>
<td style="border-left: medium none; width: 28pt;" width="37"><strong>Wk 8</strong></td>
<td style="border-left: medium none; width: 28pt;" width="37"><strong>Wk 9</strong></td>
<td style="border-left: medium none; width: 33pt;" width="44"><strong>Wk 10</strong></td>
</tr>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="border-top: medium none; height: 15pt; text-align: left;" height="20"><strong>Demand</strong></td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
</tr>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="border-top: medium none; height: 15pt; text-align: left;" height="20"><strong>Order Release</strong></td>
<td style="border-top: medium none; border-left: medium none;">103</td>
<td style="border-top: medium none; border-left: medium none;">103</td>
<td style="border-top: medium none; border-left: medium none;">103</td>
<td style="border-top: medium none; border-left: medium none;">103</td>
<td style="border-top: medium none; border-left: medium none;">103</td>
<td style="border-top: medium none; border-left: medium none;">103</td>
<td style="border-top: medium none; border-left: medium none;">103</td>
<td style="border-top: medium none; border-left: medium none;">103</td>
<td style="border-top: medium none; border-left: medium none;">103</td>
<td style="border-top: medium none; border-left: medium none;">103</td>
</tr>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="border-top: medium none; height: 15pt; text-align: left;" height="20"><strong>Order Shipment</strong></td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
<td style="border-top: medium none; border-left: medium none;">100</td>
</tr>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="border-top: medium none; height: 15pt; text-align: left;" height="20"><strong>Fallout/Scrap</strong></td>
<td style="border-top: medium none; border-left: medium none;"></td>
<td style="border-top: medium none; border-left: medium none;">1</td>
<td style="border-top: medium none; border-left: medium none;"></td>
<td style="border-top: medium none; border-left: medium none;">1</td>
<td style="border-top: medium none; border-left: medium none;"></td>
<td style="border-top: medium none; border-left: medium none;">1</td>
<td style="border-top: medium none; border-left: medium none;"></td>
<td style="border-top: medium none; border-left: medium none;">1</td>
<td style="border-top: medium none; border-left: medium none;"></td>
<td style="border-top: medium none; border-left: medium none;">1</td>
</tr>
<tr style="height: 15pt; text-align: center;" height="20">
<td style="border-top: medium none; height: 15pt; text-align: left;" height="20"><strong>Balance in   Troubleshoot WIP</strong></td>
<td style="border-top: medium none; border-left: medium none;">3</td>
<td style="border-top: medium none; border-left: medium none;">5</td>
<td style="border-top: medium none; border-left: medium none;">8</td>
<td style="border-top: medium none; border-left: medium none;">10</td>
<td style="border-top: medium none; border-left: medium none;">13</td>
<td style="border-top: medium none; border-left: medium none;">15</td>
<td style="border-top: medium none; border-left: medium none;">18</td>
<td style="border-top: medium none; border-left: medium none;">20</td>
<td style="border-top: medium none; border-left: medium none;">23</td>
<td style="border-top: medium none; border-left: medium none;">25</td>
</tr>
</tbody>
</table>
</blockquote>
<p>As you can see, your inventory will build to infinity unless some undefined variable consumes these units. Obviously, this is not a satisfactory solution in any organization due to the impact his has on cash flow.</p>
<p>These examples are simple and focus only on one variable &#8211; Yield. In a robust safety stock model one would account for other sources of supply and demand variance &#8211; forecast accuracy, supplier performance, additional quality yields, etc. But the examples do demonstrate how one can easily get to a safety stock determination through logical thinking, an understanding of their internal processes, and simple math.</p>
<p>I would love to see other examples of how to account for variance in the supply chain, so please leave me a comment if you care to continue the conversation.</p>
<p><small><a title="Attribution License" href="http://creativecommons.org/licenses/by/2.0/" target="_blank"><img src="http://timlovelock.net/wp-content/plugins/photo-dropper/images/cc.png" border="0" alt="Creative Commons License" width="16" height="16" align="absmiddle" /></a> <a href="http://www.photodropper.com/photos/" target="_blank">photo</a> credit: <a title="dan paluska" href="http://www.flickr.com/photos/46835425@N00/3966823194/" target="_blank">dan paluska</a></small></p>
]]></content:encoded>
			<wfw:commentRss>http://www.timlovelock.net/2009/10/05/logical-safety-stock-without-statistics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
