Koskikara-projekti

Ville Laitila
Pekka Moisio
Aapo Mäkinen
Harri Pölkki

Vaatimusmäärittely 2.11.2003

Jyväskylän yliopisto 
Tietotekniikan laitos

Koskikara-projektin tietoja
Tekijät:	Ville Laitila (vimalait@cc.jyu.fi),
Pekka Moisio (pejumois@cc.jyu.fi),
Aapo Mäkinen (ajmakine@cc.jyu.fi) ja
Harri Pölkki (hepolkki@cc.jyu.fi).
Työ: Vaatimusmäärittely tietotekniikan Sovellusprojektiin
Tiivistelmä: Koskikara-sovellusprojektissa kehitetään Kottarainen-projektin toteuttamaa kyselyjen laatimis- ja hallintajärjestelmää. Kehitystyössä keskitytään vastausten analysointiin, tulosten esittämiseen ja kyselypankkiin. Vaatimusmäärittelyssä esitetään sovellukselle asetetut vaatimukset tietojen ja toimintojen osalta sekä kuvataan toteutustyössä huomioitavia seikkoja.
Tilaajat ja muut projektiin liittyvät henkilöt: Sovelluksen tilaajia ovat yliopiston organisaatioista avoin yliopisto edustajanaan Eija Ihanainen, hallinto edustajanaan Mauno Väisänen, opetuksen laadun kehittämishanke OPLAA! edustajanaan Jari Rantamäki sekä virtuaaliyliopisto, jota edustaa Antti Auer. Laitoksen vastaavana ohjaajana toimii Jukka-Pekka Santanen sekä teknisinä ohjaajina Teemu Vähä-Ruka ja Vesa Lappalainen.
Yhteystiedot: Agora, huone C222.2, puh. 014-260 4963, projektiorganisaation sähköpostilista koskikara@korppi.jyu.fi.
Avainsanat: Kysely, kyselyiden hallinta, vastausten analysointi, tulosten esittäminen, raportointi, kyselypankki, WWW-sovellus, Korppi-järjestelmä.

Versiohistoria
Versio	Päiväys	Tehnyt	Muutokset	
0.1	26.9.	Pekka Moisio	Dokumentti luotu.	
0.2.	29.9	Pekka Moisio	Ville Laitilan lyhennelmän lisääminen.	
0.21	30.9.	Pekka Moisio	RTF:ksi muutos, tekstin kirjoitusta.	
0.25	2.10.	Pekka Moisio
Ville Laitila	Analysointiosion määrittely.	
0.3	3.10.	Pekka Moisio
Ville Laitila
Aapo Mäkinen	Analysointiosion määrittely.	
0.4	6.10.	Pekka Moisio	Projektien sovellusten kuvailu ja sivunumerointi.	
0.5	7.10.	Pekka Moisio
Ville  Laitila	Ensimmäisen puoliskon ulkoasu ja sisältö tarkentunut Santasen kommenttien pohjalta.	
0.55	8.10.	Ville Laitila	Toisen puoliskon ulkoasu ja sisältö.	
0.56	9.10.	Pekka Moisio
Ville Laitila	Viimeistely, virheiden korjaus ja tarkentaminen.	
0.6	13.10.	Pekka Moisio
Ville Laitila	Palaverin korjausehdotukset toteutettu.	
0.7	13.10.	Ville Laitila
Pekka Moisio	Santasen muutosehdotukset realisoitu
dokumentin alkupuoliskolle.	
0.8	14.10.	Pekka Moisio
Ville Laitila	Muutosehdotuksien loppuunsaattaminen.	
0.9	20.10.	Ville Laitila	Korjattu alusta lukuun 4.3.	
0.91	21.10.	Pekka Moisio	Korjaus dokumentin loppuun asti.	
1.0	23.10.	Ville Laitila	Sisältöön liittyvät muutokset.	
1.01	24.10.	Ville Laitila	Ulkoasun korjauksia.	
1.1	2.11.	Ville Laitila	Korjattu Santasen 30.10. muutosehdotusten mukaan.	

Sisällysluettelo
1	Johdanto
2	Termistöä
3	Taustaa ja tavoitteet
3.1	Tarpeita WWW-kyselyille
3.2	Korppi-järjestelmän taustaa
3.3	Projektissa kehitettävä sovellus
4	Kyselypankin toiminnalliset vaatimukset
4.1	Hakutoiminnot
4.2	Käyttöoikeudet
4.3	Uudelleenkäyttöaste
4.4	Analysointi ja uudelleenkäyttö
4.5	Kyselyn virallistaminen
5	Vastaustyypit
5.1	Vastausvaihtoehdot numeerisella asteikolla
5.2	Avoimet numeeriset kysymykset
5.3	Luokitellut vastaukset
5.4	Monivalintakysymykset
5.5	Avoimet sanalliset kysymykset
6	Kyselyn analysoinnin toimintojen vaatimukset
6.1	Analysoinnin esitystavat lyhyesti
6.2	Esitystavat
6.3	Avointen kysymysten analysointi
6.4	Uudelleenkäyttö analysoinnissa
6.5	Analyysin rajaaminen
6.6	Samansisältöisten kyselyjen analysointi
7	Prosessikuvaukset
8	Tekniset vaatimukset
9	Yhteenveto
Lähteet

