Problem: On many software development teams I’ve been on, stories don’t get built out the first time to fully meet acceptance criteria even when the stories are clearly written, detailed and exact.
When a business analyst or other customer facing team member submits a story for development, here are some of the things that seem to happen:
- some acceptance criteria is completely ignored
- developers hear about a story, and think, yeah, yeah, I got that, and don’t even really read the acceptance criteria
- developers read and understand the technical details but not the customer or business-facing criteria
- developers read a story that is partially written, build it, then more details are added to the story in the mean time while they have moved on to the next one.
- the story is misunderstood due to language ambiguity but built anyway just to get the points
- a wire-frame is reproduced which does not meet all criteria because it is showing only one of many visual aspects or is out-of-date
Premise: The best way to communicate is not to have to.
Instead: Arrange to share the experience of laying out the feature or story, with everyone participating, contributing, helping form and guide the experience. Form and keep a true cross-functional team including customer/user/customer representative, business or quality analyst, developer, integrator (which can be a quality engineer, technical lead, or developer dedicated to system integration) You know that people form these ‘tiger’ teams in crisis to get things done quickly, why wait till then?
Technique: Synchronous, multi-sensory, fair and balanced multi-way channels of shared experience
As my colleague, John Ryan put it: “Let the developers share in the design fun!”
Questions and Answers:
Q: At what point do developers need to participate?
A: After the decision on what to build has been made.
Q: But, What if that decision is based on the cost of building?
Q: What about trial features for market/user acceptance testing?
A: After the market has been identified.
A: After the purpose or goals of the feature have been fixed.
A: After the market requirements have been gathered
A: After the resources available have been determined ( You have completed a charter, right?)
A: before scope has been determined (estimation) because developers are essential to this.