You are on page 1of 9

Implementing BDD in

Real-world Projects

Marko Vajs
Software Development Engineer in Test
A Successful Implementation of BDD
Understanding Requirements
The team was asked to integrate with a payment
gateway with a minimal interface, assuming the
gateway would handle errors
When the feature was rolled out, payment
failures resulted in generic error messages
The product management was disappointed
with the solution
Preserving Domain Knowledge
Preserving domain knowledge had become a
challenge due to high turnover rates among
team members
The complexity of the application and lack of
documentation were causing difficulties in
maintaining the system and adding new features
Addressing The First Challenge

Example definition Automation of Regular feedback


through collaboration scenarios loops
Addressing The Second Challenge

Accessible Easy onboarding Reduced Improved


documentation process dependency maintainability
When to Apply Behavior-driven
Development?
Challenges That BDD Solves

Low-quality The absence of clear Meeting the needs of


communication requirements end-users

Late detection of Documentation Lack of


defects gaps test coverage
Suitable Projects for BDD

Complex applications with a user-centric focus

Projects with unclear requirements

Agile and iterative development projects

Legacy systems

You might also like