Blog Vývoj Eposy, používateľské príbehy, témy a iniciatívy: Kľúčový rozdiel a príklady

Eposy, používateľské príbehy, témy a iniciatívy: Kľúčový rozdiel a príklady

AgileScrumVývoj softvéruTechnológiaDizajn používateľského rozhrania/UX

Zdieľať

5 najlepších spoločností na vývoj softvéru vo východnej Európe, ktoré je potrebné zamestnať v roku 2023
Prihláste sa na odber najnovších správ spoločnosti Altamira

Ak ste niekedy vyvíjali nejaký softvér alebo sa na to práve chystáte, je pravdepodobné, že ste už počuli slová "epický" a "používateľský príbeh". Pravdepodobne ste sa s epikou a používateľskými príbehmi stretli aj v odhade rozpočtu, ktorý ste dostali od outsourcingovej spoločnosti IT, v prípade, že ste o to niekedy požiadali. Je to preto, že oba pojmy sú v technologickom svete dosť populárne, keďže ich kódovacie tímy a ďalší účastníci vývojového procesu používajú pomerne často.

Problémom však je, že rôzni ľudia majú zvyčajne na mysli rôzne veci, keď hovoria o epických príbehoch a príbehoch používateľov. Nič nie je vytesané do kameňa a tímy majú tendenciu osvojovať si terminológiu podľa toho, čo im vyhovuje. Zlou správou je, že takýto stav môže viesť k niektorým nedorozumeniam medzi vývojármi a klientmi, čo je dosť nešťastný výsledok.

V tomto článku sa pokúsime veci rozobrať a vysvetliť, čo je epic a čo je user story na základe našich praktických skúseností. Aby to bolo ešte zrozumiteľnejšie, všetko budeme ilustrovať aj na príkladoch a procesoch, ktoré sme vyvinuli v spoločnosti Altamira.

Metodika Scrum: stručný prehľad

proces scrum

Epické príbehy a používateľské príbehy sa väčšinou používajú vo vývojových tímoch, ktoré sa riadia agilným prístupom k vývoju softvéru. Pre zjednodušenie sa zameriame len na pravidlá a terminológiu Scrumu, keďže ide o najrozšírenejšiu metodiku riadenia projektov v rámci agilného prístupu.

?
Užitočné informácie
Chcete lepšie pochopiť Scrum a zistiť, prečo je taký dobrý? Pozrite si tento článok.

V Scrume je proces vývoja rozdelený na šprinty. To znamená, že vývoj projektu je rozdelený na krátke časové úseky, počas ktorých by mal vývojový tím vytvoriť potenciálne uvoľniteľný súbor funkcií, ktorý sa nazýva "prírastok". Každý prírastok zvyčajne pozostáva z niekoľkých položiek produktového backlogu (alebo PBI). Položka produktového backlogu je všeobecný termín pre všetky vlastnosti produktu, funkcie, vylepšenia atď. ktoré má tím vyvinúť. Inými slovami, PBI sú stavebné bloky načrtávajúce rozsah práce pre kódovací tím. Ako sa teda toto všetko vzťahuje na používateľské príbehy a epiky? Poďme sa na to pozrieť bližšie a zistiť to.

Čo je to epos?

Oficiálna príručka Scrum Guide nedefinuje ani pojem "epic", ani "user story". Tieto pojmy sa však používajú v každej jednej agilnej metodike vývoja. 

V podstate epický je jedna veľká funkcia produktu. Zvyčajne je príliš veľký na to, aby sa dal dokončiť v jednom šprinte, a mal by sa rozdeliť na menšie celky. Epic môže napríklad predstavovať časti kódu, ktoré sú zodpovedné za registráciu a autorizáciu, autentifikáciu, profil používateľa atď. Takto jednoducho.

