Suunnitteludokumentti

Samankaltaiset tiedostot
Vaatimusmäärittely. Tiput-ryhmä Ohjelmistotuotantoprojekti

Käyttöohje. Tiput-ryhmä Ohjelmistotuotantoprojekti

Käyttöohje. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ylläpitodokumentti. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ohjelmisto on selainpohjaisen käyttöliittymän tarjoava tietokantajärjestelmä merikotkien seurantaan WWF:n Merikotka-työryhmän tarpeisiin.

Ylläpitodokumentti. Tiput-ryhmä Ohjelmistotuotantoprojekti

Raporttiarkiston (RATKI) käyttöohjeet Ohjeet

Lohtu-projekti. Testaussuunnitelma

RATKI 1.0 Talousraportin käyttäjän ohje

Lohtu-projekti. Testiraportti. Versiohistoria: syklin toteutuksen testit. 1. ajo Virve

Graafinen käyttöliittymä lintujen rengastusjärjestelmään

Graafinen käyttöliittymä lintujen rengastusjärjestelmään

Käyttöohje. Versiohistoria: versio Mari Kommenttien perusteella korjattu versio

Toimittajaportaalin pikaohje

RATKI 1.0 Käyttäjän ohje

UTIFLEET-VARAUSJÄRJESTELMÄ KÄYTTÄJÄN OHJE. Gospel Flight ry

Action Request System

Vaatimusmäärittely. Kymenlaakson partiopiirin jäsenrekisteri

Uuden Peda.netin käyttöönotto

OHJE 1 (14) Peruskoulun ensimmäiselle luokalle ilmoittautuminen Wilmassa

Testausdokumentti. Sivu: 1 / 10. Ohjelmistotuotantoprojekti Sheeple Helsingin yliopisto. Versiohistoria

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Opintokohteiden muokkaus

KÄYTTÖOHJE. Servia. S solutions

KÄYTTÖLIITTYMÄ SÄÄKSIEN PESIMÄTIETOJEN TIETOKANTAAN Käyttöohje

Tietosuoja-portaali. päivittäjän ohje

Graafinen käyttöliittymä lintujen rengastusjärjestelmään

KYMP Webmail -palvelu

Käyttöohje. Aija. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma. Asdf. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Toimittajaportaalin rekisteröityminen Toimittajaportaalin sisäänkirjautuminen Laskun luonti Liitteen lisääminen laskulle Asiakkaiden hallinta Uuden

Vaatimusdokumentti. Kotkat-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

OHJE KILPIEN LISÄÄMISESTÄ ATJN KILPIVARASTOON

EVTEK-PROJEKTORI KÄYTTÖOHJE Tekijä: Teemu Tammivaara VBP04S

INTINU13A6 Java sovellukset

Oppimateriaalin lisääminen

Toimittajaportaalin pikaohje

Opintokohteiden muokkaus

Oppimateriaalin lisääminen

Asio. Ohjelma on selainpohjainen, joten ohjelmaa varten tarvitaan internet-selain. Ohjelmaan pääsee osoitteella

Testaussuunnitelma. Opeapuri. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma Labra

Convergence of messaging

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

SQL Buddy JAMK Labranet Wiki

AJONEUVOHALLINTOKESKUS. Ennakkotehtävä

Sisällysluettelo 1 Johdanto Root, koko Opalan pääkäyttäjä

Ohje 1 (12) Maarit Hynninen-Ojala MOODLE PIKAOHJE. Kirjautuminen Moodleen ja työtilan valitseminen

Asiointipalvelun ohje

Opintokohteiden muokkaus

Graafinen käyttöliittymä lintujen rengastusjärjestelmään

Kennelliiton Omakoira-jäsenpalvelu Ohje kennelpiireille, pätevyyksien ylläpito

Testaussuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

SOPIMUSPRO - VERKKOPALVELUNOHJE. Työpaikkakouluttajan ohje SopimusPro verkkopalveluun. Pikaohje arvioinnin kirjaamiseen SopimusPro -verkkopalveluun

Lääkärin Terveyskansio Lähettävän lääkärin ohje

OSAAMISENHALLINTA HENKILÖSTÖ. Esimiehen pikaohje

Testaussuunnitelma. PUSU-ryhmä. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

OpasOodi Opintokohteiden muokkaus

24h Admin V / 24h_Admin_v100.pdf 1/9

Kennelliiton Omakoira-jäsenpalvelu Ohje eläinlääkäriasemille, Omakoira-palvelun käyttö

Viennin tulli-ilmoitus Internetissä Esittely

Kangasniemen yrityshakemisto KÄYTTÖOHJE YRITTÄJÄLLE. KANGASNIEMEN KUNTA yrityshakemisto.kangasniemi.fi

Käyttöohje. Kotkat-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Sisällysluettelo. v.0.9 2

VSP webmail palvelun ka yttö öhje

Wilman käyttöohje huoltajille

Epooqin perusominaisuudet

Sisällys Clerica Web-sovellusten käytön aloittaminen 2

Informaatiotekniikan kehitysyksikkö

Suomen Akatemian verkkoasioinnin käyttöohje toimikuntien ja muiden valmistelu- ja päätöksentekoelinten jäsenille

Suunnitteludokumentti

Käyttöohje. HeTLi. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Järjestelmän kriittisimmille toiminnallisuuksille (listattu alla), toteutetaan 1

ARVI-järjestelmän ohje arvioinnin syöttäjälle

ARVI-järjestelmän ohje arvioinnin syöttäjälle

OpasOodi Opintokohteiden muokkaus

VERKKOVELHO-YLLÄPITOTYÖKALUN KÄYTTÖOHJE

WCONDES OHJEET ITÄRASTEILLE (tehty Condes versiolle 8)

Ohjeet S-ryhmän tuotetietoportaaliin

KÄYTTÖLIITTYMÄ SÄÄKSIEN PESIMÄTIETOJEN TIETOKANTAAN Vaatimusmäärittelydokumentti

1. Kalenterin omistajan käyttöohje

Titta-palvelun käyttöohje

Tietokantasovelluksen määrittelydokumentti

JulkICT portaalin käyttöohje

LUKKARIN KÄYTTÖOHJE Sisällys

Viva-16. Käyttöohje Veikko Nokkala Suomen Videovalvonta.com

TEKNINEN OHJE VAIHTOTASETIETOJEN TIEDOSTORAPORTOINTIIN EXCEL-TYÖKIRJALLA

ORGANISAATION KIRJAUTUMINEN TURVASIRU.FI-PALVELUUN

Ohjelmistoprojektin vaiheet ja OMT++ -suunnittelumenetelmä

Pika-aloitusopas. Sisältö: Projektin luominen Projektin muokkaaminen ja hallinnointi Projektin/arvioinnin tulosten tarkastelu

TimeEdit opiskelijan ohje TimeEdit-instructions for students from this link

Onni-oppimispäiväkirjan ohje version 1.2

1 Kirjautuminen ja Käyttöliittymä Kirjautuminen Käyttöliittymä Uuden varauksen tekeminen Normaali varaus...

Tik Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu KÄYTTÖOHJE. LiKe Liiketoiminnan kehityksen tukiprojekti

Esittely. Muistathan, että voit myös käyttää Petsietä aivan normaalina käyttäjänä kasvattajapalveluiden lisäksi. Antoisaa Petsien käyttöä!

Titta-palvelun käyttöohje

1. Uuden huoltajatunnuksen luominen avainkoodin avulla

Sisäänkirjautuminen Tallennus/raportit (YAP) Tallennusohjelma

Tietokanta (database)

Transkriptio:

Suunnitteludokumentti Tiput-ryhmä 01.12.2006 581260 Ohjelmistotuotantoprojekti Grönholm Peter Hautamäki Marja Koski Marja-Ilona Lavi Rakel Piela Riitta, projektipäällikkö Helsingin yliopisto Tietojenkäsittelytieteen laitos

