Friday, January 5, 2018

Introduction to Behavioral Driven Development (BDD)

Behavioral Driven Development (BDD) is one of the most echoing buzz word in the current software industry. It is a software development methodology, that is used to address the common problems or challenges faced in traditional software development methodologies TDD or ATDD.

In the traditional software development methodologies like TDD, some of the common challenges faced are weak collaboration among the team, poor planning, poor documentation, gaps in understanding features, missed deadlines and etc.

We generally observe, gaps being created between stake holder - developer, stake holder - tester, and developer - tester in understanding the requirements. The Business Analyst (BA) or Product Owner (PO) describe the requirements in one way, developers would understand and implement in another way, and testers would have tested in the third-way because of poor documentation or poor communication and collaboration with in the team.

At the same time, stake holders are also not completely able to understand what developers developing and what testers are testing as it is more of technical. So they allow something to happen, reviewing and then correcting. This is where we are doing business wrong time, efforts and money are wasted.

Here comes the BDD, In BDD Stake holders are able to express what they need, Stake holders are able to understand what developers developing, Stake holders are able to understand what the QA team is testing with no or minimal technical knowledge. Because the requirements (written in English)can be converted directly into developing and testing entities.

With this Stake Holders/Developers/Testers got the power to suggest/correct things at early stages in software development cycle because the things more readable and transparent. With this we save time, efforts and money which is making business easy and more profitable.

In BDD the requirements/tests will be written in simple English language (Gherkin). There are many BDD tools that supports this Behavior Driven Development such as Cucumber, SpecFlow, Jbehave, Lettuce, Jasmine and etc.
Thanks for reading!! #seleniumbabu #HappyLearning

No comments:

Post a Comment

DevOps 01: What is DevOps and How it benefits organizations?

DevOps is a culture in an organization, where the development team and operations team help each other by sharing information, process and t...