Behavior-Driven Development (BDD)
An approach to designing and verifying systems by writing tests first as clear, natural-language scenarios that describe expected behavior.
Key Points
- Defines system behavior using readable scenarios (e.g., Given-When-Then) that stakeholders can understand.
- Follows a test-first workflow where executable specifications drive design and coding.
- Creates a shared language that bridges product, QA, and engineering.
- Produces living documentation integrated into version control and continuous integration.
Example
A team building a payment feature writes scenarios before coding: "Given a valid card, when the user submits payment, then the order is marked paid and a receipt is emailed." They automate these scenarios and only write application code until the scenario passes, capturing business expectations as executable tests.
PMP Example Question
Which practice helps align business and technical teams by expressing expected system behavior as English-like, test-first scenarios that guide development?
- Behavior-Driven Development (BDD)
- Test-Driven Development (TDD)
- User Story Mapping
- Code Review
Correct Answer: A — Behavior-Driven Development (BDD)
Explanation: BDD uses natural-language scenarios (e.g., Given-When-Then) as executable specifications written before code to drive design and validate behavior.