KÄYTTÖLIITTYMÄ SÄÄKSIEN PESIMÄTIETOJEN TIETOKANTAAN Yhteenvetodokumentti

Samankaltaiset tiedostot
KÄYTTÖLIITTYMÄ SÄÄKSIEN PESIMÄTIETOJEN TIETOKANTAAN Projektisuunnitelma

Projektisuunnitelma. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Versiohistoria: Versio Päivämäärä Kuvaus Tekijä Virallinen versio Janne Piippo

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

Ylläpitodokumentti Mooan

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

Ylläpitodokumentti. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Yhteenvetodokumentti. PLAYOFF Jari Anttila Sanna Fröblom Aarno Sandvik Tommi Paavilainen Miikka Kohijoki. Päivi Pääkkö, ohjaaja

Testaussuunnitelma Labra

Projektisuunnitelma. Tiput-ryhmä Ohjelmistotuotantoprojekti

Yhteenvetodokumentti. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ohjelmistotuotantoprojekti

Verkkopokerijärjestelmä. Loppuraportti Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Yhteenvetodokumentti. myva. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Yhteenvetodokumentti PULSU. Syksy 2008 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.

Projektisuunnitelma Nero-ryhmä

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

Convergence of messaging

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

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

UCOT-Sovellusprojekti. Testausraportti

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

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

Matematiikan oppifoorumi Projektisuunnitelma

Yhteenvetodokumentti. Halaan-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

dokumentin aihe Dokumentti: Testausraportti_I1.doc Päiväys: Projekti : AgileElephant

Lohtu-projekti. Testaussuunnitelma

SOVELLUSPROJEKTIN ARVIOINTILOMAKE

Vaatimusdokumentti Labra

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

Playoff kokouspöytäkirja 4

Projektisuunnitelma. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Sisäänrakennettu tietosuoja ja ohjelmistokehitys

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

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

Yhteenvetodokumentti. Anno3. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Kuopio Testausraportti Asiakkaat-osakokonaisuus

Projektisuunnitelma. Halaan-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

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

Loppuraportti. Kohahdus. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

VYPEdit verkkosivualusta SVY-toimijoille

Sisäänrakennettu tietosuoja ja ohjelmistokehitys

TIETOKANTA MERIKOTKIEN SEURANTAAN Projektisuunnitelma

Projektiorganisaation kuuluvat projektin asiakas, projektin vastuuhenkilö, projektiryhmän ohjaaja sekä projektiryhmä.

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

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Loppuraportti. Matematiikan oppifoorumi. Carl Johansson Jukka Kariola Outi Marttila Helena Venäläinen Sampsa Virtanen. Ohjaaja.

Uutisjärjestelmä. Vaatimusmäärittely. Web-palvelujen kehittäminen. Versio 1.3

Ilmoittautumisten profiloija (jatkoprojekti) ILPO2

Ohjelmistotuotantoprojekti

Figure 1: Projektipäälliköt Juha-Pekka Honkavaara ja Juha Mattila

Tietojärjestelmän osat

T Projektikatselmus

Projektisuunnitelma 0.11

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

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

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

Projektisuunnitelma. Almu. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Tapahtuipa Testaajalle...

T Tietojenkäsittelyopin ohjelmatyö Hirviöryhmä loppukatselmointi. Hirviö. Projektikatselmointi

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

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

PS-vaiheen edistymisraportti Kuopio

Määrittelydokumentti NJC2. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

T Loppukatselmus

58160 Ohjelmoinnin harjoitustyö

Projektisuunnitelma. Kohahdus. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Siimasta toteutettu keinolihas

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant Versio: V0.3

Lyseopaneeli 2.0. Käyttäjän opas

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

TOIMINNALLINEN MÄÄRITTELY MS

Desmond-opiskelijakalenteri Loppuraportti

T Käyttäjäkeskeisen tuotekehityksen harjoitustyö kevät 2005

