Juho Perälä
28.09.2018 · Juho Perälä

Laatua DevOpsilla

Mitä jäi käteen Testing Assembly -seminaarista?

Viime viikolla osallistuin Helsingissä järjestettyyn vuosittaiseen Testing Assemblyyn. FISTB:n (Finnish Software Testing Board) jo seitsemättä kertaa järjestämä tapahtuma ylitti jälleen itsensä. Tänä vuonna se houkutteli paikalle lähes 400 testauksesta ja laadunvarmistuksesta kiinnostunutta osallistujaa, mikä tekee siitä Suomen mittapuulla varsinaisen suurtapahtuman.

Esitysten teemana oli tällä kertaa ytimekkäästi DevOps+QA, eli testauksen ja laadunvarmistuksen toteuttaminen osana DevOps-organisaatiota. Esityksiä oli tarjolla samanaikaisesti kahdessa eri salissa, joten luentosalien välisiä portaita tuli päivän aikana käveltyä kerta jos toinenkin itselle kiinnostavimpien tarinoiden perässä.

 

Luottamuksen ilmapiiri

Tapahtuman avasi Dawn Haynesin Are you in the Boat -keynote, jossa hän korosti tiimityön, luottamuksen ja kommunikaation merkitystä kehitystyön onnistumisessa. Esityksessä käytiin läpi sudenkuoppia testauksen ja muun kehitystiimin välisessä vuorovaikutuksessa sekä vääristyneiden vastuiden tuomia ongelmia. Tällaisia ovat muun muassa tilanteet, joissa testausta ei nähdä osana kehitystiimiä, tai joissa testaus määrää liikaa kehitystä.

Dawn nosti esiin myös Patrick Lencionin The Five Dysfunctions of a Team -kirjan oppeja tiimityön karikoista. Esityksen parasta antia olivat tosielämän esimerkit projekteissa pieleen menneistä päätöksistä sekä pohdinnat siitä, kuinka pulmilta olisi voitu välttyä paremmalla kommunikaatiolla ja tiimin yhteisen edun ajamisella.

 

 

Päivän aikana ihmiset, yhteistyö sekä kommunikaation merkitys nousivat muutenkin kantaviksi teemoiksi DevOps-kulttuurin luomisessa. Aiheeseen pureutuivat muun muassa Maria Lillvik esityksessään “Kommunikaation tärkeys ja ihmiset huomioon ihmisinä” sekä Emilio Soresi esityksellään “Collaboration and communication: two cornerstones of successful DevOps”.

 

Automatisoi kaikki (mikä kannattaa)

Toisena kantavana teemana esiin nousi automaation merkitys DevOps-käytäntöjen teknisenä mahdollistajana. Jotta organisaatio kykenisi toimimaan ketterästi ja tuottamaan jatkuvia julkaisuja, tulee koko kehitysputken tukea tätä. Loppupeleissä organisaation ketteryyden määrää ketjun heikoin lenkki. Siksi tulisi pyrkiä automatisoimaan kaikki kehitysvaiheet automaattisista buildeista testaukseen, julkaisuihin ja ympäristöjen provisiointiin.

Automaation rooli nousi vahvasti esiin myös tuotteen laadun parantajana. Mitä vähemmän kehitystyössä on käsin hallittavia välivaiheita ja konfiguraatioita, sitä nopeammin ja paremmin työ on toistettavissa. Samalla jää vähemmän tilaa ihmisten aiheuttamille satunnaisille virheille.

 

Tommi Berg: DevOps organisaation rakentaminen

 

Tommi Berg kertoi esityksessään Elisan muutoksesta DevOps-organisaatioksi ja kuinka he ovat hyödyntäneet virtualisointi- ja automaatioratkaisuja (muun muassa OpenStack, Kubernetes, OpenSift ja Jenkins) ympäristöjen ja julkaisujen automatisoinnissa. On ilahduttavaa nähdä, kuinka jopa melko perinteiseksi mielletyllä toimialallaan Elisa on nopeasti pystynyt muuntautumaan moderniksi DevOps-organisaatioksi työkulttuuriin ja teknologiaan panostamalla.

 

Jani Haapala: Testiautomaation tulevaisuus?

 

