Jaké jsou agilní nástroje? (Scrum, Lean principy…)
Agilita je často tak odlišná od našich dosavadních zkušeností, že máme tendenci vzít např. Scrum a ve firmě jen přejmenovat role, upravit meetingy, začít věcem říkat jinak a čekat, že to bude fungovat. Což se samozřejmě nestane.
Na druhou stranu je pro většinu z nás velice těžké si poslechnout abstraktní myšlenky a najednou vědět, co máme dělat na praktické úrovni v každodenním životě bez podpory někoho, kdo už tou cestou prošel.
Scrum je příklad rovnováhy mezi oběma extrémy. Je to framework (rámec), který umožňuje lidem bez předchozí zkušenosti začít fungovat novým způsobem s jen několika konkrétními předpisy toho, co, jak, proč a jak často se má dělat. U frameworků se mi líbí jejich mechanismus – posadí vás do nového fungování, vystaví jiným vzorcům přemýšlení, vyhodnocování a práce. Časem se potom dostanou nové způsoby a principy do krve.
(Diagram, jak funguje Scrum, zdroj srcum.org)
Scrum jako takový je jednou z možností, jak jako tým pracovat na malých kouscích produktu, s neustálým zkoušením a zpětnou vazbou (jak od uživatelů, tak navzájem sami od sebe), díky čemu se můžeme kontinuálně krok za krokem učit a zlepšovat. Umožňuje doručovat hodnotné výsledky postupně a na základě spolupráce.
Dává praktické minimum (ani moc, ani málo) struktury pro to, abychom mohli díky používání technik začlenit agilní principy do toho, jak pracujeme. Zároveň obsahuje vhodné postupy, jak to všechno optimalizovat pro naše specifické podmínky.
Dalšími známými frameworky jsou například XP (Extreme Programming), Kanban a Scrumban. Hodí se pro různé podmínky týmů. Např. supportní týmy, odbouchávající jeden ticket za druhým, se budou cítit daleko lépe např. s Kanbanem. Vedle toho Scrum si lépe sedne s týmy ve vývoji, které s agilitou začínají. Organizace, které jsou dál se často těmto frameworkům vzdalují, protože díky kultuře sebe-zlepšování jsou schopné hledat nové směry a rychle se adaptovat. Tyto i další frameworky se liší v tom, jak moc definují proces, role, aktivity, atd.
Tady je důležité zmínit, že čím méně pravidel nám rámec definuje, tím důležitější je vnitřní disciplína a kvalita firemní kultury. Často se lze setkat se situací, kdy Scrum nefungoval, protože “měl příliš procesů” a proto tým přešel na Kanban bez toho, že by se vyřešily skutečné příčiny problémů.
Jaké další frameworky můžeme využít?
Když už jsme jako organizace dál (na denní bázi pracujeme s uživatelskou zpětnou vazbou, vývoj a doručování inkrementů produktu je konzistentní, děláme časté experimenty pro lepší fungování, týmy jsou do velké míry autonomní a všichni ve firmě znají důvod “proč děláme XYZ”), celkem přirozeně začneme tíhnout k experimentům s např. DevOps, Dual track Agilitou a implementací agility i do dalších oddělení. S růstem firmy a škálováním nás potom budou zajímat např. frameworky SAFe, unFIX, LeSS.
Souvisí nějak Lean principy se zmíněnými rámcovými postupy?
Lean principy prostupují všemi frameworky. Nemyslím tu Lean Six Sigma, ale “štíhlou výrobu”, historicky pocházející z Japonska z Toyoty. Je to přístup, který klade důraz na efektivitu, snižování odpadu a neustálé zlepšování.
Začínáme tím, že pochopíme, co zákazník potřebuje, a zaměřujeme se na to, co nejefektivněji to doručit. Identifikujeme a odstraňujeme vše, co procesu doručování nepřidává hodnotu. Vždy hledáme způsoby, jak celý proces zlepšit a zefektivnit. Chováme se ke každému s respektem a zapojujeme je do řešení problémů a rozhodování. Pro úkoly používáme "pull" metodu, kdy “netlačíme papír do tiskárny, aby tiskla rychleji”. Sama si vezme hned, když má kapacitu. Celkově lze říci, že štíhlá výroba je způsob, jak vytvořit kulturu neustálého zlepšování a eliminace neefektivit.
Je důležité vnímat rozdíl mezi nástroji, metodikami a principy, protože při špatném pochopení nejspíš dostaneme odlišný výsledek od toho, co jsme chtěli. Je to podobě jako na obrázku níže - to, co je vidět nejvíc jsou povrchní jevy, ovšem proč a jak fungují - to jsou hlubší věci. Dobrá implementace agility spojuje obě úrovně - procesní změny, stojící na solidních základech v principech fungování.
A pokud bychom chtěli jít do ještě větších detailů, tak do všech těchto rámců se pak bokem v různé míře a v různou dobu začleňují praktiky, které dávají smysl vždycky. Jde například o TDD (Test Driven Development), BDD (Behavioral Driven Development), automatizace, DevOps, iterativní a inkrementální práce, retrospektivy, agilní roadmapy, UX (User Experience), Design Thinking, Product Discovery, hypotézy, validace a experimenty, NoEstimates, architektura vhodná pro agilní firmu, Lean Startup, osobní rozvoj a hodnocení lidí, Hiring podle mindsetu, ne čistě dovedností, firemní a produktová vize, Leadership, feedback, komunikace, autonomie a samořízení týmů, typologie lidí, kmenové vůdcovství, atd.
Zdroj: Libor Zakopal
Jaké jsou klíčové principy ve vývojových projektech?
Na obecné úrovni existují čtyři hodnoty agilního manifesta a jeho dvanáct principů. Osobně bych začal s tímto postupem:
Klíčové je podle mého názoru zažehnout mechanismus zpětné vazby a vzájemné otevřené komunikace - pravidelně se zastavit a bavit se o tom, jak dobře se nám daří dělat to, co děláme pro zákazníky a zároveň jak dobře se nám funguje uvnitř týmu. A na základě toho dělat neustále konkrétní malé změny, které řeší odhalené problémy. Jakmile totiž začnete hledat možnosti pro zlepšení, začne vás to přirozeně vést na otázky a témata související se vším ostatním, o čem je agilita.
S tím pak souvisí ochota experimentovat, zkoušet a učit se z neúspěchů. A vytvářet takové prostředí, ve kterém se lidi nebojí neúspěchů. Pak začne být přirozené, že budete chtít více naslouchat uživatelům, jít k nim blíže a řešit s nimi jejich potřeby. A velice důležité je změnit přístup k plánování tak, abyste prioritizovali to, co přináší největší hodnotu zákazníkům. Protože jak moc je užitečné, že stíháte milestony a doručujete nové funkcionality produktu, když to lidé nepoužívají, neumí použít, nebo to neřeší jejich potřeby?
Jak podle těchto principů správně plánovat a prioritizovat úkoly?
Plánování děláme s pochopením, že s dnešními znalostmi a zkušenostmi si myslíme, že v tomhle pořadí bude nejlepší vyvíjet produkt, ovšem je nám jasné, že časem se ukáží nové vhledy. Proto se v takových situacích nebojíme upravit roadmapu a neustále prioritizujeme to, co přináší hodnotu uživatelům, se kterými se velmi často bavíme.
Velice důležitou oporou je v tuto chvíli i firemní a produktová vize - máme dlouhodobý směr, který dává smysl tomu, co děláme. Do plánování se potom promítá tento dlouhodobý směr i v kombinaci se zpětnou vazbou od uživatelů a vhledem od našich týmů, které produkt vyvíjí.
Konkrétní projekty a úkoly pak vychází z rozpadu velkých celků z roadmapy, u kterých řešíme, z jakých smysluplných částí se to skládá a co je to nejdůležitější, co má hodnotu a jak bychom to byli schopni udělat. Konkrétní nástroj, jaký v takových diskuzích použít, může být například Story mapping, Grooming a estimace.
Jaké jsou best practices, abychom zabránili ztrátě při vývoji produktu, služby?
Konkrétní rada hodně závisí na stavu, v jakém aktuálně fungujete. Prvním krokem je začít si ztrát všímat a pak hledat příčiny a následně kroky, které je aspoň trochu zlepší. Příkladem mohou být různé chyby a defekty, přeskakování mezi úkoly, přesouvání věcí mezi lidmi, týmy, čekání a prostoje, zbytečné funkcionality a složité procesy, chybějící dovednosti apod.
Obecně velice pomáhá neustále myslet na to, co má největší hodnotu pro uživatele. To platí i pro interní stakeholdery ve firmě - když třeba chystáte reporty pro nadřízené, řešíte teambuildingy, hledáte školení, atd. Když se zajímáte o potřeby lidí, pro které to děláte, jednodušeji se doberete tomu, na čem pracovat, takže potom nepálíte čas (svůj i týmů) na věcech, které se neprojeví na jejich spokojenosti, posunutí dovedností nebo finančních výsledcích firmy.
Zároveň ztrátám zabráníte tak, že neustále hledáte možnosti pro zlepšování a krůček po krůčku překážky odbouráváte. Tady je dobré hledat vždycky ten největší klacek na celé cestě, vyřešit ho a pak hledat další největší klacek. Abyste vždy zlepšovali celek, ne jen jednu malou část.
Setkal jste se při zavádění agilního principu u nějaké firmy s neúspěchem, a pokud ano, v jakém smyslu a jaké byly příčiny?
V určitém ohledu ano, ale nechci zacházet příliš do detailů. Ve zkratce je to o leaderovi, který vytváří svým fungováním strop tomu, kam se může firemní kultura a hodnoty posunout a zlepšit. Jsou to velice důležité oblasti provázející agilní transformaci.
V tomto případě bylo velice náročné udělat změny v organizaci, protože dotyčný si neuvědomoval, že tím “špuntem” je to, jak funguje on jako leader (v pravé podstatě tohoto slova) - všichni ostatní kopírují jeho chování, přístup, dobré i záporné stránky.
Čeho si musí být firmy vědomé, pokud uvažují o agilitě?
Musí si být jednoznačně vědomé toho, proč to dělají a co očekávají od transformace. Chceme například zlepšit rychlost vývoje? Ok, podle toho uzpůsobíme formu i rozsah. Chceme být schopni se rychleji adaptovat na změny na úrovni produktů? Potom bude cesta trochu jiná. Anebo chceme, aby opravdu celá firma fungovala agilně? Poté potřebujeme začít primárně ne u zaměstnanců, ale naopak u vedení, protože bez toho bude výsledek jen částečný a možná jen dočasný. Často je to o tom, že chceme změnu, ale nechceme se sami měnit.
Které části kurzu jsou z vašeho pohledu nejdůležitější?
U individuálních konzultací a dlouhodobé spolupráci lze začít konkrétním problémem, který klienta přivádí a na něj pak použít konkrétní řešení spolu s rozšiřováním obzorů. Aby se jednak zlepšila daná situace a taky jsme budovali základy pro navazující dlouhodobou změnu. Jednorázová školení jsou pak důležitá jako celek, protože se skládají z vícero navazujících součástí.
Osobně bych doporučil vždy kontaktovat lektora před objednáním kurzu a probrat potřeby, kontext, co od toho očekáváte i cílovou skupinu a během diskuze vyjasnit rozsah. Každý dobrý lektor funguje nějak takto, protože to má silný dopad na výsledek u klienta. Občas je samozřejmě limitovaný budget, nebo čas lidí. Ale i v takových případech se díky diskuzi dá dobrat jádru toho, co klientovi v danou chvíli nejvíc pomůže.
Jak probíhá příprava kurzů a plánování s jednotlivými klienty?
Snažím se klienty učit chytat ryby, ne jen jim je dávat. Nebo jinak - mojí snahou je, aby se vraceli ne kvůli závislosti na mě a tom, co dělám, ale proto, že jim spolupráce pomáhá a otevírá nové cesty. Proto školení i kurzy připravuji ve spolupráci s klientem, aby vždy pokryly jak širší kontext, tak konkrétní situace, které řeší. A ideálně i praktickou zkušenost.
Pak probereme časový rámec, a co se zhruba do něj dokáže vejít, aby byly očekávání o výsledku realistické. Typicky se bavíme o půl až dvoudenních školeních, nebo i dlouhodobé spolupráci.
Pro veřejné kurzy je struktura jednodušší, méně personalizovaná a také rozsah bývá omezený poptávkou a formou. Převažuje zájem o půl až jednodenní kurzy. A zároveň je častá online forma, která interakce lehce zpomaluje, takže s tím taky musíme počítat.
Pracujete s klienty i jako konzultant?
Ano, vedle kurzů pak také pracuji s lidmi individuálně a dlouhodobě. V této podobě vnímám největší hodnotu pro klienta, protože si nepotřebujete odnést celou lékárnu najednou a pak doma po čase vzpomínat, co se na co používá. Máte někoho rychle k dispozici, kdo vám dokáže pomoct vyřešit konkrétní překážku, dát principy a nástroje, abyste to příště zvládli sami.
Jak pracujete se studijními materiály v rámci kurzů?
Kurzy agility, ale i jiných soft skills, se snažím vést osobně a víc prožitkově se spoustou poznámek, které vznikají za běhu, takže každý vidí příběh, jak se odvíjí. Online forma je v tomto malinko náročnější.
Na jednorázové kurzy není potřeba žádná předchozí příprava od účastníků, takže máme hlavní myšlenky ve formě prezentací, kterou všichni pak dostávají, a důležitým bodům se věnuji do větších detailů naživo. Často děláme také nahrávky, aby se k tématu účastníci mohli vrátit. A má osobní motivace je i proto, aby měli příležitost si něco odnést i ti kolegové, kteří se nemohli zúčastnit živého školení.
Jaké znalosti by měli před účastí na kurzu účastníci mít a které pracovní pozice je navštěvují?
Například úvodní kurz o agilitě je bez vstupních omezení (znalosti, obor, atd..) a je cílený na kohokoliv, kdo se o tomto tématu chce dozvědět více, pochopit na čem agilita stojí a jak ji celou, nebo aspoň části použít u sebe. Ať už jste z firmy, OSVČ, státní správy, výzkumné organizace, atd. Nejčastěji se asi potkáváme s manažery, leadery, členy vývojových týmů, HR a produkťáky.
Co se pro vás jako lektora změnilo s přechodem na hybridní formu školení?
Jsem člověk, který rád pomaluje celou zeď obrázky, souvislostmi a diagramy, takže je online forma občas trochu jako mít svázané ruce (smích). Proto stále tíhnu k osobní interakci, která je nejefektivnější formou. Online forma je výzvou obzvlášť u větších skupin, protože nemůžete skoro vůbec „číst publikum”, jestli to vysvětlujete dobře, otazníky v očích lidí nebo pochopení, atd. Technické problémy a prodlevy způsobené formátem jsou kapitolou samou pro sebe. Hybridní forma, kdy před vámi část lidí sedí a někdo je online, je asi tou nejnáročnější variantou - máte všechny nevýhody onlinu a navíc k tomu musíte balancovat, jak dělíte pozornost.
Kterou z částí školení máte nejraději?
Nejvíce energie mi dává interakce s lidmi a těším se na ni. Takže v tomto smyslu mě baví celé školení. Baví mě ty části, kdy se všichni hodně ptají, diskutují a je vidět, že díky tomu chápou. Ale popravdě mám asi nejraději konec, při kterém na účastnících vidím, že si odnáší něco užitečného.
Agilním přístupem se dá dosáhnout opravdové změny - 1. část
Libor Zakopal je kouč agility a také nezávislý lektor ve společnosti ICT Pro. Svou prací pomáhá leaderům, Scrum Masterům i týmům ve firmách s vyřešením efektivnějšího fungování, doručování výsledků a dosahování cílů s využitím organizační kultury jako strategického nástroje. Jde na to přes řešení skutečných příčin, rozšiřování toolboxu a posouvání dovedností pomocí aplikování principů Agility, Leanu a Leadershipu s kořením soft skills a produktového managementu.