Mis on äärmuslik programmeerimine?

Äärmuslik programmeerimine on üks uuemaid meetodeid tarkvara arendamiseks. Selle eesmärk on täiustada traditsioonilisi tarkvaraarenduse meetodeid, rõhutades äriväärtust ja kvaliteeti. See programmeerimismeetod püüab pakkuda terviklikke ja vigadeta tarkvara, mis vastavad ettevõtte vajadustele, nii lühikeste kui nädalaste intervallidega.

Traditsioonilisel tarkvaraarenduse viisil kestab projekt mitu kuud või aastaid. Analüütikute meeskond püüab kasutajatelt kõik nõuded kätte saada. Seejärel loob disainerite kogum süsteemi laia struktuuri. Pärast seda kodeerivad programmeerijad süsteemi selle struktuuri sees. Seejärel tagavad testijad, et kood on veatu ja vastab nõuetele.

Traditsioonilise arenduse peamine probleem seisneb selles, et kasutajad ise ei tea alati oma nõudeid ja nõuded muutuvad sageli tarkvara loomiseks kuluva aja jooksul. Erinevatel etappidel on kaasatud erinevad inimesed ja dokumentatsioon ei ole peaaegu kunagi täielik, seega ei saa hilisemas etapis inimesed varasemates etappides inimeste mõtteprotsessist aru. Selle tulemuseks on madala kvaliteediga tarkvara ja madal äriväärtus.

Tavaliselt hõlmab äärmuslik programmeerimine sagedast tarkvara tarnimist mõne nädala jooksul. Motivatsioon on pakkuda täielikult töötavat tarkvara, mis vastab mõnele kriitilisele ärivajadusele. Nõuete muudatus võetakse arvesse järgmisel tarnimisel.

Extreme programmeerimine või lühendatult XP rõhutab kvaliteeti, kirjutades enne programmeerimist teste. Tarkvara kirjutamise ajal vaadatakse koodi üle ja testitakse mitu korda päevas. Kogu tarkvara pannakse kokku ja testitakse üks või isegi mitu korda päevas. Seda tehakse selleks, et ükski tarkvara osa ei viiks süsteemi alla.

Ekstreemprogrammeerimise üks tuntud aspekte on paarisprogrammeerimine, mille puhul kaks programmeerijat töötavad koos ühes arvutis. Tänu sellele lähenemisele kontrollitakse koheselt tarkvara loomisega seotud mõtteprotsessi, kujundamist ja kodeerimist. Mis tahes tarkvara arendamise vastutust jagatakse.

Selle arendusmeetodiga saab tarkvara alguse lihtsast disainist ja areneb, et rahuldada täiendavaid ärivajadusi. Funktsioonide loomist välditakse seni, kuni need muutuvad esmatähtsaks. Rõhk on meeskonnatööl terviklike süsteemide loomisel, nii et iga meeskonnaliige täidab iga päev analüütiku, disaineri, programmeerija ja testija rolli. Programmeerimismeeskonna sees, samuti programmeerijate ja kasutajate vahel, kellele tarkvara tarnitakse, on intensiivne suhtlus.

Selles programmeerimismeetodis rõhutatakse ümberkorraldamise kontseptsiooni tugevalt. Refaktoreerimine on koodi sisemine viimistlemine, et anda koodile hea struktuur ja hõlbustada selle mõistmist ilma väljundit mõjutamata. Kogu ekstreemprogrammeerimisega seotud töö tehakse eeldatavasti jätkusuutlikus tempos, ilma hilisõhtute ja nädalavahetusteta. See tõstab moraali ja vähendab vigade tõenäosust.

Ekstreemprogrammeerimine on saanud oma nime ideest, et heade programmeerijate töö positiivsed küljed viiakse äärmuseni, et saada kasu. See arendusmeetod on olnud paljudes tarkvarasüsteemides üsna tõhus. Kuna tegemist on alles uue metoodikaga, arenevad selle praktikad pidevalt.