Course Outline
Day 01
Introduction
- The necessity of Behavior Driven Development
- BDD as an evolution of Agile methodologies
- Day 01 agenda items
Applying BDD across the software development lifecycle
- Pre-development phases
- Concurrent development activities
- Post-development validation
Establishing a Unified Communication Standard
- Addressing linguistic barriers between technical and non-technical personnel
- Bridging the communication gap through BDD frameworks
- Preview of BDD syntax: Gherkin
Defining BDD Roles and Responsibilities
- BDD as a mechanism for product requirements (Product Owner perspective)
- BDD as a definition of acceptance criteria (Developer perspective)
- BDD as a specification for test cases (QA perspective)
- BDD as a product description for external stakeholders
Revisiting Agile Foundations: The Importance of User Stories
- Overview of the Agile development cycle
- The function of User Stories within Agile frameworks
Q&A Session and Discussion
Assessment
Formulating Effective User Stories
- Utilizing appropriate terminology
- Role, Action, Outcome structure
- Demonstration of a User Story
Practical Exercise - Drafting a User Story
- Individual task: Composing an initial User Story
- Team task: Refining User Story content
- Team task: Presenting the User Story
User Stories in Operational Contexts
- Interpersonal dynamics within teams
- Associated tools and methodologies
- Integration of User Stories into the software development cycle
Transitioning to BDD
- Expanding upon the User Story
- Introduction of the Feature File
- Documenting anticipated software behavior
- Evaluating potential anomalous behaviors
Creating Effective Feature Files
- Employing correct syntax (Gherkin)
- Given, When, Then constructs
- Example Feature File
Practical Exercise - Drafting a Feature File - Part 01
- Individual task: Composing an initial Feature File
- Feature section composition
- Scenario section composition
- Team task: Refining Feature File content
- Team task: Presenting the Feature File
Feature Files in Operational Contexts
- Interpersonal dynamics within teams
- Associated tools and methodologies
- Integration of User Stories into the software development cycle
Q&A Session and Discussion
Assessment
Environment Configuration
- Enhancing Gherkin readability
- Improving workflow efficiency
Practical Exercise - Drafting a Feature File - Part 02
- Individual task: Composing a Feature File
- Passing multiple parameters to Scenarios
- Scenario Outline section composition
- Team task: Refining Feature File content
- Team task: Presenting the Feature File
Q&A Session and Discussion
Assessment
Concluding Remarks
Day 02
Introduction
- Review of previous session
- Day 02 agenda items
Product Analysis - A Critical Review
- Articulating product characteristics
- Visualizing product functionality
Expanding Testing Scope
- System usability assessment
- Business requirement validation
- Business process verification
Practical Exercise - Drafting a Feature File - Part 03
- Individual task: Composing a Feature File
- Examples section composition
- Data and scenario reusability
- Feature and scenario organization via tags
- Team task: Refining Feature File content
- Team task: Presenting the Feature File
Q&A Session and Discussion
Assessment
Feature File Scope Management - Exclusions
- Delegating technical details to engineering
- Low-level functionality (unit testing)
- Comprehensive cross-component testing (integration and API testing)
Q&A Session and Discussion
Assessment
Product Analysis - A Critical Review
- Evaluation of internal product usability
- Evaluation of external user experience
Communication Strategies for External Stakeholders
Summary and Future Actions
Requirements
- Familiarity with user requirement concepts
- An ability to evaluate software quality and deficiencies from an end-user perspective
- Programming and testing experience are not prerequisites
Target Audience
- Product owners and managers
- Business analysts
- Manual testers
- End-users of software products or systems
- Non-technical personnel involved in product design
Testimonials (7)
Use of powerpoint / paint to create the training materials as we went along. Benefit of the trainers experience. Use of the "cinema booking tool" example and our break out group case studies really brought the approach to life
Mark - Leeds Building Society
Course - BDD for Non-Programmers: Live Workshop
Craig was really helpful and the material was very useful to hopefully take away and use in our actual day to day jobs. We were able to work on real life examples linked to our current work, which Craig supported and gave feedback. This was really helpful
David Pinkstone - Leeds Building Society
Course - BDD for Non-Programmers: Live Workshop
The training was great, I could see that a lot of prep had gone it to pitch it at the right level of detail and to make the exercises relevant. I am already using BDD at a very simple level, so I was most interested in how the BDD statements are used by testers and automation testers, and therefore how I could improve what I do to make it more usable by other team members.
Sadie Brown - Leeds Building Society
Course - BDD for Non-Programmers: Live Workshop
Understanding how I can apply user stories and BDD in my team - I've already gotten good feedback from the changes I've made to my work as a result of the training
Lindsey Smith - Leeds Building Society
Course - BDD for Non-Programmers: Live Workshop
A structured learning to start on BDD.
Gagan Gupta - Leeds Building Society
Course - BDD for Non-Programmers: Live Workshop
It was interactive and suited better to someone like myself who learns by actually doing tasks and learning from mistakes
Liam Burton - Leeds Building Society
Course - BDD for Non-Programmers: Live Workshop
The trainer was very knowledgeable, went at a pace for the group, and made sure we all contributed.