Úlohy alebo aj niečo viac?

Projektový manažment je o ľuďoch, peniazoch a produkte. Tieto tri časti reprezentujú úlohy. Sú ale úlohy postačujúce?

Náš život je riadený úlohami

Aj vy to tak pociťujete? Taká úloha je často definovaná ako odpoveď na otázky:

  • Čo?
  • Kto?
  • Ako?
  • Ako dlho?

Projekty sú tak tvorené množstvom úloh, ktoré navyše navzájom komplikovane súvisia. Navyše úlohy sú vytvárané v projekte veľmi skoro, už počas tvorby projektového plánu kedy nie je celkom jasné čím daný projekt je, kto ho bude riešiť a aký je rozpočet. Skoro nič nie je isté. Poznáte to aj Vy?

Vo firmách, ktoré sú riadené iba úlohami často postrehnete určitý vzor chovania.

Ľudia si ráno typicky otvoria ďalšiu úlohu (v nejakom elektronickom systéme) a keď je dokončia, tak (v lepšom prípade) ju uzavrú a otvoria si ďalšiu. Pracovný život sa tak časom zmení na cyklus OTVOR-VYRIEŠ-UKONČI. Tím zrazu po nejakej dobe nevie odpovedať na otázku PREČO?. Stráca sa tak poznanie produktu, zákazníka a jeho potrieb. Stráca sa tak chápanie prvotných príčin prečo je vlastnosť potrebná, chápanie kontextu riešeného problému. A tieto straty mňa, produktového manažéra, by mali trápiť. Veľmi. Priam bolieť. Tím dokonca nerozumie pre koho vyvíja a ako je to dôležité pre vašu firmu. Ako to zmeniť?

Stories

Prepáčte, že použijem anglický termín, ale zatiaľ som dobrý preklad do slovenčiny nenašiel. ‘Príbeh’ mi v tomto prípade znie čudne.

Story je požiadavka. No, nie tak celkom, ale v podstate sa tak dá chápať.

Požiadavka, ktorá je náročky v agilnom projekte zapísaná inak. Jednoducho a prehľadne. Na kartu, s ktorou sa dá manipulovať. Story je zapísaná v tejto forme:

 

 

Príklad (a môj odkaz pre Zajtra.sk :))

 

Rozdiely voči úlohe? Story jasne popisuje kto, čo a hlavne prečo to potrebuje. Tým, že je popis stručný, je aj požiadavka pomerne presne popísaná a je navyše malá rozsahom. A teda ľahko manažovateľná. Dá sa pomerne ľahko určiť kto je schopný story riešiť a ako dlho bude trvať jej riešenie. Dá sa ľahko implementovať v krátkom časovom intervale a sledovať jej priebeh.

Všimnite si veľmi dôležitú vec. Story nepopisuje AKO problém riešiť. Prečo? Lebo človek, ktorý požiadavku zadáva to nevie. A ani by nemal chcieť vedieť. Nato tu máme lepších expertov, vývojový tím.

Backlog

Bohužiaľ ďalšie anglické slovo. Backlog je utriedeným zoznamom stories.
Na rozdiel od zoznamu úloh je tak backlog popisom produktu, nie činností a aktivít. Tento zoznam nie je len utriedený, ale navyše stories sa líšia v detailoch popisu. Čím dôležitejšie tým presnejšie. Tie najmenej dôležité sú často popísané iba titulkom, napr. Finančná analýza

Backlog je spravovaný produktovým vlastníkom. Iba on určuje dôležitosť, poradie, stories v backlogu. To on pridáva detaily tak, aby najdôležitešie úlohy boli popísané čo najpresnejšie. Tak aby vývojový tím ich vedel implementovať.

Hey dude, where is my backlog?

Kde je backlog v agilnom projekte? No predsa na tabuli! Všimnite si prvý stĺpec s názvom Product backlog. Všimli ste si to keď ste čítali minulý diel o viditeľnosti?

Každá sivá kartička popisuje story. Potrebujete zmeniť prioritu? Presňte kartu vyššie alebo nižšie. Na základe čoho? Na základe obchodnej hodnoty vlastnosti.

