Mikä ihmeen SAFe, onko se joku amerikkalainen kassakaappi? No ehkä sitäkin, mutta SAFe on yksi ketterä menetelmä, joka on tarkoitettu isoille organisaatioille ja operaatioille, joissa on monia tiimejä ja niiden välisiä riippuvaisuuksia. Sellaisia riippuvaisuuksia siis, jotka ovat toivottuja, ja tarkoittavat, että teemme firmassa yhteistyötä.
Better SAFe than sorry, siis! Ja vaikka olisit pienempi firma, voit koko SAFen implementoinnin sijaan hakea SAFen yksittäisistä menetelmistä ideoita omaan työskentelyyn. Jotkut sanovatkin, että SAFe on hyvien ideoiden sulatusuuni. Huomiona että SAFeen kohdistuu myös jonkun verran (ihan perusteltuakin) kritiikkiä, mutta tässä kirjoituksessa keskitymme sen luomiin mahdollisuuksiin.
SAFe on siis yksi vaihtoehto sille, ettei näitä mammuttihankkeita tarvitse toteuttaa perinteisen vesiputousmallin mukaan. Vesiputousmallissa eli perinteisessä projektimallissa eletään maailmassa kuvitellen, että voimme tietää, suunnitella ja vieläpä kuvata kaiken kauniiksi kaavioiksi etukäteen, valtavan hankkeen tai ohjelmistokehitysprojektin alkaessa.
Ketterän kehittäjän mielestä vesiputous-mallissa on se ongelma, ettei todellisuus koskaan oikeasti vastaa näitä ihanteellisia kaavioita ja unelmia. Vesiputouksen pinnan alla kytee kiviä, jotka eivät virtausta suunnitellessa näkyneetkään maastokartassa. Myös sää voi muuttua ja nostaa veden pintaa, tai mitä tahansa muuta yllättävää tapahtua. Siksi ketterä kehittäjä tarjoaa iteratiivista, jatkuvasti itseään korjaavaa agile-mallia tilalle tarkempana ja todellisempana vaihtoehtona.
SAFe on yksi ketterä viitekehys, ja siinäkin pureskellaan se elefantti niin sanotusti osiin, ja matkalla siitä saattaakin syntyä tiikeri!
SAFe-lyhenne tulee sanoista Scaled Agile Framework, ja se onkin tarkoitettu vähän monimutkaisempaan ympäristöön. Jos siis harkitset muutaman tiimin ympäristössä (esim. alle 50 henkeä) SAFen käyttöönottoa, palaa takaisin pelin lähtöruutuun.
Näin pelaat SAFe-peliä
SAFe on siis vähän kuin ketterä konsolipeli, jossa yritämme tehdä junamatkustamisesta kaikin tavoin tuottavaa ja kivempaa- sekä junan henkilökunnalle eli pelaajille, että matkustajille eli asiakkaille.
SAFessa kehityshankkeita siis arvioidaan ja edistetään erilaisilla tasoilla pelkän tiimitason sijaan, ja tasoille on kirjoitettu valmiiksi erilaisia roolisuorituksia, joilla tämä pelitaso voitetaan. Jos sinulla siis on pelissä mukana yli 50 tai jopa tuhansia pelaajia, voit harkita, että pelaat kehityshankkeesi kasaan SAFe-viitekehyksellä.
Touhu alkaa siitä, että toisistaan riippuvaiset pelaajatiimit muodostavat keskenään ART-junan, ja pelin tarkoitus on parantaa tämän junan toimintaa ja matkustajien eli asiakkaiden tyytyväisyyttä. Tässä pelissä on myös se poikkeus normaaliin konsolipeliin, että tässä kaikki tiimit pelaavat toistensa puolesta, ei toisiaan vastaan, junan konduktöörit ja muut henkilökunta eli johto mukaan lukien. Pelin pahikset ovat niitä, jotka yrittävät heittää kapuloita junan rattaisiin.
Seuraavat kokonaisuudet ovat tärkeitä pelimoottoreita:
- Tuotehallinta
Nämä pelurit varmistavat sen, että tiedämme minne meidän juna on menossa. Meillä on siis yhteinen päämäärä ja tarkoitus, ja koko matkassa on jotain järkeä, oli se sitten näköalamatka ja tai kiireinen business trippi. Tämän tarkoituksen nimi on backlog.
Tähän poppooseen kuuluvat mm. junatason Product Managerit, jotka vastaavat isommista aloitteista, ja tiimitason Product Ownerit (PO:t), jotka vastaavat samasta asiasta sitten taas vaunutasolla.
Jengissä ovat myös esimerkiksi systeemiarkkitehdit, jotka varmistavat, että koko junanrataverkosto on kunnossa, eivätkä junat törmäile toisiinsa. He ovat vastuussa myös niin sanotusta kiitoradasta varmistaen sen, että kun junalle suunnitellaan uusia matkakohteita, raiteet sinne on rakennettu riittävän ajoissa sujuvaan matkailuun, mutta ei toisaalta niin aikaisin, että ne ehtivät lahoontua ennen kuin juna pääsee uudelle reitilleen.
Myös RTE eli eräänlainen super pelaaja on tämän poppoon avainpeluri. Hän poistaa esteitä raiteilta ja suunnittelee juna-aikataulut sujuviksi. - Jatkuvan kehityksen putki
Jotta pelaaminen on mielekästä ja pelissä voi voittaa ja menestyä, pelaajille on rakennettava jatkuvan kehittymisen putki. Pelissä on siis oltava mahdollisuus tunnistaa olennaisia tarpeita, selvitä niistä, ja julkaista oma score maailmalle. Peli onkin vähän niinkuin avoin kehitysalusta tässä mielessä. Mitä useammin pelaajat julkaisevat omia onnistumisiaan ja scorejaan koko pelaajayhteisön ja matkustajien eli asiakkaiden nähtäväksi, sitä paremmin muut pystyvät pelaamaan.
Tässä apuna toimii junan DevOps- pannu. DevOps-pannun suunnittelijat ajattelivat, että junan vaunut ja tekniikka sekä sen huolto ovat osa yhtä yhteistä kokonaisuutta, jota on järkevämpi sekä kehittää että huoltaa yhdessä eikä siiloissa, eri vaunuissa murjottaen. Kaikkiin SAFe-pelin juniin on asennettu DevOps – pannu ja junasta pidetään huolta yhtenä kokonaisuutena.
Super Marion ja Harry Potterin kohtaaminen
SAFessa pelitiimeillä on yhteinen aikataulu sekä viikko- että vuositasolla, ja samanmittaiset pelaamisen iteraatiosyklit eli sprintit- sanotaan nyt niitä vaikka pelimoduleiksi. Noin 4-6 tällaista pelimodulia muodostaa yhden pelitason, jossa moduleiden välillä on suunnitelmia ja riippuvuuksia.
Tiimit suunnittelevat yhden PI:n eli pelitason yhdessä kerrallaan. Tarkoitus on lisätä yhteistyötä ja sen vaikuttavuutta. Jos Super Mario tiimistä 1 tarvitsee Harry Potteria avukseen tiimistä numero 2, tekevät he treffit esimerkiksi pelimoduliin numero 3. Jokaisen modulin lopussa tiimit demoavat omaa suoriutumistaan toisilleen, ja yrittävät juonia, miten läpäisisivät seuraavat modulit tehokkaammin. Modulidemojen lisäksi pelitason lopuksi demotaan yhdessä kokonaisuutta ja katsotaan, millä scorella tämä taso eli PI läpäistiin.
Yhden n. 4-6 modulin pelitason nimi on PI, elikkäs pidemmin Product Increment. Sen kesto on tyypillisimmin 10 viikkoa. Pelitason muut modulit on tarkoitettu puhtaasti yhdessä pelaamiseen ja pelin parantamiseen demojen ja itsetutkiskelun kautta, mutta viimeinen moduli on jätetty näistä vapaaksi. Se on tarkoitettu isompaan innovointiin ja pelin hakkerointiin siinä mielessä, että nyt sääntöjä ei enää tarvitse noudattaa, vaan luovuuden voi päästää valloilleen. Miten koko peliä voisi muuttaa, saadakseen paremman scoren?
SAFe-junan konduktööri keittää kaikille kahvit
SAFe-junan pelaajat jakavatkin yleensä seuraavat arvot:
- Matkustaja-eli asiakaskeisyys: jotta pelaaminen on kivaa, täytyy matkustajien olla hymyileviä ja tyytyväisiä
- Lean-agile periaatteet: SAFe- junan sisustus on liinistien ja agilistien suunnittelema. Liinisti pyrkii optimoimaan hukkaa. Hän kysyy aina itseltään kerran tai kaksi, onko tämäkin sisustushökötys todella tarpeellinen, vai onko se vain matkustajan tiellä ahtaassa junassa liikkuessa? Agilisti pyrkii taas vastaamaan tähän liinistin kysymykseen lempeästi, iteroiden, matkustajilta kysellen ja muut pelaajat huomoiden.
- Palveleva johtaminen: Myös konduktööri eli junan palveleva johtaja jakaa saman sisustusmaun. Hän haluaa ehdottomasti ja ensisijaisesti olla palveleva johtaja, joka saa kaikki viihtymään junassa. Hän sanookin mielellään keittävänsä koko porukalle vaikka kahvit, jos tarve niin vaatii. Hän on kaikkien pelaajien ja matkustajien suurin fani.
Mietitkö, sopisiko SAFe sinulle? Ota meihin yhteyttä, me jeesaamme!