Daily stand-up dobre VII – tak ďaleko, no predsa tak blízko

“Agile funguje v tímoch, v ktorých členovia sedia spolu. V jednej miestnosti.”

Aj vám to vravel tréner počas školenia o základoch Agile? Mal pravdu.

Počas zavádzania Agile však mnoho firiem narazí práve na túto podmienku.  Tá prekvapujúco limituje agilitu aj v slovenských firmách, ktoré nerástli prirodzene, ale akvizíciami iných firiem sídliacich v rôznych kútoch Slovenska a Čiech. A báááááác. Máme tu distribuovaný vývoj, aj keď sme stále na Slovensku. A to vôbec nemusíte mať v popise firmy pojmy ako nearshore, offshore, outsorcing. Jednoducho ste distribuovaní, a práve preto bude zavádzanie Agile ťažšie.

Stand-up na diaľku?

Možno naivná, no nie tak nefrekventovaná otázka: “To mám stáť počas denného stretnutia keď ho robíme online?”.

Hmmm, a prečo nie? Aspoň si pretiahnete chrbticu. Steve Jobs robil dôležité porady a stretnutia počas chôdze. Yves Hanoulle koučuje tímy online zo svojho walking desku.

No nemusíte takto preháňať. Jednoducho ostanťe sedieť na stoličke. Pretože vaša poloha počas stand-upu nie je pre ostatných členov tímu vôbec dôležitá.

Ako sa pripraviť na distribuovaný stand-up?

Technika, technika, technika

Čo vám musí fungovať:

  • Synchronizovaný čas medzi lokalitami. Nezabudnite na časové pásma.
  • Intenetové pripojenie dostatočnej kvality. Pozor na WiFi, niekedy je síce spojenie ok, ale pri prenose vám vypadne zvuk.
  • Na denné standupy potrebujete iba audio. Video zbytočne ruší. Začne vás zaujímať čo robí kolega, ako sa tvári, kam pozerá, ako je oblečený. Stratíte koncentráciu.
  • Slúchadlá a mikrofón. S možnosťou hardvérového umlčania (mute tlačidlo). Kým stlačíte softvérové tlačidlo, tak hardvérové máte prenuté niekoľko krát. Skúsenosť zo života…
  • Komunikačný softvér s možnosťou zdieľania obrazovky a chatom.
    • Niektoré tímy preferujú Skype.  No nie všetky firmy ho dovoľujú. Má síce zdieľanie obrazovky, niekedy je však kvalita obrazu nedostatočná.  ozor na obmedzenie počtu účastníkov konferencie vo voľnej verzii.
    • GTalk (Google Hangout) – fajn ak potrebujete viac účastníkov. Niekedy je problém s kvalitou hovoru predovšetkým na WiFi. Hangout je napr. používaný aj počas mini konferencií Agile Lean Europe a celkom dobre funguje. Predovšetkým aj preto, že asi každý už má Google account, takže najmenej problémov s prihlasovaním atď.
    • Microsoft Lync (Office Communicator) – šikovné riešenie, dnes už aj multiplatformové. Mnoho funkcií, ktoré sa oplatia. Problém je však rozbehať  ho predovšetkým s externými kontraktormi mimo siete (VPN). Niekedy sa cez desktopového klienta pripojíte, inokedy iba cez web. Niekedy audio nefunguje ani tak. Iba cez mobil (platený ak firma nemá vlastnú bránu). Náročnejší na konfiguráciu, ale skúsení admini to vedia vyriešiť dostatočne vopred.
  • Minimalizovaný externý šum. Najčastejší problém, ktorý neskutočne ruší. Niekedy viac počujete ľudí mimo tímu než človeka, ktorý rozpráva. Raz sa nám dokonca stalo, že sme počuli dvoch (ukrytých) Indov našepkávať svojmu kolegovi, členovi tímu. Robili prácu za neho. Aj toto môže odhaliť mikrofón v kľudnom prostredí :).

Odporúčam vám pripojiť sa 5 minút pred mítingom a preveriť, či vám funguje spojenie. Členovia tímu často využijú tento čas na neformálny pokec o živote. Je to teda investícia do socializácie, čo sa mi veľmi páči.

Informácie, informácie, informácie

To najpodstatnejšie sa má stať niekoľko minút pred denným stretnutím. Ako člen tímu si pripravím odpovede na klasické otázky:

  1. Čo som spravil od posledného standupu?
  2. Na čom budem pracovať do najbližšieho standupu?
  3. Aké mám problémy?
  4. S kým sa chcem porozprávať po stretnutí?

Zaiste ste si všimli trochu inú formu otázok. V distibuovanom prostredí sa môže stratiť význam slova DNES, VČERA, ZAJTRA. Preto sa odkazujeme na obdobia medzi standupmi.