Tipy

  • Story by mala byť implementovaná maximálne počas polovice iterácie.
  • Story by mala mať aj akceptačné kritéria. Tie sú malým kontraktom. Zvyčajne zapísané počas plánovacích mítingov spolu so zákazníkom, produktovým vlastníkom a tímom.
  • Nezaoberajte sa odpoveďami na otázku AKO. V Scrume budete mať inú príležitosť kedy sa to spýtať. Nie pri definovaní produktu.
  • Story je buď dokončená alebo nie. Neakceptujte Dokončená na 90%. Už len 2 minúty.
  • Dokončená môže mať rôzny výklad. Dohodnite sa čo znamená HOTOVO.
  • Detaily v popise story pridávajte tak NESKORO ako sa dá. Predpokladajte zmenu. Ušetrite čas, ktorý strávite pri podrobnej špecifikácii požiadavky na vývoj. Aj tak sa požiadavka zmení.
  • A na záver najdôležitejšie. Každú novú požiadavku zapíšte na papierik a roztrhajte ho. Pretože iba 20% vlastností je použitých užívateľmi aplikácií. Ostatné je nepotrebný odpad.

Linky

Článok bol publikovaný na Zajtra.sk

Viditeľnosť v projekte je kľúčová

Sledovanie úloh, ich priradenia a progresu je v klasickom manažmente zväčša úlohou projektového manažéra. V agile/scrume je to ale úloha celého tímu. Prečo? Lebo manažment agilného projektu je založený na spolupráci ľudí (viď Roly).

Kľúčom je viditeľnosť, pretože podporuje dôveru klienta, manažmentu a aj ľudí v tíme samotnom. Koľkokrát ste mali pocit, že robíte podstatne viac ako kolega sediaci vedľa Vás? Je to ale skutočne tak? Projektový manažéri možno majú prehľad, no často táto viditeľnosť chýba na úrovni tímu.

Tabuľa

Zabudnite na Microsoft Project. Viditeľnosť projektu pre všetkých v ňom nie je možná. Použite jednoduchú tabuľu rozdelenú na viacero stĺpcov. Každý stĺpec popisuje stav úlohy.

Obrovskou výhodou je, že Vám stačí len letmý pohľad a okamžite viete stav projektu.

  • Máte viac papierikov na ľavej strane? Pravdepodobne je toho pred Vami ešte veľa.
  • Je veľa papierikov v strede? Máte veľa vecí otvorených. A je ich dokonca viac ako členov tímu? Pravdepodobne by ste si mali prečítať niečo o Getting Things Done (GTD).

Navyše ak takáto tabuľa je v miestnosti, v ktorej je aj tím, tak zmenu, resp. progress, v projekte postrehnete už len periférne keď kolega vstane a presunie papierik.

Distribuovaný tím?

Hmm, pre distribuovaný tím nebude asi jednoduché dosiahnuť takýto vizuálny manažment.

Niektorí sa snažia tabuľu fotiť, potom fotky posielať alebo zdieľať cez wiki do inej lokácie. Výsledok? Nepoužiteľné, pretože vidíte iba rozloženie papierikov, nie detaily. Jediným riešením je dobrá elektronická aplikácia.

Stačí vidieť a byť videný?

Nie, nestačí. Ak by manažment projektu mal byť iba v presúvaní papierikov, tak v podstate nemáte tím.
Základom je komunikácia. Scrum preto odporúča jednoduchú techniku nazývanú denný standup:

  • Tím sa stretne pred tabuľou každý deň v ten istý čas, ktorý vyhovuje všetkým.
  • Každý člen tímu má jednu minútu na zodpovedanie troch otázok. Len jednu minútu nič viac. Čas je najcennejším.
  • Na čom som pracoval včera?
  • Na čom budem pracovať dnes?
  • Aké mám problémy?
  • Potrebujte prebrať viacero detailov? Pokračujte na inej porade a len tí, ktorí majú čo povedať. NIe celý tím.

