Extreme Programming (XP)
XP ehk ekstreemprogrammeerimine on üks agiilsetest tarkvaraarenduse mudelitest, mis on tuntud oma iteratiivse ja inkrementaalse
lähenemise poolest ehk koodi kirjutatakse väikeste juppidena ning neid testitakse pidevalt.
XP metoodika 8 põhimõtet
Extreme Programming meetod põhineb kaheksal sammul:
Planeerimine
XP keskendub tulemusele, mistõttu on oluline kogu projekti eesmärkide planeerimine, tööülesannete
kindlaksmääramine ning kõikide osapoolte mõistmine, mis on lõpptulemus ning mida see peaks saavutama.
Testimine
XP meetodil arendustegevus tähendab, et kogu protsessi jooksul toimub peale iga funktsiooni
kirjutamist koheselt ka testimine, mis tagab, et kood vastab oodatule ning vead leitakse ja parandatakse koheselt.
Sammude kaupa arendamine.
Iga iteratsioon keskendub kindlale funktsioonile, mis võimaldab arendaja(te)l pühenduda
korraga kindlale teemale ning tagada, et iga samm vastab projekti eesmärkidele.
Lihtsus
XP meetod järgib lihtsuse põhimõtet- luua tuleb võimalikult lihtsat ja arusaadavat koodi. See vähendab
vigade tekkimist tõenäosust ning lihtsustab hilisemat hooldamist ja täiendamist.
Disaini täiustamine
XP meetod paneb rõhku pidavale disaini täiustamise., st disaini kohandatakse vastavalt
projektis tehtud edusammudele ja saadud tagasisidele.
Suhtlus kliendiga
XP on seotud tihedalt kliendi kaasamise ja suhtlemisega, mis tagab, et kood areneb kliendi
soovide- ja ootustekohaselt.
Kollektiivne omandamine
XP meetod tähtsustab kollektiivset omandamist, st iga meeskonnaliige vastutab projekti
edukuse eest ning jagab seda vastutuste teiste meeskonnaliikmetega.
Kiire tagasiside
Pidev tagasiside võimaldab meeskonnal reageerida kiiresti muudatustele, vigadele ja üldiselt
tagasisidele ning seega ka paremini kohanduda nende vajadustega. Kiire tagasiside tagamine on võimalik tänu
mitmele rakendatud tehnikale, nt paari programmeerimine, lühikesed iteratsioonid, automaatne testimine ja
koodi järjepidev integratsioon.
| HEAD |
VEAD |
| Võimaldab kiiret arendamist. |
Ei ole algajasõbralik. |
Efektiivne väikestes meeskondades
väga iteratiivse meetodi tõttu. |
Ebaefektiivne suurtes meeskondades,
sest üksikisku teadmine kogu projektist võib olla hajutatud. |
| Väga vastuvõtlik kliendi muutuvatele nõuetele. |
Klientidega kohtumine võib muutuda kulukaks. |

Kasutatud materjal:
Allikas: Wikipedia