Archive for the ‘Agile’ Category

Dejte mi zadání

Sunday, December 12th, 2010

Nedávno jsem si uvědomil, že používám techniku, která na první pohled nevypadá moc agilně. Chci po lidech písemné zadání práce. Možná se ta finta může hodit i vám. Tu situaci asi znáte. Někdo za vámi přijde a chce po vás udělat nějakou změnu v programu. Může to být nová funkcionalita, kterou vám zadává člověk z marketingu, nový nápad vzešlý z testování nebo něco od spolupracujícího oddělení. Může se jednat o něco pracnějšího, ale klidně i doopravdy malou a jednoduchou změnu.

Ve všech podobných případech si říkám o písemné zadání. Samozřejmě se nemusí jednat o sáhodlouhý dokument v předem připravené šabloně. Pokud je to trivialita, stačí jedna nebo dvě věty v mailu, pokud je to něco většího, většinou se spokojím se stránkou na Wiki.

Asi se ptáte proč je to tak důležité, proč jsem takový potížista a připravuji ostatní o čas? Mohl bych vám odpovědět zástupnými vysvětleními, jaké dávám těm kdo mi tu práci zadávají. Když se mě ptají oni, tak říkám, že to je proto, aby měli testeři podle čeho testovat. Nebo jím říkám, že jsem sklerotik, a mohl bych některé důležité detaily zapomenout. Další oblíbená odpověď je také taková, že se tím předejde případným sporům v budoucnu. Tyto všechny důvody jsou pravdivé a nesmírně užitečné. Ten hlavní je ale způsobený takovým těžko vysvětlitelným kouzlem. Když zadavatele donutím sepsat to co chce, donutím ho se nad danou věcí zamyslet. Často pak za mnou přijde znovu s tím, že chce něco jiného nebo že vlastně nechce nic, protože si to rozmyslel. Nejsem psycholog, takže to neumím vysvětlit, ale když lidé mluví, tak myslí jinak, než když píší. Znám to i z vlastní zkušenosti, občas mám geniální nápad, který i dobře zní, když ho někomu vysvětluji. Když ho ale začnu sepisovat, tak v něm najdu díru. Předpokládám, že něco podobného platí i pro ostatní.

Pokud tu fintu budete zkoušet sami, mám pro vás pár praktických rad. Pokud po někom chcete něco písemně, může to vypadat, že tu věc nechcete dělat nebo že chcete zdržovat. Je proto důležité druhé straně vysvětlit, proč je to užitečné i pro ně. Moje sociální vlohy jsou sice slabé, ale i tak se málokdy odvážím někomu říci, že se bojím, že to nemá dost promyšlené. Většinou argumentuji tím, že chci aby testeři měli podle čeho testovat. To obvykle zabere.

Často se taky setkáte s tím, že zadavatel nemá čas. To je zapeklitý oříšek. Často je to totiž člověk, který je formálně důležitější než vy. I tak je dobré zkusit mu vysvětlit, proč je to užitečné. Argumentů sami vymyslíte určitě spoustu. Pokud jste odvážnější, můžete se zeptat, kolik času mu může trvat napsat jeden odstaveček. No a pokud jste nevycválaní jako já, můžete ocitovat agilní poučku, která říká, že pokud nemá zákazník dost času aby něco pořádně zadal, tak to pro něj asi není dost důležité. Ale to je jen finta pro silné povahy, která navíc moc nezabírá.

Kterak být agilní ve vodopádu

Sunday, June 22nd, 2008

Jak máme prodat agilní vývoj managementu? Nedělejte to, oni beztak nevědí co děláte.

Onehdá jsme s takovou podivnou partou lidí v hospodě řešili, jak propagovat Agilní vývoj v jedné nejmenované firmě. Potíž je v tom, že v té firmě se vyvíjí vodopádem. (I když management tvrdí, že se tam dělá RUP.)

No a včera jsem na InfoQ narazil na zajímavou přednášku o tom, jak dělat Agilní vývoj ve vodopádu. Takže pokud vás toto téma zajímá, najděte si hodinku a čtvrt a podívejte se na to. Nedovíte se tam nic převratného, ale alespoň to naznačí, kudy by se dalo jít.

