Free Downloads
BDD In Action: Behavior-driven Development For The Whole Software Lifecycle

SummaryBDD in Action teaches you the Behavior-Driven Development model and shows you how to integrate it into your existing development process. First you'll learn how to apply BDD to requirements analysis to define features that focus your development efforts on underlying business goals. Then, you'll discover how to automate acceptance criteria and use tests to guide and report on the development process. Along the way, you'll apply BDD principles at the coding level to write more maintainable and better documented code.Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.About the TechnologyYou can't write good software if you don't understand what it's supposed to do. Behavior-Driven Development (BDD) encourages teams to use conversation and concrete examples to build up a shared understanding of how an application should work and which features really matter. With an emerging body of best practices and sophisticated new tools that assist in requirement analysis and test automation, BDD has become a hot, mainstream practice.About the BookBDD in Action teaches you BDD principles and practices and shows you how to integrate them into your existing development process, no matter what language you use. First, you'll apply BDD to requirements analysis so you can focus your development efforts on underlying business goals. Then, you'll discover how to automate acceptance criteria and use tests to guide and report on the development process. Along the way, you'll apply BDD principles at the coding level to write more maintainable and better documented code. No prior experience with BDD is required.What's InsideBDD theory and practiceHow BDD will affect your teamBDD for acceptance, integration, and unit testingExamples in Java, .NET, JavaScript, and moreReporting and living documentationAbout the AuthorJohn Ferguson Smart is a specialist in BDD, automated testing, and software lifecycle development optimization. Table of ContentsPART 1: FIRST STEPSBuilding software that makes a differenceBDD—the whirlwind tourPART 2: WHAT DO I WANT? DEFINING REQUIREMENTS USING BDDUnderstanding the business goals: Feature Injection and related techniquesDefining and illustrating featuresFrom examples to executable specificationsAutomating the scenariosPART 3: HOW DO I BUILD IT? CODING THE BDD WAYFrom executable specifications to rock-solid automated acceptance testsAutomating acceptance criteria for the UI layerAutomating acceptance criteria for non-UI requirementsBDD and unit testingPART 4: TAKING BDD FURTHERLiving Documentation: reporting and project managementBDD in the build process

Paperback: 384 pages

Publisher: Manning Publications; 1 edition (October 12, 2014)

Language: English

ISBN-10: 161729165X

ISBN-13: 978-1617291654

Product Dimensions: 9.2 x 7.4 x 0.7 inches

Shipping Weight: 1.4 pounds (View shipping rates and policies)

Average Customer Review: 4.6 out of 5 stars  See all reviews (29 customer reviews)

Best Sellers Rank: #305,251 in Books (See Top 100 in Books) #18 in Books > Computers & Technology > Programming > Languages & Tools > Assembly Language Programming #64 in Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Tools #116 in Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Testing

I am a huge fan of Manning books and have a library of several purchased books. Behavior-driven development was developed by Dan North as a response to the issues encountered teaching test-driven development to answer the following questions:* Where to start in the process* What to test and what not to test* How much to test in one go* What to call the tests* How to understand why a test failsThe traditional development process provides many opportunities for misunderstandings and miscommunication. BDD in action presents the process how software development should be managed by both business interests and technical insight. Behavior-Driven Development (BDD) encourages teams to use conversation and concrete examples to build up a shared understanding of how an application should work and which features really matter. BDD in Action is a great introduction to Behavior Driven Development.This is what I liked about the book:* Presentation of Behavior Driven Development theory with real world practical approach to make readers comfortable and have a quick grasp on the subject* Book does a good job defining the BDD principles and practices. The books shows you how to integrate them into your existing development process* How to use BDD for acceptance, integration, and unit testing* The book is filled with numerous examples of BDD tools and their usage for multiple platforms. For example The book covers automating scenarios using JBehave in Java, Behave in Python, SpecFlow in .Net, and Cucumber.js in Javascript.

The software industry is still very young and there's extensive room for maturity and improvement. Behavior-driven development (BDD) is a software practice that has the potential to yank software development out of its adolescence.In order to help teams produce software with greater value, fasterAs a reviewer of BDD in ActionI want teams to read BDD in Action to learn what behavior-driven development (BDD) is and how to put it into practice"BDD in Action" provides a comprehensive, platform-agnostic introduction to behavior-driven development (BDD). The content is tailored to all "three amigos" and is therefore an essential resource for the whole team. More than just an introduction, it helps you put BDD into practice with recommendations from a specialist in the field.The book starts off with a high-level view of the BDD world, explaining the motivations and origins of BDD and how it fits with other approaches to software development. Several useful diagrams are presented in Part 1 that you'll revisit throughout the book as you progress along the BDD spectrum from business goals down to acceptance criteria. The high-level discussion of BDD quickly transitions into an example of BDD in practice, allowing you to see where you are headed in this book.Part 2 provides a daily workbook for BDD, which is, in my opinion, the most valuable content in the book. In this part, you learn how to discover and define the requirements for your software applications. Several chapters are dedicated to explaining each level of requirement, ranging from the vision statement to the business goals to capabilities, features and, finally, scenarios.

