Business and tech people often speak different languages, which makes sense because they have different mindsets. While this enables them to be good at their very different jobs, it also makes it harder for them to understand each other. In Agile teams, it’s essential to bridge this gap, and one of the best ways to do so is to introduce a very specific and concrete way of discussing detailed requirements. Enter Behavior Driven Development (BDD), which enables all parties to get real very quickly about the ideas that are going into the software being built. It is also a very good jumping-off point for teams practicing Test-Driven Development while building the resulting software.
BDD may sound complicated, but it’s really quite simple. It’s easy for both the business side and the technology side to learn. And it has the ability to eliminate the kinds of bugs and rework that happen when both sides walk away from a conversation thinking they are in sync about what needs to be built but actually aren’t.
BDD also has the ability to surface and resolve corner cases and wrinkles during the refinement process that would otherwise lead to costly rework if discovered during development or testing.