A prečo štrvtá otázka? Pretože chcete ušetriť čas kolegom. Bavte sa cielene s ľuďmi, ktorí majú čo k danej téme povedať viac do hĺbky. No diskutujte po stretnutí, nie počas neho. Zachovajte 15 minútový interval.

Daily Standup

Odpovede na otázky si pripravte pred stretnutím. Najlepšie niekde v textovom editore alebo Notepade. Keď príde váš moment, tak ho skopírujte a vložte do chatu komunikačného nástroja. Všetci tak uvidia odpovede a porozumejú aj v prípade vašej horšej angličtiny alebo nižšej kvality WiFi signálu.

Tip pre Scrum Mastrov: najväčšou výhodou tohto prístupu je to, že sa ľudia pripravia!

Čas

Dôležitým atribútom distribuovaného stand-upu je čas. Berte do úvahy časové zóny. Standup by mal byť v nejakej lokalite ráno. Najlepšie v lokalite, kde sídli väčšina členov tímu. Nech sa deň začína s výhľadom do budúcnosti. Ak pracujete s východným pobrežím USA, tak vhodným časom je 14:00 GMT+1. Najväčším problémom budú tímy v USA, Indii a Európe. V niektorých prípadoch možno budete musieť rozdeliť tímy podľa zón a nebude sa možné stretnúť súčasne.

Pozor na tzv. komplex kontraktora. Môže sa vám stať, že klient vás bude tlačiť do nezmyselných časov na standupy (19:00 a neskôr). Nedajte sa.

Ak ste boli na našich workshopoch tak viete ako na to…

Komunikácia, komunikácia, komunikácia

Najťažšie na distribuovaných stand-upoch je udržať disciplínu.

Tu je niekoľko tipov:

  • Rozpráva iba jeden. Vyzvaný Scrum mastrom. Ostatní si umlčte mikrofóny. Nebudete tak skákať do reči.
  • Neprerušujte. Ani keď kolega nemá pravdu.
  • Ak máte nejaký postreh, zapíšte si ho na papier alebo do notepadu. S vypnutým mikrofónom. Vaše ťukanie nikoho nezaujíma.
  • Indikujte scrum mastrovi, že sa chcete vyjadriť k danej téme. On vás vyzve. Pretože to on moderuje stretnutie.
  • V medzinárodných tímoch VŽDY používajte jazyk, ktorému rozumia VŠETCI. Niekoľkokrát sa mi stalo, že jeden kolega rozprával anglicky a ostatní slovensky. On reportoval anglicky, no Slováci slovensky. Veď sme na Slovensku. A pekne malom… Kolega časom mal tendenciu na stretnutia nechodiť, nemali pre neho zmysel. A (ne)priordzene to bola jeho chyba, za ktorú bol trestaný práve on, ktorý ju nespôsobil.
  • Čas. Kľučový prvok.
  • Detaily – len v rozumnej miere. Nevravím, že vôbec.
  • Niektoré tímy preferujú rovnaké poradie počas standupov, iné ho radšej menia tak, aby členovia tímu boli v strehu. Hlavne ak zaspávajú počas porád.

Tak ďaleko a predsa tak blízko

Vzdialenosť nie je pre denné standupy limitujúca. Limitujúci je prístup ľudí k tomuto obmedzeniu. Je to iba stav mysle.

Možno stačí inšpirovať sa u známych, ktorí v takomto prostredí pracujú. Úspešne sa s týmto problémom popasovali firmy v Košiciach, Bratislave, Žiline aj Banskej Bystrici.

 

Odkazy

Daily stand-up dobre VI. – odpáľ to bez prípravy

V kanceláriách agilných IT firiem nastáva o 9:00 zvláštna vec. Informatici, o ktorých si väčšina ľudí myslí,  že sú svojim spôsobom zvláštni a nekomunikatívni, sa postavia do kruhu a začnú sa rozprávať.

Niektorí členovia tímu sa iba postavia a ‘odpália to’ priamo z hlavy. V takých prípadoch dosť často počuť tzv. “óóóhmovinu”: “Ohhhm, včera som robil, ohhhhm, dnes budem robiť, ohhhhm,….”.

Stretnutie sa takto zbytočne predĺži, óóóhmovina odváza pozornosť a znižuje koncentráciu. Ako sa teda mám ja, člen tímu, pripraviť na denné stretnutie?

Ako sa pripraviť na stand-up

ready steady go

Najčastejšie aplikovaným pravidlom je aktualizácia úloh pred stand-upom.

No ešte lepšie je mať ich aktuálne kedykoľvek. V podstate keď sa pozriete na kanban tabuľu, tak uvidíte kto na čom presne pracuje. Stav výrobnej linky.

Samozrejme, že padnú argumenty proti tejto aktuálnosti: “To mám posúvať kartyvždy po pár minútach? Prečo taká byrokracia?”. Nie, nemusíte. Nikto vás nenúti.

