Kaakkuri
Tietotekniikan sovellusprojekti
Petteri Kela
Antti Pokela
Santtu Salmi
Matti Suomalainen
Testausraportti
16. helmikuuta 2005
Versio 1.2
Tietoja dokumentista
Tekijät: Petteri
Kela, PK, (kapekela@cc.jyu.fi)
Antti Pokela, AP, (anpokela@cc.jyu.fi)
Santtu Salmi, SS, (ssalmi@cc.jyu.fi)
Matti Suomalainen, MS, (msuomal@cc.jyu.fi)
Tilaaja: Jyväskylän yliopisto,
tietotekniikan laitos
Tilaajan edustajat: Päivi Jämsen, (pjamsen@mit.jyu.fi) Vesa
Lappalainen (vesal@mit.jyu.fi)
Vastaava
ohjaaja: Lari
Kannisto (kalahe@mit.jyu.fi)
Tekninen
ohjaaja: Arto
Rikalainen (artturi@cc.jyu.fi)
Käytettävyyskonsultit:
Ville Haapsaari (vjhaaps@cc.jyu.fi)
Jukka Partanen (jpartan@cc.jyu.fi)
Yhteystiedot: Työtila AgC222.2, puhelin (014) 260 4963
Kotisivu: http://sovellusprojektit.it.jyu.fi/kaakkuri/
Postilista: kaakkuri@korppi.jyu.fi
Tiivistelmä: Tämä dokumentti on Kaakkuri-projektin Jyväskylän yliopistolle syksyllä 2004 toteuttaman sovellusprojektin testausraportti. Testausraportissa kuvataan toteutetun sovelluksen testaamisen testitapauksia ja niiden tuloksia.
Versiohistoria
Versio |
Päiväys |
Tekijä |
Muutokset |
0.1 |
25.1.2005 |
PK |
Dokumentin pohja |
1.0 |
26.1.2005 |
PK |
Ensimmäinen versio |
1.1 |
8.2.2005 |
PK |
Korjauksia johdantoon, tiivistelmään ja lähteisiin |
1.2 |
16.2.2005 |
PK |
Korjauksia testauskappaleeseen ja testitapauksiin |
Sisällysluettelo
Kaakkuri-projekti oli Jyväskylän yliopiston tietotekniikan laitoksella syksyn 2004 aikana toteutettu sovellusprojekti. Projekti toteutti Windows-pohjaisen suunnittelusovelluksen yhden tai useamman laitoksen kurssien opetustapahtumien sijoitteluun määriteltyihin saleihin ja ajankohtina.
Tässä dokumentissa kerrotaan sovelluksen testauksen tuloksista. Testausta on suoritettu testaussuunnitelman [2] mukaisesti projektin kuluessa. Luvussa 2 esitellään projektin sisällä sovittuja termejä ohjelmaan liittyen ja luvussa 3 yleistä testauksen suorittamisesta. Luvussa 4 on testitapaukset tuloksineen taulukon muodossa. Lopuksi luvussa 5 on yhteenveto dokumentin sisällöstä.
Projektin sisällä
sovittuja termejä
Blokki Blokki on apuväline säännöllisen kurssin luentojen sijoittamisessa. Blokkia kuvataan isolla kirjaimella: A, B, C jne. Blokki sitoo yhteen tiettyjä kellonaikoja, tiettyinä päivinä viikossa (blokki A voi siis olla esimerkiksi seuraavanlainen: ma 10-12 ja ti 12-14). Blokkiin A sijoitetut kurssit siis toistuvat joka viikko blokkiin kiinnitettyinä ajankohtina.
Tapahtumaryhmä
Tapahtumaryhmä sisältää tietyn tyyppistä tapahtumaa (luento, demo, ohjaus…) niin monta kappaletta kuin kyseinen tyyppi kurssissa kestää viikoissa. Tämä tieto voidaan laskea, kun tiedetään kuinka monta kyseisen tyypin tapahtumaa kurssissa on ja kuinka monta kertaa viikossa.
Projektissa käytössä olevia yleisiä termejä
Java Java on oliopohjainen, laitteistoriippumaton ohjelmointikieli, mikä mahdollistaa Javalla kirjoitettujen sovellusten ajamisen useilla eri laitteistoarkkitehtuureilla.
Korppi Korppi on opintotietojärjestelmä, joka tarjoaa tietoa ja työvälineitä mm. opiskelijoille ja opettajille. Korppi-järjestelmän avulla voidaan esimerkiksi ilmoittautua kursseille ja tentteihin, varata opetusta varten saleja ja muita työvälineitä jne.
Testausta on suoritettu pitkin projektin etenemistä testaussuunnitelman [2] mukaisesti. Testaus on suoritettu Jyväskylän yliopiston projektiryhmän käyttöön antamilla PC-tietokoneilla. Kolmessa koneessa on käyttöjärjestelmänä Windows XP, prosessorina AMD Athlon XP 1600+ ja muistia 512 Mt. Ohjelma on tehty myös Linux ja Mac OS X käyttöjärjestelmiä silmälläpitäen, mutta yhteensopivuutta ei kyseisten käyttöjärjestelmien kanssa testattu projektin puitteissa.
Tässä luvussa esitellään sovelluksen testaamisessa käytetyt testitapaukset. Testitapaukset on muodostettu vaatimusmäärittely-dokumentissa [1] kuvattujen vaatimusten pohjalta. Testattavat tapaukset on jaettu kahteen prioriteettiluokkaan. Prioriteettiluokkaan A kuuluvat testitapaukset ovat tärkeitä sovelluksen toiminnan kannalta. Prioriteettiluokkaan B kuuluvia tapauksia on jätetty toteutettavaksi sovelluksen jatkokehityksen aikana. Kohdassa huomiot ovat testitapaukseen liittyvät huomiot. Jos huomioissa on OK, tarkoittaa se, että testitapauksessa ei ole ongelmia eikä ristiriitoja vaatimusten kanssa.
|
Aihe |
Prioriteetti |
Vaatimus |
Huomiot |
1. |
Opiskelijalle tarkoitetut kurssit eivät ole päällekkäin |
A |
Tietylle opiskelijalle lukukausitasolla suunnattujen kurssien päällekkäisyys täytyy huomioida. |
OK |
2. |
Opettajan kaksoisvaraus |
B |
Samaa opettajaa ei voi asettaa kahteen eri paikkaan samaan aikaan. |
Opettajia ohjelma ei itse osaa ottaa huomioon. |
3. |
Pakolliset sivuaineet |
A |
Pakollisten sivuaineiden approbaturtasoiset kurssit tulee olla mahdollista ottaa huomioon suunnittelussa. Pääaineen ja sivuaineen approbaturtasoiset kurssit eivät saisi olla päällekkäin. |
Sivuaineita ei ole otettu huomioon tässä ohjelman kehitysversiossa. |
4. |
Salivarausten päällekkäisyys |
A |
Samaan saliin ei voi varata tiettyyn aikaan kuin yhden tapahtuman. |
OK |
5. |
Salin koko |
B |
Sovellus huomauttaa suuresta poikkeavuudesta salin koon ja kurssille oletettavasti osallistuvien opiskelijoiden määrän suhteen. |
Salin kokoihin sovellus ei ota kantaa. |
6. |
Näkymät |
A |
Sovelluksessa on periodi- ja kalenterinäkymä. Kalenterissa näkyy viikko kerrallaan. Käyttäjä voi itse lisätä haluamansa ”periodin” esim. viikot 36 – 52 vuonna 2004. |
Periodit luetaan tiedostosta, joten käyttäjän pitää itse muokata tiedostoon haluamansa periodit. |
7. |
Sijoittaminen periodinäkymässä |
A |
Periodinäkymässä voi sijoittaa kurssin kerralla kokonaisuudessaan johonkin blokkiin. Jos kurssi ei mahdu blokkiin, jää ylimääräiset tapahtumat sijoittamatta. Periodinäkymässä voi tapahtumia sijoittaa myös ohi blokkirakenteen viikkoluento kerrallaan. |
Taulukossa ensimmäisellä piirtokerralla joissakin soluissa tekstistä osa tulostuu solun näkyvän osan ulkopuolelle. Solu päivittyy viemällä hiiren kursori solun päälle tai muuttamalla taulukon marginaaleja hieman. Ongelma todennäköisesti johtuu siitä, että Javan taulukko näyttää solussa olevasta komponentista vain kuvan eikä itse komponenttia. |
8. |
Sijoittaminen kalenterinäkymässä |
A |
Kalenterinäkymässä voidaan käyttää periodinäkymän (kohta 7.) sijoittelumahdollisuuksia ja lisäksi sijoitella yksittäisiä tapahtumia mielivaltaisiin paikkoihin kalenterissa. |
Kalenterissa on samat ongelmat liittyen Javan taulukkoon kuin kohdassa 7. |
9. |
Yhteys Korppiin |
A |
Sovelluksesta on yhteys korppi-järjestelmään. |
Kurssit ja salit saadaan haettua korppi-järjestelmästä. |
10. |
Haku Korpista |
A |
Sovellus pystyy hakemaan korpista tiedot kursseista (kurssikuvaus, osallistujien määrä, luentojen määrä, aloitus päivämäärä) ja tiedot saleista (nimi, koko, varusteet). |
OK |
11. |
Vienti Korppiin |
A |
Sovellus pystyy viemään korppiin kurssiin kuuluvien luentojen ajat (yksittäisten luentojen tarkat ajat ja päivät) ja luennoille varattavat salit. |
Ohjelma tulostaa tiedoston, jossa on korppiin vietävä data. |
12. |
Sijoitetun poistaminen |
A |
Käyttäjä pystyy poistamaan minkä tahansa sijoitetun kurssin, tapahtumaryhmän tai tapahtuman sijoituksen ja se ilmestyy uudestaan sijoittamattomien kurssien joukkoon |
OK |
13. |
Blokkieditori |
A |
Sovelluksessa on blokkieditori, jolla pystyy tekemään haluamansa blokkirakenteen. Blokkirakenteen pystyy tallentamaan ja sitä pystyy muokkaamaan. Blokille voi antaa mielivaltaisen nimen. |
OK |
14. |
Kurssiryhmät |
A |
Sovelluksessa on kurssiryhmäeditori, jolla voi muodostaa kursseista ryhmiä (tämä mahdollistaa samaan ryhmään kuuluvien kurssien päällekkäisyyden tarkistamisen). Ryhmälle voi antaa mielivaltaisen nimen. Ryhmä voi sisältää toisia ryhmiä. |
OK |
15. |
Viikon jakaminen ajanjaksoihin |
B |
Viikko voidaan jakaa juoksevalla numeroinnilla yhden tai useamman tunnin jaksoihin. |
Toteutettu osittain. Tietorakenne soveltuu jakamiseen, mutta jakamista ei voida tehdä missään. |
16. |
Kurssien vieminen ilman salivarausta |
B |
Kurssit voidaan viedä Korppi-järjestelmään ilman salivarausta (nähdään mahdolliset päällekkäisyydet). |
Ei toteutettu. |
17. |
Demot, ohjaukset |
B |
Sovelluksella pystyy sijoittamaan myös kurssiin liittyvät demot, ohjaukset ja mahdolliset muut tapahtumat. |
Ei toteutettu. |
18. |
Salivarauskonfliktit |
B |
Sovellus huomaa mahdolliset ennalta tiedetyt salivarauskonfliktit ja pystyy huomauttamaan näistä käyttäjälle. Sovellus voi tarvittaessa poistaa tietyltä viikolta luennon ja siirtää sen automaattisesti kurssin loppuun jatkaen näin kurssin kestoaikaa viikolla. |
Ei toteutettu. |
19. |
Tapahtumien lisääminen |
B |
Käyttäjä pystyy lisäämään haluamansa määrän tietynlaisia tapahtumia johonkin kurssiin ja sijoittelemaan ne normaalisti. |
Ei toteutettu. |
20. |
Tarkat ajat |
A |
Päivämäärät ja kellonajat tallennetaan tietorakenteisiin tarkasti kalenteritasolla. |
OK |
Projektin vaatimusten täyttämiseen kuluneen ajan takia jäi itse testaus suunniteltua vähemmälle. Sovelluksen testausta tehtiin käytännössä suurimmalta osin koko projektin aikana moduulitestauksena yksittäisinä komponentteina. Kun komponentti oli todettu toimivaksi, testattiin sitä yhdessä muun ohjelman kanssa. Sovelluksen ominaisuudet, jotka projektiryhmä kerkesi toteuttaa projektin aikana, on testauksessa todettu toimivan käytettävästi.
[1] PK, AP, SS, MS, Kaakkuri: ”Vaatimusmäärittely”, Jyväskylän yliopisto, tietotekniikan laitos, 2004
[2] PK, AP, SS, MS, Kaakkuri: ”Testaussuunnitelma”, Jyväskylän yliopisto, tietotekniikan laitos, 2005