<?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>AgileKiwi &#187; Agile Software Development</title>
	<atom:link href="http://www.agilekiwi.com/category/other/agile/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.agilekiwi.com</link>
	<description>The neglected essentials of software development</description>
	<lastBuildDate>Thu, 08 Jul 2010 09:07:46 +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>Big Lessons from a Little Process</title>
		<link>http://www.agilekiwi.com/other/agile/big-lessons-from-a-little-process/</link>
		<comments>http://www.agilekiwi.com/other/agile/big-lessons-from-a-little-process/#comments</comments>
		<pubDate>Fri, 07 Dec 2007 17:23:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Agile Software Development]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/news/big-lessons-from-a-little-process/</guid>
		<description><![CDATA[<p>I presented a session at today&#8217;s <a href="http://barcamp.org/BarCampAgileWellington"><span style="text-decoration: underline;">Wellington Agile BarCamp</span></a>.  The session was called &#8220;<em>Crystal Clear: Big Lessons from a Little Process</em>&#8220;.  Instead of describing all the details of the process, I outlined four of the most important lessons I have learned from it.</p>
<p>Here are some brief notes on&#8230; <a href="http://www.agilekiwi.com/other/agile/big-lessons-from-a-little-process/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>I presented a session at today&#8217;s <a href="http://barcamp.org/BarCampAgileWellington"><span style="text-decoration: underline;">Wellington Agile BarCamp</span></a>.  The session was called &#8220;<em>Crystal Clear: Big Lessons from a Little Process</em>&#8220;.  Instead of describing all the details of the process, I outlined four of the most important lessons I have learned from it.</p>
<p>Here are some brief notes on the presentation.</p>
<p><span id="more-71"></span></p>
<p><strong>Introduction</strong></p>
<p><a href="http://www.agilekiwi.com/crystal_clear.htm"><span style="text-decoration: underline;">General background</span></a> on Crystal Clear</p>
<p><strong>Big Lessons that I&#8217;ve Learned from Crystal Clear</strong></p>
<ul>
<li><a href="http://alistair.cockburn.us/index.php/Just-in-time_methodology_construction"><span style="text-decoration: underline;">Methodology-per-process</span></a>.  How you can (and <a href="http://alistair.cockburn.us/index.php/Talk:Just-in-time_methodology_construction" class="broken_link"><span style="text-decoration: underline;">should</span></a>) tune your process to the project at hand.</li>
<li>Defusing debates about documentation, by recognising the two purposes of documents: supporting the current project; and supporting future maintenance programmers.  In my projects, I have found it best <em>not </em>to kill two birds with one stone.</li>
<li><a href="http://www.agileproductdesign.com/blog/shu_business.html"><span style="text-decoration: underline;">Shu-Ha-R</span></a>i, the stages of learning skills and how that applies to agile.  People at different stages have different needs for prescriptive process versus flexibility; and different comfort levels with finalizing process elements &#8220;later&#8221;.</li>
<li>Simple = good.  The simplicity of Crystal Clear is backed by both theory and practice.  Its simplicity supports the design goals of Crystal, which are safety (delivering a successful project), efficiency (cost-effectiveness) and habitability (people are comfortable using Crystal).</li>
</ul>
<p><strong>Links to other resources</strong></p>
<p>I mentioned various other resources during the presentation.  They included:</p>
<ul>
<li><a href="http://alistair.cockburn.us/index.php/Are_iterations_hazardous_to_your_project"><span style="text-decoration: underline;">Material on iteration lengths</span></a>: why there is no real value in saying &#8220;my iteration is shorter than yours&#8221;.</li>
<li><a href="http://alistair.cockburn.us/index.php/Collaboration:_the_dance_of_contribution"><span style="text-decoration: underline;">Collaboration: the Dance of Contribution</span></a>.  A lengthy piece, with a lot to take in.  I skim read it the first time I saw it, but I got more out of it when I re-read it some months later.  My favourite bit: &#8220;No idea is rejected out of hand and no idea gets a free pass.&#8221;  I&#8217;m still learning how to apply it ;-)</li>
<li><a href="http://www.ericsink.com/articles/Requirements.html"><span style="text-decoration: underline;">Are requirements a document or a database</span></a>?  I found Eric Sink&#8217;s article explains this dilemma very well.  (As for his comments about agile in the same article, I think he&#8217;s touching on an issue which James Bach described well <a href="http://www.satisfice.com/blog/archives/45"><span style="text-decoration: underline;">here</span></a>. Although they may not phrase it this way themselves, I&#8217;d suggest that Eric and James are both &#8220;Ri-style&#8221; practitioners, objecting to the over-emphasis of &#8220;Shu-style&#8221; agile.  As we discussed today, both styles have their place.)</li>
<li>I also mentioned Eric&#8217;s &#8220;<a href="http://www.ericsink.com/Career_Calculus.html"><span style="text-decoration: underline;">Career Calculus</span></a>&#8221; page, and suggested that the same approach applies to process.  The most important thing is not where you start; but how fast you improve.</li>
<li><a href="http://www.xprogramming.com/xpmag/docBigPictureAndSpec.htm"><span style="text-decoration: underline;">Ron Jeffries on documentation</span></a>.  His recommendations are broadly similar to the Crystal ones except (a) he has a firm view that the tests <em>are</em> the requirements documentation (Crystal is more flexible about how requirements are noted down) (b) he implies that you might not need future facing documentation (I would assume that if your software was worth writing, then it&#8217;s probably worth maintaining, which means it usually is worthwhile to write a future-facing document)</li>
</ul>
<p>That all looks very brief, but on the day it took 50 minutes &#8211; honest.</p>
<p>By the way, I did it as an &#8220;incremental presentation&#8221;.  After each of the four main points, I paused for questions.  The idea was that each main point was like an &#8220;iteration&#8221;, and pausing for questions was like &#8220;releasing&#8221; that iteration.  It seemed to work.  We had good discussion after most points, and interleaving questions with presentation made it easier to fit the timeslot. (If all questions are left to the end, how much time should you leave?  Will people ask lots of questions?  Will they ask none?)</p>
<p>If you were there (or you weren&#8217;t) please let me know if you have any questions that are not covered in these notes.  Either leave a comment below, or <a href="http://www.agilekiwi.com/contact.htm"><span style="text-decoration: underline;">email me</span></a>.</p>
<p><strong>Update 6 March 08:</strong></p>
<p>I gave the presentation again <a href="http://newzealand.theiiba.org/default.asp?contentID=592" class="broken_link"><span style="text-decoration: underline;">today</span></a>.  Here are some of the BA-related resources that I mentioned:</p>
<p>Scott Ambler on:</p>
<ul>
<li><a href="http://www.agilemodeling.com/essays/agileAnalysis.htm"><span style="text-decoration: underline;">Agile analysis</span></a></li>
<li>Thoughts on the <a href="http://www.agilemodeling.com/essays/businessAnalysts.htm"><span style="text-decoration: underline;">role of BA&#8217;s in agile projects</span></a></li>
<li><a href="http://www.agilemodeling.com/essays/barelyGoodEnough.html"><span style="text-decoration: underline;">Artifacts on agile projects</span></a></li>
</ul>
<p>A couple of interesting points came out in discussion afterwards.  They included the idea of &#8220;emphasising facillitation over artifact creation&#8221;, the concept of <a href="http://steve.emxsoftware.com/Domain+Driven+Design/DDD+Ubiqitous+Language"><span style="text-decoration: underline;">ubiquitous language</span></a>, and the notion that in <em>some </em>cases asking the customer to describe what they need is like a bunch of blind men describing an elephant.  Everyone you ask says something different, and what the business <em>really</em> needs might be different again.  In cases like these (where the customer organisation is, for whatever reason, unable to speak with a single authoritative voice) my thoughts are: don&#8217;t just say &#8220;that&#8217;s the customer&#8217;s problem&#8221;, or &#8220;we can&#8217;t do agile in these circumstances&#8221;, but instead apply BA skills to<a href="http://www.agilemodeling.com/essays/businessAnalysts.htm#TowardsAgileAnalysts"><span style="text-decoration: underline;"> help the customer to articulate their needs</span></a>.</p>
<p>&gt;Finally, here is the page on <a href="http://www.agilekiwi.com/negotiation.htm"><span style="text-decoration: underline;">negotiation</span></a>, which I mentioned at the end.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/agile/big-lessons-from-a-little-process/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Making Better Programmers</title>
		<link>http://www.agilekiwi.com/other/agile/making-better-programmers/</link>
		<comments>http://www.agilekiwi.com/other/agile/making-better-programmers/#comments</comments>
		<pubDate>Wed, 21 Mar 2007 20:40:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Agile Software Development]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/news/making-better-programmers/</guid>
		<description><![CDATA[<p>Regular feedback is a key element of agile development.&#160; Rapid feedback improves our software.&#160; I suggest it also improves <i>us</i>, the people who write the software.</p>
<p>I&#8217;ve just read a fascinating article on <a href="http://www.freakonomics.com/times0507col.html" class="broken_link"><u>where talent comes from</u></a>, over on <a href="http://www.freakonomics.com"><u>Freakonomics.com</u></a>.&#160; It outlines research into the key factors&#8230; <a href="http://www.agilekiwi.com/other/agile/making-better-programmers/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Regular feedback is a key element of agile development.&#160; Rapid feedback improves our software.&#160; I suggest it also improves <i>us</i>, the people who write the software.</p>
<p>I&#8217;ve just read a fascinating article on <a href="http://www.freakonomics.com/times0507col.html" class="broken_link"><u>where talent comes from</u></a>, over on <a href="http://www.freakonomics.com"><u>Freakonomics.com</u></a>.&#160; It outlines research into the key factors that develop talent.&#160; The key factors are:</p>
<blockquote><p><i>&quot;setting specific goals, </i><i><b>obtaining </b></i><i><b>immediate feedback</b></i><i> </i><i>and concentrating as much on technique as on outcome&quot;</i>. [emphasis added]</p>
</blockquote>
<p>For instance, life-long learning comes naturally to surgeons because they get instant feedback on the effectiveness of their decisions.&#160; But similar learning doesn&#8217;t come naturally to doctors in fields where there is a&#160; long delay between decision and outcome.</p>
<p>The research finds that development of talent is heavily dependent on the practitioner receiving prompt feedback on their decisions.&#160; The timeliness of the feedback matters.&#160; </p>
<p>Waterfall processes lack timeliness of feedback.&#160; A classic example would be an analyst or architect making decisions at the start of a waterfall project.&#160; Many months may pass before they learn the result of their decisions.&#160; (Sometimes they <i>never </i>learn the result because they move to another project before the first one is finished.&#160; Such so-called &quot;experience&quot; is of little value.)</p>
<p>In agile development, decision makers get feedback quickly.&#160; Timeboxed iterations give feedback in a few weeks; unit tests give feedback in minutes; and paired programmers give feedback in seconds.&#160; Research suggests this feedback doesn&#8217;t just improve the program; it also improves the programmers.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/agile/making-better-programmers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scientific Experiments</title>
		<link>http://www.agilekiwi.com/other/agile/scientific-experiments/</link>
		<comments>http://www.agilekiwi.com/other/agile/scientific-experiments/#comments</comments>
		<pubDate>Mon, 02 Oct 2006 17:28:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Agile Software Development]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/news/scientific-experiments/</guid>
		<description><![CDATA[<p>Steve Yegge points out that it&#8217;s very hard to do a valid <a href="http://steve-yegge.blogspot.com/2006/09/good-agile-bad-agile_27.html"><u>scientific experiment</u></a> in software development:</p>
<blockquote><p><i>&#34;You can&#8217;t have the same team do the same project twice; a bunch of stuff changes the second time around. You can&#8217;t have 2 teams do the same project; it&#8217;s too hard</i></p></blockquote><p>&#8230; <a href="http://www.agilekiwi.com/other/agile/scientific-experiments/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Steve Yegge points out that it&#8217;s very hard to do a valid <a href="http://steve-yegge.blogspot.com/2006/09/good-agile-bad-agile_27.html"><u>scientific experiment</u></a> in software development:</p>
<blockquote><p><i>&quot;You can&#8217;t have the same team do the same project twice; a bunch of stuff changes the second time around. You can&#8217;t have 2 teams do the same project; it&#8217;s too hard to control all the variables, and it&#8217;s prohibitively expensive to try it in any case. The same team doing 2 different projects in a row isn&#8217;t an experiment either.</i></p>
<p><i>About the best you can do is gather statistical data across a </i><i><b>lot </b></i><i>of teams doing a </i><i><b>lot </b></i><i>of projects, and try to identify similarities, and perform some regressions, and hope you find some meaningful correlations.&quot;</i></p>
</blockquote>
<p>That&#8217;s exactly how <a href="http://www.agilekiwi.com/crystal_clear.htm"><u>Crystal Clear</u></a> came about.&#160; Alistair Cockburn spent a lot of time studying successful teams, looking for the similarities, then he documented them.&#160; That&#8217;s not the kind of half-baked <a href="http://www.agilekiwi.com/fads.htm"><u>fad</u></a> which Steve criticises, it&#8217;s about as scientific as it gets (in our field).&#160; In fact, it was scientific enough to earn Alistair his Ph.D.&#160; His <a href="http://alistair.cockburn.us/index.php/People_and_methodologies_in_software_development"><u>doctoral dissertation is on-line</u></a> and makes suprisingly easy reading.&#160; I encourage you to read it, to see how Alistair grappled with the very problems Steve describes. (Eventually, he solved them much more successfully than Steve would expect. He documented his results as Crystal Clear).</p>
<p>Steve makes some very valid criticisms of the Agile movement.&#160;&#160; However, his assertion of a lack of scientific rigour is incorrect (in Alistair&#8217;s case, at least).&#160; Alistair conducted exactly the kind of research which Steve calls for, without any pre-conceived notions of what the outcome should be (he started years before the agile movement was founded).&#160; He came up with a simple, effective process &#8211; which happens to be agile. </p>
<p>Interestingly, Alistair&#8217;s research-based process is somewhat different from XP.&#160; As I&#8217;ve said before, <a href="http://www.agilekiwi.com/definition.htm"><u>XP is a subset of agile, not a synonym</u></a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/agile/scientific-experiments/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Negotiating your Development Process</title>
		<link>http://www.agilekiwi.com/other/agile/negotiating-your-development-process/</link>
		<comments>http://www.agilekiwi.com/other/agile/negotiating-your-development-process/#comments</comments>
		<pubDate>Sat, 20 May 2006 20:27:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Agile Software Development]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/news/negotiating-your-development-process/</guid>
		<description><![CDATA[<p><a href="/peopleskills/the-power-of-negotiation/">Principled Negotiation</a> also applies to defining your software development <em>process</em>.  You can&#8217;t choose Agile just because you like it.  You have to understand what your customers&#8217; interests are, and you have to seek a process which meets their interests and yours.</p>
<p>For instance: if the customer says they want a&#8230; <a href="http://www.agilekiwi.com/other/agile/negotiating-your-development-process/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p><a href="/peopleskills/the-power-of-negotiation/">Principled Negotiation</a> also applies to defining your software development <em>process</em>.  You can&#8217;t choose Agile just because you like it.  You have to understand what your customers&#8217; interests are, and you have to seek a process which meets their interests and yours.</p>
<p>For instance: if the customer says they want a detailed Gantt chart, that&#8217;s a <em>position. </em>(It&#8217;s a position which is not very compatible with most agile processes).  But their <em>interest </em>is in understanding the status of the project. A chart <a href="http://www.agilekiwi.com/agile_charts.htm"><span style="text-decoration: underline;">like this</span></a> might meet their interest equally well, while simultaneously meeting your interest in agility.</p>
<p>Customers also have a legitimate <em>interest </em>in protecting themselves from large cost increases and from <a href="http://www.agilekiwi.com/cutting_scope.htm"><span style="text-decoration: underline;">large scope cuts</span></a>.  Many agile teams <a href="http://www.agilekiwi.com/gurus_on_contracts.htm"><span style="text-decoration: underline;">unnecessarily</span></a> adopt an incompatible <em>position</em>.</p>
<p>This is why its so important to understand that <a href="http://www.agilekiwi.com/definition.htm"><span style="text-decoration: underline;">Agile is not just XP</span></a>.  You have a much wider <a href="http://alistair.cockburn.us/crystal/articles/wtatc/whattheagiletoolboxcontains.htm" class="broken_link"><span style="text-decoration: underline;">toolbox </span></a>to draw on than just the practices in Extreme Programming.  Be prepared to draw on the whole toolbox, and your own creativity, to find the process that best suits your customer.  And be prepared to <em>not</em> use certain tools on certain projects.  For instance, <a href="http://www.agiledevelopmentconference.com/files/XR1-3.pdf" class="broken_link"><span style="text-decoration: underline;">this XP team</span></a> (pdf) did not use pair programming; they replaced it with an alternative.</p>
<p>As agile developers, we know that <strong>good software is about customer-valued features. So is good process.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/agile/negotiating-your-development-process/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Definition of Agile Development</title>
		<link>http://www.agilekiwi.com/other/agile/definition-of-agile-development/</link>
		<comments>http://www.agilekiwi.com/other/agile/definition-of-agile-development/#comments</comments>
		<pubDate>Wed, 22 Feb 2006 21:21:13 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Agile Software Development]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/?p=46</guid>
		<description><![CDATA[<p>Agile development is hard to define, because most people define it by giving examples. For instance they give a specific description of Extreme Programming (XP), instead of defining of agile development in general.  We&#8217;ve ended up with a widespread misconception that agility is about XP techniques like Pair Programming and&#8230; <a href="http://www.agilekiwi.com/other/agile/definition-of-agile-development/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Agile development is hard to define, because most people define it by giving examples. For instance they give a specific description of Extreme Programming (XP), instead of defining of agile development in general.  We&#8217;ve ended up with a widespread misconception that agility is about XP techniques like Pair Programming and Test-Driven Development (TDD).<span id="more-46"></span></p>
<p style="padding-left: 30px;"><em>By the way, if XP is the only form of agile that you know, this page probably won&#8217;t make any sense.  Am I really saying that TDD is not part of the core definition of agile?  Yes I am.  Look for TDD in the <a href="http://www.agilemanifesto.org/">Agile Manifesto</a>.  It&#8217;s not there.  While TDD is a good thing, and I like it, it&#8217;s not the core essence of agility.  You&#8217;re welcome to define XP in prescriptive terms, mandating pairing and TDD, but those same prescriptive terms do not describe the agile movement as a whole.  It is, after all, about &#8220;<a href="http://www.agilemanifesto.org/">people and their interactions; over processes and tools</a>&#8220;.</em></p>
<p><em> </em><br />
Defining agility by describing XP is like defining democracy by describing America. Such a “definition” obscures the underlying concept with details of the chosen example.</p>
<p>Agility is not defined by TDD, just as democracy is not defined by having a President.  Democracy is defined as “choosing leaders in competitive elections”. It makes no difference whether you have a federal system <a href="http://en.wikipedia.org/wiki/Unitary_state">or not</a>;  whether the executive is or <a href="http://en.wikipedia.org/wiki/Parliamentary_system">isn&#8217;t</a> separate from the legislature; or which method you use to <a href="http://en.wikipedia.org/wiki/First_Past_the_Post_electoral_system">count</a> <a href="http://en.wikipedia.org/wiki/Proportional_representation">the</a> <a href="http://en.wikipedia.org/wiki/Electoral_college">votes</a> &#8211; it&#8217;s still democracy.</p>
<p>Do we have a similar definition of agile development?  One which is uncorrupted by specific examples and which defines the core underlying concept?  In many respects, we don&#8217;t.  The agile manifesto is the founding document of the agile movement (and the source of the term &#8220;agile development&#8221;).  It&#8217;s a great definition of what agile developers <em>think</em>; but it doesn&#8217;t concisely define what they <em>do</em>.  In other words, it talks about values and principles but not about practices.</p>
<p>Here&#8217;s my soundbite-size definition of agile:</p>
<blockquote><p>The agile movement asserts that software development works best under:<br />
<strong>Simple, iterative processes, which empahsise creativity and collaboration.</strong></p></blockquote>
<p>Other definitions include <a href="http://www.agilemodeling.com/essays/agileSoftwareDevelopment.htm">this one</a> from Scott Ambler and two really nice ones from Alistair Cockburn, <a href="http://bradapp.blogspot.com/2006/05/nutshell-definitions-of-agile.html">here</a>.</p>
<p><em>Notes:</em></p>
<p><em> </em></p>
<p><em>I use the word &#8220;creativity&#8221; to mean &#8220;inventiveness&#8221; &#8211; i.e. &#8220;producing solutions to difficult problems&#8221; (not just artistic ones).  <a href="http://en.wikipedia.org/wiki/Problem_solving#Characteristics_of_Difficult_Problems">The most difficult problems </a>are those involving (i) lack of clarity of the situation [e.g. requirements], (ii) multiple goals, (iii) complexity and (iv) time considerations &#8211; sounds like software!</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/agile/definition-of-agile-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Crystal Clear Methodology</title>
		<link>http://www.agilekiwi.com/other/agile/crystal-clear-methodology/</link>
		<comments>http://www.agilekiwi.com/other/agile/crystal-clear-methodology/#comments</comments>
		<pubDate>Sat, 14 Jan 2006 20:27:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Agile Software Development]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/other/agile/crystal-clear-methodology/</guid>
		<description><![CDATA[<p>Crystal Clear is a methodology that summarises 10 years of research into successful software teams.  Which things really matter?  Which things most influence the project outcome?</p>
<p><span id="more-66"></span><br />
The Crystal Clear <a href="http://www.amazon.com/exec/obidos/tg/detail/-/0201699478/ref=ase_alistaircockburn/102-9370806-2432911?v=glance&#38;s=books"><span style="text-decoration: underline;">book</span></a>, by <a href="http://alistair.cockburn.us/"><span style="text-decoration: underline;">Alistair Cockburn</span></a>, is now available.  <a href="http://www.aw-bc.com/catalog/academic/product/0,1144,0201699478-PRE,00.html"><span style="text-decoration: underline;">The preface</span></a> gives an excellent overview and <a href="http://www.informit.com/articles/article.asp?p=345009"><span style="text-decoration: underline;">this sample</span></a>&#8230; <a href="http://www.agilekiwi.com/other/agile/crystal-clear-methodology/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Crystal Clear is a methodology that summarises 10 years of research into successful software teams.  Which things really matter?  Which things most influence the project outcome?</p>
<p><span id="more-66"></span><br />
The Crystal Clear <a href="http://www.amazon.com/exec/obidos/tg/detail/-/0201699478/ref=ase_alistaircockburn/102-9370806-2432911?v=glance&amp;s=books"><span style="text-decoration: underline;">book</span></a>, by <a href="http://alistair.cockburn.us/"><span style="text-decoration: underline;">Alistair Cockburn</span></a>, is now available.  <a href="http://www.aw-bc.com/catalog/academic/product/0,1144,0201699478-PRE,00.html"><span style="text-decoration: underline;">The preface</span></a> gives an excellent overview and <a href="http://www.informit.com/articles/article.asp?p=345009"><span style="text-decoration: underline;">this sample chapter</span></a> is also available on line.  (You&#8217;ll have to buy the book to read the rest :-)</p>
<h2>Briefly</h2>
<p>Crystal Clear is an agile methodology for projects with small teams, less than about 10 people in size.</p>
<p>Team size is important, because if you have a small team it&#8217;s easiest to adopt a methodology that already fits.  It is more difficult to start with a larger one and prune it back.</p>
<h2>Why Crystal Clear?></h2>
<p>Several aspects of Crystal Clear impress me:</p>
<ul>
<li>It&#8217;s based on <a href="http://www.agilekiwi.com/scientific_experiments.htm"><span style="text-decoration: underline;">observations of many successful teams</span></a>.  Those observations give Crystal a sounder base than most competing methodologies, which typically trace their roots back to a smaller number of projects. For example, XP was &#8220;born&#8221; on the <a href="http://www.martinfowler.com/bliki/C3.html"><span style="text-decoration: underline;">C3 project</span></a>.</li>
<li>It has a different slant on things.  We&#8217;ve come to expect a certain &#8220;mechanical&#8221; feel to processes, &#8220;Do A, B and C, and the result will be D, where D is great software!&#8221;.  We&#8217;ve come to expect methodologies to contain details such as diagramming notations and workflows.  And yet, somehow, that&#8217;s not what matters <em>most</em>.  Crystal Clear describes the things that really do matter, the things that make the <em>most </em>difference to the success or failure of a project.</li>
<li>It <a href="http://www.agilekiwi.com/fixed_price_contracts.htm"><span style="text-decoration: underline;">supports</span></a> fixed price contracts.  Whether you love them or hate them, you probably use them.  Crystal Clear is flexible enough to suit.</li>
<li>It&#8217;s not &#8220;all or nothing&#8221;.  Crystal Clear will be useful to the people who adopt it, but it will also be useful to people who <em>don&#8217;t</em> adopt it.  At least, not all of it. Teams using RUP, XP or other methodologies can &#8220;borrow&#8221; useful techniques from Crystal Clear.  Likewise, if you <em>are</em> doing Crystal Clear, you can borrow good bits from other methodologies.</li>
<li>It gives you useful guidance on how to adopt the methodology, and how to tailor it to your organisation.  I find this a stark contrast with RUP, which says &#8220;tailor me&#8221;, but doesn&#8217;t seem to give enough guidance on exactly <em>how</em> to do so.</li>
<li>It &#8220;feels right&#8221;, because it has a lot in common with the successful projects I&#8217;ve worked on in the past.  This is not surprising, considering it&#8217;s based on observations of successful projects!</li>
<li>Crystal Clear is just a book (and a growing community of users).  If you want to adopt Crystal Clear, it will only cost you the price of a book, plus a little of your time (days, rather than months).</li>
</ul>
<h2>More Information</h2>
<p>While the book is the best resource, you may also like to see:</p>
<ul>
<li><a href="http://alistair.cockburn.us/"><span style="text-decoration: underline;">The author&#8217;s site</span></a> (See <a href="http://alistair.cockburn.us/crystal/articles/clm/crystallightmethods.htm" class="broken_link"><span style="text-decoration: underline;">this page</span></a> in particular.  It describes how Crystal Clear relates to other &#8220;Crystal&#8221; methodologies, which are for larger teams)</li>
<li><a href="http://c2.com/cgi/wiki/wiki?CrystalClearMethodology"><span style="text-decoration: underline;">Crystal Clear discussion</span></a> on Wiki Wiki web<img src="http://www.agilekiwi.com/1x1.gif" border="0" alt="" hspace="0" width="1" height="11" align="bottom" /></li>
<li>My &#8220;<a href="http://www.agilekiwi.com/methodology_map.htm"><span style="text-decoration: underline;">Methodology Map</span></a>&#8220;<img src="http://www.agilekiwi.com/1x1.gif" border="0" alt="" hspace="0" width="1" height="11" align="bottom" /></li>
<li>Martin Fowler&#8217;s <a href="http://www.martinfowler.com/articles/newMethodology.html#Crystal"><span style="text-decoration: underline;">comments about Crystal</span></a></li>
</ul>
<p><em> </em></p>
<h2><em>Summary</em></h2>
<p>While no methodology is a <a href="http://www.agilekiwi.com/fads.htm"><span style="text-decoration: underline;">magic formula for success</span></a>, if you&#8217;re involved in small-team software development, you should read this book.  Crystal Clear is not mutually exclusive with other methodologies, so you&#8217;ll find its insights valuable no matter how your team is organised.</p>
<p>Amazon&#8217;s page for the book is <a href="http://www.amazon.com/exec/obidos/tg/detail/-/0201699478/ref=ase_alistaircockburn/102-9370806-2432911?v=glance&amp;s=books"><span style="text-decoration: underline;">here</span></a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/agile/crystal-clear-methodology/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comparison to Traditional Development</title>
		<link>http://www.agilekiwi.com/other/agile/comparison-to-traditional-development/</link>
		<comments>http://www.agilekiwi.com/other/agile/comparison-to-traditional-development/#comments</comments>
		<pubDate>Thu, 29 Dec 2005 21:46:55 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Agile Software Development]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/?p=57</guid>
		<description><![CDATA[<p>In my on-going quest to answer the question &#8220;What is agile development?&#8221;, here is a point-by-point comparison with traditional development.<span id="more-57"></span>I&#8217;ll label the traditional approach with &#8220;T&#8221;, and the agile approach with &#8220;A&#8221;&#8230;</p>
<h2>Iterative vs Waterfall</h2>
<p>T: Serial (&#8220;waterfall&#8221;) development is best (or at least normal/acceptable)<br />
A: Always use&#8230; <a href="http://www.agilekiwi.com/other/agile/comparison-to-traditional-development/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>In my on-going quest to answer the question &#8220;What is agile development?&#8221;, here is a point-by-point comparison with traditional development.<span id="more-57"></span>I&#8217;ll label the traditional approach with &#8220;T&#8221;, and the agile approach with &#8220;A&#8221;&#8230;</p>
<h2>Iterative vs Waterfall</h2>
<p>T: Serial (&#8220;waterfall&#8221;) development is best (or at least normal/acceptable)<br />
A: Always use iterative development</p>
<h2>Workflow</h2>
<p>T:  Design, Build and Test follow each other, in that order<br />
A: Design, Build and Test influence each other, so they should be concurrent and iterative</p>
<h2>Requirements Quality</h2>
<p>To ensure requirements are well-defined and well-understood:</p>
<p>T:  document them thoroughly; users see the system when finished<br />
A: document them concisely; users see the system early and often</p>
<h2>Knowledge Transfer</h2>
<p>To ensure everyone understands the system:</p>
<p>T:  Place importance on written documentation<br />
A: Place importance on frequent verbal communication; regular working releases; and clear, readable source code</p>
<h2>Team Composition</h2>
<p>T:  Team members should be specialists (BA, Designer, Developer, Tester etc)<br />
A: Team members should be generalists (each with <a href="http://www.agilemodeling.com/essays/generalizingSpecialists.htm">their own particular strengths</a>)</p>
<h2>Team Size</h2>
<p>A successful process is one that:</p>
<p>T:  Organises a large team<br />
A: Gets the same output from a small team</p>
<h2>Planning</h2>
<p>T:  Make a Gantt Chart at the start; maintain it during the project<br />
A: Make a Task/Feature List at the start; maintain it during the project</p>
<h2>Monitoring</h2>
<p>Measure progress:</p>
<p>T:  against the Plan<br />
A: against the Task/Feature List (tracking which ones are completed).  But don&#8217;t just monitor your progress; also monitor the quality of that progress by testing and releasing regularly.</p>
<h2>Managing Change</h2>
<p>It&#8217;s hard to change software that&#8217;s already written, so:</p>
<p>T:  Control or minimise change<br />
A: Make change easier</p>
<h2>Predicting Completion</h2>
<p>Predict final completion date and cost using:</p>
<p>T:  the updated Gantt Chart<br />
A: the team&#8217;s progress to date</p>
<h2>Process Definition</h2>
<p>To help people successfully follow it, the development process should be:</p>
<p>T:  thoroughly documented<br />
A: concise and memorable</p>
<h2>Process Improvement</h2>
<p>Process improvement is best driven by:</p>
<p>T:  metrics<br />
A: the people involved</p>
<h2>Philosophy</h2>
<p>T:  Software development is a construction process, so making detailed plans is advisable.<br />
A: Software development is a creative process, so making detailed plans is unrealistic.</p>
<p>Instead, agile processes make less-detailed plans and manage risk through iteration, continuous quality control, and feedback.</p>
<h2>Success is</h2>
<p>T:  Meeting the initial predictions of cost and schedule<br />
A:  Delivering value for money</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/agile/comparison-to-traditional-development/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>The Trust Barrier</title>
		<link>http://www.agilekiwi.com/other/agile/the-trust-barrier/</link>
		<comments>http://www.agilekiwi.com/other/agile/the-trust-barrier/#comments</comments>
		<pubDate>Wed, 04 May 2005 20:34:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Agile Software Development]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/news/the-trust-barrier/</guid>
		<description><![CDATA[<p>David Anderson presents <a href="http://www.agilemanagement.net/Articles/Weblog/TrustistheEssenceofAgile.html" class="broken_link"><span style="text-decoration: underline;">three facets of agility</span></a>:</p>
<ol>
<li>The &#8220;toolbox&#8221; of iterative development techniques</li>
<li>The belief that people are more significant than process</li>
<li>Trust</li>
</ol>
<p>David points out that trust underlies the greater efficiency of agile approaches. <a href="http://www.amazon.com/gp/product/0321150783/103-2358856-3351051?v=glance&#38;n=283155"><span style="text-decoration: underline;">Lean Software Development</span></a> also emphasises trust.</p>
<p>It is easy to&#8230; <a href="http://www.agilekiwi.com/other/agile/the-trust-barrier/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>David Anderson presents <a href="http://www.agilemanagement.net/Articles/Weblog/TrustistheEssenceofAgile.html" class="broken_link"><span style="text-decoration: underline;">three facets of agility</span></a>:</p>
<ol>
<li>The &#8220;toolbox&#8221; of iterative development techniques</li>
<li>The belief that people are more significant than process</li>
<li>Trust</li>
</ol>
<p>David points out that trust underlies the greater efficiency of agile approaches. <a href="http://www.amazon.com/gp/product/0321150783/103-2358856-3351051?v=glance&amp;n=283155"><span style="text-decoration: underline;">Lean Software Development</span></a> also emphasises trust.</p>
<p>It is easy to fall into the trap of seeing trust as a <em>prerequisite </em>of agility.  (I used to think that way myself.)  Seeing trust as a prerequisite is both inaccurate and counter-productive. At the very start of a business relationship, trust is naturally absent.</p>
<p>If trust is absent, what do you do?  You can&#8217;t build trust with PowerPoint; you have to build it with collaboration.  So we need <a href="http://www.agilekiwi.com/contracts_for_agile_projects.htm"><span style="text-decoration: underline;">contracts</span></a> that let us start collaborating before trust is fully established.  Then, as we begin collaborating, we&#8217;ll use agile practices to build trust.</p>
<p>We can <a href="http://bradapp.blogspot.com/2005/02/first-thing-to-build-is-trust.html"><span style="text-decoration: underline;">build trust </span></a>with:</p>
<ul>
<li><a href="http://www.clarkeching.com/2005/04/confidence_and_.html"><span style="text-decoration: underline;">Visibility</span></a> -  making visible progress early and often</li>
<li>Honesty.</li>
<li>Competence.</li>
</ul>
<p>Visibility, honesty and competence reinforce each other. Competence won&#8217;t build trust unless it&#8217;s made visible.  Honesty is your only choice when progress is visible (and in itself, honesty builds trust).  Honesty is easy when it&#8217;s backed by competence (and rather awkward when it&#8217;s not!)</p>
<p>Finally, from day one, we need to harness the power of <a href="http://www.agilekiwi.com/negotiation.htm"><span style="text-decoration: underline;">principled negotiation</span></a>. Whether we&#8217;re trying to win the contract or simplify a complex requirement, we need the skills and mindset to seek fair and beneficial solutions for everyone.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/agile/the-trust-barrier/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>One-Page Guide to Agility</title>
		<link>http://www.agilekiwi.com/other/agile/one-page-guide-to-agility/</link>
		<comments>http://www.agilekiwi.com/other/agile/one-page-guide-to-agility/#comments</comments>
		<pubDate>Mon, 14 Feb 2005 21:11:42 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Agile Software Development]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/?p=42</guid>
		<description><![CDATA[<p>Agile development can look a bit crazy, at first.</p>
<p>I&#8217;m writing this guide to explain the foundations of agility, outline its benefits, and show why it&#8217;s not so crazy after all.<span id="more-42"></span></p>
<h2>A Brief Definition</h2>
<p>Agile development = &#8220;pragmatic iterative development&#8221;.  If you&#8217;re agile, you produce software in small stages&#8230; <a href="http://www.agilekiwi.com/other/agile/one-page-guide-to-agility/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Agile development can look a bit crazy, at first.</p>
<p>I&#8217;m writing this guide to explain the foundations of agility, outline its benefits, and show why it&#8217;s not so crazy after all.<span id="more-42"></span></p>
<h2>A Brief Definition</h2>
<p>Agile development = &#8220;pragmatic iterative development&#8221;.  If you&#8217;re agile, you produce software in small stages (i.e. you break each project into a series of mini-projects) and you use practical techniques pioneered by other successful teams.  That&#8217;s a very simple definition of agile development. <em>[For more thoughts on the surprisingly difficult task of defining agile development, see <a href="definition-of-agile-development">this post</a>]</em></p>
<p>Many processes fit that definition.  Extreme Programming (XP) is one of them; the others include Feature Driven Development, Crystal Clear and Scrum.  Each process is different.  For instance, up-front design is encouraged by Feature Driven Development but it&#8217;s discouraged by XP; pair programming is required by XP but other processes say it&#8217;s optional or don&#8217;t mention it.</p>
<p>The most important common thread, uniting all agile process, is their commitment to pragmatic iterative development.  Other common elements include flexibility, concurrent workflows and rapid feedback.</p>
<h2>History of Agility</h2>
<p>In the mid 90&#8217;s, researchers documented a major company&#8217;s development process. The process bore the hallmarks of what we now call &#8220;agility&#8221;: it was iterative, encouraged individual creativity, allowed lightweight to non-existent design documents, and included frequent automated tests of the evolving software.  Can you guess the company?</p>
<p>It was Microsoft. [1]</p>
<p>The Microsoft document, which you&#8217;ll find amongst the references listed below, illustrates two important points:</p>
<ul>
<li>Agile techniques are older than the &#8220;agile&#8221; buzzword.  For instance, iterative development dates back to the 1950s, was used on the space shuttle, and is now endorsed by the US Department of Defense. [2]</li>
<li>Agile techniques have proven their worth in successful teams.   Microsoft is only one example.  When Dr Alistair Cockburn set out to study successful teams in the mid 1990&#8217;s, he discovered similar techniques all around the world.  Ironically, many teams apologized for not following traditional processes.  Only when team after team made the same apology &#8211; all of them working on successful projects &#8211; did he realise that no apology was necessary. [3,7]</li>
</ul>
<p>The techniques we now call &#8220;agile&#8221; evolved over several decades.  They are popular because they work.</p>
<h2>Benefits of Agility</h2>
<p>When Dr Cockburn studied successful teams, he found more than just the widespread use of agile techniques.  He also discovered that agility saves time.  Dr Cockburn estimates that agile techniques reduce costs by at least 30%. [4]</p>
<p>When considering such big savings, it&#8217;s only natural to expect a corresponding drop in quality.  Interestingly, that&#8217;s not what happens; agile processes enhance speed and quality.</p>
<p>Exactly the same thing happened when Japanese car makers adopted &#8220;lean manufacturing&#8221; in the 1980s &#8211; their cars became cheaper and better.  Authors Tom and Mary Poppendieck report many parallels between the Japanese auto industry and agile development.  For instance, both rely on rapid feedback, continuous quality control, and concurrent workflows (instead of the serial workflow we call &#8220;waterfall).  [5]</p>
<p>I&#8217;d like to draw your attention to two points in particular:</p>
<ol>
<li>Agile processes &#8220;debug&#8221; requirements. There&#8217;s more to quality than merely making the software conform to the requirements; you must also make the requirements conform to the users. Agile processes create software in small steps, getting rapid feedback from users at every step.  Seeking regular feedback amounts to &#8220;debugging&#8221; the requirements &#8211; testing to make sure they really meet the users&#8217; needs and correcting any deficiencies found.  Traditional &#8220;waterfall&#8221; processes gather requirements carefully, but offer few tools to verify their correctness.</li>
<li>Agile processes encourage continuous quality control. They test throughout the project and fix bugs promptly.  (They never defer testing and fixing to the end of the project.)  Imagine taking the agile approach to its logical conclusion: we&#8217;d test so regularly that our software would always be fully tested; we&#8217;d fix all bugs immediately.  With such a regime, the bug count would hover near zero for the entire project.  This is a rather extreme approach &#8211; in fact, it&#8217;s the exact approach used in Extreme Programming.</li>
</ol>
<p>Other agile processes are similar but not so strict.  Typically you&#8217;re allowed a few unfixed bugs but you still have to produce a high-quality release at the end of each month.</p>
<p>By debugging requirements and continuously monitoring quality, agile processes detect problems early and fix them before they grow.   The net effect is lower risk and higher certainty of project outcome.</p>
<h2>Visible Progress</h2>
<p>The agile approach to quality control has an important side effect: it demonstrates the project&#8217;s status.  Because tested software is released at regular intervals, the team&#8217;s progress (or lack thereof!) is clearly displayed.  You never have that awkward situation we see on traditional projects: the developers claim to be &#8220;70% complete&#8221; but no-one&#8217;s sure how many bugs there are or how long it will take to fix them.  In fact, no-one&#8217;s sure whether the developers really are 70% complete; perhaps there&#8217;s another 70% which they haven&#8217;t even started!  :-)</p>
<p>On an agile project, &#8220;70% complete&#8221; is a much more precise statement.  It means 70% of the planned features are debugged, tested and could go live tomorrow (if we wanted).  We can even fire up the latest release to see the features with our own eyes.  We can&#8217;t kid ourselves (or our customers) with overly-optimistic progress reports. [6]</p>
<h2>Fixed Price Contracts</h2>
<p>A fixed price project is a great time for agile development, since under a fixed budget you need to work quickly without sacrificing quality, and that&#8217;s exactly what agile processes let you do.</p>
<p>Unfortunately, there&#8217;s been some confusion about agility under fixed price contracts.  (I&#8217;m talking about contracts with fixed price and scope).  Advocates of Extreme Programming (XP) say you can&#8217;t use agile processes on fixed price projects.  While that may be true for XP, it&#8217;s not true for agile processes in general.  Take Crystal Clear for example, it&#8217;s an agile process that was developed on fixed price projects.  Crystal Clear supports changing requirements, just like XP, but it also supports the other alternative: fix the requirements at the start and don&#8217;t change them later.[7]</p>
<h2>Conclusion</h2>
<p>Agile development is good software engineering &#8211; different, but good.</p>
<p>Agile techniques have proven themselves in successful teams around the world. They save money, enhance quality, and demonstrate progress with the ultimate status report &#8211; working software.</p>
<p><em>References[ 1 ] <a href="http://portal.acm.org/citation.cfm?id=255698">How Microsoft Builds Software,</a> M.A. Cusumano and R.W. Selby. (Costs US$10 unless you&#8217;re a member of the ACM)  Cusumano and Selby studied Microsoft from 1993 to mid-1995, 6 years before the official &#8220;birth&#8221; of the agile movement.[ 2 ] <a href="http://csdl.computer.org/comp/mags/co/2003/06/r6047abs.htm">Iterative and Incremental Development: A Brief History</a>, Craig Larman and Victor R. Basili. (Costs US$19 unless you&#8217;re a member of the IEEE)</p>
<p>[ 3 ] <a href="http://alistair.cockburn.us/crystal/articles/clm/crystallightmethods.htm" class="broken_link">Crystal Light Methods</a>, Dr. Alistair Cockburn.</p>
<p>[ 4 ] <a href="http://alistair.cockburn.us/crystal/articles/ptfd/processthefourthdimension.htm" class="broken_link">Process: The Fourth Dimension</a>, Dr. Alistair Cockburn.</p>
<p>[ 5 ] <a href="http://www.poppendieck.com/">Website</a> and book (Lean Software Development), Tom and Mary Poppendieck</p>
<p>[ 6 ] I first saw this described in <a href="http://www.poppendieck.com/">Debugging the Development Process</a>, the 1994 book by Microsoft&#8217;s Steve Maguire. The same idea crops up throughout the agile community, but it&#8217;s seldom described so clearly.</p>
<p>[ 7 ] <a href="http://www.agilekiwi.com/crystal_clear.htm">Crystal Clear</a>, Dr. Alistair Cockburn.</p>
<p></em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/agile/one-page-guide-to-agility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Building on People’s Strengths</title>
		<link>http://www.agilekiwi.com/other/agile/building-on-peoples-strengths/</link>
		<comments>http://www.agilekiwi.com/other/agile/building-on-peoples-strengths/#comments</comments>
		<pubDate>Tue, 14 Dec 2004 20:32:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Agile Software Development]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/news/building-on-peoples-strengths/</guid>
		<description><![CDATA[<p><a href="http://alistair.cockburn.us"><u>Alistair Cockburn</u></a> <a href="http://alistair.cockburn.us/crystal/articles/cpanfocisd/characterizingpeopleasnonlinear.html" class="broken_link"><u>points out</u></a> that traditional processes are based on an assumption that people will successfully accomplish things that they normally struggle with.&#160; </p>
<p>In particular, it is assumed that people will change their habits to follow detailed new instructions.&#160; Unfortunately, humans aren&#8217;t very good at that!&#160; Old&#8230; <a href="http://www.agilekiwi.com/other/agile/building-on-peoples-strengths/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://alistair.cockburn.us"><u>Alistair Cockburn</u></a> <a href="http://alistair.cockburn.us/crystal/articles/cpanfocisd/characterizingpeopleasnonlinear.html" class="broken_link"><u>points out</u></a> that traditional processes are based on an assumption that people will successfully accomplish things that they normally struggle with.&#160; </p>
<p>In particular, it is assumed that people will change their habits to follow detailed new instructions.&#160; Unfortunately, humans aren&#8217;t very good at that!&#160; Old habits die hard and, unlike the computers we program, we don&#8217;t reliably follow written instructions.</p>
<p>Perhaps this is why so many process improvement initiatives fizzle out (especially big ones, like adopting RUP).&#160; The new process may be diligently used when first adopted, but then it falls into disuse as people revert to their old habits. </p>
<p>Agile processes are different.&#160; Instead of basing themselves on something humans do badly, agile processes leverage human strengths.&#160; These strengths include the ability to communicate, collaborate, and use initiative.</p>
<p>Agile processes add structure to these natural strengths.&#160; The structure includes tools, techniques and disciples that have proven themselves in real-world software development. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/agile/building-on-peoples-strengths/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