Zvážte ale argumenty prečo áno:

  • Lepšia samoorganizácia tímu. Viem, ktoré karty si môžem vziať a začať na nich okamžite pracovať. Bez obáv, že už na nej niekto pracuje a budeme tak zybtočne robiť na tej istej úlohe viacerí.
  • Lepšia sebaorganizácia. Princípy Getting Things Done  učia, že kľúčom k sebaorganizácii v dnešnom svete plnom úloh, je dať ich všetky preč z hlavy. Či už na papier alebo lepšie na tabuľu. Odbremeňte hlavy od úloh a vytvorte si tak priestor pre kreativitu, ktorá vás určite baví viac.
  • Vysielač problémov. Ak mám problémy s úlohou, tak ich okamžitá indikácia na karte (komentár alebo grafická značka) umožní rýchlejšie naštartovať ich riešenie. Nie až ráno po standupe.
  • Rýchlejšia akceptácia. Dokončením user story môže produktový vlastník okamžite začať s pripomienkovaním, resp. akceptáciou, hotovej práce. Musí sa ale dozvedieť, že story je hotová. Vy Skorá spätná väzba je predpokladom úspechu.
  • Presun karty je o sekundách. Neznalosť aktuálneho stavu bude o hodinách, popr. dni.

Paradoxne až distribuovaný stand-up vás naučí najefektívnejšej príprave.

Keďže musíte byť stručný a jasný, pripravíte si stav úloh pred poradou, napr. do Notepadu . Prejdete si svoje úlohy a pozriete sa na kandidátov na ďalšie. Potom, keď máte rozprávať, už iba vložíte pripravený text do Skype alebo Office Communicatora a rozprávate. Ostatní tak tieto informácie uvidia, aj keď kvalita linky nie je veľmi dobrá, alebo ak nerozumia vašej angličtine.

Pripravujete sa inak a funguje to? Napíšte o tom!

Daily stand-up dobre V. – manažér

Pre tímy sú denné stand-upy mnohokrát ‘intímnou’ záležitosťou. Počas mentoringu to zbadáte. Aj prítomnosť kouča, ktorý je do tímu pozvaný a ktorý im pomáha, naruší prirodzený priebeh stretnutia. Prirovnávam to ku kvantovej fyzike, kde aj to, že pozorujete daný jav, ovplyvňuje jav samotný. Podobne to je aj s prítomnosťou osôb mimo tímu.

Nie, nechcem povedať, že nikto iný mimo tímu sa nemá stretnutia zúčastniť. Chyba je totiž práve na strane tímu. Často je to dané iba ostychom prezentovať a hovoriť pred inými. A práve denný stand-up môže zlepšiť aj prezentačné schopnosti jedinca. Pretože musí byť stručný, jasný, informácie musia byť hodnotné a použiteľné inými.

No má byť na dennom stretnutí aj manažér? 80% tímov, s ktorými som pracoval, ich tam nechcú. Prečo?

Manažér ako scrum master

Jeden z prvých distribuovaných tímov, ktorý zavádzal Agile, pracoval na oboch brehoch Atlantiku. Na východnom Slovensku a východnom pobreží USA. Asi 6 hodinový rozdiel. Slováci, ako kontraktori, pristúpili na podmienky dané Američanmi. Jednou z podmienok bol stand-up o 12:00 hodine (USA) čo znamenalo 18:00 u nás.  Po týždni ma na chodbe oslovil môj priateľ jedinou vetou“Je to Tvoja vina!” kráčajúc nahnevaný ďalej. Bummm. Prečo? Tak som išiel s ním na cigaretu, kde to fajčiarom myslí častokrát lepšie a kde sa dá nájsť priestor na neformálny rozhovor.

Situácia bola zlá. Slovenský tím začínal prácu d 9:00 a 18:00 ešte iba začínal stand-up. A ten trval 1,5 hodiny!!! Dôvod bol jednoduchý. Manažér na stretnutí. Bol to scrum master. Navyše bol certifikovaný, no nikdy nepochopil, že Agile nie je o postupoch, ale o hodnotách a princípoch. A tak tím mal  namiesto denného stretnutia výsluch.

Scrum master (stále manažér) bol v tomto prípade zdrojom frustrácií. Riešením by bolo menovať niekoho iného scrum mastrom, ale pomohlo by to pri takej osobnosti manažéra, ktorému je jedno, že ľudia sú niekde v Európe v práci  do 20:30?

dancingManažér, ktorý je scrum mastrom, by mal byť hladný po spätnej väzbe. Prepojenie týchto dvoch rolí je nebezpečné v tom, akými sme sa naučili byť manažérmi (princíp kontroluj a panuj) a proti tomu stoja princípy scrum mastershipu – servant leadership, kouč, mentor. Je to o zmene správania, hodnôt a princípov ako fungujeme. A preto spätná väzba je nutnou v tomto prípade.

