Course description

Communication is a key to successful software development. But not all communication is equally valuable nor effective. Thankfully there are tools and techniques that allow improve communication when developing software. Specification by example is one of such tool. It helps facilitate more productive communication between all stakeholders involved in development of the particular project.

This workshop will teach You how to apply specification by example to communicate more effectively. How to leverage examples to guide conversations, drive development and to create a single source of truth for testing and development.

This workshop offers a comprehensive, hands-on introduction to specification by example, with practical exercises, work in groups and lot of fun.


Introduction: Overview of the specification by example and related approaches

Motivation: Why examples are good fit as a requirements? All examples? Key examples?

Crafting examples: Learn techniques to derive examples from user stories. Specification workshops. Refining specifications.

Automation: How to turn examples into automated tests. How and when run them in software development process.

Tooling: Learn what tools are there that support given approach. Try out some of the tools, like Cucumber, Concordion, Spock and other on a set of prepared exercises

Process: Learn how specification by example fits in agile software development process

Communication: Learn useful communication patterns, which you can use from day to improve communication within software development team

Living documentation: Organisation of the examples/automated tests. Evolving documentation system around specific examples. How to care about examples

Practice: Try out what you learned on a set of prepared exercises


Developers, software architects, QA engineers, business analysts, project managers.


You earn certificate by attending the course. No exam required.


The course is taught in English.


Andrey Grave is software developer with 15 years of software development experience in various organizations, using different technologies and approaches.

Andrey is open minded, positive, fun loving guy, who is passionate about software development and believes that software development is true magic of modern times.




duration - 2 days


* Price does not include VAT (if applicable)

* Price for in-house training does not include travelling and accommodation costs (if training is hosted outside of Riga)

* This training is a subject to training cancellation policy