Funkcionalita produktu sa rozkladá na epické časti, aby sa odhadol čas a rozpočet potrebný na dokončenie súhrnného projektu, zorganizovala sa práca kódovacieho tímu a určili sa časti, ktoré majú najvyššiu prioritu. Je tiež pohodlnejšie diskutovať o produkte na vysokej úrovni, napríklad so zainteresovanými stranami bez technického vzdelania, keď sa naň pozerá ako na súbor epík. Je tiež jednoduchšie sledovať pokrok a kontrolovať celkový proces vývoja, ak viete, na akých epikách pracujete a koľko času vám zaberie celková implementácia funkcií. 

Príklad eposov

Teraz by sme vám chceli ukázať niekoľko príkladov epiky a to, ako presne sa objavujú v toku riadenia projektu. Predstavme si, že vyvíjame vlastnú firemnú webovú lokalitu pre spoločnosť, kde pracovníci a používatelia potrebujú mať rôzne úrovne prístupu k webovej lokalite. Ako sme už zistili, epic predstavuje časť vývojového projektu, ktorá je zodpovedná za vývoj konkrétnej funkcie webovej aplikácie. Epizódy pre vývoj webovej lokality by sa teda mohli rozdeliť na vytváranie šprintov nasledovne:

  • Prihláste sa;
  • Registrácia; 
  • Profil používateľa;
  • Webová lokalita;
  • Služby;
  • Správa objednávok.

Epika je teda sama o sebe rozsiahly kus softvérového produktu, ktorý je potrebné ďalej rozdeliť na menšie komponenty, ktoré sa nazývajú používateľské príbehy a budú obsahovať podrobný opis každého kroku, ktorý bude musieť používateľ urobiť, aby mohol začať používať webovú stránku.

Čo je to User Story?

Používateľský príbeh (alebo len "príbeh") je konkrétna úloha v rámci epického projektu. Napríklad v širokom epickom príbehu, ktorý sa môže nazývať "Registrácia a autentifikácia", môžeme mať také používateľské príbehy ako "Registrácia pomocou e-mailu", "Registrácia pomocou Facebooku alebo Google", "Prihlásenie pomocou e-mailu", "Prihlásenie pomocou Facebooku alebo Google", "Zabudnuté heslo" a "Odhlásenie". Na vytvorenie používateľských príbehov sa teda stačí dôkladnejšie pozrieť na konkrétny epic a presne určiť, čo môže byť v ňom zahrnuté.

Je tiež vhodné spomenúť, že ak pre jednu funkciu existuje viacero typov používateľov, napríklad prihlásenie ako používateľ a prihlásenie ako správca, mali by sa pre každú z týchto rolí vytvoriť a navrhnúť samostatné príbehy. V ideálnom prípade musia byť všetky používateľské príbehy napísané v štandardnom formáte, ktorý vyzerá nasledovne: Používanie konzistentných formulácií je dôležité, pretože uvedená šablóna umožňuje súčasne sa zamerať na koncového používateľa a poskytnúť programátorom usmernenia týkajúce sa funkcií, ktoré sa majú vyvinúť.

Možno sa pýtate, prečo jednoducho nerozčleniť rozsah práce na príbehy od samého začiatku a vynechať eposy? No, je to otázka efektívnosti. Po prvé, bolo by dosť náročné správne definovať zoznam príbehov, ak by neexistovali eposy. A po druhé, bez eposov je dosť ťažké vidieť celkový obraz. V dôsledku toho je takmer nemožné správne odhadnúť a určiť priority práce, pretože jediné, čo vidíme, je nekonečný zoznam relatívne malých úloh, ktoré musia byť nejako logicky prepojené a nadväzovať na seba.

Príklad používateľských príbehov

