behavior-driven development

Articles

Software engineer pouring coffee into a mug that says "UGH" 11 Reasons Behavior-Driven Development Can Fail

There are a lot of advantages to behavior-driven development, but there are also a lot of challenges you can encounter during the implementation. Knowing is half the battle, so be aware of these eleven common stumbling blocks to BDD adoption and outline plans to mitigate them beforehand, and you’ll be able to start reaping the benefits of BDD sooner.

Evgeny Tkachenko's picture Evgeny Tkachenko
Using Mocks to Verify Interactions

In the March 2006 issue of Better Software magazine, Dan North began a discussion of the evolution of behavior-driven development from test-driven development. Here, North continues the conversation with closer look at "mocks," utility classes that, for testing purposes, pretend to be some component or service with which your object will interact.

Dan North's picture Dan North

Conference Presentations

Better Software West 2018, Agile Dev West 2018, DevOps West 2018 Using Behavior Driven Development and Acceptance Test-Driven Development to create GREAT requirements
Slideshow

Defining, understanding, and agreeing on the scope of work to be done is often an area of discomfort for product managers, business analysts, developers, and quality assurance experts alike. The origin of many items living in our defect tracking systems can be traced to the difficulties encountered while performing these initial requirements activities. Ken Pugh introduces behavior-driven development (BDD), also known as acceptance test-driven development (ATDD), and explains how it works in creating detailed requirements. He outlines the different roles that team members play in the process. BDD/ATDD has proven to dramatically increase productivity and reduce delays in development by decreasing re-work due to requirement misunderstandings.

Ken Pugh

CMCrossroads is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.