Skip to main content

The Agile Business Case

Many agile teams have never seen a business case, ever, and they may even be proud of it.

    Our mantra is that we deliver "business value," not just "software," quicker, better, and faster, but if so, we certainly don't spend a lot of time reporting on value delivery, and in fact we may be scornful about "analysis paralysis."  As software developers, we consider ourselves to be doing quite well if we can deliver the software every two weeks (or continuously).  And this is particularly if we've enabled this frequent high-quality delivery through automated testing and automated build-and-release techniques.  We've reduced business risk by making results visible more often, and allowing the business to change direction more frequently.  We assert that along the way of course we're also delivering value.  But how would we prove it?

    I've recently posited that we shouldn't even think of doing agile projects without capturing and recording story value points during iterations.  But this is only one piece of a larger puzzle.  From a business value point of view, we have five main opportunities to identify business value and tune projects to deliver on it faster, better, and cheaper.
    1. At investment time:  "Someone from the business" (let's call her the "product owner") makes the business decision to start the project and ponies up money for it.  <== We can optimize project value here by ensuring the project is based on some actual business case whose predictions are quantifiable in some way, and can be measured during and beyond project delivery.
    2. During story creation:  At a project's inception, a product backlog or master story list is built, outlining the pieces of business functionality to be written in sentences in the format "as a <>, I need <>, so that <>" <== We can maximize value here by ensuring stories are indeed designed to capture individual pieces of valuable functionality, and that value is captured at analysis time.  I'm frightened to report that I've had the business owner of a project create stories like: "as the system, I need a user interface layer, so that I can input and output values to the database."  Creating stories which capture end-to-end business value in small pieces is very hard to do in practice.
    3. During story prioritization:  The product owner prioritizes the stories (a process which can be repeated before each iteration, as the business climate changes) <== We can and should insist that we have a full product backlog which is being revisited by the business owners of the initiative before every iteration, and we should be keeping tabs on what has actually been delivered, as it is delivered.
    4. While we are delivering the software every two weeks (or continuously)! <== If we were using techniques such as a "value burn-up" as opposed to an "effort burn-up," we could actually see the value accruing over the course of the project.  We should do this!
    5. As the business collects returns on the investment:  the new software translates into some actual benefit for the business (the business sells the software, or the software improves the business's operation in some key way). <== If long-term statistics on ROI are collected, we could quantify actual delivered value over time.
    In our Agile IT writings and trainings, we tend to relegate steps 1, 2, 3, and 5 to specialized "product owner" or "business analysis" functions which require "soft skills."  Often we decide to put our training dollars into learning how to do pair programming, automated testing, or continuous release management, and we simply decide to let the business carry on as it always has.  I think this is a mistake.  At the end of the day, we're not paid to deliver software--we're paid to deliver value.  It's not just strategically superior for us to insist on meticulously optimizing and measuring the value our projects deliver--in a tough economy, it's simple self-preservation.

    Comments

    Post a Comment

    Popular posts from this blog

    How Do You Vote Someone Off of Your Agile Team?

    One of the conundrums of agile conversion is that although you are ordered by management to "self-organize," you don't get to pick your own team.  You may not have pictured it this way, but your agile team members are going to be the same people you worked with before, when you were all doing waterfall!   I know I wasn't picturing it that way for my first agile team, so I thought I should warn you.  (I thought I was going to get between six and eight original Agile Manifesto signers.  That didn't happen.). Why "warn" you (as opposed to "reassure" you, say)?  Because the agile process is going to reveal every wart, mole, quirk, goiter, and flatulence issue on the team within a few hours.  In the old days, you could all be eccentric or even unpleasant in your own cube, communicating only by document, wiki, email, and, in extreme situations, by phone.  Now you are suddenly forced to interact in real time, perhaps in person, with written messag...

    A Corporate Agile 10-point Checklist

    I'm pretty sure my few remaining friends in the "small, collocated team agile" community are going to desert me after this, but I actually have a checklist of 10 things to think about if you're a product owner at a big company thinking of trying out some agile today.  Some of these might even apply to you if you're in a smaller place.  So at the risk of inciting an anti-checklist riot (I'm sorry, Pez!), I am putting this out there in case it is helpful to someone else. From http://www.yogawithjohn.com/tag/yoga-class/ Here's what you should think about: 1.        Your staffing pattern.  A full agile project requires that you have the full team engaged for the whole duration of the project at the right ratios.  So as you provision the project, check to see whether you can arrange this staffing pattern.  If not, you will encounter risks because of missing people.  Concretely it means that: a.    ...

    Requirements Traceability in Agile Software Development

    One of the grim proving grounds for the would-be agile business analyst (henceforth "WBABA")  is the "traceability conversation."  Eventually, you will have to have one.  You may have seen one already.  If you haven't, you may want to half-avert your eyes as you read further.  It gets a little brutal.  But if you close them all the way, you can't read. From:  http://www.highestfive.com/mind/how-to-perform-a-successful-interrogation/ Dialogue: WBABA :   ...so in summary, we complete analysis on each story card, and then we support the developers as they build it that same iteration! Corporate Standards Guy:   but how do you do traceability in agile?  You have to have traceability.  It's broadly recognized as an important factor in building rigorous software systems. These software systems permeate our society and we must entrust them with lives of everyday people on a daily basis. [The last two sentences are an actu...