Työelämän taitojen harjoittelu teknologian käytettävyyden arvioinnin opetuksessa

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

Tietotekniikan Sovellusprojektit

Verkkopokerijärjestelmä Projektisuunnitelma Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Kuovi-Sovellusprojekti. Vaatimusmäärittely

Ryhmäpalaverit. Lintulaskenta-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Kasi. Yhteenvetodokumentti. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Projektisuunnitelma Viulu

Testausraportti v.1.3

TIETOKANTA MERIKOTKIEN SEURANTAAN Projektisuunnitelma

Toteutusvaihe T3 Digi-tv: Edistymisraportti

A4.1 Projektityö, 5 ov.

Projektinhallintaa paikkatiedon avulla

Projektisuunnitelma. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

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

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe T1. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T1

Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus

Kasi. Projektisuunnitelma. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Loppuraportti. HeTLi. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

T Testitapaukset TC-1

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

emo eassari Moodle-ympäristössä Projektisuunnitelma

Liite 1: KualiKSB skenaariot ja PoC tulokset. 1. Palvelun kehittäjän näkökulma. KualiKSB. Sivu 1. Tilanne Vaatimus Ongelma jos vaatimus ei toteudu

Transkriptio:

KÄYTTÖLIITTYMÄ SÄÄKSIEN PESIMÄTIETOJEN TIETOKANTAAN Yhteenvetodokumentti Versiohistoria Versio Päivämäärä Kuvaus Tekijä 1.0 27.4.2008 Ensimmäinen virallinen versio Hannu Kämäri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Ohjelmistotuotantoprojekti Sorsat Projektiryhmä Miko Valori, projektipäällikkö Hannu Maksimainen, dokumenttivastaava Hannu Hartikainen, suunnitteluvastaava Hannu Kämäri, vaatimusdokumenttivastaava Esko Piirainen, testausvastaava Jari Suominen, ohjaaja Asiakkaat Heikki Lokki, yhteyshenkilö Pertti Saurola, asiantuntija Juha Honkala, järjestelmän pääkäyttäjä Jan Lindström, tekninen neuvonantaja

1. Johdanto... 1 2. Lopputuotteen esittely... 1 3. Dokumenttien tiivistelmät... 1 3.1. Vaatimusmäärittelydokumentti... 1 3.2. Suunnitteludokumentti... 2 3.3. Testaussuunnitelma... 2 3.4. Ylläpitodokumentti... 2 3.5. Käyttöohje... 2 4. Analyysi ryhmän toiminnasta... 2 4.1. Analyysi toteutuksesta ja tuotoksesta... 3 4.2. Yleisiä huomioita... 4