Zo začiatku vám to bude pripadať ako ďalšia zbytočná porada, ale pri dobrej organizácii je tento míting veľmi efektívnźm spôsobom zdieľania informácii o stave projektu. Najdôležitejšie pre mňa pri tomto spôsobe je, že mnoho informácií vám prejde cez hlavu. Informácie, ktoré sa vynoria v momente keď ich budete potrebovať. Tzv. AHA moment.

Tipy

  • Papierik presúvajte v momente, keď sa mení stav úlohy, nie raz týždenne.
  • Použite rôzne farby pre rôzne typy úloh.
  • Niektoré tímy používajú farbu podľa toho, kto na úlohe pracuje. V agilnom projekte ale chceme mať tím multidisciplínnym, a preto ja osobne to neodporúčam.
  • Indikujte problémy s úlohou vizuálne. Pripnite farebný špendlík, resp. malý červený papierik.
  • Rôzne tvary zlepšia prehľad.
  • Rozdeľte stĺpce na viacero stĺpcov ak váš process je komplikovanejší.
  • Vyhradťte si čas tabule na tzv. parking lot. Parkovisko úloh, ktoré tím nie je schopný samostatne riešiť, resp. nie je zatiaľ jasné čo s úlohou.
  • Tabuľa nie je len pre IT projekty. Obrázok hore zobrazuje úlohy operation tímu.
  • Vytlačte si malé fotky alebo avatarov reprezentujúcich členov tímu. Urobte niečo pre rozveselenie.
  • Používate dovolenkovú aplikáciu? Dajte fotky dovolenkujúcich do samostatnej časti tabule. Jendoduché nie?

Užitočné odkazy

A nakoniec otázka, ktorú by ste sa mali spýtať pred odchodom z práce.

Článok bol publikovaný na http://www.zajtra.sk/zivot/340/manazment-projektu-inak-klucom-je-viditelnost.

Workshop Scrum v reálnom živote, 7.4., Bratislava

Chcete produkovať rýchlejšie a kvalitnejšie ako konkurencia? Komplikujú Vám časté zmeny projektov život?

Scrum, agilný projektový framework, mení spôsob vývoja a dodávania produktov s výrazným zameraním na prispôsobenie sa meniacim sa požiadavkám zákazníka, skrátenie cyklu vývoja, zlepšenie tímov a zvýšenie kvality.

Registrovať

Workshop Scrum prakticky umožní Vašim tímom pochopiť základy frameworku, roly a ich zodpovednosti, agilné postupy pri vývoji a agilné metriky. Naučíte sa ako pracovať s množstvom požiadaviek a ako odhadnúť agilný projekt.

Scrum spoznáte praktickými príkladmi a hrami, ktoré budete môcť aplikovať aj vo svojich tímoch. Táto forma je overená stovkami účastníkov v minulých rokoch.

Prečo?

  • Pochopíte Scrum, roly a ceremónie. Dozviete sa o agilných princípoch a iných metódach.
  • Aplikujete Scrum prakticky počas workshopu.
  • Naučiť sa plánovať s prispôsobením sa častým zmenám.
  • Spoznáte spôsoby prioritizácie požiadaviek Vašich zákazníkov podľa obchodnej hodnoty.
  • Porozumiete ako je potrebné zmeniť myslenie pre zrýchlenie vývoja.
  • Naučíte sa praktické hry a príklady, ktoré pomôžu Vašim tímom pri adaptácii agile.

Pre koho?

  • Senior manažment – ak uvažujete o transformáci Vašej spoločnosti
  • Produktový manažment –  ak potrebujete pracovať s množstvom požiadaviek a chcete dodávať kvalitné produkty načas.
  • Projektový manažment – ak chcete riešiť dilemu trojúholníka rozpočet , rozsah a čas.
  • Vývojári, testeri a iné roly v tíme

Zažite Scrum prakticky!

Agilná transformácia formou hry

