Dubnová Agilia

Protože Agilii pořádáme už déle než rok, rozhodla jsem se, že se tentokrát pokusím změnit formát této akce a udělat jí zajímavější a jinou. Dubnová Agilia bude organizována formou ‘Lighting talks‘, tedy krátkých 10min příspěvků jednotlivých účastníků – včetně diskuze. Tématem může být cokoliv, agilní praktiky, zkušenosti, nové metody, doporučení,… . Je to jen na Vás.

Kdy: Středa 14. Dubna v 18:30 / Wednesday April 14th, 6:30pm
Místo: Al Cafetero, Blanická 24, Praha 2.

Program:
1. Michal Aichinger – Od Scrumishe pro maintanence ke Kanbanu/ From Scrumishe for maintanance to Kanban [Seznam]
2. Eduard Kunce – Koucink a agilni metody / Agile and Coaching [CA]
3. Lubos Racansky – Osm sprintů produktového vývoje / 8 Sprints of Product Development [AspectWorks]
4. Igor Kopriva – Od waterfallu ke Scrumu / From Waterfall to Scrum [CA]
5. Rudolf Kutina – Flexible IT in Agile world – Dynamic Data Centers

Přijďte se podívat a zapojte se do diskuze.

Agilní kultura

Jak jsem již psala minule, agile není proces, ale filozofie. A agile také znamená změnu. A to obzvláště pokud uvažujete o jeho zavedení v hierarchicky řízené procesní firmě.
Organizace a firemní kultura, do které se bude agile jen těžko prosazovat:

  • Na vše existuje striktně definovaný proces
  • Hierarchická struktura řízení
  • Předpis je důležitější než dohoda mezi lidmi
  • Individualismus místo spolupráce

Naopak hodnoty definované agilní firemní kulturou budou obsahovat:

  • Spolupráce
  • Důvěra
  • Samoorganizovaný tým (self-oragnized team)
  • Komunikace
  • Sdílení zkušeností a znalostí

Agilní kultura by se dala popsat ještě mnoha výrazy, ale tyhle patří k nejdůležitějším. Zavádíte-li agilní metody, měli byste v první řadě rozumět firemní kultuře a být si vědomi toho, že vhodné kultura změny podpoří, direktivní kultura naopak v podstatě znemožní jejich nasazení.
Co tedy musí být splněno, aby mělo smysl se do zavádění agilních metod pouštět?

  • Věřit v agilní firemní kulturu
  • Přijmout změnu a překonat odpor k ní
  • Věřit v potenciál a schopnosti lidí
  • Být ochoten přijmout riziko
  • Mít TOUHU zkusit agilní metody

Co je to agile?

Agilní metody vyžadují nejen aktivní zapojení jednotlivých členů týmu, ale i pochopení těch co agile zavádějí, že agile není jen soubor praktik ale celková filosofie. Jednotlivé praktiky se vzájemně podporují a jen jejich kombinací vznikne synergický efekt.

Jak vůbec poznáme, že náš proces je agilní? Nebo spíš jak poznáme, že není?

Používáte Agile?

Zákazník (co by nemělo nastat externě):

  • Se zákazníkem komunikuje jen vybraný člen týmu (obvykle project manager, account manager)
  • Zákazníkovi se prezentuje až hotový produkt
  • Smlouvou definované požadavky se nemění
  • Zákazník je nespokojený s výsledkem, či odmítne převzít výsledek

Tým (co by nemělo nastat interně):

  • Denní status meeting je ztráta času
  • Věříme, že homeoffice je efektivnější než práce v týmu
  • Každý člen týmu je zodpovědný za samostatný celek
  • Co jsme jednou naplánovali, to neměníme
  • Integrace pouze velkých celků
  • Psaní automatických testů je ztráta času
  • Architekt jen navrhuje, ale nekóduje
  • Testování je separátní aktivita
  • Nepřesné odhady
  • Direktivní přidělování úloh
  • Review je zbytečná formalita

Většina firem, co o agile ví, pravděpodobně některé metody zavedla, ale už se příliš nezabývala pochopením agile jako celku, která se vzájemně podporuje. Co se používá nejčastější? Pravděpodobně to bude Scrum (daily stand-up) meeting, který je jednoduchý na pochopení a za málo energie přináší snadno efekt – tedy komunikace a informovanost v rámci týmu se zlepší. Na druhé straně spektra jsou pravděpodobně odhady v bodech, které jsou relativně těžké na pochopení a proto je většina firem ani nezkusí zavést.

