<?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>Irie, Inc. &#187; business value</title>
	<atom:link href="http://www.irie-inc.com/tag/business-value/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.irie-inc.com</link>
	<description>Agile Software Development Consulting</description>
	<lastBuildDate>Wed, 16 Dec 2009 18:16:09 +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>Tools for Creating the Backlog</title>
		<link>http://www.irie-inc.com/2009/11/17/tools-for-creating-the-backlog/</link>
		<comments>http://www.irie-inc.com/2009/11/17/tools-for-creating-the-backlog/#comments</comments>
		<pubDate>Tue, 17 Nov 2009 20:26:21 +0000</pubDate>
		<dc:creator>jarrowwx</dc:creator>
				<category><![CDATA[Backlog Management Tools]]></category>
		<category><![CDATA[acceptance criteria]]></category>
		<category><![CDATA[agile software development]]></category>
		<category><![CDATA[backlog]]></category>
		<category><![CDATA[business value]]></category>
		<category><![CDATA[planning]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://www.irie-inc.com/?p=126</guid>
		<description><![CDATA[Evaluating a number of different Agile tools, starting with how well they serve the needs of the Product Owner for creating the backlog.]]></description>
			<content:encoded><![CDATA[<p>I am working with a client to choose a backlog management tool to standardize on.  The first criteria that I wanted to focus on was how it serves the needs of the product owner for the daunting task of creating the backlog.</p>
<p>Humans are only able to hold so many distinct pieces of information in their head at a time.  Past a certain point, the mind naturally starts treating things as bundles, groups of related items, in order to continue working on them.  Some people are able to hold these separate items, others are better at transparently grouping things together.  But in the quantity of items that are needed for anything but the simplest of projects, every product owner will need to group those user stories together in order to facilitate the creation process.</p>
<p>For example, as I create user stories, I might find or create two that tell the same story, but from a different perspective. Each adds value, and I would want the different perspectives captured and communicated, but ultimately they are the same story.  If I were literally using &#8217;story cards&#8217; as in 3&#215;5 cards on a desk, then in that case I would capture that information by stapling the cards together, so they are treated as one.  </p>
<p>As the number of story cards increases, I might start making piles of story cards that are closely related, but they are not quite the same.  For example, one story card may represent the basic functionality, while another represents a bit of additional functionality that can be added later which one stakeholder or another might be able to leverage.  As more stakeholders weigh in, the pile gets more and more cards in it.  Once everybody feels like they have defined what they want, I might give that pile a &#8216;label&#8217; so I understand what is in it, and then I would paper-clip them all together.  From that point forward, I will usually treat that pile as a unit, peeking inside only when I need to.</p>
<p>As the number of story cards continues to grow, more and more of these piles are going to exist.  These piles will need some way to organize them.  I would look them over, find things they have in common, and start making groupings.  Once I have a grouping that seems to me to be &#8216;complete&#8217; I would use a binder clip to hold them all together, with a &#8217;summary&#8217; card on top of them all, so I can treat them all as a single element.</p>
<p>In some cases, I may deliberately create &#8216;groupings&#8217; and then start creating story cards to go into that grouping.  But in many cases, I will be creating groupings after-the-fact.  And unfortunately, I may undo and re-do my groupings once or twice before I am satisfied with them.  I may move individual cards from group to group, or I may move entire groups to other groups. </p>
<p>While creating the cards, I will periodically re-open my groups one by one to inspect them and see if any additional stories come to mind.  If not, I close them up again and move on to the next, until I feel like I have a degree of completeness.</p>
<p>Most likely, the grouping that I will use initially will be functional in nature.  Related functionality will be grouped together.  But sometimes, it helps to look at things from a different perspective.  So I will want to see my stories grouped by role, so I can look at all of the stories told from the perspective of a particular stakeholder.  In doing so, I may realize that there are stories that I may have missed.  Or, I may take that bundle of story cards to that stakeholder to review. </p>
<p>Later, when assigning business value, I may want to re-group them again, according to the type of value that they provide to the business, such as attracting new customers, retaining existing customers, increasing income from existing customers, reducing expenses, limiting legal risk, and so forth.  In this case especially, one card may belong to multiple groups.  By reviewing the cards in context with other cards that have a similar goal in mind, it will make it easier to get a perspective on relative business value.</p>
<p>Of course, a story is not complete if I have not defined acceptance criteria.  So I will need to go through the stories one by one, starting with the ones that provide the most business value, and write the acceptance criteria.</p>
<p>Finally, the sizing of stories can begin.</p>
<p>A good backlog tool will be at least as flexible as the analog that it seeks to emulate.  Creating story cards will be quick and easy.  Moving them around and grouping them together should be nearly effortless, from a technical standpoint.</p>
<p>Ideally, it will be even better than the analog.  I can create as many groupings as I want, and nest them as deeply as I need to, without running out of ways of holding them together.  I can move some aside that I&#8217;m not actively working on, sort them according to whatever criteria I want, or find a specific story without having to remember which group I put it in.</p>
<p><strong>The Tools</strong></p>
<p>In looking for a backlog management tool, the first thing that I found was that the majority of tools completely ignore the need for grouping.  The concept of &#8216;epics&#8217; and &#8216;themes&#8217; are absent from a great many of them.  While I did see a tool that really impressed me, for a number of reasons, the absence of that one feature meant that I had to eliminate the tool from consideration.</p>
<p>After reviewing dozens of backlog management tools, I managed to narrow the field to four:  Rally, VersionOne, Mingle, and AgileOnDemand.  Of course, for completeness, I need to consider using Excel, the &#8216;recommended&#8217; tool from the literature, and actually using stacks of 3&#215;5 cards.  The deciding factor is going to have to be, does the tool let me do what I want, the way that I want to do it?</p>
<p>As we move forward in this analysis process, we will take specific scenarios and see how they compare.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.irie-inc.com/2009/11/17/tools-for-creating-the-backlog/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Frequent and Functional Deliveries</title>
		<link>http://www.irie-inc.com/2009/10/27/frequent-and-functional-deliveries/</link>
		<comments>http://www.irie-inc.com/2009/10/27/frequent-and-functional-deliveries/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 23:44:13 +0000</pubDate>
		<dc:creator>jarrowwx</dc:creator>
				<category><![CDATA[Agile Training]]></category>
		<category><![CDATA[Principles]]></category>
		<category><![CDATA[agile software development]]></category>
		<category><![CDATA[business value]]></category>
		<category><![CDATA[feedback]]></category>
		<category><![CDATA[frame of reference]]></category>
		<category><![CDATA[paradigm shift]]></category>
		<category><![CDATA[perspective]]></category>
		<category><![CDATA[waste]]></category>
		<category><![CDATA[working software]]></category>

		<guid isPermaLink="false">http://www.irie-inc.com/?p=28</guid>
		<description><![CDATA[Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. ]]></description>
			<content:encoded><![CDATA[<blockquote><p>Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.</p></blockquote>
<p>
The goal of every sprint should be to create something that gives the business a sense of perspective, a frame of reference to use to direct future activities.  What you deliver needs to work, at least in some respect or with some limitations, in order to offer the business that sense of perspective.  If what you deliver can not be seen by the business, it adds no value.
</p>
<p>
&#8220;But it adds value to the development effort!&#8221; you might be thinking.  Sure, assuming that your understanding of the direction that you need to go is correct.
</p>
<p>
Note that you are not simply taking a traditional development project and breaking it into 2-week chunks of work.  You are creating a functional piece of software.  It is all too easy to fall into the trap of breaking things down functionally, and then trying to map your functional decomposition into a backlog.  Too often, you end up with pieces which can not stand alone, which do not deliver value to the business.  The business can&#8217;t prioritize those kinds of things.
</p>
<p>
The problem is diving too deep.  It&#8217;s so easy to do, too.  You want to understand the problem, so you divide and clarify, divide and clarify, and at some point you magically and invisibly have gone beyond <i>what</i> you are trying to accomplish and have transitioned into the <i>how</i> of accomplishing it.
</p>
<p>
Therein is the secret of making sure your backlog includes only items that add value:  They only tell you what it must do for the business, it does not specify how it is done.  Review every user story, and ask yourself: &#8220;Is this telling me what the system needs to do, or is it telling me how the system works?&#8221;  If it is the latter, change it to be the former.  If you can&#8217;t, then you probably broke down the functionality too far, and that story needs to be rolled into another one that it supports.
</p>
<p>
It takes discipline, and maybe even a shift in ways of thinking, but you need to deliver something that &#8220;works&#8221; every time.  It may be a mock-up or a prototype, it may not do everything it needs to do when initially delivered, but it is something that the business can see and wrap their brains around.  The purpose of this is to empower the business to give their guidance sooner rather than later, and save everyone the frustration of wasted effort.
</p>
<p>
&#8220;But isn&#8217;t a prototype a waste of time?&#8221;  Not really.  Build it right and you can simply refactor it as necessary to make it into what it needs to be.  And in the worst case, if you have to throw the whole thing away, you still ended up with valuable understanding of the problem, and that all-important frame of reference for the business to guide forward progress.
</p>
<p>
So, deliver working software.  But deliver it often.  Very often.  Here&#8217;s why:
</p>
<ul>
<li> If you have a term paper due in six months, what is the likelihood that you will finish it tomorrow?  What is the likelihood that you will do the bulk of the work the night before it is due?  The longer the sprint length, the more this tendency might rear its ugly head.</li>
<li> The bigger the sprint backlog, the more overwhelming it can feel, whether there is any reason for it or not.  So, the longer the sprint, the bigger the sprint backlog, the harder it is to focus, for some people.</li>
<li> <b>The shorter the duration, the sooner the business can give its feedback, the more Agile you become.</b></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.irie-inc.com/2009/10/27/frequent-and-functional-deliveries/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Value Proposition</title>
		<link>http://www.irie-inc.com/2009/10/26/the-value-proposition/</link>
		<comments>http://www.irie-inc.com/2009/10/26/the-value-proposition/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 18:26:38 +0000</pubDate>
		<dc:creator>jarrowwx</dc:creator>
				<category><![CDATA[Agile Training]]></category>
		<category><![CDATA[Principles]]></category>
		<category><![CDATA[agile software development]]></category>
		<category><![CDATA[business value]]></category>
		<category><![CDATA[feedback]]></category>
		<category><![CDATA[frame of reference]]></category>
		<category><![CDATA[roi]]></category>
		<category><![CDATA[working software]]></category>

		<guid isPermaLink="false">http://www.irie-inc.com/?p=18</guid>
		<description><![CDATA[Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. ]]></description>
			<content:encoded><![CDATA[<blockquote><p>Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.</p></blockquote>
<p>A basic tenet of Agile software is to deliver Value to the business.  The challenge is to do this in the face of continuously changing priorities and/or requirements.<br />
Part of what causes the priorities or requirements to change is a basic truth in psychology: it&#8217;s easier to see what is in front of you than it is to operate mentally on a figment of your imagination.  The more concrete things become, the more the definition seems to change.</p>
<p>What this also means is that the more frequently you deliver something that works, the faster the business gets to see the truth of what they had asked for.  This allows them to evaluate it in a concrete way, and thereby be empowered to offer meaningful feedback on it.</p>
<p>But delivering something that &#8216;works&#8217; is only half of the equation.  What works should be something that adds value.  Time spent working on something that no one will use is time wasted.  Delivering something that costs more to create than it will earn or save for the company is also time wasted.  There may come a point in the project where there is still plenty to work on, but none of it adds enough value to be worth the investment.  A good product owner will recognize that point, and the project will end.  A good team will help identify when that point is reached.</p>
<p>When breaking down the work that is to be done, keep this in mind.  If it doesn&#8217;t add value by itself, don&#8217;t deliver it by itself.  If something else adds more value, do that first.  But don&#8217;t fall into the trap of needing to deliver everything all at once.  Really, all &#8216;features&#8217; are not created equal.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.irie-inc.com/2009/10/26/the-value-proposition/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
