Pariohjelmointi johtaa laadukkaampaan koodiin

PHZ Full Stack:n keskeinen ideologia on hyödyntää Extreme Programming:ia ja mm. pariohjelmointia sekä asiakasprojekteissa aina kun mahdollista sekä omissa tuotekehitysprojekteissa päivittäin osaamisen levittämiseksi ja laadun parantamiseksi. Kollektiivisen koodin omistuksen periaatteiden mukaisesti pyrimme päivittäin rikkomaan osaamissiiloja siiloja vaihtamalla työpareja frontend- ja backend-kehittäjien välillä pilviarkkitehteihin ja designereihin. Koska jatkuva oppiminen ja osaaminen on yrityksemme tärkein arvon sekä lisäarvontuottoväline, pyrimme maksimoimaan sen tiimityön avulla äärimmäiseen maksimiinsa.

Pariohjelmoinnin dokumentoitu historia johtaa tietotekniikan alkuvuosiin 50-luvulle. Extreme Programming ja ketterät menetelmät tekivät pariohjelmoinnista yleisesti tunnetumpaa 90-luvun lopussa. Tämän jälkeen kyseistä ohjelmistotuotantomenetelmää on tutkittu runsaasti, mutta sen hyödyt ja käytännön soveltaminen ovat edelleen heikosti tunnettuja. Toisaalta pariohjelmoiti ei sovellu kaikkiin tehtäviin, kuten prototypointiin, ja se on myös opiskeltava taito joka ei välttämättä onnistu luonnostaan kaikilta ohjelmoijilta heti alusta.

Systemaattisissa tutkimuksissa on havaittu, että pariohjelmointi vähentää tuotantoon päätyvien bugien määrää, parantaa ohjelmiston rakennetta ja suunnittelua, sekä lyhentää kehitysaikaa. Päivittäinen se soveltuu eritysesti monimutkaisten tehtävien suorittamiseen. Lisäksi pariohjelmoinnin on havaittu parantavan työilmapiiriä, tiimityötä sekä oppimista.

Pariohjelmoinnissa on kaksi roolia: navigaattori (jonka pitäisi tietää joko teknologiasta tai tehtävästä) ei koske näppäimistöön, vaan kertoo kuskille mitä pitäisi tehdä. Hyötynä koodiin tulee jatkuva katselmus (code review), mikä mahdollistaa myös tehtävän, suunnittelun ja toteutuksen jatkuvan kyseenalaistamisen. Kokemuksen mukaan yksin työskennellessä jopa viikkoja tai kuukausia tehollista työaikaa voi valua hukkaan väärinymmärrysten tai huonon suunnittelun takia, mikä on tehokkaampaa havaita mahdollisimman aikaisessa vaiheessa. Move People Around -käytännön mukaisesti pareja vaihdetaan ideaalisesti päivittäin, jolloin osaamisen leviäminen maksimoituu, riskit esim. sairastapauksien tai muiden henkilövaihdosten vaikutuksesta projektille minimoituu, ja ohjelmoijista kehittyy aitoja Full Stack-kehittäjiä.

PHZ Full Stack:lla uskomme vahvasti tiimityöhön ja osaamisen jatkuvaan kehittämiseen. Pyrimme päivittäin oppimaan jotain uutta olkoon se täysin uusi ohjelmointikieli, framework tai shell-komento. Tälläin ketterät käytäntömme pääsevät oikeuksiinsa etenkin suurissa projekteissa, joissa tiivis tiimityö asiakkaiden ja kehittäjien välillä on varmin tie projektien onnistumiseen.

Lähteet:

  • Vanhanen07