Saturday, May 5, 2012

Don't lose control of your backlog

Have you come across a Technical Story Syndrome yet?

My product team is new to Agile, and in the early going developers fell in love with the formal user story definition. So much that everything they embarked on had to be first defined in this format. Before long my backlog filled up with stories literally like the one below:

  "As an XYZ developer, I want the benefit of a standardized API for storing (caching) items in the DC, as well as transferring (syncing) required items between the DA & DC, so we can improve development time by reducing the number of specialized APIs required."

For a typical Product Owner with background in Product Management this simply would not make sense, whether (s)he will care to admit it or not. An even better test, is showing this story to your customers. See if this interests them. Would they pay even a dollar for this feature? If not that's a sure sign we are dealing with the so-called technical story.

Developers will often insist that these technical stories help to make the product better. The problem with these stories however is that they cannot be ranked by the Product Owner in relation to other stories on the backlog, and if they cannot be ranked they cannot be ever worked on.

One way to deal with this is recognize the need for some proportion of team's capacity to be allocated to technical debt and simply include these technical stories there. In the beginning of the project this may involve some technical stories for building the plumbing, or the foundation of the product, later on the focus may shift to refactoring, performance optimization and defect resolution.

In my case I've created one technical debt story for each sprint, moved the technical stories underneath it, asked the team to budget for up to half of the available sprint capacity, and delegated to the team the decision on what needs to be tackled as part of this story (plumbing, refactoring, optimization, defects) and what has to wait till future sprint. Of course this is just a general guidance.

Once I placed a technical debt story at the top of the list, I was able to easily navigate my backlog and rank all the user-facing stories. Back in control I am!

No comments:

Post a Comment