Literární koutek: Dnes o řízení softwarových projektů

Jak jsem sliboval včera, literární koutek dnes pokračuje knihou Jima McCarthyho Softwarové projekty. Tu jsem si přečetl už asi před dvěma lety, ale v minulých dnech jsem se k ní vrátil, a zkusím vám jí trochu přiblížit. John je zaměstnanec Microsoftu a tam se potýkají se stejným problémem jako v každé softwarové firmě – jak zorganizovat vývoj složitých aplikací tak, aby byly dokončeny včas, s daným rozpočtem a se všemi funkcemi. Kdo se trochu v oboru programování orientuje, ví moc dobře že dodržet všechny zmiňované věci je zatraceně těžké, ne-li nemožné.

Knížka Softwarové projekty by vám s tím měla pomoct. Autor vychází z toho, že výsledný program velmi přesně odráží to, jaký je jeho vývojový tým – což je velice pravdivá myšlenka. Jakýkoliv problém v programu a jeho tvorbě odráží skutečné problémy jeho tvůrců. Jim se tedy zaměřuje hlavně na to, jak správně řítit vývojové práce, udržet vysokou morálku a zároveň přitom podporovat kreativitu a dobré vztahy mezi členy týmu. Přitom vychází ze svých bohatých zkušeností – v knize opravdu nenajdete žádné teoretické poučky, ale věci odpozorované z praxe včetně konkrétních příkladů (zejména z pro autora velmi inspirativního období vývoje první verze Visual C++).

Na knížce je občas dost vidět, že jí psal člověk z Microsoftu. Krom nepokryté propagace je vidět, že agresivní marketingová politika této firmy je v ní opravdu hluboce zakořeněná. Dva příklady za všechny (oba jsou z části pojednávající o to, jak se udržet na prvním místě na trhu, když už se vám na něj podaří dostat):

Teď máte příležitost ztrojnásobit investice do nových vlastností a funkcí, které by mohly změnit práci uživatelů. S každou novou verzí měňte stávající stav – přestože jste na špici – a v novém uspořádání se znovu ujměte vedení.

...

Nebojte se riskovat. Objevujte nové oblasti a začněte je využívat. Spalte za sebou všechny mosty  dejte tak všem jasně najevo, že směr své cesty nehodláte měnit, tím vyloučíte každou myšlenku na návrat. Znamená to, mimo jiné, nebýt závislý na základně. Požadavek na slučitelnost vašich programů s jinými může být pastí. Přimějte trh, aby udržoval vaše tempo a v oblasti slučitelnosti nabídněte kompromis. Táhněte trh za sebou, a nedejte mu příležitost jít jiným než vaším směrem.

Co knihu trochu shazuje, je špatný překlad. Ten je místy dost neobratný a občas má člověk pocit, že čte výstup automatického překladače (překlad je moc doslovný a věty prostě "nezní česky"). Ale ještě to jde.

Co říct závěrem? Asi to, že knihu bych doporučil k přečtení každému vedoucímu týmu programátorů – a možná že i vedoucí pracovníci z jiných odvětví by si v ní lecos našli. Já, ač nejsem ani jedno, jsem v ní našel dost.