SPA Conference session: Accepting the Unexpectable | |||
One-line description: | Explore how visualisation can be used with Specification by Example / BDD | ||
Session format: | 75 minute workshop [read about the different session types] | ||
Abstract: | A hands-on programming workshop exploring how to adapt Specification by Example (aka Acceptance Test Driven Development, BDD) for numerical and exploratory programming. Specification by Example does not work so well when: * acceptance is qualitative rather than precise, and/or… * the behaviour you want to capture involves a lot of numerical data, and/or… * you want to transition the results of exploratory programming to production. In this workshop we will demonstrate how to combine Approval Testing [1] with Specification by Example. Approval Tests can be used to generate visualisations as well as text, which allows more nuanced, qualitative decisions about acceptability. [1] http://approvaltests.com | ||
Audience background: | * Developers and testers * Experienced with Specification by Example / Acceptance Test Driven Development / BDD * Can program some Java or JavaScript (not very much knowledge required) Required equipment: * Laptop (at least 1 per pair) * Java or JavaScript development environment | ||
Benefits of participating: | To learn approval testing To learn how visualisation can work with Specification by Example To share ideas on these subjects with other participants. | ||
Materials provided: | * Approval testing library for Java and JavaScript. * Data sets. * Skeleton project for the exercise | ||
Process: | A short presentation covering: the motivation for combining visualisation and Specification by Example, approval testing, and using approval tests to generate visualisations. Then a programming exercise in which we use an approval testing library to generate visualisations of a numerical algorithm that runs against noisy data. Optional extra: if there is time and bandwidth, finish with a a scrapheap challenge in which we download data and/or libraries from the web and write visual approval tests with them. Room requirements: * Cafe-style room layout, allowing two or more pairs to work per table. * Enough power sockets for every pair to plug their laptop in. * Projector. * Flip-chart and marker pens. | ||
Detailed timetable: | 0:00 - 0:15 - initial presentation 0:15 - 1:00 - programming exercise 1:00 - 1:15 - share outputs, record lessons learned | ||
Outputs: | Will blog any results. | ||
History: | Presented at XP Day | ||
Presenters | |||
1. Nat Pryce Technemetis Ltd. |
2. Duncan McGregor Independent |
3. |