Value-Driven Development and Behavior Driven Development
I love behavior driven development (BDD). I think it provides a framework to use the same language across the company and within engineering team.
What Exactly Is BDD?
In software engineering, behavior-driven development (BDD) is an Agile software development process that encourages collaboration among developers, QA and non-technical or business participants in a software project. - Wikipedia
What Does BDD lacks?
Over these years, I realized that BDD lacks is 'so what' behind the feature built. In other words, it lacks the ability to effectively communicate the value that feature creates objectively for various stakeholders of the product.
This is the problem that Value Driven Development (VDD) solves. It provides a unified language across the business and product team to build a feature and objectively communicate the motivation driven behind it.
What Is Value Driven Development?
Value-driven design (VDD) is a systems engineering strategy based on microeconomics which enables multidisciplinary design optimization. Value-driven design is being developed by the American Institute of Aeronautics and Astronautics, through a program committee of government, industry and academic representatives. - Wikipedia
Stories in BDD and VDD
Let's consider an example where the product team wants to improve search time in the product. In BDD world, we would create a story as follows:
As a user, I should be able to search product catalog by its name within 1 second.
The story often lacks 'so what' or 'why' behind it. In VDD, we would rephrase this story as:
As a user, I should be able to search product catalog by name within 1 second so I can complete my transaction 30% (or more) faster.
At the heart, VDD is inspired from learn->measure->build philosophy. Before building anything, as a company, you want to first figure out what you want to learn about your user, figure out how you are going to measure it and then figure out what you want to build in order to do that.
We have been using Mixpanel and various other tools to effectively implement VDD. In the next blog, I will cover this in more details.
What’s the biggest thing you’re struggling with right now that we as a technology consulting company can help you with? Feel free to reach out to us at email@example.com. We hope our assistance will help!