<?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>Tuning People, Processes, and Projects to Power Results &#187; agile</title>
	<atom:link href="http://www.donaldegray.com/tag/agile/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.donaldegray.com</link>
	<description>Donald E. Gray</description>
	<lastBuildDate>Tue, 27 Dec 2011 13:01:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Agile Principles Shine Light on Development Projects</title>
		<link>http://www.donaldegray.com/agile-principles-shine-light-on-development-projects/</link>
		<comments>http://www.donaldegray.com/agile-principles-shine-light-on-development-projects/#comments</comments>
		<pubDate>Fri, 28 Aug 2009 12:46:44 +0000</pubDate>
		<dc:creator>Don</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[CLD/DoE]]></category>
		<category><![CDATA[improving processes]]></category>

		<guid isPermaLink="false">http://donaldegray.com/agile-principles-shine-light-on-development-projects/</guid>
		<description><![CDATA[I settled into the visitor&#8217;s chair across the desk from Nate. Looking at Nate I said &#8220;So tell me about your project.&#8221; RULE II: START WHERE THE SYSTEM IS1 Nate smiled and wistfully said: &#8220;Well, I&#8217;m the project manager and ScrumMaster. John will be the Product Owner. He works in our North East office. He should be able to represent the user community. He used to work in it. The tech lead and development team work in Europe.&#8221; Pausing he continued, &#8220;From what I&#8217;ve read,]]></description>
			<content:encoded><![CDATA[<p>I settled into the visitor&#8217;s chair across the desk from Nate. Looking at Nate I said &#8220;So tell me about your project.&#8221;</p>
<h4 id="RULE_II_START_WHERE_THE_SYSTEM_IS_sup_1_sup_" class="showhide_heading">RULE II: START WHERE THE SYSTEM IS<sup>1</sup></h4>
<p>Nate smiled and wistfully said: &#8220;Well, I&#8217;m the project manager and ScrumMaster. John will be the Product Owner. He works in our North East office. He should be able to represent the user community. He used to work in it. The tech lead and development team work in Europe.&#8221; Pausing he continued, &#8220;From what I&#8217;ve read, the Pundits suggest we&#8217;re doing almost everything wrong. But it&#8217;s the reality I&#8217;m forced to deal with.&#8221;</p>
<p>&#8220;So Nate, what do you know about the <a href="http://agilemanifesto.org/" target="_blank">Agile Manifesto?</a>&#8221; I asked. &#8220;Oh, the &#8216;We value Individuals and interactions over processes and tools&#8217; stuff?&#8221; Nate replied. &#8220;Absolutely, but have you ever clicked on the <a href="http://agilemanifesto.org/principles.html" target="_blank">twelve principals</a> link? No? Let&#8217;s take a look at them and see what might apply and help you with your project.&#8221;</p>
<p>Like me, the clients I work with want to improve their effectiveness. When I visit clients I&#8217;m aware that with respect to their system, I&#8217;m both spatially and temporally blind.<sup>2</sup> I don&#8217;t know what has happened with the people and organization prior to my arrival (temporal blindness). The information I do gather usually represents at most a handful of viewpoints on what&#8217;s happening (spatial blindness).</p>
<p>Is a radical new start, a revolution the best way to achieve effectiveness? Or would changing just a little now, some more soon, evolving toward the final goal be a better approach? The best answer I have today is, &#8220;It all depends.&#8221; Nate works in a multinational conglomerate. Revolution will be stomped out faster than the speed of light. But evolution, starting where they are, inspecting and adapting has a chance to work.</p>
<p>We spent the next day and a half working through the twelve principles and how Nate could implement them in his project.</p>
<ul>
<li> We started reworking the software architecture list into user stories.</li>
<li> We talked about Done, Done, Done. We reviewed the various types of testing and how/when to do them.</li>
<li> Nate planned to have two week sprints. In addition to this, he&#8217;s now planning to have an automatic push to the test environment after every sprint.</li>
<li> Potential system users will interaction with the code in the test environment and provide feedback to the product owner.</li>
<li> We discussed metrics for the sprints and how he could use velocity to gauge project progress for the releases.</li>
<li> How to conduct the five Scrum ceremonies.</li>
</ul>
<p>In the end, the major hurdle remains the team&#8217;s distributed nature. Otherwise, Nate&#8217;s project embraces the agile principles.</p>
<p>As I was leaving Nate said, &#8220;Yes, I know it&#8217;s not ideal agile. But it&#8217;s where we are. In time, we hope to build on our successes and eventually change how IT projects get identified, defined and funded.&#8221;</p>
<p>The flame flickers and light shines.</p>
<p>What&#8217;s your experience? Revolution or evolution? Send me an email.</p>
<p><sup>1</sup>Herbert Shepard, Rules of Thumb for Change Agents, 1974 <a class="wiki" href="http://www.nickheap.co.uk/articles.asp?art_id=257" target="_blank">http://www.nickheap.co.uk/articles.asp?art_id=257</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.donaldegray.com/agile-principles-shine-light-on-development-projects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Boomerang Measurements</title>
		<link>http://www.donaldegray.com/boomerang-measurements/</link>
		<comments>http://www.donaldegray.com/boomerang-measurements/#comments</comments>
		<pubDate>Wed, 06 Aug 2008 19:52:58 +0000</pubDate>
		<dc:creator>Don</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[improving processes]]></category>
		<category><![CDATA[systems thinking]]></category>

		<guid isPermaLink="false">http://donaldegray.com/boomerang-measurements/</guid>
		<description><![CDATA[You can tell a lot from how a story starts. If you hear &#8220;Once upon a time &#8230;&#8221; you&#8217;ll probably hear a fairy tale like &#8220;The Three Little Pigs&#8221; or &#8220;The Little Red Hen&#8221;. Around camp fires, kayakers like to tell stories that begin with &#8220;No kidding, there I was &#8230;&#8221; and a tale of heart thumping excitement and harrowing escapades of misfortune or lucky escape. In software development stories often begin (or end) with &#8220;I&#8217;m serious. You can&#8217;t make up stuff like this.&#8221;1 I]]></description>
			<content:encoded><![CDATA[<p>You can tell a lot from how a story starts. If you hear &#8220;Once upon a time &#8230;&#8221; you&#8217;ll probably hear a fairy tale like &#8220;The Three Little Pigs&#8221; or &#8220;The Little Red Hen&#8221;. Around camp fires, kayakers like to tell stories that begin with &#8220;No kidding, there I was &#8230;&#8221; and a tale of heart thumping excitement and harrowing escapades of misfortune or lucky escape. In software development stories often begin (or end) with &#8220;I&#8217;m serious. You can&#8217;t make up stuff like this.&#8221;<sup>1</sup></p>
<p>I was flipping through an old work note book and came across the following story.</p>
<p>I spent three days working with a client who had adopted Scrum for project management about six months earlier. On the fourth day I attended a Sprint planning two (user stories to task with time estimates) meeting. As we talked about stories and sizes, George asked the following question. &#8220;How do we deal with work that is too big to finish in a sprint?&#8221; In all my time coaching teams, I haven&#8217;t found a user story so large that it couldn&#8217;t be done in a sprint. If there is such a story, it usually an epic that can be further divided into smaller stories.</p>
<p>Wanting to be helpful I said, &#8220;Well, split the story into smaller stories.&#8221; Mentally allowing that I haven&#8217;t seen all the possible user stories in the world (and there /MIGHT/ be one story so large it couldn&#8217;t be finished in a sprint, I continued &#8230; &#8220;If that doesn&#8217;t work, pull the work into the sprint and burn down as much as possible. You don&#8217;t get velocity points, but if the backlog is properly ordered you&#8217;ll have work done for the start of the next sprint.&#8221; Hoping to point to some future perfect day where the team was burning down faster than anticipated I added, &#8220;It&#8217;s just like when the sprint burns down faster than estimated. You pick the next story from the Product Backlog and start work on it.&#8221;</p>
<p>George replied &#8220;We&#8217;d never do that. We get graded on how well we complete our stories. If we have unfinished work it counts against us.&#8221;</p>
<p><strong>The Fundamental Software Development Process</strong></p>
<p>The fundamental software development process looks like:</p>
<p style="text-align: center;"><a href="http://www.test.donaldegray.com/wp-content/uploads/2010/02/GradingSprintsOpen.png"><img class="size-full wp-image-192 aligncenter" title="Fundamental Software Development Process" src="http://www.test.donaldegray.com/wp-content/uploads/2010/02/GradingSprintsOpen.png" alt="Fundamental Software Development Process" width="407" height="57" /></a></p>
<p>This system dynamics drawing<sup>2</sup> varies somewhat from the Diagram of Effects (aka Causal Loop Diagram) I often use by showing the stocks (levels) and flows (rates) associated with the development process. User stories flow into the Product Backlog. The team converts the user stories into Implemented Features at some rate (Velocity). By and large it&#8217;s how everyone develops software. Steps may have different names and take more time to complete (or not) but we take what user&#8217;s want and give them software that performs those actions.</p>
<p>An important aspect of the Fundamental Software Development Process involves recognizing it&#8217;s an open loop system and open loop systems are inherently stable. User stories come in as they will and become part of the Product Backlog. The team works at some natural development speed based on their abilities, the story complexity, and their intrinsic motivation. The Implemented Features accumulate and eventually the software gets released to the users. Based on the Product Backlog size (in story points) and the team&#8217;s velocity (in story points) it&#8217;s possible to calculate when the next releasable set of Implemented Features will be ready to go to the users.</p>
<p>But what if that date isn&#8217;t soon enough?<strong></strong></p>
<p><strong>Add Some Feedback</strong></p>
<p>The conversation with George happened my last day on site and I had meetings stacked the rest of the day. But on the flight home I started wondering, &#8220;Why would someone want to &#8216;grade&#8217; the teams on how well they completed the stories?&#8221; One answer is to build confidence in team&#8217;s velocity value. Another possible explanation would be a behavioral assumption that the developers tend to avoid work and a way to make sure the developers don&#8217;t shirk is to compare the sprint results with the estimates made during the sprint planning.</p>
<p>Whatever the reason for &#8220;grading&#8221; the sprints, the action of &#8220;grading&#8221; has created a feedback loop in the system. Adding feedback means taking a system output and sending that output (or some portion there of) back into the system input. I wrote about feedback control loops in <a href="http://donaldegray.com/a-multi-use-model/" target="_self">Multi-Use Model</a>. Feedback loops provide the opportunity for control, aiming the system at some new target such as a new delivery date. Unfortunately feedback also provokes instability in the system. Unless great care is taken, the system becomes dysfunctional at best and destructive at worst. The Fundamental Development Process now looks like:</p>
<p><a href="http://www.test.donaldegray.com/wp-content/uploads/2010/02/GradingSprintsClosed.png"><img class="aligncenter size-full wp-image-193" title="Grading Sprint Results" src="http://www.test.donaldegray.com/wp-content/uploads/2010/02/GradingSprintsClosed.png" alt="Grading Sprint Results" width="407" height="198" /></a></p>
<p>The <a href="http://donaldegray.com/reverse-engineering-reality-part-1-reading-causal-loop-diagrams/">&#8220;split&#8221; rectangle</a> means management has a choice at this point. They can choose to &#8220;grade&#8221; sprint results or not. If the grading happens, the rest of the reinforcing loop happens. In a nutshell:</p>
<ul>
<li> Team members want to look good. I don&#8217;t know if &#8220;counts against us&#8221; includes performance evaluation, but it could.</li>
<li> Since the team wants to look good, they&#8217;re not likely to take risks. Not taking risks could mean:
<ol>
<li> Not bringing additional work if they finish early.</li>
<li>Inflating story points for user stories during estimating sessions.</li>
</ol>
</li>
<li> Since the team won&#8217;t take risks, measured velocity won&#8217;t decrease (and indeed may increase) while actual velocity (the rate of delivering implemented features) may decrease. As Robert Austin notes:</li>
</ul>
<div class="simplebox">Measurements often do not represent what they purport to represent, and they are able to be manipulated by those with vested interests in their outcomes.<sup>3</sup></div>
<h5 id="Boomerang_Measurement" class="showhide_heading">Boomerang Measurement</h5>
<p>I confess I&#8217;m doing a certain amount of mind reading now since I didn&#8217;t have a chance to talk with the person who decided grading the sprint results would be a &#8220;good thing&#8221;. But I can&#8217;t wrap my mind around the concept that they explicitly set out to slow the development process. But they did, we have another boomerang measurement.</p>
<p>Truth be told, I believe the person thought they were (are?) doing the best possible actions to help the developers be more efficient. I&#8217;m serious. You can&#8217;t make up stuff like this.</p>
<p>For more information on how management goes astray with measurements I recommend reading <span style="text-decoration: underline;">Measuring and Managing Performance in Organizations</span> by Robert Austin and <span style="text-decoration: underline;">Slack, Getting Past Burnout, Busywork, and the Myth of Total Efficiency</span> by Tom DeMarco.</p>
<p>Got an example of a boomerang measurement? Drop me a note.</p>
<p><sup>1</sup>I first heard this line from Jerry (Gerald M.) Weinberg<br />
<sup>2</sup>http://en.wikipedia.org/wiki/System_dynamics<br />
<sup>3</sup><span style="text-decoration: underline;">Measuring and Managing Performance in Organizations</span> Dorset House Publishing, ISBN 0-932633-36-6, page 38</p>
]]></content:encoded>
			<wfw:commentRss>http://www.donaldegray.com/boomerang-measurements/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Frederick P. Brooks, Jr &#8211; Agilista?</title>
		<link>http://www.donaldegray.com/frederick-p-brooks-jr-agilista/</link>
		<comments>http://www.donaldegray.com/frederick-p-brooks-jr-agilista/#comments</comments>
		<pubDate>Tue, 17 Jun 2008 23:22:11 +0000</pubDate>
		<dc:creator>Don</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[improving processes]]></category>

		<guid isPermaLink="false">http://donaldegray.com/frederick-p-brooks-jr-agilista/</guid>
		<description><![CDATA[Hear me out. It may not be as far fetched as it may first seem. I&#8217;m not going to say how long I&#8217;ve been around, but I have two copies of The Mythical Man-Month. I have the Anniversary Edition and the 1982 edition of the original 1975 book. I&#8217;m not sure why someone on Amazon is trying to sell the 1982 book for $ 129.95. The Anniversary edition contains four chapters not in the original edition including &#8220;No Silver Bullet&#8221;. Brooks concludes &#8220;No Silver Bullet&#8221;]]></description>
			<content:encoded><![CDATA[<p>Hear me out. It may not be as far fetched as it may first seem.</p>
<p>I&#8217;m not going to say how long I&#8217;ve been around, but I have two copies of <span style="text-decoration: underline;">The Mythical Man-Month</span>. I have the <a href="http://www.amazon.com/Mythical-Man-Month-Software-Engineering-Anniversary/dp/0201835959/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1213744948&amp;sr=8-1" target="_blank">Anniversary Edition</a> and the 1982 edition of the original 1975 book. I&#8217;m not sure why someone on Amazon is trying to sell the 1982 book for $ 129.95. The Anniversary edition contains four chapters not in the original edition including &#8220;No Silver Bullet&#8221;.</p>
<p>Brooks concludes &#8220;No Silver Bullet&#8221; with Promising Attacks on Conceptual Essence. His four major points are:</p>
<ul>
<li> Buy versus build.</li>
<li> Requirements refinement and rapid prototyping.</li>
<li> Incremental development &#8211; grow, not build software.</li>
<li> Great designers.</li>
</ul>
<p>Here&#8217;s what he as to say about these points.<strong></strong></p>
<p><strong>Buy versus build</strong></p>
<p>&#8220;The most radical possible solution for constructing software is not to construct it at all.&#8221; pg 197.<strong></strong></p>
<p><strong>Requirements refinement and rapid prototyping</strong></p>
<p>&#8220;&#8230; For the truth is, clients do not know what they want. They usually do not know what questions must be answered &#8230; Complex software systems are, moreover, things that act, that move, that work. The dynamics of that action are hard to imagine. So in planning any software activity, it is necessary to allow for an extensive iteration between the client and designer as part of the system definition.&#8221; pg 199<strong></strong></p>
<p><strong>Incremental development &#8211; grow, not build, software</strong></p>
<p>&#8220;The building metaphor has outlived its usefulness. It is time to change again. If, as I believe, the conceptual structures we construct today are too complicated to be accurately specified in advance and too complex to be built faultlessly, then we must take a radically different approach. &#8230; Some years ago Harlan Mills proposed that any software system should be grown by incremental development. &#8230; One always has, at ever stage in the process a working system. I find that teams can <em>grow</em> much more complex entities in four months than they can <em>build</em>&#8220;. pg 201<strong></strong></p>
<p><strong>Great designers</strong></p>
<p>&#8220;The central question of how to improve the software art centers, as it always has, on people. &#8230; Great designs come from great designers. Software construction is a <em>creative</em> process. Sound methodology can empower and liberate the creative mind; it cannot enflame or inspire the drudge.&#8221; pg 202<strong></strong></p>
<p><strong>Agilista or Not?</strong></p>
<p>I find it interesting that Brooks originally published &#8220;No Silver Bullets&#8221; in 1986. That he nails the agile techniques of build only what you must, iterative and incremental design and delivery, and focus on people amazes me. In the next chapter &#8220;No Silver Bullet&#8221; Refired, he reviews many of the more serious comments and in the end concludes: &#8220;Net on Bullets &#8211; Position Unchanged.&#8221; pg 226</p>
<p>Such are the joys of 20/20 hindsight. So what do you think? Agilista? Forward thinker? I&#8217;m spending too much time reading meanings into what I&#8217;m re-reading? Drop me a note and let me know.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.donaldegray.com/frederick-p-brooks-jr-agilista/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Better Process, Better People</title>
		<link>http://www.donaldegray.com/better-process-better-people/</link>
		<comments>http://www.donaldegray.com/better-process-better-people/#comments</comments>
		<pubDate>Wed, 28 May 2008 18:12:17 +0000</pubDate>
		<dc:creator>Don</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[double loop learning]]></category>
		<category><![CDATA[improving processes]]></category>
		<category><![CDATA[retrospective]]></category>

		<guid isPermaLink="false">http://donaldegray.com/better-process-better-people/</guid>
		<description><![CDATA[The biggest room in the world is the room for improvement. Officially author unknown, but I heard it from my mother, more than once. Reading Better People, Better Process may make it seem like I&#8217;m one of those touchy-feely &#8220;people over process&#8221; types. I confess I have a fondness for people but I&#8217;m also a big fan of process. Luckily, people and process don&#8217;t exist as either/or. People and process exist as both/and. Here&#8217;s a process that can both improve your other processes your people,]]></description>
			<content:encoded><![CDATA[<div style="border: 1px solid black; padding: 1px; text-align: center;"><strong>The biggest room in the world is the room for improvement.</strong><br />
Officially author unknown, but I heard it from my mother, more than once.</div>
<p>Reading <a href="http://donaldegray.com/better-process-better-people/">Better People, Better Process</a> may make it seem like I&#8217;m one of those touchy-feely &#8220;people over process&#8221; types. I confess I have a fondness for people but I&#8217;m also a big fan of process. Luckily, people and process don&#8217;t exist as either/or. People and process exist as both/and. Here&#8217;s a process that can both improve your other processes your people, and the process itself.<strong></strong></p>
<p><strong>Another Multiuse Model</strong></p>
<p>This model is another <a href="http://donaldegray.com/a-multi-use-model/" target="_self">Multiuse Model</a>. This process tells what to do in a retrospective. Retrospectives occur when we stop, think, and decide what to do next.  We call a one person event &#8220;introspection&#8221;. A software development team may have a facilitator for their retrospective. Retrospective permutations abound. Here are the steps for a successful retrospective.</p>
<ol>
<li> Set the stage &#8211; get focused</li>
<li> Gather data &#8211; create a picture of what happened</li>
<li> Generate insights &#8211; why? And what could be done differently?</li>
<li> Decide what to do &#8211; what one thing to do, and what is the first step?</li>
<li> Close &#8211; decide how to document and plan for follow-up.</li>
</ol>
<p>You can learn more about this process by reading <a href="http://pragprog.com/titles/dlret/agile-retrospectives" target="_blank">Agile Retrospectives</a>. If you are a person who would like to go from good to great, and/or  work in/with teams and/or organizations who you&#8217;d like to go from good to great, stop reading now and order the book. I&#8217;ll wait.</p>
<p>Back already? Wonderful.</p>
<p>So why do a retrospective? Retrospectives involve the <a href="http://donaldegray.com/learning-to-change/">Learning Loop</a>. By continuously learning to improve our process, we can learn to improve ourselves. As we improve ourselves we can improve the retrospective process. A conscientious facilitator does a their own retrospective for every meeting they facilitate. <a href="http://idiacomputing.com" target="_blank">George Dinwiddie</a> and I facilitated a two day product owner release planning meeting. After each day we met to discuss what happened that day, what it might mean for the product owners (and us), what we could do to improve, and what changes we would make for the next meeting.<strong></strong></p>
<p><strong>Hints and Suggestions &#8211; Three Possibilities</strong></p>
<p>As a bright shiny new ScrumMaster, my retrospectives always included: &#8220;And what one thing would we like to work on to improve during the next sprint?&#8221; As I prepared for one retrospective, I thought, &#8220;Wow. All I ever do is ask what they&#8217;re doing wrong. What would happen if I asked about doing more of something they&#8217;re doing good?&#8221; Based on the what the Gather Data and Generate insight steps reveal I vary the question to focus on:</p>
<ul>
<li> Improve (change) something you&#8217;re currently doing. Based on their retrospective, one team decided they were making too many assumptions and needed to get the product owner&#8217;s input.</li>
<li> Do more of something you&#8217;re doing well. One team noticed the developers were finishing the sprint in good shape while the testers struggled to complete the manual and automated tests. The team decided to have developers work with the testers earlier in the sprint to increase the teams over all velocity.</li>
<li> Add something you&#8217;re not doing. I worked with one team that decided to schedule a meeting with the product owner mid-sprint to update the product owner with new information and verify the team had the spriint goal still in focus.</li>
</ul>
<p>For the most variety ask the team to create possibilities for all three categories.<strong></strong></p>
<p><strong>Only One Thing</strong></p>
<p>Choose one change to work on. I&#8217;ve observed a some details over the years:</p>
<ol>
<li> Teams generate many possible change items.</li>
<li> In a team of equals, some team members are more equal than others. This may be due to experience, longevity, or just plain loudness. I deal with this by giving each team member two votes and then call on team members for their votes making sure not to call on the &#8220;more equal&#8221; team member first. The item with the most votes gets proposed for the &#8220;do this&#8221; for the next sprint.</li>
<li> Any change can create <a href="http://donaldegray.com/change-and-stable-systems/">instability</a>. Too many changes at once will push the system to instability and dilute the change impetus pretty much ensuring nothing really gets changed.</li>
</ol>
<p><strong>Buy In</strong></p>
<p>The team needs to buy into the decision. I recommend using the team&#8217;s norm for group decision. I&#8217;ve seen the &#8220;Fist of Five&#8221;, &#8220;Roman Thumbs&#8221;, head nodding, and probably a couple I&#8217;ve forgotten. The point is to get everyone to agree with the decision. If the whole team doesn&#8217;t commit to make the change happen, it probably won&#8217;t happen.<strong></strong></p>
<p><strong>Follow-up</strong></p>
<p>Pay attention to the change during the sprint. If I don&#8217;t see evidence the team is working on the agreed change, I ask a question at the end of the daily meeting about how the team is doing with the change. During the &#8220;gather data&#8221; portion of the next retrospective I include a question about how the team feels they did on their change idea. Failing to follow up on the topic teaches the team that constant improvement isn&#8217;t important. All you get from then on is grand ideas and lip service.<strong></strong></p>
<p><strong>The Unaimed Arrow Never Misses</strong></p>
<p>If you&#8217;re the facilitator, structure the retrospective as neutrally as possible. This is easier said than done if you also serve as the team&#8217;s ScrumMaster. It&#8217;s critical for the team decide what change they&#8217;re going to attempt. Structuring the retrospective or guiding the conversation to your predetermined result will result in less commitment if not out right rejection from the team.<strong></strong></p>
<p><strong>What&#8217;s Next?</strong></p>
<p>The basic cycle is do, inspect, adapt.  Doing starts the cycle. So do something. Then inspect, adapt, and repeat as necessary.</p>
<p>If you don&#8217;t have <a href="http://pragprog.com/titles/dlret/agile-retrospectives" target="_blank">Agile Retrospectives</a> I&#8217;d suggest you start by reading the book.</p>
<p>I&#8217;ll be leading a session at this year&#8217;s <a href="http://www.ayeconference.com/" target="_blank">AYE Conference</a> involving <a href="http://www.ayeconference.com/schedule/#SesEight23" target="_blank">Introspection</a>. The conference still has 8 openings.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.donaldegray.com/better-process-better-people/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Command and Control Agile</title>
		<link>http://www.donaldegray.com/command-and-control-agile/</link>
		<comments>http://www.donaldegray.com/command-and-control-agile/#comments</comments>
		<pubDate>Wed, 07 May 2008 20:16:55 +0000</pubDate>
		<dc:creator>Don</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[communication]]></category>

		<guid isPermaLink="false">http://donaldegray.com/command-and-control-agile/</guid>
		<description><![CDATA[Words convey meaning. They&#8217;re how we take the stuff deep in our brains and share it with others. They also self reinforce. David Levy says &#8220;not only do our attitudes and perceptions affect our use of language, but our use of language in turn influences our attitudes and perceptions.&#8221;1 I came across some new words reading Joe Little&#8217;s blog entry Two Cheer&#8217;s for the Nokia Test. In the post Joe says: &#8220;Why do I like it? I think it is a simple way to set]]></description>
			<content:encoded><![CDATA[<p>Words convey meaning. They&#8217;re how we take the stuff deep in our brains and share it with others. They also self reinforce. David Levy says</p>
<div style="border: 1px solid black; padding: 1px;">
&#8220;not only do our attitudes and perceptions affect our use of language, but our use of language in turn influences our attitudes and perceptions.&#8221;<sup>1</sup></div>
<p>I came across some new words reading <a href="http://www.kittyhawkconsulting.com" target="_blank">Joe Little&#8217;s</a> blog entry <a href="http://agileconsortium.blogspot.com/2008/04/two-cheers-for-nokia-test.html" target="_blank">Two Cheer&#8217;s for the Nokia Test</a>. In the post Joe says: &#8220;Why do I like it? I think it is a simple way to set some sort of lower boundary on Agile (Scrum) and it tends to make two problems more visible: Cowboy Agile on one side and Agilefall (aka Wagile) on the other side. Cowboy Agile is where you are doing stuff you are making up on the fly (mainly not doing things you personally don&#8217;t want to do). Agilefall is where you are doing Waterfall (or mostly waterfall) and calling it Agile (or Scrum).&#8221; This started me thinking about some curious things I&#8217;ve noticed when looking at job descriptions for ScrumMasters.</p>
<p>I suggest you can determine if someone is doing Wagile or Agilefall based on language. If you find command and control agile in the description, I propose you&#8217;ll find an organization interested in Wagile/Agilefall. I offer the following examples.<br />
<strong>From a job posting on Dice.com</strong><br />
Responsibilities</p>
<ul>
<li> Keeping the project on time, using Microsoft project.</li>
<li> Setting team status meetings, track milestones, drive project.</li>
<li> Being responsible for driving the team and managing them to hit the projects time lines.</li>
<li> Leading scrum meetings</li>
<li> There will be 4 &#8211; 6 people on a team</li>
</ul>
<p>This was the first example I noticed. It&#8217;s probably not the first one ever, but the mental models exposed grabbed my attention.</p>
<ul>
<li> Projects being kept on time using Microsoft Project?</li>
<li> Drive the project?</li>
<li> Driving the team to hit project time lines? (Does there seem to be a lot of driving going on?)</li>
</ul>
<p>I was so amazed by this mashup of agile and command/control I didn&#8217;t have the presence of mind to apply for the position.<strong></strong></p>
<p><strong>Posted on the <a href="http://groups.yahoo.com/group/scrumdevelopment/" target="_blank">Scrum development</a> email list</strong></p>
<p>We are looking for a highly motivated Technical Project Manager eager to participate in the web2.0 world of user generated content, new media, hosted services and widgets. The successful candidate will be responsible for driving technical project management initiatives.</p>
<p>Responsibilities</p>
<ul>
<li> Be comfortable acting in a Scrum Master role to facilitate the development process and ensure timely delivery of work products across a variety of product teams.</li>
<li> Identify and remove roadblocks for teams; shield teams from external interferences; work with the Product Owner(s) to maximize ROI; work with the Product and Development teams to ensure goals and backlog items are addressed.</li>
<li> Help ensure that technical projects are delivered on time by managing the project schedule, mitigating risks as they arise and escalating issues as appropriate.</li>
<li> Formulate and work to define technical scope and objectives of the project.</li>
<li> Communicate project status to management and stakeholders.</li>
<li> Work with development and product teams to define project schedule and iterative deliverables.</li>
<li> Manage client expectations for projects to ensure ownership and success.</li>
<li> Assist in the development of project budgets, capital expenditures, requirements or other cost estimates related to a project.</li>
<li> Report to management, clients and others on the status of project deliverables and milestones.</li>
<li> Responsible for combining successful software development process experience with agility, effective collaboration, facilitation, leadership and coaching skills.</li>
<li> Responsible for advising and coaching the development team to form empowered teams.</li>
<li> Manage project schedules in Microsoft Project and simple spreadsheets for backlogs.</li>
</ul>
<p>Qualifications include:</p>
<ul>
<li> 3+ years Project Management experience</li>
<li> Ability to work on multiple projects at once</li>
<li> Proficient in Agile Development and strong experience with Scrum Methodology.</li>
<li> Qualified candidates should have experience in all aspects of software development life cycles, with an emphasis on Agile methodologies.</li>
<li> Scrum master certification a plus (Desired)</li>
<li> Formal project management training and/or certification preferred.</li>
<li> Fluency with Project Management Tools.</li>
<li> Strong, attentive listening skills with ability to work in a fast-paced environment.</li>
<li> Proficiency in Microsoft Project, Excel, PowerPoint, Visio and Word required.</li>
<li> Self-motivated, flexible and ability to multi-task and handle concurrent projects.</li>
<li> Ability to influence and collaborate with all levels of technical and product business partners.</li>
<li> Excellent interpersonal and communication (verbal and written) skills.</li>
<li> The successful applicant will be a creative problem solver, a self motivator, posses a can do and attitude, positive mentoring skills and accomplishments, and demonstrate career building self improvement behaviors.</li>
</ul>
<p>I considered not including the entire post (I did remove the company information) but felt to be fair I should include it all. Some parts of this don&#8217;t sound too bad. For example:</p>
<ul>
<li> Responsible for advising and coaching the development team to form empowered teams. Sounds reasonably agile oriented.</li>
</ul>
<p>But most of the responsibilities sound command and control not agile. And what&#8217;s up with all this driving? &#8220;The successful candidate will be responsible for driving technical project management initiatives.&#8221;</p>
<p>About this time I started to wonder if it was me. When I read the responsibilities, they make sense. These items need to be handled by someone somewhere at some time during the project. But the way the responsibilities are worded to me indicate a non-agile mind set in spite of:</p>
<ul>
<li> Responsible for advising and coaching the development team to form empowered teams.</li>
<li> Proficient in Agile Development and strong experience with Scrum Methodology.</li>
</ul>
<p>I&#8217;d like to say these two examples are unique in the recruiting business. Unfortunately they&#8217;re not. You can find similar descriptions on just about any job board that caters to software development. I was going to quit with these examples, but I felt driven to find an example of cowboy agile. Alas, I didn&#8217;t have to drive very far.<strong></strong></p>
<p><strong>Also from the <a href="http://groups.yahoo.com/group/scrumdevelopment/" target="_blank">Scrum development</a> email list</strong></p>
<p>[Some company] is looking for a Certified Scrum Master-Project Manager for a 2 month plus contract position for a client in [a city]. This project starts almost immediately and has a go-live date of June 1 [sic] with a project completion date of June 30. This would be our client&#8217;s first time using Scrum so some training and mentoring of the team will be needed.  At the end of the project, an evaluation of how Scrum could continue to be used as well as recommended in the next steps would be required.</p>
<p>There are about 10 people on the team. Other than training and mentoring, this person will be expected to be the project manager. They don&#8217;t need to be a subject matter expert, just someone experienced in the Scrum methodologies of running a project. The training could just be a formal one-day training session at the beginning of the project and then just kind of on-going during the project.</p>
<p>Here the rules have changed. There are no rules. Am I the only person who wonders why a company with a time critical project (it goes live the day after scheduled completion) wants to shift to a new development method? And a <a href="http://www.ayeconference.com/lullaby-language/" target="_blank">lullaby word</a> keeps being repeated.</p>
<ul>
<li> just someone experienced in the Scrum methodologies</li>
<li> just be a formal one-day training session</li>
<li> just kind of on-going during the project</li>
</ul>
<p>If you didn&#8217;t read <a href="http://www.ayeconference.com/lullaby-language/" target="_blank">Lullaby Language</a> I recommend doing so now.<strong></strong></p>
<p><strong>Crossed Goals</strong></p>
<p>I decided to learn more. Maybe if I could talk with someone I could understand better what they were looking for, so I replied to one of the above. I received a nice email from the person which said they&#8217;d have to talk with the account manager and get back with me, which they did. The reply was no more illuminating than the original post. After a couple emails back and forth I gave up. It seemed the recruiting company needed a body to fill a slot regardless of how it would affect the client&#8217;s outcome.<strong></strong></p>
<p><strong>Truth in thinking:</strong></p>
<ol>
<li> It&#8217;s hazardous to generalize from a single data point.</li>
<li> These are my perceptions. I could be wrong.</li>
<li> Just because something doesn&#8217;t work for me, doesn&#8217;t mean it won&#8217;t work for someone else.</li>
</ol>
<p>So, it is me? Or do others of you see agile being accepted as main stream verbiage while the main stream continues to do business as always? Let me know.</p>
<p><sup>1</sup>Tools For Critical Thinking, page 5</p>
]]></content:encoded>
			<wfw:commentRss>http://www.donaldegray.com/command-and-control-agile/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A rose by any other name</title>
		<link>http://www.donaldegray.com/a-rose-by-any-other-name/</link>
		<comments>http://www.donaldegray.com/a-rose-by-any-other-name/#comments</comments>
		<pubDate>Thu, 24 May 2007 12:52:00 +0000</pubDate>
		<dc:creator>Don</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[communication]]></category>

		<guid isPermaLink="false">http://donaldegray.com/a-rose-by-any-other-name/</guid>
		<description><![CDATA[I've been reading some interesting emails concerning names in an Scrum environment. Backlog in particular seems to generate energy.]]></description>
			<content:encoded><![CDATA[<p>is probably something else.</p>
<p>I&#8217;ve been reading some interesting emails concerning names in an Scrum environment. Backlog in particular seems to generate energy.</p>
<p>Several valid points for change have been made. Backlog felt negative to one team, and they wanted to use a positive term. Another participant mentioned that &#8220;backlog&#8221; was difficult to translate into his language. Yet another argued that Agile is more about what you DO, than what you name what you&#8217;re doing. I think these points have validity.</p>
<p><strong>So what&#8217;s the problem?</strong></p>
<p>Take a step back and ask, &#8220;What is the purpose of language?&#8221; What did you come up with?</p>
<p>For me, the purpose of language is to get the thoughts out of your head into my head, and vice versa. This has several benefits:</p>
<p>1. We can learn from each other&#8217;s experiences.<br />
2. We can share (and help create) knowledge.<br />
3. We can co-create a co-reality.</p>
<p><strong>What it Looks Like</strong></p>
<p>We interact with the real world, and through the processes of abstracting (extracting sensory data) and abstraction (converting the sensory data in to words, thoughts, and feelings). Words (hopefully) represent some object in the real world. When we interact with another person, it looks like:</p>
<div id="attachment_153" class="wp-caption aligncenter" style="width: 420px"><a href="http://www.test.donaldegray.com/wp-content/uploads/2010/02/YetAnotherModel.png"><img class="size-full wp-image-153" title="Yet Another Model" src="http://www.test.donaldegray.com/wp-content/uploads/2010/02/YetAnotherModel.png" alt="Yet Another Model" width="410" height="183" /></a><p class="wp-caption-text">Communicaton Model</p></div>
<p>The explanation is contained in <a href="http://donaldegray.com/getting-to-language">Getting to Language</a>.</p>
<p><strong>The Problem Arises</strong></p>
<p>As <a href="http://kw-agiledevelopment.blogspot.com/2007/05/scrum-agile-development-bad-language.html" target="_blank">Kelly Waters points out</a> when you choose to use different words, translation trouble occurs. <a href="http://idiacomputing.com/" target="_blank">George Dinwiddie</a> and I recently had a discussion about a Scrum Project. Since we share a common Scrum vocabulary, we discussed the project owner, product backlog and sprints with no explanations. We didn&#8217;t have to say &#8220;OK, by product owner, I mean the person who &#8230;.&#8221;.</p>
<p><strong>What NOT to Do! </strong></p>
<ul>
<li> I doubt I&#8217;d whip out the diagram. If pushed for why common words are important, I&#8217;d use the <a href="http://donaldegray.com/why-dont-you-hear-what-i-mean-the-satir-interaction-model/">Satir Interaction Model</a></li>
<li> I wouldn&#8217;t say they&#8217;re wrong. If we argue, the team will become more entreched. And I don&#8217;t believe the team is wrong.</li>
<li> I would avoid discussions about &#8220;The One True Way&#8221;. Agile (and Scrum) are about providing working software and business value. I&#8217;d prefer to use the same words other teams use (especially if they mean the same), but that&#8217;s not the major goal.</li>
</ul>
<p><strong>So What to Do?</strong></p>
<p>To resolve the &#8220;backlog&#8221; seems negative to the team issue and keep the same word for &#8220;backlog&#8221; (which is of course &#8220;backlog&#8221;), I&#8217;d try the following:</p>
<ul>
<li> Acknowledge the feeling that &#8220;backlog&#8221; seems negative. It&#8217;s how the team (or some portion of the team) feels.</li>
<li> Explore with the team WHY they think &#8220;backlog&#8221; is something negative. Are all backlogs negative? Is it possible for some backlogs to be positive? Could it be that backlog is both positive and negative?</li>
<li> Based on the exploration, I&#8217;d try to get an experiment approved where we used &#8220;backlog&#8221; for a set number of sprints, and then revisit the issue. This is the &#8220;Trial Run&#8221; Pattern from <a href="http://www.amazon.com/Fearless-Change-Patterns-Introducing-Ideas/dp/0201741571/ref=pd_bbs_sr_1/002-5139323-3221613?ie=UTF8&amp;s=books&amp;qid=1180007449&amp;sr=8-1" target="_blank">Fearless Change</a>.</li>
</ul>
<p>I suspect that after three sprints, the concern about &#8220;backlog&#8221; being negative will disappear being replaced by other concerns about delivering business value via working software.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.donaldegray.com/a-rose-by-any-other-name/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>It Looks Good From Here</title>
		<link>http://www.donaldegray.com/it-looks-good-from-here/</link>
		<comments>http://www.donaldegray.com/it-looks-good-from-here/#comments</comments>
		<pubDate>Fri, 05 May 2006 23:43:28 +0000</pubDate>
		<dc:creator>Don</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://donaldegray.com/it-looks-good-from-here/</guid>
		<description><![CDATA[We stopped and looked at the first rapid on the first river from the bridge. I distinctly remember saying, "It looks good from here." And it did. What I didn't see ...]]></description>
			<content:encoded><![CDATA[<p>I went on a kayaking trip with some friends. We stopped and looked at the first rapid on the first river from the bridge. I distinctly remember saying, &#8220;It looks good from here.&#8221; And it did. What I didn&#8217;t see was around the corner. The river bed narrowed, the rocks got closer together, and paddling became, well, much more interesting.</p>
<p>At the bottom of the third rapid, there were three paddlers on the shore in various stages of &#8220;where&#8217;s my gear?&#8221; Everyone was safe, and with a little time, we found all the gear. The river widened, the rocks got further apart, and everyone made it to the take out.</p>
<p>As I thought about the experience, the parallels to software projects struck me.</p>
<ul>
<li> Some people had more skills than the others.</li>
<li> We could see the start, but didn&#8217;t know all the problems we&#8217;d find along the way.</li>
<li> Everyone on the team knew how to take care of themselves.</li>
<li> When someone got in trouble, other people would help out.</li>
<li> We moved as a group, although different people lead at different times.</li>
<li> We all got to the finish.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.donaldegray.com/it-looks-good-from-here/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Developers Testing Software, Take 2</title>
		<link>http://www.donaldegray.com/developers-testing-software-take-2/</link>
		<comments>http://www.donaldegray.com/developers-testing-software-take-2/#comments</comments>
		<pubDate>Wed, 03 May 2006 12:44:25 +0000</pubDate>
		<dc:creator>Don</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://donaldegray.com/developers-testing-software-take-2/</guid>
		<description><![CDATA[In my experience the developers have the verification mindset, "Does it do the job?" Most everyone who uses the software has the mindset, "Does it allow me to do my job?" And that is the essential difference.]]></description>
			<content:encoded><![CDATA[<p>Charles Adams quantum6013ATcox.net had the following comments about developers testing software.</p>
<p>In regard to &#8220;March 17, 2005 Blog Entry — Can Developers Test Software?&#8221;  For me, your observations go back to the dynamic between verification and validation.</p>
<p><strong>Verification</strong></p>
<p>In my experience the developers have the verification mindset, &#8220;Does it do the job?&#8221;  Most everyone who uses the software has the mindset, &#8220;Does it allow me to do my job?&#8221;  And that is the essential difference.  The job or requirements are dependent on what pair of glasses one wears.  Developer, project manager, line manager, procurement official, program manager, and user all have different ideas about the software.</p>
<p><strong>Validation</strong></p>
<p>I hold the opinion that &#8220;doing the right job&#8221;, or validation, is much more important than &#8220;doing the job right&#8221;, or verification.  Validation ultimately includes verification, but not the other way around.  Unfortunately verification seems to be the tail that wags the dog, at least in government procurements and way too often in commercial procurements.</p>
<p>To me it seems that software craftsmen are not the only ones who do not look to the user.  Jerry Weinberg in his QSM Vol 4, &#8220;Anticipating Change&#8221; quotes Witold Rybczynski:</p>
<p>&#8220;What did &#8216;getting it right&#8217; mean in practice?  To the classically trained architect it meant, first of all, pleasing the client or, in a broader sense, the user of the building (not always the same person).  This unassuming, and to most persons obvious, requirement needs emphasizing in a period when architectural design has become a self-expressive pastime.  The great Chef Carême said, &#8216;In matters of cookery there are not a number of principles, there is only one and that is to satisfy the person you are serving.&#8217;  If I were to quote his advice to my students, they would find it a hopelessly old-fashioned and intolerable imposition.&#8221;</p>
<p>Your comment, &#8220;A quick review of the most project dynamics indicates that everything can slip as far as delivery except the final ship date.&#8221;  is only the beginning.  I usually see final ship dates turn into the first of many unplanned ship dates, which begs the old question, &#8220;Why do we have time to do it over, but never the time to do it right the first time?&#8221;</p>
<p><strong>Appreciations</strong></p>
<p>I appreciate Charles for taking the time to read and respond!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.donaldegray.com/developers-testing-software-take-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Can Developers Test Software?</title>
		<link>http://www.donaldegray.com/can-developers-test-software/</link>
		<comments>http://www.donaldegray.com/can-developers-test-software/#comments</comments>
		<pubDate>Wed, 03 May 2006 12:41:34 +0000</pubDate>
		<dc:creator>Don</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://donaldegray.com/can-developers-test-software/</guid>
		<description><![CDATA[Yes, Virginia, there's more to testing. I'm a developer, not a tester. I know only a little bit about testing, but I DO know that testing methodologies move just about as fast as development methodologies do.]]></description>
			<content:encoded><![CDATA[<p>The Pacific Northwest <a href="http://www.ayeconference.com/wiki/SeattleGathering2005" target="_blank">AYE Community members</a> gathered on 3/6/2005 in Seattle. The group, split between developers and testers discussed the recent phenomenon of using developers to do testing.</p>
<p><strong>It Only Makes Sense</strong></p>
<p>After all, developers have always done some testing.</p>
<ul>
<li> Does the code compile?</li>
<li> Does the project still build?</li>
<li> Does the new code do what it should?</li>
</ul>
<p>Great! What&#8217;s next on the list of things to do?</p>
<p>Agile methods promote test driven development. The testing plan gets written before the code does. Management is simply proposing the logical result. Fire the testers since the developers are now doing the testing! But does this really make sense?</p>
<p><strong>You Mean There&#8217;s More To Testing?</strong></p>
<p>Yes, Virginia, there&#8217;s more to testing. I&#8217;m a developer, not a tester. I know only a little bit about testing, but I DO know that testing methodologies move just about as fast as development methodologies do. It&#8217;s no longer just about white boxes and black boxes. Check out <a href="http://www.quardev.com/" target="_blank">Quardev</a> and <a href="http://www.satisfice.com" target="_blank">Satisfice</a> for some great ideas in testing. Developers are lucky if they have the resources (time and training) to stay current with new development concepts. What are the odds management will think to include resources for learning how to test?</p>
<p><strong>The View From Over Here</strong></p>
<p>Another point to consider: Developers and testers have different local and global view points. The goal of development is to create and prove software works. Testing tries to discover those conditions where the software doesn&#8217;t work. Two very different ways of looking at the software. Shannon Severance does both developing and testing, but never on the same project. Once you get a particular view point on a piece of software, it&#8217;s hard to switch to another viewpoint. The difference in view points leads to better software.</p>
<p><strong>Slip Sliding Away</strong></p>
<p>Given that developers like to develop, not test, how does having developers do testing impact testing time? A quick review of the most project dynamics indicates that everthing can slip as far as delivery except the final ship date. Software development requires discovering what features should be coded, figuring out how to code them, coding them, testing the code and delivering the software. Testing time gets compressed in most projects to the time left (if any) after the major development is completed and the scheduled delivery date. With developers doing the testing, time (if any) will naturally shift to development to squeeze in &#8220;one more feature.&#8221; After all, &#8220;I&#8217;ve been testing as I go along.&#8221;</p>
<p><strong>A Tester, By Any Other Name</strong></p>
<p>Any significant software project involves multiple development teams. Who tests the overall results? Designate a developer to handle this release&#8217;s integration testing? Doesn&#8217;t that make them a defacto tester? And an unhappy one at that. Developers don&#8217;t have the mindset, training, and knowledge to do a good testing job. Why force this on them? Good software needs multiple viewpoints (after all, pair programming is basically instantaneous code reviews). Why not get the view point of some one who wants to do the job?</p>
<p><strong>Let&#8217;s Think About This Some More</strong></p>
<p>Firing the testers and using developers to test is a Siren&#8217;s song. Do it long enough, and you&#8217;ll hear sirens again as the software crashes and burns on your former customers&#8217; computers.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.donaldegray.com/can-developers-test-software/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