Manažér sa musí naučiť tancovať so systémom aj s tímom. Treba si zahryznúť do ceruzky keď chcete niečo povedať. Treba sa vyhnúť očnému kontaktu s človekom, ktorý reportuje stav. Niekedy treba dokonca sadnúť si chrbtom k tímu a naučiť tím, že to nie mne, manažérovi, reportujú, ale že sa majú informovať navzájom.

Manažér ako návštevník

Pred piatimi rokmi som ako manžér viedol porady. Nebolo to o Scrum, ale o normálnom reportingu, ktorý určite poznáte z práce. Jeden na jedného, aj keď je v miestnosti celý tím. No zlomovým momentom pre mňa osobne bolo, keď som si sadol do rohu miestnosti a nechal tím sedieť za jedným stolom, Bola to iná perspektíva. Odrazu vnímate ako ľudia interagujú, kto s kým sa môže a kto koho nemôže. Aké informácie potrebujú ľudia, aké tréningy im potrebujete poskytnúť a s kým sa potrebujú dohodnúť. Začal som sa viac pýtať “Čo potrebujú?”.

Ako ‘vypočúvajúci’ manažér som na toto často nemal čas. Išlo vtedy viac o úlohy a ich stav.

Preto najlepšie je, ak sa ako manažér do roly scrum mastra ani nepasujete. Vyhnite sa jej pokiaľ sa dá. Scrum mastrom môže byť ktokoľvek z tímu, kto má predpoklady dobrej práce s ľuďmi. Niekto kto je prirodzený líder, má prirodzenú autoritu a nie je ‘pes’.

Stolicky

A aj preto by ste v miestnosti, v ktorej robíte stand-up, mali mať niekoľko stoličiek pre návštevníkov. Tým by scrum master mal pred mítingom vysvetliť, že sú pozorovatelia bez možnosti zasahovania do stretnutia. Majú byť ticho. Hlas dostanú až po stretnutí.

Scrum master však nesmie zabudnúť na pripravu tím na to, že sa na nich budú pozerať aj iné oči.

Už len kvôli tej kvantovej fyzike spomínanej na začiatku…

Daily stand-up dobre IV – scrum master. A?

BatmanScrum master pečie denný chlieb tímu na dennom stretnutí.

Práve počas tohto stretnutia sa prejavujú schopnosti scrum mastra. Niečo o scrum mastershipe sa síce dozviete počas certifikačných a iných školení, no iba prax vás naučí.

Tím dobrého scrum mastra nemá problém so samoorganizáciou úloh, s komunikáciou a ani výrazné problémy so stavom úloh. Navyše v takom tíme je vysoká miera sebadisciplíny a zodpovednosti.

Disciplinovaný scrum master pred samotným daily mítingom :

  1. preverí stav nahlásených problémov a zaktualizuje ich zoznam, resp. časť tabule s problémami,
  2. skontroluje aktuálnosť stavu implementačných úloh na Kanban tabuli,
  3. skontroluje, či úlohy majú aktualizovaný zostávajúcu čas implementácie,
  4. skontroluje, či tok (flow) úloh je v poriadku,
  5. preverí, či členovia tímu sa snažia uzatvárať user stories a nie otvárať ďalšie úlohy,
  6. identifkuje novopridané úlohy, ktoré by moli zmeniť záväzok tímu daný na začiatku sprintu,
  7. preverí si vyťaženie členov tímu tak, aby ich naviedol pri samoorganizácii počas mítingu,
  8. overí dohodnuté WIP limity,
  9. spolu s produktovým vlastníkom preveria, či nie sú nutné zmeny v backlogu sprintu,
  10. spolu s inými scrum mastrami overí stav závislých prác, prípadne potreby iných tímov,
  11. preverí, či manažment nemá niečo dôležité z pohľadu organizácie, čo je potrebné odkomunikovať,
  12. skontroluje priebeh burn-down grafu a identifikuje otázne hodnoty, ktoré má s tímom prediskutovať,
  13. prípraví priestor pre denné stretnutie,
  14. pripraví nástroje (napr. zobrazí elektronickú kanban tabuľu),
  15. a  v neposlednom rade vymyslí ako otvorí stretnutie tak, aby sa tím pozitívne naladil.

Čo zmeníte na svojom scrum mastershipe zajtra?

Odkazy:

Daily stand-up dobre III. – kašlite na pravidlá

Aj keď agile v praxi často na prvý pohľad vyzerá chaoticky, dobré agilné tímy dbajú na pravidlá dohodnuté v tíme.

Pravidlá pre stand-up

