Tradiční způsob vývoje říká: nejdříve to naprogramujte, potom to otestujte. To ale vede mimo jiné k frustraci testerů ke konci vývoje (sprintu), protože jsou přetížení. Svou frustraci přenášejí na vývojáře, kteří by v té době už rádi dělali něco jiného, ale jsou rušeni požadavky na změny od testerů. Specification By Example nabízí jiný přístup, při kterém nejdřív celý tým spolupracuje na definici řešení formou příkladů a teprve potom se (všichni najednou) pustí do práce.
Umožňuje tedy testerům začít pracovat na (automatizovaných) testech od prvního dne zároveň s tím, jak vývojáří začínají psát produkční kód. Pokud příklady píšete doménovým jazykem, mohou na nich spolupracovat i zákazníci nebo stakeholdeři, což zvýší jejich důvěru ve vývojový tým. Jako vedlejší efekt dostanete automaticky generovanou dokumentaci, která je stále aktuální.
Cíle kurzu
Cílem kurzu je poskytnout účastníkům praktickou zkušenost s technikou Specification By Example a dovednosti potřebné k tomu, aby potom mohli tuto techniku používat ve své každodenní praxi. Po absolvování kurzu se zlepší jak spolupráce v rámci týmu, tak i dohoda se stakeholdery na zadávání nových požadavků.
Rozsah | 1 den |
Forma | osobně hodinové bloky s přestávkami |
Pro koho je určen | analytik vývojář tester architekt Product Owner Scrum Master další člen Scrum týmu |
Obsah školení
- Co je Specification By Example
- Pasti a nášlapné miny
- Jak správně vybrat příklady
- Jak automatizovat specifikace
- Příklady jako automatická dokumentace, která je vždy aktuální
- Příklady pro nefunkční požadavky
- Praktická cvičení
Požadavky na účastníka
- základní zkušenost s vývojem produktů
Školení nabízím formou privátního školení ve firmě. Pokud máte zájem, neváhejte mě kontaktovat.
Další materiály ke Specification By Example
Přednáška na meetupu Czech Testers Group v Brně.
„Shared examples, shared understanding“
Marek Řehulka, CTO, Gina Software
„SBE umožňuje porozumenie doméne viacerým členom tímu ( aj juniornejším)“
Samuel Obuch, developer, Gina Software
„SBE má mnoho výhod a využití. Věřím, že pomůže vyřešit problém s nedorozuměním mezi vývojáři a zadavateli. Taktéž je to způsob, jak se nad zadáním detailněji zamyslet a předejít pozdějším chybám.“
Tomáš Životský, developer, Gina Software