Paarisprogrammeerimine on tarkvaraarenduses agiilne meetod, kus kaks programmeerijat teevad koostööd programmi loomisel. Üks paarilisest kirjutab koodi ning sel ajal teine paariline (vaatleja/navigeerija[1]) vaatab läbi iga sisestatud koodirea. Antud programmeerimistehnika juures on tavapärane, et paarilised vahetavad tihti omavahel rolle.
Läbivaataja rollis oleval paarilisel on strateegiline roll programmi valmimisel, tema ülesandeks on märgata võimalikke veakohti programmis, suunata tegevust ning soovitada ideid. Läbivaataja eesmärgiks on abistada või lihtsustada koodikirjutaja rollis oleva inimese tööd võimalikult palju, et tagada töö efektiivsus. Programmeerija peaks saama keskenduda vaid koodi kirjutamisele, kasutades läbivaatajat kontrollijana ja nõuandjana.[viide?]
On leitud, et paarisprogrammeerimisega suureneb inimtöö tundide arv ligikaudu 15–100%[2] võrreldes üksi töötamisega. Seevastu on aga täheldatud, et paaristööna valminud koodijupid sisaldavad keskmiselt 15% vähem vigu.[3] Majandusliku tasuvust vaadeldes tuleb lisaks koodi valmimiseks kulunud ajale arvestada erinevaid tegureid, näiteks programmi töökindlus. Paarisprogrammeerimine vähendab koodis tehtavate vigade arvu, mis omakorda vähendab kvaliteedi tagamisele mõeldud kulutusi.[3]
Paarisprogrammeerimine võimaldab mitmekesisemaid lahendusi:
Kuna paarisprogrammeerimisel jagavad kolleegid oma tööülesande eesmärke ja plaane, siis peavad nad arusaamatuste korral jõudma omavahel kokkuleppele. Probleeme ja lahenduskäike arutades võetakse läbi oluliselt rohkem võimalike lahenduskäike, kui oleks suutnud üksik programmeerija. Antud teguviis suurendab oluliselt valmiva koodilõigu kompaktsust ning välistab kehvemaid lahendusviise.[4]
Paarisprogrammeerijate veebiküsitluses (aastal 2000) selgus, et 96% vastajatest leidis, et nad nautisid töötegemist rohkem kui üksi tehes. 95% küsitletavatest nentisid, et nad olid oma lahenduskäikudes kindlamad, kui nad töötasid paaris.[5]
Ei ole vahet, kas paarisprogrammeerimine leiab aset klassiruumis või kontoris, teadmisi jagatakse omavahel pidevalt. Paljud allikad viitavad sellele, et õpilased on oluliselt enesekindlamad paarisprogrammeerimisel[5] ning õpivad programmeerimiskeele reeglitele lisaks ka visuaalselt paremini oma programme vormistama.[6] Meeskonnasisene paariliste vahetamine aitab jagada iga programmeerija teadmisi terves meeskonnas[3] ning kasulike töövõtete levimine kiirem ning efektiivsem terves meeskonnas. Paarisprogrammeerimine võimaldab programmeerijatel uurida oma partneri koodi ja anda tagasisidet, mis arendab oskust anda kohest tagasisidet tööle, mis valmib kellegi teise eestvedamisel.[6]
Paarisprogrammeerimine nõuab paarilistelt probleemide ja lahenduskäikude jagamist, mis läbi on vähem tõenäoline, et head ideed ja mõtted jääksid peitu. Pidev suhtlus üksteisega õpetab suhtlema vabamalt ning arusaadavamalt. Eeltoodud teguviis parandab koostöövõimet projektiga tegelejate (meeskonna liikmete) vahel ning parandab üldist meeskonnasisest infovoogu.[3]
Järgnevad märgid iseloomustavad kehva koostööd:
One of the programmers, the driver, has control of the keyboard/mouse and actively implements the program. The other programmer, the observer, continuously observes the work of the driver to identify tactical (syntactic, spelling, etc.) defects, and also thinks strategically about the direction of the work.
((cite book))
: kontrolli parameetri |chapter-url=
väärtust (juhend)
Tõlgitud ingliskeelsest Wikipediast Pair programming (16.01.2019)