1	Johdanto 
Koskikara-niminen tietotekniikan Sovellusprojekti jatkokehittää WWW-pohjaista Korppi-järjestelmän kyselysovellusta Jyväskylän yliopiston käyttöön. Projektissa kyselysovellukseen toteutetaan kyselyjen vastausten analysointi ja kyselypankki. Kyselypankki varastoi kyselyt analysointia ja uusien kyselyiden luontia varten. 
Kottarainen-projektin keväällä 2003 toteuttamalla kyselysovelluksella pystyy luomaan ja suorittamaan kyselyitä. Kottarainen on yksi Korppi-opintotietojärjestelmän sovelluksista. Järjestelmään ovat aiemmin toteuttaneet sovelluksia Kotka-, Korppi-, Halko-, Kolibri-, Koppelo-, Kiuru- ja Kottarainen-projektit. 
Dokumentissa kuvataan Koskikara-projektissa toteutettavan sovelluksen tietoja, toimintoja ja tavoitteita, ottamatta kantaa toteutustapaan, -tekniikoihin tai 
-työkaluihin. Vaatimusmäärittely esittää sovelluksesta kokonaiskuvan siten, ettei sen ymmärtämiseen tarvita teknistä asiantuntemusta valmiin tuotteen käyttäjältä edellytettävää osaamista enempää.
Vaatimusmäärittelyssä esitetään sovellukseen toteutettavat ominaisuudet ja niiden tärkeysjärjestys. Vaadittava ominaisuus tarkoittaa, että sen on sisällyttävä sovellukseen ennen kuin sovellus voidaan todeta hyväksytyksi projektin osalta. Toivottavan ominaisuuden ryhmä toteuttaa vain, mikäli se on mahdollista projektin resurssien puitteissa. Mahdollisesti myöhemmin toteutettava ominaisuus on sellainen, joka voidaan toteuttaa tulevaisuudessa jonkun muun kuin Koskikara-ryhmän toimesta. Kaikki kirjatut ominaisuudet ja vaatimukset ovat tässä dokumentissa vaadittavia ominaisuuksia, mikäli toisin ei mainita.
Projektin osapuolten roolit ja niihin liittyvät velvollisuudet on esitelty tarkemmin Projektisuunnitelmassa. Projektisuunnitelmassa kuvataan myös projektin läpivientiä, tehtäviä ja aikataulua. Tarkempi suunnitelma sovelluksen rakenteesta ja toteutusratkaisuista käy ilmi Sovellussuunnitelmasta. Koskikara-projektissa ei toteuteta projektisopimusta. Projektin tulokset asetetaan GPL-lisenssin alle.
Luvussa 2 selitetään projektin aihealueeseen, tekniikoihin ja työkaluihin liittyviä termejä. Luvussa 3 kuvataan sovelluksen taustaa, tavoitteita ja sijoittumista kokonaisuuteen. Toiminnalliset vaatimukset määritellään kyselypankin osalta luvussa 4 sekä kyselyjen analysoinnin osalta luvuissa 5 ja 6. Luvussa 7 kuvataan sovelluksen käyttöön liittyviä prosesseja. Järjestelmän tekniset vaatimukset kuvataan luvussa 8.
2	Termistöä
Luvussa on selvennetty Koskikara-projektissa käytettävää termistöä. Koskikara-projektin aiheeseen ja Korppi-järjestelmään liittyviä termejä ovat seuraavat: 
Analysointi	on vastausten oleellisten havaintojen tiivistämistä pienemmäksi tulosjoukoksi.
Benchmarking 	on arviointitapa, jossa useampi organisaatio suorittaa matriisimuotoisen laadunarviointikyselyn ja vertailee saamiaan tuloksia keskenään.
Keskiarvo	on havaintojen summa jaettuna havaintojen lukumäärällä.
Keskihajonta	kuvaa havaintoarvojen keskimääräistä etäisyyttä keskiarvosta.
Kohde	on tässä dokumentissa käytetty lyhenne, jolla tarkoitetaan kysymystä, kysymysryhmää tai kyselyä.
Korppi	on Jyväskylän yliopistossa kehitetty opintotietojärjestelmä.
Kotka	on Korppi-järjestelmän tietokanta ja henkilötietojen hallintaosio.
Kysely 	käsittää koko kyselyn ja voi koostua yhdestä tai useasta kysymysryhmästä.
Kyselypankki 	varastoi kyselyt julkisuusasteen mukaan kyselyjen analysointia ja uusien kyselyiden luontia varten.
Kyselytulokset	on yksittäisen kyselyn tuottamaa dataa, johon luetaan vastaukset ja raportit.
Kysymysryhmä	käsittää yhden tai useampia loogisesti tai visuaalisesti samaan aihepiiriin liittyviä kysymyksiä.
Kysymystyyppi	luokittelee kysymykset kyselyn luontivaiheessa kysymyksen esitysmuodon mukaan.
Maksimi	on havaintoaineiston suurin arvo.
Mediaani	on suuruusjärjestykseen asetettujen havaintoarvojen keskimmäinen arvo tai kaksi keskimmäistä, mikäli havaintoja on parillinen määrä.
Metatieto	on kohteisiin liitettävää tarkoitusta, käyttömuotoa ja laatimista kuvaavaa lisätietoa, joka helpottaa kyselyitä haettaessa ja vastauksia analysoitaessa eri kohteiden liittämistä toisiinsa. Mahdollisia metatietoja ovat esimerkiksi kyselyn laatija ja laatimisajankohta.
Minimi			on havaintoaineiston pienin arvo.
Moodi			on havaintoaineiston todennäköisin arvo.
Raportti	on vastauksia analysoimalla saatu tulosjoukko, johon sisältyy tekstiä ja graafeja.
Vastattava kysely	on kysely, jonka voimassaoloaika ei ole vielä ohi. 
Vastaustyyppi	luokittelee kysymykset kyselyn analysointivaiheessa. Yleensä kysymystyyppi kiinnittää vastaustyypin.