Používateľský príbeh je jedným z prvkov epiky, ktorý rozdeľuje jednu epiku na niekoľko konzistentných krokov, ktoré opisujú, čo používatelia webovej stránky uvidia na obrazovke a akú akciu budú musieť vykonať vzhľadom na akceptačné kritériá. Aby sme si to ukázali na príklade, vezmime si bežný epic, ktorý sa vyskytuje v mnohých softvérových produktoch - registrácia. Príbehy, ktoré by mohli byť pridané k tomuto epištolátu, sú nasledujúce:

  1. Registrácia - ako neregistrovaný používateľ chcem mať možnosť "zaregistrovať sa" na webovej stránke, aby som získal prístup k jej funkciám.
  2. Overenie e-mailu - ako používateľ, ktorý dokončí registráciu, budem mať za úlohu overiť zadanú e-mailovú adresu, aby som preukázal, že zadaná e-mailová adresa skutočne patrí mne.
  3. Prihlásenie - ako registrovaný používateľ chcem mať možnosť "Prihlásiť sa" do svojho účtu, aby som získal prístup k možnostiam webovej stránky.
  4. Zabudnuté heslo - ako neregistrovaný používateľ chcem mať možnosť zmeniť si heslo v prípade, že som ho zabudol alebo stratil, alebo inak.
  5. Odhlásenie - ako overený používateľ chcem mať možnosť "Odhlásiť sa" z konta v snahe zachovať súkromie a bezpečnosť svojho konta.

Opísali sme základný registračný proces a jeho okolité prvky bez uvedenia/špecifikácie typov tlačidiel, kritérií prijatia, podaných názvov a spôsobov validácie.

Aký je rozdiel medzi epickým príbehom a príbehom používateľa?

Ak vezmeme do úvahy definíciu epického príbehu a používateľského príbehu, zistíme, že medzi týmito dvoma zložkami softvérového projektu nie je podstatný rozdiel, pretože navzájom súvisia. Epic je väčšia časť, ktorá je účtovaná za určitú funkciu aplikácie (niektoré príklady sme uviedli vyššie), zatiaľ čo user story je podrobný opis toho, ako bude táto funkcia v systéme fungovať a aké akčné úlohy treba vykonať, aby fungovala správne.

Čo je to téma?

Téma sa používa na štruktúrovanie používateľských príbehov do vhodných skupín, ktoré spolu súvisia. Každá tematická skupina používateľských príbehov zodpovedá za jednu funkciu alebo kanál, ktorý je rozdelený na niekoľko rôznych častí a uplatňuje rôzne schopnosti a akceptačné kritériá. Každý používateľský príbeh je v tomto prípade samostatná činnosť s vlastnými cieľmi a úlohami, stále však ide o jednu tému. Témy sa môžu navzájom prelínať, keď sa používateľský príbeh môže týkať rôznych tém, čo znamená, že jeden používateľský príbeh sa môže použiť vo viacerých kanáloch. 

Čo je to iniciatíva?

Zvyčajne pod iniciatívami rozumieme súbor viacerých eposov, ktoré sú zamerané na dosiahnutie jedného spoločného cieľa. Iniciatívy môžu zhromažďovať epiky rôznych tímov na riešenie komplexnejších a zložitejších cieľov, ako dokáže ktorákoľvek z oddelených epík sama. Epiky znamenajú menšie množstvo úloh, ktoré možno dokončiť v priebehu mesiaca alebo niekoľkých mesiacov. A iniciatívy môžu trvať niekoľko mesiacov a dokonca aj rok. Pozrite si obrázok nižšie, aby ste lepšie pochopili povahu iniciatívy.

iniciatívy v agilnom prostredí

Ako vývojári pracujú s epikami a používateľskými príbehmi?

V Scrum tíme je za písanie epických a používateľských príbehov zodpovedný Product Owner. Je to osoba, ktorá určuje, čo sa má vyvinúť a v akom poradí. Vlastník produktu však, samozrejme, nepracuje izolovane. Aby sa nápady zainteresovaných strán premenili na eposy a používateľské príbehy, Product Owner neustále komunikuje a koordinuje svoju činnosť s vývojovým tímom.

Pre vývojový tím sú všetky používateľské príbehy, ktoré sa majú vyvinúť v jednom šprinte, zaradené do "zoznamu úloh". Alebo, ak použijeme terminológiu Scrum, môžeme povedať, že používateľské príbehy sú položky produktového backlogu, ktoré spolu tvoria jeden prírastok, t. j. potenciálne odosielateľný kus softvéru, ktorý sa má vyvinúť v rámci šprintu.

