Agilní přístupy vývoje produktu a řízení projektuJan Doležal
Proč jsem si tuto knihu vybral?
Tuto knihu jsem si vybral po zákaznické schůzce s Janem Doležalem kde jsme řešili právě agilní řízení. Něco jsem už o agilu slyšel a četl, hlavně od autorky Zuzi Šochové a tak mne zajímalo, jak toto téma zpracuje jiný český autor, který se dříve spíše orientoval na projektové řízení obecně
Jaké jsem si odnesl myšlenky?
Lean je filozofií zaměřenou na člověka a má dva pilíře: respekt k lidem a neustálé zlepšování. Lean se snaží dělat pouze to, za co je zákazník ochoten platit (tedy co má hodnotu) a minimalizovat věci, za které nikdo platit nechce (plýtvání).
proces leanu (cyklus):
určit hodnotu - v čem spočívá hodnota z pohledu zákazníka?
prozkoumat tok hodnoty - které aktivity a činnosti skutečně přispívají k vytvoření této hodnoty? (vše co ne = plýtvání)
vytvořit tok - snaha o hladký průběh všech činností vedoucí k hodnotě, bez plýtvání
založit tah -
usilovat o dokonalost
tříhlavá saň leanu:
hlavním cílem leanu je zeštíhlovní procesů. Aby toto zeštíhlovní bylo efektivnější definovala tzv. tříhlavá saň (3M):
muda - plýtvání, marnost, zbytečnost a to v těchto odvětví - transport, zbytečné pohyby, čekání, nadbytečné zpracování, vady a opravování, zásoby, nadprodukce, nevyužití potenciálu
mura - nerovnoměrnost, nevyváženost, nedostatek jednotnosti, nepřirozenost
Agilní manifest, který se skládá z úvodních rozporů a principů.
Rozpory: v položkách vpravo je hodnota, ale více si vážíme položek vlevo
Jednotlivci a interakce x procesy a nástroj
Fungující produkt x komplexní dokumentace
Spolupráce se zákazníkem x vyjednávání o smlouvě
Reakce na změnu x dodržení plánu
Principy:
Spokojenost zákazníků díky včasným a průběžným dodávkám hodnoty
Vítáme měnící se požadavky, a to i v pozdním vývoji
Doručujeme fungující často (spíše týdny než měsíce)
Úzká každodenní spolupráce mezi byznysem a vývojáři
Projekty jsou postaveny na motivovaných jednotlivcích, kteýrm je třeba důvěřovat
Konverzace tváří v tvář je nejlepší formou komunikace (ideálně tým na jednom místě
Fungující produkt je primární měřítko pokroku.
Udržitelný vývoj, schopný udržovat stálé tempo
Neustálá pozornost věnovaná technické dokonalosti a dobrému designu
Jednoduchost - umění co nejvíce práce vůbec nedělat - je zásadní
Nejlepší architektury, požadavky a návrhy vycházejí ze samoorganizujících se týmů.
Tým pravidelně uvažuje o tom, jak se stát efektivnějším a tomu se přizpůsobí.
Tým je základní jednotkou pro agile a jeho procesy. Největší překážkou při tvorbě týmu zdá se býti fáze stormingu, kde se nejvíce ukazují odlišnosti a nespokojenosti jedinců avšak jeho správné zvládnutí je klíčové. A jak jej správně zvládnout? facilitace - v tuto fázi je třeba, aby se tým naučil starat se sám o své problémy. Toho se nedosáhne jinak, než že členové budou vedeni k tomu, aby hledali řešení na své problémy společně a sami = povzbudit v sebeřínosti.
Základní jednotkou týmu je jedinec. Aby jedinec správně fungoval, musí být motivován. Mimo maslowovu pyramidu potřeb, která velmi dobře mapuje, co každý potřebuje. Je třeba v každém pěstovat a respektovat pocity: (Pink)
Autonomie → dělat si věci po svém, svým způsobem
Mistrovství → nutkání být lepší a lepší v něčem, na čem opravdu záleží (flow)
Smysl → touha dělat to co děláme, ve službách něčeho většího než jsme my sami
Pokud sjednotíme všechny novodobé přístupy, zjistíme, že se v nich opakuje vzorec, který je pro všechny přístupy v dnešní době klíčový a důležitý:
Znalost, kdo je náš zákazník, co je pro něj hodnotou, kterou vytváříme a jak se tato hodnota vytváří (tok hodnoty)
Dostatek času a prostoru, aby mohl vzniknout skutečný tým, tedy spíše stabilní, cross-functional týmy, navázané na daný tok hodnoty nebo jeho jasně danou část
důvěra a vzájemný respekt
autonomie v tom, jak se dosahuje výsledku
Dostatečně častá a reálná zpětná vazba od příjemců naší práce
Tvůrčí retrospektivy
Kultura organizace, která umožňuje lidem rozvinout jejich potenciál
Vize produktu je klíčová pro úspěšné vytvoření. Abychom se mohli bavit o kvalitním zpracování měli bychom si odpovědět na tyto otázky:
Kdo si produkt koupí? Kdo je tedy cílovou skupinou?
Které potřeby daných zákazníků produkt naplní?
Které vlastnosti produktu jsou kriticky důležité pro naplnění vybraných potřeb a tedy důležitých pro úspěch produktu?
Jak si produkt stojí při porovnání s existujícími produkty? Které jedinečné prvky produktu budou důvodem ke koupi? V čem se liší?
Kolik času a peněz (čld, sprintů…. zdrojů) vyčleníme na vývoj a uvedení produktu na trh?
elevator pitch
Pokud svému produktu opravdu věříme je nutné ho předvést zákazníkovi. Trh jedině může podat relevantní zpětnou vazbu, která ukáže zda náš produkt uspěje či selže. K tomu, aby naše vize byla dobře a rychle prezentovatelná slouží tzv. elevator pitch. K EP může posloužit elevator statement, který se skládá z věty:
Pro Všechny zaměstnance
Kteří spolupracují s naší firmou a musí spolu komunikovat a kooperovat
Produkt firmappka
Je řešení
Který/é umožňuje mít všechny informace na jednom místě
Na rozdíl od emailu, telefonu, SMS, webu apod.
náš produkt umožní komunikovat rychle a využít uspořený čas na cokoliv jiného
Formulace User story:
Jako (uživatel/ role/ persona)
chci (funkcionalitu)
abych dostal (hodnotu/ busisness value)
Strukturalizace US
úrovně:Epic (román) → super user story (kapitola) → user story (situace)
Hodnoty Scrumu: oddanost, zaměření, otevřenost, respekt a odvaha
Scrum master
Odpovědnosti:
zavedení scrumu dle Scrum Guide a to tak, že pomáhá každému pochopit jeho teorii i praxi a to jak v týmu, tak i organizaci
efektivní samoorganizované scrum týmy mocí reflexe v průběhu sprintu, retrospektivě, koučováním členů, facilitaci událostí…
Týmu slouží k:
Koučuje členy týmu v oblasti sebeřízení a multifunkčnosti
pomáhá týmu zaměřit se na vytvýření přírůstků (incrementů) vysoké hodnoty, které splňují DODone
způsobuje odstraňování překážek v pokroku týmu (servant-leadership)
zajišťuje scrum události, aby byly: pozitivní, produktivní a drželi se časového rámce
POčku slouží k:
Najití technik pro efektivní definice cíle produktu produktu a správu backlogu
Pochopit potřebu jasných a a stručných položek produktového backlogu
Zavádět empirické plánování produktu vhodné v komplexním prostředí
facilituje spolupráci zainteresovaných stran dle požadavků a potřeb
Organizaci slouží k:
Vede, školí koučuje org. na její cestě k adaptaci
plánuje a radí při zavádění scrumu v org.
pomáhá zainteresovaným stranám porozumět a ustanovit empirický přístup pro komplexní práci
Product backlog (115)
Definition of done, aneb definice, kdy je hotovo
Přírůstek (inkrement) vznikne v okamžiku, kdy položka produktového backlogu splňuje DOD. Tato definice vnáší do práce transparentnost. Až poté, co je inkrement hotový a v souladu s DOD, tak může být představen v review. Ideální stave je, že pokud položka splňuje DOD, tak už na ni nikdo nemusí sáhnout. Minimální DOD bude zřejmě zahrnovat:
vytvořeno
otestováno a opraveno
schváleno vlastníkem produktu
otestováno a opravedna integrace s ostatními přírůstky
vytvořena dokumnetace úrovně XYZ
uloženo v uložišti X a pracovní verze odstraněny
prošlo sprint review bez připomínek
Rozšíření:
Soulad s architekturou
soulad s UX
uživatelská dokumentace
informace pro obchodníky
atd…
Události a návaznosti ve SCRUMu
Pokud je v organizaci více týmu je potřeba, aby si týmy rozuměly. K tomu bude vhodné si pohlídat minimálně tyto zásady:
všechny týmy jsou samoorganizované a cross-functional.
Týmy jsou seskupeny kolem definovaných end-to-end toků honoty
jsme shopni položky z globálního produktu štěpit dna co nejmenší možné and-to-end a customer centric přírůstky, které lze vytvořit nezávisle na sobě.
Týmy jsou dostatečně vyspělé a zvládají technickou excelenci, jako je v případě vývoje softwaru průběžná integrace (continuous integration), automatizované, regresní testování atd. v jiných oborech pak obdobně tak, aby byla jistota,že přírůstky bude možné navzájem kombinovat a použít.
každý tým má na konci sprintu potenciálně nasaditelný přírůstek (můžete získat zpětnou vazbu DoDone je dostatečně pokročilá a sdílená všemi týmy).
Jsme schopni koordinace a zpětné vazby i mezi týmy, na úrovni celé organizace.
SAFe (Scaled agile framework)
jedná se o model implemantece agilních a lean přístupů do velkých korporací, které shlukují několik týmu k jedné práci. Ačkoliv stále zachovává určitou dávku hierarchie, stále se procesy opírají přes toko hodnoty pro zákazníka.
Design thinking:
Jde o myšlenku, strategii, metodu a způsob, jak vidět svět. Probíhá v tzv. double diamond, protože využívá minimálně dvě smyčky divergentního a konvergentního myšlení. FAktory, které by měly být v souladu: potřeby člověka, technologické možnosti, ekonomická smysluplnost.
Temný scrum:
Jde o neobratnou agilní transformaci, kde se organizace zaměřuje na:
procesy,
nástroje
dodávky,
odhady
jednotlivce
bonusy
individuální výkonnostní KPI atd.
udělat toho co nejvíce, za co nejkratší dobu za co nejméně peněz)
Pokud jsme v temném scrumu tak se projeví:
slepě se následují ceremonie scrumu, ale přistupuje se k nim waterfall mindesetem
peníze a bonusy jsou tabu
Na review nechodí nikdo z přímých uživatelů/ reprezentantů protože je to: nezajímá; nemají čas; koná se to příliš často; nevědí, pro by tam měli být; vše se přece vyřešilo při zadání; oni do toho přece nemají co mluvit a nikdo je nepozval.
Review je pro uživatele zmatené a výstupy nerelevantní
review, je spíše pro tým nebo pro člověk s titulem PO, který s týmem nemá žádný vztah
Nebo je rewiev jako kontrolní den pro vyšší management
zákazník na rewiev není přítomný je zde obava od managementu, že by mohl vidět pod pokličku a toho se děsí.
retro je ztráta času a po několika opakováních, kdy nikoho nic nenapadlo, byla zrušena
změní se pouze názvosloví, přístup zůstává stejný
managementu to přijde neekonomické
Abychom z tohoto vyklouzly je třeba se přeorientovat na správný scrum, který se zaměřuje na:
principy,
hodnoty,
kulturu
vytváření hodnoty,
smysl,
zákazníka
týmy, atd…
Jak začít?
sebeorganizace - podporovat týmy, že o věcech mohou rozhodovat sami. Pomůže, když budeme popisovat svou: vizi, cíl, směr, kam se všichni ubíráme a jak tomu pomůže sebeorganizace
retrospektiva - zamřená na: jak věci děláme a jak je můžeme zlepšit.
transparentnost - podpořit sdílení informací napříč organizací bez zábran, pomůže vizualizace
Shu-Ha-Ri (učeň, tovaryš, mistr řemesla)
Shu = následuj pravidla - drilovat pravidla a držet se jich, tak aby úkony byly prováděny správně a v plné kvalitě. Vyžaduje to trpělivost. Lze začít např. u time-boxu na daily scrum (15´)
Ha = porušuj pravidla - pokud už pravidla máme v malíku a již dle nich žijeme, můžeme začít experimentovat. Stale se však držíme rámce. Přidání otázky do daily scrumu
Ri = buď pravidlem - vytváříme si vlastní pravidla a třeba i nové formy. V této fázi už jsme na expertní úrovni základních pravidel a především filozofie
Jak na agil transformaci?
Začínáme se orientovat na tyto rysy:
zaměření na hodnotu pro zákazníka
identifikace a optimalizace toku hodnoty a omezení plýtvání
řešení komplexní situace adekvátními přístupy
co nejplošší struktura
vhodně formulovaný a stanovený smysl činnosti, existence, který poskytuje lidem smysl jejich konání
Umožňuje motivaci lidí pomocí dodávky: autonomie, mistrovství a smyslu
Management vytváří prostředí pro práci samoorganizovaných týmu a jedinců
vysoká úroveň kultury: důvěra, otevřenost, reálně zvolené hodnoty a chyba není problémem, ale příležitost k poučení
Univerzální agilní principy:
primární zájem je hodnota pro zákazníka a zákazník samotný
spolupráce a co nejčastější komunikace na osobní bází
proměnlivost a změny jako příležitost k dodávce lepší hodnoty
rychlá zpětná vazba a transparentnost
udržitelnost a stabilita je vědomě řízena
jen skutečný tým podá excelentní výkon
o všem je třeba uvažovat systémově a ve vazbách
Co a jak využiji v praxi?
Lze využít double dimont, pro řízení TS? - Co o tématu víme? <> Jak téma společně chápem?; Jak lze východiska implementovat? <> jak je implementujeme?
Vzít univerzální agilní principy a jak je podpořit v komunitě TAP?
Reflexe, jak jsme na tom v agilní transformaci: komunita, týmy, jednotlivci?
Může být model Shu-ha-ri - konceptem pro studium v TAP?/ jak by mohl?
Komu bych knihu doporučil?
Tato kniha je skvělým úvodem do agilního světa, sice nejde úplně do hloubky jednotlivých praktik, avšak co se týče smysl a rozhledu jde o rozcestník, který pomůže v orientaci o Agilu. Tuto knihu bych doporučil všem co několikrát slyšeli o agilu, ale vlastně si tak trochu lámou hlavu nad tím, co to tedy je a jak toho docílit?