Versiohistoria Versio Päiväys Sisällön muutokset 0.1 10.10.2006 Ensimmäinen luonnos 0.2 27.10.2006 Tarkennettu versio 0.3 30.10.2006 Tarkennettu testausosiota ja lisätty kaavioita 0.4 02.11.2006 Alustava versio FTR-kokoukseen 0.5 03.11.2006 Versio FTR-kokoukseen 0.6 13.11.2006 Korjattu FTR-kokouksessa huomatut virheet ja puutteet 0.7 16.11.2006 Uuden käyttötapauksen myötä muutokset tekstiin ja kaavioihin 0.8 21.11.2006 Päivitetty kuvat näytöistä 0.9 30.11.2006 Päivityksiä näyttökuviin 1.0 01.12.2006 Päivityksiä kuvauksiin tietokantatauluista Kotisivut http://www.cs.helsinki.fi/group/tiput/

Sisältö 1 Johdanto... 1 1.1 Tuotteen tausta ja tarkoitus... 1 2 Sanasto... 1 3 Suunnittelun ja toteutuksen rajoitteet... 4 3.1 Yhteydet aiemmin toteutettuihin käyttöliittymän osiin... 4 3.2 Noudatettavat standardit... 4 3.3 Muut tarvittavat ohjelmat... 4 3.4 Ohjelmointikieli ja -tyyli... 5 4 Järjestelmän yleiskuvaus... 6 4.1 Järjestelmän toiminta... 6 4.2 Komponenttien väliset suhteet... 7 4.3 Alustatiedot... 8 5 Moduulikuvaukset... 8 5.1 Toimintakuvaukset... 8 5.1.1 Sisään- ja uloskirjautuminen... 8 5.1.2 Pesätietojen haku sekä tarkastusten hallinta... 10 5.1.3 Reviirin lisääminen... 12 5.1.4 Pesän lisääminen... 13 5.1.5 Aputaulujen hallinta... 14 5.1.6 Pesätarkastajien hallinta... 17 5.1.7 Raporttien tulostus... 18 5.1.8 Kuntaliitosten tekeminen... 19 5.1.9 Kuntatietojen muokkaus... 20 5.2 Kuvasarjat... 21 5.2.1 Aloitussivu... 21 5.2.2 Pesän lisäys... 23 5.2.3 Reviirin lisääminen... 24 5.2.4 Maastolomake... 24 5.2.5 Raportit... 26 5.2.6 Aputaulujen hallinta... 27 5.2.7 Tarkastaja... 28 5.2.8 Kunta... 29 5.2.9 Kuntaliitos... 30 6 Tietokanta... 31 6.1 Tietokannan kuvaus... 31 6.1.1 Pesä... 32 6.1.2 Poikanen... 33 6.1.3 Olosuhde... 34 6.1.4 Myrkky... 35 6.1.5 Reviiri... 36 6.1.6 Tarkastus... 37 6.1.7 Tarkastaja... 38 6.1.8 Vuosi... 38 6.1.9 Kunta... 39 6.1.10 Aputaulut... 39

7 Testaussuunnitelma... 44 7.1 Komponenttitestaus... 45 7.2 Integrointitestaus... 45 7.3 Järjestelmätestaus... 45

1 Johdanto 1.1 Tuotteen tausta ja tarkoitus Helsingin yliopiston Luonnontieteellisen keskusmuseon Rengastustoimisto ylläpitää sääksitietoja Suomessa. Maastotarkastajien keräämät tiedot talletetaan tietokantaan, josta tuotetaan erilaisia raportteja sekä tutkimus- että maastokäyttöön. Rengastustoimistossa on tällä hetkellä käytössä SQL*Forms kehittimellä toteutettu merkkipohjainen käyttöliittymä tietokannan hallintaan. Tämän projektin tarkoituksena on suunnitella ja toteuttaa graafinen käyttöliittymä vanhan järjestelmän tilalle. Käyttöliittymä toteutetaan web-käyttöliittymänä, jonka avulla Rengastustoimiston työtekijät voivat syöttää uusia ja muokata vanhoja tietoja sekä tulostaa hakuvalintoihin perustuvia raportteja. Tallettamisen yhteyteen liitetään tarkistuksia ja rajoitteita tietojen oikeellisuuden ylläpitämiseksi. Projektissa pyritään hyödyntämään kaikkia edellisten sääksiprojektien dokumentointimateriaaleja sekä Merikotkajärjestelmän ratkaisuja kaikilta soveltuvilta osilta. 2 Sanasto Apache HTTP. Avoimeen lähdekoodiin perustuva HTTP-palvelin ohjelma. Black-box.Testausmenetelmä, jossa testaus tehdään järjestelmän ulkoisen rakenteen pohjalta. Cascading Style Sheets, CSS. Erityisesti www- ohjelmille kehitetty tyyliohjeiden laji. Annetut säännöt ehdottavat kuinka dokumentti 1

voidaan esittää. Varsinaisia tyylikieliä ovat CSS1 ja seuraaja CSS2, jota tässä projektissa käytetään. HTTPS. HTTP: n (Hypertext Transfer Protocol) salattu versio. Tätä muotoa käytetään suojattuun tiedon siirtoon www:ssä. Tiedot salataan ennen lähettämistä SSH- protokollan avulla. Hypertext Markup Language, HTML. Standardoitu kuvauskeli, jolla pystytään kuvaamaan hyperlinkkejä sisältävää tekstiä. HTML mahdollistaa tekstin rakenteen merkinnän, esimerkiksi mikä osa on otsikko ja mikä taas leipätekstiä. Merkintä tapahtuu tekstin sekaan kirjoitettavilla elementeillä ja niiden sisällä olevilla määritteillä. JavaScript. Web-ympäristössä käytettävä oliopohjainen komentosarjakieli, jonka syntaksi perustuu löyhästi C- ohjelmontikieleen. JavaScript mahdollistaa dynaamisten toiminnallisuuksien lisäämisen web-sivuille. Järjestelmä. Tässä dokumentissa järjestelmällä tarkoitetaan pääasiallisesti toteutettavaa ohjelmistoa tai jo valmista ohjelmistoa kts. Tietokantajärjestelmä. Käyttöliittymä. Ne välineet ja toiminnot, joilla käyttäjä on yhteydessä tietojärjestelmään eli käytännössä ohjelmistoon. Open Database Connectivity, ODBC. Microsoftin määrittelemä rajapinta (API) tietokannoille. Tämän avulla sovellusten on mahdollista kommunikoida tietokantapalvelimen kanssa. Oracle 10. Oracle-relaatiotietokannan versio 10g, jolla sääksiseurannan tietokanta toteutetaan. Pandion. Ryhmä, joka syksyllä 2001 toteutti sääksijärjestelmän ohjelmistotuotantoprojektina. 2

PHP Hypertext Preprocessor, PHP. Perl- sukuinen ohjelmointikieli, jota käytetään etenkin Web-palvelinympäristössä. PHP on komentosarjakieli ja se on alustariippumaton. Secure Shell, SSH. SSH-protokolla salaa verkon yli välitettävät tiedot esim. salasanan ja käyttäjätunnuksen sekä kaiken liikenteen mitä yhteyden yli siirtyy. Selain. Tietokoneohjelma, joka mahdollistaa käyttäjälleen katsella ja lähettää tekstiä sekä kuvia. WWW- selaimet kommunikoivat WWW-palvelimien kanssa käyttäen http- protokollaa. Suosittuja selaimia ovat esimerkiksi Internet Explorer (IE) ja Mozilla Firefox. Structured Query Language, SQL. IBM:n kehittämä standardoitu kyselykieli, jota käytetään projektin toteutuksessa. Kielellä voidaan tehdä relaatiokantaan erilaisia hakuja, muutoksia ja lisäyksiä. Stunnel. Salausohjelma, joka salaa kanavan yli lähetettävän tiedon julkisen avaimen-salausperiaatteella. Tietokanta. Jotain käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä, säilytettäviä tietoja. Tietokannan teknisiä ominaisuuksia ovat mm. tiedon riippumattomuus sitä käsittelevistä ohjelmista, tietojen samanaikainen käyttö, monipuoliset tiedonhakumahdollisuudet, tietojen suojaus, mutkikkaat riippuvuudet tietojen välillä ja automaattinen varmistus ja elpyminen häiriöistä. Tietokantajärjestelmä. Tietokantajärjestelmällä tarkoitetaan tietokannan, tietokannanhallintajärjestelmän ja tietokantaa käyttävän sovellusohjelman luomaa kokonaisuutta. Tipu4. Ryhmä, joka keväällä 2004 jatkoi sääksijärjestelmän toteutusta ohjelmistotuotantoprojektina. Tiput. Vastaavan ohjelmistotuotantoprojektiryhmän nimi syksyllä 2006. 3