Keď pred pár týždňami nás kontaktoval Zsolt Zsuffa z Budapešte ohľadom participácie na Agile Meetupe, ponúkli sme rôzne témy krátkeho školenia. S prekvapením sa však Zsolt priamo spýtal na agilné hry. Zaujali ho naše skúsenosti a výsledky a tak chcel skúsiť touto formou stmeliť aj agilnú komunitu v Maďarsku. Pre nás to bola možnosť konečne po prezentáciách urobiť aj niečo praktické, čo ľudia budú môcť vyskúšať aj vo vlastných firmách.

Prechod na agilné technológie je  v dnešnej dobe aktuálnym v mnohých spoločnostiach. Spoločnosti sú zväčša zamerané len na výsledky, ktoré sa dajú merať. V mnohých prípadoch však chýba niečo oveľa dôležitejšie, čo agile priam vyžaduje – zmena myslenia. Táto zmena vyžaduje čas a skúsenosti. Nedá sa naučiť, musí sa zažiť. Je to dospievanie. V takomto prípade je zlyhanie dokonca cennou skúsenosťou, ktorú chceme zažiť často a skoro, hlavne ak ste na začiatku transformácie.

Agilné hry sa stávajú (podobne ako v živote dieťaťa) katalyzátorom vývoja a stávajú sa tak lepidlom ktoré prepája teóriu s praxou. Sú možnosťou ako sa naučiť robiť agile na príkladoch. S pomocou kouča takto tímy nemôžu zlyhať pri učení ako agile robiť.

Hry hrajeme počas tréningov na Slovensku aj v zahraničí už niekoľko rokov. V Budapešti sme sa zamerali na hry vybrané pre transformáciu spoločností na agile:

  • vytvorenie tímu a jeho samoorganizácia
  • pochopenie problémov a zvyraznenie ich podobnosti v celom softvérovom priemysle
  • identifikácia dôvodov prečo agile vzniklo
  • naučenie sa ako robiť agile, ako pracovať v časových iteráciách, ako samoorganizovať nielen tím, ale aj prácu, prečo je jednoduché zadanie požiadavky často efektívnejšie než dlhé dokumenty
  • ako sa zlepšiť použitím retrospektívy

Originál viď ScrumDesk: Serious Play – accelerate your transition to Agile

Ako uspieť, ak ste už raz začali

obal.succeeding.with.agile

Nie vždy sa mi stáva, že sa mi dostane do rúk kniha, ktorá by dokázala posunúť môj názor na nejakú vec naraz vo viacerých smeroch. Tentokrát som mal  opäť raz šťastie, keď som natrafil na Succeeding with Agile od Mike Cohna. Je niekoľko vecí, ktoré sa dajú o tejto knihe povedať, a jedna z nich je, že ak to myslíte s agilnými metódami vážne, tak čas strávený jej čítaním nebude určite premrhaný.

Táto kniha nie je pre ľudí, ktorí si kladú otázku: „Čo sú to agilné metódy?“, alebo „Ako vlastne vyzerá Scrum?“. Autor predpokladá, že na to už máte odpovede a vedie diskusiu viac do hĺbky adaptácie agility. Je to kniha hlavne pre ľudí, ktorí čo-to o agilných metóda vedia, niečo si aj skúsili a narazili na rôzne druhy prekážok. Jej čítaním totiž veľmi ľahko zistíte, že vaše problémy nie sú až tak unikátne ako možno vyzerajú a ich riešenie už existuje. Zaujímavé sú napríklad takzvané „časté námietky“ ľudí voči agilným metódam a Mikové odpovede na ne. Niektoré vám možno budú pripadať povedomé…

Kniha je rozdelená na päť častí, pričom v prvej autor vysvetľuje základné fakty o adaptácii Scrumu. Nečakajte ale vysvetlenie toho, čo je to sprint. Namiesto toho Mike prezentuje 5-krokový proces, ktorý je vhodný k adaptácii Scrumu a vzory šírenia agilných praktík medzi tímami. Okrem toho zavádza pre mňa veľmi príslovečný pojem „organizačná gravitácia“ – t.j. pôsobenie (sily) zvyšku organizácie voči prechode tímu na agilnú metódu. Ak prekonáte túto silu, dostanete sa na orbit (úspešná a trvalá adaptácia), ak nie, stiahne vás to späť.