Pravidlá pre denný stand-up by mali obsahovať:

  • miesto kde bude stand-up,
  • kedy sa stand-up začína,
  • ako dlho ho chceme mať,
  • kto sa ho zúčastní,
  • ako chceme aby prebiehal,
  • ako vieme kto môže rozprávať a kto má byť kurča,
  • ako viem, že som na rade,
  • ako sa mám pripraviť na stand-up,
  • čo ak nemôžem prísť,
  • ako viem kedy je koniec.

Čokoľvek sa ale dohodne netreba nechať iba v hlavách alebo emailoch. Pravidlá nebudú bolieť ak sa stanú zvykom.

Ten sa dá vytvoriť iba opakovaním. A tomu sa dá napomôcť aj vytlačenými pravidlami zavesenými či už v tímovej miestnosti, alebo na mieste kde stand-up robíte.

Aké informácie potrebujeme?

Pre standupy sa odporúča hľadanie odpovedí na tri otázky:

  • Na čom som včera pracoval?
  • Na čom budem robiť dnes?
  • Aké mám problémy?

Niekedy sa tímy dohodnú aj na ďalších otázkach:

  • Čo potrebujem od iného tímu?
  • Aké ďalšie porady, stretnutia, potrebujem zorganizovať?
  • Koľko ešte potrebujem času na dokončenie úloh?
  • Aké sú nové dôležité hlásené chyby?

Čo s porušením pravidiel

Denný stand-up začne zlyhávať v momente, keď tieto dohody sú porušované. Najčastejšie zlyhávame v dochvíľnosti.

Svedčí o tom aj načastejšia otázka scrum mastrov “Čo s ľuďmi, ktorí permanentne meškajú”?

Tímy, s ktorými som pracoval, sa dohodli na zaplatení pokuty 1€ ak prišli neskoro, 2€ ak neprišli a navyše to nikomu neoznámili vopred. Niektoré tímy si zaviedli “fyzické” tresty, jednoducho spraviť niečo, čo bude znamenať malú bolesť, napr. drepy.

A niektoré tímy idú na to kreatívne, napr. sa trochu zahanbiť pred tímom, ako sa trápim pri tanci.

Každopádne už zlyhanie v dodržiavaní takto jednoduchých pravidiel veľa svedčí o tom, nakoľko je tím tímom a nakoľko sú jeho členovia tímovými hráčmi. No vždy to skončí šťastne. Buď sa pravidlá začnú dodržiavať všetkými, alebo všetci bude znamenať menšiu skupinu, ktorá si rozumie podstatne viac.

Aké iné pravidlá máte vo vašom tíme?

 

Zdroje:

Daily stand-up dobre II. – najlepšie pred monitorom!

V prvom príspevku sme priblížili dôvody pre pravidelné stretnutia tímu. Ďalšou otázkou Scrum mastra by mal byť priestor, v ktorom stand-up robiť. Táto téma je samozrejme dôležitejšia pre tímy v jednej lokalite.

daily-standup1

Veľmi častou chybou je totiž stand-up v priestoroch tímu bez akejkoľvek zmeny. Jednoducho ľudia naďalej sedia za svojim počítačom a najväčší pohyb, ktorý spravia, je zdvihnutie hlavy od obrazovky v momente, kedy sa majú zapojiť. V momente, keď skončia, hlava im opäť padne smerom k monitoru a (vraj) počúvajú.

Stand-up tak nemá žiadnu dynamiku, nie je nič čo by vytváralo podmienky pre spoluprácu pri riešení spoločného problému tímu. Scrum mastri sa často čudujú, keď sa spýtam či je to dobrý spôsob. Nevidia veľa možností na zmenu. Veď odpovede na tri otázky prichádzajú a mítíng sa predsa konal.

Ako na to? Narušte komfortnú zónu. Aj preto sa odporúča, aby míting prebiehal pred fyzickou tabuľou.

Možno by vám pomohlo:

  • odísť od monitorov,
  • niekedy skutočne stačí aby sa ľudia iba postavili zo stoličky,
  • vytvoriť polkruh okolo tabule (hoci aj elektronickej, ale na jednej obrazovke!),
  • zabezpečiť aby tím nebol rušený či už telefónmi alebo chatom,
  • priestor by mal poskytnúť súkromie bez rušenia inými ľuďmi,
  • zároveň by ale ostatní mali mať možnosť si niekde sadnúť a pasívne sa zúčastniť stretnutia (iní scrum mastri, iné tímy, manažment),
  • ľudia mali mať tabuľu a papieriky na dohľad,
  • ľudia by si mali vidieť vzájomne do očí.

Práve táketo malé zmeny znamenajú väčšie predpoklady pre koncentráciu na tému stretnutia, aktívne počúvanie a prispievanie do diskusie.

A čo v prípade distribuovaného tímu? No tu od monitora asi neodídete, ale skúste si pred mítingom vypnúť email, skype, Facebook, Twitter a iné stránky, ktoré by vás mohli prípadne rušiť…

Ako to vyzerá na Vašom stand-up mítingu?

 