White-box. Testausmenetelmä, jossa testitapaukset tehdään järjestelmän sisäisen rakenteen perusteella. World Wide Web, WWW. Maailmanlaajuinen verkko on internetissä toimiva hypertekstijärjestelmä. WWW on yksi palvelumuoto, jota käytetään internetin avulla. 3 Suunnittelun ja toteutuksen rajoitteet 3.1 Yhteydet aiemmin toteutettuihin käyttöliittymän osiin 3.2 Noudatettavat standardit Tiput-projektiryhmä pyrkii käyttämään aikaisempien sääksi- ja merikotkakäyttöliittymää suunnitelleiden projektien (Pandion ja tipu4 sekä Hali) dokumentaatiota kaikilta soveltuvilta osin hyödyksi omassa työssään. Dokumentaatioiden lisäksi raporttien tulostustoiminto otetaan käyttöön tuotantokäytössä olevasta järjestelmästä. Ohjelmisto toteutetaan PHP4-ohjelmointikieltä, SQL-kyselykieltä, HTML-kuvauskieltä, JavaScript-komentosarjakieltä sekä CSS2- tyylikieltä hyväksi käyttäen. Tietokannanhallintaohjelmistona toimii Oracle 10g. 3.3 Muut tarvittavat ohjelmat PHP skripti ajetaan palvelimessa alkokrunni.cs.helsinki.fi (db.cs.helsinki.fi), jossa Apache HTTP palvelinohjelmiston versio 1.3.33 huolehtii tiedon tarvittavasta web-jakelusta. Lintut-ietokanta sijaitsee tietokantapalvelimella rinkka.helsinki.fi. Asiakassovelluksen käyttöön suositellaan selainohjelmistoksi Internet Explorerin versiota 6.0 ja Mozilla Firefox 1.5.2. 4

3.4 Ohjelmointikieli ja -tyyli PHP4 ohjelmointikielellä pystytään sujuvasti toteuttamaan käyttäjän tarvitsema toiminnallisuus. Käyttöliittymän toimintojen avulla voidaan tietokannasta hakea tietoa, muokata siellä jo olevia tietoja sekä tallentaa tietokantaan uusia tietoja. Ohjelmakoodia kommentoidaan jatkuvasti sitä tehtäessä. Kommentit kirjoitetaan suomeksi kokonaisin lausein, jolloin ohjelman osan rakentaminen ja hahmottaminen on helpompaa. Tämä tukee myös myöhemmin mahdollisesti tehtäviä korjauksia sekä ylläpitoa. Jokainen ohjelman osa, aliohjelma, nimetään saman periaatteen mukaisesti. Aliohjelman nimen alkuun kirjoitetaan jokin seuraavista, tarkoituksesta riippuen. check = tarkastukseen liittyvä aliohjelma, db = tietokannan käsittelyyn liityvä aliohjelma, error = virheilmoitusaliohjelma, info = aliohjelma, jolla käyttäjälle ilmoitetaan järjestelmän tapahtumista log = lokia käsittelevä aliohjelma, oci = rajapinta, jolla Oraclen tietokantaan otetaan yhteyttä sekä ui = käyttöliittymään liittyvä aliohjelma Ohjelmakoodin tehdään ulkoasultaan samanlaiseksi. Koodissa käytetään sisennyksiä rakenteiden erottamiseksi sekä muuttujien nimet määritellään sovittujen sääntöjen mukaan. 5

4 Järjestelmän yleiskuvaus 4.1 Järjestelmän toiminta Tässä luvussa kuvataan yleisellä tasolla sääksijärjestelmän toimintaa. Käyttöliittymä on kuvattu luvussa Kuvasarjat 5.2 ja tietokanta on kuvattu luvussa Tietokannan kuvaus 6.1. Järjestelmä perustuu käyttäjän selaimen, web-palvelimen ja tietokantapalvelimen väliseen vuorovaikutukseen (Kuva 4.1). Yhteys käyttöliittymän ja tietokannan välillä toteutetaan kolmitasoisella arkkitehtuurilla. Kuva 4.1 Yleiskuva sääksijärjestelmän toiminnasta 6

Palvelimella alkokrunni.cs.helsinki.fi (alias db.cs.helsinki.fi), pyörii Apache HTTP-palvelinohjelmisto. Tietokanta Oracle 10 sijaitsee palvelimella rinkka.cs.helsinki.fi. 4.2 Komponenttien väliset suhteet Palvelinkoneiden alkokrunni ja rinkka välillä käytetään suojaukseen stunnel-ohjelmistoa, joka huolehtii tiedon kryptaamisesta. PHP-ohjelma kutsussa tiedon salaukseen käytetään HTTPSprotokollaa. Käyttöliittymässä tietojen oikeellisuus tarkastetaan JavaScriptin avulla. Käyttäjän syöttämä informaatio lähetetään selaimessa näkyvän html-sivun kautta php-ohjelman aliohjelmille, jotka lähettävät toimenpidepyynnön eteenpäin tietokanta-palvelimelle. Suoritettava toimenpide voi olla haku-, lisäys-, muokkaus- tai poisto- operaatio. Tietokantaoperaatiota varten tarvitsemansa metatiedon käyttäjät saavat tarkastelemalla tietokannan aputauluja. Tietokannanhallintaohjelmisto palauttaa tietokantaprosessin mukaisen palautteen prosessin omistajalle eli php-ohjelmalle, joka ohjaa saamansa palautteen selaimen html-sivujen eri elementteihin. Kuva 4.2 Järjestelmäyhteys 7

4.3 Alustatiedot Alustan palvelin, jota projektissa käytetään, on PHP 4.0. PHPtulkin sijainti on /usr/local/bin/php. Tuotantovaiheessa ohjelmat sijoitetaan ryhmän cgi-bin -hakemistoon alkokrunnilla. 5 Moduulikuvaukset 5.1 Toimintakuvaukset 5.1.1 Sisään- ja uloskirjautuminen Seuraavana kuvataan järjestelmän toimintaa pääpiirteittäin eri käyttötapauksilla. Toimintakuvauksien lisäksi eri tapauksia pyritään selventämään sekvenssikaavioiden avulla sekä käyttöliittymän eri sivujen kuvilla. Käyttäjä antaa käyttäjätunnuksen ja salasanan sivulla Sisäänkirjautuminen ja painaa Kirjaudu järjestelmään -nappia. Aloitussivuna on Pesän haku -sivu. Käyttäjä kirjautuu ulos Kirjaudu ulos -linkistä. Uloskirjautumisen jälkeen sivuksi tulee Sisäänkirjautumis-sivu, jossa Kirjaudu järjestelmään -napin vieressä on kommentti Olet kirjautunut ulos järjestelmästä. 8

Kaavio 5.1.1.1 Sekvenssikaavio sisäänkirjautumisesta Kaavio 5.1.1.2 Sekvenssikaavio uloskirjautumisesta 9

5.1.2 Pesätietojen haku sekä tarkastusten hallinta Käyttäjä hakee Pesän haku -sivulla haluamansa pesät täyttämällä sopivat hakuehdot (tässä tapauksessa vanhan läänijaon mukainen läänijako, suuralue, LYL-alue, ympäristökeskus, etäisyys annetuista koordinaateista, reviirin nimi, pesän nimi, reviirin id, pesän id, kunta, joilta pesät halutaan) ja painaa Hae -nappia. Jos käyttäjä ei syötä mitään hakuehtoja ja painaa Hae -nappia, tulee näytölle listaus kaikista pesistä. Listaus hakuehdot täyttävistä pesistä tulee linkkilistana sivulle. Jos käyttäjä haluaa muuttaa hakuehtoja, hän voi tyhjentää kaikki kentät Tyhjennä - napilla. Kaavio 5.1.2.1 Sekvenssikaavio pesätietojen hausta 10

