Kvalitet i kaotisk utvikling

Kvalitet i kaotisk utvikling

SQS leverer kvalitetstesting av applikasjoner. Smidige teknikker øker i popularitet. Og i kvalitet.

Utviklingsteknikker innenfor sjangeren smidig utvikling (Agile Development) innebærer nye utfordringer for testing og kvalitetskontroll. Spesielt den populære Scrum-metodikken kan være krevende, siden tempo og korte utvikingssyklus presser tiden til kvalitetskontroll av helheten.

- Vi ser veksten komme innenfor smidig programutvikling. I løpet av de siste årene utgjør de en tredjedel av virksomheten, forteller David Evans, ansvarlig for tjenester mot smidig-miljøet i Software Quality Services (SQS). Han baserer dette på en rapport fra Forrester i januar, som viste at smidig utvikling var i ferd med å bli det normale i utviklingsmiljøene.

Nesten halvparten av utviklerne som ble undersøkt i rapporten, jobbet nå med smidige utviklingsmetoder. Mest populær er Scrum-metodikken. Forrester mener grunnen er at dette er en enkel, praktisk og populær variant med mange utviklere.

Smidig med struktur

Evans bekrefter at dette er mye av det samme bildet han ser hos SQS. Delingen mellom smidige og vannfallsteknikker er nå omtrent likt, med smidig i sterkest vekst. Mye av veksten tas fra vannfall-metoder.

Med vannfall (waterfall) menes her hva som for øyeblikket anses som «klassisk» utviklingsteknikk, med de metoder som tilhører dem. Med andre ord, man har en tilnærmet fullstendig kravspesifikasjon og idé for et ferdig produkt, og så utvikles dette fram til et tilnærmet ferdig produkt/løsning i en eller flere utviklergrupper, med en eller flere prosjektledere, og en styringsgruppe.

SQS har selv funnet at ryktet om at smidig utvikling innebærer rot og mangel på struktur står for fall. Smidig-metodene forutsetter dokumentasjon og disiplin for å holde kravene til tempo.

- Den ordinære forretningsdriften krever denne type utviklingsprosesser. Krav om raskere resultater og endringer som kommer inn fra driften betyr andre tilnærminger.

Administrasjon av smidige programutviklingsprosjekter dreier seg om å redusere risiko. Og selv med kortere syklus og test i hver syklus, så må kvalitetssikringen (Q&A) være enda bedre for å sikre at totalresultatet holder mål, understreker Evans.

Han viser til at i en verden med Internett må kvaliteten være høy siden feil gir umiddelbar utslag for forretningsdriften. Derfor blir testing i hver syklus og dellevering ekstra viktig.

Det er også viktig at utviklere og prosjektleder ikke blir så fanget i prosessen at de mister det totale blikket. Samtidig innebærer smidig utvikling at ikke alt kan planlegges i detalj fra starten av. Men det som dukker opp underveis, må håndteres på en skikkelig måte.

Tyske SQS har tatt over som største uavhengige leverandør av test- og kvalitetskontroll i Europa etter at Mercury ble kjøpt opp av HP. Et viktig moment i deres testprosedyrer er hvordan erfaringene fra test og kvalitetssikring kan brukes til å lære organisasjonen bedre utviklerprosedyrer.

Målet er å få et system for kvalitetssikring som er rask, effektiv, har lave kostnader og hvor man unngår regresjonstesting så langt det går.

Et spørsmål om kultur

SQS leverer produkter delt i tre hovedmoduler som kan integreres med hverandre. Sentralt står et konsolidert vindu med relevant informasjon og oversikt («Dashboard»).

Det er også verktøy for å gjennomføre og følge opp tester, og et for å administrere tester. Integrasjon mot de vanligste utviklerverktøyene er på plass. Selskapet kan også tilby konsulenttjenester innenfor feltet.

- Det er viktig at man ikke tror kvalitet kan kjøpes i en boks, sier Evans. Han poengterer at en viktig side med å ta i bruk kvalitetssikringsverktøy er at det må passe inn i kulturen i bedriften. Den største faren bedrifter som tar i bruk smidig utvikling og Scrum-metodikk er at de legger for liten vekt på opplæring og oppfølging i starten.

Det er også sentralt å sikre at utviklerne har eierskap til hele prosessen, ikke bare sin lille del. Gode verktøy for oppfølging som også viser sammenhengen er derfor viktig.

- Det hele må forankres i at ansvaret for kvaliteten i helheten av utviklingsprosjektet ligger hos alle deltakerne, ikke hos testerne eller lederne alene, understreker Evans.

Utvikling