1. Johdanto Tämän dokumentin tavoitteena on antaa yleinen kuva projektista ja sen aikana tehdystä tuotteesta. Tämä raportti on ensisijaisesti tarkoitettu ensimmäiseksi dokumentiksi jonka tuotteeseen tutustuva henkilö lukee. Dokumentissa esitellään itse ohjelma ja luodaan lyhyet katsaukset muihin kursilla tuotettuihin dokumentteihin. Samaten analysoidaan ryhmän toimintaa projektin aikana - pyritään tuomaan esille miten ryhmä onnistui eri vaiheissa ja analysoimaan syitä onnistumisiin ja epäonnistumisiin. 2. Lopputuotteen esittely Sääksijärjestelmä on käyttöliittymä merisääksien seurantaan kehitettyn tietokannan käyttöön. Kanta itsessään on vanha: vanhimmat tiedot ovat 70-luvun alusta. Ohjelmiston käyttäjänä on ensimmäisessä vaiheessa Helsingin yliopiston eläintieteellisen museon rengastustoimisto. Ohjelmistolla voi hallita pesätietokantaa, tuottaa sieltä esitäytettyjä lomakkeita pesien tarkstuksia varten ja mahdollistaa raporttien tuottaminen sääksien pesistä. Varsinainen tuotos ohjelmistotuotantoprojektissa oli olemassa olevan kannan päälle toteutettava käyttöliittymä. Täysin ilman muutoksia kantaa ei kuitenkaan selvitty. Käyttöliittymän tavoitteena on helpottaa kannan käyttöä ja siten vapauttaa rengastustoimiston työntekijöiden aikaa muihin tehtäviin. Ohjelmaa käytetään ensimmäisessä vaiheessa vain rengastustoimistolla. Tulevaisuudessa ohjelman käyttäjäkuntaa voisi laajentaa rengastajiin, jotka rajoitetuin käyttöoikeuksin voisivat esimerkiksi tulostaa järjestelmästä kannan tietojen perusteella esitäytetyt lomakkeet omista pesistään tai mahdollisesti tarjota erinäisiä palveluita muille sidosryhmille, kuten ympäristökeskuksille. Ohjelmiston pohjana käytettiin vastaavaa syksyn 2007 ohjelmistotuotanto projektissa merikotkien pesimätietojen seurantaan ja ylläpitoon kehitettyä järjestelmää. Sääksien seurantaan on tätä aikaisemmin ainakin kolme ryhmää yrittänyt tuottanut tämän ryhmän toteuttamaa aihetta siinä onnistumatta. Näiden ryhmien tuotokset olivat kuitenkin siinä määrin vajavaisia, että niiden jatkamisessa ei ollut järkeä. Merikotkajärjestelmän varsinaisesta toteutuksesta käytettiin lopulta vain hyvin pieni osa johtuen kannan eroista ja suunnittelemamme käyttöliittymän merkittävästä eroavaisuudesta merikotkajärjestelmän käyttöliittymään. Järjestelmien rungot ovat kuitenkin hyvin samanlaiset. 3. Dokumenttien tiivistelmät 3.1. Vaatimusmäärittelydokumentti Vaatimumäärittelydokumentti sisältää asiakkaan (rengastustoimiston henkilöstö, yliopiston lehtori Heikki Lokki ja assistentti Jari Suominen) ja Sorsat ryhmän yhdessä ohjelmistolle asettamat vaatimukset. Dokumentissa on määritelty mitkä toiminnallisuudet ja miten ryhmä on luvannut toteuttaa kurssin aikana. Kaikki toiminnallisuudet on lisäksi priorisoitu asiakkaan tarpeiden 1