Projektin toteutusympäristöön sekä käytettäviin työkaluihin ja tekniikoihin liittyviä termejä ovat seuraavat:
Bugzilla	on WWW-pohjainen monipuolinen virheiden korjausten hallintajärjestelmä.
CSS	eli Cascading Style Sheets on WWW-sivujen ulkoasua kuvaava kieli.
CSV	(Comma Separated Values) on tiedon esitysmuoto, jossa eri muuttujien arvot erotetaan toisistaan pilkulla. 
CVS	(Concurrent Version System) on ohjelmistokehityksessä käytettävä versionhallintajärjestelmä.
Eväste	(engl. cookie)  on Netscapen luoma, mutta nykyään jo standardoitu menetelmä saada WWW-sivuista vuorovaikutteisempia. Palvelin lähettää pieniä tietopaketteja selaimelle, jonka perusteella käyttäjä asetuksineen tunnistetaan jatkossa.
HTML		on WWW-sivujen sisältöä kuvaava kieli.
HTTP	on WWW-arkkitehtuurin käyttämä tiedonsiirtoprotokolla.
Java	on Sunin kehittämä laitteistoriippumaton olio-ohjelmointikieli.
Java-pavut	(engl. JavaBeans) ovat Java-ohjelmointikielellä luotuja komponentteja, joita voidaan kutsua JSP-sivuilla.
JBuilder	on ohjelmistonkehitystyökalu mm. Java- ja JSP-ohjelmointiin.
JDBC	eli Java Database Connectivity on Java-teknologian käyttämä tietosilta erilaisiin tietokantoihin.
JSP	eli Java Server Pages on skriptikieli, jossa HTML-koodin sekaan on mahdollista lisätä Java-koodia.
Palvelin	on WWW-sovellusten tapauksessa ohjelmisto, joka palvelee asiakkaana toimivien selainten hakupyyntöjä.
Selain	on ohjelma, joka käyttäjän koneella tulkkaa HTML-kieliset sivut kuvaruudulla esitettävään muotoon.
Servletti	on palvelimella sijaitseva sovelma (engl. applet), joka toteuttaa HTTP-palvelimen pyynnöstä tietyn toiminnon.
Skripti	on ohjelmointikieltä muistuttava ja usein hieman yksinkertaistettu tulkattava kieli.
Skriptaus	tarkoittaa WWW-sivujen tapauksessa ohjelmakoodin kirjoittamista HTML-dokumenttien sisään. Palvelinpuolen skriptauksessa koodi ajetaan palvelinkoneessa ja asiakaspään skriptauksessa selaimessa.
SQL	eli Structured Query Language on tietokantojen hallintaan kehitetty standardi kieli.
TomCat	on ilmainen servletti- ja JSP-moottori.
XML	on rakenteisten dokumenttien määrittely- ja kuvauskieli.

3	Taustaa ja tavoitteet
Luvussa käsitellään Koskikara-projektin taustaa, tarpeita ja tavoitteita. Koskikara-projektin päätavoitteena on toteuttaa Korppi-järjestelmän kyselysovellukseen uusia ominaisuuksia. 
3.1	Tarpeita WWW-kyselyille
Jyväskylän yliopistossa OPLAA! opetuksen laatuhankkeen ja virtuaaliyliopisto-hankkeen tavoitteena on luoda pysyviä rakenteita. Yksi tällainen rakenne on opetuksen jatkuvan arvioinnin mahdollistava järjestelmä. Arvioinnissa tarvittavan tiedon hankintaan, keräämiseen ja käsittelyyn tarvitaan WWW-selaimella toimiva kyselytiedon keruun ja hallinnan järjestelmä.
Laitoksilla on myös tarve saada kurssipalautteen analysointia helpommaksi ja nopeammaksi. Aiemmin esimerkiksi avoimella yliopistolla kukaan ei ole ehtinyt käydä läpi yli 18 000 opiskelijan palautetta. Siirtämällä palautteen antaminen WWW-ympäristöön saadaan perusanalyysien tekemistä automatisoitua. Samalla kerätty tieto saadaan koottua tietokantaan mahdollista myöhempää käsittelyä varten.
Yliopiston eri laitoksilla on muitakin tarpeita laatia lomakkeita ja koota tietoa verkon kautta. Tällaisia tarpeita ovat muun muassa erilaisiin tilaisuuksiin ja henkilöstön työtyytyväisyyteen liittyvät sekä erilaisissa tutkimuksissa käytettävät kyselyt. 
3.2	Korppi-järjestelmän taustaa
Korppi-järjestelmän kehitys on lähtenyt liikkeelle tarpeesta kurssikirjanpidon parantamiseksi ja automatisoimiseksi. Kurki-kurssikirjanpitojärjestelmä toteutettiin Tietotekniikan cum laude -työprojektina keväällä 1998 silloiselle matematiikan laitokselle (josta tietotekniikan laitos eriytyi syksyllä 1998 uuteen informaatioteknologian tiedekuntaan). Projektiryhmän muodostivat Pauli Kujala, Riku Nykänen ja Niina Riikonen. 
Kurki-järjestelmän idea oli kehityskelpoinen, joten sitä päätettiin kehittää ja laajentaa etenkin, kun sen toimivuudessa ja käytettävyydessä oli kehittämisen varaa. Korppi-järjestelmän kehitys aloitettiin syksyllä 2000. Tuolloin Kotka-projekti toteutti järjestelmän tietokannan alustavan rakenteen ja kehitti henkilötietojen hallintaosion malliksi tuleville ryhmille. Korppi-projekti määritteli opiskelijan, opettajan ja ylläpitäjän WWW-käyttöliittymän kurssikirjanpitosovellukselle keväällä 2003. 
Korppi-järjestelmän kehittämistä jatkoi Kolibri-projekti toteuttamalla syksyllä 2001 WWW-pohjaisen päivyri- ja ajanvarausosion. Koppelo-projekti kehitti keväällä 2002 opinnäytteiden hallintasovelluksen. Kiuru toteutti syksyllä 2002  WWW-pohjaisen salivaraussovelluksen.
Korppi-järjestelmästä ja Kotka-tietokannasta sekä niihin liittyvien projektien dokumentaatiosta löytyy lisätietoja osoitteesta http://kotka.it.jyu.fi/.