Druhá časť pojednáva o jednotlivcoch. Hneď prvá kapitola vás naučí poradiť si s odporom k zmene (veľmi dobré čítanie na túto tému je aj kniha „Pocit naliehavosti“ od John P. Kottera). Ďalšie kapitoly informujú o tom, ako zaviesť nové roly, ktoré so sebou Scrum prináša (vytvorením alebo transformáciou klasických existujúcich) a ako ľudom vštiepiť technické praktiky, ktoré sú pre agilný vývoj nutné.

V tretej časti si berie na mušku fungovanie tímov. Od štruktúry tímu, cez budovanie spolupráce až po podporu samoorganizovanosti v tíme. V tejto kapitole tiež môžete nájsť informácie o tom, ako by mal vyzerať váš backlog, sprint, plánovanie a čo robiť, aby  ste do vášho produktu zapiekli dostatočné množstvo kvality.

Štvrtá časť je zameraná na väčšie organizácie. Mike prezentuje svoje znalosti ako sa vysporiadať s veľmi veľkými projektmi alebo ako zaviesť Scrum do distribuovaného prostredia. Zvláštna kapitola je venovaná spoluexistencii agilných metód s inými (klasickými) metódami v jednej organizácii. Ak ste niekedy stáli pred problémom ako riadiť projekt, ktorý je vo vnútri agilný a navonok klasický-sekvenčný, tak v tejto kapitole nájdete zopár dobrý postrehov.

Posledná časť je najkratšia, ale o to silnejšia. Mike v nej vstupuje do oblasti, o ktorej som ja osobne zatiaľ veľa literatúry nevidel, a to meranie agility. Ako veľmi ja náš tím agilný? Kde sme v porovnaní s obdobím pred rokom alebo v porovnaní s inými tímami? Ako veľa hodnoty sme dodali zákazníkovi? Ak vás trápia tieto alebo podobné otázky, tak v tejto kapitole by ste mohli nájsť zopár drahokamov medzi riadkami. Osobne ma prekvapilo, aké jednoduché praktiky sa dajú použiť, aby sme zistili, akú veľkú hodnotu dodáva tím zákazníkovi (niektoré z nich sme v našom tíme vyskúšali, a bolo naozaj zaujímavé sledovať ako zopár jednoduchých obrázkov vyjasnilo pomery).

Kniha Succeeding with Agile je určená ľudom, ktorí agilné metódy skúšajú a boria sa s rôznymi problémami, ktoré takáto adaptácia prináša. Je určená pre bojovníkov, ktorí sa rozhodli bojovať s organizačnou gravitáciou, aj pre zvedavcov, ktorí by sa už radi dozvedeli niečo viac, ako ponúka základné video o Scrume na Youtube. Je cítiť, že Mike do knihy vložil svoje dlhoročné skúsenosti a že píše o veciach, ktorým rozumie. Preto by táto kniha mala byť v knižnici každej spoločnosti, ktorá to s agilitou myslí vážne.

Agile Eastern Europe 2010

null

Aj tento rok by sme Vás radi pozvali zúčastniť sa skvelej akcie Agile Eastern Europe 2010 o Agile, Scrum, Lean atď.

Skvelý program
35 rečníkov z 18 krajín, 2 dni, 4 pódiá, 40 prezentácií
Master Classes (CSM, CSPO, Lean, Design) vedené hlavnými rečníkmi!

Web: http://agileee.org
Kedy: 8-9 októbra 2010
Kde: Kyjev, Ukrajina

Zaregistrovaním sa získate vstupenky so zľavou,výšku ktorej momentálne dohadujeme s organizátormi Agile Eastern Europe.

Kanban – ďalší nástroj agilných projektov

Kanban je ďalší nástroj v skupine agilných metód, kde sa nachádza aj Scrum. Je kompatibilný s agilným manifestom a nepopiera agilné princípy. Oproti Scrumu je však menej reštriktívny a je založený na veľmi jednoduchej myšlienke:

Nedokončená práca (Work-in-progress alebo WIP) by mala mať svoje obmedzenie a nová práca sa môže začať len vtedy, keď sa iná práca dokončí (alebo posunie do iného stavu).

