Taideteosrekisterisovelluksen
sovellussuunnitelma
TARE-projekti
Rauno Koskinen
Mikko Meriläinen
Heikki Nevala
Mikko Vilenius
1.0
17.12.2004
Jyväskylän yliopisto
Tietotekniikan laitos
Yleistä
Tekijät: Rauno Koskinen, Mikko Meriläinen, Heikki Nevala, Mikko Vilenius
Tekijöiden lyhenteet: RK, MM, HN, MV
Yhteystiedot:kosraun@cc.jyu.fi, mjmerila@cc.jyu.fi, hemaneva@cc.jyu.fi, mijuvi@cc.jyu.fi
Tekijöiden lisäksi muita projektiorganisaation henkilöitä:
Tilaajan edustajat:
· Miika Nurminen, tilaajan tekninen edustaja, minurmin@cc.jyu.fi
· Pirjo Vuorinen, tilaajan pääedustaja, pirjo.vuorinen@jyu.fi
Ohjaajat:
· Hilkka Heikkilä, vastaava ohjaaja, hiheikki@cc.jyu.fi
· Lari Kannisto, vastaava ohjaaja, kalahe@cc.jyu.fi
· Vesa Tanhua-Tyrkkö, tekninen ohjaaja, vttanhua@cc.jyu.fi
Käytettävyyskonsultit:
· Maarit Nurkkala, käytettävyyskonsultti, sanurkka@cc.jyu.fi
· Sanna Saarikko, käytettävyyskonsultti, ssaarik@cc.jyu.fi
Projektitila sijaitsee huoneessa Agora C223.4, jonka puhelinnumero on 014-260 4966. Sähköpostilistoja on tare2004@korppi.it.jyu.fi (projektiryhmän sähköpostilista) ja tare.group@korppi.jyu.fi (projektilaisten sähköpostilista). Sähköpostiarkistot löytyvät osoitteista:
· https://korppi.jyu.fi/list-archive/tare2004/ind.html
·
https://korppi.jyu.fi/list-archive/tare.group/ind.html
Kotisivu: http://sovellusprojektit.it.jyu.fi/tare/
Työn nimi: TARE–projektin sovellussuunnitelma
Avainsanat: Sovellusprojekti, TARE, sovellussuunnitelma, taideteosrekisteri
Tämä dokumentti on Jyväskylän yliopiston tietotekniikan laitoksen syksyllä 2004 toteutettavan TARE–sovellusprojektin sovellussuunnitelma. Sovellussuunnitelmassa kuvataan sovelluksen taustaa, termejä, käytettäviä tekniikoita, käyttöliittymää ja tietokannan rakennetta.
Versio |
Pvm |
Tekijä |
Kuvaus |
0.1 |
26.10.2004 |
MM |
Alustava runko |
0.11 |
29.10.2004 |
RK |
Lisätty kuva käyttöliittymästä, tarkennettu dokumentin sisältöä |
0.2 |
18.11.2004 |
MM |
Yhtenäistetty dokumentin ulkoasu vastaamaan muita projektin dokumentteja |
0.3 |
24.11.2004 |
MM |
Lisätty kuvia käyttöliittymästä. Konversio-ohjelman lisäys tietokanta-lukuun. Muotoiltu dokumentin ulkoasua. |
0.4 |
25.11.2004 |
RK |
Lisätty yksi taideteoshakukuva ja korjattu kommentointiesimerkkiä ja lisätty hiukan tekstiä käyttöliittymän selvitykseen. |
0.5 |
3.12.2004 |
MM,RK |
Korjattu palaverin 10 jälkeen termejä, muotoilua ja havaittuja kirjoitusvirheitä. Kuvaviitteet lisätty osaksi tekstiä. Kommentointiesimerkkiä muutettu. Testausperiaatteet luku uudistettu. |
0.6 |
9.12.2004 |
MM,RK |
Muutettu palaverin 11 palautteen pohjalta. Muutettu sähköpostilista ja tiivistelmä. Korjattu liitteen ulkoasu. Päivitetty kuvia. |
1.0 |
17.12.2004 |
RK |
Versionumero vaihdettu |
1 Johdanto.................................................................................................................. 1
1.1 Historiaa........................................................................................................... 1
1.1.1 UNO ja TATE-sovellusten aika........................................................................ 2
1.1.2 DUO — UNO-sovelluksen seuraaja................................................................. 2
1.1.3 Sovellusten ja järjestelmien käyttämistä tietokannoista........................................ 2
1.1.4 TARE.............................................................................................................. 2
1.2 Dokumentin rakenne.................................................................................. 3
1.3 Termit ja lyhenteet...................................................................................... 3
2 Toteutustekniikat ja -työkalut................................................................ 6
2.1 Arkkitehtuuri................................................................................................. 6
2.2 Tietokantakonvertointiohjelman
luokkahierarkia.............. 7
2.3 DUO-järjestelmän arkkitehtuuri......................................................... 8
2.4 Käyttöjärjestelmät projektikoneissa............................................. 8
2.5 Ohjelmistotyökalut................................................................................... 9
2.6 Tietokanta....................................................................................................... 9
2.7 Tietokantayhteys........................................................................................ 9
3 Käyttöliittymä.................................................................................................. 10
3.1 Sisäänkirjautuminen................................................................................ 10
3.2 Käyttäjienhallinta................................................................................... 10
3.2.1 Henkilötietojen muuttaminen............................................................................ 11
3.2.2 Salasanan vaihto............................................................................................. 11
3.2.3 Käyttäjätietojen selaaminen............................................................................. 12
3.3 Haku................................................................................................................... 13
3.3.1 Taideteosten haku........................................................................................... 13
3.3.2 Henkilöiden haku............................................................................................ 14
3.3.3 Lainojen haku................................................................................................. 15
3.4 Tietueiden lisäys......................................................................................... 16
3.5 Tietueiden muokkaaminen..................................................................... 17
4 Tietokantasuunnitelma............................................................................... 18
4.1 Tietokannan rakenne.............................................................................. 18
4.2 DUO-tietokannasta hyödynnettävät
taulut............................. 18
4.3 Uudet taulut................................................................................................. 19
4.4 Tietokannan konversio-ohjelma...................................................... 20
5 Ohjelmakoodin kommentointi ja
nimeämiskäytännöt.......... 21
5.1 Esimerkki ohjelmakoodin
kommentoinnista.............................. 22
6 Testausperiaatteita........................................................................................ 25
6.1 Testauksen tarkoitus.............................................................................. 25
6.2 Moduulitestaus........................................................................................... 25
6.3 Integrointitestaus..................................................................................... 25
6.4 Järjestelmätestaus.................................................................................... 26
6.5 Alfa- ja beta-testaus................................................................................ 26
7 Yhteenveto........................................................................................................... 27
Lähteet............................................................................................................................ 28
Liite 1: Tietokannan rakennekaavio............................................................ 29
Liite 2: TARE-käyttöliittymän luokkahierarkia.................................. 30
TARE-projekti on Jyväskylän yliopiston tietotekniikan laitoksella toteutettava Sovellusprojekti. Projektin tavoitteena on tuottaa Jyväskylän yliopiston museolle taideteosrekisteri. Kehitettävä sovellus korvaa siellä nykyään toiminnassa olevan ja toiminnallisuudeltaan vastaavan DOS -pohjaisen TATE-sovelluksen.
Toteutettavalla sovelluksella Jyväskylän yliopiston museon henkilökunta pystyy hallinnoimaan tietokantaa, johon on tallennettu yliopiston hallussa olevat taideteokset. Sovellus toimii apuna museohenkilökunnan työssä ja yliopiston laitosten tutkimuksessa. TARE-projekti keskittyy erityisesti vanhan TATE-sovelluksen yhteydessä toimivan tietokannan saattamiseen nykyaikaisempaan, pitkälle normalisoituun muotoon sekä käyttöliittymän kehittämiseen tietokannan hallintaa varten. TARE kehitetään museolla käytössä olevan DUO-sovelluksen pohjalta sen komponentteja hyväksi käyttäen. DUO-järjestelmä on kokoelmien hallintajärjestelmä, joka on ollut toiminnassa vuodesta 2002 alkaen.
Jyväskylän yliopiston kulttuurihistoriallisten ja taidekokoelmien hallinnoimisesta vastaa Jyväskylän yliopiston museo. Sen kokoelmissa on tällä hetkellä (syksyllä 2004) noin 45 000 luettelokappaletta, joista 850 on taideteoksia. Taideteoksista vanhimmat ovat Jyväskylän seminaarin alkuajoilta 1870-luvulta. Osa näistä on yliopiston omistamia ja osa on deponoitu. Suurin deponoija on valtion taideteostoimikunta.
Jyväskylän yliopiston museolle ensimmäinen
tietokonejärjestelmä saatiin vuonna 1989. Ennen tätä aikaa arkistointi
hoidettiin kortiston avulla käsin. Museo siirtyi käyttämään DOS-pohjaisia UNO
ja TATE-sovelluksia kulttuurihistoriallisten ja taidekokoelmien hallinnointiin 1980-
ja 1990-lukujen taitteessa. Sittemmin havaittiin tarvetta vaihtaa ne uudempiin
verkossa ja Windows-ympäristössä toimiviin. Miika Nurmisen kehittämä
UNO-sovelluksen korvannut DUO-sovellus on ollut toiminnassa vuodesta 2002
lähtien. Nyt myös DOS-pohjaiselle TATE-sovellukselle tarvitaan
Windows-ympäristössä toimiva seuraaja, joka hyödyntäisi DUO-sovelluksen
ratkaisuja.
UNO ja TATE ovat yliopiston museolla 1990-luvun alkupuolella kehitettyjä Clarion 2 -järjestelmään pohjautuvia ja DOS-ympäristössä toimivia tietokantasovelluksia. UNO on tarkoitettu museon esineiden, kirjojen, valokuvien ja tallenteiden luettelointiin. TATE on yliopiston taideteosrekisteri. Nämä sovellukset yhdessä korvasivat käsin pidetyn kortiston.
Sittemmin UNO ja TATE ovat vanhentuneet (ohjelmat eivät mm. toimi verkossa). Myös niiden käytettävyydessä ja hakuominaisuuksissa on puutteita, joten on ollut tarvetta korvata ne uusilla, Windows-pohjaisilla ja etäkäytön mahdollistavilla sovelluksilla.
Vuonna 2002 UNO-sovellus korvattiin Miika Nurmisen kehittämällä DUO-järjestelmällä. DUO on Windows-ympäristössä ja verkossa toimiva sovellus. Se on kehitetty Delphillä ja pohjautuu asiakas-palvelin arkkitehtuuriin.
DUO-sovelluksen kehityksen yhteydessä UNO-sovelluksen käyttämän Clarion-pohjaisen tietokannan rakenteeseen tehtiin myös merkittäviä muutoksia. Tavoitteena oli mahdollisimman pitkälle menevä normalisointi ja rakenteistaminen. Vanha tietokanta muunnettiin ensin tekstiksi ja siitä edelleen SQL -tietokannaksi.
Jyväskylän yliopiston museolla on edelleen käytössään aikaisemmin mainittu TATE-sovellus. Se odottaa seuraajaansa, joka olisi Windows-ympäristössä ja verkossa toimiva DUO-sovelluksen kaltainen sovellus. Tämän ohjelmiston kehittämiseen keskittyy TARE-projekti.
Tämä dokumentti rakentuu seuraavasti. Luku 1 sisältää dokumenttia ja sen käyttöä koskevia yleisiä asioita. Luvussa 2 käsitellään toteutustekniikoita ja -työkaluja. Luvussa 3 käydään läpi sovelluksen käyttöliittymää. Luku 4 sisältää sovelluksen tietokantasuunnitteluun liittyviä asioita. Luvussa 5 käsitellään ohjelmakoodin kommentointia ja nimeämiskäytäntöjä. Luvussa 6 kuvataan sovelluksen testausperiaatteita ja luku 7 sisältää yhteenvedon dokumentista.
Dokumentissa ja projektissa esiintyvät seuraavat termit ja lyhenteet:
Clarion Sovelluskehitin, jolla tehdään sovelluksia DOS-järjestelmälle. Clarion sovelluskehittimessä on mukana myös tietokantojen toteutusmahdollisuus.
CVS (Concurrent Version System) Versionhallintajärjestelmä. Käytetään yleensä ohjelmistokoodin hallintaan.
Delphi Graafinen sovelluskehitin Windows(ja Linux) ympäristöön, joka perustuu Object Pascal -kieleen. Object Pascal kielen rakenteesta johtuen ohjelmien käännös lähdekoodista ajettavaan muotoon on nopeaa.
Deponointi Deponointi tarkoittaa esineen pitkäaikaista sijoitusta museon kokoelmiin niin, että museo ei omista esinettä.
DiPasDoc Ohjelma, joka muodostaa HTML-dokumentaation Delphin lähdekooditiedostoista.
DUO Miika Nurmisen kehittämä UNO-ohjelman seuraaja, joka toimii Windows-ympäristössä.
HTML Hyper Text Markup Language on merkkauskieli tekstin sisällön ja rakenteen esittämiseen.
HTTP Hyper Text
Transfer Protocol on HTML muotoisen tiedon tietoliikenneprotokolla.
ODBC (Open
DataBase Connectivity) Standardi tietokantayhteysmenetelmä.
Perushenkilö Perushenkilö sisältää perustiedot henkilöstä tai organisaatiosta. Näitä käytetään esimerkiksi lainaajahenkilöinä.
PostgreSQL PostgreSQL on ilmainen BSD-lisenssin alla oleva relaatiotietokantajärjestelmä. (http://www.postgresql.org/).
SQL SQL -kieli on relaatiotietokantojen määrittely- ja käsittelykieli.
SQL-palvelin Tietokantapalvelin, joka käytetään tietokantojen säilyttämiseen, hallinnointiin ja käyttämiseen.
TARE (TAideREkisteri). Vaatimusmäärittelyn pohjalta toteutettava uusi sovellus TATE-sovelluksen tilalle.
TATE DOS-pohjainen yliopiston taideteosten hallinnointiin käytetty ohjelma.
Tuottaja Taideteosten tuottaja. Sisältää perushenkilötietojen lisäksi taiteilijatietoja.
Työntekijä TARE ja DUO-sovellusten käyttäjä. Sisältää perushenkilön tietojen lisäksi käyttöoikeustiedot.
UNO DOS-pohjainen sovellus, jota käytettiin yliopiston museon kokoelmien hallinnointiin.
WWW-palvelin Vastaa HTTP pyyntöihin, joita tulee pääasiassa WWW-selaimilta. Eli yleensä antaa selaimille heidän pyytämät sivut tai muun aineiston, joka sijaitsee WWW-palvelimella. WWW-sivut voivat myös olla eräänlaisia ohjelmia, jotka ovat yhteydessä vaikkapa tietokantaan sisäverkossa.
Yhteiskanta DUO-sovelluksen ja TARE-sovelluksen yhteinen tietokanta.
Luvussa kuvataan TARE-sovelluksen toteuttamiseen käytettäviä työkaluja ja ohjelmistoympäristöjä.
Kuvassa 1 on esitetty sovelluksen yleistä arkkitehtuuria.
Kuva 1: Arkkitehtuurikaavio
Kuvassa 2 on esitetty DUO-sovelluksen Generator-luokkahierarkia. Luokkahierarkia tulee olemaan samankaltainen TARE-järjestelmän konvertointiohjelman kanssa, koska DUO-sovelluksen konvertointiohjelma kopioidaan ja muutetaan toimimaan TARE-sovelluksessa.
Kuva 2: Generator-luokkahierarkia
Kuvasta 3 voidaan nähdä DUO-järjestelmän arkkitehtuuria. Arkkitehtuuri on samankaltainen TARE-järjestelmän arkkitehtuurin kanssa, johtuen siitä että DUO-sovellusta käytetään alustana TARE-sovelluksessa.
Kuva 3:DUO-järjestelmäarkkitehtuuri
Kaikissa projektissa käytettävissä koneissa on käyttöjärjestelmänä Windows XP.
Ryhmällä on ohjelmointityökaluna käytössään Borlandin Delphi 7. Pieni osa tietokantakonversiosta on toteutettu C++ -ohjelmointikielellä ja sitä tehdään Borland C++ Builder 5 -ohjelmalla. Versionhallinnassa käytetään WinCvs-sovellusta. Lisäksi käytössä on DIPasDoc -ohjelma, joka on otettava huomioon ohjelmakoodia kommentoitaessa. DiPasDoc -ohjelma löytyy osoitteesta
http://www.zeitungsjunge.de/delphi/pasdoc/.
Tietokanta tehdään DUO-tietokannan ”päälle”. Vanhoja tauluja muokataan ja uusia tauluja lisätään tietokantaan. Tietokanta toteutetaan SQL -kieltä käyttäen.
Tietokantayhteys tehdään ODBC-ajurin kautta. Tähän ajuriin on valmiiksi asetettu tunnus ja salasana.
Tässä luvussa kuvataan käyttöliittymän toteutusta. Käyttöliittymän toteutuksessa käytetään pitkälti avuksi DUO-järjestelmän komponentteja.
Käyttäjä kirjautuu ohjelmaan antamalla käyttäjätunnuksen ja salasanan ja painamalla OK-painiketta. Käyttäjätunnus ja salasana on talletettu tietokantaan ja ne haetaan tietokannasta ODBC-ajurin avulla. Ohjelma tarkistaa tunnuksen ja salasanan oikeellisuuden ja kirjaa käyttäjän sisään ohjelmaan. Näkymä käyttäjälle on esitetty kuvassa 4.
Kuva 4: Sisäänkirjautuminen
Tässä luvussa kerrotaan miten käyttäjienhallinta toimii. Käyttäjienhallinta tulee suurelta osin suoraan DUO-sovelluksesta.
Kuvassa 5 näkyy lomake, jossa käyttäjä voi muuttaa henkilön tietoja ja lisätä uuden henkilön tietoja syöttämällä uudet tiedot haluamiinsa kenttiin ja tallentamalla muutokset.
Kuva 5: Henkilötietojen muokkaus
Käyttäjä pystyy vaihtamaan salasanansa syöttämällä kysyttyihin kenttiin vanhan salasanan, uuden salasanan ja uuden salasanan vahvistuksen. Näkymä käyttäjälle on esitetty kuvassa 6.
Kuva 6: Salasanan vaihtaminen
Valitsemalla Henkilöt-valikosta alavalinnan Työntekijät, voi käyttäjä selata muiden DUO ja TARE sovelluksen käyttäjien tietoja. Selauksessa voi tuplaklikkaamalla tarkastella yhden käyttäjän tietoja tarkemmin. Näkymä käyttäjälle on esitetty kuvassa 7.
Kuva 7: Käyttäjätietojen selaus
Käyttäjä voi tehdä hakuja käyttämällä yleishakua aiheen piiristä. Lisäksi voidaan tehdä tarkempi haku käyttämällä Kentät välilehteä.
Käyttäjä pystyy hakemaan taideteoksia Taideteokset-valikosta avautuvassa selauksessa. Käyttäjä kirjoittaa halutun hakusanan selauksen yläosan tekstikenttään ja painaa Hae!-painiketta. Taideteokset-valikon alavalinnoissa määrätään, minkä kentän mukaan haku järjestetään. Kuvassa 8 on esitetty tämän näkyminen käyttäjälle.
Käyttäjä voi myös määritellä tarkemmin, minkälaista tietoa eri kentistä pitää löytyä hakutuloksissa. Tämä on esitetty kuvassa 9.
Kuva 8: Taideteoksen haku
Kuva 9: Taideteosten haku, Kentät välilehti
Käyttäjä pystyy hakemaan rekisterissä olevia henkilöitä ja alavalikosta voi myös määritellä mitä henkilöryhmiä haetaan. Näkymä käyttäjälle on esitetty kuvassa 10.
Kuva 10: Henkilöiden haku
Käyttäjä voi hakea Lainat-valikosta lainattujen teosten tiedot. Näkymä käyttäjälle on esitetty kuvassa 11.
Kuva 11: Lainojen haku
Käyttäjä voi lisätä tietueita järjestelmään. Lisäys voidaan kohdistaa uuteen taideteokseen, henkilöön, lainaan tai näyttelyyn. Kuvassa 12 on esitetty näkymä lisättäessä näyttelyä rekisteriin.
Kuva 12: Näyttelyn lisäys
Käyttäjä voi muokata jo olemassa olevia tietueita. Muokkaus voidaan kohdistaa taideteokseen, henkilöön, lainaan tai näyttelyyn. Näkymä käyttäjälle on samankaltainen tietueiden lisäyksen kanssa.
Tässä luvussa käsitellään tietokannan rakennetta, taulujen sisältöä ja tietokannan konversio-ohjelman sisältöä.
TATE-tietokanta normalisoidaan ja syntyneet taulut lisätään DUO-tietokantaan, jolloin tuloksena saadaan yhteistietokanta. Tietokanta toteutetaan SQL-kieltä käyttäen. Tietokannan rakennekaavio on esitetty Liitteessä 1. Siitä ilmenee taulujen kentät ja suhteet toisiinsa.
DUO-tietokannasta käytetään seuraavia olemassa olevia tauluja:
· tblAika sisältää tiedot ajankohdasta.
· tblAmmatti sisältää tiedot henkilön ammatista.
· tblHenkilo sisältää henkilön yhteystiedot ja mahdolliset lisätiedot.
· tblKayttaja sisältää käyttäjän nimen ja tunnisteen.
· tblKokoelma sisältää taideteoskokoelman tiedot
· tblKunto sisältää tiedon taideteoksen kunnosta.
· tblLinkki sisältää linkin tiedot.
· tblLinkkityyppi sisältää linkkityypin nimen ja tunnisteen.
· tblMateriaali sisältää materiaalin nimen ja tunnisteen.
· tblNayttely: sisältää näyttelyn perustiedot.
· tblPaikkakunta sisältää paikkakunnan nimen ja tunnisteen.
· tblPaivitys sisältää tiedot edellisestä päivityksestä.
· tblSailytystila sisältää tiedot taideteoksen säilytystilasta.
· tblSijoituspaikka sisältää tiedon valokuvan sijoituspaikasta.
· tblTuottaja sisältää tiedot taideteoksen tuottaneesta henkilöstä.
· tblTyontekija sisältää työntekijän autentikointitiedot ja käyttöoikeudet.
· tblValimerkki sisältää välimerkin symbolin ja tunnisteen.
· tblValuutta sisältää rahayksikön nimen ja symbolin.
· tblYhteystiedot sisältää henkilön yhteystiedot.
Projektissa suunniteltiin seuraavat uudet taulut:
· tblHankintatapa sisältää taideteoksen hankintatavan tiedot.
· tblKampus sisältää sijoituspaikan kampuksen nimen ja tunnisteen.
· tblKansalaisuus sisältää tuottajan kansalaisuuteen liittyvät tiedot.
· tblLuovuttaja sisältää taideteoksen luovuttajan tiedot.
· tblLiitosLuovuttaja on liitostaulu taideteoksen ja sen luovuttajan välillä.
· tblLiitosValokuvaus on liitostaulu taideteoksen ja valokuvauksen välillä.
· tblRakennus sisältää sijoituspaikan rakennuksen nimen ja tunnisteen.
· tblSigneeraus sisältää tiedot taiteilijan signeerauksesta.
· tblSigPaikka sisältää tiedon signeerauksen sijainnista taideteoksessa.
· tblTaideteos sisältää taideteoksen tiedot.
· tblTeostyyppi sisältää teostyypin nimen ja tunnisteen.
· tblTTLaina sisältää taideteoksen lainauksen tiedot.
· tblTTLiitosLinkki on liitostaulu valokuvan ja valokuvan linkin välillä.
· tblTTLiitosMateriaali on liitostaulu taideteoksen ja sen materiaalin välillä.
· tblTTLiitosNayttely on liitostaulu taideteoksen ja näyttelyn välillä.
· tblTTLiitosTuottaja on liitostaulu taideteoksen ja tuottajan välillä.
· tblTTSijoituspaikka sisältää tiedon taideteoksen sijoituspaikasta.
· tblTTTekniikka sisältää taideteoksen teossa käytettyjen tekniikoiden tiedot.
· tblValokuvaus sisältää valokuvan keskeiset tiedot.
Vanhan TATE-tietokannan tiedot on siirrettävä uuteen yhteistietokantaan. Tämä toteutetaan konversio-ohjelmalla, jonka tarkoituksena on muuttaa TATE-ohjelman Clarion-tietokanta SQL -tietokannaksi ja integroida se DUO-tietokantaan. Prosessi koostuu neljästä vaiheesta, jossa ensimmäisessä Clarion-tietokanta muutetaan Ascii -muotoon. Toisessa vaiheessa Ascii -tieto esikäsitellään C++ -kielellä toteutettavalla ohjelmalla kolmatta vaihetta varten, jossa luodaan yhtenäinen kanta DUO-ohjelman kanssa ja siirretään data uuteen kantaan Delphillä tehdyllä sovelluksella. Neljännessä ja samalla viimeisessä vaiheessa suoritetaan tietokantojen lopullinen integrointi.
Ohjelmakoodi kommentoidaan englanniksi ja ohjelmakoodin kommentoimisessa käytetään DIPasDoc -ohjelman tukemaa muotoa.
Luokkien nimet kirjoitetaan englanniksi. Luokan nimen alkuun liitetään iso T-kirjain ja luokan varsinainen nimikin alkaa isolla alkukirjaimella. Jos luokan nimi koostuu useammasta sanasta, niin kaikki luokan nimen sanat kirjoitetaan yhteen ja sanat alkavat isolla kirjaimella.
Yleiset muuttujat aloitetaan pienellä kirjaimella proseduureissa, mutta luokissa isolla F-kirjaimelle jatkuen toisella isolla kirjaimella, kun kyseessä on propertyt. Muussa tapauksessa luokissa muuttujat alkavat isolla ilman pakollista F-alkukirjainta.
Metodien nimet kirjoitetaan englanniksi alkaen isolla alkukirjaimella ja jos nimi koostuu useammasta sanasta, niin kaikki sanat kirjoitetaan yhteen ja ne alkavat isolla kirjaimella.
Lähdekooditiedoston alkuun tulee laittaa MIT –lisenssi ja sitten erikseen tiedoston kommenttiosa. Tässä osassa tulee olla yleiskuvaus (abstract), tekijä (author), luontipäivämäärä (created), viimeisimmän muokkauksen päivämäärä (lastmod), kuvaus siitä mitä luokka tekee ja muutostiedot (UPDATES).
Yleiskuvaukseen (abstract) kirjoitetaan ensin yhdellä tai kahdella sanalla tyyppitieto ja sen jälkeen pilkulla erotettuna lyhyt kuvaus.
Luokissa tulee olla ainakin yleiskuvaus (abstract) ja kuvaus siitä mitä luokka tekee.
Metodien ja funktioiden kuvaus kirjoitetaan ennen metodin esittelyä, eikä ennen sen toteutusosaa. Tässä kuvataan mitä metodi tekee, mitä parametreja sille annetaan ja mitä tulee lopputuloksena. Delphin luomiin metodeihin ja vanhoihin DUO-sovelluksen metodeihin ei alkukommenttia tarvitse. Projektin aikana tehdyt metodien sisällöt kommentoidaan, paitsi ei yksinkertaisimpia asioita.
Vakiot tulee kommentoida ainakin vakioryhmätasolla. Eli vakioryhmät ainakin kommentoidaan.
Muuttujat ja propertyt kommentoidaan ennen niiden esittelyä. Poikkeuksena metodien/funktioiden sisäiset muuttujat, jotka kommentoidaan niiden perään.
Jos kommentoija haluaa rivinvaihdon, niin tuotetun HTML-dokumentin luonteesta johtuen on käytettävä HTML-tagia <BR> siinä kohtaa missä haluaa rivinvaihdon.
{
Copyright (c) <2004 TARE-group>
TARE-group
members: Rauno Koskinen, Mikko Meriläinen, Heikki Nevala and Mikko Vilenius
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies of the Software, and to permit persons to whom
the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL TARE-group BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Except as contained in this notice, the names of TARE-group shall not be
used in advertising or otherwise to promote the sale, use or other dealings in
this Software without prior written authorization from TARE-group.
}
{
@abstract(Example unit, Commenting
example unit)
@author(Rauno Koskinen)
@created(23.11.2004)
@lastmod(2.12.2004)
This unit is an example of
UPDATES
25.11.2004 RK
Added updates section.<BR>
2.12.2004 RK
Modified terms and abstracts<BR>
}
unit commentunit;
interface
uses
Windows, Messages, SysUtils,
Classes, Graphics, Controls;
const
{Comment for a constant. This
comment shows in HTML code documentation}
TESTCONSTANT = True;
type
{
@abstract(Example class, This
class contains commenting examples)
@author(Rauno Koskinen)
@created(23.11.2004)
@lastmod(25.11.2004)
The function of this class
is to serve as a commenting example. This comment also shows in HTML code
documentation.
}
TMyClass = class(TObject)
private
{This is a comment to a private variable, which does not go to the HTML
code documentation, because it is in private section}
MyPrivateString:string;
public
{This is a comment to a public method and shows in HTML code documentation.}
procedure
MyPublicMethod(parameter: string);
end;
implementation
{ TMyClass}
procedure TMyClass.MyPublicMethod(parameter: string);
var
i : integer;
//loop variable
str : string; //garbage string
begin
str:='';
//We go through the loop
thousand times
for i:=1 to 1000 do
begin
str:=str+'A'; //Each loop iteration we add an 'A' to a
string
end;
end;
end.
Tässä luvussa selvitetään testauksen tarkoituksia, periaatteita ja tapoja.
Testauksella
varmistetaan, että sovellus toteuttaa sille Vaatimusmäärittelyssä määritellyt
ominaisuudet ja toiminnot. Testauksessa kartoitetaan myös sovelluksen
käyttäytymistä mahdollisissa virhetilanteissa. Sovellusta tullaan testaamaan
testitapauksien avulla käymällä läpi
käyttöliittymän toimintoja.
Sovellusta tullaan
testaamaan toteuksen eri vaiheissa mahdollisimman monen eri henkilön toimesta.
Testaajina toimivat ryhmän jäsenet, ohjaajat, tilaajan edustajat ja
mahdollisesti loppukäyttäjät.
Moduulitestauksessa
testataan yksittäisen moduulin tai komponentin toimintaa ennen sen integroimista
järjestelmään. Testausvaihe toteutetaan projektiryhmän jäsenten toimesta.
Komponentin toteuttaja ei saa olla ainoa testaaja, sillä häneltä voi jäädä
huomaamatta joitain toiminnan kannalta tärkeitä kohtia.
Integrointitestauksessa
valmiita ohjelmiston komponentteja yhdistetään suuremmiksi kokonaisuuksiksi,
joka testataan yhdessä. Tässä vaiheessa testaajina toimivat projektiryhmän
jäsenet.
Virheiden jäljittäminen integroimistestauksessa on vaikeampaa kuin
moduulitestauksessa. Sen takia onkin tärkeää tietää, mitä yksittäinen
komponentti tekee tai mitä sen pitäisi tehdä, jotta mahdolliset virheet saadaan
jäljitettyä ja korjattua.
Käytännössä moduuli-
ja integrointitestausta luultavasti toteutetaan samanaikaisesti ja osittain
päällekkäin.
Järjestelmätestauksen
aikana testataan koko sovelluksen toimintaa käyttäjän näkökulmasta.
Testauksessa tarkastetaan, että sovellus toimii vaatimusten mukaisesti, eikä
sisällä virheitä.
Järjestelmätestaus
toteutetaan tuotantoympäristöä vastaavassa testausympäristössä. Testitapaukset
kuuluvat järjestelmätestaukseen. Testaukseen osallistuvat projektiryhmän
jäsenet, ainakin osa tilaajan edustajista, ohjaajat sekä mahdollisesti myös
taideteosrekisterin tulevia käyttäjiä.
Alfa-testaus on järjestelmän testausta kehitysympäristössä projektiryhmän
laitteistolla. Alfa-testaus
suoritetaan pääosin projektipalavereissa. Tällöin pystytään ohjaamaan ja
selvittämään järjestelmän toimintaa sekä mahdollisista virhetilanteista saadaan
välittömästi palautetta.
Beta-testauksella
tarkoitetaan asiakkaan tekemää testausta todellisessa käyttöympäristössä. Tällä
tavalla käyttöliittymän rakenne ja toiminta tulee parhaiten testattua
kohderyhmän kautta. Beta-testaus tapahtuu tilaajan koneella.
Alfa- ja
beta-testausta suoritetaan käytännössä koko projektin ajan aina, kun jotain
konkreettista, toimivaa ja testattavaa on prototyypistä valmiina. Beta-testaus
toteutuu suurimmalta osalta kuitenkin vasta projektin päätyttyä, kun
prototyyppiä käytetään tuotantokäytössä.
TARE-projekti kehittää seuraajan yliopiston museon taiderekisterisovellukselle (TATE). Sovelluksella museo voi ylläpitää taideteosrekisteriä Windows-ympäristössä vanhan DOS-pohjaisen ympäristön sijaan.
Tässä dokumentissa kuvataan TARE-sovellukselle asetetut tavoitteet sekä projektissa käytettäviä työkaluja ja sovellusympäristöjä. Lisäksi dokumentissa on kuvattuna sovelluksen tietokanta, käyttöliittymä ja testausperiaatteita.
[1] Kalermo Salla, Kosonen Sami, Pohjola Lauri, Tourunen Antti, ”Kuikka-projektin projektikansio”, Jyväskylän yliopisto, tietotekniikan laitos, 2004
[2] Nurminen Miika, ”DUO-järjestelmän tekninen käsikirjoitus”, Jyväskylän yliopisto, tietotekniikan laitos, 2002
[3] Santanen Jukka- Pekka, ”Tietotekniikan Sovellusprojektien ohje”, Jyväskylän yliopisto, tietotekniikan laitos, 2004
Liite 1: Tietokannan rakennekaavio
Liite 1: Taulujen kentät ja suhteet toisiinsa
Liite 2: TARE-käyttöliittymän luokkahierarkia
Liite 2: TARE-käyttöliittymän luokkahierarkia