Vytíženost

Tuesday, May 13th, 2008

Chtěl bych se vrátit ke knize Slack, o které jsem tu už psal. Tenkrát jsem si vybral kapitolu, která se mě tehdy docela dotýkala. Bohužel z ní nebylo vidět, o čem ta kniha je. A to je škoda, protože Slack je jedna z nejlepších knih, kterou jsem o managementu četl (ono jich zas tolik nebylo).

Název Slack by se dal podle slovníku přeložit jako časová rezerva, nevyužitý nebo dokonce flákat se. O tom všem to je - o potřebě určité volnosti. Jako příklad uvedu citaci

Vezměte si například sekretářku (Pamatujete si ještě sekretářky? Kdysi obvyklý prvek firemního života.) Práce sekretářky [...] usnadňuje hladký průběh pracovního života manažera. Říkejme ji Silva.

Dobrá sekretářka je poklad [...] Když je v práci Silva, všechno jde snadno. [...] Teď si představte, že nastoupí konzultant s cílem snížit náklady. „Cože, co to je? Sekretářka? A co zrovna teď dělá?“ Sedne si se stopkami vedle jejího stolu. Nikoho nepřekvapí, že přijde na to, že Silva je zaměstnána jen 43% času. Ve zbytku doby se ... je k dispozici. Je k dispozici dělat práci kterou zrovna teď potřebujete. To je to co je na Silvě tak skvělé. Když je něco potřeba, je okamžitě k dispozici.

Triumfální výraz se usadí na konzultantově tváři. Pokud je Silva zaměstnána jen 43% času, můžeme ušetřit 57% procent jejího času. Můžeme ji hodit do „poolu“ a alokovat 43% pro vás a 57% pro ostatní. [...] Nebo se jí úplně zbavit a najmout brigádníka jen na těch 43%. [...] Jaká úžasná efektivnost. Místo člověka který 57% času zahálel, máme někoho kdo pracuje 100% času. Povídejte mi o výkonnosti!

Problém je samozřejmě v tom, že teď plně využitá sekretářka jednoduše nereaguje tak rychle jako Silva. Tato nově výkonná osoba prostě nereaguje tak rychle na věci, které je potřeba udělat, protože má moc práce.

Platí něco podobného o programátorech? Když přijdete na to, že potřebujete 73% programátora, můžete hodit ten zbytek do „poolu“ k dispozici jiným manažerům? Když potřebujete 100% senior programátora, můžete počítat s tím, že ho budete mít na 100%? Co když bude potřebovat poradit nováčkovi, co když bude potřeba řešit něco na projektu na kterém už dávno oficiálně není? Co když bude potřeba pomoci s nabídkou pro nového zákazníka?

Představte si firmu, kde může manažer říci, „Já potřebuju Tondu jen na 50%, zbytek dávám k dispozici, ať si ho veme kdo chce“. Může to fungovat?

Podle mě ne. Za prvé, ten manažer ho nechce jen na 50%, on ho chce jen na 50% platit. Nevěřím, že pro něj bude práce přesně na 4 hodiny denně. Spíš bych tipoval, že víc.

Navíc mám pro vás jednu novinku, programátoři se nedají krájet. Když si z programátora ukrojím půlku, dostanu dvě půlky mrtvoly. Když to udělám jen obrazně, dopadne to jen o trochu lépe. Takže opakuji: 1 programátor – 0,5 programátora << 0,5 programátora. Platí rovnice, kterou se opět můžeme dočíst v knize (od které jsem se na moment trochu odchýlil, za což se všem postiženým omlouvám)

Trest za přepínání úloh = čas potřebný pro přesun na novou úlohu + oprava chyb způsobených nevhodným přerušením v práci + čas pro opětovné se ponoření do úkolu + frustrace + ztráta vazby na tým

Takže jak to dopadne v naší hypotetické firmě, která umožňuje prodat dvě půlky programátora? Napadají mě dvě možnosti. Buď budeme potkávat na chodbách usínající programátory, kteří pracují na 150% procent. Nebo se prostě a jednoduše budou falšovat výkazy, tak aby to vypadalo, že máme dvě nezávislé půlky programátora.