Počas jedného šprintu môžu vývojári pracovať na používateľských príbehoch patriacich do rôznych epických oblastí. Všetko závisí od stanovenia priorít a rýchlosti tímu, t. j. počtu príbehov, ktoré je tím schopný dokončiť v jednom šprinte.

?
Užitočné informácie
Chcete pochopiť hlavné princípy Scrumu a jeho fungovanie? Potom si prečítajte náš článok týkajúci sa tejto témy.

Ako používame epické príbehy a používateľské príbehy na odhadovanie?

Ako sme už spomenuli, okrem toho, že sú užitočné na organizáciu práce tímu, epické príbehy a používateľské príbehy pomáhajú aj pri výpočte rozpočtu projektu. Rozdelenie funkcionality na časti a odhadnutie každej z nich zvlášť totiž celý proces výrazne uľahčuje a sprehľadňuje.

Takto vyzerá proces odhadu v spoločnosti Altamira:

náš proces

V dokumente s odhadom, ktorý poskytujeme klientovi, uvádzame počet hodín, ktoré naši špecialisti potrebujú na dokončenie používateľského príbehu. Povedzme, že tím má napríklad vyvinúť funkciu "Prihlásenie cez Facebook" pre systémy iOS, Android a web. Odhad pre ňu môže obsahovať nasledujúce informácie:

Pracovná úlohaPožadovaný pracovný čas
Vlastník produktu1-2 hodiny
Vývojár front-end systému Android4-5 hodín
Vývojár front-endu pre iOS3-4 hodiny
Vývojár webových rozhraní/API4-6 hodín

Čo treba zvážiť pri výbere vývojového tímu?

Spoločnosti zaoberajúce sa vývojom softvéru bežne ponúkajú podobný rozsah služieb a cyklus vývoja projektu. 

Proces vývoja projektu sa zvyčajne delí na niekoľko po sebe nasledujúcich častí:

  • určenie obchodných cieľov a hodnoty projektu pre vašu spoločnosť;
  • vytvorenie zoznamu so špecifikáciami - podrobný opis požiadaviek na výrobok a plán, ako ich splniť;
  • návrh rozloženia- počiatočná vizualizácia vášho budúceho produktu pred tým, ako sa všetky zamýšľané funkcie produktu stanú funkčnými;
  • premena návrhu na skutočnosť - písanie kódu, kde každý šprint je zodpovedný za konkrétnu funkciu vášho riešenia;
  • zabezpečenie testovania vášho riešenia , aby ste ho mohli sledovať v prevádzke a odhaliť prípadné chyby a nedostatky a opraviť ich ešte pred oficiálnym vydaním;
  • implementácia do vašich pracovných postupov, ak ide o nové riešenie, a nasadenie aktualizovanej verzie v prípade, že tím vývojárov dostal za úlohu upraviť existujúci softvér vo vašej spoločnosti;
  • program údržby, ktorý znamená podporu vášho produktu po nasadení a poskytovanie vylepšení podľa požiadaviek vašej spoločnosti a neustálych zmien a vývoja technologických trendov, ktoré sa používajú na vývoj riešení vo vašom odvetví.

Odporúčame tiež pozrieť si balíky údržby, ktoré Altamira ponúka svojim klientom, a zistiť, ktorý plán údržby by bol vhodný pre váš softvérový projekt.

Okrem vyššie opísaného priebehu vývoja by vám mala spoločnosť, s ktorou spolupracujete, ponúknuť úplný a transparentný balík dokumentov, v ktorom budú spísané, schválené a podpísané všetky detaily projektu z oboch strán.

