Vakthund for systemdesign

Ved utvikling av mellomstore og store dataprogramsystemer, kan det være vanskelig å beholde oversikten. Bark er et verktøy med åpen kildekode, som hjelper utviklere med å se det store bildet.

Denne artikkelen er over ti år gammel og kan inneholde utdatert informasjon.

Svært mye av dagens programutvikling følger ikke tradisjonell systemutvikling, der det er en full spesifikasjon før utvikling starter.

Programvareutvikling er preget av smidighet, med koden som den eneste fullstendige dokumentasjonen. Forskere ved Norsk Regnesentral (NR) har laget et verktøy for å understøtte nye utviklingsmetoder.

Verktøyet Bark er en “vakthund” for systemdesign. Bark hjelper utviklere til å se det store bildet og overvåker koden i mellomstore og store Java-systemer.

Verktøyet brukes av programutviklere og hjelper disse med å holde oversikt over koden gjennom å visualisere strukturer og avhengigheter. Bark viser diagrammer over system- og delsystemstrukturer, og deres avhengighetsforhold.

Bedre kontroll over programkoden

Bedre kontroll over programkoden er ett av målene med forskningsprosjektet. Ved utvikling av mellomstore og store programsystemer, er det vanskelig å beholde oversikten over systemet og dets egenskaper.

Systemets interne strukturer er vesentlig ved videreutvikling, og er samtidig relevante for stabilitet og korrekthet av systemet.

Oversikt er nødvendig for å sikre at designet - den overordnede strukturen til systemet - følges eller endres kontrollert mens systemet utvikles. Nøkkelen til å få oversikt er bedre verktøy.

Java-systemer og Barks muligheter

Et stort Java-system består av mange klasser samlet i pakker. Pakkene samler relaterte deler av koden og pakker ordnes igjen i hierarkier.

Verktøyet Bark analyserer Java-kode og bygger en modell av alle avhengigheter mellom klasser og pakker. Det tillates også brukere å gruppere pakker/hierarkier til større enheter som benevnes moduler, for å indikere designsammenhenger.

Brukeren kan:

- Avdekke uhensiktsmessige avhengigheter mellom deler - en indikasjon på dårlig design.

- Gruppere sammenhørende pakker i moduler for å få en mer abstrakt modell.

- Modifisere modellens form.

- Usynliggjøre irrelevante deler av modellen.

- Lagre og laste modeller.

Forskerne jobber nå med å få Bark til også å vise forskjellen mellom systemer på ulike tidspunkter, det vil si mellom ulike systemversjoner.

Bark er åpen kildekode og virker sammen med det integrerte utviklingsmiljøet Eclipse, som også er åpent.

For mer informasjon, se Barks hjemmeside hos NR.

Powered by Labrador CMS