Testauksen näkökulmaa automaatioon toi Jani Haapala, joka esityksessään kävi läpi omaa kehistyskaartaan testiautomaation asiantuntijaksi. Esityksessä käytiin pelillistämisen tavoin läpi testiautomaation hirviöitä, jotka voittamalla on mahdollista saada testiautomaatiosta entistä suurempaa hyötyä. Janin kanssa on helppo olla samaa mieltä siitä, että kun testiautomaatiokehityksen sudenkuopat osataan kiertää, testimassojen ylläpidon haasteet selättää sekä testeistä saatava data analysoida, on rakennetulle automaatiolle mahdollista saada merkittävää lisäarvoa. Ei tule myöskään unohtaa tulevaisuuden teknologioita, kuten tekoälyä, robotiikkaa ja itseoppivia menetelmiä, jotka voivat lähitulevaisuudessa muuttaa testiautomaation kehitystä radikaalisti.

 

Mittaa ja paranna

Päivän kolmas teema kulttuurin ja automaation rinnalla oli DevOps-kyvykkyyden mittaaminen ja kehitystyön jatkuva parantaminen. Ilman ymmärrystä organisaation ja kehitysprosessin pullonkauloista on mahdotonta ymmärtää, miten laatua ja ketteryyttä voidaan parantaa. Vaarana onkin, että keskitytään viilaamaan jo hyvällä tasolla olevia alueita todellisten ongelmakohtien jäädessä vaille ratkaisuja.

 

Jorma Peisalo: DevOps-maturiteetin määrittäminen


 

Szilard Szell ja Jorma Peisalo esittivät Nokian hyödyntämiä menetelmiä kehitystiimien DevOps-maturiteetin määrittämisessä ja parantamisessa. He käyttävät CMMI- ja TMMI-mallien tapaista maturiteettiasteikkoa, jolla voidaan määrittää organisaation DevOps-maturiteetti eri osa-alueittain. He nostivat esiin myös suurten, työkulttuuria muuttavien kehitysaskelten haasteet; ilman muutosta ajavaa ja organisaatiota tukevaa tiimiä edessä voi olla kivinen tie.

 

Sari Alander: DASA Competence Framework

 

DASA:n (DevOps Agile Skills Association) lähettiläs Sari Alander toi esiin DASA:n tarjoamia menetelmiä DevOps-kyvykkyyden ja osaamisen parantamiseen. DASA tarjoaa 12:sta alueesta koostuvan mallin DevOps-taitojen määrittämiseen sekä tätä tukevan sertifiointiohjelman.

Vaikka henkilökohtaisesti suhtaudun usein varautuneesti ulkopuolisten sertifiointien tuomaan lisäarvoon osaamisen kehittämisessä, on esitysten pääsanomaan helppo yhtyä. Vain tunnistamalla nykyiset kyvykkyydet ja ongelmakohdat on mahdollista kehittyä ihmisenä ja organisaationa.

 

Mitä jäi käteen?

Testing Assembly tarjosi kattavan läpileikkauksen DevOpsin hyödyntämisestä kehitystyössä laadunvarmistuksen näkökulmasta. Kotiin palatessa olikin hyvä sulatella päivän aiheita ja heränneitä ajatuksia:

  • Työkulttuuri: Panosta tiimihenkeen. Rakenna luottamuksen ja kokeilemisen ilmapiiri. Anna kokonaisvastuu tiimeille.
  • Automaatio: Automatisoi kaikki. Suosi pieniä muutoksia. Pyri nopeaan palautteeseen. Muista toistettavuus. Kehitä laatu edellä. Hyödynnä pilvi- ja virtualisointiratkaisuja.
  • Jatkuva parantaminen: Tunnista kipupisteet. Opi ja kehity jatkuvasti.

Päällimmäisenä mieleen jäi, että vaikka DevOps on melkoinen hypesana, niin loppupeleissä kyse ei ole erikoisesta tai uudesta asiasta. Samoja hyviä toimintamalleja ja käytäntöjä on käytetty ketterissä organisaatioissa jo aiemminkin.


Ps. Tapahtuman esitykset ovat ladattavissa FISTB:n Testing Assembly-sivuilta.

Kategoria
Teknologia

Haluatko tietää lisää aiheesta? Jätä tietosi, niin otamme yhteyttä.

Viimeisimmät blogikirjoitukset