Pri výbere vývojového tímu odporúčame postupovať zodpovedne a oboznámiť sa s každým odborníkom, ktorý sa bude podieľať na vašom projekte. Odporúčame vám najmä preveriť ďalšie možnosti:

  • ako dlho všetci špecialisti pracujú v odvetví vývoja softvéru a ako dlho sú vo vývojárskej spoločnosti;
  • dozvedieť sa o skúsenostiach, teda o technickom zásobníku, predchádzajúcich projektoch a ich úspechu po vydaní, odvetviach atď;
  • pozrite si profily na sieti Linkedin a zistite viac o zručnostiach členov tímu, preukázaných skúsenostiach v predchádzajúcich spoločnostiach zaoberajúcich sa vývojom softvéru, recenziách a ďalších aktivitách;
  • osobne sa stretnúť so všetkými členmi tímu a zistiť zodpovednosti a úlohy jednotlivých špecialistov.

Sme pripravení poskytnúť vám všetky potrebné informácie o našom pracovnom postupe s klientmi, prehľadnú dokumentáciu, zoznámiť vás s každým odborníkom, ktorý bude pracovať na vašom projekte, pretože vieme, aké dôležité je informovať vás o každej fáze vývoja a zohľadniť vašu spätnú väzbu, aby ste vedeli, či postupujeme správnym smerom.

ČASTO KLADENÉ OTÁZKY

Všetku technickú dokumentáciu vrátane epických príbehov, používateľských príbehov a dokumentov vízie projektu píše profesionálny biznis analytik. Táto osoba vykoná prieskum vašej obchodnej niky, objasní vaše obchodné potreby, preskúma vašu konkurenciu a potom začne písať technickú dokumentáciu.
Presné číslo neexistuje, pretože každý projekt je iný. Odporúčame však pridať do epického projektu maximálne 10-15 používateľských príbehov. To nám umožní dokončiť ho do 3 mesiacov a pokračovať v ďalších fázach vývoja.
Bez nich sa vám bude projekt vyvíjať ťažšie. Ak teda chcete ľahko určiť priority úloh, sledovať, ako prebieha vývoj a aký je pokrok, musíte venovať osobitnú pozornosť písaniu formulovaných epických príbehov a používateľských príbehov.
Eposy by mali obsahovať projektové, technické a dizajnové požiadavky. Takisto by mal obsahovať úvod vysvetľujúci, čo a prečo by sa malo do projektu pridať, aké ukazovatele vášho podnikania chcete zlepšiť.

Spodný riadok

Zjednodušene povedané, hlavný rozdiel medzi používateľským príbehom a epickým príbehom spočíva v rozsahu pohľadu. Používateľský príbeh je najmenší kúsok funkčnosti produktu. Veľký používateľský príbeh, ktorý možno rozložiť na súbor menších používateľských príbehov, je epický. Existujú dva hlavné účely existencie dvoch pojmov, ktoré znejú tak podobne. Po prvé, je pohodlnejšie diskutovať o produkte na rôznych úrovniach (t. j. zainteresované strany - vlastník produktu; vlastník produktu - kódovací tím; vývojári - vývojári). A po druhé, pomáha to optimalizovať proces vývoja. Dúfame, že vám tento článok pomohol. Ak sa však stále cítite zmätení, vôbec sa nebojte. Náš tím odborníkov vám rád odpovie na všetky vaše otázky.

Zanechať komentár

Prečo môžete dôverovať spoločnosti Altamira

V spoločnosti Altamira je dôvera založená na odborných znalostiach. Poskytujeme obsah, ktorý rieši hlavné výzvy nášho odvetvia, pretože im hlboko rozumieme. Naším cieľom je poskytnúť vám relevantné poznatky a vedomosti, ktoré presahujú povrch a umožňujú vám prekonávať prekážky a dosahovať pôsobivé výsledky. Okrem postrehov, tipov a odborných prehľadov sa snažíme stať sa vaším spoľahlivým technickým partnerom, pričom na prvé miesto kladieme transparentnosť, odborné znalosti v oblasti IT a agilný prístup.

Redakčná politika
Prihláste sa na odber najnovších správ spoločnosti Altamira

Tešíme sa na vašu správu!

  • Naši odborníci sa vám ozvú do 24 hodín a poskytnú vám bezplatnú konzultáciu.
  • Všetky poskytnuté informácie sú dôverné a podliehajú NDA.