3.3	Projektissa kehitettävä sovellus
Korppi-järjestelmässä on jo olemassa lomakkeenluonti- ja raportointiosio, joka on kehitetty ensisijaisesti kurssiarvostelun antamiseen ja toissijaisesti kurssipalautteen keräämiseen. Osio ei kuitenkaan vastaa tilaajien tarpeita, koska sen ominaisuudet ovat kyselyjen laatimisen ja analysoinnin osalta varsin rajoittuneet. 
Kottarainen-projekti toteutti keväällä 2003 kyselysovelluksen, jolla voidaan luoda ja suorittaa kyselyitä Korppi-järjestelmässä. Kesällä 2003 kolme Kottarainen-projektin jäsentä jatkokehitti sovellusta, mutta toteuttamatta jäivät edelleen kyselyjen analysointitoiminnot ja kyselypankki. Lisäksi pienempiä puutteita sovelluksessa ovat mm. kyselyjen XML-muoto, käyttöliittymä metatietojen lisäämistä varten ja kysymyksien sarakkeiden järjestäminen. Kottarainen-projektin jatkokehityksen erikoistyöraportissa kuvataan tarkemmin toteuttamatta jääneitä yksityiskohtia.
Koskikara-projekti jatkokehittää sovellusta tavoitteenaan lisätä sovellukseen kyselyjen analysointitoiminnot ja kyselypankki. Kyselyjen analysointia tullaan käyttämään mm. kurssipalautteen hyödyntämiseen. Kyselypankin kautta tapahtuu kyselyjen laatiminen, analysointi ja uudelleenkäyttö.

4	Kyselypankin toiminnalliset vaatimukset
Luvussa määritellään kyselypankin toiminnalliset vaatimukset. Kyselypankin päämääränä on varastoida kyselyt julkaisuasteen mukaan kyselyjen vastausten analysointia ja uusien kyselyjen luontia varten. Kyselyjen analysointia, kopiointia ja valintaa sekä uusien kyselyjen luontia varten sovellus tarjoaa WWW-pohjaisen käyttöliittymän.
4.1	Hakutoiminnot
Sovelluksessa on yksinkertaiset hakutoiminnot, kuten avainsanahaku ja haku kuvauksen perusteella, joilla kyselypankkiin tallennettuja kyselyitä voidaan hakea. Haku perustuu pääosin kyselyihin ja kysymysryhmiin liittyviin metatietoihin.

4.2	Käyttöoikeudet
Kyselyn luojalla on aina oikeus muokata omaa kyselyään paitsi silloin, kun kysely on hyväksytty viralliseksi kyselyksi.  Vastausten selaamiseen oikeudet ovat kohteen julkaisuasteen mukaiset.
Kohteiden uudelleenkäyttöoikeuksia hallitaan julkaisuasteen avulla. Julkaisuaste määrittää kyselyn sisältämien kysymyssarjojen ja yksittäisten kysymysten käyttöoikeuden kyselypankista. Julkaisuaste määrätään sekä kyselylle että kysymysryhmälle. 
Julkaisuasteet ovat alustavat, ja niitä saattaa tulla lisää, kun aihealue tarkentuu. Julkaisuasteet käyttöoikeuden mukaan järjestettynä lienevät seuraavat:

