Skip to main content

44 posts tagged with "BDD"

View All Tags

Better requirements by harnessing the power of examples

Seb Rose
Co-author of The BDD Books

Writing good requirements is a challenge, especially if they’re intended to be understood by someone other than their author. The more complicated a project gets, the harder it is to communicate the requirements in an unambiguous way. It’s easier to ask someone to cut the grass than it is to describe a design for a flower bed.

By the time we get to designing software systems, the complexity is such that requirements are a collaborative effort that need to be recorded in a structured way. During the 20th century, various formal and semi-formal approaches were integrated into a waterfall model – where each project had distinct, gated phases and each phase had defined outputs, such as “requirements specification”. These approaches to requirements management did not remove the risk of project failure, while adding considerable upfront costs that were often unjustified in the rapidly changing business environment.

How do I scale BDD across the organization?

Theo England

As part of our research into running our upcoming workshop, we asked what questions needed answered for this class to be useful. One question which came through was "How do I scale BDD across the enterprise?"

I asked Ryan Marsh - co-author and trainer of the class to give an answer. Here's what he had to say.

What's the ROI of BDD?

Seb Rose
Co-author of The BDD Books

Recently my colleague, Theo England, broadcast a question:

We're thinking about running a … half-day class [about BDD] designed for business execs. Tell us the questions we must answer for it to be useful.

We received 60 responses, including some very good questions.

As well as providing valuable input into the design of our upcoming course, BDD for busy people, we felt that we should answer some of the questions in a public forum. This is the first in the series.

“How do I convince Business Partners/Stakeholders/Product Managers that there is extreme value in BDD despite the start-up costs/learning curve?”

CukenFest: Q&A with Abby Bangser

Theo England

Next week the BDD community will gather remotely for Cukenfest. This intimate event will inform you about the latest developments and thinking in high-performing BDD teams as well as being a space for you to share your own experiences with like-minded people.

In the build-up to the conference, we spoke to Abby Bangser about what people can expect from her opening keynote, her thoughts on the demands on effective testing and agile ceremonies in remote teams.

CukenFest: Q&A with Emily Bache

Theo England

Soon the BDD community will gather remotely for Cukenfest, a two-day meeting of the BDD community in which we will hear stories about how we can become better software professionals and stronger teams. It'll also be your opportunity to share your own experiences practising software with peers taking a similar journey.

On of our keynotes this year, Emily Bache, took some time out to speak to us about Approval Testing, the development and ideas in her blog, and her thoughts on how software teams might operate post COVID-19. You can learn more about the conference and Emily's keynote on the CukenFest website.

CukenFest: Q&A with Rebecca Wirfs-Brock

Theo England

In the build-up to Cukenfest, we spoke to Rebecca Wirfs-Brock who will give the closing address. We asked Rebecca a few questions about her upcoming keynote and how she came to discover these ideas and become one of the world's most prominent figures in this space.

Understanding Screenplay (part #4)

Matt Wynne
Project Lead of Cucumber

Previously, we extracted our a simple implementation of the screenplay pattern from some existing Cucumber automation code, turning this:

Given('{word} has created an account', function (name) {
this.createAccount({ name })
})

…into this:

Given('{actor} has created an account',
actor => actor.attemptsTo(CreateAccount.forThemselves)
)

We’re going to continue this refactoring, looking at how we can compose granular interactions into tasks that model higher-level concepts in our problem domain.

Understanding Screenplay (part #3)

Matt Wynne
Project Lead of Cucumber

In the previous post in this series, we explored the need for a new kind of pattern for organising our test automation code.

Now we’re going to work with this little codebase to refactor it towards the Screenplay pattern. By taking the existing code and shifting it, step-by-step, towards the pattern, my hope is that you’ll see how you could do this to your own code, should the fancy take you.

BDD builds momentum

Seb Rose
Co-author of The BDD Books

Last week Elisabeth Hendrickson published a blog post called Momentum > Urgency. Please go read it if you haven’t already. In the post she shared a list of observations that she had made when teams achieved a sense of momentum:

  • Everyone on the team has a shared understanding of the big picture and what “good” looks like so they don’t burn cycles on unnecessary or non-useful work.
  • The team breaks the work into small pieces (a couple days of work at most) that still represent incremental business value (even if not user-facing features).
  • The team embraces the technical practices necessary to ensure that the code they deliver does what they intended it to do.
  • There’s an engaged and responsive product manager* who is considered part of the team, and who does hands-on acceptance of the work.
  • When the work is “accepted,” it’s done. The entire team can stop thinking about it.
  • The work, and the status of the work, is visible to everyone.
  • The team as a whole has a strong sense of partnership and trust, so the visibility never becomes a mechanism for micromanagement.

Reading the list, I realised that these were very similar to observations that we have made of teams that practiced BDD successfully.