Norsk oppfinner revolusjonerer all skjematenking

Den norske oppfinneren Geir Ove Skjærvik har søkt patent for en helt ny måte å bruke IT til å tegne og forholde seg til alle slags diagrammer.

Geir Ove Skjærvik har mange års erfaring med objektorientert utvikling og komponentbaserte systemer. Han er vant med kolossale skjemaer, og har lenge tenkt på hvordan man kan arbeide med store diagrammer slik at man beholder både detaljer og muligheten til å få oversikt.

- Diagrammer er opprinnelig laget for å vise mye informasjon på lite plass. Innen kompliserte prosjekter vokser diagrammer til å bli så store at det gir ingen mening å skrive dem ut eller ha dem på skjermen i sin helhet. Det er forbindelser på kryss og tvers. Alt blir uoversiktlig, og det kan være bortimot umulig å følge mange av relasjonene, uansett hva slags algoritme du bruker for å forenkle tegningen.

Problemet ble spesielt akutt i forbindelse med et prosjekt der Skjærvik ville lage en editor for å ta programvarekomponenter fra en "palle" og generere kode utfra et diagram.

- Jeg erfarte fort at den vanlige måten å tegne diagrammer på ikke er egnet når komponentene blir for store. Derfor begynte jeg å arbeide med nye prinsipper for å lage en komponenteditor. Etter noen måneder skjønte jeg at jeg egentlig holdt på å lage en generell editor for å tegne komponenter. Jeg har nå søkt om en "provisional patent" for denne metoden i USA.

Med i patentsøknaden er et program i Java som viser en foreløpig implementasjon av Skjærviks ideer.

Prinsippene som er nedfelt i patentsøknaden fortoner seg som et Columbi egg. Logikken av objekter og relasjoner som diagrammet skal framstille, oppbevares for seg. På skjermen får du framstilt, på best mulig måte og i valgfri skala, hele tegningen eller de delene du vil undersøke spesielt. Det er dette Skjærvik prøver å uttrykke gjennom tittelen på sin foreløpige implementasjon: "Shadow Diagram Editor". Du arbeider mot en "skygge" av det "egentlige" diagrammet.

Det spesielle med Skjærviks patent, ligger i hvordan du kan få framstilt de delene du vil undersøke spesielt. Prinsippene Skjærvik har kombinert, kan brukes til nær sagt enhver grafisk framstilling av kompliserte relasjoner.

Et av prinsippene har Skjærvik hentet fra framstillingen av moderne elektronikk. Det er at når et komplisert element skal vises, er det ikke bestandig nødvendig å vise alle elementets detaljer. Skal du betrakte en sammensatt krets utenfra, behøver du bare å vise de delene som kommuniserer med omverden. Det er først når du har behov for å betrakte den innenfra, at du trenger å se diagrammet over hvordan de interne elementene forholder seg til hverandre. Hele nettverk av kompliserte relasjoner kan følgelig foldes sammen til én overordnet komponent med spesifikke relasjoner til omverdenen.

Sammenfoldingsprinsippet innebærer at diagrammet kan organiseres i logiske nivåer etter et bestemt hierarki. Du kan folde sammen, eller du kan åpne, på hvert nivå avhengig av hva du er interessert i å fokusere på.

Klikk her for å se et eksempel på skyggediagram med foldere

Et annet prinsipp er at du kan trinnvis trekke et element inn i diagrammet og vise alle inn- og utgående relasjoner som det inngår i. Det innebærer at du får generert en deltegning som framstiller nøyaktig det du er ute etter. Du vil aldri måtte følge en relasjon fra den ene siden av et stort virtuelt skjermbilde til den motsatte siden, eller følge den over flere ark i en utskrift.

Et tredje prinsipp er at hvis du bare vil vise relasjoner i én retning, vil du få framstilt en toveis relasjon ved at et av elementene vises to ganger. I kompliserte prosesser kan dette gjøre det enklere å forstå hva som faktisk skjer. Poenget er at du ikke er låst til dette prinsippet, det er et nytt verktøy for innsikt gjennom grafisk manipulasjon. Det samme elementet kan dupliseres så ofte du trenger det i skyggediagrammet.

Et fjerde prinsipp går ut på at det kan være hensiktsmessig å dele den grafiske framstillingen i to atskilte bilder. Det ene viser alle relasjoner ut av et bestemt objekt og videre i samme retning. Det andre, det "inverse", viser alle relasjoner inn i et bestemt objekt og videre i samme retning. Igjen: Dette er et redskap som tilbyr en ny måte å betrakte et diagram eller en del av et diagram på.

Klikk her for å se et eksempel på skyggediagram med invers diagram

Et grunnleggende prinsipp som gjennomsyrer det hele, er at selv om det du har på skjermen bare er en del av helheten, vil alle manipuleringer du gjør i skjermbildet, for eksempel oppretting av nye objekter og relasjoner, straks oppdatere den underliggende databasen, og du blir advart om eventuell krøll.

- Det betyr at du kan begynne med å tegne de grunnleggende ideene dine på skjermen og så forfine dem etter hvert. Dette kan virke ustrukturert, men det er mer i overensstemmelse med måten folk faktisk tenker på.

De ulike prinsippene for hvordan diagrammene kan framstilles, innebærer blant annet at du alltid kan få en visning der det ikke er kryssende relasjonslinjer som ellers ville gjort det vanskelig å oppfatte tegningen.

Skjærvik understreker at verktøyet hans er beregnet på spesialister.

- Det krever at du lærer deg et nytt konsept. Det forutsetter at du strever med store komplekse diagrammer og at du er villig til å bruke tid på å lære noe nytt for å løse et problem. Det er ikke snakk om å erstatte et tradisjonelt diagram i alle tilfeller, men å tilby et hjelpemiddel som vil være hensiktsmessig i svært mange tilfeller.

Skjærvik ser for seg at utviklere av program- og maskinvare, prosessindustri og generelt sett alle som uttrykker sine design ved hjelp av diagrammer, er potensielle brukere av prosjektet.

- Problemet med å sette seg inn i kompliserte diagrammer er bredt anerkjent. Nokia har for eksempel tatt initiativ til et Esprit-prosjekt for å utvikle en metode der UML-diagrammer ("Unified Modeling Language") kan framstilles på en vettug måte. Men jeg har aldri sett at noen har prøvd å realisere de prinsippene mitt opplegg bygger på.

Skjærvik er fullt ut klar over at han kan bruke sitt lille firma Objective Software Solutions til å gjennomføre en prøveimplementasjon og få innvilget et patent, men at veien derfra til kommersiell suksess er svært lang.

- Jeg søker en partner som bidra til dette, gjerne ved å kjøpe hele teknologien og satse det som skal til for å få fram en salgbar implementasjon. Jeg bruker mye tid nå på presentasjoner til store aktører som kan tenkes å være interessert.

At idéene har et stort potensial, er Skjærvik helt overbevist om.

Til slutt viser han en utvidelse av den opprinnelige implementasjonen, der objektene vises i tre dimensjoner, og kan dreies rundt i rommet. Dette er virkelig spennende.

Klikk her for å se et eksempel på skyggediagram i tre dimensjoner

- Det ligger nok mange ideer innenfor konseptet, som kan legges til etter hvert, avslutter han.

Til toppen