mukaisesti. Vaatimukset on jaettu perinteisen tavan mukaisesti käyttäjä ja järjestelmä vaatimuksiin. Toiminnallisia järjestelmä vaatimuksia on normaaliin tapaan täydennetty ei-toiminnallisilla ja ympäristövaatimuksilla. Käyttäjävaatimuksissa on käyttötapaukset korvattu käyttöliittymän suunnitteluun paremmin soveltuvilla käyttötilanteilla. Myös käyttötilanteiden täydentämiseen on käytetty ei-toiminnallisia vaatimuksia. Vaatimusmäärittelyssä on erityistä huomiota annettu hyvän käytettävyyden suunnittelulle. 3.2. Suunnitteludokumentti Suunnitteludokumenissa kuvataan ohjelmiston tekninen toteutus. Tavoitteena on, että tekniikat ja tavoitteet tunteva henkilö pystyisi toteuttamaan kuvatun järjestelmän tämän dokumentin pohjalta. Tekninen dokumenti on ikään kuin järjestelmän piirustukset, joiden pohjalta se voidaan rakentaa. Siinä kuvataan järjestelmän luokkarakenne, tietokanta, käyttöliittymä sekä tarpeellisella tarkuudella järjestelmä vaatimukset. 3.3. Testaussuunnitelma Testaussuunnitelmassa päädyttiin hyvin suppeaan yksikkötestaukseen, joka keskittyi luokkiin jotka eniten vaikuttavat kannan tietojen oikeellisuuteen. Yksikkö- ja integrointitestauksen rajat olivat järjestelmässämme hiukan häilyviä. Yksikkötestauksen puutteita pyrittiin kattamaan laajalla järjestelmätestauksella. Testaussuunnitelmassa on hyvin suppea opastus Junit -testejen tekemiseen. 3.4. Ylläpitodokumentti Ylläpitodokumentissa on kuvattu asiat, joita mahdollisen jatkoryhmän ja ohjelmiston ylläpitäjien tulee tietää. Ylläpitodokumentin runkona on suunnitteludokumentti. Sitä on muokattu niiltä osin joissa toteutus ei vastaa suunnitteludokumentin toteutusta. Tai jotka muuten ovat oleellisiä ylläpidon kannalta, mutta puuttuvat suunnitteludokumentista. Muutokset suunnitteludokumenttiin on pyritty kuvaamaan siten, että muutetuista kohdista ilmenisi mahdollisimman hyvin miten toteutus eroaa suunnitellusta ja miksi. 3.5. Käyttöohje Käyttöohje on ohjelman loppukäyttäjän avuksi tarkoitettu dokumentti. Sen tavoitteena on kuvata ohjelmien toiminnallisuuksien käyttö. Ohje on varsin suppea, koska suunnittelussa on pyritty hyödyntämään hyvän käyttöliittymän suunnitteluperusteita ja toteutuksessa ottamaan käytettävyys huomioon, jotta ohjelman käyttö olisi mahdollisimman intuitiivista. Toteutustavan ajatuksena on, että vain epäonnistunut käyttöliittymä tarvitsee käyttöohjetta. Lisäksi tulee huomioida, että käyttöohje ei ohjeista lainkaan lomakkeen käyttöä ja siihen liittyvää sanastoa, koska käyttäjänä on vain eläinmuseon rengastustoimiston henkilökunta. 4. Analyysi ryhmän toiminnasta Ryhmän toiminta kokonaisuutena oli erinomaista. Työnjako toimi varsin luonnollisesti ja ihmiset saivat ja pystyivät ottamaan haluamansa määrän vastuuta. Toiminnan alkuun saattaminen oli hieman tahmaista. Tapaamiset olivat virallisia ja kukin pyrkin tahollaan mahdollisuuksiensa mukaan edistämään työtä. Nämä alkuvaikeudet ovat ilmeisesti lähes jokaisen ohtu-ryhmän ongelma. Reagoimme kuitenkin ajoissa ja toimintaan ei missään vaiheessa tullut paniikin piirteitä. 2