Yleinen			Kaikkien Korppi-käyttäjien käytettävissä.
Organisaatio	Käytettävissä kyselyn tai kysymysryhmän luojan organisaation sisällä.
Ehdotus viralliseksi	Ehdotus organisaation viralliseksi kyselyksi tai kysymysryhmäksi. Tarvitsee organisaation kyselyistä vastaavan hyväksynnän.
Hyväksytty virallinen	Hyväksytty organisaation viralliseksi kyselyksi.
Yksityinen		Vain kyselyn tai kysymysryhmän luojan käytettävissä.
Kysymysryhmän julkaisuasteeseen vaikuttaa kysymysryhmälle määritelty julkaisuaste sekä koko kyselylle määritelty julkaisuaste. Kun kysymysryhmän julkaisuasteen käyttöoikeus on suurempi kuin koko kyselyn, kysymysryhmää näkyy suuremmalle  käyttäjämäärälle kuin muut kyselyn kysymysryhmät.
4.3	Uudelleenkäyttöaste
Kyselyn luoja määrittää kyselylle ja kysymysryhmälle uudelleenkäyttöasteen. Tämä tarkoittaa sitä, miten muut Korppi-käyttäjät voivat uudelleenkäyttää luotua kyselyä myöhemmin laadittavissa kyselyissä. Uudelleenkäyttö on mahdollista joko kopioimalla tai viittaamalla. 
Uudelleenkäytön kohteena voi olla joko kysely, kysymysryhmä tai kysymys. Kun viitattua kohdetta muutetaan, muuttuvat myös kohteet, jotka viittaavat muuttuneeseen. Kopioidun kohteen muuttaminen ei vaikuta alkuperäiseen kohteeseen.
4.4	Analysointi ja uudelleenkäyttö
Kyselypankin kyselyitä voi uudelleenkäyttää myös analysointitarkoituksessa. Tällöin voidaan viitata useisiin analysoitaviin kyselyihin yhtenä kyselynä. Analysointia kuvataan tarkemmin luvuissa 6 ja 7. Kyselypankista pääsee selaamaan kyselyn vastauksia vastaaja kerrallaan ja analysoimaan valitun kyselyn vastauksia.
4.5	Kyselyn virallistaminen
Virallinen kysely on organisaatiotason kysely, joka on käynyt virallistamisprosessin läpi. Virallista kyselyä ei voi muuttaa, vaan sen tasoa on muuttamista varten laskettava. Kyselyn luoja päättää siitä, milloin kysely on valmis virallistamista varten ja lähettää tiedon sovelluksen avulla virallistamisesta päättävälle henkilölle. Organisaatio voi olla käytännössä yliopisto, tiedekunta tai yliopiston laitos.
Virallistamisprosessi kuvataan luvussa 7. Kyselyiden ja raporttien näkyvyys muille kuin Korppi-järjestelmän käyttäjille toteutetaan Korppi-järjestelmän linjan mukaisesti.
Organisaation kyselyistä vastaava voi virallistaa kyselyt. Hän käy läpi kyselypankin viralliseksi ehdotetut kyselyt ja tekee päätöksen virallistamisesta. Kyselyn luoja saa automaattisesti tiedon päätöksestä. Virallistetut kyselyt löytyvät kyselypankista erillisestä listasta, josta niitä voi uudelleenkäyttää. 
5	Vastaustyypit
Luvussa kuvataan kyselyn tulosten esitystavan valintaa rajaavat vastaustyypit. Kysymystyyppi on Kottarainen-projektin määrittelemä käsite. Kysymystyyppi luokittelee kysymykset kyselyn luontivaiheessa kysymyksen esitysmuodon mukaan. Yleensä kysymystyyppi kiinnittää vastaustyypin. Näin ei kuitenkaan käy esimerkiksi avoimen kysymyksen kohdalla.
5.1	Vastausvaihtoehdot numeerisella asteikolla 
Kun kysymyksen vastausvaihtoehdot ovat kokonais- tai reaalilukuja, on järkevää piirtää keskiarvo, hajonta, moodi, mediaani, minimi ja maksimi. Esitystavaksi käy pylväsgraafin lisäksi myös viivagraafi. Yhdessä pylväässä voidaan kuvata yllä mainitut tärkeät tunnusluvut (katso kuva 1). Numeeristen vastausten osalta analysoinnissa ei siis tarvitse esittää jokaista vastausvaihtoehtoa varten omaa pylvästä (katso kuva 2).

Kuva 1. Pylväsgraafi kysymykselle, jossa vastausvaihtoehdot asettuvat numeeriselle asteikolle. Pylväsgraafissa minimi ja maksimi on ilmaistu viivalla.
5.2	Avoimet numeeriset kysymykset
Kun kysymyksen vastaus syötetään tekstikenttään numeerisena arvona, on kyse avoimesta numeerisesta vastaustyypistä. Analyysi on järkevä tehdä laskemalla tunnusluvut ja esittämällä ne pylväänä, viivana tai numeerisesti. 
Toivottavana ominaisuutena on numeerisen vastaustyypin analysointi siten, että analyysin määrittelijä valitsee analysointivaiheessa ala- ja ylärajan vastausten arvoille. Numeeristen kysymysten esittämisestä kerrotaan tarkemmin luvussa 6.2.
5.3	Luokitellut vastaukset
Kun kysymyksen vastausvaihtoehdot rajautuvat muutamaan luokkaan, on järkevää piirtää jokaisen vastausvaihtoehdon määrät omana pylväänä pylväsgraafiin (katso kuva 2). Luokiteltujen vastausten analysoinnissa ei ole järkevää esittää kaikkia tunnuslukuja, kuten keskiarvoa. Tämän vastaustyypin vastaukset voidaan kuvata myös piirakkagraafilla (katso kuva 3) tai viivagraafilla.

Kuva 2. Pylväsgraafi numeeriselle ja monivalintakysymykselle.

Kuva 3. Piirakkagraafi.

