Čtení čas: 7 minut
Úspěch každého projektu závisí na schopnosti vývojového týmu, aby vyhovoval jejich potřebám klienta. Komunikace mezi klientem a vývojovým týmem hraje zásadní roli při poskytování řešení, které odpovídá požadavkům na produkt a trh., Problémy vznikají, pokud zákazníci vysvětlit jejich potřeby příliš nejasně a tým nemůže pochopit, jasné požadavky a nakonec obchodní problém za nimi. Představte si, že požádáte svůj tým, aby uživatelům umožnil vyhledávat produkt v online knihkupectví podle kategorií. Očekáváte, že budete mít jasné rozhraní s odkazy na kategorie, které na ně kliknete (např. fantasy, non-fiction, historic atd.) Po dvou týdnech vývoje obdržíte funkci vyhledávacího panelu, kde uživatelé musí zadat kategorii, o kterou mají zájem, místo procházení předem uvedených kategorií., I když to také funguje, vaším počátečním cílem bylo odhalit všechny dostupné kategorie a nechat uživatele prozkoumat dále.
to je, když vysoce kvalitní softwarová dokumentace by mohla pomoci vyhnout se problému. Uživatelské příběhy a kritéria přijetí (AC) jako hlavní formáty dokumentujících požadavků. Uživatel příběh je přirozený jazyk popis funkce. Obvykle je to doprovázeno kritérii přijetí.
akceptační kritéria (AC) jsou podmínky, které musí softwarový produkt splňovat, aby byl přijat uživatelem, zákazníkem nebo jiným systémem., Jsou jedinečné pro každý uživatelský příběh a definují chování funkcí z pohledu koncového uživatele. Dobře napsaná kritéria přijetí pomáhají vyhnout se neočekávaným výsledkům na konci vývojové fáze a zajistit, aby všechny zúčastněné strany a uživatelé byli spokojeni s tím, co získají.
kritéria Přijetí jsou nejnižší úrovně funkční požadavky
Akceptační kritéria hlavních účelů
Vyjasnění zúčastněných stran požadavků je na vysoké úrovni cíle. Aby byly cíle AC jasnější, pojďme je rozebrat.,
detalizace rozsahu funkcí. AC definovat hranice uživatelských příběhů. Poskytují přesné podrobnosti o funkcích, které pomáhají týmu pochopit, zda je příběh dokončen a funguje podle očekávání.
popisující negativní scénáře. Yor AC může vyžadovat, aby systém rozpoznal nebezpečné vstupy hesel a zabránil uživateli pokračovat dále. Neplatný formát hesla je příkladem takzvaného negativního scénáře, kdy uživatel provádí neplatné vstupy nebo se chová neočekávaně. AC definovat tyto scénáře a vysvětlit, jak musí systém reagovat na ně.
nastavení komunikace., Akceptační kritéria synchronizují vize klienta a vývojového týmu. Zajišťují, že každý má společné chápání požadavky: Vývojáři přesně vědět, jaký druh chování funkce musí prokázat, zatímco zúčastněné strany a klienta pochopit, co se očekává od funkce.
zefektivnění akceptačního testování. AC jsou základem testování přijetí příběhu uživatele. Každé kritérium přijetí musí být nezávisle testovatelné, a proto musí mít jasné scénáře průchodu nebo selhání. Mohou být také použity k ověření příběhu pomocí automatizovaných testů.
odhad funkce., Kritéria pro přijetí specifikují, co přesně musí tým vyvinout. Jakmile má tým přesné požadavky, mohou rozdělit uživatelské příběhy na úkoly, které lze správně odhadnout.
akceptační kritéria typy a struktury
AC mohou být psány v různých formátech. Tam jsou dva nejčastější z nich, a třetí možnost je vymyslet si vlastní formát:
- scénář-orientovaný (Vzhledem k tomu,/Když/Pak)
- pravidlo-orientovaný (kontrolní seznam)
- vlastní formáty
Jako první a druhý formáty mají velmi specifické struktury, budeme hlavně soustředit se na ně., Možná však zjistíte, že jiné formáty lépe vyhovují vašemu produktu, takže se na ně také krátce dotkneme.
kritéria pro přijetí orientovaná na scénář
Formát psaní AC orientovaný na scénář je známý jako daný typ/When/Then (GWT).
- Vzhledem k tomu, některé podmínkou
- Když udělám nějakou akci
- Pak očekávám nějaký výsledek
Tento přístup byl zdědil od behavior-driven development (BDD) a poskytuje konzistentní strukturu, která pomáhá testery definovat, kdy začíná a končí testování konkrétní funkci., Snižuje také čas strávený při psaní testovacích případů, protože chování systému je popsáno předem.,
Každý kritérií přijatelnosti napsány v tomto formátu má následující prohlášení:
- Scénář – název pro chování, které budou popsány
- – začátek státu scénáře
- Kdy – konkrétní akce, kterou uživatel dělá
- Pak – výsledek akce“, Kdy“
- A – používá se pokračovat v každém ze tří předchozích prohlášení
Při kombinaci těchto prohlášení zahrnují všechny úkony, které uživatel k dokončení úkolu a zkušenosti výsledek.
podívejme se na některé příklady.,
Příklad 1
uživatelský příběh: jako uživatel chci mít možnost obnovit heslo ke svému účtu, abych měl přístup ke svému účtu v případě, že jsem zapomněl heslo.,igated na přihlašovací stránku
Kdy: vybraný uživatel zapomněl heslo možnost,
A: Zadali platný e-mail obdrží odkaz pro obnovení hesla
Pak: systém poslal odkaz na zadaný e-mail
Vzhledem k tomu,: uživatel obdrží odkaz přes e-mail,
Kdy: Uživatel navigován prostřednictvím odkazu obdrželi v e-mailu
Pak: systém umožňuje uživateli nastavit nové heslo.
Příklad 2
User story: Jako uživatel, chci být schopen požádat o peníze z mého účtu v BANKOMATU tak, že budu moci přijímat peníze z mého účtu rychle a v různých místech.,víko
A: dávkovač obsahuje v hotovosti
Kdy: zákazník požaduje peníze
Pak: ujistěte se, že účet je zatížen
A: zajistit, vydává peníze
A: ujistěte se, že karta je vrácena
kritéria pro Přijetí 2:
Vzhledem k tomu,: že účet je přečerpán
A: karta je platná
Kdy: zákazník požaduje peníze
, Pak: zajistit odmítnutí se zobrazí zpráva
A: zajištění peněžních není dávkován
Pravidlo-orientované kritéria přijatelnosti formátu
V některých případech, to je obtížné, aby se vešly kritéria pro přijetí do Daného/Když/Pak strukturu., Například, GW by jen stěží být užitečné pro následující případy:
- pracujete s uživatelsky příběhy, které popisují úrovni systému funkce, které potřebuje jiné metody kvality.
- cílové publikum pro kritéria přijetí nepotřebuje přesné podrobnosti o testovacích scénářích.
- scénáře GWT se nehodí k popisu omezení designu a uživatelského prostředí funkce. Vývojářům může chybět řada kritických detailů.
tyto případy můžete řešit pomocí formátu AC orientovaného na pravidla.,
forma orientovaná na pravidla znamená, že existuje soubor pravidel, která popisují chování systému. Na základě těchto pravidel můžete čerpat konkrétní scénáře.
kritéria složená pomocí tohoto formuláře obvykle vypadají jako jednoduchý seznam kuliček. Podívejme se na příklad.
příklad
příběh uživatele: jako uživatel chci použít vyhledávací pole pro zadání města, jména nebo ulice, abych mohl najít odpovídající možnosti hotelu.,
Základní vyhledávací rozhraní, akceptační kritéria,
- vyhledávací pole je umístěno na horní liště
- Vyhledávání se spustí, jakmile uživatel klepne na tlačítko „Hledat“
- pole obsahuje zástupný symbol s šedá-barevný text: „Kam jdeš?“
- zástupný symbol zmizí, jakmile uživatel spustí psaní
- Vyhledávání se provádí, když uživatel zadá ve městě, hotel, název, ulice, nebo vše dohromady
- Vyhledávání v angličtině, francouzštině, německé a ukrajinské
- uživatel nemůže zadat více než 200 symbolů
- vyhledávání nepodporuje speciální symboly (znaky)., Pokud uživatel zadal speciální symbol, zobrazte varovnou zprávu: „vyhledávací vstup nemůže obsahovat speciální symboly.“
ostatní formáty
většina uživatelských příběhů může být pokryta dvěma výše uvedenými formáty. Můžete si však vymyslet vlastní kritéria přijetí, protože slouží jejich účelům, jsou napsány jasně v prosté angličtině a nelze je špatně interpretovat. Některé týmy dokonce používají prostý text.,
Někdy vaše kritéria mohou být uvedeny jako příklad chování systému:
jednoduchá sada AC pro silná hesla Mark Levisona pro agilepainpainrelief.com
Tento přístup poskytuje jasné pokyny pro heslo funkce testování.
odpovědné role a způsob vytváření kritérií pro přijetí
některá kritéria jsou definována a napsána vlastníkem produktu, když vytvoří nevyřízený produkt. A ostatní mohou být dále specifikovány týmem během diskusí o uživatelských příbězích po plánování sprintu., Neexistují žádná přísná doporučení pro výběr osoby odpovědné za psaní kritérií. Klient je může dokumentovat, pokud má dostatečné znalosti technické a produktové dokumentace. V tomto případě klient vyjednává s týmem kritéria, aby se předešlo vzájemným nedorozuměním. V opačném případě jsou kritéria vytvořena vlastníkem produktu, obchodním analytikem, analytikem požadavků nebo projektovým manažerem.,
proces začíná příběh uživatele priorit a končí vyjednávat podrobnosti s celým týmem
Hlavní výzvy a osvědčené postupy psaní kritéria přijatelnosti
kritéria pro Přijetí vypadat, jako kdyby oni jsou velmi snadné psát. Přes jejich zjednodušující formáty představuje psaní výzvu pro mnoho týmů. Podívejme se hlouběji na osvědčené postupy, které pomáhají vyhnout se běžným chybám.
kritéria dokumentu před vývojem. Kritéria pro přijetí musí být zdokumentována před zahájením skutečného vývoje., Tímto způsobem bude tým pravděpodobně zachytit všechny potřeby zákazníků předem. Na začátku stačí nastavit kritéria pro malý počet uživatelských příběhů, které vyplní backlogy pro dva sprinty (pokud cvičíte Scrum nebo podobnou metodu). Musí být dohodnuty oběma stranami. Poté vývojáři používají dokumentovaná kritéria pro přijetí k plánování technického procesu.
nedělejte AC příliš úzkou. Kritéria pro přijetí mohou být pro vývojáře příliš specifická. Abyste tomu zabránili, nezapomeňte, že AC musí sdělit záměr, ale ne konečné řešení., Kromě toho, úzký AC může být zbaven více uživatelských chování, které nejsou pokryty.
Udržujte svá kritéria dosažitelná. Tento bod se úzce protíná s předchozím. Efektivní kritéria pro přijetí definují přiměřenou minimální část funkčnosti, kterou jste schopni dodat. Ale v případě, že podlehnete popisu všech malých detailů, existuje riziko, že váš tým uvízne se stovkami malých úkolů.
udržujte AC měřitelné a ne příliš široké. Široká kritéria přijetí činí příběh uživatele nejasným., Efektivní kritéria přijetí musí nastínit rozsah práce, aby vývojáři mohli správně naplánovat a odhadnout své úsilí.
Vyhněte se technickým detailům. Jak jsme již zmínili, kritéria přijetí musí být napsána v prosté angličtině. Díky tomu budou jasné a snadno srozumitelné pro všechny: vaše zúčastněné strany nebo manažeři nemusí mít technické zázemí.
dosáhnout konsensu. Stejný problém může být řešen odlišně týmem a zúčastněnými stranami, v závislosti na jejich vyhlídkových bodech. Ujistěte se, že jste sdělili své AC zúčastněným stranám a dosáhli vzájemné dohody., Totéž platí pro členy týmu. Každý musí zkontrolovat AC a potvrdit, že rozumí a souhlasí s každým řádkem.
zapisovatelný AC. To umožní testerům ověřit, zda byly splněny všechny požadavky. V opačném případě vývojáři nepochopí, zda je příběh uživatele dokončen.
závěrečné slovo
nezanedbávejte kritéria pro přijetí – protože-jsou jednoduché a přístupné – řeší více problémů najednou., Dokumentují očekávání zákazníků, poskytují perspektivu koncového uživatele, objasňují požadavky a zabraňují nejednoznačnosti a nakonec pomáhají ověřovat kvalitu, zda byly splněny rozvojové cíle. Bez ohledu na to, zda používáte agilní metody nebo ne, nezapomeňte zvolit nejlepší formát nebo experimentovat s vlastními. Různé typy uživatelských příběhů a případně funkce mohou vyžadovat odlišné od těch nových, které pro vás pracují, je dobrá praxe.