<?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>Zen and the Art of Nonprofit Technology &#187; agile</title>
	<atom:link href="http://zenofnptech.org/tag/agile/feed" rel="self" type="application/rss+xml" />
	<link>http://zenofnptech.org</link>
	<description>Thoughtful and sometimes snarky perspectives on nonprofit technology</description>
	<lastBuildDate>Mon, 08 Mar 2010 00:10:53 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Avoiding Trainwrecks</title>
		<link>http://zenofnptech.org/2009/06/avoiding-trainwrecks.html</link>
		<comments>http://zenofnptech.org/2009/06/avoiding-trainwrecks.html#comments</comments>
		<pubDate>Thu, 04 Jun 2009 06:16:17 +0000</pubDate>
		<dc:creator>Pearlbear</dc:creator>
				<category><![CDATA[Nonprofit Tech]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[nptech]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.zenofnptech.org/?p=524</guid>
		<description><![CDATA[I spent a big chunk of my day dealing with a project that is, in no uncertain terms, a trainwreck. The client has sunk a ton of money into a product which is in, its current (first phase supposedly finished) state, unusable (client and vendor shall remain unnamed.) My role in the project has been [...]]]></description>
			<content:encoded><![CDATA[<p>I spent a big chunk of my day dealing with a project that is, in no uncertain terms, a trainwreck. The client has sunk a ton of money into a product which is in, its current (first phase supposedly finished) state, unusable (client and vendor shall remain unnamed.) My role in the project has been strategic and as a liason, not technical, which to some extent gives me a bit of a distanced view.</p>
<p>Web development trainwrecks are, sadly, far from isolated cases &#8211; they happen all the time, even when all of the parties have good intentions. And as someone who is building a business around doing this sort of work, it is of keen interest to me as to why some projects end up in the state that this project is in, and I want to make sure to avoid these kinds of situations. So how do we avoid trainwrecks? Some trainwrecks we can see coming miles away, but yet we are in complete denial about them. Some trainwrecks are like sudden derailments &#8211; it&#8217;s not at all clear where it comes from. But I think all trainwreck projects have the seed of the wreck somewhere in the history of the project.</p>
<p>The hallmarks of this particular trainwreck were so clear, that in retrospect, they scream out at me:</p>
<ul>
<li>Lack of transparency about development process</li>
<li>Lack of transparency about cost implications of increased scope</li>
<li>Waterfall development process (well, the vendor <em>said</em> they practiced Agile, but in practice, it&#8217;s been waterfall)</li>
</ul>
<p>As a practitioner of the <a href="http://en.wikipedia.org/wiki/Agile_software_development">Agile development process</a> (we use a somewhat modified form of <a href="http://en.wikipedia.org/wiki/Scrum_(development)">Scrum</a>, in particular,) I&#8217;m beginning to really see the value of this kind of process. It makes visible all sorts of things that are often hidden. It seems like the Agile methodology helps in a number of ways:</p>
<ul>
<li>Once educated, clients have a window into the development process. They know what small chunks of development are going to happen in a given time interval, and they know what they will get at the end of that time interval</li>
<li>Things are developed in priority order</li>
<li>Clients can critique things early</li>
<li>New functionality becomes a part of the &#8220;product backlog&#8221; and it is easier to have clarity about what is and is not within scope</li>
</ul>
<p>Of course, it is theoretically possible to be completely transparent in a traditional waterfall methodology, and completely opaque using Agile, but I do think that the Agile methodology makes it way more difficult to be opaque. But it also takes some work and education of clients unfamiliar with the methodology (as well as making mistakes along the way on our part as developers.)</p>
<p>And I&#8217;ve been able to watch this process work well, not only with our own projects, but also with a project I was a strategic lead on. I was pretty skeptical a year or so ago, but now I&#8217;m sold. And since transparency has always been something of real importance to me, a development process that encourages transparency is a good thing.</p>
]]></content:encoded>
			<wfw:commentRss>http://zenofnptech.org/2009/06/avoiding-trainwrecks.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
