Helsingin yliopisto - Tietojenkäsittelytieteen laitos

UML-työkalun ryhmätyöominaisuuksien kehittäminen

Tutkimusalue:

Ohjelmistotekniikka - ohjelmistoarkkitehtuurit, käyttöliittymät
Informaatiojärjestelmät - tietokannat

Ohjaaja:

Ei vielä nimitetty.

Asiakkaat:

Juha Gustafsson ja Inkeri Verkamo - Tietojenkäsittelytieteen laitos

Työn aihepiiri:

Vuodenvaihteessa 2001-2002 päättyvässä Maisa-projektissa on toteutettu ohjelmistotyökalu, joka mittaa UML-kaavioista erilaisia ohjelmistometriikoita ja tunnistaa kaavioista suunnittelumalleja (design patterns). Työkalun tarkoitus on mitata kaavioiden edustamien ohjelmistoarkkitehtuurien laatua sekä tutkia suunnittelumallien vaikutusta eri metriikka-arvoihin. Työkalu on alunperin tarkoitettu käytettäväksi ohjelmiston suunnitteluvaiheessa, jolloin ohjelmiston laatua voitaisiin mitata jo ohjelmistoprosessin alussa. Sitä voidaan kuitenkin soveltaa myös ohjelmakoodin analysointiin saatujen laatuarvioiden validoimisessa toteutusvaiheen jälkeen sekä takaisinmallinnuksen (reverse engineering) apuvälineenä.

Ohjelmiston laadun arviointi perustuu historiadatan keruuseen ja tietämykseen jo toteutettujen ohjelmistoarkkitehtuurien laadusta. Kun tiedetään, että tietty metriikkaprofiili on tuottanut toivotun arkkitehtuurilaadun tietyssä sovellusympäristössä, voidaan tätä tietoa käyttää hyväksi seuraavia projekteja tehtäessä. Metriikoiden tuloksia kerätään ohjelmistoprosessin eri vaiheissa ja tuloksista piirretään tilastollisia kaavioita. Arkkitehtuurien metriikka-arvoja voidaan myös vertailla keskenään. Työkalu tukee myös tunnistettujen suunnittelumallien visualisointia.

Työkalu on suunniteltu yhden käyttäjän käytettäväksi eikä se niin ollen tue ryhmätyöskentelyä. Kerätyt metriikkatiedot talletetaan nykyversiossa tekstitiedostoina, joita voidaan edelleen niin haluttaessa käsitellä unix-työkaluilla kuten grepillä. Tiedostojen sijasta historiatiedot olisi tallennettava tietokantaan, jotta dataa voitaisiin käsitellä samanaikaisesti ilman tiedon kopiointia. Myös muita ryhmätyöominaisuuksia voisi ideoida.

Työn kuvaus:

Työssä on tarkoituksena on kehittää työkalun ryhmätyöominaisuuksia ainakin toteuttamalla tietokanta, jolla pääosin korvataan työkalun vanha, tiedostopohjainen tietojen tallennusmekanismi. Metriikkatulosten sisäänluku (import) ja tulostus järjestelmästä (export) tekstitiedostoina kuitenkin säilytetään. Tietokannan sisältämän historiatiedon avulla pyritään ennalta arvioimaan työkalulla tutkittavan arkkitehtuurin ja sitä vastaavan ohjelmiston laatua. Myös käyttöliittymää on muokattava tietokannan käsittelyyn sopivaksi.

Toteutusympäristö:

Työkalun käyttöliittymä on toteutettu Java 2:n swing-kirjastoa käyttäen. Tietokannan toteutukseen valitaan sopiva TKHJ.

Erityisvaatimukset:

Suositeltavia kursseja ovat Käyttöliittymät I ja II, mutta niitä ei vaadita.

Sopimus:

Järjestelmä toteutettaneen laitoksen yleisen lisenssisopimuksen alla.

Viimeksi päivitetty 26.10.2001