Hakutulokset (listaus hakuehdot täyttävistä pesistä) ilmestyvät listaksi näytölle. Pesän nimi -linkillä pääsee katselemaan/muuttamaan kyseisen pesän tietoja (pesän tiedot, olosuhde ja viimeisin tarkastus). Uusi tarkastus -linkillä voidaan tallentaa uuden tarkastuksen tiedot kyseiselle pesälle. Uuden tarkastuksen lisäyksessä pesää koskevat tiedot on esitäytetty edellisen vuoden tietojen perusteella, mutta tarkastustietoja ei ole esitäytetty, eli lomakkeen alaosa on tyhjennetty edellisen vuoden tiedoista. Käyttäjä täyttää nämä tiedot ja painaa Tallenna - painiketta. Uutta tarkastusta tallennettaessa tarkastuspäivä on täytettävä. Kaavio 5.1.2.2 Sekvenssikaavio uuden tarkastuksen lisäämisestä Kun käyttäjä on hakenut näytölle yksittäisen pesän tarkastustiedot, voi hän tarkastella aiempien vuosien tarkastustietoja, valitsemalla Aikaisemmat tarkastustiedot -pudotusvalikosta aikeisemman vuoden tarkastuksen ja painaa Näytä tarkastustiedot -nappia. Jos käyttäjä haluaa tehdä muutoksia näihin jo olemassa oleviin pesätietoihin, voi pesätietoja muuttaa tekemällä tarvittavat muutokset web-lomakkeen 11

kenttiin ja painamalla Tallenna-painiketta. Onnistuneesta tallennuksesta käyttäjälle tulee ilmoitus Päivitys onnistui.. Kaavio 5.1.2.3 Sekvenssikaavio vanhan tarkastuksen muokkaamisesta 5.1.3 Reviirin lisääminen Käyttäjä painaa navigointipalkin Reviirit-linkkiä Pesän haku -sivun vasemmalla olevasta listasta tai sivun ylhäällä olevista painikkeista. Käyttäjä syöttää uuden reviirin määrittelemällä reviirin nimen ja antamalla sen kunnan tunnuksen, jossa reviiri sijaitsee. Tallennanapin painalluksen jälkeen tarkistetaan löytyykö kyseinen reviiri tietokannasta. Jos reviirin nimi löytyy, tulee näytölle ilmoitus: "Reviiri löytyy jo, haluatko silti lisätä reviirin?" ja lisäksi tulostuu näytölle lista, jossa on reviirin nimi ja ne kunnat, jossa reviiri sijaitsee. Uutta reviiriä luotaessa tarkastetaan myös mahdolliset reviirin vanhat kunnat, jos kunta olisikin mahdollisesti poistunut ja yhdistynyt toiseen kuntaan. Näytön tyhjentääkseen käyttäjä painaa 12

Tyhjennä-nappia ja kaikki näytön kentät tyhjentyvät. Viimeisenä rivillä listalla on tyhjä rivi ja lopussa Lisää-nappi, johon täyttämällä pakolliset kentät voi tallettaa uuden reviirin. Jos kyseistä reviirinimeä ei löydy tietokannasta niin Tallenna-napin painalluksen jälkeen tulee ilmoitus "Päivitys onnistui" ja uuden reviirin tiedot tallentuvat lisätietoineen reviirit tauluun ja ohjelma luo reviirille uuden id:n, uusiid = max(reviiriid) + 1. Kaavio 5.1.3 Sekvenssikaavio reviirin lisäämisestä 5.1.4 Pesän lisääminen Käyttäjä painaa navigointipalkin Pesän lisäys linkkiä Pesän hakusivun vasemmalla olevasta listasta tai sivun ylhäällä olevista painikkeista ja täyttää Pesän nimen, Reviirin ID:n kenttiin ja painaa Tallenna-nappia. Tämän jälkeen tarkistetaan, onko reviiri tietokannassa, sillä pesän lisäys ei onnistu ilman reviiri tietoja. Jos reviiriä ei löydy, on käyttäjä mentävä ensin lisäämään reviiri, Reviirin lisäys -sivun kautta. Reviirin olemassa olon lisäksi 13

tarkistetaan lisätty pesä jo mainitulla reviirillä. Jos näin on, tulee ilmoitus Pesä on jo reviirillä, haluatko silti lisätä?. Jos reviiri on olemassa ja käyttäjä haluaa tallettaa pesän tiedot, tulee ilmoitus Pesän perustiedot tallennettu. ja uuden pesän tiedot talletettaan tietokantaan ja samalla pesälle luodaan uusi ID = max(pesaid) + 1. Kaavio 5.1.4 Sekvenssikaavio pesän lisäyksestä 5.1.5 Aputaulujen hallinta Käyttäjä painaa navigointipalkin Aputaulut linkkiä Pesän hakusivun vasemmalla olevasta listasta tai sivun ylhäällä olevista painikkeista, kun hän haluaa tarkastaa tietokannan tietyn taulun yksittäisen muuttujan arvon merkityksen tai sallitut muuttujien arvot. Aputaulu-sivulla käyttäjä valitsee Taulut-pudotusvalikosta taulun nimen ja painaa Hae taulu -nappia. Näytölle avautuu lista kyseisen taulun attribuuteista Taulun arvot -pudotusvalikkoon, joista käyttäjä valitsee hiirellä haluamansa attribuutin ja painaa Hae- 14

arvot -nappia. Tämän jälkeen hänelle avautuu lista kyseisen attribuutin mahdollisista arvoista selitteineen. Kaavio 5.1.5.1 Sekvenssikaavio aputaulujen hausta Jos käyttäjä haluaa lisätä johonkin aputauluista uuden koodin, hän menee Aputaulut -sivulle vasemmalla olevasta listasta tai sivun ylhäällä olevasta painikkeesta Aputaulu. Sivulla käyttäjä valitsee haluamansa taulun Taulut-pudotusvalikosta, jonka seurauksena Taulun arvot -pudotusvalikkoon ilmestyvät kaikki kyseisen taulun attribuutit. Kun oikea attribuutti on valittu, alapuolelle ilmestyy lista kyseisen attribuutin arvoista. Tyhjälle riville voidaan lisätä uusi koodi ja selite, jotka tallennetaan painamalla Lisää-nappia. 15

Kaavio 5.1.5.2 Sekvenssikaavio aputaulujen lisäyksestä Lisää-napin painamisen jälkeen uusi koodi ja selite ilmestyvät listaan. Selitteitä voi korjata tekemällä korjaukset suoraan selitekenttään ja painamalla kyseisen rivin Muuta-nappia. Tällöin järjestelmä antaa varoituksen siitä, että tietoja ollaan muuttamassa ja pyytää varmistamaan toiminnan. Mahdolliselle uudelle koodille on myös ilmestynyt tyhjä rivi. Kaavio 5.1.5.3 Sekvenssikaavio aputaulujen muokkauksesta 16

5.1.6 Pesätarkastajien hallinta Käyttäjä painaa navigointipalkin Tarkastaja -linkkiä Pesän haku - sivulla vasemmalla olevasta listasta tai sivun ylhäällä olevista painikkeista. Käyttäjä antaa Tarkastajan nimi -kenttään, joko koko nimen tai osan siitä katkaisten nimeä % -merkillä joko alusta tai lopusta tai molemmista ja painaa Hae-nappia, jolloin näytölle tulee lista tarkastajista, jotka sopivat valittuihin hakutekijöihin. Tarkastaja-listan jokaisen rivin lopussa on Muuta-nappi, jota klikkaamalla voidaan kyseisen rivin tarkastajan tietoja muuttaa. Listan loppuun tulee tyhjä rivi, jolle voi lisätä uuden tarkastajan. Lisäämällä riville tarkastajan etunimen, sukunimen sekä tarkastajaid (= rengastustoimiston tunnus) ja painamalla rivin lopussa olevaa Lisää painiketta, uusi tarkastaja lisätään tietokantaan. TarkastajaID on rengastustoimiston tunnus, jonka käyttäjä tietää ja jota ei tarkisteta eikä luoda tietokannassa Lisää napin painalluksella tiedot talletetaan tietokantaan ja saadaan ilmoitus tiedot päivitetty tietokantaan. 17

