Je Extrémní programování extrémní?

Na přednášce o Extrémním programování v Kentico mi byl položen zajímavý dotaz: “Je Extrémní programování stále extrémní?” Tazatel poukazoval na to, že dobré praktiky doporučované Extrémním programováním jsou dnes již tak běžné, že za nimi vlastně není nic neobvyklého. Proč se Extrémnímu programování (XP) neříká jednoduše jen Programování?

Jak XP získalo své jméno

Přívlastek extrémní získalo XP ze svého principu: “Pokud je něco užitečné, děláme to pořád.” Prakticky: Komunikace se zákazníkem je užitečná, proto bude zákazník na pracovišti a budeme s ním komunikovat neustále. Je refaktoring přínosný? Potom budeme refaktorovat po každém novém kousku kódu (praktika je doplněna testováním a párovým programováním, takže je neustálý refaktoring opravdu efektivní).

Je pravda, že v 90. letech, v době obrovských projektů s gigantickými rozpočty a ještě většími technickými dluhy, mohla být myšlenka “neustále refaktorovat” viděna jako extrémní. Je tomu tak ale i dnes?

Praktiky XP dnes

XP učí dobré vývojářské praktiky a jejich použití se společnost od společnosti liší. Pracujete-li skutečně agilně, hlídáte-li si technický dluh, zákazník je pro vás spolupracující partner, vývojáři jsou experti na slovo vzatí, pak vás zřejmě XP nic nového nenaučí. Buď tak, nebo jen žijete v agilní iluzi.

Většina firem, co znám, bohužel takto nefunguje. Zákazník tlačí na dodávku a tým se dostává do smrtelného cyklu “programuj, programuj, programuj”. Bouchá se kód, technický dluh se bude řešit potom. Párové programování by nás jenom zdrželo a průběžnou integraci se pokusíme zavést po dalším release. Nejdřív musíme fakturovat! Pak ten zbytek. Takže ano, pro většinu firem je dle mého názoru Extrémní programování extrémní i dnes.