Proffa ilmoittautumisen profiloija Määrittelydokumentti Leila Juusola Ilari Moilanen Jyrki Salonen Olli Sinerma Hanna Sirola Helsinki 16.2.2005 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
HELSINGIN YLIOPISTO Matemaattis-luonnontieteellinen tiedekunta Tietojenkäsittelytieteen laitos Tekijät: Leila Juusola Ilari Moilanen Jyrki Salonen Olli Sinerma Hanna Sirola Työn nimi: Proffa ilmoittautumisen profiloija Oppiaine: Tietojenkäsittelytiede Työn laji: Määrittelydokumentti Aika: 16.2.2005 Sivumäärä: 14 sivua Tiivistelmä: Proffa- eli ilmoittautumisen profiloija ohjelmistotuotantoprojektin tavoitteena on toteuttaa opettajien avuksi web-työkalu ryhmäjaon muodostamiseksi tietojenkäsittelytieteen laitoksen kursseilla. Proffa-järjestelmä koostuu tietokannasta ja web-käyttöliittymästä. Järjestelmällä on kaksi käyttäjäryhmää: pääkäyttäjä ja kurssivastaava. Järjestelmässä voidaan tarkistaa opiskelijoiden esitietovaatimusten täyttyminen ja jakaa heidät ryhmiin erilaisten kriteerien mukaan. Kurssivastaava voi muokata manuaalisesti järjestelmän tekemää alustavaa ryhmäjakoa. Proffa-järjestelmällä on yhteys yliopiston Desmond- ja ilmoittautumisjärjestelmiin. Uusin versio tästä dokumentista on saatavilla Proffa-ryhmän kotisivuilla osoitteessa http://www.cs.helsinki.fi/group/proffa. Avainsanat: Proffa, profilointiohjelma
Sisältö 1 Johdanto...1 1.1 Järjestelmän merkitys...1 1.2 Sidosjärjestelmät...1 2 Yleiskuvaus...2 2.1 Ympäristö...2 2.2 Käyttäjät...3 2.3 Toiminta...4 2.4 Yleinen arkkitehtuurikuvaus...5 3 Järjestelmän vaatimukset...6 3.1 Prioriteetti 1...6 3.2 Prioriteetti 2...8 3.3 Prioriteetti 3...9 4 Järjestelmän käyttötapaukset...9 4.1 Pääkäyttäjä...9 4.2 Kurssivastaava...10 5 Käyttöliittymähahmotelma...11 6 Rajoitteet suunnittelulle ja toteutukselle...11 6.1 Laitteisto...11 6.2 Ohjelmisto...11 6.3 Sovitut standardit ja mallit...11 7 Järjestelmän jatkokehitysmahdollisuuksia...11 Liite 1: Käyttöliittymähahmotelma...13
1 1 Johdanto Tämä dokumentti on määrittelydokumentti eli vaatimusanalyysi Proffaohjelmistotuotantoprojektiin, jonka tavoitteena on toteuttaa opettajien avuksi web-työkalu ryhmäjaon muodostamiseksi tietojenkäsittelytieteen laitoksen kursseilla. Dokumentin tarkoitus on selvittää, mitä projektin toteuttama ohjelma tekee ja sisältää. Järjestelmän suunnittelu tehdään määrittelydokumentin pohjalta. 1.1 Järjestelmän merkitys Joillain kursseilla, kuten Ohjelmistotuotantoprojekti, Tieteellinen kirjoittaminen ja Opettajatuutorointi, opiskelijat jaetaan pienryhmiin ilmoittautumisen yhteydessä annettujen taustatietojen ja ryhmätoiveiden mukaan. Tavoitteena ryhmäjaossa on toisaalta muodostaa mahdollisimman homogeenisia, tasakokoisia ja/tai täysiä ryhmiä, ja toisaalta täyttää opiskelijoiden esittämiä toiveita niin paljon kuin mahdollista. Koska kursseilla on keskenään erilaiset sisällölliset ja hallinnolliset vaatimukset, ja ryhmittelyn kriteerit vaihtelevat, on ryhmien muodostaminen ollut työläs prosessi. Vastuuopettajat ovat tehneet sen tähän asti manuaalisesti. Web-työkalun on määrä nopeuttaa ja helpottaa prosessia. 1.2 Sidosjärjestelmät Ilmoittautumisjärjestelmä (ilmo) Kursseille ja erilliskokeisiin ilmoittaudutaan www-pohjaisella ilmoittautumisjärjestelmällä. Opiskelija voi selailla opetustarjontaa, ilmoittautua ja katsoa omia ilmoittautumisiaan järjestelmässä. Joillakin kursseilla käytetään ilmoittautumisen yhteydessä kyselylomaketta, jossa kysellään tarkemmin esim. kiinnostuksen kohteita. Kurssikirjanpitojärjestelmä (kurki) Kurssikirjanpitojärjestelmän avulla kirjataan lähes kaikki laitoksen opetus. Järjestelmän tiedot voidaan siirtää automaattisesti koko yliopiston opintosuoritusrekisteriin eli Oodi-tietokantaan. Desmond-järjestelmä Desmond on opiskelijoille suunnattu opintojensuunnittelujärjestelmä, jolla voi suunnitella opintoja lukukausittain. Opiskelija voi luoda erilaisia mahdollisia opintosuunnitelmia ja kiinnittää niistä haluamansa. Suunnitelmat voidaan tallentaa, niitä voi tarkastella jälkikäteen esimerkiksi tuutorin kanssa ja arvioida tavoitteiden toteutumista. Samalla opetushenkilökunta saa opetuksen suunnittelun kannalta arvokasta tilastotietoa opiskelijoiden kiinnostuksista. Desmond toimii verkossa ja muodostuu muutamasta ydinsovelluksesta, joita ympäröi löyhä joukko niitä käyttäviä palveluita. Järjestelmä toimii käytännössä kahden keskeisen sovelluksen, kurssien vastaavuussääntöjen käsittelijän sekä esitietovaatimusten käsittelijän ympärillä. Muut palvelut käyttävät ydinsovellusten tarjoamia toimintoja hyväkseen. Kurssien vastaavuussääntöjä tarvitaan esimerkiksi selvitettäessä täyttävätkö opiskelijan suoritukset jonkin kurssin esitietovaatimukset. Esimerkiksi Tietojenkäsittelytieteen laitoksella kurssien sisällöt,
2 nimet ja laajuudet vaihtelevat muutaman vuoden välein. Näin opiskelija on saattanut suorittaa esitietovaatimusten edellyttämät kurssit muutamaa vuotta aiemmin esimerkiksi erinimisinä kuin ne on vaatimuksissa lueteltu. Esitietovaatimusten käsittelijä selvittää, täyttääkö opiskelija tietylle kurssille asetetut esitietovaatimukset. Vaatimukset, kuten opiskelijan suoritukset, kuvataan Desmondissa loogisina sääntöinä sekä symboleina, joita verrataan keskenään vaatimusten täyttymisen selvittämiseksi. Erikoistapauksena esitietovaatimusten tarkastamisesta on opintokokonaisuuden ja lopulta tutkinnon oikeellisuuden tarkastaminen. 2 Yleiskuvaus Proffa-projektin järjestelmä koostuu tietokannasta ja web-käyttöliittymästä. Järjestelmä tukee kahta eri käyttäjäryhmää: pääkäyttäjää ja kurssivastaavaa. Molemmilla on oma web-käyttöliittymänsä, joilla he voivat tehdä statuksensa mukaisia muutoksia järjestelmään. Järjestelmä on tarkoitettu kurssivastaavan työkaluksi opiskelijoiden ryhmittämiseksi kolmelle TKTL:n kurssille: Opettajatuutorointiin, Ohjelmistotuotantoprojektiin ja Tieteellisen kirjoittamiseen. Kurssin ilmoittautumisajan päätyttyä kurssin vastuuhenkilö kirjautuu Proffajärjestelmään, joka hakee tiedot kurssille ilmoittautuneista opiskelijoista. Opiskelijat, joiden esitietovaatimuksissa ei ole ongelmia, laitetaan automaattisesti heidän haluamiinsa ryhmiin, kunnes ryhmä tulee täyteen. Tämän jälkeen kurssivastaava voi vielä manuaalisesti lisätä opiskelijoita haluamiinsa ryhmiin tai muokata puutteellisten esititetovaatimuksien ryhmään joutuneiden opiskelijoiden tietoja, mutta vain järjestelmän sisällä. Proffa ei muokkaa opiskelijoiden tietoja Oodi-tietokannassa, vaan käyttää omaa välimuisti-tietokantaansa. Kurssin vastuuhenkilöllä on myös mahdollisuus tallentaa mieleisiään opiskelijaryhmiä ja palata halutessaan niihin takaisin. Kurssivastaava voi tehdä järjestelmään myös uusia rinnakkaisryhmiä ja nimetä sekä niille että vanhoille ryhmille haluamiaan ohjaajia, myöskin ryhmien kommentointi ja sulkeminen niiden täytyttyä onnistuu. Kun ryhmäjako on tehty, saa vastuuhenkilö siitä muodostetun HTML-sivun. 2.1 Ympäristö Proffalla on yhteys Desmondiin ja mahdollisesti myös ilmo-järjestelmään, joista se päivittää tietonsa kurssille ilmoittautuneista opiskelijoista. Tiedot päivitetään Proffan omaan tietokantaan, jota se käyttää oppilaiden ryhmittelyssä ja heidän tietojensa päivittämisessä. Proffa asennetaan PCpalvelimeen, johon käyttäjäkoneet ottavat yhteyden HTTP-protokollan ylitse. Järjestelmän käyttäjät tulevat olemaan Helsingin yliopiston tietojenkäsittelytieteenlaitoksen vastuuhenkilöitä kursseilta Ohjelmistotuotantoprojekti, Tieteellinen kirjoittaminen ja Opettajatuutorointi. Järjestelmä toteutetaan PHP-tekniikalla MySQL- tai PostgreSQL tietokannan päälle. PHP:stä tullaan käyttämään uusinta versiota ja Apache http -palvelimen versio on joko 2.0.53 tai 1.3.33. Palvelimen oletetaan olevan vähintään Pentium 4 -suorittimen PC-kone, jossa on 512 megatavua muistia. Järjestelmä tukee ainakin Mozilla 1.6 -selainta, mutta myös uusimman IE:n versiota pyritään tukemaan. Muita vaatimuksia käyttäjän järjestelmään ei kohdistu.
3 2.2 Käyttäjät Proffa-järjestelmällä on kahdenlaisia käyttäjiä, Pääkäyttäjä ja Kurssivastaava. Pääkäyttäjä on ylimmän tason käyttäjä, joka vastaa uusien vastuuhenkilöiden lisäämisestä järjestelmän tietokantaan sekä tunnuksien ja salasanojen luomisesta. Pääkäyttäjällä ei ole oikeutta muokata kurssivastaavien opiskelijaryhmiä. Pääkäyttäjä ei myöskään näe mitään kurssivastaavan toiminnoista. Järjestelmän varsinainen käyttäjä, Kurssivastaava, hallinnoi järjestelmässä niitä kursseja, joiden vastuuhenkilönä on. 2.2.1 Pääkäyttäjä Pääkäyttäjä hallinnoi järjestelmän käyttäjiä: luo heille tunnukset ja salasanat. Hän voi myös poistaa järjestelmän kurssivastaavia ja muokata vanhojen kurssivastaavien tietoja, kuten salasanaa ja nimeä. Pääkäyttäjä ei kykene vaikuttamaan kursseihin tai tekemään yllä annettujen ominaisuuksien lisäksi muuta. 2.2.2 Kurssivastaava Kurssivastaava pystyy muokkaamaan omien kurssiensa opiskelijoiden ryhmiä, luomaan uusia ryhmiä ja muuttamaan opiskelijoiden tietoja Proffan omassa tietokannassa. Kurssivastaava kykenee myös kommentoimaan omia ryhmiään, mutta tämä ei näy lopullisessa tulosteessa. Kurssivastaava myös antaa kursseille niiden ohjaajien nimet. Kuva 1: Proffa-järjestelmän sidosryhmät
4 2.3 Toiminta Seuraavassa on yhteenveto Proffa-järjestelmän toiminnoista käyttäjätasolla: Järjestelmään kirjautuminen Kurssivastaavien lisäys, poisto ja tietojen muokkaus Opiskelijan siirtäminen ryhmään manuaalisesti Opiskelijaryhmien kommentointi Uusien rinnakkaisryhmien luonti Ryhmien sulkeminen Opiskelijan kurssitetojen muokkaaminen järjestelmän sisällä Opiskelijoiden järjestäminen kriteereiden mukaan Opiskelijoiden poistaminen ryhmästä Opiskelijoiden manuaalinen lisääminen järjestelmään Virheellisen ilmoittautumisdatan manuaalinen korjaaminen Ryhmäjakojen tallentaminen HTML-sivun tuotto ryhmäjaosta Proffa-järjestelmän automatisoitu toiminta: Kurssille ilmoittautuneiden opiskelijoiden hakeminen Desmond-kannasta Opiskelijoiden automaattinen ryhmittely heidän ryhmä toiveidensa mukaan Toiminnot kuvataan yksityiskohtaisemmin luvussa 3.
5 2.4 Yleinen arkkitehtuurikuvaus Kuvasta 2 käy ilmi yleiskuvaus Proffa-järjestelmän arkkitehtuurista. Tässä vaiheessa yleiskuvaus on vielä hahmotelma-asteella. Kuva 2: Proffa-järjestelmän yleisarkkitehtuuri Järjestelmää käytetään verkkoselaimella ja HTML-käyttöliittymällä. Varsinainen ohjelmalogiikka toteutetaan PHP:llä, joka suorittaa käyttöliittymän piirtämisen käyttäjälle, tietokantaoperaatiot (Desmondiin liittyvät operaatiot suoritetaan erillisen Java-rajapinnan avulla), tiedon näyttämisen, tiedon muokkaamisen ja opiskelijoiden automaattisen ryhmiinsijoittelun niissä tapauksissa, kun se on mahdollista suorittaa. Järjestelmän tarvitsemat tiedot saadaan laitoksen ilmoittautumisjärjestelmän tietokannasta. Mahdolliset esitietopuutteet selviävät Desmond-järjestelmän avulla. Näiden tietojen hakeminen tehdään vain kerran kurssia kohden. Desmondin käyttämiseksi tarvitaan erillinen Java-rajapinta, joka selvittää kunkin oppilaan esitietovaatimusten täyttymisen, ja tallentaa mahdolliset puutteet järjestelmän omaan tietokantaan. Järjestysautomatiikka hoitaa opiskelijoiden ryhmiin sijoittelun niissä tilanteissa, kun kurssilla on selkeät ryhmätoiveet, joita voidaan käsitellä järkevästi automaattisesti. Opettajatuutorointi-kurssilla ryhmien järjestelykriteerejä on niin runsaasti, että automaattinen ryhmittely ei onnistune.
6 Tietojen näyttäminen: Tiedot näytetään käyttäjälle tämän haluamassa järjestyksessä, esimerkiksi opiskelijat iän, aloitusvuoden tms. kriteerin perusteella järjestettynä. Ryhmistä voi sulkea ja avata näkyviin enemmän tietoja. Tietojen muokkaaminen: Virheellisen ilmottautumisdatan voi muokata järjestelmässä kelvolliseksi. Puutteelliset esitietovaatimukset voidaan kirjata suoritetuiksi. Opiskelijoita voi siirrellä eri ryhmiin ja ryhmien kuvauksia / ohjaajia voi vaihdella. Muuta tietojenmuokkaustarvetta järjestelmässä ei ole. Käyttöliittymä tarjoaa käyttäjälle pääsyn järjestelmän toimintoihin. Käyttöliittymää käytetään verkkoselaimen avulla. Tietokannan hallinta hoitaa tarvittavat tietokantaoperaatiot. 3 Järjestelmän vaatimukset Seuraavassa Proffa-järjestelmän vaatimukset on luokiteltu prioriteetin mukaan. Prioriteetti 1: välttämätön vaatimus Prioriteetti 2: toivottava vaatimus Prioriteetti 3: mahollinen vaatimus 3.1 Prioriteetti 1 3.1.1 Käyttäjäryhmät Järjestelmällä on yksi Pääkäyttäjä, joka voi tehdä web-käyttöliittymän kautta uusia Kurssivastaavatunnuksia järjestelmään ja muuttaa jo olemassa olevien salasanoja ja nimiä. Muita oikeuksia Pääkäyttäjällä ei ole. Järjestelmässä on pystyttävä luomaan useita Kurssivastaava-käyttäjiä, joilla on oikeus tehdä kurssijakoja vain omiin kursseihinsa. 3.1.2 Ryhmien muodostaminen Kurssivastaavan on voitava jakaa opiskelijat ryhmiin Proffa-järjestelmän automaattisella ryhmittelyllä. Automaattinen ryhmäjako toteutetaan opiskelijan ryhmätoiveen mukaan. First Come First Served -periaatteen mukaisesti opiskelijat, joilla on esitietovaatimukset kunnossa, sijoitetaan heidän toivomiinsa ryhmiin. 3.1.3 Datan esitys käyttäjälle Ryhmien muodostamista varten järjestelmä antaa Kurssivastaavalle tietona oppilaista nimen, syntymäajan, opintoviikkojen määrän,suuntautumisvaihtoehdon, esitietovaatimusten tilan ja erityistoiveet.
7 3.1.4 Puutteellisten esitietovaatimusten käsittely Opiskelijat, joiden esitietovaatimukset eivät ole kunnossa, sijoitetaan omaan jonoonsa. Puuttuvat esitietovaatimukset näkyvät opiskelijakohtaisesti. Kurssivastaavan on voitava täydentää opiskelijoiden esitietovaatimuksia järjestelmän sisällä ja sijoittaa heidät ryhmiin manuaalisesti. 3.1.5 Ei-validista tiedosta suoriutuminen Kurssivastaava pystyy muokkaamaan järjestelmän kannalta virheellistä tai ei-validia tietoa oikeaan muotoon. 3.1.6 Datan muuttuminen Ryhmäjaon on onnistuttava myös tilanteissa, joissa ilmoittautuneiden opiskelijoiden määrä on muuttunut. 3.1.7 Muutetut esitietovaatimukset Esitietovaatimusten muutoksien on oltava pysyviä järjestelmän sisällä. 3.1.8 Automaattisen ryhmäjaon muuttaminen manuaalisesti Kurssivastaava pystyy muuttamaan automaattista ryhmäjakoa manuaalisesti. Myös ilmoittautumisajan jälkeen ilmoittautuneet ja jonoon sijoitetut opiskelijat käsitellään manuaalisesti. 3.1.9 Opiskelijoiden siirtäminen ja poistaminen Opiskelijoita on voitava siirtää ryhmästä toiseen tai poistaa ryhmittelystä. 3.1.10 Ohjaajien kiinnittäminen ryhmiin Kurssivastaava lisää ohjaajat ryhmiin manuaalisesti kirjoittamalla tekstikenttään ohjaajan nimen. 3.1.11 Ryhmien koko Ryhmien on voitava olla erikokoisia. 3.1.12 Lopullisen jaon täydellisyys Ryhmäjaon jälkeen saa jäädä ryhmiin sijoittamattomia opiskelijoita. 3.1.13 Rajapinta käyttäjään Pääkäyttäjän ja Kurssivastaavan toiminnot on kyettävä suorittamaan Mozilla 1.6 -selaimella. 3.1.14 Data järjestelmän ulkopuolelta Opiskelijoita on voitava kirjata järjestelmään käsin, jolloin syötteenä annetaan vain opiskelijan nimi.
8 3.1.15 Ryhmäjaon tietojen yhteenveto Järjestelmä tuottaa valmiista ryhmäjaosta HTML-sivun, josta näkyvät ryhmien lukumäärä, ohjaajien lukumäärä, opiskelijoiden lukumäärä, kurssin vastuuhenkilön nimi, kurssin mahdollisen luennoijan nimi, opiskelijoiden nimet ja ryhmät. Ryhmistä näkyvät ryhmäjaot, ryhmän nimi, valmiusaste ja ohjaajan nimi. Valmis HTML-sivu toimii yhteenvetona kurssista tehdystä ryhmäjaosta. 3.1.16 Rajapinnat ulospäin Järjestelmän on pystyttävä hekemaan tietoa Desmond- ja ilmo-järjestelmistä. 3.1.17 Kurssin poistaminen järjestelmästä Kurssivastaavan pystyy poistamaan omia kurssejaan Proffa-järjestelmästä manuaalisesti. 3.1.18 Tehokkuus Järjestelmän pitää suoriutua 200 oppilasta sisältävistä syötteistä kaikilla operaatioilla alle kymmenessä sekunnissa. 3.2 Prioriteetti 2 3.2.1 Ryhmien muodostaminen Automaattinen ryhmäjako voidaan toteuttaa opiskelijan syntymävuoden, vuosikurssin, suoritettujen opintoviikkojen tai ilmoittautumisajan mukaan. 3.2.2 Ryhmän valmiusasteen näyttäminen Ryhmien tiedot pitää voida piilottaa tai saada uudelleen näkyviin järjestelmässä. 3.2.3 Ohjaajien määrä ryhmässä Ryhmissä pitää voida olla useita ohjaajia. 3.2.4 Ryhmien määrä Alustavaa ryhmien määrää pitää voida muokata manuaalisesti. 3.2.5 Tallennus Kurssivastaava pystyy tallentamaan erilaisia ryhmäjakoja (valmiita ja keskeneräisiä) ja palata niihin myöhemmin uudestaan. Ryhmäjaon voi aloittaa myös alusta. 3.2.6 Ryhmäjako iteraatiokierroksittain Kurssivastaava pystyy jakamaan osan oppilaista ryhmiin siten, että nämä pysyvät järjestelmän muistissa sillä aikaa kun käyttäjä jaottelee muut oppilaat. Jo ryhmiin sijoitetut opiskelijat eivät enää kuulu automaattisen jaottelun piiriin.
9 3.2.7 Ryhmän identifiointi Ryhmälle pitää voida antaa nimi ja esittelytietoa. 3.2.8 Tietosuoja Proffa-järjestelmässä on sisäinen salasanasuojaus. 3.3 Prioriteetti 3 3.3.1 Ryhmäkoon dynaaminen vaihtelu Kurssivastaava pystyy dynaamisesti muuttamaan ryhmien kokoa. Kurssivastaava voi vaihtaa ryhmän kokoa suoraan ryhmän tietojen kohdalta. 3.3.4 Internet Explorer -toimivuus Järjestelmä toimii Mozillan lisäksi myös Internet Explorer 6 -selaimella. 3.3.5 Datan siirto ulospäin Järjestelmä osaa lähettää ryhmäjaon eteenpäin asiankuuluviin kurssikirjanpitojärjestelmiin. 3.3.5 Tietojen tulostus laitoksen sivuille Kurssivastaava pystyy lähettämään tulostesivun suoraan näkyville laitoksen sivuille. 4 Järjestelmän käyttötapaukset Alla on lueteltu Proffa-järjestelmän yleisimmät oletettavissa olevat käyttötapaukset käyttäjäryhmittäin. 4.1 Pääkäyttäjä 1. Pekka haluaa luoda uuden vastuuhenkilön "Maija Maitoparran" järjestelmään Tilatietoa: Pekka tietää Maijan kokonimen ja sähköpostiosoitteen Maija on pyytänyt Pekkaa lisäämään hänet käyttäjäksi 2. Pekka muokkaa Maijalle uuden salasanan unohtuneen tilalle Tilatiedot samat kuin yllä
10 4.2 Kurssivastaava 1. Maija haluaa tehdä yhdestä ryhmästä muita suuremman Tilatietoja: Kurssille on ilmoittautunut 11 henkeä ja ryhmiä on kaksi ja molemmissa maksimijäsenmäärä viisi 2. Maija haluaa liittää ensimmäiseen ryhmään opiskelija Liisan Tilatiedot: Liisa on ilmoittautunut kurssille ja hänellä on esitiedot kunnossa 2a. Maija haluaa liittää ensimmäiseen ryhmään opiskelija Liisan, jonka esitiedot eivät ole kunnossa Tilatiedot: Tietokantoihin ei ole vielä päivitetty Liisan suorittamia kurssitietoja, mutta hän on saanut esitietovaatimukset suoritettua 2b. Maija haluaa liittää ensimmäiseen ryhmään opiskelija Liisan, joka ei ole ilmoittautunut kurssille ilmon kautta 3. Maija järjestää opiskelijat näkymässään ryhmätoiveiden mukaiseen järjestykseen Tilatietoja: Ilmoittautumisen ohessa opiskelijoita on pyydetty valitsemaan kolmen eri ryhmän väliltä Kaikki opiskelijat ovat valinneet vain yhden ryhmän 4. Maija julkistaa ryhmien koostumuksen HTML-sivuna 5. Maija muokkaa Pekko Puusilmän antamia virheellisiä tietoja Tilatieto: Pekko on erotellut toiveensa pisteillä, vaikka ohjeessa käskettiin käyttämään pilkkuja 6. Maija haluaa luoda uuden rinnakkaisryhmän Ilmoittautumisen profiloija -ryhmälle ja jakaa alkuperäisen ryhmän jäsenet näiden kahden välille 7. Ryhmän TikkaKattilassa ohjaaja on sairastunut ja tilalle pitää laittaa uusi ohjaaja Tilatiedot: Uusi ryhmänohjaaja on ehdolla: se on Arto Wikla
11 5 Käyttöliittymähahmotelma Hahmotelma käyttöliittymästä on esitetty liitteessä 1. 6 Rajoitteet suunnittelulle ja toteutukselle Rajoitteita järjestelmän suunnittelulle ja toteutukselle saattaa generoitua laitteistosta, valituista ohjelmistoista, asiakkaan vaatimuksista sekä noudatettavaksi sovituista standardeista ja malleista. 6.1 Laitteisto Järjestelmä toteutetaan normaaliin i386-pohjaiseen laitteistoympäristöön tietojenkäsittelytieteenlaitoksen koneille. Näiden koneiden suorituskyvystä ei tällä hetkellä ole yksityiskohtaista tietoa, mutta järjestelmä ei tule sisältämään kohtuuttoman raskasta laskentaa tai monimutkaisia jatkuvaa ajoa tarvitsevia algoritmeja, joten laitoksen koneiden ei pitäisi aiheuttaa merkittäviä rajoitteita ohjelmiston suunnittelulle, toteutukselle tai lopulliselle käyttöönotolle. Käyttäjän puolelta riittää normaaliin työpöytäkäyttöön (tarkemmin www-selaimen käyttöön) riittävä laitteisto. Näytön tulisi kuitenkin tukea vähintään 1024x768 -näyttötilaa, mieluummin 1280x1024. 6.2 Ohjelmisto Järjestelmä toteutetaan käyttäen PHP:tä, PostgreSQL-tietokantaa ja laitoksen koneella pyörivää www-palvelinta. Desmond-järjestelmä vaatii erillisen Java-rajapinnan, jonka avulla opiskelijoiden esitietovaatimukset saadaan selville. Käyttöliittymä toteutetaan HTML:n avulla, jonka mahdollisuudet asettavat merkittäviä rajoitteita käyttöliittymän suunnittelulle ja toteutukselle. Dokumentointityökaluna toimii MS Word. 6.3 Sovitut standardit ja mallit Projektin dokumentit mukailevat vapaasti ohjelmistotuotanto-kurssin materiaalien malleja. 7 Järjestelmän jatkokehitysmahdollisuuksia Järjestelmää voidaan jatkossa kehittää lisäämällä muutamia piirteitä, jotka on toteutuksen tässä vaiheessa jätetty pois, mutta voivat olla hyödyllisiä myöhemmin. Tällaisia piirteitä ovat esimerkiksi seuraavat: Järjestelmän toimivuus Internet Explorer selaimella. Nykyinen järjestelmä on suunniteltu toimimaan vain Mozilla 1.0 -selaimella, mutta tarvetta IE-selaimen huomioonottamiseen voi mahdollisesti olla näköpiirissä joidenkin järjestelmän käyttäjien joukossa. Ryhmien lukumäärän ja oppilasmäärän dynaaminen vaihtaminen. Nämä toiminnot on toistaiseksi jätetty toteuttamatta alemman prioriteetin takia, mutta voivat osoittautua jatkossa
12 hyödyllisiksi, koska ne suovat käyttäjälle enemmän joustovaraa ryhmien määrittelemisen suhteen. Lisäksi mahdollisia kehityskohteita järjestelmään voisivat olla pidemmälle menevä automaatio oppilaiden järjestelyssä, suuremmalle kurssimäärälle sopiva järjestelylogiikka ja visuaalisempi toteutus siihen paremmin sopivilla kehitysvälineillä.
13 Liite 1: Käyttöliittymähahmotelma Kuva 1: Ryhmiin sijoittamattomat opiskelijat Kuvassa 1 on kuvattu hahmotelma Kurssivastaavan käyttöliittymästä automaattisen ryhmäjaon jälkeen. Oikealla ovat valmiit valmiit ryhmät, vasemmalla ryhmiin sijoittamattomat opiskelijat.
14 Kuva 2: Puutteita esitietovaatimuksissa Kuvassa 2 on esitetty, miten Kurssivastaavan käyttöliittymässä näkyvät ne opiskelijat, joilla on puutteita esitietovaatimuksissa.