Co je epik, jak ho používat a na co

Požadavky. Malé, velké, technické, byznysové, operativní, výzkumné. A především hodně. Za čtyři roky vývoje ScrumDesku máme v backlogu více než 800 požadavků. A to jsou pouze požadavky, které jsme se rozhodli implementovat, bez dalších ideí, které by bylo hezké mít. V takové hromadě je samozřejmě obtížné se orientovat bez dodatečné organizace. A právě zde přicházejí na pomoc epiky.

epic grand canyon

Co je epik

Každé školení Scrum nebo Agile přináší pojem Epic/epos/epik. Epiky jsou představeny jedním obrázkem a v podstatě ani nejsou moc vysvětlovány vzhledem k jejich jednoduchosti. Není to žádná věda. Otázky se však vynoří okamžitě, jak produktový vlastník začne připravovat backlog produktu. Jak organizovat epiky? Co mají popisovat?

Epik je množina požadavků, které spolu dodávají větší byznysovou hodnotu a týkají se stejné části produktu, ať už funkčně nebo logicky.

Epik, podobně jako samotný požadavek (často user story), má řešit problém jednoho nebo více uživatelů a zároveň má být použitelný a hodnotný.

Jak identifikovat epik

Žádná velká věda. Začněte přemýšlet nad produktem ve velkých celcích. Musí být však použitelné (end to end). V praxi se setkáváme s více přístupy designu epiků, zkusme se tedy podívat, kdy je který vhodnější.

I. Epik jako část produktu

Epik může pokrývat velký funkční celek produktu. Ve ScrumDesku máme epiky BACKLOG, PLAN, WORK, REPORTS. V aplikaci můžete nalézt části, moduly, které se nazývají stejně jako daný epik.

scrumdesk epics
Epiky ScrumDesku

Tato organizace backlogu je vhodná, když tvoříte produkt, který budete dlouhodobě rozvíjet.

Kdy použít tento způsob organizace epiků:

  1. Jako produktový vlastník se musíte jednoduše zorientovat v částech produktu a vědět, co v nich máte a nemáte hotovo.
  2. Zároveň je snadné měřit progres po částech produktu.
  3. Produktový vlastník je přirozeně naváděn měnit pořadí vlastností v epiku, což vede k tvorbě rychle dodatelných minimum viable přirůstků produktu.

Nevýhodou tohoto přístupu je chybějící pohled na ‚user journey‘ uživatele. Není vidět, které části backlogu pokrývají jaké části toku hodnoty uživatele. Např. proces od registrace, přes nákup, košík až platbu. Každá část procesu může patřit do jiného epiku.

Epiky v tomto případě nekončí, neuzavírají se, jelikož funkční celek je dodáván dlouhodobě. Řádově v letech. V roadmapě se spíše plánuje implementace features úrovně jednotlivých epiků.

II. Epik jako část obchodního toku

Tento přístup je založen na tom, že známe tok hodnoty, resp. obchodní proces, který umíme rozdělit do jednotlivých částí, a ty následně zpodrobňovat a dodávat iterativně.

Např. u e-shopu budou kandidáty na epiky:

  • Prohlížení katalogu produktů – pro zobrazení kategorií zboží a seznamu zboží v dané kategorii, filtrování a hledání zboží.
  • Výběr produktů – výběr zajímavých produktů, ať už jako oblíbené, do srovnání, hlídání ceny nebo přidání do košíku.
  • Košík produktů – prohlížení obsahu košíku, srovnávání, počítání celkové ceny.
  • Platba – výběr z možností pro platbu, celková objednávka, doprava, samotná platba a potvrzení o platbě.
  • Dodávka produktů – zobrazení stavu realizované dodávky, e-mail a sms notifikace.
epics epiky podla workflow
Epiky podle workflow

Produktový vlastník se přirozeně umí zaměřit na dodávku v celé šíři procesu.

Poměrně rychle tak vznikne první plně funkční verze, která je následně zlepšována iterativně. Např. epik Platba je rozdělen na VISA, převod, hotovost. V první verzi se dodá pouze platba VISA, v další pak převod a hotovost.

Epiky jsou i v tomto případě dlouhodobější. Většinou je nemá smysl ukončovat, protože budou dále zpodrobněny v budoucnu dalšími vlastnostmi. Byznys jednodušeji pochopí stav implementované aplikace (e-shopu), což zjednodušuje komunikaci a výrazně zlepšuje spolupráci IT a byznysu.

Důležité je, aby v tomto případě nebyly používány technologické termíny pro název epiku, ale spíše obchodní.

III. Projekt jako epik

Dodáváte produkt klientovi ve více fázích nebo projektech? V tomto případě může být jednodušší tvořit epiky podle projektů.

epik ako faza projektu
epik jako faza projektu

Takové epiky se typicky ukončují, když je projekt dodán. Výhoda je zřejmá: Je naprosto jasný stav implementace projektu. Zúčastnění a stakeholdeři mají vynikající transparentnost. Zároveň se stakeholdeři dokáží soustředit na přípravu další fáze projektu.

Na druhé straně je poměrně složité udržovat si přehled o funkčních celcích produktu samotného. Reálný stav více vnímají architekti než obchod samotný. V praxi jsme se setkali i s tím, že tento způsob vedl ke změně zaměření firmy, ba přímo k degradaci její vize.

Z firmy, které chtěla působit jako tvůrce produktů a řešení, se stala firma plně naslouchající klientům. Jejich produkty se staly „hračkou“ v rukou klientů, což vedlo dokonce i k odchodům lidí z týmů, protože ti ztratili osobní propojení s produktem.

Témata