Kaavio 5.1.6 Sekvenssikaavio pesätarkastajien hallinnasta 5.1.7 Raporttien tulostus Käyttäjä painaa navigointipalkin Raportit-linkkiä Pesän haku -sivun vasemmalla olevasta listasta tai sivun ylhäällä olevista painikkeista. Raportit-sivulla valitaan haluttu aikaväli ja alue (vanhan läänijaon mukainen läänijako, suuralue, LYL-alue, ympäristökeskus, etäisyys annetuista koordinaateista, reviirin nimi, pesän nimi, reviirin id, pesä id, kunta ja vuodet, joilta tiedot halutaan) sekä haluttu raportti ja painetaan Tulosta raportti-painiketta, jonka seurauksena ilmestyy 18

Tiedoston tallennus-ikkuna, jossa raportin voi nimetä ja tallentaa haluamaansa tiedostoon. Kaavio 5.1.7 Sekvenssikaavio raporttien tulostuksesta 5.1.8 Kuntaliitosten tekeminen Käyttäjä painaa navigointipalkin Kuntaliitos-linkkiä Pesän haku - sivun vasemmalla olevasta listasta tai sivun ylhäällä olevista painikkeista. Käyttäjä valitsee kuntaliitokseen kaksi kuntaa pudotusvalikosta ja syöttää uuden nimen, hallinnolliset alueet sekä uuden tunnuksen ja painaa Tallenna-nappia. Näytön tyhjentääkseen käyttäjä painaa Tyhjennä-nappia, jolloin kaikki näytön kentät tyhjenevät. Onnistuneessa tallennuksessa tiedot tallentuvat ensin tietokantaan ja sitten lokiin ja käyttäjä saa ilmoituksen "Päivitys onnistui.". 19

Kaavio 5.1.8 Sekvenssikaavio kuntaliitosten tekemisestä 5.1.9 Kuntatietojen muokkaus Käyttäjä painaa navigointipalkin Kunta-linkkiä Pesän haku -sivun vasemmalla olevasta listasta tai sivun ylhäällä olevista painikkeista. Hän valitsee kunnan nimen Nimi-pudotusvalikosta ja painaa Haenappia. Järjestelmä tarkistaa onko kyseistä kuntaa olemassa. Jos ei järjestelmä antaa virheilmoituksen. Jos kunta löytyy tietokannasta tuodaan kunnan tiedot näytölle. Tämän jälkeen käyttäjä voi muuttaa haluttuja tietoja. Kenttien tyhjennys tapahtuu Tyhjennä-napilla. Kun tarvittavat muutokset on tehty, painaa käyttäjä Tallenna-nappia, jonka jälkeen muutetut tiedot tarkastetaan niiden kenttien osalta, joissa se on tarpeellista. Jos tiedoissa on virheitä, järjestelmä antaa virheilmoituksen, muuten tiedot viedään tietokantaan sekä lokiin ja käyttäjä saa ilmoituksen Päivitys onnistui. 20

Kaavio 5.1.9 Sekvenssikaavio kuntatietojen muokkauksesta 5.2 Kuvasarjat 5.2.1 Aloitussivu Kuvasarjoilla esitetään näytöittäin mitä käyttäjä voi järjestelmässä tehdä. Näillä on tarkoitus kuvata mahdollisimman kattavasti järjestelmän toimintalogiikka, puuttumatta liikaa pieniin yksityiskohtiin. Näytöt on tehty html-kielellä eli ne toimivat prototyyppeinä lopullisesta web-käyttöliittymästä. Tässä vaiheessa on hyvä huomata, että nämä kuvat ovat vielä viimeistelemättömiä ja muutoksia sekä korjauksia lopulliseen käyttöliittymään tullaan tekemään. Oikean käyttäjätunnuksen ja salasanan syöttämisen jälkeen käyttäjä kirjautuu järjestelmään, jossa aloitussivuna hänelle aukeaa Pesän haku -sivu. 21

Kuva 5.2.1 Pesän haku -sivu 22

5.2.2 Pesän lisäys Pesän lisäys -sivulla käyttäjä voi ylläpitää pesätietoja. Sivulle hän pääsee joko ylävalikosta ja vasemmalta sivuvalikosta. Kuva 5.2.2 Pesän lisäys -sivu 23

5.2.3 Reviirin lisääminen Reviirien lisääminen onnistuu järjestelmässä Reviirit-sivun kautta. Miltä tahansa sivulta sinne voi mennä Reviirit-linkin kautta, joka on ylävalikosssa ja vasemmalla sivuvalikosssa. Kuva 5.2.3 Reviirin lisäys -sivu 5.2.4 Maastolomake Käyttäjällä on mahdollisuus tarkastella johonkin tiettyyn pesään liittyviä vanhoja tarkastuksia tai tallentaa jollekin pesälle uudet tarkastustiedot. Maastolomake-sivun kautta. Sivulle pääsee ylhäältä tai vasemmalta valikosta. 24

Kuva 5.2.4 Maastolomake-sivu 25

5.2.5 Raportit Tulevasta järjestelmästä on mahdollista tulostaa erilaisia raportteja, joko esitäytettyjä tai tyhjiä. Raporttien tulostus -sivulle voi mennä miltä tahansa sivulta valitsemalla valikoista linkin Raportit. Kuva 5.2.5 Raportit-sivu 26

5.2.6 Aputaulujen hallinta Tietokantataulujen hallintaan käyttäjälle tarjotaan sivu Aputaulut, jossa hän voi etsiä taulun ja siihen kuuluvat attribuutit sekä tehdä näille tarvittavat toimenpiteet. Aputaulut-sivulle käyttäjä pääsee valitsemalla vasemmalta tai ylhäältä valikosta linkin Aputaulut. Kuva 5.2.6 Aputaulujen hallinta -sivu 27

5.2.7 Tarkastaja Tarkastajia käyttäjä pääsee hakemaan ja lisäämään valikoiden kohdasta Tarkastajat. Kuva 5.2.7 Tarkastajien hallinta -sivu 28

5.2.8 Kunta Tietoja kunnista käyttäjä voi ylläpitää Kunta-sivun avulla, jonne pääsee Kunnat-linkista vasemmalta tai ylhäältä valikosta. Kuva 5.2.8 Kuntien ylläpito -sivu 29

5.2.9 Kuntaliitos Kuntaliitoksia käyttäjä voi tehdä linkistä Kuntaliitos, joka löytyy vasemmalta tai ylhäältä valikosta. Kuva 5.2.9 Kuntaliitosten hallinta -sivu Käyttäjä poistuu järjestelmästä Kirjaudu ulos -linkistä, joka löytyy molemmista valikoista. 30

6 Tietokanta 6.1 Tietokannan kuvaus Tuleva WWW-käyttöliittymä hyödyntää olemassa olevaa tietokantaa. Tietokannan taulut ovat seuraavat: PESA, POIKANEN, OLOSUHDE, MYRKKY, REVIIRI, TARKASTUS, TARKASTAJA, VUOSI ja KUNTA. Lisäksi tietokannassa on aputauluja metatiedoista sekä tauluja, jotka sisältävät aluetietoa. Kaavio 5.2.9.1 Taulujen riippuvuudet 31