Daily standup dobre – I. Prečo?

Pôvodný článok na http://scrum.sk/index.php/daily-standup-dobre-cast-1-preco/

Denný stand-up je základnou ceremóniou v Scrum, ktorá je (chvalabohu) v slovenských dolinách aplikovaná často aj bez toho, aby bola oficiálne formalizovaná. Predovšetkým v malých firmách, kde ešte stále je rozhovor základom spolupráce.

Často však po niekoľkých mesiacoch zrazu tieto stretnutia nemajú “šťavu”. Mnoho ľudí nám pri koučingu namieta, že je to strata času. Prečo?

Pripravili sme preto pre Vás krátku sériu článkov o typických chybách, ktorými tímy samé brzdia svoju agilitu.

Čo je cieľom vášho standupu?

Najčastejším problémom je nepochopenie cieľa tohto stretnutia. Členovia tímu a scrum mastri ho považujú za stretnutie, na ktorom sa má reportovať stav projektu formou odpovedí na tri otázky: “Čo si spravil včera, čo budeš robiť dnes a aké máš problémy.”. Áno je pravda, že tieto otázky sú odporúčané. No nie je pravdou, že ich najväčší prínos je v reportingu.

Cieľom standupu je rozpoznať čo náš tím obmedzuje v dokončení našich zámerov dohodnutých počas plánovania, ku ktorým sme sa zaviazali.

Má to teda byť stretnutie viac o blízkej budúcnosti, než stretnutie o tom, čo sa stalo. Má to byť o tíme, nie o jednotlivcoch.

Tím sa má sústrediť na to ako dokončiť prácu, nie na to, ako je implementácia rozpracovaná. Agile je totiž založené na podpore dodávania funkčných výsledkov, ktoré ak nie sú dokončené, tak jednoducho nie sú použiteľné. Navyše trh je nevyspytateľný a zmeny sú dnes už konštantou.

Práve preto by ste ako tím mali byť pripravení aj počas sprintu dodať už dokončené user stories, resp. opravené chyby. Kedykoľvek.

 

Stavy v procese, stĺpce na Kanban tabuli

Článok je prebraný z http://scrum.sk/index.php/stavy-a-stlpce-na-kanban-tabuli/

Kanban tabuľa

Kanban tabuľa je skvelou pomôckou agilného tímu. Vizualizácia stavu úloh umožňuje tímu sa efektívne samoorganizovať a zároveň budovať dôveru v tíme aj mimo neho.

Každý stĺpec tabule označuje stav. A práve počet stĺpcov, teda stavov, je jednou z prvých otázok scrum mastrov počas prípravy tímu.

Odpoveď závisí od spôsobu akým ste sa rozhodli zavádzať Agile. Ste otvorení väčším zmenám? Alebo radšej opatrne a postupne?

Veľká zmena – maximalizácia minima

Pred niekoľkými mesiacmi sme začínali transformáciu v tíme, ktorý vytvára komplexný informačný systém už niekoľko rokov. V skutočnosti to boli štyri tímy so zložitejším procesom vývoja a teda aj s viacerými stavmi.

Ešte pred začatím transformácie sa však tím rozhodol maximálne zjednodušiť workflow tak, aby sa nemuseli vývojári zamýšľať kedy dať kartu do akého stavu. Pre svoju Kanban tabuľu preto zaviedli iba tri stavy.

Kanban simple workflow proces

Výhody sa ukázali okamžite:

  • Jednoznačný stav. Úlohu je nutné spraviť, alebo sa na nej pracuje, alebo je hotová.
  • Veľa kariet. Aj keď to znelo ako zvýšenie byrokracie, v skutočnosti sa ukázalo, že toto rozhodnutie viedlo tím k lepšej príprave počas plánovania. Požiadavky sú rozdelené na viaceré úlohy, ktoré jasnejšie popisujú prístup k riešeniu požiadavky.
  • Lepšie odhady – každá karta má svoj jednoznačný odhad. Je jasné, koľko sa na kartu plánuje a koľko času ešte zostáva. V predchádzajúcom workflow mal tím špeciálny stav označujúci čakanie. A práve v takomto stave karty ‘viseli’ , no tím nesledoval ich trvanie.
  • Organizácia tímu – každá  karta má svojho riešiteľa. Tak je možné lepšie rozdeliť úlohy medzi členov tímu.
  • Adresnosť problému – v prípade problému pri riešení úlohy je možné ľahko identifikovať, ktoré úlohy majú problém a zviditeľniť ich.

Pomalá zmena

Iný tím sa rozhodol, že zavedenie troch stavov nie je možné vzhľadom k ďalším firemným procesom, no identifikovali, že zjednodušenie je nutné. Otázne bolo ako zmeniť proces čo najmenej a zároveň najefektívnejšie.

