Effective Example MappingTags: bdd requirements
Example Mapping, originally created by the team at Cucumber, is an effective technique for achieving a focused discussion around a User Story. However, holding effective example mapping sessions takes experience to master. When coaching teams new to example mapping, I have found that they can often struggle in the beginning; leading to discussion wandering and meetings dragging on.
Example mapping focuses on a particular story, but teams often get bogged down discussing out of scope issues. There are other approaches that example mapping complements. If you are looking at the bigger picture: consider story mapping or impact mapping.
During an Example Mapping session, you are trying to do a number of things:
- Perform deliberate discovery to uncover unknown unknowns
- Answer and document any known unknowns
- Generate a shared understanding of the problem
- Alter (reduce) scope of an individual story based on the new understanding gained.
In order to help provide structure for one team to Example Mapping sessions, I came up with the following experiment:
Hypothesis: People who are new to Example Mapping don’t understand how to conduct an Example Mapping Session effectively on their own.
Experiment: Run an Example Mapping session in a more structured, timeboxed, fashion.
Outcome: Groups have a better understanding of how to run Example Mapping session, leading to better, more focussed examples and less scope creep.
Which led to the following structure:
Looking at each point in more detail.
By focusing on examples, individually, this encourages brainstorming of ideas in order to explore the problem and perform deliberate discovery. Duplicates are OK at this stage, and indicate a shared understanding. Clarifying questions are also common, particularly at the start, helping the team to probe the scope boundaries of the story. Questions can usually be highlighted using an example.
Following a period of divergent thinking, it is important to refocus and remove duplication. Questions raised that can be answered quickly and will clarify scope of the problem.
The focus of discussion moves from divergent thinking to convergent thinking. By grouping rules and examples, the team narrows in on the scope of the story, consolidating the shared understanding of what is and is not covered.
The review phase offers another opportunity of deliberate discovery, to clarify any gaps in understanding of the current scope.
This section offers an opportunity to reflect both on the output, and the process itself. This provides a checkpoint on the shared understanding of the team. The quickest method is a simple thumb vote - it is not necessary to wait for everyone to reflect - if anyone is unhappy then the session is not complete.
Timings are intentionally aggressive. It is intended to ensure flow in the discussion - after 10 minutes every objective of the Example Mapping session has been covered to some degree. Each part of the process is short enough to ensure that time isn’t considered wasted: creating and de-duping a lot of examples in at the beginning - big deal! You ‘wasted’ 4 minutes and have a shared understanding. How much time is usually wasted in meetings?
The process intentionally includes period of self reflection. People think effectively in different ways, some are more introspective than others and need quiet reflection to gather their thoughts. It gives everyone a voice to prevent strong, outspoken, personalities from controlling the discussion.
Quiet time also forces the group to write things down - a key objective of an Example Mapping session! Separating periods of group discussion with quiet reflection helps generate ideas and then capture and share them.
One of the major concerns I have seen from people is that the pressure of short timeboxes meant they struggled to think. Before changing timings, I urge you to try it as is for a few sessions before you start to experiment. The goal of the process is to ensure the session as a whole is effective and everyone has a shared understanding. It is intended to be most effective, for most of the people, most of the time. If you are more introspective, be less mindful of the timer and let others in the group lead the discussion: focus on adding value by listening and writing down examples others have not thought of - if you aren’t comfortable you shall have the opportunity to raise your concerns.
The process outlined here means you actually have a review point at 10 minutes, meaning you might actually finish early!
The experiment was an overwhelming success: on their first Example Mapping session we were able to successfully map out a new story in 22 minutes: we identified a number of questions to park; split the story to reduce complexity/effort; recorded a set of examples to illustrate the specified rules and had a good shared understanding of the problem. Such an effective session could often take weeks to come together.
Why did it work?
- Small timeboxed periods focussed on a single outcome meant smaller goals and helped people focus
- Regular review/retro enabled constant feedback
- Mixture of approaches (silent writing / reflection + group discussion) ensured everyone gets a voice and an opportunity to contribute using their preferred method.
- A facilitator, ideally not involved in the investigation itself, is also key enabler
You may need to tweak the process for fit within your team, but we now run all our Example Mapping sessions using this structure.
If you want to learn more about Behaviour Driven Development to deliver Better Software, Faster then get in touch!