Čím bychom tedy měli začít, abychom byli opravdu agilní?

  1. Přečíst si agilní manifest
  2. Pochopit, že agile není proces, ale filozofie
  3. Jakou máme firemní kulturu a hodnoty?
  4. Akceptovat, že agile přinese jinou firemní kultury

Agile je změna, a jako jakákoliv jiná změna musí být v organizaci či její části dostatek energie a chuti změnu vysvětlit, prosadit a udržet.

Výsledky ankety – Jak začít pracovat Agilně (Agile Adoption Survey) 2009

Před casem jsem publikovala anketu Agile Adoption Survey 2009, a nastal čas pro vyhodnocení. Anketa byla součástí mé disertační práce, takže vyhodnocení je tentokrát v angličtině.

Výsledky jsou publikovány včetně detailní sumarizace doporučení a zkušeností jednotlivých respondentů, takže doufám, že budou pro Vás užitečné.

Podrobnosti se dočtete tady.

Vedou agilní metody ke coachingu?

Agilní metody už jsem si vyzkoušela na všech možných projektech, některé zákazníky jsme scrum naučili a oni ho přijali za svojí metodu vývoje. Takže co dál? Proč je vlastně scrum proces tak úspěšný? Rozhodně to není zavedením agilních praktik samo o sobě. Párové programování, Backlog a Burndown vám možná pomůžou ale ta zásadní změna se děje na úrovni firemní kultury. Mění celé prostředí a vnímání reality zaměstnanci. Ti se stávají více zapojeni do procesu a zainteresováni na výsledku. Má to něco společného s motivací ale je to možná více o převzetí zodpovědnosti a zároveň osobním rozvoji. Můžete stokrát používat všechny agilní metody, ale když nemáte agilní kulturu, efekt bude přinejmenším sporný.

Jak tedy agilní kultura vypadá? Tak určitě vyžaduje zapojení lidí do procesu, iniciativu, tedy vysokou motivaci. Dalo by se říci, že na stupnici podle Maslowa budou lidé hodně vysoko, až v posledním stupni pyramidy, kde klíčovou hodnotou je realizování osobního potenciálu, naplnění a osobního rozvoje. Mezi důležité vlastnosti bude patřit samostatnost, odpovědnost, ale i sebevědomí. Přechod od direktivní kultury je jistě náročný, ale nikoliv nemožný. Když jsem přemýšlela jak naší firemní kulturu, která by rozhodně mohla být považována za agilní, ještě posílit, napadlo mě, že vlastně ideálním nástrojem bude coaching.

Coaching je vlastně o zvyšování úrovně vědomí. Mělo by nás vhodně kladenými otázkami donutit zamyslet se nad danou věcí a už jen tím že se na danou oblast soustředíme, dokážeme často problém odstranit. Krásně je to vidět ve sportu. Absolvovala jsem nedávno coachovací hodinu tenisu a musím říci, že to skvěle funguje. Rozhovor typu: “Jak se ti hraje? No bolí mě trochu ruka, mám pocit, že se nemůžu pořádně napřáhnout. A kde přesně tě bolí? No v zápěstí, takhle… A co by šlo udělat, aby se to zlepšilo? Šla by třeba chytit jinak raketa? Možná takhle… Je to lepší? Jo…. “ výborně fungoval. Zkuste si ho porovnat s klasickou výukou kde je trenér v roli člověka, co neustále opravuje chyby a říká vám, že raketu držíte špatně, že se musíte dívat na míč a dávat rychlé rány. Asi bych skončila s tím, že k tenisu nemám vlohy.

Takže zpět k otázce jak posílit agilní kulturu? Proč tedy nezkusit coaching. Dobrým začátkem by tedy mohl být model GROW (Goal, Reality, Options, What/When/Who/Will), tedy identifikace cílů a to jak krátkodobých tak dlouhodobých, popis aktuálního vnímání reality, brainstorming možností co s tím dělat a na závěr plán co se má kdy a kdo udělat a jaká je vůle to dokončit.

To zní jako dobrý plán, o jeho realizaci ale zase příště.

Používáte Test Driven Development (TDD)?

Jedním z předběžných výsledků ankety (Dotazník Jak začít pracovat Agilně (Agile Adoption Survey) 2009) který je vidět již v průběhu je, že většina lidí považuje Test Driven development (TDD) za příliš složitý na nasazení, jen čtvrtina lidí ho opravdu používá, ale skoro polovina si myslí, že je to užitečná agilní metoda. Proč tomu tak je?