Jedným z agilných princípov je pozorovanie a adaptácia. Preto sme v tíme začali s vizualizáciou aktuálneho workflow. Od momentu vzniku požiadavky až po dodanie výsledku používateľom. Táto technika sa volá Value Stream Mapping. Obrázok ilustruje príklad výrobnej fabriky.

Value Stream Mapping

Ďalším krokom bolo meranie trvania spracovania úloh v jednotlivých stavoch a pri presunoch medzi nimi. Keďže hlavným cieľom transformácie bolo skrátiť čas dodávky používateľom, zamerali sme na najdlhšie časti, ktoré stálo zato optimalizovať. Optimalizácia však neznamenala, že sa meranie skončilo. Každá lokálna optimalizácia má dopady na celkový proces, a preto je nutné pokračovať v meraní a ďalšej optimalizácii. Je to v podstate neustály proces.

Vizualizácia a meranie zároveň pomohli identifkovať stavy, v ktorých sa úlohy dlho ‘neohriali’. Úlohy boli cez nich iba presúvané. Tieto stavy boli z workflow odstránené čo zjednodušilo aj samotný proces.

Čo sa pýtať pri vytváraní Kanban tabule?

  • Prečo potrebujeme daný stav?
  • Kto potrebuje daný stav?
  • Ako dlho zostáva úloha v danom stave?
  • Má stav zmysel aj v prípade, že úloha nie je vývojová, ale napr.  napísanie dokumentu?
  • Potrebujete stav merať a vykazovať? Pre koho a prečo? Má to súvis s biznis hodnotou?
  • Čo je zbytočné?
  • Neexistujú iné workflow pre rôzne činnosti vývojového tímu? Napr. riešenie podpory, spracovanie kritických požiadaviek, požiadavky na súčinnosť.

Pr_duktívne plánovanie

Článok je prebraný z http://scrum.sk/index.php/produktivne_planovanie/

Počas niekoľkých posledných mesiacov sa mi naskytla príležitosť zúčastniť sa viacerých plánovacích stretnutí tímov s rôznou dobou nasadenia agile. Od úplných začiatočníkov až po starých harcovníkov, ktorí agile aplikujú už viac ako päť rokov.

Zaujalo ma na nich to, že:

  1. Efektivita plánovania nezávisí od trvania aplikácie agile.
  2. Tímy bez feedbacku upadajú do stereotypov a iba aplikujú procesy.
  3. Tímy sa zamerajú na zjednodušenie práce (rozumej lenivejú) a úplne zabúdajú na dôvôdy prečo sa plánuje.
  4. Výsledkom nie je plán, ktorému všetci rozumejú.
  5. Plán nie je plánom tímu, ale plánom jednotlivcov.
  6. Nesprávne pochopenie kedy a ako aplikovať story pointy a kedy hodiny.
  7. Nepochopenie, prečo vlastne odhadovať čas.
  8. Sprinty napriek plánovaniu aj tak nie sú ukončené načas a tím napriek tomu necíti zodpovednosť.

 

Možno predpokladáte, že tieto chyby mali tímy, ktoré začínali. No nebolo to tak. Tieto chyby sa objavili v skúsených tímoch. Vedené certifikovanými scrum mastrami.

 

A výsledok? Frustrácie manažmentu z nejasného termínu dodania, čo vedie k neustálym zmenám priorít. To prirodzene frustruje zákazníka aj tím. Navyše to prispieva k nemožnosti plánovania, práve kvôli častým zmenám. A začarovaný kruh je na svete. Plánovanie je frustrácia, ktorá bolí a preto ho chceme mať z krku. Preboha, veď za tie 4 hodiny sa dá toho tak veľa stihnúť naprogramovať.

Pravda starých otcov

Jeden z mojich prvých manažérov ma učil pravidlo brúsenia sekery. Jednoducho povedané, nedá sa len stínať stromy. To aj drevorubač sa musí zastaviť, vybrať si ten správny smer, vybrať stromy a nabrúsiť sekeru. Až potom rúbať stromy tak, aby vládal aj na ďalší deň. Ako je to v IT? (Lepší?) Vývojár chce vyvíjať. Všetko ostatné je balast. Sekera sa brúsi iba ojedinele.

No to brúsenie sekery má niečo v sebe…

Pravda starých agilistov

Agilné princípy ukazujú ako z tejto frustrácie von. Začať treba Agilným Manifestom, ktoré dáva do popredia funkčný softvér. Vytvorený v spolupráci tímu, zákazníka tak, aby bol pripravený na zmeny.

Účelom plánovania je robiť plánovanie, nie vytvárať plány.

Teda:

  • spoznať čo ideme dokončiť počas sprintu,
  • chceme začať s čistým stolom, začať novú iteráciu,
  • stanoviť si tímový záväzok k tomu, čo vieme dokončiť a koľko vieme dokončiť,
  • vytvoriť priestor pre spokojnosť. Spokojnosť tímu, klientov aj manažmentu.