5.4	Monivalintakysymykset
Monivalintakysymys on sellainen kysymys, jonka vastausvaihtoehdoista voi valita usean. Monivalintakysymyksen analysointiin sopivat pylväsgraafi, piirakkagraafi, ja tunnuslukujen esitys. Kun monivalintakysymyksestä lasketaan tunnuslukuja (esim. moodi ja mediaani), käytetään vastausten valintojen määriä.
5.5	Avoimet sanalliset kysymykset
Avoimilla sanallisilla kysymyksillä tarkoitetaan kysymyksiä, joiden vastauksena voi olla mikä tahansa merkkijono. Nämä vastaukset esitetään raportissa jokaisen kysymyksen jälkeisenä listana. Raportin luoja voi myös poistaa ja valita esitettäviä vastauksia.
6	Kyselyn analysoinnin toimintojen vaatimukset
Luvussa kuvataan kyselyjen analysoinnin esitystavat. Luvussa lisäksi käsitellään analysoinnin rajaamista ja kyselyjen vastausten uudelleenkäyttöä analysoinnissa. 
6.1	Analysoinnin esitystavat lyhyesti
Kyselyn analysointi on tulosten muodostamista kyselyjen vastauksista. Käyttäjä voi sovelluksessa valita esitystavan analyysin tulosten esittämistä varten. Periaatteena on, että sovellus esittää tulokset sekä graafisesti että numeerisesti, jos se vain on mahdollista.
Sovelluksen tarjoamat esitystavat monivalintakysymyksille ovat seuraavat:
-	pylväsgraafi,
-	piirakkagraafi,
-	numeerinen esitys ja
-	lisäksi toivottavana ominaisuutena viivagraafi.
Viivagraafi on pylväsgraafin kaltainen. Viivagraafi ja pylväsgraafi piirretään siten, että arvot kasvavat ylöspäin tai oikealle. Avoimet kysymykset analysoidaan siten, että vastaukset esitetään listana. 
Luvussa 5 esiteltyjen vastaustyyppien on tarkoitus auttaa ymmärtämään ongelma-aluetta. Vastaustyyppejä ei toteuteta sovellukseen siten, että jokainen kysymystyyppi vastaisi jotakin näistä vastaustyypeistä. Nämä vastaustyypit ovat viitteellisiä ja helpottavat asioiden määrittelyä.
Analyysin tekijä voi kommentoida jokaisen kysymyksen vastauksia, kysymyksiä, ja kysymysryhmiä sekä kyselyä kokonaisuutena. Kun analyysin tulokset julkaistaan, kommentit näkyvät kyseessä olevassa raportissa.
6.2	Esitystavat
Käyttäjä pystyy valitsemaan jokaisen luokitteluasteikollisen kysymyksen analysointia varten esitystavan kysymyskohtaisesti. Erityyppisiä kysymyksiä varten on myös mahdollista valita oletusesitystapa. Sitä käytetään niille kysymyksille, joille ei ole valittu esitystapaa.
Graafisia esitysmuotoja vastaavat numeeriset esitysmuodot. Määrällisessä esitysmuodossa (frekvenssit) ilmaistaan vastanneiden määrä kuhunkin vastausvaihtoehtoon taulukoituna. Tunnuslukujen numeerisessa esitysmuodossa ilmaistaan vain kysymyksen vastausten perusteella laskettuja tietoja, kuten keskiarvo ja hajonta. Sovelluksessa keskiarvo lasketaan kysymykseen vastanneiden lukumäärän perusteella, eikä koko kyselyyn vastanneiden perusteella.
Vastaustyyppi rajaa vastauksen esitystavan valintaa. Esimerkiksi lukumääräpylväsgraafia (katso kuva 1) ei ole järkevä valita sellaisen kysymyksen esitystavaksi, joka kysyy lempiruokaa avoimella sanallisella kysymyksellä. Kuitenkin jossain tilanteissa esitystapa kannattaa valita vastaustyypin vastaisesti. Esimerkiksi, kun kysytään kurssityytyväisyyttä kyllä- ja ei-vastausvaihtoehdoilla, niin voi olla järkevää laskea kurssityytyväisyys prosentuaalisena lukuna. Eri vastausvaihtoehtoja vastaavat 100% ja 0%, joista saadaan kurssityytyväisyyden keskiarvo. 
Taulukossa 1 luetellaan vastaustyypit, joita käytetään taulukossa 2. Taulukkoon 2 on tiivistetty vastaustyyppejä vastaavat esitystavat.

Vastaustyyppi	Selitys	
1	Vastausvaihtoehdot numeerisella asteikolla	
2	Avoimet numeeriset kysymykset	
3	Luokitellut vastaukset	
4	Monivalintakysymykset	
5	Avoimet sanalliset kysymykset	
Taulukko 1. Vastaustyypit selityksineen.

Graafinen esitystapa	Alfanumeerinen esitystapa	Vastaustyyppi	
Lukumääräpylväsgraafi (kuva 1)	vastausten lukumäärä	1, 3, 4	
Tunnuslukupylväsgraafi (kuva 2)	tunnusluvut	1, 2, 4	
Lukumääräviivagraafi	vastausten lukumäärä	1, 3, 4	
Tunnuslukuviivagraafi 	tunnusluvut	1, 2, 4	
Piirakkagraafi (kuva 3)	vastausten lukumäärä	1, 3, 4	
Määrällinen esitysmuoto (frekvenssit taulukoituna)	vastausten lukumäärä	1, 3, 4	
Tunnuslukujen numeerinen esitysmuoto	tunnusluvut	1, 2, 4	
Lista vastauksista	vastausarvot	5	
Taulukko 2. Tuetut esitystavat ja niitä vastaavat vastaustyypit.

