OP1-RKS-scrumohje

Scrum-ohje Reaktiiviset Kevätsaappaat -tiimille

Tämä on Ohjelmistoprojekti 1 SOF005AS3A-3001-opintojaksolla toimivan Reaktiiviset Kevätsaappaat-tiimin ohje scrum-menettelyn käyttöön. Tiimi toteuttaa scrummia, koska se tukee parhaiten tiimin yhteistyöhön perustuvaa sovelluskehitystyöskentelyä. Tiimin scrum-käytännöt ovat sovellettuja puhdasoppisen scrumin sijaan, koska työskentely ei ole kokopäiväistä, vaan hajaantunutta tiimin jäsenten erilaisten aikataulujen vuoksi.

Tiimi kokoontuu viikoittain opintojakson luennoille. Tämän yhteydessä tiimi pyrkii pitämään weekly-kokouksen ja käymään läpi dailymäiset rituaalit. Samassa yhteydessä tiimi pitää sprint review ja retrospektiivi-kokoukset. Samassa yhteydessä pidetään seuraavan sprintin suunnittelu eli sprint planning.

Lisäksi tiimi on päättänyt, että scrum master vaihtelee viikkojen aikana, jotta kaikki pääsevät kokeilemaan kyseistä roolia. Ensimmäiseksi scrum masteriksi valitaan henkilö, jolla on eniten kokemusta.

Scrum prosessi

Oheisessa Goforen laatimassa artikkelissa kuvataan puhdasoppinen Scrum-prosessi. Gofore: Scrum-prosessi pähkinänkuoressa

Dailyt/weeklyt

Daily on lyhyt päivittäinen tapaaminen, jossa käydään läpi tiimin tilanne ja eteneminen sprintin tavoitteissa. Weekly vastaavasti voidaan järjestää kerran viikossa. Tapaamisessa käydään läpi projektin etenemistä ja tehdään suunnitelma seuraavasta vaiheesta. Tapaamisessa jokainen tiimiläinen käy läpi edellisen päivän/viikon ja tulevan päivän/viikon toimenpiteet. Lisäksi mahdolliset esteet ja ongelmat, joita tiimiläinen ei itse voi hoitaa, eskaloidaan scrum masterille.

Kuten edellä mainittiin, tiimi ei kokoonnu päivittäin dailyyn vaan viikoittain weeklyyn, jossa käydään läpi scrum masterin ohjauksessa samat rituaalit kuin tavallisessa daily-kokouksessa.

Sprintin katselmointi

Sprintin lopuksi tiimi pitää sprint review:n, jonka tarkoituksena on tarkastella mitä sprintin aikana saatiin aikaiseksi ja mitkä asiat jäivät tekemättä. Tämä tehdään demoamalla tuote siinä tilassa, kuin sen sprintin päätyttyä on. Normaalisti katselmuksessa tarkastellaan myös budjetissa ja aikatulussa pysymistä. Tarvittaessa työjonoon lisätään tai sieltä poistetaan tehtäviä tai niiden prioriteettejä muutetaan. Katselmuksen perusteella tiimi päättää seuraavasta työvaiheesta. Sprintin katselmuksen olisi hyvä olla melko vapaamuotoinen.

Kokous

Tuotteen kehitysjono ja taskboard

Tuotteen kehitysjono on lista asioista, joita tarvitaan tuotteen kehittämiseksi. Katselmoinnissa sprintille valitaan tehtäviä projektin kehitysjonosta, jotka pilkotaan usein pienempiin osiin niin, että tehtävät ehditään varmasti sprintin aikana toteuttamaan.

Sprintin kehitysjonon etenemistä seurataan Scrum-taulun avulla, joka on olennainen osa Scrum-menetelmää. Taululla eritellään ei-aloitetut, aloitetut ja valmiit kehitystehtävät, sen mukaan missä vaiheessa tehtävä sillä hetkellä on. Tehtävien tilannetta päivitetään päiväpalavereissa.

