Er vi like kloke, da?

Er vi like kloke, da?

Geir Amsjø i Abelia Innovasjon kommenterer Magne Jørgensens "Under lupen"-artikkel som sto på trykk i Computerworld 18.06 2004
Utvalget av "Best Practices" for systemutvikling blir bare større og større, og beslutningsgrunnlaget for en stakkars utviklingssjef synes å bli svakere. Hvem skal vi stole på? Hvordan kan vi klare å skille mellom rene påstander og vitenskaplige fakta? Under hvilke forutsetninger er konklusjoner gyldige og relevante? Hvilke verktøy og metoder passer best innenfor vårt markedsområde?

Magne Jørgensen viser her til to ganske omfattende undersøkelser om systemutviklings-parksis som har potensiale til å belyse sammenhengene mellom valgt praksis og ytelse.

Den ene er forholdsvis gammel (1997-98) og er vel mest egnet til å pirre konkurranseinstinktet vårt, snarere enn å gi så mye ny kunnskap. Undersøkelsen rangerer 16 ulike land innenfor et utvalg av praksiser, der vi kan finne plasseringen til Norge basert på 15 prosjekter som har deltatt. Så vidt jeg kan se er det svært lite å hente av lærdom om beste praksis her.

Den andre undersøkelsen er fra 2003 med det lovende navnet "Software Development Worldwide: The State of the Practice" publisert i IEEE Software. Her er det 4 utvalgte regioner som konkurrerer: India, Japan, USA og Europa. Totalt har 104 prosjekter deltatt. Her kan vi blant annet få belyst våre oppfatninger/fordommer når det gjelder kulturelle ulikheter.

Undersøkelsen viser en del utvalgte praksiser fordelt på regionene, samtidig som den sier noe om produktivitet (kodelinjer per tidsenhet) og kvalitet/feilhyppighet (antall feil etter leveranse per kodelinje). Magne Jørgensen peker på at Japan er desidert best på feilhyppighet - og kommer med en mulig forklaring ut fra hans kjennskap til japansk kultur:

"Det er sannsynligvis kvalitetskulturen fremfor moderne metoder som gir utslaget". Mye mulig det. Eller kanskje det kommer av lavere kompleksitet, eller mer konservativ teknologibruk? Japanerne er - så vidt jeg har oppfattet - mer disiplinerte og strukturerte enn innovative; de er best på produksjon og ikke fullt så gode på nyutvikling. Men her kan jeg selvsagt ta feil. Det mest interessante her er kanskje at Japan i tillegg til å lage suverent best kvalitet også er mest produktive! Det er kanskje noe i utsagnet "Quality is free"!

Når jeg leser IEEE-artikkelen merker jeg at jeg sitter og leter etter ting som underbygger oppfatninger jeg allerede har. Og jeg forklarer lett "skuffende" funn med at det her sikkert er utenforliggende årsaker som slår ut. Jeg har for eksempel stor tro på kodegranskninger som kvalitetssikrende tiltak - og der er India klart best. Men de leverer altså mye flere feil enn japanerne. Kanskje de gjør det på feil måte? Sikkert noe med indisk kultur som slår negativt ut...

Vi kan vel konkludere med at det er lite udiskutable fakta som kommer ut av slike globale undersøkelser. Men det kan gi artige diskusjoner om kulturelle forskjeller!

Finnes det "Sannheter" i det hele tatt? En eneste ting er nok udiskutabel: Skal man løse komplekse (systemutviklings-) problemer i samarbeid med andre bør man finne en felles metode - og holde seg til den. Da kan man kontinuerlig forbedre den, så lenge rammene er noenlunde stabile. Jeg har ikke sett noen som argumenterer for å la kreativiteten råde på alle områder og styre gjennom anarki.

Jeg har notert at flere "guruer" innen Software Engineering tar til orde for at "det er bedre å bare velge en metode på måfå, enn å ikke velge metode i det hele tatt". Tror det er mye i dette. Da oppnår vi i alle fall muligheten til å vinne erfaring hver gang vi benytter metoden slik at vi kan stadig forbedre den. Det er nok her nøkkelen ligger. Vi kan konkurrere med oss selv, gjennom å måle egen ytelse i forhold til forrige prosjekt. Under noenlunde stabile rammebetingelser vil vi kunne ende opp med metoder som er helt skreddersydd egne behov.

Hva kan vi stole på? Magne Jørgensen peker i artikkelen på svakhetene til en del undersøkelser som kan ha "kommersiell slagside". Han nevner spesielt de som viser fortreffeligheten til modenhets- og kvalitetsmodellene (her CMM, SPICE og ISO 9000) og til "de som lever av å selge prosessforbedring" basert på disse.

Det er ganske riktig publisert en mengde artikler som viser positiv utvikling over tid (mindre feil, bedre leveransepresisjon, høyere produktivitet) i organisasjoner som benytter disse. Både av organisasjonene selv og av konsulentene som selger relaterte tjenester. Men vi skal huske at de som virkelig "har fått det til" har per definisjon også samlet erfaringsdata som lett kan vise utviklingstrender over tid, så terskelen for å publisere er lav.

At noen har forsket fram konklusjonen om at det ikke kan påvises slike sammenhenger er jo for en naturlov å betrakte. Forskere er nemlig ikke heller helt nøytrale og uhildede. De vil også ofte lete ekstra nøye etter faktorer som underbygger egne oppfatninger - og de vil lett bli entusiastiske når de ser konturene av overraskende resultater. Det er først da det blir "banebrytende"...

Behøver vi da kanskje ikke forskning på systemutviklingspraksis? Jo selvsagt gjør vi det. Vi trenger mye mer. Men industrien må nok ikke forvente klare fakta og helt nøytrale råd. De må rett og slett være godt nok orientert selv til å kunne benytte litteratur, artikler og forskningsrapporter som beslutningsstøtte!

Det er en økende trend i bruken av modenhetsmodeller. CMM-modellen for eksempel stiller krav til at man velger seg metoder, og holder seg til disse for å oppnå repeterbarhet og altså muligheten til kontinuerlig forbedring. Men modellen foreskriver ingen spesifikk metode. Den forteller ikke hvordan du skal tilfredsstille kravene, bare at du skal gjennomføre og institusjonalisere en praksis. Det kan ikke bli veldig feil å benytte en slik modell i det minste veiledende. Jeg har aldri sett brede undersøkelser som viser at bruken av modenhetsmodeller slår negativt ut. Men vi vet ikke nok om dette - så dette er et opplagt område å undersøke nøyere.

Det er også et poeng at noen modenhetsmodeller i tillegg kan brukes til benchmarking, og som Magne Jørgensen påpeker vil en god score her kunne gi markedsmessige fortrinn. Innenfor enkelte markedssegmenter er dette utvilsomt viktig allerede.

Abelia Innovasjon vil 7. og 8. september, i samarbeid med SPIKE-prosjektet arrangere en åpen samling der toneangivende forskere fra USA, Norge (deriblant Magne Jørgensen) og Danmark utfordres til å forklare og diskutere hva som kan ansees å være beste praksis - gg hvor godt dette kan underbygges. Se www.abelia-ionnovasjon.no for flere detaljer. Trykk Programvareteknologi og -metoder eller SPIKE i venstre marg.

Geir Amsjø,
Abelia Innovasjon