Sovellus ei tiedä kysymyksen vastaustyyppiä, eikä voi opastaa käyttäjää oikean esitystavan valinnassa. Jos samaa kysymystä haluaa tarkastella usealla esitystavalla, on tehtävä analyysi kutakin esitystapaa kohti erikseen antaen oman erillisen raportin.
6.3	Avointen kysymysten analysointi
Avoin kysymys voi olla joko sanallinen tai numeerinen. Koska sovellus ei tiedä, kumpaa tyyppiä avoin kysymys on, käyttäjä valitsee avoimille kysymyksille analysointitavan vastaustyypin mukaan.
Sovelluksessa tarjottavat analysointitavat ovat seuraavat:
-	Vastausten listasta voi valita tuloksissa esitettävät vastaukset.
-	Käyttäjä pystyy sekoittamaan listan vastaukset siten, että eri kysymysten vastaukset eivät ole vastaajien mukaan samassa järjestyksessä.
Toivottava ominaisuus on, että jokaiselle avoimelle kysymykselle voi valita esitystavan sekä lisäksi numeerisille avoimille kysymyksille myös ala- ja ylärajat. Tämä tehdään siltä varalta, että avoin kysymys on lukutyyppinen. Luku voi olla kokonaisluku tai reaaliluku, mutta sillä ei ole käyttäjän kannalta merkitystä. Kyselysovelluksessa voisi myös olla yhtenä kysymystyyppinä valmiina numeerisen tiedon syöttöön tarkoitettu avoin vastauskenttä.
6.4	Analyysin rajaaminen
Kysymysten valitseminen analysoitavaksi voi tapahtua käyttöliittymästä esimerkiksi kysymyksen vieressä olevalla valintaruudulla. 
Kyselyn vastausten jakautumista voidaan tarkastella yhden luokitteluasteikollisen kysymyksen eli ns. taustamuuttujan perusteella kerrallaan. Esimerkiksi kuvassa 4 vastaajajoukon vastauksia tarkastellaan sukupuolen perusteella. Tässä tapauksessa analysoitaisiin miesten ja naisten vastaukset kyselyn jokaiseen kysymykseen erikseen ja vastaavat tiedot piirretään vierekkäisiin pylväisiin. Esimerkkitapauksen kysymys voisi olla ”Oletko tyytyväinen kurssiin?”, johon voisi vastata joko kyllä tai ei. Esitystavaksi valittuun tunnuslukupylväsgraafiin kuuluu keskiarvon piirtäminen vastausarvoista, joissa ”Kyllä”-vastausta vastaa 100% ja ”Ei”-vastausta 0%.

Kuva 4.	Yhden kysymyksen (kurssityytyväisyys) vastausten vertailu taustamuuttujaksi valitun sukupuolen-perusteella.

Tässä tilanteessa ei olisi järkevää valita esitystavaksi lukumääräpylväsgraafia, koska jouduttaisiin piirtämään neljä pylvästä, joissa olisi vastauksia ”kyllä” ja ”ei” varten erikseen pylväät sekä miehille että naisille. Sovellus ei kuitenkaan estä tilannetta, jossa valitaan epäsopiva esitystapa, koska kysymystyyppi ei kiinnitä aina kysymyksen vastaustyyppiä. Vaikka järkevin vastaustyyppi olisikin tiedossa, se rajoittaisi silti käyttäjän valintoja joissakin tilanteissa väärällä tavalla. 
6.5	Uudelleenkäyttö analysoinnissa
Kyselyjen uudelleenkäyttö analysoinnissa perustuu siihen, että käyttäjä koostaa itselleen näennäisen kyselyn useasta kyselystä. Kun kysely on todellisuudessa joukko viittauksia muihin kyselyihin, puhutaan koostetun kyselyn analysoimisesta. Koostetun kyselyn analysointi ei eroa tavallisen kyselyn analysoinnista.
Sovelluksessa pystytään tarjoamaan kahden tai useamman samansisältöisen kyselyn analysointiin vertailutoiminto. Tällöin voidaan puhua usean kyselyn valitsemisesta taustamuuttujaksi. Tyypillisimmin toimintoa tarvitaan eri aikoina järjestetyn kurssin kyselyjen analysointiin. Vaatimuksena on, että kyselyt ovat rakenteeltaan identtiset. Kyselyjen vastauksia voi vertailla myös muun kuin ajankohtatiedon perusteella. Vertailussa kohdekyselyiden kysymysten vastausvaihtoehdot visualisoidaan vierekkäisiksi pylväiksi (katso kuva 5). Tässä vertailussa pylväsgraafille vaihtoehtona ovat numeerinen esitys tai taulukointi.

Kuva 5. Kahden kyselyn vertailu kyselyn ajankohdan perusteella.

7	Prosessikuvaukset
Luvussa kuvataan toteutettavien kyselypankin ja kyselyjen analysoinnin keskeisiä prosesseja käyttäjän kannalta.
Uuden kyselyn luominen muita kyselyjä uudelleenkäyttämällä sisältää seuraavat vaiheet:
-	Käyttäjä voi aloittaa kyselyn laatimisen valitsemalla tyhjän kyselyn, virallisen kyselyn, organisaatiotason kyselyn tai yksityisen kyselyn.
-	Kyselyyn voidaan kopioimalla tai viittaamalla tuoda kyselypankista kysymysryhmiä.
-	Sopivia kysymysryhmiä käyttäjä löytää tekemällä hakuja kyselypankkiin.
-	Kysymysryhmää voi muuttaa, mutta viitatun kysymysryhmän muutokset vaikuttavat myös alkuperäiseen kysymysryhmään. Muutos on sallittu vain, jos muuttajalle on määritelty Korppi-järjestelmässä asiaankuuluvat oikeudet.
-	Muodostettu kysely tallennetaan kyselypankkiin ja sitä voivat hyödyntää uudelleenkäyttöoikeuden omaavat.
-	Viitteelliset kysymykset ilmaistaan käyttöliittymässä.

