Test Driven Design (TDD), also referred to as Behavior Driven Design, is not just about the manager’s concern to meet the requirements. It’s really about satisfying the customer. An example of where it might go wrong, is a fixed price project. Before you know it, you are not discussing the expectations of the customer anymore. You just ask yourself whether it’s a bug or a change. And you will definitely not consider changing expectations of the customer over time.
Looking at from a testing perspective. Traditional testing is waterfall, TDD is agile. TDD is linked to the notion of built-in quality. You don’t test quality as an afterthought, at the end of the process. You build in quality checks at the start of the process. And in the process you will clarify the design and test complicated business rules early on. Lots of advantages for the developer and a happy customer.
In SAFe, the TDD approach is linked to the Gherkin Given When Then syntax. There’s a extension named Specflow, that you can use in Visual Studio. Free to download. See the following link that gets you started as a developer, tester or business user:
Below you will find an example of a GIven-When-Then testcase: