Extrémní programování
Z Wikipedie, otevřené encyklopedie
Extrémní programování (XP) je metodologie vývoje softwaru a programování, která velmi ovlivnila celé softwarové inženýrství. Zavedl ji Kent Beck v knize Extreme Programming Explained. Jedná se o souhrn jednoduchých praktik, které mají dohromady velký synergický účinek.
Obsah |
[editovat] Proč extrémní?
XP používá osvědčené a známé principy a postupy vývoje software, dotahuje však jejich použití do extrémů.
- základem vývoje je neustálá revize zdrojového textu programů – aby nedocházelo k tzv. „profesionální slepotě“, pracují na jednom zdrojovém kódu vždy dva programátoři
- testování je důležité – proto se program neustále testuje. Testovací rutiny jsou součástí kódu (tento testovací kód někdy přesahuje svým rozsahem vlastní výkonný kód) a program prakticky při každém spuštění testuje, zda se v průběhu vývoje nepoškodil
- neustále se provádí refaktorování – ověřování, zda návrh programu je správný
- program se udržuje na co nejmenší úrovni složitosti – vždy se programuje jen to, co je v danou chvíli nezbytné
- neustále se testuje integrace jednotlivých komponent – konečný program se i několikrát denně sestavuje a testuje se, zda všechny komponenty spolupracují tak, jak mají
- vývoj probíhá v krátkých iteracích – vždy se vyřeší jedna konkrétní změna programu a okamžitě se ověří, zda všechno pracuje jak má
[editovat] Základní stavební bloky
XP si váží hodnot:
- jednoduchost
- komunikace
- zpětná vazba
- odvaha
[editovat] Postup vývoje
Následují pravidla, která se dodržují v XP.
[editovat] Plánování
- napsané "User stories"
- plánování vydání tvoří časový harmonogram
- časté vydávání malých změn
- měří se aktuální rychlost vývoje
- projekt je rozdělen do iterací
- každá iterace začíná plánováním
- rychlé schůze, nejlépe ve stoje
- "sprav to, když se to rozbije"
[editovat] Design
- ceněná je jednoduchost
- pro systém musí existovat metafora
- pro design se používají CRC kartičky
- pro zmenšení rizika "spike solution"
- funkčnost není přidávána předčasně
- časté refaktorování (kdykoliv a kdekoliv)
[editovat] Programování
- zákazník vždy spolupracuje
- zdrojový kód musí odpovídat firemní kultuře
- nejdřív se píší testy Unit
- všechen kód programují dva programátoři
- integraci provádí v jednu chvíli pouze jediný pár programátorů
- integrace probíhá často
- zdrojové kódy vlastní všichni programátoři
- optimalizace se provádí až nakonec
- žádné pracovní přesčasy
[editovat] Testování
- všechen kód má testy Unit
- všechen kód musí projít testy Unit, před tím než je vydán
- když se najde chyba, vytvoří se nové testy
- akcepční testy se spouští často a výsledky se zaznamenávají
[editovat] Literatura
- Kent Beck, Martin Fowler: Planning Extreme Programming
- Ron Jeffries, Ann Anderson, Chet Hendrickson: Extreme Programmin Installed, předmluva Kent Beck
[editovat] Podívejte se také na
[editovat] Externí odkazy
- XProgramming.com – an Agile Software Development Resource (anglicky)
- Extreme Programming: A Gentle Introduction (anglicky)
Tento článek týkající se softwaru je pahýl. Můžete pomoci Wikipedii tím, že jej rozšíříte. |