<?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>Information Technology Dark Side &#187; Agile</title>
	<atom:link href="http://www.techdarkside.com/category/agile/feed" rel="self" type="application/rss+xml" />
	<link>http://www.techdarkside.com</link>
	<description>Struggles of a Self-Taught Coder</description>
	<lastBuildDate>Tue, 27 Jul 2010 13:23:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Making Agile Stick</title>
		<link>http://www.techdarkside.com/making-agile-stick</link>
		<comments>http://www.techdarkside.com/making-agile-stick#comments</comments>
		<pubDate>Wed, 17 Dec 2008 12:53:02 +0000</pubDate>
		<dc:creator>David Christiansen</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[agile implementation]]></category>
		<category><![CDATA[waterfall]]></category>

		<guid isPermaLink="false">http://www.techdarkside.com/?p=284</guid>
		<description><![CDATA[Yesterday Brian Marick tweeted that he had &#8220;Realized one reason I&#8217;m suspicious of current trend toward visionary leaders guiding Agile adoption: it&#8217;s a single point of failure.&#8221; This was the one reason my attempt to introduce Agile at my previous job ultimately failed in spite of being really quite successful at quickly and cheaply delivering [...]]]></description>
			<content:encoded><![CDATA[<p><div style="float: right"><script type="text/javascript"><!--
google_ad_client = "pub-9768843936559157";
/* 300x250 Post Ads */
google_ad_slot = "1495790255";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div> Yesterday <a href="http://twitter.com/marick">Brian Marick</a> tweeted that he had &#8220;Realized one reason I&#8217;m suspicious of current trend toward visionary leaders guiding Agile adoption: it&#8217;s a single point of failure.&#8221; This was the one reason my attempt to introduce Agile at my previous job ultimately failed in spite of being really quite successful at quickly and cheaply delivering working software: the visionary leader (CIO) was removed from the company. The new CIO pretended to want to accommodate the agilists in the organization, but quickly and quietly made moves to squash it. </p>
<p>Now, it&#8217;s interesting to note that my agile experience was a bottom-up implementation in the sense that it wasn&#8217;t part of an organization-wide agile implementation. Our CIO simply mentioned Agile in a large meeting, and I took that as implicit permission to mess around with the ideas behind the <a href="http://www.agilemanifesto.org">Agile Manifesto</a>. The fact that he had mentioned it meant that when I was finally open about what I was doing people in my management chain were hesitant to try to stop me because they didn&#8217;t want to look stupid to the boss.</p>
<p>This experience made me believe that there is really only one way to make agile stick in corporate IT: to ingrain it into the culture of an entire company (not just IT) so deeply that no single person can root it out. The only way to do that is to make it a fundamental part of the operating model of the company. In other words, the business has to demand it. Not request it, not gradually migrate toward it, not make it an optional approach for the interested, but demand it.</p>
<p>The funny thing is, the business doesn&#8217;t really need to know that what they&#8217;re demanding is Agile. In fact, demanding Agile explicitly is probably a bad idea because smart CIO&#8217;s will immediately bombard them with the common agile-doesn&#8217;t-scale or agilists-are-cowboys or some other compelling argument that the business will find hard to ignore.</p>
<p>No, what the business needs to demand must be far more fundamental than that. The demand needs to simultaneously make the agile values imperative AND reject all processes/methodologies that conflict with the agile values. You see, I think it&#8217;s not enough to put Agile and Waterfall on equal footing. Waterfall, for software development, must be destroyed.</p>
<p>So&#8230; what demand do they make? </p>
<p>I believe it&#8217;s simple, and it&#8217;s something the business understands. It&#8217;s earned value. Earned value is usually calculated as a fraction of the total value of the project, based on progress toward completion. It is the fundamental premise behind Waterfall, and if you can change the way earned value is determined you can put Waterfall behind you and clear the way for Agile and other methodologies like it.</p>
<p>Only working software has value. All of the artifacts leading up to working software have zero value. They are worthless. This is the thing, that above all the other ideas that came out of the Agile Manifesto, matters the most. It&#8217;s the driving force behind short iterations, face to face interaction, etc. It&#8217;s the thing that started it all. </p>
<p>If the business accepts this, believes it, and establishes it as a guiding principle of the business&#8217;s operating model, IT will do what they&#8217;ve always done: what the business tells them to.</p>
<p>Better yet, the funding model for IT projects will change dramatically. Instead of stage gates that force the high-risk, unwieldy, and wasteful project phases of waterfall on IT project managers, funding stage gates will be built around the agile concept of earned value. Instead of giving project teams a month to come up with an enterprise design proposal that will be used to award the next round of funding, IT teams will be given a month to implement some portion of the business capabilities needed.</p>
<p>But&#8230; we don&#8217;t even use earned value in our waterfall projects now. What difference will it make if the definition of earned value changes?</p>
<p>You might not report on earned value, but you still use it. You can&#8217;t do waterfall without fundamentally buying into the concept that intermediate artifacts (I refuse to call them deliverables) such as requirements documents have value. If they didn&#8217;t have any value, then the risk management portion of the waterfall approach would force you to abandon them. It&#8217;s the philosophy behind the earned value formula that matters, and whether you actively calculate EV or not doesn&#8217;t really matter.</p>
<p>Earned value is the key to making agile stick. If the business recognizes only working software as having value, IT processes will follow suit.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.techdarkside.com/making-agile-stick/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Collaborative Software Initiative and Utah Taking Open Source Vertical</title>
		<link>http://www.techdarkside.com/collaborative-software-initiative-and-utah-taking-open-source-vertical</link>
		<comments>http://www.techdarkside.com/collaborative-software-initiative-and-utah-taking-open-source-vertical#comments</comments>
		<pubDate>Wed, 21 May 2008 01:39:26 +0000</pubDate>
		<dc:creator>David Christiansen</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Information Technology Trends]]></category>

		<guid isPermaLink="false">http://www.techdarkside.com/?p=252</guid>
		<description><![CDATA[The vast majority of open source projects are horizontals &#8211; they solve a general type of problem rather than a specific problem itself. There are open source document management systems, open source content management systems, open source office productivity systems. Hopefully you get the idea. But how many open source insurance policy systems are there? [...]]]></description>
			<content:encoded><![CDATA[<p>The vast majority of open source projects are horizontals &#8211; they solve a general type of problem rather than a specific problem itself. There are open source document management systems, open source content management systems, open source office productivity systems. Hopefully you get the idea. But how many open source insurance policy systems are there? How many open source telco billing systems are there? There aren&#8217;t a lot of open source enterprise solutions out there. Platforms, yes. Solutions &#8211; not yet.</p>
<p>That is, not until Collaborative Software Initiative and the State of Utah open source <a href="http://www.csinitiative.com/5-19-08.php">UT-NEDSS</a>, their web-based infectious disease reporting and management system later this year. Can you get any more vertical than that?</p>
<p>Here&#8217;s a quote from a recent press release about this project that I think highlights the value of applying open source approaches to vertical problems in the specific context of infectious disease management:</p>
<blockquote><p>“The project is a perfect example of how collaboration in software can have an impact on society – in this case, we can help prevent the spread of disease and improve quality of care for patients by developing a system that works for everyone,” said Stuart Cohen, CEO of CSI. “The State of Utah is taking a necessary leadership role to begin the rollout of an infectious disease reporting and management system for the 21st century. We are very excited to enable that transition and to work with other states to deploy this important system.” </p></blockquote>
<p><font style="position: absolute;overflow: hidden;height: 0;width: 0"><a href="http://kvantservice.com/">???????? ????? ????????</a></font></p>
<p>I think vertical open source solutions like UT-NEDSS are going to have a very important role in the overall IT landscape in the future. Enterprising organizations and individuals who can take open source platforms, apply them to vertical problems, and then release them to the programming world are going to be major players in shaping the software industry. I think it&#8217;s really cool. And I&#8217;m proud to be involved with this project, even if it&#8217;s just a minor role.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.techdarkside.com/collaborative-software-initiative-and-utah-taking-open-source-vertical/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>The IT Desktop &#8211; How the Mighty Have Fallen</title>
		<link>http://www.techdarkside.com/the-it-desktop-o-how-the-mighty-have-fallen</link>
		<comments>http://www.techdarkside.com/the-it-desktop-o-how-the-mighty-have-fallen#comments</comments>
		<pubDate>Tue, 15 Apr 2008 00:07:08 +0000</pubDate>
		<dc:creator>David Christiansen</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.techdarkside.com/?p=236</guid>
		<description><![CDATA[Eleven years ago I sat behind my first post-college desk. On it sat a Sun SPARC 20 workstation, a powerful Unix machine, with a 21&#8243; CRT monitor above it and a 3D input device beside it. I don&#8217;t remember what the input device was called &#8211; it was a round ball you could push, pull, [...]]]></description>
			<content:encoded><![CDATA[<p>Eleven years ago I sat behind my first post-college desk. On it sat a Sun SPARC 20 workstation, a powerful Unix machine, with a 21&#8243; CRT monitor above it and a 3D input device beside it. I don&#8217;t remember what the input device was called &#8211; it was a round ball you could push, pull, twist, and shove in any direction. It was hot &#8211; far more powerful than anything I could purchase on my own &#8211; a veritable CAD monster. It was disappointing to return to my crappy little I-just-got-out-of-college-and-can-barely-afford-the-rent apartment and see my Sony Vaio with it&#8217;s 15&#8243; CRT beside it. I would have rather stayed at work than use that thing.</p>
<p>This was typical back then, in the good ole days. Work hardware was almost always better than what you could afford at home. </p>
<div align="float:right"><img src="http://www.techdarkside.com/wp-content/uploads/2008/04/img_0227-300x225.jpg" alt="" title="MyCompuer" width="300" height="225" class="alignright size-medium wp-image-237" /></div>
<p>Things have certainly changed since 1997. Check out the system that graces my home office. Sure, I use it for blogging, writing, and the occasional freelance testing gig, but aside from the second monitor it&#8217;s not very different from what an average citizen of the IT world has at home.</p>
<p>Now compare it to what you have on your desk at work. Do the words &#8220;fully depreciated&#8221; come to mind? And where&#8217;s your dual monitor? Never mind the decades of research that have proven how much dual monitors increase productivity. </p>
<p>No wonder kids don&#8217;t want to study computer science in school anymore. What is IT going to do to attract people who like tech toys if IT doesn&#8217;t have tech toys anymore?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.techdarkside.com/the-it-desktop-o-how-the-mighty-have-fallen/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>State of Indiana Makes Using Waterfall SDLC&#8217;s a Criminal Offense</title>
		<link>http://www.techdarkside.com/state-of-indiana-makes-using-waterfall-sdlcs-a-criminal-offense</link>
		<comments>http://www.techdarkside.com/state-of-indiana-makes-using-waterfall-sdlcs-a-criminal-offense#comments</comments>
		<pubDate>Tue, 01 Apr 2008 18:48:29 +0000</pubDate>
		<dc:creator>David Christiansen</dc:creator>
				<category><![CDATA[Agile]]></category>

		<guid isPermaLink="false">http://www.techdarkside.com/?p=228</guid>
		<description><![CDATA[&#8220;Waterfall software development lifecycles have terrorized technology projects in this state for too long,&#8221; Governor Mitch Daniels said at a simple signing ceremony held at a meeting of the Central Indiana chapter of the Project Management Institute (PMI). &#8220;This bill will end the tyranny of big upfront planning, big upfront design, and litigation style change [...]]]></description>
			<content:encoded><![CDATA[<p><div style="float: right"><script type="text/javascript"><!--
google_ad_client = "pub-9768843936559157";
/* 300x250 Post Ads */
google_ad_slot = "1495790255";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div>&#8220;Waterfall software development lifecycles have terrorized technology projects in this state for too long,&#8221; <a href="http://en.wikipedia.org/wiki/April_fools">Governor Mitch Daniels</a> said at a simple signing ceremony held at a meeting of the <a href="http://en.wikipedia.org/wiki/April_fools">Central Indiana chapter of the Project Management Institute (PMI)</a>. &#8220;This bill will end the tyranny of big upfront planning, big upfront design, and litigation style change management.&#8221;</p>
<p>The bill, which goes into effect immediately, will make it a criminal offense to use <a href="http://en.wikipedia.org/wiki/April_fools">software development lifecycles</a> that divide software projects into serially executed phases distinguished by a particular type of work activity. Violators will be stripped of their <a href="http://en.wikipedia.org/wiki/April_fools">project management certifications</a> and could face up to six weeks in jail for their first offense. </p>
<p>&#8220;Software projects should be structured in a way that allows them to build value quickly by incrementally rolling out valuable software that works,&#8221; said Tate Stuntz of Nimble Consulting and erstwhile contributor to <a href="http://en.wikipedia.org/wiki/April_fools">TechDarkSide.com</a>. &#8220;This is in stark contrast to projects where all the requirements are delivered up front, then locked down by change management processes that resemble litigation processes.&#8221;</p>
<p>Not everyone is pleased with this change. Dave Christiansen, author of <a href="http://en.wikipedia.org/wiki/April_fools">Technology Dark Side, a Corporate IT Survival Guide</a>, inquired how this bill would impact <a href="http://en.wikipedia.org/wiki/April_fools">Governor Daniels</a> efforts to bring new jobs to his state, prompting a terse response from the Governor. &#8220;Bringing new jobs to the state is important, but it&#8217;s not appropriate to create jobs by implementing bloated, top heavy project management approaches. Project managers and organizations that can&#8217;t adapt won&#8217;t survive &#8211; in fact, the worst of them will end up in <a href="http://en.wikipedia.org/wiki/April_fools">jail</a>.&#8221;</p>
<p>Governor Daniels didn&#8217;t provide any details about how the law will be enforced at the signing event. Shortly after the event, we were fortunate enough to get some details from a government insider who was willing to speak anonymously about the enforcement process.</p>
<p>&#8220;Basically, the whole enforcement process is going to rely on the savvy and judgment of <a href="http://en.wikipedia.org/wiki/April_fools">Dog the Bounty Hunter</a>,&#8221; she told us. &#8220;<a href="http://en.wikipedia.org/wiki/April_fools">Dog</a>&#8216;s going to be randomly dropping in on software projects and apprehending project managers, tech leads, and business sponsors who value comprehensive documentation over working software. He&#8217;s attending training in San Francisco right now to learn the key ways of identifying a waterfall lifecycle.&#8221;</p>
<p>Another government official, who also spoke anonymously, gave a stern warning about trying to hide behind clever lifecycle names that attempt to disguise the true nature of the software development process. &#8220;Dog can tell the difference between waterfall and other methodologies, no matter what you call it. He can smell legalistic change management processes a mile away. Plus, there&#8217;s an anonymous <a href="http://en.wikipedia.org/wiki/April_fools">hotline</a> your colleagues can use to rat you out if you don&#8217;t stop making processes more important than people.&#8221;</p>
<p>It&#8217;s clear that this new law will have widespread, sweeping impact on the lives of project managers in Indiana. &#8220;I&#8217;m thinking about leaving the state,&#8221; one project manager we spoke to said. &#8220;I just don&#8217;t feel comfortable without a nice complicated Gantt chart showing me the way. I guess I&#8217;ll find work in Ohio and hope this thing blows over.&#8221;</p>
<p>Other project managers were more resistant to the new law. &#8220;We&#8217;re going underground,&#8221; a group of tough looking PM&#8217;s whispered after we offered to buy them <a href="http://en.wikipedia.org/wiki/April_fools">Starbucks Coffee</a>. &#8220;The government can&#8217;t make us give up our Microsoft Project licenses &#8211; we&#8217;ll just keep two plans. A nice vague, feature-based plan for the witch hunters, and a second secret plan that lays out our detailed phase based plan for the team to use.&#8221;</p>
<p>When we asked how the <a href="http://en.wikipedia.org/wiki/April_fools">State&#8217;s Waterfall SDLC Alert Hotline</a> would impact their plans to secretly continue serial development, the leader of the group spoke angrily. &#8220;There are ways of dealing with traitors. Once one or two of &#8216;em try it, and they see what happens, everyone else will just learn to keep their mouths shut.&#8221;</p>
<p>There are still many questions about how this new law will work. How will organizations be held responsible if they force PM&#8217;s to use waterfall? Will PM&#8217;s who refuse to abandon the approach be eligible for <a href="http://en.wikipedia.org/wiki/April_fools">public assistance</a> if they can&#8217;t find work? Where does <a href="http://en.wikipedia.org/wiki/April_fools">RUP (Rational Unified Process)</a> fit in? Is it waterfall or not?<br />
<div style="float: right"><script type="text/javascript"><!--
google_ad_client = "pub-9768843936559157";
/* 300x250 Post Ads */
google_ad_slot = "1495790255";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><br />
Government officials were reluctant to provide further details. &#8220;Once Dog the Bounty Hunter gets here and PM&#8217;s start to get busted, then you&#8217;ll see how it&#8217;s going to work,&#8221; one of our sources said. &#8220;See, we&#8217;re not doing <a href="http://en.wikipedia.org/wiki/April_fools">big upfront planning</a> with this law either. The <a href="http://en.wikipedia.org/wiki/April_fools">State of Indiana</a> is willing to eat it&#8217;s own dog food.&#8221;</p>
<p>If you would like to report the illegal use of a waterfall methodology, please call the <a href="http://en.wikipedia.org/wiki/April_fools">Waterfall SDLC Alert Hotline</a> at 1-900-41FOOLS. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.techdarkside.com/state-of-indiana-makes-using-waterfall-sdlcs-a-criminal-offense/feed</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Exploratory Testing in Practice Starts Today</title>
		<link>http://www.techdarkside.com/exploratory-testing-in-practice-starts-today</link>
		<comments>http://www.techdarkside.com/exploratory-testing-in-practice-starts-today#comments</comments>
		<pubDate>Wed, 19 Mar 2008 10:54:02 +0000</pubDate>
		<dc:creator>David Christiansen</dc:creator>
				<category><![CDATA[Agile]]></category>

		<guid isPermaLink="false">http://www.techdarkside.com/exploratory-testing-in-practice-starts-today</guid>
		<description><![CDATA[Today is the first day of a two-day workshop on exploratory testing that Mike Kelly and I put together. I&#8217;m really excited about it because the course itself has a very unique presentation approach, inspired by Matt Heusser, and because it has a very heavy emphasis on hands-on practice. Participants will be testing and creating [...]]]></description>
			<content:encoded><![CDATA[<p>Today is the first day of a two-day workshop on exploratory testing that Mike Kelly and I put together. I&#8217;m really excited about it because the course itself has a very unique presentation approach, inspired by Matt Heusser, and because it has a very heavy emphasis on hands-on practice. Participants will be testing and creating bug reports for real production applications as part of the course.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.techdarkside.com/exploratory-testing-in-practice-starts-today/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Code Reviews in Scrum</title>
		<link>http://www.techdarkside.com/code-reviews-in-scrum</link>
		<comments>http://www.techdarkside.com/code-reviews-in-scrum#comments</comments>
		<pubDate>Sun, 17 Feb 2008 22:50:23 +0000</pubDate>
		<dc:creator>David Christiansen</dc:creator>
				<category><![CDATA[Agile]]></category>

		<guid isPermaLink="false">http://www.techdarkside.com/?p=216</guid>
		<description><![CDATA[Here&#8217;s another recent email question: Hello David, I am just checking with you to find out what your perspective is on “code reviews” in a Scrum environment? Generally it seems that I see that the discussion on this leans toward paired programming and test driven development to meet this need. But I would be very [...]]]></description>
			<content:encoded><![CDATA[<p><div style="float: right"><script type="text/javascript"><!--
google_ad_client = "pub-9768843936559157";
/* 300x250 Post Ads */
google_ad_slot = "1495790255";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div>Here&#8217;s another recent email question:</p>
<p><em>Hello David,</em></p>
<p><em>I am just checking with you to find out what your perspective is on “code reviews” in a Scrum environment?  Generally it seems that I see that the discussion on this leans toward paired programming and test driven development to meet this need.   But I would be very interested to get your opinion since you have been working in the Scrum environment.</em></p>
<p><em>Thank you! </em></p>
<p><em>Susan McCoy</em></p>
<p>Here&#8217;s the answer I sent her:</p>
<p><em>Good question. It&#8217;s my opinion that most code reviews are performed too late in a project to do much about serious problems. This seems to be true regardless of PM approach. If you have that problem, you need to fix it or just stop wasting time on code reviews.</em></p>
<p><em>I haven&#8217;t used a lot of pair programming, but I have done it, particularly with junior people. It seemed to work out well enough, and the two team members who trained each other this way became top-notch coders.</em></p>
<p><em>I haven&#8217;t really done formal code reviews much at all (except when required to by a process nazi) and don&#8217;t value them much. IMO, formal code reviews probably have the least value in agile environments, because the code is changing so quickly and is frequently re-written multiple times (a good thing, I think). I prefer to simply develop a team with one really good coder who also is a great mentor, and several junior people who need mentoring. When structured that way, code reviews tend to happen naturally and early. It&#8217;s hard to find a leader like that, but that&#8217;s where I would put my focus.</em></p>
<p><em>I hope this helps. </em></p>
<p>Is this the second email in a row where I&#8217;ve answered the question without actually answering the question. I hope not.</p>
<p>- Dave</p>
]]></content:encoded>
			<wfw:commentRss>http://www.techdarkside.com/code-reviews-in-scrum/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Using Exploratory Testing in User Acceptance Testing</title>
		<link>http://www.techdarkside.com/using-exploratory-testing-in-user-acceptance-testing</link>
		<comments>http://www.techdarkside.com/using-exploratory-testing-in-user-acceptance-testing#comments</comments>
		<pubDate>Fri, 18 Jan 2008 12:31:16 +0000</pubDate>
		<dc:creator>David Christiansen</dc:creator>
				<category><![CDATA[Agile]]></category>

		<guid isPermaLink="false">http://www.techdarkside.com/?p=201</guid>
		<description><![CDATA[I recently got involved in an email list discussion about exploratory testing. I thought I&#8217;d post one of my comments here: I think it&#8217;s worth noting that for most terms there is a difference between practice and theory in the way they are used. So, while I call the part of my projects (I&#8217;m a [...]]]></description>
			<content:encoded><![CDATA[<p><div style="float: right"><script type="text/javascript"><!--
google_ad_client = "pub-9768843936559157";
/* 300x250 Post Ads */
google_ad_slot = "1495790255";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div>I recently got involved in an email list discussion about exploratory testing. I thought I&#8217;d post one of my comments here:</p>
<p>I think it&#8217;s worth noting that for most terms there is a difference<br />
between practice and theory in the way they are used. So, while I<br />
call the part of my projects (I&#8217;m a PM BTW, for those who don&#8217;t know<br />
me) where users come in and test UAT, the purpose of this testing is<br />
to BOTH find bugs and determine whether they accept the product,<br />
never mind the literal meaning of the words behind the abbreviation<br />
UAT. I have found that exploratory testing is extremely effective for<br />
both of these activities. Real users who have been trained in<br />
exploratory testing are able to find bugs very quickly &#8211; usually in<br />
the first two or three days of UAT. They also very quickly develop an<br />
opinion of whether or not the product is shippable.</p>
<p>This works for my projects. Here are some reasons why:<br />
- My pool of testers is very friendly towards me. They report to my<br />
business partner, who fully supports my often-controversial approach<br />
to project management.<br />
- I have considerably lengthened UAT to give us time to fix defects<br />
(I get away with this by shortening functional testing).<br />
- UAT testers don&#8217;t come out of my project budget. This is an oddity<br />
that may be specific to my situation. As a result, my projects cost<br />
less if real users do the bulk of the testing.<br />
- Finding a bug in UAT is not a bad thing for my projects. Everyone<br />
is on the same page in this regard.</p>
<p>The truth is, my &#8220;UAT&#8221; is really functional and acceptance testing at<br />
the same time. While this may not meet the typical testing model, it<br />
works very effectively for me. In fact, I have typically taken more<br />
time off of functional testing than I add to UAT, which means<br />
schedule-wise I am better off. This works because I have a rather<br />
large pool of very cooperative UAT testers to draw from, and<br />
typically only have one or two functional testers available to me<br />
(who I have to pay for).</p>
<p>I am convinced that this approach would not work for many projects.<br />
Here are some situations where I think taking my approach would be a<br />
horrible mistake:<br />
- When contractual obligations regarding the software are being tested<br />
- When your UAT testers don&#8217;t like you<br />
- When your business partner freaks out if you find bugs in UAT<br />
- When you don&#8217;t have time to fix bugs you find in UAT<br />
- When you need to test something very technical about the product<br />
that cannot be verified functionally</p>
<p>In theory, I suppose, what I do may be considered a really bad thing.<br />
But in the context of my world, it has been tremendously effective.<br />
My production launches have been fantastic &#8211; we rarely get bug<br />
reports from the field since we started this approach, and my<br />
projects tend to end more quickly.</p>
<p>I guess the point I&#8217;m trying to make is that sometimes the<br />
distinctions between terms are not that important. Sometimes they<br />
are. You need to be able to tell the difference and not make<br />
assumptions about the types of activities going on at a particular<br />
point in a project just because it has a particular label or because<br />
it&#8217;s using a particular approach. You can argue that UAT is only for<br />
determining whether a product is contractually finished or not, or<br />
that exploratory testing is only for finding bugs, but if that&#8217;s not<br />
the way a project is doing it and it&#8217;s working for them the academic<br />
distinctions aren&#8217;t particularly important if they are limited to a<br />
single implicit context.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.techdarkside.com/using-exploratory-testing-in-user-acceptance-testing/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>COAST: The Business/IT Love-Hate Measurement</title>
		<link>http://www.techdarkside.com/beauty-is-in-the-eye-of-the-beholder</link>
		<comments>http://www.techdarkside.com/beauty-is-in-the-eye-of-the-beholder#comments</comments>
		<pubDate>Tue, 18 Dec 2007 04:24:46 +0000</pubDate>
		<dc:creator>David Christiansen</dc:creator>
				<category><![CDATA[Agile]]></category>

		<guid isPermaLink="false">http://www.techdarkside.com/?p=194</guid>
		<description><![CDATA[I have great sympathy for the business organizations that utilize services from corporate IT groups. It&#8217;s not easy to make an IT project successful just because of the complex nature of software systems. Specialization and centralization of resources, which are practically IT &#8220;best practices&#8221; these days according to the popular literature, only makes things works. [...]]]></description>
			<content:encoded><![CDATA[<p>I have great sympathy for the business organizations that utilize services from corporate IT groups. It&#8217;s not easy to make an IT project successful just because of the complex nature of software systems. Specialization and centralization of resources, which are practically IT &#8220;best practices&#8221; these days according to the popular literature, only makes things works. I&#8217;ve been wondering why that&#8217;s the case for about a decade now, and I think I&#8217;ve come up with some defensible ideas.<br />
<div style="float: right"><script type="text/javascript"><!--
google_ad_client = "pub-9768843936559157";
/* 300x250 Post Ads */
google_ad_slot = "1495790255";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></p>
<p>I think it helps to look at our IT organizations from the point of view of the business units we support, and I&#8217;ve devised a mnemonic to capture a heuristic for measuring how the people we support look at us: COAST. COAST stands for the Cost of Acquiring a Supportive Team. COAST is not about the effort required to complete a project, but the effort expended just to take the first steps necessary to start one. It is the cost of turning a business problem into an actionable project, with resources (people &#038; technology) assigned and prepared to solve the problem.  </p>
<p>If there are multiple layers of support organizations involved, COAST extends all the way through to the last layer of support and must include ALL the costs required to get to the point where even the network guy <span id="more-194"></span>in the data center is committed to the project, if his support is needed.</p>
<p>Let me give you a specific, albeit fictional, scenario for your consideration. Goldilocks is a web project for Hollywood Avenue, a major cosmetology company &#8211; the idea being to create a web site that analyses digital photographs of a customer&#8217;s hair and recommends hair color products, highlighting patterns, etc. HA&#8217;s IT department has three layers of support &#8211; application development, infrastructure services, and technology acquisition. The engagement model works like this:</p>
<p>Business => Application Development => Infrastructure Services => Technology Acquisition. </p>
<p>I call this the Dem Bones engagement model. You know the lyrics:<br />
<em>The foot bones&#8217; connected to the ankle bone<br />
The ankle bone&#8217;s connected to the shin bone<br />
The shin bone&#8217;s connected to the knee bone<br />
</em>etc, until you get to head.</p>
<p>Here&#8217;s the point, and I&#8217;m going to use caps because I wish I could shout it: COAST doesn&#8217;t stop growing UNTIL YOU MAKE IT ALL THE WAY FROM THE FOOT BONE TO THE HEAD BONE!</p>
<p>At HA, this means COAST doesn&#8217;t stop accumulating until all resources, from Application Development to Technology Acquisition, have been committed to the delivery of the Goldilocks product. COAST could be a little, or it could be a lot, depending on how much work is required to sign up each of these organizations.</p>
<p>Until all these resources are committed to your project, you haven&#8217;t incurred the total Cost of Acquiring Technology &#038; Services.</p>
<p><strong>Why COAST Matters</strong><br />
COAST is a measurement of how you are perceived by the business you support. If COAST is high, you are seen as a hindrance. If it is low, you are a partner. It&#8217;s that simple.</p>
<p><strong>Measuring COAST</strong><br />
I&#8217;m sure there are numerical ways to measure COAST, but I&#8217;m not convinced it matters. My honest opinion is that what matters is not the actual numerical values about COAST, but the way your business partner FEELS about COAST. Specifically, COAST is relevant in three areas:</p>
<li>Economic Cost</li>
<li>Time Cost</li>
<li>Emotional Cost</li>
<p><strong>Economic Cost</strong><br />
How much money does your business partner have to spend just to get an IT project off the ground? Once the project has started, do they feel that money was well spent, or do they consider it wasted money that represents the &#8220;cost of doing business?&#8221; Did the work leading up to having an executable project make the project less expensive, or more expensive?</p>
<p><strong>Time Cost</strong><br />
How long does it take just to get IT engaged and moving? What is the absolute shortest start cycle for taking any project from concept to the point at which everyone is on board and measurable progress is occurring? How does your business feel about that time? Is it time well spent, making the project more likely to succeed, or does every day the project hasn&#8217;t started yet add more risk to the project?</p>
<p><strong>Emotional Cost</strong><br />
Does the process of getting an IT project moving leave your business feeling drained and resentful? Or, are they excited and more committed than ever? How many escalations were involved in getting IT to sign up for the project and assign resource? How many different IT executives have to agree before COAST stops growing? How many meetings, emails, and documents does it take to build consensus?</p>
<p><strong>The Four Rules of the COAST</strong><br />
<em>Rule #1: COAST is cumulative.</em> </p>
<p>The sum of the whole can NEVER be less than the sum of the parts. Take HA for example. The Application Development group can put together a dedicated project team in just a few days, but Infrastructure Services needs six weeks just to assign an analyst to evaluate your needs. When Technology Acquisition is involved, it gets even worse. COAST for TA is eight weeks or more. Even though the Application Development team can get off to a quick start, the total COAST is still high &#8211; fifteen weeks at a minimum.<br />
<em><br />
Rule #2: Business Facing IT Groups Must Shield the Business From the Downstream COAST Or Bear the Consequences for COASTs they Can&#8217;t Control</em></p>
<p>It is possible for an IT project manager to absorb much of the COAST produced by the downstream systems. He or she should do their best to structure their projects in ways that take the downstream organizations with high COAST off the critical path and give them time to do their jobs without ecalations. This isn&#8217;t always possible though, and when it happens it has a real cost to the business. For example, Goldilocks requires a color analysis package from an outside vendor. This means that AD is going to have to engage IS, which will in turn engage TA (six weeks later), which won&#8217;t start working on the purchase of the package for another eight weeks. There may not be much the project can do in the meantime, in which case the project manager is transferring the COAST ($, time, emotion) up to her business partner. But maybe there are things that can be done, like prototyping the user interface, building a data model, or testing a mocked up system on a focus group. These things only shield the business from the COAST of IS and TA if they have tangible, substantial value to the business.</p>
<p><em>Rule #3: Support Organizations Must Understand and Minimize Their COAST if They Want to Not Suck</em></p>
<p>The further you are from direct interaction with the business the more responsive you must be as an organization to survive. Even though the opposite is typically true (thanks to Law #2), a support organization like Infrastructure Services or Technology Acquistion in our fictional Goldilocks project needs to build their model around the goal of being at least as responsive, if not more, as the organization they support. In the Goldilocks example, this means IS and TA must be able to commit to projects within a week or less, at minimal cost, and without an act of deity, if they want to be seen as a high value organization.</p>
<p><em>Rule #4: Analyzing Isn&#8217;t Starting</em></p>
<p>Gathering requirements isn&#8217;t starting. Neither is writing use cases, counting function points, or building work breakdown structures. COAST continues to accumulate while you perform these preparatory tasks. COAST continues to grow until you start to deliver something of value.</p>
<p><strong>COAST Defines How the Business Sees IT</strong><br />
Read any business magazine and you&#8217;ll find at least one article mentioning the criticality of IT&#8217;s ability to respond quickly to the needs of the business. You can&#8217;t do that if your COAST is high. You have to lower it if you really want to be a partner in your business enterprise. You can&#8217;t lower COAST if you don&#8217;t know what it is from the point of view of your business partner. So ask them, and take their answer seriously. Most business think their IT departments suck. COAST is one of the reasons. Lower it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.techdarkside.com/beauty-is-in-the-eye-of-the-beholder/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interesting Post about the Demise of Gantt Charts</title>
		<link>http://www.techdarkside.com/interesting-post-about-the-demise-of-gantt-charts</link>
		<comments>http://www.techdarkside.com/interesting-post-about-the-demise-of-gantt-charts#comments</comments>
		<pubDate>Tue, 04 Dec 2007 23:20:22 +0000</pubDate>
		<dc:creator>David Christiansen</dc:creator>
				<category><![CDATA[Agile]]></category>

		<guid isPermaLink="false">http://www.techdarkside.com/?p=189</guid>
		<description><![CDATA[Alexey over at OneYoxel has a couple of interesting posts following up on Tate&#8217;s post &#8220;The Demise of Gantt Charts in Agile Projects&#8221;. I recommend you check it out. Here&#8217;s a quote I enjoyed. In its traditional sense as a static master plan of your project I would agree, there is not much value in [...]]]></description>
			<content:encoded><![CDATA[<p>Alexey over at <a href="http://yoxel.wordpress.com">OneYoxel</a> has a couple of interesting posts following up on Tate&#8217;s post &#8220;The Demise of Gantt Charts in Agile Projects&#8221;. I recommend you check it out. Here&#8217;s a quote I enjoyed.</p>
<p><em>In its traditional sense as a static master plan of your project I would agree, there is not much value in Gantts. But in its revised dynamic interpretation as a reflection of your current iteration state I still think these charts could still be a useful visualization tool even for agile teams.</em></p>
<p>You can read the rest of the post <a href="http://yoxel.wordpress.com/2007/11/27/%e2%80%9cdemise%e2%80%9d-wasn%e2%80%99t-really-about-the-difficulty-of-gantt-charts-inside-an-iteration/">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.techdarkside.com/interesting-post-about-the-demise-of-gantt-charts/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Procurement Problem and Agile Methods</title>
		<link>http://www.techdarkside.com/the-procurement-problem</link>
		<comments>http://www.techdarkside.com/the-procurement-problem#comments</comments>
		<pubDate>Tue, 04 Dec 2007 05:41:46 +0000</pubDate>
		<dc:creator>tate</dc:creator>
				<category><![CDATA[Agile]]></category>

		<guid isPermaLink="false">http://www.techdarkside.com/?p=188</guid>
		<description><![CDATA[OK, I&#8217;ve had enough; it&#8217;s time for another rant. Once again I find myself bewildered and befuddled by the sound and fury of the Agilistas as they seek to dethrone the PiMPs. Tell me something all you clever people out there, if Agile is sooo good, why has it not taken over the entire industry [...]]]></description>
			<content:encoded><![CDATA[<p>OK, I&#8217;ve had enough; it&#8217;s time for another rant. Once again I find myself bewildered and befuddled by the sound and fury of the Agilistas as they seek to dethrone the PiMPs. Tell me something all you clever people out there, if Agile is sooo good, why has it not taken over the entire industry by now (it hasn&#8217;t, trust  me)?</p>
<p>You could say it&#8217;s a standard &#8216;paradigm shift&#8217; and that it will just take time for everybody to slowly get on board. It would be nice to think that but, I&#8217;m here to tell you that, unfortunately, it won&#8217;t be that easy. Why? Because the waterfall methodology still solves problems that Agile doesn&#8217;t solve.</p>
<p>&#8220;What?&#8221; you say. &#8220;Impossible!&#8221; you say (ahh yes, I can almost hear the rotten tomatoes hurtling toward me now).<br />
<div style="float: right"><script type="text/javascript"><!--
google_ad_client = "pub-9768843936559157";
/* 300x250 Post Ads */
google_ad_slot = "1495790255";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><br />
It&#8217;s true. The real problems that waterfall was designed to solve (and perhaps even what it evolved and adapted to solve (gasp!)) are procurement problems. Let me say that again: Procurement Problems.<br />
<span id="more-188"></span></p>
<p>Let’s brush up on a little Capitalism 101. People with money frequently want to trade some of their money for something else of value to them. When the something else is raw material or oil or some commodity item, it is relatively easy to work out the deal. “I need 200 more gallons of Foo to add to my inventory so I don’t run out. Who has the best price on Foo this month?” When you get into more specialized items like CPU chips, price is still very important, but there is now another consideration: timing. “I’ll pay $90 per chip, but you have to get 4000 of them in my warehouse by the end of next month. Who can promise me 4000 chips right now?” And if you get into even more specialized things, like acquiring a company or getting plastic surgery or a trial lawyer, there is something even more important still: risk reduction. You’re only getting one and it will be really expensive. All kinds of things can go wrong if you choose poorly. You need the best supplier of whatever it is that you can get.</p>
<p>A real business person who has their own budget authority and who wants to buy (outsource) a software development project fits this mold. Yes, they’d like the developer to be inexpensive, but what they want more than that is to get the value they expect out of the application. There’s a real business need for having this application (which has maybe 40 features) and the sooner they can start realizing that value, the better. And what they desperately need is for the developer to reduce the project risk as much as possible. Perfect for Agile, right?</p>
<p>Yes, except that the business person is not too savvy at evaluating technical talent or organizational capabilities, so the business person is left to try to measure a developer’s ability to reduce risk by evaluating whether the developer is oozing with experience and confidence and talent and provides a beautiful proposal with mature-sounding procedures and cool business cards. You don’t have to use an Agile method to do that.</p>
<p>If you’re proposing an Agile project, what risk are you taking away from the buyer (from her perspective)? What exactly are you promising to do? Are you promising to work efficiently and constantly keep her involved in your project to collaborate and see progress? What if your competition promises to finish all 40 features of the desired system for a fixed price, by a specific date as long as the business person doesn’t change her mind about what she wants. Which sounds more attractive? Which proposal sounds less risky to the un-initiated?</p>
<p>It gets worse. The reality is that business person with her own idea of what she needs and her own budget authority accounts for a small amount of the total dollars spent on projects. In my experience, she’s less than 50% and I’ve worked in companies that specifically target that kind of customer. It’s probably much less than that overall.</p>
<p>What is much more common is to have a business person who has an idea of what they want, but they have to get money approved through a corporate purchasing function. This means that the real <strong>root of all</strong> this methodology <strong>evil </strong>will be involved in your project &#8211; <em>procurement people.</em></p>
<p>Procurement people constantly screw up the process of buying a software project because they treat it the same way as buying 200 gallons of Foo. This is especially true in government and manufacturing organizations. They do this in the great hope that it will benefit their organization enough that they can keep their job another year. I’ve heard that some of these people get a commission on how many discount dollars they can wring out of suppliers’ prices. So, price is always supposed to be as cheap as possible and fixed, the date is always supposed to be guaranteed, the scope is…well luckily they don’t know what scope is, so they skip that part, but yes you do need to have customer references and insurance and blah blah blah to prove you’re an excellent supplier of Foo and if you just sign their standard terms and conditions stating that anything of value you might ever achieve in life can be claimed by them to be their own intellectual property, then your proposal will be reviewed alongside the six other submissions for the job.</p>
<p>The business person is still there, but the only thing they have to cling to is their vision of what features the application should have. In fact they probably had to write a spec so the procurement people could put it out for bid. So, if you are going to propose an Agile project on a spec that was written by somebody else, how would you do it? What, exactly would you be promising? You will be required contractually to have a fixed price, you might also have a constraint on the finish date and you have a fixed specification to bid against. How will your waterfall-loving competition bid? Again, ask yourself which proposal is going to sound more convincing to the uninitiated?</p>
<p>When people who run consulting businesses think very hard on this problem, most will come back and say, “Well, if I <em>have </em>to fix the price and the date <em>and </em>deliver that pile of scope in your spec, then I’ll do it for $[x] as long as you don’t change anything in the spec. If you change something then I’ll have to charge you more, but it will be on a case by case basis.” They’ll say this because they have to make payroll and they are trying to keep their staff happy. They’ll say it because they know the customer will change their mind because the spec is crap, so they’ll get to up the price anyway and it will be after they have gotten past the procurement people and are just dealing with the business people.</p>
<p>People define projects and bid them out because they want somebody else to be responsible. Procurement departments try to increase competition, squeeze prices down, and outsource as much risk as possible.</p>
<p>Is it any wonder that services firms developed ‘change management’ procedures in the 80’s and 90’s to deal with government and business procurement problems? Is it any wonder that the idea of dumbing down the roles and responsibilities and using ‘better&#8217; processes and cheaper resources gained ground as boilerplate proposal content (if not real practice)?</p>
<p>The waterfall methodology was not created and does not survive today because it is a good approach to develop software. It was developed because it was a good approach to navigating a procurement minefield and winning software project contracts. Until Agile can find a way to win the procurement battle (or somehow change that game), waterfall methods will stick around.</p>
<p>- Tate Stuntz</p>
]]></content:encoded>
			<wfw:commentRss>http://www.techdarkside.com/the-procurement-problem/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