BDD In Action kicks off with an in-depth explanation of what BDD is and why it is important before a good end-to-end example. One of the highlights of the book for me was chapter 3 which has some good coverage of different techniques for requirements analysis. Whilst it could be argued that these are not really BDD, they are included as good examples on how to ensure you are working on requirements that are adding business value. The approaches include Feature Injection, Impact Mapping and the Purpose-Based Alignment Model as well as Real Options and Deliberate Discovery.John has always extended how I define the core roles on the development team (the three amigos) and this is described within the book as well.The second section of the book explains requirements gathering, through to specifications and then basic automation of a DSL at the scenario level. It seems to imply that the tester should be able to write the executable specification and the base automation, although this does not match my experience of most testers in the field.Section three of the book covers the coding aspects of BDD, including the automation of tests at the UI level as well as the unit testing level. It goes into a fair amount of detail on how different tools work in different languages as well as a fairly comprehensive overview of TDD. The final section of the book introduces living documentation, mainly using tools like Thucyidides as well as how BDD fits into the continuous delivery world.The book is full of diagrams as well as comprehensive code examples that are well explained and relevant. One of the main advantages of this book is that is not aimed at any tool – in fact it covers a number of tools and languages in a reasonable amount of detail.

BDD in Action: Behavior-driven development for the whole software lifecycle Whole: The 30 Day Whole Foods Challenge: Complete Cookbook of 90-AWARD WINNING Recipes Guaranteed to Lose Weight (Whole, Whole Foods, Whole Food Diet, Whole Foods Cookbook) Whole Food: The 30 Day Whole Food Challenge - Whole Foods Diet - Whole Foods Cookbook - Whole Foods Recipes (Whole Foods - Clean Eating) 30 Day Whole Food Challenge: 30-Day Whole Food Diet Challenge Recipe Cookbook for Weight Loss Eat healthy, Lose Weight! (Whole Foods, Whole Diet, ... Whole Recipes, Whole 30 Diet Plan) (Volume 1) Whole Food: The 30 Day Whole Food Challenge - Whole Foods Diet - Whole Foods Cookbook - Whole Foods Recipes Whole: The 30 Day Whole Food Diet Cookbook© (The Healthy Whole Foods Eating Challenge - 120+ Approved Recipes & One Full Month Meal Plan for Rapid Weight Loss) Whole Food: Top Slow Cooker Recipes: The 30 Day Whole Food Diet Cookbook© (The Healthy Whole Foods Eating Challenge - 230+ Approved Slow Cooker Recipes for Rapid Weight Loss) Whole: The 30 Day Whole Food Diet Cookbook© (The Healthy Whole Foods Eating Challenge - 230+ Approved Slow Cooker Recipes for Rapid Weight Loss) Promoting Health and Academic Success: The Whole School, Whole Community, Whole Child Approach The BDD Workbook: Overcome Body Dysmorphic Disorder and End Body Image Obsessions The Data Warehouse Lifecycle Toolkit Data Protection and Information Lifecycle Management The Essential Persona Lifecycle: Your Guide to Building and Using Personas A Comprehensive Guide to Project Management Schedule and Cost Control: Methods and Models for Managing the Project Lifecycle (FT Press Project Management) Bonds of Blood: Gender, Lifecycle, and Sacrifice in Aztec Culture (Early Modern History: Society and Culture) Algorithms: C++: Data Structures, Automation & Problem Solving, w/ Programming & Design (app design, app development, web development, web design, jquery, ... software engineering, r programming) Test Driven Development for Embedded C (Pragmatic Programmers) Natural Born Feeder: Whole Foods Whole Life 30 Day Whole Foods Cookbook: 90 Delicious Recipes to Plan the Diet, Start Whole Food Challenge, Lose Weight and Change Your Life Whole Food: The 30 day Healthy Eating Challenge (The Healthy Whole Foods Eating Challenge - 35 Approved Recipes for Rapid Weight Loss)