Specyfikacja w przykładach

Specyfikacja w przykładach
Wyobraź sobie koncept, w którym specyfikacja wymagań staje się nie tylko gotowym źródłem informacji o implementacji, ale również automatycznym testem do akceptacji. Do tego dąży praktyka specyfikacji w przykładach.

 Specyfikacja w przykładach jest często kojarzona z ATDD (Acceptance Test Driven Development) oraz z AAT (Agile Acceptance Testing). Jest to praktyka wspólnego definiowania wymagań i testów funkcjonalnych, mających umocowanie biznesowe, gdzie podstawą definiowania jest przykład użycia danego oprogramowania.

Cały proces jest uproszczony do kilku kroków:

Zdefiniuj cel biznesowy lub też efekt jaki powinien zostać osiągnięty. W oparciu o cele określ zakres, a następnie w małych zespołach angażujących możliwie największą ilość członków grupy projektowej i klientów staraj się wypracować kluczowe przykłady użycia. W kolejnym kroku popraw specyfikację tak, by była ona poprawna (wspólne przeglądy). Wytworzoną specyfikację należy bezpśrednio przełożyć na automaty tworząc tak zwaną "wykonywalną specyfikację". Wielokrotne uruchomienie oraz częste rozmowy o wymaganiach, mają zapewnić to, że dokumentacja będzie żywa i uwzględniać będzie wszelkie zmiany.

 

Specification by example

 

Dobre specyfikowanie w przykładach wymaga dobrej bazy narzędziowej:

- FitNesse

- Cucumber

- JBehave

- Robot Framework.

 

Koncept został szeroko opisany przez Gojko Adzica w dwóch jego książkach.

alt Specification by Example: How Successful Teams Deliver the Right Software

 

alt Bridging the Communication Gap: Specification by Example and Agile Acceptance Testing

Źródła:
http://specificationbyexample.com/resources.html
https://martinfowler.com/bliki/SpecificationByExample.html