Praktické je i použití témat jako další kategorizace požadavků. Vznikne tak virtuální matice, ve které každý požadavek patří do nějakého produktového celku a zároveň byznys tématu, které komunikujeme s klienty. Ve ScrumDesku používáme například témata pro označení klientů, kteří si žádali větší celky vlastností, a my jsme se přece jen rozhodli je zařadit do backlogů.

Jako produktový vlastník tak umím komunikovat s klientem stav jeho požadavků a nadále si udržovat přehled o implementaci produktu samotného.

epik a tema scrumdesk

Témata v produktovém světě jsou dokonce často určována top managementem na strategických setkáních. Tato témata jsou následně implementována ve více value streamech a podporována více produkty. Příkladem takového strategického tématu můžou být Mapy ve 3D, Umělá inteligence v rizikových investicích, Cestování bez bran a karet.

Umělé epiky

Aplikace kromě byznys logiky má mnoho částí, které tvoří základní kostru produktu, ale zákazník je mnohdy ani nevnímá.

Především na začátku je třeba si promyslet a zaevidovat např. návrh architektury, UX návrh layoutu aplikace, iniciativa je frameworků a technologickou přípravu. V pozdějších fázích se vyskytnou funkčnosti dotýkají ještě se celého produktu najednou. Např. logování, error handling apod. Pro takové požadavky si ve ScrumDesku držíme epik s názvem #APPLICATION.

Když jsme začínali před čtyřmi lety, rozhodli jsme se držet všechny chyby v epiku s názvem #BUGS a technologická vylepšení pod epicem #TECH. Znak # nám indikuje artificial epic.

Později jsme však tuto strategii změnili a nyní se každý požadavek bez ohledu na její typ snažíme dát pod ten správný epik, jelikož daný epik buď opravuje, nebo rozšiřuje, zdokonaluje z technologického pohledu.

Epik a business hodnota

V Agile by každý požadavek měl dodat dodatečnou byznys hodnotu. V případě komplexnějších aplikací je však skoro nemožné zhodnotit číslem dodávanou hodnotu na tak nízké úrovni. V tomto případě je jednodušší stanovit business hodnotu na úrovni epiku. Epik se tak může zanalyzovat, navrhnout a připravit dopředu před samotnou implementací.

Dá se k němu vytvořit i business case a následně i samotná byznys hodnota. Takový přístup doporučuje například Scaled Agile Framework, ve kterém epik dodává hodnotu do vybraného value streamu.

Epic definition in SAFe

Jak připravovat epiky

Produktový vlastník připravuje epiky předem, před plánováním a realizací. Pro dobrou přípravu potřebuje podporu více lidí:

  • architekta pro hrubý návrh architektury potřebné pro implementaci epiku,
  • stakeholderů, pro které bude funkcionalita dodána, pro stanovení business hodnoty a business case,
  • UX designéra pro přípravu rámcových principů designu rozhraní a použitelnosti epiku,
  • lidí z provozu a podpory pro dobrý návrh epiku z pohledu ekonomiky správy již hotové a nasazené implementace,
  • a kohokoliv jiného potřebného.

Příprava epiku může, a často i má, jiný proces než požadavky samotné. V SAFe se např. doporučuje tzv. Portfolio Kanban pro přípravu epiků. Existuje tedy samostatná Kanban tabule s více stavy, na které je transparentně zobrazen momentální krok realizace epiku. Vytváří tak prostor pro pravidelná setkání přípravného mikrotýmu a průběžné zlepšování přípravy epiku.

Portfolio Kanban v SAFe

Produktový vlastník v podstatě pracuje ve dvou časových rovinách. V první připravuje epiky pro budoucnost a ve druhé časové rovině přispívá k implementaci již vyvíjených epiků.

Typické chyby

  • Epik podle technologické vrstvy. Databáze, backend, frontend. Funkčnost není pokryta end to end, dodává pouze její část.
  • Epik podle verze produktu. Verze produktu je množina vlastností z různých epiků. Na rozdíl od epiku má verze také časový údaj.
  • Epik dle zákazníka, resp. stakeholdera, kterému se část funkčnosti dodává. Takový údaj doporučujeme evidovat v samostatném atributu a epiky organizovat podle postupů výše.
  • Když se změní předpoklady produktu, forma organizace epiků se nepřizpůsobí. Adaptujte a vybírejte si přístup podle potřeby. Nebojte se pracovat s backlogem a měnit ho tak, abyste se v něm orientovali rychle, uměli si vybrat další implementace a především ho měli transparentní pro tým i stakeholdery.

Odkazy a reference

NávodPraktikyProduct OwnerProduktyScrumUser Story

Mohlo by vás zajímat

Jak nepsat požadavky v Agile

Jak nepsat požadavky v Agile

Jak správně psát požadavky v Agile? Vyvarujte se typických chyb při psaní user story....

Continuous Delivery Pipeline je tepnou SAFe

Continuous Delivery Pipeline je tepnou SAFe

Pokud je PI Planning „tlukotem srdce" SAFe, CDP je jeho hlavní tepnou. Představuje způsob řešení nových funkcionalit...

Retrospektiva není jen o efektivitě

Retrospektiva není jen o efektivitě

Lidé chtějí být lepší Retrospektiva je jednou z nejdůležitějších a zároveň nejvíce podceňovaných ceremonií...

Novinky

Naše Agiloviny

Nenechte si ujít výběr toho nejlepšího z Agile, s čím se setkali naši mentoři. Nejen ze světa produktů, vývoje, tipů a triků, ale občas i humoru. Posíláme pravidelně jednou za čas  #QualityOverQuantity

Poslat na

zpracováním osobních údajů

Děkujeme