6.1.1 Pesä Tauluun PESA talletetaan pesäkohtaista tietoa, joka yleensä ei muutu: pesän nimi, pesän sijaintitiedot, jne. Taulun avain on attribuutti PESAID, jonka arvo on järjestelmän tuottama juokseva numerointi. Tämä numero identifioi pesän. Taulu Attribuutti Null Tyyppi Pituus Kommentti PESA PESAID N NUMBER 7 Avain. PESANIMI Y VARCHAR2 24 Pesän nimi. LAANI N VARCHAR2 1 Läänin lyhenne KUNTA N VARCHAR2 6 Kunnan lyhenne. KYLA Y VARCHAR2 18 Kylän nimi. KOORD_TYYPPI N NUMBER 2 Koordinaattien syöttötyyppi. YHT_LEVEYS N NUMBER 7 Yhtenäiskoordinaattien leveysosa (m). YHT_PITUUS N NUMBER 6 Yhtenäiskoordinaattien pituusosa (m). KM_LEVEYS Y NUMBER 7 Kilometrikoordinaattien leveysosa (m). KM_PITUUS Y NUMBER 6 Kilometrikoordinaattien pituussosa (m). AST_LEVEYS N NUMBER 4 Minuuttimuotoisten astekoordinaattien leveysosa. AST_PITUUS N NUMBER 4 Minuuttimuotoisten astekoordinaattien pituusosa. DES_LEVEYS N NUMBER 10,7 Desimaalimuotoisten astekoordinaattien leveysosa. DES_PITUUS N NUMBER 10,7 Desimaalimuotoisten astekoordinaattien pituusosa. PESAP_LAJI Y VARCHAR2 1 Pesäpuun laji. LUOKKA Y VARCHAR2 1 Mitä virheitä syötetty tieto sisältää VIRHE Y NUMBER 4 Jos virheellistä tietoa, kuinka vakava virhe. KOMMENTTI Y VARCHAR2 250 Kommentti. VANHA_PESAID Y VARCHAR2 9 Vanhan järjestelmän id EUR_LEVEYS Y NUMBER 10 Euref-muotoisten astekoordinaattien leveysosa. EUR_PITUUS Y NUMBER 10 Euref-muotoisten astekoordinaattien pituusosa. KOORD_TARKKUUS Y VARCHAR2 1 Koordinaatin tarkkuus KOORD_MITTAUSTAPA Y VARCHAR2 1 Koordinaatin mittaustapa 32

6.1.2 Poikanen Tauluun POIKANEN kerätään pesätarkastuksen yhteydessä kerätyt poikastiedot. Taulun avain on attribuutti POIKANENID. Jokainen poikanen liittyy johonkin pesätarkastukseen, joten viiteavain tauluun TARKASTUS on attribuutti TARKASTUSID. Taulu Attribuutti Null Tyyppi Pituus Kommentti POIKANEN POIKANENID N NUMBER 7 Avain. TARKASTUSID N NUMBER 7 Viiteavain TARKASTUS-tauluun. RENGAS Y VARCHAR2 9 Renkaan tunnus. SIIPI Y NUMBER 3 Poikasen siiven pituus (mm). PAINO Y NUMBER 4 Poikasen paino (g). LUOKKA Y VARCHAR2 1 Mitä virheitä syötetty tieto sisältää VIRHE Y NUMBER 4 Jos virheellistä tietoa, kuinka vakava virhe. KOMMENTTI Y VARCHAR2 250 Kommentti. SIIPI_MITTAUS_MENET Y VARCHAR2 1 Siiven mittausmenetelmä 33

6.1.3 Olosuhde Tauluun OLOSUHDE kerätään pesään liittyviä tietoja, jotka voivat muuttua silloin tällöin. Taulun avain on attribuutti OLOSUHDEID, jonka arvo on järjestelmän tuottama juokseva numero. Jokaiseen taulun riviin liittyy yksi pesä, joten viiteavain tauluun PESA on attribuutti PESAID. Taulu Attribuutti Null Tyyppi Pituus Kommentti OLOSUHDE OLOSUHDEID N NUMBER 7 Avain. PESAID N NUMBER 7 Viiteavain PESA-tauluun. ILM_PVM N DATE 7 Olosuhdetietojen kirjaamispäivämäärä. MAASTOTYYPPI Y VARCHAR2 1 Maastotyyppi. PUUSTO Y VARCHAR2 1 Puuston tyyppi. PUUST_KASASTE Y VARCHAR2 1 Puuston käsittelyaste. PUUST_TIHEYS Y VARCHAR2 1 Puuston tiheys. PESAN_SIJAINTI Y VARCHAR2 1 Pesän sijainti. PESAP_ELAVYYS Y VARCHAR2 1 Pesäpuun elävyys. PESAP_KORK_TARK Y NUMBER 1 Pesäpuun korkeuden mittaamistark. PESAP_KORKEUS Y NUMBER 3 Pesäpuun korkeus (m). PESAP_TYVIH_TARK Y NUMBER 1 Pesäpuun tyven halkaisijan mittaamistark. PESAP_TYVIHALK Y NUMBER 3 Pesäpuun tyvihalkaisija (cm). PESAP_TYVIY_TARK Y NUMBER 1 Pesäpuun tyven ympäryksen mittaamistark. PESAP_TYVIYMP Y NUMBER 3 Pesäpuun tyvipaksuus (cm). PESAP_LATVAH_TARK Y NUMBER 1 Pesäpuun latvan halkaisijan mittaamistark. PESAP_LATVAHALK Y NUMBER 3 Pesäpuun latvahalkaisija (cm). PESAP_LATVAY_TARK Y NUMBER 1 Pesäpuun latvan ympäryksen mittaamistark. PESAP_LATVAYMP Y NUMBER 3 Pesäpuun latvapaksuus (cm). RAUHOITUSTAULU Y NUMBER 1 Onko puussa rauhoitustaulua. LUOKKA Y VARCHAR2 1 Mitä virheitä syötetty tieto sisältää VIRHE Y NUMBER 4 Jos virheellistä tietoa, kuinka vakava virhe KOMMENTTI Y VARCHAR2 250 Kommentti. 34

