This document discusses Behavior Driven Development (BDD) using the Ruby programming language. It provides an overview of test-driven development (TDD), then defines BDD as building upon TDD by formalizing good TDD habits like working outside-in from business goals. Gherkin is introduced as the language used for writing Cucumber features, using examples to clarify requirements. Cucumber is a tool for running automated acceptance tests written in a BDD style using Gherkin. It also discusses using Capybara to access and interact with web pages in tests.