Agenda

Často odpozorovanou chybou je úplne chýbajúca agenda stretnutia. Nepripravenosť z pohľadu organizácie času, postupu, priestorov a potrebného materiálu. Tím jednoducho prišiel na plánovanie a nechal sa unášať. V takýchto prípadoch začujete najčastejšie otázku ”Kedy vlastne máme obed?”. Áno, najčastejšie je práve táto prvou otázkou.

Čo je teda potrebné na plánovanie? Tu je niekoľko postrehov.

Čas

Predpokladajte  trvanie asi 2-4 hodiny podľa pripravenosti backlogu. Je to dlho? Radšej si sadnúť na dve hodiny a dohodnúť než potom zmätene hľadať spôsob riešenia niekoľko dní…

Pripravenosť

Dobrý scrum master pripraví miestnosť. Projektor, laptop, funkčné pripojenie k elektronickej tabuli. Telefón(y), web kamery ak je to potrebné.  Viditeľný časový rámec jednotlivých aktivít. Stopky alebo hodiny merajúce čas. A samozrejme pozve ľudí aj poslaním udalosti do kalendára. Dostatočne vopred. Najmenej 2 týždne vopred.

Dobrý produktový vlastník príde na plánovanie s pripravenými požiadavkami, ich prioritami. S odhadnutou biznis hodnotou, rizikom a MoSCoW. S akceptačnými kritériami. Vo forme, ktorú tím považuje za stav pripravený (definition of ready).

Dobré tímy už vedia čo v sprint backlogu je. Už si ho vopred každý preštudoval, napísal si pripomienky, resp. otázky a vie čo musí spraviť pre dokončenie požiadaviek. Má predpripravené konkrétne úlohy.

P1030082

V takomto prípade dokončí 10 ľudí plánovanie sprintu do 2 hodín určite. Postrehli ste ale tú disciplínu v príprave?

Kartičky

Budete potrebovať kartičky, kartičky, kartičky. A ešte raz kartičky. Zabudnite na notebooky. Plánovanie má byť tímovou prácou (manifesto).

S kartami sa ľahko manipuluje, ľahko sa prioritzuje, delí, vytvára nový obsah. Backlog sa jednoducho dá rozdeliť medzi viacero ľudí, zparalelniť prácu. Plánovanie tak bude intenzívne, efektívne a produktívne. Až keď skončíte plánovanie, až potom zadajte všetky karty do nástroja. Ak to urobíte všetci z tímu, tak zadať niekoľko desiatok kariet vám nezaberie viac ako pol hodinu.

P1050046

Aké je to s jedným laptopom a projektorom? Prduktívne. Všetci sedia okolo stola so založenými rukami a v tom lepšom prípade pozerajú na stenu. V bežnom prípade sa hrajú s telefónom pod stolom. Preto prduktívne.

Hmm, notebook

Ok, maximálne jeden, ak váš backlog je v elektronickom nástroji. Aby ste sa vedeli prehrabať v referenciách a ďalších potrebných informáciách. No prineste sprint backlog aj na kartičkách. Malá komplikácia, ktorá zvyšuje produktivitu.

Definícia Hotovo

Prineste si aj vašu definíciu Hotovo. Aby vám pomohla ako šablóna pri písaní úloh. Možno budete potrebovať viacero definícií. Pre user stories alebo chyby.

DoD

Rýchlosť a história

Aby ste sa vyhli zbytočnému deleniu požiadaviek na úlohy, do sprintu má produktový vlastník zaradiť iba toľko stories, koľko tím stihol dokončiť v predchádzajúcich sprintoch. Koľko story pointov bolo realné dokončených.

velocity

Kapacita

Zrátajte kapacitu tímu. Koľko dní budú členovia tímu v práci. Koľko hodín denne sa vedia venovať backlogu. Každú úlohu potom odhadnite v hodinách a nakoniec skontrolujte, či ich stihnete dokončiť.

Aby ste si vedeli overiť, či náhodou ste si nenaplánovali príliš veľa práce na sprint, ktorú nemáte možnosť stihnúť.

Kapacita

A výsledok plánovania?

Výsledkom dobrého plánovania sú:

  • prioritizované user stories,
  • dohodnuté akceptačné kritériá,
  • identifikované riziká,
  • rozdelené user stories na implementačné úlohy podľa definície hotovo a podľa charakteru požiadaviek,
  • odhadnutý čas imlementácie úloh,
  • overená možnosť dokončenia sprint backlogu podľa kapacity tímu a podľa dostupnosti jednotlivých členov tímu,
  • pocit, že vieme takýto sprint dokončiť.

Pocit je často pravdivejší než akákoľvek matematika….

Veľa úspechov pri plánovaní ďalších sprintov, ktoré sa vám podarí dokončiť.