How Specification By Example helps Agile teams make better products

New Thinking 21 November 2016 Edwin Dando

Let’s start with the “why”.

Over the last 10 years, the Agile community has made huge inroads into improving how we build software. In fact, we should be very proud of what we have achieved (while remembering that this is just the beginning).

graph v2

 
Picture credit: from Specification By Example, Gojko Adzic

Specification by Example and Impact Mapping are immensely useful in helping us to avoid the three undesirable quadrants above and focus on building stuff that customers actually care about. In the enduring words of the legendary Fred Brooks, “The hardest single part of building a software system is deciding precisely what to build”.

So what is Specification By Example?

Acceptance Test Driven Development (ATDD) and Automated Acceptance Tests (AAT) help set clearer targets for development teams and are a drastic improvement of manual regression testing.

Behaviour Driven Development involves building a shared understanding between stakeholders and delivery teams through collaboration and clarification of specifications.

Specification By Example includes both these goals, plus living documentation.

Picture2 v2

The results we have achieved by helping teams adopt Specification By Example are significant and are something we are very proud of. Our latest client to adopt SBE has just gone through Business Acceptance Testing with zero defects. In their own words, their average for BAT historically is around 100.

We are really pleased to now offer Agile teams our one-day Specification By Example workshop supported by professional coaching as part of our on-going mission to improve software quality. Please contact Education for more information.