Skip to content

Begin with the End in Mind

To have a software development process that focuses on continually delivering value, we need to take a look at the process from the perspective of a feature/user story. What happens to an idea as it first pops up in someones head and then gradually transforms into something that can be used to solve real, concrete problems? What steps does it go through? How long does it lay around and wait without anyone working on it? How much time does it on average take for a single idea to flow through the system?

With this perspective it comes more natural to look at how the process of delivering value works as a whole. That way we might avoid the trap of just looking at part of the process and ignoring the rest.

We did an exercise last week where we attempted to draw a map of what kind of work needs to be done in order to deliver an idea to our customers. We started by drawing a large light bulb to the far left of a whiteboard. “Ok, here is an idea in someones head. What shall he or she do with it?”

This sparked a lot of great discussions about responsibilities in the organization and how we decide which features makes it into a release and which don’t. Good discussions, but we had a hard time focusing them. When the time was up, our idea hadn’t made it far on its travel on the whiteboard.

When we picked up the session the next day, we did it a bit differently. Instead of starting the discussions at the beginning of the process, we started at the end. We started out by drawing a happy customer that had just received a new cool feature to the far right on a whiteboard. Then we asked ourselves -

“What had to happen just before the customer received this piece of functionality?”

“Well, we need to put the functionality up on our server for automatically updating the software.”

“What do we need to do to accomplish that?”

“Well, we…”

And so on.

The discussions seemed to become more focused as we began with the end in mind and walking backwards one step at the time. It was kind of a pull system for our discussions, pulling new topics to be discussed as the meeting progressed. We made enough progress in that second session to begin creating our first version of our kanban board.

Yay!

4 Comments

  1. Ah, great idea. I will try it this week, since I will be doing the same exercise. :)

    And a pic of the kanban board?

    Sunday, June 7, 2009 at 9:08 pm | Permalink
  2. Joakim wrote:

    Good luck with your exercise! Let me know how it went.

    I’ll see what I can do about the picture…

    Monday, June 8, 2009 at 8:03 pm | Permalink
  3. Patrik wrote:

    Reversing the technique, interesting idea. (But shouldn’t we first make the customer fail ;-)

    Tuesday, June 9, 2009 at 9:31 pm | Permalink
  4. Al wrote:

    brilliant. I have been trying to convince people that this is how my brain operates :)

    Thursday, June 25, 2009 at 3:11 pm | Permalink

Post a Comment

Your email is never published nor shared. Required fields are marked *
*
*