Ohjelma valmistui hyvissä ajoin käyttökelpoiseen kuntoon. Tämän jälkeen sitä viilattiin jäljellä olevan ajan puitteissa. Yhteiset koodaussessiot osoittautuivat tehokkaaksi tavaksi ohjelmiston toteutuksessa. Jos avun saaminen ei missään vaiheessa ollut mikään ongelma, niin etenkin koodaussessioissa sitä oli heti saatavilla ja kokonaisuus alkoi hahmottumaan kaikille ryhmäläisille. Yhteiset sessiot myös poistivat liian vähäisen kommunikoinnin ongelmaa, joka ryhmää hieman alussa vaivasi. Yhteinen sähköpostilista ei esimerkiksi ollut niin ahkerassa käytössä kuin olisi pitänyt. Alkuvaihessa kurssia laitokselle tehty tietomurto aiheutti lisäksi pienen viiveen ryhmän toimintaan. Ensimmäisessä vaiheessa tietojenkäsittelytieteen laitoksen koneille ei päässyt lainkaan kirjautumaan sisälle. Ongelman selvittyä kaikkien piti luoda vielä uudet tunnukset laitoksen kotisivujen kautta, mikä aiheutti vielä pienen lisä viivästyksen, etenkin jos ei ollut autentikointiin käytettyjen pankkien tunnuksia. Projektin viimeisinä viikkoina käyttämämme tietotekniikkaosaston wiki -sivustolta tuhoitui parin päivän työ palvelimen kovalevytilan loputtua. Yksittäisten ryhmäläisten toiminnassa ei ollut valittamista. Tosin kahden ryhmäläisen panostukseen vaikutti negatiivisesti täysipäiväinen työssäkäyminen. Kuitenkaan kukaan ryhmäläinen ei laistanut velvollisuuksistaan ja kukin toimi niin hyvin kuin pystyi käytettävissä olevan ajan ja taitojen puitteissa. 4.1. Analyysi toteutuksesta ja tuotoksesta Ryhmämme sai kaikki toiminnalisuudet toteutettua sovittuun ajankohtaan mennessä. Ohjelmiston arkkitehtuuri ja ohjelmoinin laatu pysyi koko ajan varsin hyvänä pienestä ajanpuutteesta huolimatta. Demo -tilaisuuksissa asiakaat vaikuttivat tuotteeseen ja sen ominaisuuksiin varsin tyytyväisiltä. Joten kokonaisuudessa ryhmä on varsin tyytyväinen suoritukseensa. Alla olevissa kappaleissa on analysoitu suoritusta varsin kriittiseltä kannalta. Tavoitteena on viestittää tuleville ryhmille vihjeitä siitä mitä olisi voinut tehdä toisin. Järjestelmän pahimmat puutteet liittyvät puuttelliseen suunnitteluun ja osittain huonoon ylläpidettävyyteen. Ryhmän päätös toteuttaa ohjelmisto edellisen syksyn Merikotka ohjelmistoon osoittautui osin virheeksi. Ohjelmasta saatiin hyvää apua suunnitteluun. Vaikeaselkoinen, paikoitellen jopa harhaan johtava koodauskultuuri ja kahden ohjelmiston erilaiset tavoitteet aiheuttivat sen, että hyöty pohjasta jäi tutustumiseen ja muokkaamisen käytettyyn aikaan nähden liian vähäiseksi. Suurin hyöty saatiin erilaisten valmiiden työkalujen muodossa. Ei tarvinnut itse käyttää aikaa olemassa olevien työkalujen etsimiseen, kun niiltä osin työ oli jo tehty. Alkuperäinen suunnitelma oli toteuttaa oma projektimme kahdessa iteraatiossa: ensimmäisessä konvertoitaisiin merikotkajärjestelmä vastaamaan sääksijärjestelmän tietokantaa ja toisessa vaiheessa muokattaisiin käyttöliittymä. Konvertointi osoittautui ongelmalliseksi johtuen kantojen lukuisista pienistä poikkavuuksista. Osoittautui merkittävästi nopeammaksi lähteä toteuttamaan järjestelmän komponentteja tyhjältä pohjalta, lainaten merikotkajärjestelmästä pieniä palasia aina kuin mahdollista. Tämä johti puutteelliseen suunnitteluun. Myöskään merikotkajärjestelmän käyttämät ohjelmointimenetelmät ja järjestelmän rakenne osoittautuivat nopeasti puutteellisiksi. Ryhmä onkin sitä mieltä, että täysin tyhjältä pohjalta olisimme saaneet suunniteltua ylläpidettävyydeltään huomattavasti paremman ohjelmiston. Asiakkaan toiminnasta on sanottava, että he osasivat hyvin selkeästi asettaa tavoitteensa ja asetettuhin tavoitteisiin ei vaatimusdokumentin hyväksymisen jälkeen kajottu. Mutta asiakas oli ehkä hieman huono priorisoimaan tavoitteitaan. Toiminnallisuuksia, joita toivottiin toteutettavaksi 3