6.1.4 Myrkky Taulu MYRKKY sisältää analysoituja myrkkytietoja pesintään vaikuttaneista myrkyistä. Taulun avain on attribuutti MYRKKYID, jonka arvo on järjestelmän tuottama juokseva numero. Jokaiseen MYRKKY -taulun riviin liittyy yksi pesä, joten viiteavain tauluun PESA on attribuutti PESAID. Taulu Attribuutti Null Tyyppi Pituus Kommentti MYRKKY MYRKKYID N NUMBER 7 Avain. PESAID N NUMBER 7 Viiteavain PESA-tauluun. TYYPPI N NUMBER 1 Myrkkynäytteen tyyppi. NUMERO N NUMBER 6 Myrkkynäytteen numero. MZ N NUMBER 6 Eläinmuseon kokoelman numero. TALL_PVM N DATE 7 Näytteen tallennuspäivämäärä. ANALYYSIPVM Y DATE 7 Näytteen analysointipäivämäärä. TALLENTAJA N NUMBER 4 Tallentajan rengastusnumero. PITUUS Y NUMBER 4,2 Munan pituus (0.01mm). LEVEYS Y NUMBER 4,2 Munan leveys (0.01mm). PAKS_EI_KALV Y NUMBER 3,2 Kuoren paksuus ilman kalvoa (0.01mm). PAKS_KALV Y NUMBER 3,2 Kuoren paksuus kalvoineen (0.01mm). PAINO_TARK Y NUMBER 1 Munan painon tarkkuus. PAINO Y NUMBER 4,2 Munan paino (0.01g). SISALTO Y NUMBER 1 Munan sisällön laatu. SIS_VARI Y NUMBER 1 Munan sisällön väri. SIKIO Y NUMBER 1 Sikiön koko. RASVAPIT Y NUMBER 3,1 Rasvapitoisuus (0.1 DDT Y NUMBER 5,1 DDT:n pitoisuus (0.1ppm). DDD Y NUMBER 5,1 DDD:n pitoisuus (0.1ppm). DDE Y NUMBER 5,1 DDE:n pitoisuus (0.1ppm). PCB Y NUMBER 5,1 PCB:n pitoisuus (0.1ppm). HG Y NUMBER 5,1 Hg:n pitoisuus (0.1ppm). LUOKKA Y VARCHAR2 1 Mitä virheitä syötetty tieto sisältää VIRHE Y NUMBER 4 Jos virheellistä tietoa, kuinka vakava virhe. KOMMENTTI Y VARCHAR2 250 Kommentti. 35

6.1.5 Reviiri Taulu REVIIRI sisältää hallinnointiin liittyviä tietoja. Taulun avain on attribuutti REVIIRIID, jonka arvo on järjestelmän tuottama juokseva numerointi. Taulu Attribuutti Null Tyyppi Pituus Kommentti REVIIRI REVIIRIID N NUMBER 7 Avain. HALLINTOLAANI Y VARCHAR2 1 Hallintolääni HALLINTOKUNTA Y VARCHAR2 6 Hallintokunta. NUMERO Y NUMBER 3 Reviirin numero. REVIIRINIMI Y VARCHAR2 18 Reviirin nimi (vanhasta järjestelmästä). LUOKKA Y VARCHAR2 1 Mitä virheitä syötetty tieto sisältää VIRHE Y NUMBER 4 Jos virheellistä tietoa, kuinka vakava virhe. KOMMENTTI Y VARCHAR2 250 Kommentti. 36

6.1.6 Tarkastus Tauluun TARKASTUS kirjataan pesän tarkastuskäynnillä kerätyt tiedot. Saman pesään kohdistuvia tarkastustietoja voi olla yhden vuoden aikana useita. Eri tarkastuskäyntien tiedot kootaan kuitenkin yhteen käyntiin. Taulun avain on attribuutti TARKASTUSID, joka saa arvokseen järjestelmän tuottaman juoksevan numeron. Viiteavain tauluun PESA on attribuutti PESAID ja viiteavain tauluun RENGASTAJA attribuutti RENGASTAJA_ID. Taulu Attribuutti Null Tyyppi Pituus Kommentti TARKASTUS TARKASTUSID N NUMBER 7 Avain. PESAID N NUMBER 7 Viiteavain PESA-tauluun. RENGASTAJA N NUMBER 4 Rengastajanumero(viiteavain). TARK_PVM N DATE 7 Tarkastuspäivämäärä. TARK_PVM_TARK N NUMBER 1 Tarkastuspäivämäärän tarkkuus. AIKUISIA Y NUMBER 1 Aikuisten lukumäärä. MUNIA Y NUMBER 1 Munien lukumäärä. ELAVIA Y NUMBER 1 Elävien poikasten määrä. KUOLLEITA Y NUMBER 1 Kuolleiden poikasten määrä. LENTOPOIK Y NUMBER 1 Lentopoikasten määrä. AIK_AIKUISIA Y NUMBER 1 Aikaisemmin todettu aikuisten lintujen maxmäär AIK_MUNIA Y NUMBER 1 Aikaisemmin todettu lopullinen munamäärä. LOP_LENTOPOIK Y NUMBER 1 Myöhemmin todettu lentopoikasten lkm. LOP_KUOLLEITA Y NUMBER 1 Myöhemmin todettu kuolleiden poikasten lkm. TARKKUUS Y NUMBER 1 Pesäpoikasten määrän ja siivenmittauksen tark. PESIMIST_TARK Y VARCHAR2 1 Pesimistuloksen tarkkuus. PESIMISTULOS Y VARCHAR2 1 Pesimistulos. MUULAJI Y VARCHAR2 7 Pesässä pesivä muu lintulaji. KUNTO Y VARCHAR2 1 Pesän kunto. EPAONN_TARK Y VARCHAR2 1 Pesinnän epäonnistumistiedon tarkkuus. EPAONN Y VARCHAR2 1 Pesinnän epäonnistumisen syy. VAIHTOP_LAIMINL Y VARCHAR2 1 Onko etsitty vaihtopesää. SAALISTUS Y VARCHAR2 1 Tieto saalistusalueesta ja saaliskaloista. FENOLOGIA Y VARCHAR2 1 Onko saatu fenologiatietoja. MYRKKY Y VARCHAR2 1 Tietoja myrkkynäytteistä. HISTORIA Y VARCHAR2 1 Tietoja historiasta. LUOKKA Y VARCHAR2 1 Mitä virheitä syötetty tieto sisältää VIRHE Y NUMBER 4 Jos virheellistä tietoa, kuinka vakava virhe. KOMMENTTI Y VARCHAR2 250 Kommentti. VALOKUVA Y VARCHAR2 1 Onko valokuva saatavilla 37

6.1.7 Tarkastaja Tauluun TARKASTAJA kerätään tietoa pesien tarkastajista. Taulun avain on attribuutti TARKASTAJA_ID, jonka arvona on rengastustoimiston käyttämä rengastaja/havainnoijanumero (järjestelmä ei siis generoi tätä numeroa). Taulu Attribuutti Null Tyyppi Pituus Kommentti TARKASTAJA TARKASTAJA_ID N NUMBER 5 Avain ETUNIMI Y VARCHAR2 20 Etunimi SUKUNIMI Y VARCHAR2 25 Sukunimi 6.1.8 Vuosi Taulu VUOSI liittyy vuosittaiseen tarkastustietoon. Yhteen vuoteen liittyy pesä jossain kunnassa sekä tietty reviiri samassa tai jossain toisessa kunnassa. Taulun avaimen muodostavat attribuutit VUOSI, jonka arvo on tehdyn tarkastuksen vuosiluku, ja PESAID. Viiteavain tauluun REVIIRI on attribuutti REVIIRIID ja viiteavain tauluun PESA attribuutti PESAID. Taulu Attribuutti Null Tyyppi Pituus Kommentti VUOSI REVIIRIID N NUMBER 7 Viiteavain REVIIRI-tauluun (avain). PESAID N NUMBER 7 Viiteavain PESA-tauluun (avain). VUOSI N NUMBER 4 Vuosiluku (avain). PESAPUU N NUMBER 2 Pesäpuun numero reviirin sisällä. KOMMENTTI Y VARCHAR2 250 Kommentti. 38

6.1.9 Kunta Taulu KUNTA sisältää nimensä mukaisesti tietoja kunnista. Taulu sisältää myös tietoja vanhoista kunnista. Jokainen kunta kuuluu johonkin suuralueeseen ja ympäristökeskukseen. Taulun avain on attribuutti KUNTA_ID. Kunta käsitellään aina kuusikirjaimisella, attribuutin KUNTA_LIITOS arvon mukaisella koodilla. Attribuutin KUNTA_LIITOS avulla haetaan kaikki annetun kunnan synonyymit attribuutista KUNTA_TUNNUS. Raportit tuotetaan siis kuntaliitoksen mukaan. Taulu Attribuutti Null Tyyppi Pituus Kommentti KUNTA KUNTA_ID N NUMBER 4 Avain KIRJ_PVM N DATE Tietojen kirjaamispäivä KUNTA_TUNNUS N VARCHAR2 6 Kuusikirjaiminen kuntatunnus KUNTA_LIITOS N VARCHAR2 6 Kuusikirjaiminen kuntaliitos YMP_KESKUS N VARCHAR2 2 Alueellinen ympäristökeskus DES_LEVEYS N NUMBER 10,7 Desimaalimuotoisten astekoordinaattien leveysosa. DES_PITUUS N NUMBER 10,7 Desimaalimuotoisten astekoordinaattien pituusosa. KUNTA_SADE N NUMBER 4 Säteen pituus kunnan keskipisteestä. VANHA_LAANI Y VARCHAR2 1 Vanhan läänin tunnus LYL_ALUE Y NUMBER 3 Lyl-alueen tunnus 6.1.10 Aputaulut Aputaulut toimivat nimensä mukaisesti aputauluina muuttujille. Taulu Attribuutti Null Tyyppi Pituus Kommentti APUAIKUISIA ARVO N NUMBER 1 TARKASTUS, muuttujaan AIKUISIA APUAIK_AIKUISIA ARVO N NUMBER 1 TARKASTUS, muuttujaan AIKAIKUISIA APUAIK_MUNIA ARVO N NUMBER 1 39

APUELAVIA ARVO N NUMBER 1 TARKASTUS, muuttujaan AIK_MUNIA TARKASTUS, muuttujaan ELAVIA APUEPAONN ARVO N VARCHAR2 1 TARKASTUS, muuttujaan EPAONN APUEPAONN_TARK ARVO N VARCHAR2 1 TARKASTUS, muuttujaan EPAONN_TARK APUFENOLOGIA ARVO N VARCHAR2 1 APUHISTORIA ARVO N VARCHAR2 1 APUKOORD_TYYPPI ARVO N NUMBER 2 TARKASTUS, muuttujaan FENOLOGIA TARKASTUS, muuttujaan HISTORIA PESA, muuttujaan KOORD_TYYPPI APUKUNTO ARVO N VARCHAR2 1 APUKUOLLEITA ARVO N NUMBER 1 TARKASTUS, muuttujaan KUNTO TARKASTUS, muuttujaan KUOLLEITA APULAANI ARVO N VARCHAR2 1 NUMERO N NUMBER 2 PESA, muuttujaan LAANI 40

APULENTOPOIK ARVO N NUMBER 1 APULOP_KUOLLEITA ARVO N NUMBER 1 TARKASTUS, muuttujaan LENTOPOIK TARKASTUS, muuttujaan LOP_KUOLLEITA APULOP_LENTOPOIK ARVO N NUMBER 1 TARKASTUS, muuttujaan LOP_LENTOPOIK APULUOKKA ARVO N VARCHAR2 1 TARKASTUS, muuttujaan LUOKKA APUMAASTOTYYPPI ARVO N VARCHAR2 1 OLOSUHDE, muuttujaan MAASTOTYYPPI APUMUNIA ARVO N NUMBER 1 TARKASTUS, muuttujaan MUNIA APUMYRKKY ARVO N VARCHAR2 1 TARKASTUS, muuttujaan MYRKKY APUPAINO IKA N NUMBER 2 PAINO N NUMBER 4 POIKANEN, muuttujaan PAINO APUPAINO_TARK ARVO N NUMBER 1 MYRKKY, muuttujaan PAINO_TARK APUPESAN_SIJAINTI ARVO N VARCHAR2 1 OLOSUHDE, muuttujaan PESAN_SIJAINTI 41

APUPESAP_ELAVYYS ARVO N VARCHAR2 1 OLOSUHDE, muuttujaan PESAP_ELAVYYS APUPESAP_KORK_TARK ARVO N NUMBER 1 OLOSUHDE, muuttujaan PESAP_KORK_TARK APUPESAP_LAJI ARVO N VARCHAR2 1 PESA, muuttujaan PESAP_LAJI APUPESAP_LATVAH_TARK ARVO N NUMBER 1 OLOSUHDE, muuttujaan PESAP_LATVAH_TARK APUPESAP_LATVAY_TARK ARVO N NUMBER 1 OLOSUHDE, muuttujaan PESAP_LATVAY_TARK APUPESAP_TYVIH_TARK ARVO N NUMBER 1 OLOSUHDE, muuttujaan PESAP_TYVIH_TARK APUPESAP_TYVIY_TARK ARVO N NUMBER 1 OLOSUHDE, muuttujaan PESAP_TYVIY_TARK APUPESIMISTULOS ARVO N VARCHAR2 1 TARKASTUS, muuttujaan PESIMISTULOS APUPESIMIST_TARK ARVO N VARCHAR2 1 TARKASTUS, muuttujaan PESIMIST_TARK APUPUUSTO ARVO N VARCHAR2 1 OLOSUHDE, muuttujaan PUUSTO 42

APUPUUST_KASASTE ARVO N VARCHAR2 1 OLOSUHDE, muuttujaan PUUST_KASASTE APUPUUST_TIHEYS ARVO N VARCHAR2 1 OLOSUHDE, muuttujaan PUUST_TIHEYS APURENGAS ARVO N VARCHAR2 1 POIKANEN, muuttujaan RENGAS APUSAALISTUS ARVO N VARCHAR2 1 TARKASTUS, muuttujaan SAALISTUS APUSIIPI IKA N NUMBER 2 PITUUS N NUMBER 3 POIKANEN, muuttujaan SIIPI APUSIKIO ARVO N NUMBER 1 MYRKKY, muuttujaan SIKIO APUSISALTO ARVO N NUMBER 1 MYRKKY, muuttujaan SISALTO APUSIS_VARI ARVO N NUMBER 1 MYRKKY, muuttujaan SIS_VARI APUTARKKUUS ARVO N NUMBER 1 TARKASTUS, muuttujaan TARKKUUS APUTARK_PVM_TARK ARVO N NUMBER 1 TARKASTUS, muuttujaan TARK_PVM_TARK APUTYYPPI ARVO N NUMBER 1 MYRKKY, 43

muuttujaan TYYPPI APUVAIHTOP_LAIMINL ARVO N VARCHAR2 1 TARKASTUS, muuttujaan VAIHTOP_LAIMINL APUVIRHE ARVO N NUMBER 1 TARKASTUS, muuttujaan VIRHE LAJI LAJI_ID N VARCHAR2 7 Laji id KOMMENTTI Y VARCHAR2 276 Kommentti YMP_KESKUS YMPK_TUNNUS N VARCHAR2 2 YMPK_NIMI Y VARCHAR2 80 Ympäristökeskuksen tunnus Ympäristökeskuksen nimi 7 Testaussuunnitelma Tässä luvussa kuvataan ohjelmistolle tehtävän testauksen eri vaiheet, joita ovat komponenttitestaus (7.1), integrointitestaus (7.2) ja järjestelmätestaus (7.3). Itse testauksesta ja yksittäisistä testitapauksista tehdään erillinen testaussuunnitelma, joka testauksen jälkeen päivitetään testausdokumentiksi. Varsinainen testaus alkaa toteutusvaiheen loppupuolella. Testauksen päätavoitteena on tarkastaa, että järjestelmän rakenne vastaa suunnitellun järjestelmän rakennetta. Testauksella tarkastetaan, että ohjelma tekee mitä sen pitää ja että käyttöliittymä on asiakkaan toiveiden mukaan tehty. Tarkoituksena on varmistua valmistuvan tuotteen toimivuudesta, käytettävyydestä sekä oikeellisuudesta. Testausta tullaan suorittamaan kaikissa ohjelmiston eri kehitysvaiheissa. Testauksen tarkoituksena on havaita aikaisemmin tuntemattomat virheet. Testauksessa on tärkeää, että se on suunnitelmallista ja järjestelmällistä, ja samat testitapaukset ovat 44

7.1 Komponenttitestaus 7.2 Integrointitestaus 7.3 Järjestelmätestaus toistettavissa. Näin pystytään varmistamaan, että järjestelmä vastaa kaikin osin määrittelyssä sille asetettuja vaatimuksia. Täydellinen testaus on mahdotonta, mutta testauksessa pyritään löytämään tärkeimmät osajoukot kaikista mahdollisista testitapauksista. Komponenttitestauksessa ohjelmiston jokainen moduuli testataan erikseen. Testaus tehdään kattavasti, eli jokainen ohjelmiston mahdollinen suorituspolku testataan. Testaus tehdään white-box menetelmällä, jossa testitapaukset tehdään ohjelman rakenteen perusteella. Integrointitestauksen tarkoituksena on varmistaa eri moduulien yhteensopivuus. Kyseessä on black-box menetelmä, eli testausaineistona ovat ohjelman vaatimusten perusteella valitut syötteet. Testitapaukset on suunniteltu ja ne on kirjattu testisuunnitelman kohtaan 3. Järjestelmätestauksessa testataan koko ohjelmisto. Testauksessa kiinnitetään huomiota mm. toiminnallisuuteen, käyttöliittymään, virhetilanteisiin, turvallisuuteen ja suorituskykyyn. Järjestelmätestauksessa otetaan huomioon vaatimusdokumentissa määritellyt ohjelmiston vaatimukset 45