Tady se tak nějak zapomíná na základní otázku života, vesmíru a vůbec. Je agilní vývoj dobrý? A odpověď kupodivu není 42, ale je prostě a jednoduše NE. Nechám vás chvilku přemýšlet a potom dovysvětlím zoufalcům, proč není. Na druhou stranu uznávám, že to zní pro zákazníka dobře a zákazník to chce. Proč, na to si opět zkuste odpovědět nejdřív sami. Je to jeden z důvodů, proč jsem nikdy nechtěl být programátor.
Agilní vývoj ve své podstatě vede rychleji k výslednému řešení, tedy nevidím v něm nic špatného. Otázkou však je, jak je ten agilní vývoj uchopen a zda vede k udržovatelnému kódu. Občas si totiž někdo splete "agilní vývoj" s prachobyčejným "prasením", které s agilním vývojem nemá nic společného.
Ano, s prasením to dost souvisí, ono je i těžko říct, co je vlastně agilní vývoj, protože těch definic je asi tolik, kolik je vývojářů, ale ještě jsem nenašel žádnou, se kterou bych se dokázal ztotožnit. Podle mě je prvním a nejdůležitějším krokem každého projektu důkladná analýza. Bohužel, zákazník často neví co chce, nebo to nepochopí vývojář, nebo se myšlenka ztratí někde v zástupu managorů a obchodníků a agilní vývoj je potom fantastická záchrana, zní to hezky, na papíře to vypadá dobře, ale zákazník vlastně netuší, co že to chce a javamani se potom plácají navzájem po zádech, jak to dokázali pěkně přeprasit a zákazníkovi zalepit hubu. Že je z toho potom jedna dlouhá špageta, ve které se vlastně nikdo nevyzná, protože je to navíc propletený pomocí "cool IDE features", kterým se bezmezně věří (ono se musí, jinak by se nestihl termín). Optimalizace se provedou upgradem HW a na občasné pády, které jsou prohlášený za featuru, si zákazník časem zvykne. Však co, nasadíme automatický restart a tím je to pořešený.