Svært lønnsomt med moderne utviklerverktøy

En Gartner-analyse viser at man får fem ganger igjen for å investere i moderne utviklerverktøy.

Analyseselskapet Gartner har kunngjort rapporten ARAD Methods and Tools Improve Productivity and ROI. ARAD står for «architected rapid application development». Ifølge en av leverandørene nevnt i rapporten, Compuware, dekker begrepet det samme som MDA eller «model driven architecture». MDA var gjenstand for oppmerksomhet på JavaZone i Oslo i september, da en av Compuwares ledende utviklere, nederlandske Wim Blast, holdt en detaljert presentasjon av temaet. I tillegg til Compuware (OptimalJ), leverer også Computer Associates (Advantage:Plex) og IBM (Rational Rapid Developer) verktøy for ARAD eller MDA.

I rapporten gjør Gartner rede for sju tilfeller der et utviklingsmiljø har satset på å lære seg et av disse verktøyene. Erfaringene settes inn i en felles referanseramme som gjør det mulig å anslå inntjeningen på den totale investeringen – inkludert opplæring og liknende kostnader.

Poenget med ARAD eller MDA er at man skal underkaste seg strenge krav til modellering og arkitektur, slik at så mye som mulig av utviklingsarbeidet skal kunne gjenbrukes. Gartners konklusjon er at verktøyene lykkes så godt med dette at man i løpet av fem år får igjen mange ganger den opprinnelige investeringen.

I snitt, ifølge Gartner, får man igjen hele investeringen i ARAD eller MDA allerede det første året. Forventningen over fem år er en gjennomsnittlig inntjening på fem ganger den opprinnelige investeringen. I ett tilfelle mente Gartner at brukeren lå an til å tjene inn investeringen hele femten ganger i løpet av fem års bruk, sammenliknet med vedvarende bruk av mer konvensjonelle utviklingsverktøy. De som fikk mest igjen, var de som var flinkest og mest produktive fra før, slik at de lærte fort å bruke de nye verktøyene effektivt.

På JavaZone brukte Wim Blast denne plansjen for å illustrere essensen i MDA:

– Det vi tar sikte på med MDA, er å skille mellom den teknologiske plattformen som en applikasjon skal realiseres i, og en standardisert beskrivelse av hvordan applikasjonen skal fungere, slik at selve applikasjonen kan genereres automatisk som en multiplikasjon av teknologi og modell. Får man en ny teknologisk plattform, for eksempel en oppgradering av Java 2 EE, regenererer man applikasjonen ved å «multiplisere» den funksjonelle modellen med den nye teknologien. I stedet for å ligge i kildekoden, er verdien av applikasjonen forankret i den funksjonelle modellen. Ved hjelp av MDA-verktøyet kan modellen realiseres på den teknologiske plattformen som passer best, var forklaringen Wim Blast formulerte til digi.no etter foredraget.

I plansjen er modelleringen gjengitt som «domain model», og ekspertene som skal drive med dette er «domain experts».

– «Domain» viser til de funksjonelle kravene slik brukerne ser på dem. Det dreier seg om hvordan en applikasjon skal realiseres, om hvilke metoder som er de beste, sier Blast.

Det plansjen betegner som «platform experts» er de som står for de teknologiske plattformene, og som det er opptil leverandørene av MDA-verktøy å få til å levere plattformene i en passende form som kan «multipliseres» med en model for å generere en kjørbar applikasjon.

Ideelt sett skal «application developers» først inn i stadiet for «technology selection and tuning», for å bidra til at resultatet av multiplikasjonen blir best mulig, før den kjørbare koden når fram til sluttbrukerne.

– Det store spørsmålet innen applikasjonsutvikling er hvordan vi skal holde tritt med endringene i brukernes krav, beholde det som skal beholdes og legge til nye ting. Når applikasjonen defineres i modellen ligger verdien der, og man gjør endringer der for så å generere hele applikasjonen på nytt, heller enn å gå inn i kildekoden og finne ut hvor man kan legge til nye moduler.

Blast mener at det han kaller «domenekunnskap», altså kunnskap om hvordan brukerne vil at applikasjonen skal fungere, forvitrer i tradisjonell applikasjonsutvikling, fordi kodingen foregår mens brukerkravene endres, slik at den ferdige koden ikke lenger gjenspeiler det brukerne egentlig vil. Med MDA er det kreative bak en applikasjon ideelt sett ferdig i det domeneekspertene har gjort sett, resten er rutine som skal ta kortest mulig tid.

– Alle de store verktøyleverandørene arbeider med MDA, og spørsmålet er ikke lenger om hvorvidt, men om når de fleste tar den i bruk. Merk at ikke all MDD («model driven development») er MDA. MDA skiller domene og teknologi, automatiserer multiplikasjonen av domene og teknologi, og innebærer produktivitet i utviklingen uten at man mister kontroll.

Og når Gartner att på til er i stand til å vise at det lønner seg, er grunnlaget lagt for at MDA (eller ARAD) sprer seg raskt, selv om teknologien ikke helt er i stand til å realisere alle løftene. Compuware peker på at utviklerrollen i plansjen ovenfor fortsatt er uomgjengelig, blant annet fordi MDA-baserte verktøy foreløpig ikke kan forventes å brukes på mer enn 60 til 85 prosent av den ferdige koden. Halvfabrikata gjør det likevel mulig å gjøre mindre bruk av dyre spesialister for å gjøre applikasjonene helt ferdig, ifølge Compuware.

Compuware Nordic oppgir det norske konsulentselskapet Mesan som referansekunde. Mesan har brukt OptimalJ i to år i sine systemutviklingsprosjekter, og melder om store besparelser – for seg selv og for kundene.

    Les også:

Til toppen