<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Durable Agility</title>
	<atom:link href="http://rpnman.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://rpnman.wordpress.com</link>
	<description>Agile doesn&#039;t have to be fragile.</description>
	<lastBuildDate>Sat, 03 Oct 2009 01:07:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='rpnman.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Durable Agility</title>
		<link>http://rpnman.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://rpnman.wordpress.com/osd.xml" title="Durable Agility" />
	<atom:link rel='hub' href='http://rpnman.wordpress.com/?pushpress=hub'/>
		<item>
		<title>We can do better.</title>
		<link>http://rpnman.wordpress.com/2009/10/02/we-can-do-better/</link>
		<comments>http://rpnman.wordpress.com/2009/10/02/we-can-do-better/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 18:21:28 +0000</pubDate>
		<dc:creator>Roger Neyman</dc:creator>
				<category><![CDATA[Requirements Analysis]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[Epimetheus]]></category>
		<category><![CDATA[here-now]]></category>
		<category><![CDATA[philosophy]]></category>
		<category><![CDATA[Prometheus]]></category>
		<category><![CDATA[requirements]]></category>
		<category><![CDATA[Steigler]]></category>

		<guid isPermaLink="false">http://rpnman.wordpress.com/?p=193</guid>
		<description><![CDATA[It is a truism that most businesses fail. Specific, clear, unambiguous statistics to back this perception up are hard to come by. The blurring of the meanings of &#8216;merger&#8217;, &#8216;acquisition&#8217;, &#8216;buyout&#8217; and &#8216;failure&#8217; have made those statistics even harder to interpret. Still, I think it is a fair generalization. Certainly, as I look back over [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpnman.wordpress.com&amp;blog=8804444&amp;post=193&amp;subd=rpnman&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>It is a truism that most businesses fail. Specific, clear, unambiguous statistics to back this perception up are <a href="http://answers.google.com/answers/threadview/id/418119.html">hard to come by</a>. The blurring of the meanings of &#8216;merger&#8217;, &#8216;acquisition&#8217;, &#8216;buyout&#8217; and &#8216;failure&#8217; have made those statistics even harder to interpret. Still, I think it is a fair generalization. Certainly, as I look back over my career, 90% of the companies I&#8217;ve worked for in the various branches of high-tech are either out of business, or so transformed (perhaps by acquisition) as to be unrecognizable. I&#8217;m not <em>quite</em> vain enough to think it&#8217;s because of me. </p>
<p>So why <em>do</em> businesses fail? <a href="http://tinyurl.com/whyDoMostBusinessesFail">A google search</a> will yield lots reasons people offer up with good intent. Look them over, it&#8217;s an instructive exercise. As you do so, ask yourself how much the lack of systematic focus on <em>stakeholder requirements</em> and the corresponding emphasis on <em>accumulation of domain expertise</em> is actually a secret, semi-conscious theme running through many of the reasons given. Also notice how seldom it is mentioned explicitly and clearly.</p>
<p>Most start-ups think they do all right when it comes to accumulating domain knowledge, or, more narrowly, when it comes to framing requirements. They can&#8217;t be bothered to add detail that isn&#8217;t needed <em>right now</em> to get the next milestone in on time. Companies that outsource learn the hard way that they need to work harder at it than they expect, or they do not survive. </p>
<p>Yes, most companies, most engineering teams think they&#8217;re doing fine, until, deep in the midst of their heroic labors, they are shocked awake by the realization that small oversights, wasted efforts, and little pieces of time lost to rework mean that the critical business opportunity has been missed. Numbed, they try to pick up the pieces (or watch as others do) in the aftermath. </p>
<p>It&#8217;s hard to escape conclusion that this is the result of a systematic shortcoming in our approach, that we&#8217;re suffering from some blindness born more of the habit of looking elsewhere than of any fundamental defect in our sight. What could be the source? </p>
<p>In the midst of our <a href="http://en.wikipedia.org/wiki/Prometheus">Promethean</a> efforts to bring the next great technological miracle into the world, we forget that in the Greek myth the hero-titan who suffered to win fire for mankind had a twin brother from whom he was inseparable. <a href="http://en.wikipedia.org/wiki/Epimetheus_%28mythology%29">Epimetheus&#8217;</a> strength was<em>&#8220;hindsight&#8221;</em>, his curse forgetfulness. </p>
<p>Software development is <em>hard</em> precisely because software&#8217;s utility approaches so close to the threshold of conscious, and our brains are designed (have evolved) to accommodate the details of tool use automatically, with practice, in our goal-oriented absorption in the task at hand.</p>
<p>What we need is the balance of a little (<em>just enough</em>) Epimethean perspective building to anchor our goal-driven hurry. </p>
<p>I&#8217;m suggesting that it has particularly to do with the process of requirements gathering, because by its nature it is something we have to do with deliberation, even though we are inclined (both organizationally and individually) to want to push the task &#8216;into the background&#8217; of our awareness as soon as possible in the name of &#8216;productivity&#8217;.</p>
<p>We find it painful slowing down our process of understanding, stifling the impulse to think in terms of solutions (and often jumping prematurely at the first one) rather than &#8216;living in the question&#8217; long enough to know we&#8217;re heading in the right direction. </p>
<p><strong>&lt;aside&gt;</strong><br />
I don&#8217;t mean to go off into a long digression into mythology, philosophy or, God forbid, post-modern deconstructionism here, but I will pause to point out that I&#8217;m not by any means the first to draw this connection. The philosopher <a href="http://en.wikipedia.org/wiki/Bernard_Stiegler">Bernard Stiegler</a> was at great pains to point out that we systematically forget Epimetheus and his role in our world, with tragic results. At one point the authors of the Wikipedia article summarizing his work <a href="http://en.wikipedia.org/wiki/Technics_and_Time,_1#Elpis">Technics and Time</a> paraphrase Steigler as observing that  &#8220;a constitutive blindness, forgetting and idiocy accompany the fact of being technical&#8221;. This isn&#8217;t an indictment of nerds. The intended use of the term &#8216;technical&#8217; is broad enough to encompass most human tool use, and by extension, most human culture of any sort. It is intended as a statement about the make-up of our conciousness.<br />
<strong>&lt;/aside&gt;</strong></p>
<p>I&#8217;m saying that we&#8217;re capable of being better at this, but that it will take systematic, organizational, collective effort and iteration after iteration after iteration. Unless that effort is part of our ongoing way of doing engineering, of doing business, we don&#8217;t have a ghost of a chance to master the situation. </p>
<p>We need to pause in the here and now, between our Promethean questing and our Epimethean regrets, to systematically grow and cultivate our awareness of the present, of what we know and of how to communicate that. </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpnman.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpnman.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpnman.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpnman.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpnman.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpnman.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpnman.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpnman.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpnman.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpnman.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpnman.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpnman.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpnman.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpnman.wordpress.com/193/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpnman.wordpress.com&amp;blog=8804444&amp;post=193&amp;subd=rpnman&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpnman.wordpress.com/2009/10/02/we-can-do-better/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2000dcecf4542326a740021ec6ba48a0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rpnman</media:title>
		</media:content>
	</item>
		<item>
		<title>Competitive Engineering</title>
		<link>http://rpnman.wordpress.com/2009/07/30/competitive-engineering/</link>
		<comments>http://rpnman.wordpress.com/2009/07/30/competitive-engineering/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 06:51:02 +0000</pubDate>
		<dc:creator>Roger Neyman</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[competitive]]></category>
		<category><![CDATA[gilb]]></category>
		<category><![CDATA[iterative]]></category>
		<category><![CDATA[methodology]]></category>
		<category><![CDATA[process]]></category>
		<category><![CDATA[requirements]]></category>

		<guid isPermaLink="false">http://rpnman.wordpress.com/?p=4</guid>
		<description><![CDATA[Of course every engineer wants to be competitive, in the sense of delivering value that succeeds in the marketplace, right? The best teams to work on (and any team that I&#8217;d jump to join) strive to be the best at what they do. We pride ourselves at coming up with the best designs possible within [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpnman.wordpress.com&amp;blog=8804444&amp;post=4&amp;subd=rpnman&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Of course every engineer wants to be competitive, in the sense of delivering value that succeeds in the marketplace, right? The best teams to work on (and any team that I&#8217;d jump to join) strive to be the best at what they do.</p>
<p>We pride ourselves at coming up with the best designs possible within short time frames, at working in realms where the requirements are partly or poorly understood, and somehow coming through anyway. We code defensively, follow good OO principles, use design patterns, and drive our development with unit test.</p>
<p>And we do all this not quite knowing how the market is going to evolve while we work, or what the competition is up to.</p>
<p>&#8220;Agile&#8221; is quite a popular term these days, even <em>le buzzword du jour</em>. When <a href="http://agilemanifesto.org/">The Agile Manifesto</a> came out, I read it with some excitement and hope, but then increasingly with a tinge of disappointment. It&#8217;s authors got carried away, over-emphasizing the novelty of their techniques, and in so doing failed to learn some of the lessons that hard experience in iterative systems engineering could have taught. It should be a clue when a methodology labels <em>itself</em> &#8216;extreme&#8217; that it isn&#8217;t emphacizing balance.</p>
<p>And yet, isn&#8217;t <em>dynamic balance</em> at the core of what living, even life itself, is all about? We could think of running, and even walking, as graceful, rhythmic not-quite-falling. Making progress depends on a balance between falling forward and standing upright. </p>
<p>The metaphor applies to engineering as well. We need to balance our &#8216;heads-down-and-go&#8217; focus on code with a &#8216;heads-up&#8217; vision of what&#8217;s coming and where we need to end up. </p>
<p>In time, the foundations of agile processes have become clearer, and some of the debt to earlier practitioners has been acknowledged from time to time.</p>
<p>My take on what it takes to give a team the edge it needs to succeed in this environment has been strongly influenced by <a href="http://en.wikipedia.org/wiki/Tom_Gilb">Tom Gilb</a> and his &#8220;evo&#8221; or &#8220;competitive engineering&#8221; practices which have their roots in systems engineering. I select from his work what I think is best for the team and project I&#8217;m on at the moment, and bring in many other factors as well such as test-driven development, domain model driven design, patterns, and so on.</p>
<p>But the bottom line is this: let&#8217;s utilize the tools and techniques and, yes, processes, <em>lightly</em>, with a common-sense eye for what works, and with a practiced sense of <em>perspective</em> while we do it. Let&#8217;s balance getting done what needs to be done right now with doing it in a way that maintains and even improves our ability to be competitive on the next project.</p>
<p>In other pages and posts on this blog I&#8217;ll discuss particular techniques. The larger framework, however remains <em>Competitive Engineering</em>, in the larger sense of the term.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpnman.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpnman.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpnman.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpnman.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpnman.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpnman.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpnman.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpnman.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpnman.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpnman.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpnman.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpnman.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpnman.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpnman.wordpress.com/4/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpnman.wordpress.com&amp;blog=8804444&amp;post=4&amp;subd=rpnman&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpnman.wordpress.com/2009/07/30/competitive-engineering/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2000dcecf4542326a740021ec6ba48a0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rpnman</media:title>
		</media:content>
	</item>
	</channel>
</rss>
