<?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>Karmona Pragmatic Blog &#187; Planning</title>
	<atom:link href="http://blog.karmona.com/index.php/category/planning/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.karmona.com</link>
	<description>Pragmatic Software Management, Internet Trends, Life and more...</description>
	<lastBuildDate>Wed, 14 Jul 2010 19:40:12 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Underestimation is Underestimated</title>
		<link>http://blog.karmona.com/index.php/2010/04/19/underestimation-is-underestimated/</link>
		<comments>http://blog.karmona.com/index.php/2010/04/19/underestimation-is-underestimated/#comments</comments>
		<pubDate>Sun, 18 Apr 2010 21:21:50 +0000</pubDate>
		<dc:creator>Moti Karmona &#124; מוטי קרמונה</dc:creator>
				<category><![CDATA[Management]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Psychology]]></category>
		<category><![CDATA[Software Management]]></category>

		<guid isPermaLink="false">http://blog.karmona.com/?p=624</guid>
		<description><![CDATA[
Underestimation is Underestimated (a.k.a. Overestimation is Overestimated)
Sometimes it seems like we have an underestimation gene embedded really deep in our cognition but for some “obvious” reason (e.g. underestimation! :) most manager will rather “fight” overestimation and *not* underestimation.
Disclaimer: I have originally estimated this post will take ~33 min but it took me ~240% more time… [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.karmona.com/wp-content/uploads/2010/04/CyrilNorthcoteParkinson.jpg"><img class="alignleft size-thumbnail wp-image-625" title="Cyril Northcote Parkinson" src="http://blog.karmona.com/wp-content/uploads/2010/04/CyrilNorthcoteParkinson-150x150.jpg" alt="CyrilNorthcoteParkinson 150x150 Underestimation is Underestimated" width="150" height="150" align="left" /></a></p>
<p><strong>Underestimation is Underestimated</strong> (a.k.a. Overestimation is Overestimated)</p>
<p>Sometimes it seems like we have an underestimation gene embedded really deep in our cognition but for some “obvious” reason (e.g. underestimation! :) most manager will rather “fight” overestimation and *<strong>not</strong>* underestimation.</p>
<p>Disclaimer: I have originally estimated this post will take ~33 min but it took me ~240% more time… (this is why I prefer to <a title="Karmona @ Twitter" href="http://twitter.com/karmona" target="_blank">tweet</a> lately ;)</p>
<p>Six annoying facts about our (/homo sapiens) planning or estimation “skills”:</p>
<ul>
<li>We are basically optimistic and have <a title="Herd Instinct" href="http://en.wikipedia.org/wiki/Herd_instinct" target="_blank">strong</a> <a title="Conformity" href="http://en.wikipedia.org/wiki/Conformity_(psychology)" target="_blank">desire</a> to <a title="Milgram Experiment" href="http://en.wikipedia.org/wiki/Milgram_experiment" target="_blank">please </a></li>
<li>We tend to have <a title="Forgetting" href="http://en.wikipedia.org/wiki/Forgetting" target="_blank">incomplete</a> <a title="Rosy Retrospection" href=" http://en.wikipedia.org/wiki/Rosy_retrospection" target="_blank">recall</a> of previous experience</li>
<li>We tend to have <a title="Focusing Effect" href="http://en.wikipedia.org/wiki/Focusing_effect" target="_blank">focus bias</a> when estimating e.g. estimating only the coding phase estimations which is only ~14-37% of the required work</li>
<li>We tend to postpone what we can a.k.a. “<a title="Student Syndrome" href="http://en.wikipedia.org/wiki/Student_syndrome" target="_blank">The Student Syndrome</a>”  (Eliyahu M. Goldratt, Critical Chain)</li>
<li><em>“It always takes longer than you expect, even when you take into account </em><a title="Hofstadter's Law" href="http://en.wikipedia.org/wiki/Hofstadter's_law" target="_blank"><em>Hofstadter&#8217;s Law</em></a><em>”</em> (Douglas Hofstadter, Godel, Escher, Bach: An Eternal Golden Braid)</li>
<li>We tend to underestimate task completion times – a.k.a. <a title="The Planning Fallacy" href="http://en.wikipedia.org/wiki/Planning_fallacy" target="_blank">The planning fallacy</a></li>
</ul>
<p><a href="http://blog.karmona.com/wp-content/uploads/2010/04/Plan-Ahead.jpg"><img class="alignleft size-full wp-image-633" title="Plan Ahead" src="http://blog.karmona.com/wp-content/uploads/2010/04/Plan-Ahead.jpg" alt="Plan Ahead Underestimation is Underestimated" width="578" height="266" /></a></p>
<p><strong>Overestimation is Overestimated</strong></p>
<p><em><span style="color: #808080;">“The developers say that this project will take 6 months… I think there’s some padding in their estimates and some fat that can be squeezed out of them…we also need to instill a sense of urgency in the development team… so I’m going to insist on a 3-month schedule. I don’t really believe the project can be completed in 3 months, but that’s what I’m going to present to the developers. If I’m right, the developers might deliver in 4 or 5 months. Worst case, the developers will deliver in the 6 months they originally estimated”</span></em> (Does this ring *<strong>any</strong>* bell???)</p>
<p>Four reasons on managers tendency to “fight” overestimations:</p>
<ul>
<li>Underestimation (see above :) | <span style="color: #808080;"><em>“The feature estimation seems bloated”</em></span> | <em><span style="color: #808080;">“Isn’t it 20 min work?”</span></em> | <em><span style="color: #808080;">“Just add another index to the %$^&amp;ing table?”</span></em> |<em><span style="color: #808080;"> “It is only one more button…”</span></em></li>
<li>Unreasonable time constraint | <em><span style="color: #808080;">“We need this feature yesterday”</span></em> |<em> &#8220;Nothing is impossible for the man who doesn&#8217;t have to do it himself&#8221;</em> (A. H. Weiler)</li>
<li>True belief that <a title="Parkinson's Law" href="http://en.wikipedia.org/wiki/Parkinson's_Law" target="_blank">Parkinson’s “Law”</a> is really a law &#8211; <em>“Work expands so as to fill the time available for its completion”</em></li>
<li>&#8220;The Student Syndrome”  (see above)</li>
</ul>
<p>So… if feature estimation seems bloated, managers and other project stakeholders fear that Parkinson’s Law and the Student Syndrome would kick in and therefore consciously squeeze the estimates to try to control it (a.k.a. “The Parkinson’s Squeeze”) and when we squeeze where it isn’t needed or was squeezed already, it immediately lead to… UNDERESTIMATION (!!!)</p>
<p><strong><a href="http://blog.karmona.com/wp-content/uploads/2010/04/75988.strip_1.gif"><img class="alignleft size-full wp-image-628" title="Dilbert Project Estimation" src="http://blog.karmona.com/wp-content/uploads/2010/04/75988.strip_1.gif" alt="75988.strip 1 Underestimation is Underestimated" width="640" height="199" /></a></strong></p>
<p><strong>Underestimation is Underestimated</strong></p>
<p>Underestimation creates numerous problems – some obvious, some not so obvious.</p>
<ul>
<li><strong>Reduced effectiveness of project plans &#8211; </strong>Low estimates undermine effective planning by feeding bad assumptions into plans for specific activities. They can cause planning errors in the team size, such as planning to use a team that’s smaller than it should be. They can undermine the ability to coordinate among groups – if the groups aren’t ready when they said they would be, other groups won’t be able to integrate with their work. If the estimation errors caused the plans to be off by only 5% or 10%, those errors wouldn’t cause any significant problems but numerous studies have found that software estimates are often inaccurate by 100% or more (see above). When the planning assumptions are wrong by this magnitude, the average project’s plans are based on assumptions that are so far off that the plans are virtually useless.</li>
<li><strong>Statistically reduced chance of on-time completion &#8211; </strong>Developers typically estimate 20% to 30% lower than their actual effort. Merely using their normal estimates makes the project plans optimistic. Reducing their estimates even further simply reduces the chances of on-time completion even more.<strong> </strong></li>
<li><strong>Poor technical foundation</strong> leads to worse-than-nominal results. A low estimate can cause you to spend too little time on upstream activities such as requirements and design. If you don’t put enough focus on requirements and design, you’ll get to redo your requirements and redo your design later in the project – at greater cost than if you’d done those activities well in the first place. This ultimately makes your project take much longer than it would have taken with an accurate estimate.</li>
<li><strong>Destructive late-project dynamics</strong> make the project worse than nominal Once a project gets into “late” status, project teams engage in numerous activities that they don’t need to engage in during an “on-time” project&#8230; below are some examples when the important characteristic of each of these activities is that they don’t need to occur at all when a project is meeting its goals, these extra activities drain time away from productive work on the project and make it take longer than it would if it were estimated and planned accurately
<ul>
<li>More status meetings with upper management to discuss how to get the project back on track</li>
<li>Frequent re-estimation, late in the project, to determine just when the project will be completed.</li>
<li>Apologizing to key customers for missing delivery dates (including attending meetings with those customers).</li>
<li>Preparing interim releases to support customer demos, trade shows, and so on. If the software were ready on time, the software itself could be used, and no interim release would be necessary.</li>
<li>More discussions about which requirements absolutely must be added because the project has been underway so long.</li>
<li>Fixing problems arising from quick and dirty workarounds that were implemented earlier in response to the schedule pressure.</li>
</ul>
</li>
</ul>
<p><strong><a href="http://blog.karmona.com/wp-content/uploads/2010/04/OverestimationPenalties.jpg"><img class="alignleft size-full wp-image-629" title="Overestimation Penalties" src="http://blog.karmona.com/wp-content/uploads/2010/04/OverestimationPenalties.jpg" alt="OverestimationPenalties Underestimation is Underestimated" width="604" height="253" /></a></strong></p>
<p><strong>Tip of the day</strong><br />
Never intentionally underestimate. The penalty for underestimation is more severe than the penalty for overestimation. Address concerns about overestimation through control, tracking and *<strong>mentoring</strong>* but <span style="text-decoration: underline;">not</span> by bias.</p>
<p>****************************************</p>
<p>More related posts (a.k.a. people who read this post also read these posts)</p>
<ul>
<li><a title="Software Projects Anxiety @ http://blog.karmona.com" href="http://blog.karmona.com/index.php/2007/10/16/software-projects-anxiety/" target="_blank">Software projects anxiety</a></li>
<li><a title="The Stockdale Paradox the Pessimistic Developer Paradigm @ http://blog.karmona.com" href="http://blog.karmona.com/index.php/2007/07/14/the-stockdale-paradox-the-pessimistic-developer-paradigm/" target="_blank">The Stockdale Paradox the Pessimistic Developer paradigm</a></li>
<li><a title="In Broken Images" href="http://blog.karmona.com/index.php/2008/03/20/in-broken-images/" target="_blank">In Broken Images</a></li>
<li><a title="The Dunning Kruger Effect" href="http://blog.karmona.com/index.php/2008/11/15/the-dunning-kruger-effect/" target="_blank">The Dunning Kruger Effect</a></li>
<li><a title="The Cone of Uncertainty in Pastel" href="http://blog.karmona.com/index.php/2010/04/18/the-cone-of-uncertainty-in-pastel/" target="_blank">The Cone of Uncertainty in Pastel</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.karmona.com/index.php/2010/04/19/underestimation-is-underestimated/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>The Cone of Uncertainty in Pastel</title>
		<link>http://blog.karmona.com/index.php/2010/04/18/the-cone-of-uncertainty-in-pastel/</link>
		<comments>http://blog.karmona.com/index.php/2010/04/18/the-cone-of-uncertainty-in-pastel/#comments</comments>
		<pubDate>Sun, 18 Apr 2010 18:49:40 +0000</pubDate>
		<dc:creator>Moti Karmona &#124; מוטי קרמונה</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Software Management]]></category>

		<guid isPermaLink="false">http://blog.karmona.com/?p=614</guid>
		<description><![CDATA[“The further a project progressed, the more accurate the estimates for the remaining effort and time became”
(Barry Boehm, &#8220;Software Engineering Economics“, 1981)
 
NASA also came to the same conclusion that in the beginning of the project life cycle (i.e. before gathering of requirements) estimations have in general an uncertainty of factor 4. This means that the actual duration [...]]]></description>
			<content:encoded><![CDATA[<p><em><a href="http://blog.karmona.com/wp-content/uploads/2010/04/BarryBoehm.jpg"><img class="alignleft size-thumbnail wp-image-618" title="Barry Boehm" src="http://blog.karmona.com/wp-content/uploads/2010/04/BarryBoehm-150x150.jpg" alt="BarryBoehm 150x150 The Cone of Uncertainty in Pastel" width="150" height="150" align="left" /></a>“The further a project progressed, the more accurate the estimates for the remaining effort and time became”</em><br />
(<a title="Barry Boehm" href="http://en.wikipedia.org/wiki/Barry_Boehm" target="_blank">Barry Boehm</a>, &#8220;Software Engineering Economics“, 1981)<br />
<em> </em><br />
NASA also came to the same <a title="Manager's Handbook for Software Development | NASA" href="http://homepages.inf.ed.ac.uk/dts/pm/Papers/nasa-manage.pdf" target="_blank">conclusion</a> that in the beginning of the project life cycle (i.e. before gathering of requirements) estimations have in general an uncertainty of factor 4. This means that the actual duration can be 4 times or 1/4th of the first estimations&#8230;<br />
<em> </em><br />
I felt very free to add my own interpretation of the different point-of-views with cool <strong><span style="color: #ff99cc;">p</span><span style="color: #ffcc99;">a</span><span style="color: #ccffcc;">s</span><span style="color: #99ccff;">t</span><span style="color: #cc99ff;">e</span><span style="color: #ff99cc;">l</span></strong> colors as a sneak-peak cool-<a title="Delver.com - Beta" href="http://www.delver.com" target="_blank">beta</a>-preview of my next post.</p>
<p><a href="http://blog.karmona.com/wp-content/uploads/2010/04/TheConeOfUncertainty.gif"><img class="alignleft size-full wp-image-619" title="The Cone of Uncertainty" src="http://blog.karmona.com/wp-content/uploads/2010/04/TheConeOfUncertainty.gif" alt="TheConeOfUncertainty The Cone of Uncertainty in Pastel" width="665" height="489" /></a></p>
<p>Make sense?<br />
<em> </em></p>
<p><em> </em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.karmona.com/index.php/2010/04/18/the-cone-of-uncertainty-in-pastel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Software Release On-Time</title>
		<link>http://blog.karmona.com/index.php/2008/02/22/software-release-on-time/</link>
		<comments>http://blog.karmona.com/index.php/2008/02/22/software-release-on-time/#comments</comments>
		<pubDate>Fri, 22 Feb 2008 20:05:53 +0000</pubDate>
		<dc:creator>Moti Karmona &#124; מוטי קרמונה</dc:creator>
				<category><![CDATA[Management]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Software Management]]></category>

		<guid isPermaLink="false">http://blog.karmona.com/index.php/2008/02/22/software-release-on-time/</guid>
		<description><![CDATA[
&#8220;The British merchant ship Madagascar set sail from Melbourne in August 1853, headed for London and carrying 60,000 ounces of gold dust. &#8211; She was never seen again…&#8221; (http://www.futilitycloset.com/2008/01/29/overdue/)
Well&#8230; Saying &#8220;no more gold dust&#8221; is the only way I know to close a software release on-time&#8230;
P.S. Did you noticed that the Mona Lisa has no [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.karmona.com/wp-content/uploads/2008/02/madagascar.jpg" title="The British merchant ship Madagascar"><img src="http://blog.karmona.com/wp-content/uploads/2008/02/madagascar.thumbnail.jpg" title="The British merchant ship Madagascar" alt="The British merchant ship Madagascar" align="left" /></a></p>
<p><em>&#8220;The British merchant ship Madagascar set sail from Melbourne in August 1853, headed for London and carrying 60,000 ounces of gold dust. &#8211; She was never seen again…&#8221;</em> (<a href="http://www.futilitycloset.com/2008/01/29/overdue/">http://www.futilitycloset.com/2008/01/29/overdue/</a>)</p>
<p>Well&#8230; Saying &#8220;no more gold dust&#8221; is the only way I know to close a software release on-time&#8230;</p>
<p>P.S. Did you noticed that the Mona Lisa has no eyebrows. (<a href="http://www.futilitycloset.com/2008/02/12/trivium-16/">http://www.futilitycloset.com/2008/02/12/trivium-16/</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.karmona.com/index.php/2008/02/22/software-release-on-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pragmatic Time Estimation</title>
		<link>http://blog.karmona.com/index.php/2007/11/08/pragmatic-time-estimation/</link>
		<comments>http://blog.karmona.com/index.php/2007/11/08/pragmatic-time-estimation/#comments</comments>
		<pubDate>Thu, 08 Nov 2007 22:36:55 +0000</pubDate>
		<dc:creator>Moti Karmona &#124; מוטי קרמונה</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Delver]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Software Management]]></category>

		<guid isPermaLink="false">http://blog.karmona.com/index.php/2007/11/08/pragmatic-time-estimation/</guid>
		<description><![CDATA[My rough estimation is that the number of software project managers in the world is smaller in (at least) one scale from the conceived time-estimation techniques and this post is my humble four-cents contribution on how to do pragmatic time estimation for software projects (just finished one in Delver).

Start with the mother of all lists [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Software Project Management Life Cycle" href="http://blog.karmona.com/wp-content/uploads/2007/11/3260585819-project_management.jpg"><img title="Software Project Management Life Cycle" src="http://blog.karmona.com/wp-content/uploads/2007/11/3260585819-project_management.thumbnail.jpg" alt="Software Project Management Life Cycle" align="left" /></a>My rough estimation is that the number of software project managers in the world is smaller in (at least) one scale from the conceived time-estimation techniques and this post is my humble four-cents contribution on how to do pragmatic time estimation for software projects (just finished one in Delver).</p>
<ul>
<li>Start with the mother of all lists to store your Product Manager wish list– We use eScrum Product-Backlog to store our work-items</li>
<li>Prioritized them – We use 0-Yesterday; 1-Must; 2-Important; 3-Nice-to-Have and 4-&#8221;Forget-About-It&#8221;… ;-)</li>
<li>Get relative estimations on all items
<ul>
<li>Granularity is the bronze-bullet for time estimations &#8211; Strive to the finest grained possible in reasonable time-frame  e.g. We usually aim for 2-5 days granularity in 2-3 days of time-boxed-estimation-period since the finest granularity in planning without reasonable time-box might take twice the time of doing the planned work (a.k.a. The Estimation Paradox)</li>
<li>Experience can turn your bronze bullet into silver one (ye ye, a silver one) &#8211; Relative estimation is calculated relatively upon a common scale of known work items from the team history e.g. We use Scrum &#8220;Story Points&#8221; and constantly measure the team velocity for time estimation adjustments</li>
<li>Fibonacci sequence (0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89 etc.) can be used to &#8220;embed&#8221; the complexity and risk of rough (with insufficient drilldown) estimations e.g. if your estimation granularity for specific task reach ~40 days then your pragmatic estimation should be around 55 days (= the closest Fibonacci sequence) since it is reasonable to believe your (insufficient) granularity conceals risk, complexity and unknowns issues which requires Fibonacci-like-&#8221;buffering&#8221;</li>
<li>Strive to synchronize your time estimation techniques into very simple one &#8211; different time estimation conventions in the same development team is the 2nd reason for time delays. (I will give 0.95$ grant if you can guess what the 1st reason)</li>
<li>I know I am different but personally, I do prefer to have &#8220;pragmatic hours&#8221; vs. the normal Agile &#8220;ideal hours&#8221; and to start the project when 1 &#8220;Story Point&#8221; =  1 &#8220;Pragmatic Day&#8221; so long everyone understand this will change as soon as you start the project and then you need to return to velocity tracking to calculate the end</li>
<li>Don&#8217;t be <a href="http://blog.karmona.com/index.php/2007/07/14/the-stockdale-paradox-the-pessimistic-developer-paradigm/">naïve</a> (a.k.a. &#8220;Ideal  Days&#8221;) with two known flavors:
<ul>
<li>Optimistic time estimations,  assuming 24*7 of concentrated programming ability with no outside interference (a.k.a. no such thing)</li>
<li>&#8220;Stupid&#8221; hand-waiving time estimations a.k.a. It is only 10 min to code this (but ~5 days to Integrate, Review, Design, Test, Schema and DAL changes, I18N support, Styling etc.)</li>
</ul>
</li>
</ul>
</li>
<li>Get the rough project estimation = Sum of all product backlog story points / 22 (work days in month) / Number of relevant people
<ul>
<li>Usually this calculation will show you don&#8217;t have enough time for the project (even without project dependencies buffer which can be added later)</li>
<li>Start the &#8220;Tradeoff Game&#8221; &#8211; Try to cut items (content) based on the relative ROI</li>
<li>Revalidate your priorities since they will be the main tool (beside dependencies) for creating the project work plan.</li>
</ul>
</li>
</ul>
<p>As I see it, estimating software projects in a realistic time-frame is a statistic prediction of chaotic, time-delay-series of events and will never be straightforward nor easy so you can only do your best in the estimation and then track the project as it goes and make the needed adaptation on the way upon crystal clear project priorities.</p>
<p>Good Luck!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.karmona.com/index.php/2007/11/08/pragmatic-time-estimation/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Software Projects Anxiety</title>
		<link>http://blog.karmona.com/index.php/2007/10/16/software-projects-anxiety/</link>
		<comments>http://blog.karmona.com/index.php/2007/10/16/software-projects-anxiety/#comments</comments>
		<pubDate>Tue, 16 Oct 2007 20:12:42 +0000</pubDate>
		<dc:creator>Moti Karmona &#124; מוטי קרמונה</dc:creator>
				<category><![CDATA[Peopleware]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Psychology]]></category>
		<category><![CDATA[Software Management]]></category>

		<guid isPermaLink="false">http://blog.karmona.com/index.php/2007/10/16/software-projects-anxiety/</guid>
		<description><![CDATA[* The 1st manned landing on Earth&#8217;s Moon was the Apollo 11 mission on  July 20, 1969 and the last one was Apollo 17 on December 7, 1972
* Current U.S. Vision for Space Exploration calls for a human landing on the Moon no later than 2019
2019-1972=47 (!!!)
Someone wise once gave this as a metaphorical [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.karmona.com/wp-content/uploads/2007/10/screem.jpg" title="Software Projects Experience Anxiety Disorder"><img src="http://blog.karmona.com/wp-content/uploads/2007/10/screem.thumbnail.jpg" title="Software Projects Experience Anxiety Disorder" alt="Software Projects Experience Anxiety Disorder" align="left" /></a>* The 1st manned landing on Earth&#8217;s Moon was the Apollo 11 mission on  July 20, 1969 and the last one was Apollo 17 on December 7, 1972<br />
* Current U.S. Vision for Space Exploration calls for a human landing on the Moon no later than 2019</p>
<p><strong>2019-1972=47 (!!!)</strong></p>
<p>Someone wise once gave this as a metaphorical example for a common engineers disorder, he called experience-anxiety-disorder, claiming that NASA stopped sending manned missions to the moon since they now know much more about the complexity and risk with doing this.</p>
<p>During the early seventies, it was a nice, naive working implementation but when NASA engineers started thinking about the next release they have built a five-decades-project-plan simply because they considered all the technological experience they have gained into large complexity buffers.</p>
<p><strong>The Moral Lesson</strong><br />
Keep-it-simple can-do-approach and don&#8217;t over-complicate things with the long-tail-little-details when not needed or the project will take 5 decades to finish.</p>
<p><strong>How do you know you are have an experience-anxiety-disorder?</strong><br />
If someone ask you to add a button to change the database schema and this make you feel a mixture of fear, apprehension, heart palpitations, nausea, chest pain, shortness of breath and headache.</p>
<p><strong>What to do?</strong><br />
Sit down and relax, drink a cup of water and then add the damn button!</p>
<p><strong>Last Long-Tail-Detail</strong><br />
Well… I don&#8217;t want to ruin this lovely moral lesson with the long-tail-little-detail but the real facts behind this 47 years gap were politics and money (as always) and not that NASA engineers got a severe experience-anxiety-disorder.</p>
<p><strong>Google Trends</strong> (a.k.a. my experiment &#8211; part IV &#8211; Almost forgot&#8230;)</p>
<ul>
<li><strong>Betty Casey<br />
</strong></li>
<li><strong>Most Haunted Life<br />
</strong></li>
<li><strong>Piercing &amp; Tattoos<br />
</strong></li>
<li><strong>Madonna<br />
</strong></li>
<li><strong>World War III (&#8230;)<br />
</strong></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.karmona.com/index.php/2007/10/16/software-projects-anxiety/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Chronicle of a Death Foretold</title>
		<link>http://blog.karmona.com/index.php/2007/09/20/chronicle-of-a-death-foretold/</link>
		<comments>http://blog.karmona.com/index.php/2007/09/20/chronicle-of-a-death-foretold/#comments</comments>
		<pubDate>Thu, 20 Sep 2007 20:32:13 +0000</pubDate>
		<dc:creator>Moti Karmona &#124; מוטי קרמונה</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Software Management]]></category>

		<guid isPermaLink="false">http://blog.karmona.com/index.php/2007/09/20/chronicle-of-a-death-foretold/</guid>
		<description><![CDATA[Chronicle of a Death Foretold = Waterfall Shmoterfall = Checkmate in 10 moves
 * Note: I did see, participate and lead some successful waterfall projects (mainly due to some adoption of agile methodologies ;-) and this is my view of the projects which failed…

Release scoping start with marketing high-level-copy-paste-from-last-year-marketing-presentations MRD in ~1 month delay
1 month [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.karmona.com/wp-content/uploads/2007/09/waterfall.jpg" title="Chronicle of a Death Foretold = Waterfall Shmoterfall = Checkmate in 10 moves"><img src="http://blog.karmona.com/wp-content/uploads/2007/09/waterfall.thumbnail.jpg" title="Chronicle of a Death Foretold=Waterfall Shmoterfall=Checkmate in 10 moves" alt="Chronicle of a Death Foretold=Waterfall Shmoterfall=Checkmate in 10 moves" align="left" /></a><strong>Chronicle of a Death Foretold = Waterfall Shmoterfall = Checkmate in 10 moves</strong><br />
<em> * Note: I did see, participate and lead some successful waterfall projects (mainly due to some adoption of agile methodologies ;-) and this is my view of the projects which failed…</em></p>
<ol>
<li>Release scoping start with marketing high-level-copy-paste-from-last-year-marketing-presentations MRD in ~1 month delay</li>
<li>1 month of quick lets-write-all-the-features-we-can PRD – This is also the last time you hear from the product manager until the next milestone-demo-crisis.</li>
<li>High level design for a couple of weeks which sum-up to a Very Rough Time Guesstimate a.k.a. VeRTiGo</li>
<li>Release time-frame is set ~1 year ahead with the needed VeRTiGo &#8220;squeezing&#8221; and high level time-frame is determined:
<ul>
<li>2 months of the waste above and last release leftover</li>
<li>1-2 months of Planning (functional and technical design)</li>
<li>4-5 months of Development – with ~3 Major Milestones</li>
<li>3 months of QA &amp; stabilization</li>
<li>1 month of Project Buffer</li>
</ul>
</li>
<li>Very soon the development teams are scattered like lonely wolfs &#8211; everyone for himself until the next integration or major milestones months away.</li>
<li>First milestone is ending with:
<ul>
<li>20% of the content is really Done a.k.a. &#8220;Even a Blind Chicken Finds a Kernel of Corn Now and Then&#8221;</li>
<li>50% is “done” with dirty bugy code, low quality, performance issues with missing or wrong functionality</li>
<li>30%  is just not ready</li>
</ul>
</li>
<li>Developers and low level management remind themselves yet again to put more buffers…</li>
<li>The PMO suggest (in relax and trusting tone) to postpone the milestone or remove content.</li>
<li>Management doesn&#8217;t get in panic (they have seen it before ;-) and decide not to decide: &#8220;<em>Let’s see if we can cut the drawback in the next Milestone</em>” a.k.a. The classic <em>do {} while(timeRemaining &gt; Last Milestone)</em></li>
<li>Next milestone has much more content and the pressure builds up… until the last milestone blaming game which usually ends up with ~2 month delay and half of the planned content.</li>
</ol>
<p><strong>Checkmate</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.karmona.com/index.php/2007/09/20/chronicle-of-a-death-foretold/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Internet Service Outage-Lie-of-the-Day</title>
		<link>http://blog.karmona.com/index.php/2007/09/10/internet-service-outage-lie-of-the-day/</link>
		<comments>http://blog.karmona.com/index.php/2007/09/10/internet-service-outage-lie-of-the-day/#comments</comments>
		<pubDate>Tue, 11 Sep 2007 07:04:13 +0000</pubDate>
		<dc:creator>Moti Karmona &#124; מוטי קרמונה</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Delver]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Web 2.0]]></category>

		<guid isPermaLink="false">http://blog.karmona.com/index.php/2007/09/10/internet-service-outage-lie-of-the-day/</guid>
		<description><![CDATA[
Almost a month ago, I have moved to my own hosted blog due to google blogger outage.
Last week (September 3rd ~00:00), I was visiting BlogCatalog and I got the Internet Service Outage-Lie-of-the-Day: &#8220;Database Error – We&#8217;re sorry, but our database servers are currently overloaded. Please enjoy a cup of coffee and then try refreshing this [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Dilbert on Network Outage" href="http://blog.karmona.com/wp-content/uploads/2007/09/dilbertunplannednetworkoutage.gif"><img src="http://blog.karmona.com/wp-content/uploads/2007/09/dilbertunplannednetworkoutage.gif" alt="Dilbert on Network Outage" title="Internet Service Outage Lie of the Day" /></a></p>
<p>Almost a month ago, I have moved to my own hosted blog due to <a title="Google Blogger outage" href="http://blog.karmona.com/index.php/2007/08/22/new-blog-home/">google blogger outage</a>.</p>
<p>Last week (September 3rd ~00:00), I was visiting BlogCatalog and I got the <strong>Internet Service Outage-Lie-of-the-Day</strong>: &#8220;<em>Database Error – We&#8217;re sorry, but our database servers are currently overloaded. Please enjoy a cup of coffee and then try refreshing this page – Blog Catalog&#8221;</em> [<a title="Blog Catalog Outage September 3rd - 2007" href="http://blog.karmona.com/wp-content/uploads/2007/09/blogcatalogdown.gif">BlogCatalog Outage September 3rd - 2007</a>] … so I followed the site recommendation and I have enjoyed a <a href="http://blog.karmona.com/index.php/2007/08/18/bialetti-moka-express/">great cup of Italian coffee </a>but I was very sorry to see that it didn&#8217;t helped the BlogCatalog database to recover…</p>
<p>These days, we are working intensively on the last sprint goals; One of the goals was to finish the architectural design of our unique internet service.</p>
<p>So… Yesterday we where guesstimating (until the very late hours of the night) on the scale needed for this service and started mapping the IT topology, Database implementation and software back-end options that are viable to support it.</p>
<p><a title="Dilbert plan to Network Outage" href="http://blog.karmona.com/wp-content/uploads/2007/09/dilbertnetworkoutageplan.gif"><img src="http://blog.karmona.com/wp-content/uploads/2007/09/dilbertnetworkoutageplan.gif" alt="Dilbert plan to Network Outage" title="Internet Service Outage Lie of the Day" /></a></p>
<p>I have a lot to say on the process, technology challenges and options for my future posts and I can sum it up now saying: We all hope that by taking the right decisions when reaching a critical-architectural-junction these days, we will be able to enjoy a good cup of Italian coffee while our databases are down for maintenance… but we also know that simple risk management on our guesstimates is also to be prepared for rainy days with a good enough <strong>Internet Service Outage-Lie-of-the-Day</strong> ;-)</p>
<p class="MsoNormal" style="text-align: left; direction: ltr; unicode-bidi: embed"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: #1f497d;"></span></p>
<p class="MsoNormal" style="text-align: left; direction: ltr; unicode-bidi: embed"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: #1f497d;"> </span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.karmona.com/index.php/2007/09/10/internet-service-outage-lie-of-the-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scrum by &#8220;Natural Selection&#8221;</title>
		<link>http://blog.karmona.com/index.php/2007/07/26/scrum-by-natural-selection/</link>
		<comments>http://blog.karmona.com/index.php/2007/07/26/scrum-by-natural-selection/#comments</comments>
		<pubDate>Thu, 26 Jul 2007 21:07:00 +0000</pubDate>
		<dc:creator>Moti Karmona &#124; מוטי קרמונה</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Peopleware]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Software Management]]></category>

		<guid isPermaLink="false">http://blog.karmona.com/index.php/2007/07/26/scrum-by-natural-selection/</guid>
		<description><![CDATA[After watching many Agile project failures and during most of my adult-software-life you could easily bumped into me saying (with agile critiques link referencing embedded :-)
&#8220;Agile can only fit hello- world project scale… It is a bad excuse for weak management, development chaos, poor planning capabilities, lousy communication skills and lazy &#8220;we don&#8217;t need documentation&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://bp1.blogger.com/_yHZeAQccbHo/RqkKqMtakkI/AAAAAAAAAe4/D6VXYB1En4w/s1600-h/agile.gif"></a><a href="http://blog.karmona.com/wp-content/uploads/2007/08/agile.png" title="Agile &amp; Dogbert"></a><a href="http://blog.karmona.com/wp-content/uploads/2007/08/agile.png" title="Agile &amp; Dogbert"></a><a href="http://blog.karmona.com/wp-content/uploads/2007/08/agile.png" title="Agile &amp; Dilbert"><img align="left" src="http://blog.karmona.com/wp-content/uploads/2007/08/agile.png" alt="Agile &amp; Dilbert" title="Agile &amp; Dilbert" /></a>After watching many Agile project failures and during most of my adult-software-life you could easily bumped into me saying (with agile critiques link referencing embedded :-)<br />
&#8220;<em>Agile can only fit </em><a href="http://www.agilealliance.org/show/945"><em>hello- world project scale</em></a><em>… It is a </em><a href="http://nothinghappens.net/?p=103"><em>bad excuse</em></a><em> for weak management, development chaos, poor planning capabilities, lousy communication skills and lazy &#8220;we don&#8217;t need documentation&#8221; programmers &#8211; There is </em><a href="http://steve-yegge.blogspot.com/2006/09/good-agile-bad-agile_27.html"><em>no silver bullet</em></a><em> for handling software but those </em><a href="http://softwaremaestro.wordpress.com/2007/07/02/does-xpscrum-violate-the-agile-manifesto/"><em>agile manifesto guys</em></a><em> really found the silver bullet </em><a href="http://www.swqual.com/newsletter/vol2/no7/vol2no7.html"><em>buzzword</em></a><em> for making money with the </em><a href="http://softwaremaestro.wordpress.com/2007/06/30/scrum-master-jar-jar/"><em>scrum-master for dummies</em></a><em> certifications&#8230;</em>&#8221;</p>
<p>&#8230;Then came <strong>Scrum by &#8220;Natural Selection&#8221;</strong>:</p>
<p><a href="http://bp1.blogger.com/_yHZeAQccbHo/RqubAstakmI/AAAAAAAAAfI/PePB0KT6Q8o/s1600-h/evolution.jpg"></a>“<em>It is <u>not</u> the strongest of the species that survive, nor the most intelligent, <strong>but the ones most responsive to change</strong></em>” &#8211; <a href="http://en.wikipedia.org/wiki/Charles_Darwin" title="Charles Darwin">Charles Darwin</a>&#8217;s <a href="http://en.wikipedia.org/wiki/The_Origin_of_Species">Origin of Species</a> (1859)</p>
<p>&#8230;So I have evolved by <a href="http://en.wikipedia.org/wiki/Natural_selection">Natural Selection</a> to Agile and I can&#8217;t really go back to over-planned fantasy Gantt charts that try to capture every feature in advance and predict we will finish the project exactly in 666 days …</p>
<p><strong>Why “</strong><a href="http://en.wikipedia.org/wiki/Agile_software_development"><strong>Agile</strong></a><strong>”?</strong><br />
For using all the right buzzwords e.g. <strong>Flexibility; Transparency; Short-term predictability; Long term vision</strong> ;-)</p>
<p><strong>Why &#8220;</strong><a href="http://en.wikipedia.org/wiki/Scrum_%28development%29"><strong>Scrum</strong></a><strong>&#8220;?<br />
</strong>Scrum provides the mechanism for making the people and process problems apparent so they can be solved &#8211; <strong>It encompasses almost any good engineering technique;</strong> very <strong>simple</strong>, not overly prescriptive and relatively small set of interrelated practices and rules which can be learned quickly and is able to produce productivity gains almost immediately.</p>
<p><strong>Why not???<br />
</strong>The main reason as I see it now, is that it is extremely simple but <strong>very hard to implement successfully* &#8211; Mainly because short iteration cycles, rapid changes and transparency brings project management headache and programmer life to extreme optimization</strong> while traditional development processes (e.g. waterfall) give you the misleading euphoria** for very long time-frames (e.g. ~666 days in the above example ;-) inside the traditional project lifecycle</p>
<p>e.g. Transparency forces accountability, responsibility, prioritization discussions, trade-offs, and often scope reduction. Scrum requires that managers behave differently than in the past. Instead of reviewing status reports, managers should attend Sprint reviews and retrospectives. Instead of waiting for team members to prepare and present updates, management should go to the project room and see the project&#8217;s task board and burn down chart.</p>
<p><strong>Scrum isn&#8217;t a silver bullet* but a simple yet powerful encapsulation of </strong><a href="http://karmona.blogspot.com/2007/07/people-people-people.html"><strong>Peopleware</strong></a><strong> mindset, project management patterns and development best practices which can put you on a good starting point when you face the software challenge…<br />
</strong></p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
* Friendly reminder: no silver bullet in successful software management<br />
** Although I did see few cases where a mixture of skilled project management &amp; legendary engineers have managed to bypass that inherent misleading euphoria while allegedly practicing traditional development process but my claim is that if you look very closely they were actually practicing 90% scrum without even knowing it…</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.karmona.com/index.php/2007/07/26/scrum-by-natural-selection/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>The Project Manager</title>
		<link>http://blog.karmona.com/index.php/2007/07/25/the-project-manager/</link>
		<comments>http://blog.karmona.com/index.php/2007/07/25/the-project-manager/#comments</comments>
		<pubDate>Wed, 25 Jul 2007 20:32:00 +0000</pubDate>
		<dc:creator>Moti Karmona &#124; מוטי קרמונה</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Software Management]]></category>

		<guid isPermaLink="false">http://blog.karmona.com/index.php/2007/07/25/the-project-manager/</guid>
		<description><![CDATA[
 
 
 
 
A project manager is a professional* in the field of project management.
A project manager&#8217;s main duty is to ensure the success of a project by minimizing risk throughout the lifetime of the project.
This is done through a variety of methods, both formal and informal**. A project manager will usually have to ask penetrating** questions, detect [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://bp2.blogger.com/_yHZeAQccbHo/RrtwI8takvI/AAAAAAAAAhI/RcjMdnrToNY/s1600-h/pmo.gif"></a><a title="PMO &amp; Dilbert" href="http://blog.karmona.com/wp-content/uploads/2007/08/pmo.png"></a><a title="PMO &amp; Dillbert" href="http://blog.karmona.com/wp-content/uploads/2007/08/pmo.png"></a><a title="PMO &amp; Dillbert" href="http://blog.karmona.com/wp-content/uploads/2007/08/pmo.png"></a><a title="PMO &amp; Dilbert" href="http://blog.karmona.com/wp-content/uploads/2007/08/pmo.png"><img class="alignnone" title="PMO &amp; Dilbert" src="http://blog.karmona.com/wp-content/uploads/2007/08/pmo.png" alt="PMO &amp; Dilbert" width="400" height="140" align="left" /></a></p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p>A project manager is a professional* in the field of <a href="http://en.wikipedia.org/wiki/Project_management">project management</a>.</p>
<p><strong>A project manager&#8217;s main duty is to ensure the success of a project by minimizing risk throughout the lifetime of the project.<br />
</strong>This is done through a variety of methods, both formal and <strong>informal</strong>**. A project manager will usually have to ask <strong>penetrating</strong>** questions, detect <strong>unstated</strong>** assumptions, and resolve <strong>interpersonal conflicts</strong>**, as well as use more systematic management skills.</p>
<p>According to <a href="http://en.wikipedia.org/wiki/Project_management_offices">Wikipedia</a> statistics: 69% of project failures*** are due to lack and/or improper implementation of project management methodologies.</p>
<p>I didn&#8217;t have the pleasure of being a project manager but I did see some good project manager implementations and this is my recommendation:</p>
<p><strong>Risk Management</strong> &#8211; Identifying, managing and mitigating project risk</p>
<p><strong>Issues Management</strong> &#8211; Identifying, tracking managing and resolving project issues</p>
<p><strong>Reporting</strong> &#8211; Proactively disseminating project information to all stakeholder s(a good web based project dashboard will do the trick)</p>
<p><strong>Quality Management</strong></p>
<p><strong>Scope Management</strong> &#8211; Proactively managing scope to ensure that only what was agreed to is delivered, unless changes are approved through scope management</p>
<p><strong>Forecasting </strong>project trends &#8211; Defining and collecting metrics to give a sense for how the project is progressing and whether the deliverables produced are acceptable</p>
<p><strong>Tracking</strong> &#8211; Managing the overall work-plan to ensure work is assigned and completed on time and within budget</p>
<p><strong>Monitor resources</strong> (e.g. allocation, movement, skill matrix, roles and responsibilities)</p>
<p><strong>Define Development Methodology</strong></p>
<p><strong>Managing integrations &amp; dependencies</strong> (documentation, shared infrastructure etc.)</p>
<p><strong>Configuration Management<br />
</strong><br />
<strong>Standardization</strong>, rationalization and training of <strong>processes</strong> &amp; <strong>procedures</strong> (e.g. customer escalations &amp; patches, customer enhancement request, beta or EA plans etc.)</p>
<p><strong>Manage projects postmortem reviews</strong></p>
<p>There are many things to be said on the project manger role and I know god is in the details <a href="http://urikalish.blogspot.com/">Kalish</a> but I was told that my blog posts should be much shorter so I will end it here and I reserve the right to post about it again if needed… (e.g. Scrum-Master vs. PMO post will come real soon)</p>
<p>Good Luck Yonit! ;-)</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
* The term &#8220;Professional&#8221; should imply that this role isn&#8217;t trivial or intuitive as it might sounds or implemented in many organizations</p>
<p>** All the <strong>&#8216;bold</strong>**&#8217; words should have &#8220;rang the complexity bell&#8221; &#8211; it will never be easy (or straight forward) and will require a bundle of <a href="http://en.wikipedia.org/wiki/Emotional_intelligence">emotional intelligence</a></p>
<p>*** When according to the same statistics 90% of projects do not meet time/cost/quality targets.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.karmona.com/index.php/2007/07/25/the-project-manager/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Pareto Principle</title>
		<link>http://blog.karmona.com/index.php/2007/07/14/the-pareto-principle/</link>
		<comments>http://blog.karmona.com/index.php/2007/07/14/the-pareto-principle/#comments</comments>
		<pubDate>Sat, 14 Jul 2007 19:00:00 +0000</pubDate>
		<dc:creator>Moti Karmona &#124; מוטי קרמונה</dc:creator>
				<category><![CDATA[Pareto]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Productivity]]></category>
		<category><![CDATA[Software Management]]></category>

		<guid isPermaLink="false">http://blog.karmona.com/index.php/2007/07/14/the-pareto-principle/</guid>
		<description><![CDATA[The Pareto principle (a.k.a. the 80-20 rule, the law of the vital few and the principle of factor sparsity) states that, for many events, 80% of the effects comes from 20% of the causes. (e.g. Your wife might claim that you wear 20% of your closet clothes about 80% of the time… ;-)
I will argue [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://bp3.blogger.com/_yHZeAQccbHo/RpkeXQOPtnI/AAAAAAAAAd4/BerSJMLJfcc/s1600-h/chart.jpg"></a><a href="http://blog.karmona.com/wp-content/uploads/2007/08/pareto.jpg" title="Pareto Chart"><img align="left" src="http://blog.karmona.com/wp-content/uploads/2007/08/pareto.thumbnail.jpg" alt="Pareto Chart" title="Pareto Chart" /></a>The <a href="http://en.wikipedia.org/wiki/Pareto_principle">Pareto principle</a> (a.k.a. the 80-20 rule, the law of the vital few and the principle of factor sparsity) states that, for many events, 80% of the effects comes from 20% of the causes. (e.g. Your wife might claim that you wear 20% of your closet clothes about 80% of the time… ;-)</p>
<p><strong>I will argue that pareto principle conceals one of the most important princples in software</strong> (and not only in software) <strong>management &#8211; Don&#8217;t try to do more. Just do more of the right things!</strong></p>
<p>exempli gratia</p>
<p>* Don’t invest too your time in dark software corners since the same principle will catch you with investing 80% of your force with only 20% value (e.g. What will happen if someone disconnect the database network cable 1 minute before DST transition… etc.)</p>
<p>* Don’t over design since you will bump into the 80% investment for only 20% value again – Don’t drill the holes for air-condition system before you have one, since you might find yourself a bunch of holes in the wall…</p>
<p>* While planning, always ask yourself if you can do more for less and try to find that thin-gray-line that cross the 21% effort for the 81% value<strong>* </strong>- try to identify how to invest minimal effort (~20%) to create enough (~80%) business value.</p>
<p>* In performance tuning you want to find the silver bullet that with minimal effort (let’s say 20%) solve 80% of your issues (a.k.a. low hanging fruits)</p>
<p>* Workforce wise &#8211; <a href="http://en.wikipedia.org/wiki/Jack_Welch" title="Jack Welch">Jack Welch</a>&#8217;s <a href="http://en.wikipedia.org/wiki/Vitality_curve">vitality</a> model has been described as a &#8220;20-70-10&#8243; system. The &#8220;top 20&#8243; percent of the workforce is most productive, and 70% (the &#8220;vital 70&#8243;) work adequately. The other 10% (&#8220;bottom 10&#8243;) are non-producers and should be fired. Rank-and-yank ideologues credit Welch&#8217;s rank-and-yank system with a 28-fold increase in earnings (and a 5-fold increase in revenue) at GE between 1981 and 2001 &#8211; Obviously, this is a tremendously competitive model of organization and all criticisms of both the morality and (in)effectiveness of such a Dog Eat Dog method of social cohesion apply but as a manager you must take this in mind since reality and statistics (<a href="http://en.wikipedia.org/wiki/Law_of_large_numbers">law of large numbers</a>) do show that the &#8220;top 20&#8243; percent of the workforce is most productive and is doing 80% of the work&#8230;</p>
<p>I would even dare claiming that, <strong>perfectionism is a strong indication for weak leadership!</strong></p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<strong>*</strong> Note: I was told that everyone knows this principle but the question is how to do it… so my tip (and I promise to post more around this dilemma) is to handle this with-in the scoping of the feature or module; efficient scoping should get very fast to ROI (look for the items with low ROI) and risk analysis (look for the items in high risk and try to understand where the risk come from) and soon after the tradeoff discussion which is the perfect time to take the hard “cutting” decisions and for doing this you must have someone in the room with deep customer understanding; e.g. In most systems it is very “easy” to cut enterprise-readiness features to simplify development (I18N, Security, Upgrade, Scalability, High Availability, Distribution, Monitoring etc.) and many of those features can be added later if needed with no real overhead (warning: you must know what you are doing to make it work so don’t try this at home if you don’t have professionals with you);</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.karmona.com/index.php/2007/07/14/the-pareto-principle/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
