by

Tampereen testauspäivät, päivä 2

Nyt TTY:llä järjestetyt testauspäivät ovat siis ohi. Toinen päivä koostui seminaareista, eikä keskusteleva luonne ehkä korostunut niin paljoa. Kuitenkin, kaikki aiheet olivat melko kiinnostavia, mutta vain osasta (omaan mielenkiintooni osuvista) jaksoin tehdä muistiinpanoja (kännykkään).

Testiautomaation ongelmat ja niiden välttäminen

Päivä alkoi Tuula Jokiharjun ja Tuula Pääkkösen (Nokia) pitämällä seminaarin testiautomaation sudenkuopista ja niiden välttämisestä. En tehnyt muistiinpanoja. He kuvasivat aika perusasioita testausautomaation epäonnistumisesta ja onnistumisesta, mutta paljon ihan hyvää asiaa. He puhuivat siitä, kuinka kiistatta automatisoitu testaus tuo etuja silloin, kun se tehdään kunnolla ja suunnitellusti. Jos testitapauksista 30-50% voidaan automatisoida, ollaan automatisoinnissa onnistuttu. Ketterät menetelmät ja yksikkötestaus hyötyvät automatisoidusta testauksesta.

Ketterä testaus ja ohjelmistojen laatu

Ketterillä menetelmillä kehitetyt ohjelmistot saavat laatunsa muulla tavalla kuin perinteisellä tiukalla testaamisella. Listaan nyt muutamia näistä mekanismeista: Pyritään toimittamaan asiakkaalle nopeasti jonkinlainen (toimiva, mutta toiminnoiltaan vajaa) tuote ja toimitetaan uusia versioita usein. Tämä helpottaa kehityksen seuraamista ja asiakkaan on helppo nähdä mahdollisia heikkouksia. Myös julkaisun riskin määrä pienenee. Pyritään kommunikoimaan pääasiassa kasvotusten, ei siis esimerkiksi sähöpostin tai puhelimen välityksellä. Työskennellään yhdessä asiakkaan, kehittäjien, testaajien ja yrityksen bisnesjohdon kanssa. Pyritään välttämään featureviidakko, eli karsitaan turhat ominaisuudet minimiin.

Ketteristä menetelmistä ei testauksen perinteistä V-mallia löydy, eikä suunnitelmavetoinen testaus yksinkertaisesti onnistu. Testaus onkin siis erottamaton osa ketterästä ohjelmistokehityksestä. Yleensä yrityksessä, joka käyttää ketteriä menetelmiä, ei ole testaajia tai koodaajia, vaan kaikki tekevät kaikkea, mitä osaavat. Laatua parantavat myös pariohjelmointi (Nokialla ilmeisesti (Nokia käyttää Scrumia) toinen parista ohjelmoi ja toinen luo testejä), jatkuva integrointi, testaajien ja kehittäjien yhdessä työskenteleminen ja testivetoisuus. Huomattavaa on, että perinteisen softatestauksen lisäksi myös vaatimuksia voidaan testata, tai ainakin katselmoida, jolloin suurimmat ötökät saattavat tippua tai ainakin kaikki ymmärtävät, mitä haetaan.

Nokia ja Scrum

Yllätyksekseni sain kuulla, että Nokialla (ainakin joissain projekteissa) käytetään Scrumia + Extreme Programmingia. Harmikseni sain tiedon vasta nyt, kandidaatintyöni on mennyt juuri vähän aikaa sitten siihen vaiheeseen, ettei sitä voi enää muuttaa. Kandidaatintyössäni päädyin siihen tulokseen, että Scrum + Extreme Programming on hyvä ja tehokas tapa toteuttaa softakehitystä, tämä olisi ollut todella hyvä todiste siitä. Täytyyhän sen olla hyvä juttu jos Nokia sitä tekee!!

Kommentoi

Comment