Mob programming valjastaa joukkovoimat ohjelmistokehitykseen

Digialla järjestettiin sisäinen mob programming-tilaisuus, jossa osallistujat pääsivät kokeilemaan joukko-ohjelmointia. Tapahtuman järjestäjä Veikko Nokkala kertoo, mistä mob programmingissa on kyse ja mitä oppeja digialaisille tarttui päivästä mukaan.

mobprogramming.jpg

Mob programming, eli joukko-ohjelmointi on tapa tehdä ohjelmistokehitystä nimensä mukaisesti joukon voimalla. Pidimme lokakuun lopulla Digialla sisäisen koulutuksen, jossa kaksi tiimiä paneutuivat päivän ajan oikean tuotantotyön tekemiseen joukko-ohjelmoinnin keinoin.

Mitä on mob programming?

Mobbiin osallistuu moniosaajatiimi, joka tekee ohjelmistokehitystä yhden koneen kautta, jonka käytöstä vastaa kuski. Kuskin rooli on olla ”ajattelematta” ja keskittyä vain ajamaan, eli toteuttamaan muilta tulleita ehdotuksia.

Muut tiimin jäsenet edustavat navigaattoreita, jotka yhdessä keskustellen ohjaavat kuskia oikeaan suuntaan. Navigaattorit ovat vastuussa tekemisen laadusta, ja heidän kollektiivinen osaaminen ja tekemisen laatu eri osaamisalueista varmistavat sen, että kehitys on priimaa koko ajan.

Mobbauksen hyötyjä laatunäkökulman lisäksi ovat esimerkiksi:

  • Projektin käynnistyessä esimerkiksi yhteisten näkemysten ja pelisääntöjen sopiminen on helpompaa.
  • Tiedon ja osaamisen jakaminen helpottuu ja henkilöriskit vähenevät, kun tietty tekeminen ei ole keskittynyt vain tietylle henkilölle.
  • Palavereiden tarve vähenee, koska kaikki käytännön työn suunnitelmat ja toteutukset tehdään koko aika yhdessä keskustellen Myöskään koodikatselmoinnille ei ole tarvetta.
  • Uuden tiiminjäsenen tutustuttaminen tiimin tekemiseen ja tiimiytymiseen helpottuu.
  • Tiimin yhteinen näkemys kehitettävästä kokonaisuudesta ja sen eri osa-alueista on johdonmukainen, ja jos työtä tehdään ajoittain myös yksin, voi yksinäinen sankarikin tehdä laadukasta jälkeä ensimmäisellä yrittämällä.
  • Uusien työkalujen ja teknologioiden käyttöönotto ja jalkautus helpottuvat.
  • Hankalien ongelmien ratkonta nopeutuu.

 mob programming.png

Mob programming Digialla

Idea joukko-ohjelmoinnin jalkauttamiseen Digialla laajemmin tuli joitain kuukausia sitten, ja surkeiden sattumusten sarjan kautta löysin itseni Digian Niko Kortelaisen juttusilta. Niko oli aikoinaan ollut Digialla mukana projektissa, joka vedettiin melkein kokonaan mobbauksena (osa tehtiin pariohjelmointina), ja projekti saatiin aikataulullisesti, budjetillisesti ja laadullisesti maaliin. Ja mikä parasta, takuutöitä tehtiin 0 tuntia.

Nikon kokemuksien tukemana päätimme pitää sisäisen mob programming -koulutuksen Digian Helsingin toimistolla allekirjoittaneen, Nikon ja Juri Surakan vetämänä. Sinällään mobbaus ei vaadi erillistä fasilitaattoria, koska tiimi ohjaa itse itseään, mutta kokemuksen ja jalkautuksen kannalta päätimme vetää yhden päivän järjestelmällisesti, jotta seuraavat sessiot voisivat olla tiimien sisäsyntyisiä tuotoksia.

Havaintoja koulutuspäivästä

Ennen koulutuspäivää arvioimme, että kuluisi noin 1,5h ennen kuin tiimi sisäistäisi tekemisen mallin. Ilolla totesimme, että tässä tapauksessa tehokkaaseen moodiin pääsemiseen meni pari minuuttia.

Päivä päättyi yhteenvetoon, jossa käytiin läpi tiimien ja päivän vetäjien näkemykset ja kokemukset mobbauksesta ja päivän kulusta. Empiirisen tutkimuksen mukaan, joka perustuu siis projekteihimme, voimme todeta, että mob programming on tehokas tapa tehdä töitä, ja se tuottaa laadukasta jälkeä eikä tuota takuutöitä – vaikka esimerkiksi 5 ihmistä tekisikin töitä yhdellä koneella.

Mobbausta voidaan käytännössä tehdä missä vaan tiimissä, kunhan tiimillä on siihen soveltuvat työtilat – esimerkiksi joku neukkari, josta löytyy iso näyttö ja jonne tiimin jäsenet mahtuvat istumaan. Mobbauksesta voi tulla jokaisen tiimin menetelmä, jota tehdään esimerkiksi projektin käynnistyksen yhteydessä, ongelmien ratkonnassa, uusien teknologioiden käyttöönotossa tai vaikka silloin, kun sprintin suunnittelussa todetaan, että tämä on hankala toiminnallisuus toteuttaa ja vaatii monenlaista osaamista ja näkemystä.

 

 

Tilaa Digian blogikirjoitukset suoraan sähköpostiisi

 

ohjelmistokehitys





Tilaa blogikirjoitukset sähköpostiisi


Viimeisimmät kirjoitukset



Seuraa meitä somessa

LinkedIn Twitter Facebook YouTube YouTube