Scrum-taulu

Tiimin viestintä

Tiimi viestii keskenään tarpeen mukaan ja avoimesti ongelmistaan. Pääsääntöisesti tiimi viestii omassa Teams-ryhmässään. Lisäksi tiimi tapaa viikoittain weekly-kokouksissa. Viestinnän tavoitteena on pitää koko ryhmä tietoisena siitä, mitä kehittämisessä tapahtuu ja nostaa esiin ongelmat yhteisesti ratkaistavaksi.

Tarpeen mukaan tiimi viestii myös tuoteomistajan kanssa Teams-kanavan välityksellä.

Scrum Master

Scrum master fasilitoi tiimin scrum-toimintaa, mm. valvoen, että weeklyt, reviewit ja retrot pidetään sovitusti. Scrum master toimii tiimin kokouksien puheenjohtajana. Scrum master auttaa tiimiä toimimaan yhteistyössä ja mallin mukaisesti joustaen tarpeen mukaan.

Tiimiläisten vastuulla on pitää scrum master ajan tasalla tiimin toiminnasta ja ilmoittaa hänelle kaikki ongelmat ja työskentelyn esteet. Scrum master pyrkii poistamaan esteet ja mahdollistaman tiimin tehokkaan työskentelyn.

Scrum-Master

Arvot

Scrum-menetelmän viisi arvoa ovat Sitoutuminen, keskittyminen, avoimuus, kunnioitus ja rohkeus. Näitä arvoja noudattamalla Scrum-tiimin jäsenet sitoutuvat tavoitteiden saavuttamiseen ja toistensa tukemiseen. Tiimin jäsenet keskittyvät ensisijaisesti sprintin työstämiseen jotta tavoitteet saadaan saavutettua. Scrum tiimi kunnioittaa toistensa kykyjä ja ymmärtävät työnsä haasteet. Tiimin jäsenillä on myös rohkeutta ottaa haasteet vastaan ja tehdä parhaaksi katsomiaan valintoja sprintin edistämiseksi.

Scrum arvot

Reflektointi

Ketterä Scrum-tiimi reflektoi tekemisiään ennen seuraavaa sprinttiä. Tiimi reflektoi aiemman sprintin onnistumisia ja haasteita sprintin päätteeksi retrospektiivi-kokouksessa. Onnistunut ‘retro’ tuottaa konkreettisen toimen tai mallin joka otetaan käyttöön jo seuraavassa sprintissä.

Miksi Scrum toimii?

Scrum-menetelmän avulla kehitystiimi voi työskennellä samanaikaisesti ja aloittaa koodauksen vaikka kaikki projektin määrittelyt eivät ole vielä täysin valmiina. Työskentely on joustavaa ja asiat muuttuvat projektin aikana. Ainoastaan aika ja kustannukset pysyvöt vakioina. Testausta tehdään myös jatkuvasti projektin aikana, eikä vain lopuksi.

Tehtävät priorisoidaan tärkeysjärjestykseen, joka tarkoittaa usein sitä, että tuote voidaan julkaista usein jo aikaisemmin kuin perinteisissä projekteissä, kun käyttökelpoiset priorisoidut osat on saatu valmiiksi.

Scrumissa kehitystiimin vuorovaikutus on erityisen tärkeää. Tiimin jäsenet auttavat toisiaan ja kaikki ovat yhdessä vastuussa sprintille määriteltyjen tehtävien valmistumisesta. Tämä johtaa nopeampiin tuloksiin ja parempaan koodin laatuun.

Scrum-menetelmällä tehdyillä projekteilla on usein parempi asiakas- ja käyttäjätyytyväisyys, mikä johtuu usein siitä, että asiakkaat saavat käyttökelpoiset osat tuotteesta nopeammin käyttöönsä ja voivat tarvittaessa antaa palautetta tuotteesta. Alkuperäisiin määrittelyihin voidaan näin tehdä helpommin muutoksia ja turhalta työltä vältytään.

Scrum-general-image