Mis see on? Kuidas see töötab? Kas üks magab samal ajal kui teine töötab?
Need on mõned küsimused, mida meilt on küsitud paarisprogrammeerimise kohta. Proovin seletada
selle põhikontseptsiooni ja miks see hea on, vähemalt meie kogemuse põhjal.
Kristjan Kokk — 02.03.2021 (2 minuti jagu lugemist)
Paarisprogrammeerimine on agiilne tarkvaraarenduse tehnika, mida rakendades töötavad kaks arendajat ühe arvuti, aga mitte ilmtingimata sama klaviatuuri, hiire ja monitori taga. Meie näiteks kasutame kahte klaviatuuri, kahte hiirt ja kahte monitori, millel mõlemal kuvatakse täpselt sama sisu.
K: Kuidas täpselt paarisprogrammeerimine töötab?
V: Tegelikult on see võrdlemisi lihtne. Kogu idee seisneb selles, et üks arendajatest on
“juht” ehk teisisõnu, kirjutab koodi. Teine arendaja on samal ajal “vaatleja” ehk teisisõnu, revideerib
koodi selle kirjutamise hetkel ja on “juhile” abiks.
K: Kuidas “vaatleja” “juhti” aitab?
V: Idee seisneb selles, et “juht” on fokuseeritud koodi kirjutamisele ja “vaatleja” peaks
suunama teda parematele lahendustele kui selleks tekib vajadus ja välja tooma potentsiaalseid probleeme,
mida “juht” võib-olla kohe tähele ei pannud. Väljend “Kaks pead on parem kui üks” sobib ideaalselt
kirjeldamaks paarisprogrammeerimist.
K: Kas poleks parem kui kaks arendajat eraldi töötaksid?
V: Meie kogemuse põhjal mitte. Muuhulgas vähendab paarisprogrammeerimine aega, mida
arendaja kulutab isiklike asjadega tegelemiseks, näiteks YouTube’is videote vaatamiseks, sõpradega
suhtlemiseks või pikkade telefonikõnede tegemiseks. Enamasti tahavad inimesed selliste asjade jaoks
privaatsust, aga kahepeale ühe arvuti kasutamine ja selle ekraani jagamine vähendab võimalust kasutada
arvutit millekski muuks kui töö tegemiseks. Loomulikult teeme me pause, aga üldiselt samal ajal, et
maksimaalselt palju koos arendada.
K: Mis on paarisprogrammeerimise head ja halvad küljed?
V: Siin ei ole konkreetset vastust kuna see sõltub kogemusest ja on suuremal või vähemal
määral iga arendaja subjektiivne arvamus. Meie meelest võiks jaotuda need selliselt:
K: Aga see maksab kaks korda rohkem kui kaks arendajat tegelevad sama asjaga!
V: Jah ja ei. See sõltub projekti pikkusest ja keerukusest. Kui projekt on väga väike ja
lihtne, siis paarisprogrammeerimine ei ole võib-olla parim lahendus. Aga kui projekt on pikem ja/või
keerulisem ning tehniliselt rohkem väljakutseid esitav, siis tänu eelmises punktis toodud headele külgedele
tähendab see enamasti kliendile pikas plaanis raha kokkuhoidu ja paremat kvaliteeti.
Paarisprogrammeerimisest võib veel pikalt rääkima jääda, aga leidub palju häid artikleid samal teemal. Näiteks siin on mõned ingliskeelsed teaduslikud uuringud paarisprogrammeerimisest, kui peaks olema huvi rohkem lugeda.
Solutional on agiilne tarkvaraarenduse ettevõte professionaalsete inseneridega, kes suudavad lahendada tarkvaralised probleemid algusest lõpuni ilma vahendajateta.
Kirjuta meile e-post aadressile info@solutional.ee juhul kui vajad abi uute või olemasolevate projektide eduka teostusega.