Product Description
In this two-day, hands-on course, you will learn they key concepts of BDD (Behavior-Driven Development), including business and team effects, participant roles, difficulties and traps, and more. Leave being able to practice and promote BDD at your company with primary and supporting technologies, transitions to using BDD, and more.
- Learn and understand the concepts of Behavior-Driven Development (BDD)
- Build the right thing through collaboration and shared understanding
- Increase innovation, lower stress, lower risk, and lower bug count
- Explore the relationships between BDD and its surrounding ideal environment – DevOps, Agile
- Solidify your understanding with hands-on exercises
Behavior-Driven Development (BDD) provides organizations a framework for organizing the conversation between developers, testers and domain experts. Many that have adopted these practices are seeing improvements with faster cycle times, lower bug counts, happier staff and customers.
This course is appropriate for anyone who is involved in the definition, development and quality assurance of software related products including customers, product owners, business analysts, SMEs, developers and testers. It is recommended that you are familiar with concepts of the Agile methodology.
Topics
1) Introduction to BDD
General introduction to BDD concept
Show demo of running in Jenkins pipeline
Terminology
What problems this solve
Building the right thing
A word about communication
2) Benefits of usage
For testers
For developers
For business
For teams
Contrast of output and outcome
3) Origins
Extreme Programming and TDD
Dan North extending TDD
4) Participation Roles
Business stakeholder
Developer
Tester
Special advisers
End users
5) Mindset and Culture
Communication isn’t easy
Collaboration
Sustainability
Maintainability and testability
Planning versus iterative experimentation
Colocation versus remote
Trust and empowerment
Marshmallow challenge
Zen Mindset
Psychological safety
Quality
Theory versus practice
Scenario collaboration
6) Difficulties and Traps
Misconceptions
Company culture preventing collaboration and trust
Changing existing precedent and culture is hard
Transitioning to a new technique will cause productivity drop
Poorly written scenarios can increase maintenance and derail progress
Not following Agile tenets
7) Practical Use
Showing the outside-in illustration
Discovering user stories
Difference between user story and feature / terminology difficulty
Expounding on user stories
Final user story with acceptance criteria
Well-written specifications
Poorly-written specifications
Starting the implementation cycle
More detail on outside-in development
Common anti-patterns while writing scenarios
Avoid fragile scenarios
Developer or tester implements automation
Regex can be a pain
Reduce redundancy, but don’t be pedantic
Follow TDD first before completing feature steps
Clarity of the feature is paramount
The IDE and framework won’t always set up the best stub code
The IDE can be a very powerful tool
8) Primary and supporting technology
Primary technologies – Cucumber, Fitnesse, Concordion, Hiptest, etc.
Secondary technologies – Jenkins, Jira, Maven, Gradle
9) Cultural Context
Understanding your cultural context
Westrum’s organizational types
- Pathological
- Bureaucratic
- Generative
11) Transitioning to BDD
Small incremental changes
Team and management buy-in
Fresh start – leaving behind the baggage
Simple and small
12) Comparable techniques
Waterfall
V-Model
Reviews
There are no reviews yet.