Specification by Example
In requirements elicitation and elaboration, we have identified the related concepts of user stories and TDD examples.
The general ideas underlying this approach are shared by a set of methodologies known by several different terms.
- Specification By Example
- Note: the focus on examples as the "single source of truth".
- Common language understood by:
- Customers and other stakeholders
- Business analysts
- Software developers
- See also | Martin Fowler's remarks on Specification by Example
- Behaviour-Driven Development
- TDD Examples == Acceptance Criteria == Scenarios
- Acceptance Test-Driven Development
- Note: the structured template layout for acceptance criteria.
- StoryTest-Driven Development
- Acceptance test examples are further formalized into StoryTests.
- Programmers implement fixtures which automate acceptance tests.
- The Fit framework allows this approach to acceptance testing to be highly automated.
Critique
- Specification by example does not satisfy the requirements for a complete and correct system specification.
- Only a small subset of input-output mappings are defined.
- Examples are not mathematically defined and therefore not subject to mathematical proof techniques.
Updated Wed Jan. 11 2023, 11:16 by cameron.