oli varsin paljon. Tämä aiheutti painetta oikomiseen toteutuksessa ja koodin uudelleen käytettävyys laski hieman tämän vuoksi. Asiakkaan tulisi pitkän tähtäimen tavoitteiden vuoksi painottaa enemmän ei-toiminnallisten ja ympäristövaatimusten tärkeyttä kuin yksittäisiä toiminnallisuuksia. Liiallinen toiminnallisuuksien painottaminen aiheuttaa ongelmia kaksinkertaisesti, koska samalla kun ohjelmoinnin taso kiiren takia heikkenee jää myös testaamiselle vähemmän aikaa. Tästä ei kuitenkaan pidä vetää vääriä johtopätelmiä tuotoksen suhteen, koska kuten jo ilmi tuli kaikki sovitut toiminnallisuudet toteutettiin ja ilman loppupaniikkia. Ryhmän vaatimusmäärittelyprosessi kokonaisuudessaan oli onnistunut; listasimme asiakkaan toivomuksia runsaasti enemmän kuin tiesimme ehtivämme toteuttamaan. Olemme kuitenkin ehkä jossain määrin epäonnistuneet siirtämään kaikkea tietämystämme tekemästämme kattavasta vaatimusmäärittelystä eteenpäin. Ohjelman pohjana käytettävä kanta on yleisesti ottaen hieman sekava ja varsin huonosti dokumentoitu. Esimerkiksi mistään ei löytynyt tietoa, että raportit joita kannasta eri tarkoituksiin toteutetaan, löytyvät valmiina prosesseina tietokannasta. Ryhmän heikkoudeksi on tosin sanottava, että yhteyden pito asiakkaan tietokantavastaavaan oli liian heikkoa. Tietoa olisi saattanut olla aktiivisemmalla otteella enemmän saatavissa. Asiakkaan olisi syytä harkita koko kannan uudelleen suunnittelua. Samassa yhteydessä voisi harkita siirtymistä kokonaan uuteen tietokanta ohjelmistoon. Pohtimisen arvoinen ajatus olisi myös siirtyminen spatiaalisen tiedon käsittelyssä Oracle Spatialin tai esimerkiksi MySQL:n vastaavaan laajennokseen. Nykyinen epäaito ja sekaannuksiin taipuvainen tapa käsitellä esimerkiksi kuntia ympyröinä kunnan keskipisteen ympärillä tulisi korvata aidoilla polygoneilla ja pesät vastaavasti pisteillä. Suunnittelemaamme käyttöliittymää ryhmä pitää erinomaisena. Ryhmän ohjaaja omalta osaltaan osasi hyvin ohjata käyttöliittymän suunnitteluprosessia oikeaan suuntaan. 4.2. Yleisiä huomioita Projektissa ehkä heikoimmalle osalle jäi testaaminen. Tämä ongelma vaivaa lähes koko ohjelmistotuotantoa - myös ammattimaista. Kuitenkin aikaisempienkin ohjelmistotuotanto ryhmien yhteenvetoraporteissa on mainittu testaamisen opetuksen puuten laitoksella. Testaamisesta mainitaan ohimennen ohjelmistotekniikan perusteet kurssilla, pintapuolisesti toteutetaan ohjelmoinnin harjoitustyössä, mutta asian tärkeyden huomioon ottaen aivan liian vähän aiheesta on osaamista. Jos ohjelmistotuotantoprojekteissa tulisi onnistumisen takaamiseksi käyttää 25-50% ajasta testaamiseen on kyseenalaista, että aiheesta ei ole edes vapaaehtoista kurssia jonka voisi suorittaa ennen ohjelmistotuotantoprojektia. Laitoksella on varsin suuri luottamus siihen, että opiskelijoilla on hyvä UNIX osaaminen. Tässäkin projektissa hyvä UNIX osaaminen helpottaa monia asioita, mutta kunnon kursseja aiheesta ei enää järjestetä. Onneksi ryhmässämme oli jäseniä, joilla oli omasta harrastuneisuudesta varsin hyvät UNIX taidot. Kuten jo aiemmin tuli esille ei aiheeseen tulee enää tehdä jatkoprojektia, vaan on suositeltavampaa aloittaa täysin puhtaalta pöydältä. Aluksi olisi suunniteltava uusi kanta, joka olisi rakenteeltaan loogisempi. Kuitenkin niin, että olemassa olevaa tietoa ei hukkuisi. 4