In the software world, agility often starts with the development team. That’s nice, but generally only a part of the solution. By creating a value stream, interesting opportunities and dilemmas abound. Unless the whole supply and value chains are aligned, the benefits of agility can be lost. In some cases, the agility itself can present a dilemma.
This is one that’s led to some interesting conversations. In a fully agile development shop, products are (theoretically) available at the end of every sprint. Could be that something new and interesting comes popping out every two weeks. While the tech folks may have been disciplined and productive enough to make this a possibility, some interesting dynamics start to appear. Stuff to ponder:
- for a distributed product, can the delivery chain reasonably absorb an ever-increasing catalog of slightly different versions of products?
- can the support organization keep pace? Will they be able to discern the differences from one version of the product over the other?
- At what frequency does the consumer want to use new versions of the software?
- If a product to be deployed (rather than shipped), is the technical operations organization ready?
- Are there other production chain considerations (you’ve just become someone’s supply chain)?
These questions seem to point to a situation where the organization best be mindful of the downstream constraints. The software development organization may very well have done a phenomenal job of producing a steady stream of exciting and valuable features. However, the trick is to ensure that the perceived value of those capabilities is sufficient to distinguish the product within the marketplace.
Some questions that lead me to look at the other side (get new features delivered as quickly as possible) include:
- Can you capture & retain market mind-share? Products are exciting for only so long. There are some analogies that I’ve seen drawn between agile processes and the psychology of game playing. Many product strategies are based off of engaging your audience in a way that they not only like what they have purchased, but grow their relationship/engagement with the product as they regularly adopt new techniques and features that help them derive even greater value. Get people in the habit of coming back for more & all kinds of good things may happen!
- What are your competitors doing? If they’re going silent for long periods of time, a regular set of releases may keep you in full view, with a great opportunity to retain mind share. This could be a valuable part of your product strategy. We live in a “what did you do for me yesterday” type of world. This can create a series of productive “yesterdays”
This presents a set of interesting alternatives, that can have a range of results:
- go ahead and release the product at the end of each sprint. In a SaaS environment, this could be fine, provided the changes don’t cause confusion within the user community. In a shippable product world, this could be a challenge.
- accumulate enough changes/improvements in the product to make a “big splash.” This may take more time, and if you’re not careful, can lead to pronounced delays in the delivery of the final product.
Most organizations find a happy medium.
Wrapping up, what are the conclusions that can be drawn? Agile development alone isn’t going to cut it; everyone needs to consider what they’re doing in a lean organization. If you engage and consider all participants in your product life-cycle, there are some pretty interesting things to consider. When laying out a product feature strategy, there’s plenty to consider!