Friday, August 9, 2013

Agile Software Requirements Comic

The software requirements comic musing about pitfalls of software delivery through various images of a tire swing on a tree has been around in one incarnation or another for perhaps 40 years. 

Classic Software Requirements Comic
While acknowledging the comic depicts what can happen in software delivery (this even applies to other industries as well), I think we are here to acknowledge that we need to prevent these pitfalls and enhance our ability to deliver what the customer really needed (the last panel in the comic).

In the right cases, Agile values and practices can move us in a step in the right direction.  Below, I've rearranged the classic comic into one with a slant toward an Agile delivery approach intending to bring out the customer’s right solution.

Agile Software Requirements Comic
In an Agile version, the customer’s initial vision is truly only known to the customer or product management team.  A delivery team is assembled and project approvals are generated to start the refinement of the vision in the second panel.  Panels three through five depict the solution going through an iteration—starting with nothing, failing fast, and ending with a small or minimal slice of the solution as a base, foundation, or minimal feature in line with the vision.

The second row of panels continues iterating over the product with each iteration producing feedback and a better alignment to the vision.  The third panel in the second row shows a completed tree at the end of an iteration with the rope ready to accept the final piece of the solution. 

The end of the comic delivers what the customer really needed.  The customer interacted with the delivery team throughout the solution development, and was able to refine and prioritize the features to arrive at an optimal solution.