Zkuste si představit třeba automobil, který by někdo vyráběl stejně, jako je píše software. Prostě by se navrhnul, poskládal dohromady, a někdo s dělníků by na půl oka zkouknul, že to vypadá jako automobil. V lepším případě by motor vypadl až někde cestou, dveře by nešly zevnitř otevřít a nádrž na benzín by byla shodou náhod hermeticky uzavřená. O bezpečnosti jízdy ani nemluvě.

Než takový automobil pustíte na silnici…
picture1

nejdříve připravíte testy, třeba tento:
připravit testy

pak testy spustíte…
sputit testy

a teprve když jsou všechny v pořádku, dáte auto zákazníkovi…
hotový výrobek

Takže proč když to můžeme dělat při výrobě automobilu, neděláme to při výrobě software? Myslím, že je to jen zvyk. U softwaru totiž většinou nic moc nehrozí. To že programy nefungují, už jsme si přeci zvykli.

Ale i tak, Test Driven Development (TDD) rozhodně stojí za zamyšlení. Odhlédneme-li od spokojenosti zákazníka, je tu i spousta interních aspektů. Např. máte-li kód plně automaticky testován, snižujete riziko refactoringu a případné chyby, které způsobíte v jiných částech aplikace, najdete hned a sami. A na tom že každý systém jednou potřebuje třeba jen drobný refactoring se asi shodneme. Myslím, že investice do testů na začátku se Vám vrátí velmi brzy.

Proč to tedy nezkusit… Mimochodem, víte, jak se pozná, že už jste opravdu v Test Driven Developmet světě? Než upravíte nějakou funkcionalitu, nejdříve ‘rozbijete‘ test (tedy upravíte ho podle nových požadavků, a spustíte) a teprve až test neprojde, opravíte funkcionalitu tak, aby všechny testy byly v pořádku. Je to jiné, zdá se to být zvláštní, ale funguje to.

Open space diskuze na WebExpu: Vše, co jste kdy chtěli vědět o agilních metodách…

Ráda bych Vás pozvala na WebExpo 2009, kde pořádáme s Agilním konsorciem open space diskuzi:

Vše, co jste kdy chtěli vědět o agilních metodách*

Přijďte se něco dozvědět o agilních metodách, popovídat si, zapojit se do diskuze.
A máte-li již teď nějaké otázky, stačí je přidat jako komentář pod článek. Rádi odpovíme.

Diskuze se bude konat v sobotu 17. října 2009 od 14:15 v prostorách konání konference WebExpo (viz letáčky na místě). A povídat si s vámi budu já, tedy Zuzi Šochová (CERTICON), Petr Olmer (GoodData) a Andrej Zachar (SimpleWay).

___
* ale báli jste se zeptat

Extreme Scrum přednáška na Agileee

První ročník konference Agile Eastern Europe 2009 v Kievě je za námi. Agileee měla dobrou atmosféru a spoustu velmi zajímavých lidí. Mám-li vybrat top 2 přednášející, určitě by to byli J.B.Rainsberger se svojí přednáškou “An Introduction to Agile Through the Theory of Constraints” a David Hussman s přednáškou “Agile Journeys: How Did We Get Here and Where are We Going?”. Budete-li mít někde možnost si je poslechnout, určitě to stojí za to.

Moje přednáška je ke shlédnutí níže. Pojednává o speciální case study kdy byl použit Scrum v extrámním prostředí kde se projekty počítají na hodiny. Řešením specifické situace bylo nasazení Scrum metody a půldenního sprintu. Výsledky byly velmi pozitivní.

Část case study byla také publikována na konferenci SoMeT, 8th International Conference on Software Methodologies, Tools and Techniques.

Jak začít pracovat Agilně (Agile Adoption Survey) 2009

Protože více hlav více ví a protože potřrebuji data pro svou disertační práci, chtěla bych všechny poprosit o vyplnění dotazníku zaměřeného na Vaše zkušenosti se zaváděním a používáním agilních metod. Výsledky zveřejním na tomto blogu začátkem roku 2010. Diky za spolupráci!

Výsledky se dočtete tady.

Please help me to get data on agile adoptin process. The results will be used in my dissertation thesis and will be published on this blog at the beginning of 2010. Thanks!

Dotazník Jak začít pracovat Agilně (Agile Adoption Survey) 2009

The results can be found here.