Kanban (v japončine “signalizačná tabuľka”) predpokladá, že vznikne vizuálny signál o tom, že sa môže rozpracovať novú úloha, pretože aktuálne množstvo rozrobenej práce ešte nedosiahlo svoj limit.

Kanban schéma

(c) Henrik Kniberg & Mattias Skarin: Kanban and Scrum – Making the most of both (InfoQ 2010)

Znie to zaujímavo ? Na prvý pohľad možno nie, možno je to malá, nenápadná myšlienka, ale môže zmeniť všetko v doterajšom procese! Kanban totižto nie je proces ani metodika, je to spôsob ako zaviesť zmenové riadenie (change management) do existujúceho životného cyklu softvérového vývoja. Bol vytvorený ako časť Lean iniciatívy s cieľom transformovať firemnú kultúru na nepretržité zlepšovanie (Continuous Improvement).

Princíp Kanbanu – začať s tým, čo robíme teraz. Pochopíme proces zobrazením dôležitých tokov a nastavíme limity na každý stav tohto procesu. Potom začneme pracovať s tokom úloh v systéme tým, že ich vyberáme len vtedy, keď je vygenerovaný Kanban signál. Toto spôsobí, že sa v niektorých stavoch začnú úlohy blokovať a upchávať systém. To je to, čo sme chceli – tím v čo najkratšom čase odstráni problém a obnoví tak tok úloh. Pochopením príčin, upravovaním limitov WIP prípadne zmenou stavov procesov sa celý tok stáva priechodným.

Kanban takto vďaka transparencii zviditeľňuje úzke hrdlá, fronty, nestálosti a zbytočnosti – toto všetko má vplyv na výkonnosť z pohľadu množstva užitočnej práce a doby cyklu (začaté – odovzdané). Prehľadnosť sa dá ľahko zabezpečiť tým, že sa použije tabuľa/stena s lístočkami. Lístoček (Post-it) je ten vizuálny signál, ktorý som spomenul na začiatku.

Pravidlá sú iba dve:

  1. vizualizuj svoj pracovný tok
  2. limituj svoj WIP

Ešte spomeniem stručné podobnosti Kanbanu so Scrumom:

  • sú Lean a Agile
  • používajú plánovanie vyberaním úloh
  • obmedzujú WIP
  • používajú prehľadnosť na riadenie procesu zlepšovania
  • sústreďujú sa na vytvorenie potencionálne dodateľného produktu rýcho a často
  • stavajú na samoriadenie sa tímu
  • požadujú rozdelenie práce na menšie časti
  • release plán je priebežne upravovaný na základe empirických dát (velocity/lead time)

Odlišnosti Kanbanu od Scrumu:

  • časovo obmedzené iterácie (Sprint) sú voliteľné, nie povinné
  • záväzok tímu je voliteľný, nie povinný
  • používa Lead Time ako metriku na plánovanie a vylepšenie procesu, nie Velocity
  • všestranný tím je voliteľný, špecializované tímy/jednotlivci su povolené
  • roly nie sú preddefinované
  • veľkosť úloh môže byť ľubovolný
  • burndown grafy nie sú povinné
  • WIP obmedzuje priamo, Scrum nepriamo
  • odhady sú voliteľné
  • nové úlohy sa môžu pridávať do zoznamu hocikedy, ak to dovoľuje WIP limit
  • Kanban tabuľa nie je špecifická pre jeden tím, môže ju zdieľať viacero tímov alebo jednotlivcov
  • Kanban tabuľa pretrváva a neruší sa po každej iterácii
  • prioritizácia nie je povinná ale voliteľná

Myslím, že stojí za to sa nad Kanbanom zamyslieť a zvážiť jeho výhody a prípadné dôsledky. Má menej obmedzení ako Scrum, takže jeho akceptácia v tíme môže byť jednoduchšia, navyše kto má skúsenosti so Scrumom a narazil na niektoré jeho obmedzenia, je možno toto ten správny impulz, že je čas sa posunúť zase o kúsok ďalej.