Behavior Driven Development is a term very used in actual days…
Developers, testers, managers talking about BDD. Frequently we heard complains about BDD like:
– The client don’t mind about the tests.
Make all sense that because the client wants that his software is finished and working. Unfortunately, the word test brings a negative image. But we talking about BDD, which is a development by behaviour and it isn’t anything with tests. Testing is something that you don’t can do while there isn’t software. Testing means to verify and BDD we are specifying before of anything.
BDD is an activity of design, where you build parts of a function according with the expected behaviour. In BDD we go out of the vision of tests and enter in the perspective oriented by specifications, what means that this complain born with a bad colocation.
– The client don’t want write the scenarios.
This is the second more used complain. The cliente should write the scenarios by himself. If the client write the scenarios, he won’t benefit himself of cognitive diversity. This diversity only appears in groups heterogeneous that work together.
The client needs the advices of engineers who knows the technical aspects of the problem that he is trying to resolve. He needs of paradigm of an QA Analyst, which will help with the create of scenarios that anyone though before. Otherwise, the solution that the client though can be more complex than the solution needs be.
– The client needs interact directly with the tool.
This isn’t the idea. What he really need to do is to provide informations to the team about the problem that he wants resolve.
– You can achieve the same result without a specific language of domain(DSL)
To finalize, the highlight idea behind the BDD is the focus in prevent fails of communication. This means have all in team communicating in a frequently form, better and based in real examples – not only in abstraction and imperatives requirements.
Tools of BDD are only complements to this complete agile methodology.
You can read some books like:
– Specification by example – Gojko Adzic;
– TheRSpec Book – David Chelimsky;
– Gojko on BDD: Busting the Myths;
Bye , bye !