In the world of agile development, user stories play a crucial role in defining what needs to be built, who it's for, and why it's important. However, even the most well-crafted user stories can fall short without clear, comprehensive acceptance criteria. This is where the "Scenario, Given, When, Then, And, But" (SGWTAB) notation, derived from the Behaviour-Driven Development (BDD) approach, comes into play. This structured format provides a clear, concise way to articulate acceptance criteria and bridge the gap between developers, testers, and business stakeholders.
One of the primary benefits of using Scenario, Given, When, Then, And, But notation is that it provides a structured framework for expressing acceptance criteria with clarity and precision. The format encourages a step-by-step breakdown of conditions and outcomes. For example:
This level of granularity leaves little room for misinterpretation, ensuring that everyone involved—developers, testers, and product owners—has the same understanding of what constitutes "done."
Because the SGWTAB format uses simple, non-technical language, it becomes an effective tool for collaboration between technical and non-technical team members. Product owners, developers, testers, and even stakeholders can contribute to or validate the acceptance criteria without getting bogged down by jargon. By using this shared language, it promotes discussions that drive a deeper understanding of user requirements and potential edge cases early in the development process.
The Given, When, Then structure naturally aligns with test-driven development and automated testing practices. Each scenario can be translated directly into test cases, and tools like Cucumber and SpecFlow can automate the execution of these tests. This reduces the manual effort required for testing while ensuring consistent test coverage.
Moreover, writing acceptance criteria in this format forces the team to think about test cases right from the start. This results in a robust, testable design that minimizes rework, as any potential issues are addressed early in the development process.
The SGWTAB notation provides a clear and unambiguous record of the intended behavior of a feature. This acts as living documentation that remains relevant throughout the development lifecycle. As the system evolves, the scenarios can be updated to reflect new requirements or changes, providing a continuous reference point for future iterations.
For QA teams, this serves as a useful foundation for regression testing. Since each scenario ties back to specific business rules or requirements, it’s easy to track which behaviors are expected and ensure they remain intact as the system changes.
Another key benefit of this notation is its ability to explicitly capture edge cases and negative scenarios using the "And" and "But" extensions. For example:
This helps teams go beyond the “happy path” and ensure the system behaves as expected in all scenarios, leading to a more resilient solution.
By standardizing the way acceptance criteria are written across stories, the SGWTAB notation ensures that all team members approach requirements with the same mindset. This consistency makes it easier to review user stories, estimate work, and onboard new team members. Furthermore, it encourages a disciplined approach to story refinement, ensuring that no critical details are left out.
Using Scenario, Given, When, Then, And, But notation for acceptance criteria transforms vague user stories into actionable, testable, and clearly defined requirements. It improves clarity, fosters collaboration, and helps teams build with confidence by providing a comprehensive view of the system’s behavior. By integrating this practice into agile development, teams can not only build the right product but also ensure it's built right from the very start.
As a registered user, I want to reset my password so that I can regain access to my account if I forget my credentials.
As an online shopper, I want to add items to my shopping cart so that I can purchase them later.
As an admin, I want to deactivate a user account so that they can no longer access the platform.
These examples demonstrate how Scenario, Given, When, Then, And, But notation makes it easy to define acceptance criteria with precision and completeness, fostering better communication and collaboration between teams.

Level 7, 12 St Georges Tce
Perth WA 6000
[email protected]
Ph 1300 NOVATA

In the spirit of reconciliation Novata Solutions acknowledges the Traditional Custodians of country throughout Australia and their connections to land, sea and community. We pay our respect to their Elders past and present and extend that respect to all Aboriginal and Torres Strait Islander peoples today. This land always was, and always will be Aboriginal Land.

Novata Solutions is committed to embracing diversity and eliminating all forms of discrimination through education. We welcomes all people and is respectful of individual identities.