Analysointiprosessi sisältää seuraavat vaiheet:
-	Analyysia varten tehdään uusi kysely, johon viitteitä kopioimalla valitaan analysoitavat kysymykset. Viitteenä analyysiä varten kopioiduilla kysymyksillä ei ole vastausoikeuksia.
-	Käyttäjä valitsee tarvittaessa vastausten jakautumisen tarkastelua varten yhden luokitteluasteikollisen kysymyksen eli ns. taustamuuttujan.
-	Esikatselulla voi käyttäjä tutkia esitystavan toimivuutta kesken muokkauksen.
-	Vastauksia, kysymyksiä, kysymysryhmiä ja voi valita ja kommentoida raporttia varten. Kyselyä kokonaisuutena voi myös kommentoida.
-	Raportin määrittely tallentuu tietokantaan. Yhtä kyselyä kohti voi olla usea raportin määrittely eri tarkoituksia varten. 
-	Raportin määrittelyn perusteella generoidaan muodostettu raportti. Mikäli generoinnin arvioidaan vievän paljon aikaa, käyttäjälle tiedotetaan aika-arvio.
-	Muodostetut raportit tallennetaan tiedostoiksi palvelimen kiintolevylle käyttäjäkohtaisiin hakemistoihin. Muodostettu raportti koostuu HTML-tiedostosta ja kuvatiedostoista. Käyttäjä voi tallentaa raportin koneelleen selaimen tallennustoiminnolla.

Virallistamisprosessin vaiheet ovat seuraavat:
-	Kyselyn luoja valitsee kyselyn julkaisuasteeksi ”ehdotus viralliseksi".
-	Virallistamisesta päättävä henkilö saa tiedon ehdotuksesta Korppi-järjestelmän kautta sähköpostitse tai/ja Korppi-ilmoitustaulun kautta.
-	Virallistamisesta päättävä henkilö tarkistaa kyselyn kyselypankissa ja tekee päätöksen.
-	Kyselyn luoja saa tiedon päätöksestä Korppi-järjestelmän kautta sähköpostitse tai/ja Korppi-ilmoitustaulun kautta.
-	Vahvistettu virallinen kysely löytyy kyselypankista erillisestä listasta.
-	Kun virallistettavaa kyselyä halutaan muuttaa, päättävä henkilö laskee kyselyn tasoa, jolloin luoja pystyy muuttamaan kyselyä.
8	Tekniset vaatimukset
Sovellus toimii seuraavilla selainsovelluksilla:
-	Internet Explorer 6.0 (Windows),
-	Mozilla 1.4 (Windows ja Linux),
-	Opera 7.1 (Windows ja Linux) sekä
-	Netscape 7.1 (Windows).
Sovelluksen toimivuutta testataan ensisijaisesti Internet Explorerilla.
Raportin kuvaformaatti on JPG-muoto. 
9	
Yhteenveto
Koskikara-projektissa jatkokehitettävä kyselysovellus sisältää seuraavat olennaiset toiminnalliset vaatimukset sekä niihin liittyvät ominaisuudet sekä mahdollisesti toivottavat ominaisuudet.

Kyselypankki sisältää seuraavat ominaisuudet:
•	hakutoiminnot,
•	käyttöoikeudet,
•	uudelleenkäyttö ja
•	virallistaminen (toivottava ominaisuus).
Analysointi sisältää seuraavat ominaisuudet:
•	Avoimien sanallisten kysymysten analysointi sisältää
•	yksinkertaisen listan,
•	muokkauksen,
•	palautteen ja
•	sekoituksen.
•	Avoimien numeeristen kysymysten analysointi sisältää (toivottava ominaisuus)
•	ala- ja ylärajan määrittämisen ja
•	tunnuslukujen laskennan.
•	Käyttäjä valitsee esitystavan, joihin kuuluvat
•	lukumääräpylväsgraafi,
•	tunnuslukupylväsgraafi, 
•	lukumääräviivagraafi (toivottava ominaisuus),
•	tunnuslukuviivagraafi (toivottava ominaisuus),
•	piirakkagraafi,
•	määrällinen esitysmuoto (frekvenssit taulukkona),
•	tunnuslukujen numeerinen esitysmuoto ja
•	lista vastauksista.

Lähteet
Lintunen Sampsa, Pöyhönen Tiina, Vähä-Ruka Teemu ja Ylönen Timo, ”Kottarainen-projektin Vaatimusmäärittely”, Jyväskylän yliopisto, tietotekniikan laitos, 2003, saatavilla HTML-muodossa http://kotka.it.jyu.fi/kottarainen/dokumentit/viralliset/Vaatimusmaarittely.rtf.
Korppi-kehittäjät, ”Mikä on Korppi-järjestelmä?”, Jyväskylän yliopisto, tietotekniikan laitos, 20.8.2003, saatavilla HTML-muodossa https://korppi.jyu.fi/kotka/help/tietoja.html.
Pöyhönen Tiina, Vähä-Ruka Teemu ja Ylönen Timo, ” Erikoistyöraportti: Kottarainen-projektin jatkokehitys”, Jyväskylän yliopisto, tietotekniikan laitos, 4.9.2003, saatavilla HTML-muodossa http://kotka.it.jyu.fi/kottarainen/yokesa/erikoisraportti/erikoisraportti.html.