Käki-projekti

Huttunen Sami
Lamminmäki Tatu
Lappi Juha
Pelkkikangas Eija

Projektiraportti 9.1.2004 
Versio 1.0

Jyväskylän yliopisto
Tietotekniikan laitos

Tietoja dokumentista
Tekijät	
Huttunen Sami		(samih@cc.jyu.fi)
Lamminmäki Tatu		(tplammin@cc.jyu.fi)
Lappi Juha			(jujolapp@cc.jyu.fi)
Pelkkikangas Eija		(ekpelkki@cc.jyu.fi)
Yhteystiedot
Projektiorganisaation sähköpostilistan kaki@korppi.jyu.fi arkisto on nähtävillä osoitteessa http://korppi.it.jyu.fi/list-rchive/kaki/. Kotisivu löytyy osoitteesta http://kotka.it.jyu.fi/kaki/.
Työn nimi
Käki-projekti, projektiraportti
Työ
Tietotekniikan Sovellusprojektin Projektiraportti
Tiivistelmä
Käki-projekti toteutti sihteerin käyttöliittymän henkilökohtaisen opiskelusuunnitelman suunnittelu- ja seurantasovelluksesta. Toteutetulla WWW-pohjaisella sovelluksen osalla voidaan muodostaa Korppi-järjestelmässä olevista kursseista opintokokonaisuuksia ja niistä edelleen tutkintovaatimuksia. Projektiraportissa kuvataan Käki-projektin taustoja ja projektiorganisaatiota sekä projektin läpivientiä ja suunnitelmien toteutumista.
Avainsanat
Henkilökohtainen opiskelusuunnitelma, opintojen suunnittelu, opinto-ohjaus, WWW-sovellus, Korppi-järjestelmä.
Versiohistoria
Versio	Päiväys	Tehnyt	Muutokset	
0.1	19.11.2003	Sami Huttunen	Raportin rungon tekeminen	
0.2	24.11.2003	Sami Huttunen	Sisällön täydennystä. Henkilökohtaiset kommentit projektista ja aikataulut  puuttuvat.	
0.3	15.12.2003	Sami Huttunen	Korjauksia versioon 0.2. Henkilökohtaiset kommentit puuttuvat.	
0.4	16.12.2003	Sami Huttunen	Henkilökohtaiset kommentit on lisätty.	
0.5	5.1.2004	Sami Huttunen	Edellisen version täydentämistä ja perustelemista.	
1.0	9.1.2004	Sami Huttunen	Pienten kirjoitus- ja muotoiluvirheiden korjailua.	

Sisällysluettelo

1.	Johdanto
2.	Termejä
2.1.	Aihealueeseen liittyvät termit
2.2.	Käytettyihin tekniikoihin liittyvät termit
3.	Projektin taustaa
3.1.	HOPSien tavoitteet
3.2.	HOPSit Jyväskylän yliopistossa
3.3.	Korppi-järjestelmä
3.4.	Vainu-sovellus
4.	Tavoitteiden toteutuminen
4.1.	Tavoitteet sovelluksen osalta
4.2.	Oppimistavoitteet
5.	Resurssit ja organisaatio
5.1.	Henkilöt
5.2.	Tilat ja laitteet
6.	Projektin jäsenten tehtävät
6.1.	Tehtävätyypit
6.2.	Projektipäällikkö
6.3.	Tehtävien jakautuminen
7.	Toteutunut aikataulu
7.1.	Projektin vaiheet
7.2.	Tarkastuspisteet
7.3.	Muutokset suunniteltuun aikatauluun
8.	Riskit ja niiden hallinta
8.1.	Vaatimusten määrittely
8.2.	Aikataulu
8.3.	Tekniset riskit
8.4.	Ohjaajien ja muiden osapuolten ajankäyttö
8.5.	Muut riskitekijät
9.	Dokumentointi- ja palaverikäytännöt
9.1.	Dokumentointikäytännöt
9.2.	Palaverikäytännöt
10.	Kokemuksia projektista
10.1.	Ryhmän muodostuminen
10.2.	Sami Huttunen
10.3.	Tatu Lamminmäki
10.4.	Juha Lappi
10.5.	Eija Pelkkikangas
11.	Yhteenveto

Lähteet
Liitteet
Liite 1. Projektiaikataulu
Liite 2. Työtunnit viikoittain ja tehtävittäin
Liite 3. Huttusen työtunnit viikoittain ja tehtävittäin
Liite 4. Lamminmäen työtunnit viikoittain ja tehtävittäin
Liite 5. Lapin työtunnit viikoittain ja tehtävittäin
Liite 6. Pelkkikankaan työtunnit viikoittain ja tehtävittäin

1.	
Johdanto
Käki-projekti oli Jyväskylän yliopiston tietotekniikan laitoksella toteutettu Sovellusprojekti. Projekti suunnitteli Jyväskylän yliopistolle henkilökohtaisten opiskelusuunnitelmien laadinta-, seuranta- ja raportointisovelluksen Korppi-järjestelmään. Projekti toteutti sovelluksesta osan, jolla sihteeri voi koostaa Korppi-järjestelmässä olevista kursseista opintokokonaisuuksia ja niistä voidaan edelleen koostaa tutkintovaatimuksia. Jatkokehitykseen siirrettiin alkuperäisen suunnitelman muut osiot, jotka on kuvattu vaatimusmäärittelyssä ja sovellusraportissa. 
Raportissa kuvataan Käki-projektin taustoja, aikataulua ja muita läpivientiin liittyviä asioita sekä niiden toteutumista. Toteutettua sovelluksen osaa ja sovelluksen tietokantaa kuvataan tarkemmin sovellusraportissa. Projektin läpivienti on kuvattu projektisuunnitelmassa ja sovellukselta vaaditut ominaisuudet vaatimusmäärittelyssä.
Luvussa 2 esitellään aiheeseen liittyviä termejä. Luvussa 3 esitellään projektin taustoja ja aiheeseen liittyviä olemassaolevia sovelluksia. Luvussa 4 pohditaan asetettuja tavoitteita ja niiden toteutumista. Luvussa 5 kuvataan resurssit sekä esitellään projektiorganisaatioon kuuluneet henkilöt. Luvussa 6 kuvataan projektiryhmän jäsenten tehtävät ja vastuualueet. Luku 7 käsittelee projektin läpiviennin aikataulua ja sen muutoksia suunnitelmaan verrattuna. Luvussa 8 esitellään projektiin arvioituja riskejä, niiden toteutumista ja ratkaisemista. Luku 9 käsittelee dokumentointia ja kokouskäytäntöä. Luvussa 10 ryhmän jäsenet kertovat kokemuksistaan projektista.
2.	
Termejä
Luvussa kuvataan projektin aihealueeseen liittyvää ja dokumentissa käytettyä termistöä.
2.1.	Aihealueeseen liittyvät termit
Käki-projektin aihealueeseen ja Korppi-järjestelmään liittyviä termejä ovat seuraavat: 
HOPS	eli henkilökohtainen opiskelusuunnitelma (tai opintosuunnitelma) on opiskelijan laatima ja opinto-ohjaajan hyväksymä suunnitelma opintojen suorittamisesta.
JOO	eli joustava opinto-oikeus on yliopistojen välinen sopimus yliopistorajat ylittävästä opiskelusta.
JOPS	on opiskelijan laatima suunnitelma jatko-opintojen suorittamisesta.
Korppi	on Jyväskylän yliopiston tietotekniikan laitoksella kehitetty opintotietojärjestelmä.
Korvaavuus	on tapaus, jossa opiskelija korvaa esimerkiksi aikaisemmilla opinnoillaan tutkintoon kuuluvia opintoja.
Kotka	on Korppi-järjestelmän tietokanta ja henkilötietojen hallintaosio.
Opintokokonaisuus 	on yhdestä tai useammasta kurssista muodostettu kokonaisuus. Kurssit voivat olla pakollisia, valinnaisia tai vaihtoehtoisia. Opintokokonaisuus voi olla tasoltaan esimerkiksi approbatur-, cum laude approbatur-, laudatur-tasoinen.
Oppimispäiväkirja	on opiskelijan kirjoittama muistio oppimistaan asioista, niiden omaksumisesta ja oppimisen analysoinnista.
Portofolio 	(tai näytesalkku) on kokoelma esimerkiksi opiskelujen tai työn aikana tuotetuista materiaaleista. Portfolioon liittyy oman oppimisprosessin kuvaus sekä itsereflektio, jossa opiskelija pohtii omaa oppimistaan sekä jatkosuunnitelmiaan. 
Tutkintovaatimus 	koostuu opintokokonaisuuksista.

2.2.	Käytettyihin tekniikoihin liittyvät termit
Käytettäviin työkaluihin ja tekniikoihin liittyviä termejä ovat seuraavat:
Apache	on avoimen lähdekoodin WWW-palvelinohjelmisto, joka palauttaa asiakkaan HTTP-protokollalla pyytämän HTML-sivun.
CSS	eli Cascading Style Sheets on HTML-sivujen ulkoasun määrittelyyn käytetty kieli.
CVS	(Concurrent Version System) on ohjelmistokehityksessä  käytettävä versionhallintajärjestelmä.
HTML 	(Hyper Text Markup Language) on merkkauskieli tekstin sisällön ja rakenteen esittämiseen.
HTTP	on mm. Internetin WWW-palvelussa käytössä oleva tiedonsiirtoprotokolla.
Java	on Sunin kehittämä laitteistoriippumaton olio-ohjelmointikieli.
JDBC	eli Java Database Connectivity määrittelee Java-pohjaisen ohjelmointirajapinnan SQL-relaatiotietokantoihin
JSP	eli JavaServer Pages on servlettien laajennus, joka liittyy dynaamisten WWW-sivujen tuottamiseen. JSP-sivut koostuvat HTML:stä ja JSP-komponenteista, jotka voivat sisältää mm. puhdasta Java-koodia. Palvelimen Tomcat- ohjelmisto kääntää JSP-sivut servleteiksi ennen esittämistä.  
Palvelin	on WWW-sovellusten tapauksessa ohjelmisto, joka palvelee asiakkaana toimivien selainten pyyntöjä.
PostgreSQL	on eräs ilmainen relaatiotietokannan hallintajärjestelmä.
Selain	on ohjelma, joka käyttäjän koneella tulkkaa HTML-kieliset sivut kuvaruudulla esitettävään muotoon.
Servletti	on Javalla ohjelmoitu ohjelmakomponentti, joka sijoitetaan WWW-palvelimeen. Servlet tuottaa vastaussivun asiakkaan pyyntöön.
SQL	eli Structured Query Language on kieli, jolla relaatiotietokannassa olevaa dataa voi määritellä, hakea ja muokata.
Tietokanta 	on kokoelma yhteen liittyvää dataa, joka on sijoitettu tietokantatauluihin.
Tomcat 	on ohjelmisto, jota käytetään servlet- ja JSP-moottorina mm. Apache-palvelimella. Se välittää asiakaspyynnön servletille ja toimittaa sen tuottaman vastauksen takaisin pyytäjälle.
WWW	(World Wide Web) on maailmanlaajuinen tietoverkko.
3.	
Projektin taustaa
Henkilökohtaiset opiskelusuunnitelmat (HOPS) ovat nousseet keskeisiksi välineiksi korkeakouluissa. Opetusministeriön kehitysvaatimusten mukaan kaikille opiskelijoille tulee laatia henkilökohtainen opiskelusuunnitelma vuoteen 2006 mennessä. Henkilökohtaisten opiskelusuunnitelmien laatimista edellyttää myös yliopistojen välinen joustava opiskeluoikeus, joka tulee voimaan jo syksyllä 2004.
3.1.	HOPSien tavoitteet
HOPS on opiskelijan laatima suunnitelma opintojensa tavoitteista ja tutkinnon suorittamisesta. Sen tarkoituksena on opiskelun ja opinnoissa etenemisen tukeminen. Se auttaa myös opiskelijaa omalla alalla suuntautumiseen ja urasuunnitteluun. HOPSille on ominaista prosessiluonteisuus eli se muuntuu joustavasti opintojen edetessä.
HOPS toimii myös opinto-ohjauksen ja opintojen etenemisen seurannan työvälineenä antaen opinto-ohjaajalle kuvan opiskelijan suunnitelmista. Oppilaitoksille järjestelmä tarjoaa tietoa opiskelijoiden suunnitelmista esimerkiksi taustatiedoksi opetustarjonnan suunnitteluun ja ajoitukseen.
Opintoneuvontaan ja HOPSien käsittelyyn ei ole yliopistossa varattu rajattomasti resursseja. Todennäköisesti ei siis olisi mahdollista käydä henkilökohtaista ohjauskeskustelua kaikkien opiskelijoiden kanssa, ainakaan ilman selkeää pohjaa. WWW-pohjainen sovellus tarjoaa opiskelijoille ja opinto-neuvojille ajasta ja paikasta riippumattoman sovelluksen suunnitelman laatimiseen ja seurantaan. HOPSit tulisi kuitenkin hyväksyttää opinnoista vastaavalla henkilöllä, jotta voitaisiin puuttua mahdollisiin epäkohtiin.  
3.2.	 HOPSit Jyväskylän yliopistossa
Tämän hetkisiä HOPS-käytäntöjä on pyritty kartoittamaan syksyllä 2003 virtuaaliyliopistohankkeen tekemällä  kyselytutkimuksella. Kyselyn pohjalta voidaan todeta, että yliopiston eri laitoksilla on nykyisin erilaisia käytäntöjä henkilökohtaisten opintosuunnitelmien laatimisessa. Itse asiassa käytännöt ovat osin jopa opettajakohtaisia. Muutamilla laitoksilla on olemassa valmiita lomakkeita HOPSien suunnitteluun, mutta osin on käytetty täysin vapaamuotoisia asiakirjoja. Pääsääntöisesti HOPSeja ei ole tallennettu sähköisesti.
Eniten HOPSeja tehdään muuntokoulutettaville ja jatko-opiskelijoille. Muille opiskelijoille HOPSit tulevat ajankohtaisiksi lähinnä tilanteessa, jossa opiskelija poikkeaa tutkintovaatimuksista kurssien valinnassa tai mikäli opiskelijan opinnot ovat viivästyneet. Näissä tilanteissa opinto-ohjaaja tai vastaava hyväksyy suunnitelman.
3.3.	Korppi-järjestelmä
Ensimmäinen Jyväskylän yliopistossa yleiseen käyttöön toteutettu WWW-pohjainen kurssikirjanpitosovellus, Kurki, toteutettiin matematiikan laitokselle tietotekniikan cum laude -työprojektina keväällä 1998. Järjestelmän avulla opiskelijat pystyivät ilmoittautumaan kurssille ja selaamaan tietojaan eri kursseilta. Opettajat pystyivät hallinnoimaan kursseja, pääteohjauksia ja demotilaisuuksia. 
Kurki-järjestelmässä esiintyneiden käytettävyysongelmien ja toteutustyökalujen vanhenemisen takia päätettiin kehittää uusi järjestelmä. Syksyllä 2000 Kotka-projekti määritteli uuden järjestelmän ominaisuudet, suunnitteli sille tietokannan ja toteutti henkilötieto-osuuden. Keväällä 2001 Korppi-projekti kehitti järjestelmään kurssikirjanpito-osion. 
Korppi-järjestelmää on tämän jälkeen kehitetty useissa projekteissa, sekä myös palkattujen työntekijöiden toimesta. Järjestelmään on kehitetty mm. päivyri (Kolibri, 2001), opinnäytteiden hallintamoduuli (Koppelo, 2002), salivaraussovellus  (Kiuru, 2002)  ja WWW-kyselyjen laatimissovellus (Kottarainen, 2003). 
Lisätietoa Korppi-järjestelmästä ja siihen kehitetyistä sovelluksista löytyy osoitteesta http://kotka.it.jyu.fi.
3.4.	Vainu-sovellus
Keväällä 2002 toteutettu Uraani-projekti toteutti Vainu-sovelluksen, jolla opiskelijat pystyvät etsimään omiin tavoitteisiin sopivia opintokokonaisuuksia ja opiskelutapoja, sekä suunnittelemaan uraansa pidemmällä tähtäimellä. Sovellukseen liittyy olennaisesti mahdollisuus lähteä suunnittelussa liikkeelle eri ammattien vaatimuksista. Vainu-sovelluksen tietokanta perustuu Kotka-tietokantaan sekä sen toteutustekniikat ja palvelinohjelmistot ovat yhtenevät Korppi-järjestelmän kanssa.
4.	
Tavoitteiden toteutuminen
Luvussa kuvataan ryhmän asettamien tavoitteiden toteutumista sovelluksen ja oppimisen kannalta. Asetetut tavoitteet on kuvattu projektisuunnitelmassa.
4.1.	Tavoitteet sovelluksen osalta
Projektin tavoitteena oli toteuttaa sovellus, jonka avulla opiskelija pystyy laatimaan ja ylläpitämään henkilökohtaista opiskelusuunnitelmaansa. Projektin määrittely ja suunnittelu osoittautuivat kuitenkin paljon työläämmäksi kuin projektisuunnitelmaa kirjoittaessa oli ajateltu, joten projektissa toteutettiin vain osa sovelluksesta. Toteutettavan sovelluksen osa rajattiin vaatimusmäärittelyssä. 
Sovelluksesta toteutettiin vaatimusmäärittelyssä kuvatut sihteerin ja vieraan toiminnot. Niillä pystytään laatimaan, muokkaamaan ja katselemaan tutkintovaatimuksia ja opintokokonaisuuksia. Täten toteutettu sovelluksen osa keskittyi enemmän OPS-suunniteluun, kuin HOPS-suunnitteluun. Toteutettua tietokantaa ja tietorakennetta voidaan suoraan hyödyntää jatkokehitykseen jäävien toimintojen toteutuksessa. 
Jatkokehitykseen sovelluksesta siirrettiin opiskelijan, opintojen ohjaajan, hyväksyjän ja opettajan toiminnot. Opiskelija laatii opiskelusuunnitelmansa sihteerin muodostamista tutkintovaatimuksista ja opintokokonaisuuksista. Opintojen ohjaaja laatii opiskelijalle henkilökohtainen tutkintovaatimuksen tai opintokokonaisuuden, jotka hyväksyjän tulee vahvistaa ennen kuin ne ovat opiskelijan käytössä. Opettaja voi tutustua opiskelijan tekemään opiskelusuunnitelmaansa, jos opiskelija antaa siihen luvan.
Toteutetun sovelluksen osan toiminnot ja jatkokehitykseen jäävät osiot kuvataan tarkemmin sovellusraportissa.
4.2.	Oppimistavoitteet
Projekti oli ryhmän jäsenille pääaineopintoihin kuuluva pakollinen kurssi. Projektin päämääränä oli näin myös opintojen eteneminen ja oppiminen. 
Projektin aikana ryhmän jäsenille syntyi konkreettinen kuva ohjelmistoprojektin läpiviennistä ja sen eri vaiheista. Ryhmän jäsenet omaksuivat myös projektimuotoisen työskentelytavan periaatteet. 
Projekti sisälsi lukemattoman määrän erilaisia dokumentteja. Dokumenttien kirjoittamisessa kertautui hyvin aikaisemmin opitut taidot dokumentoinnista. Tästä on varmasti hyötyä esim. gradua kirjoittaessa. Dokumenttien korjaamisessa meinasi kuitenkin monesti mennä hermot, koska dokumentit sisälsivät paljon perustelemattomia ohjaajan huomioita. Näin ohjaajan huomiot jäivät välillä asiasisällöstä irrallisiksi, joten niistä muodostui vain mekaanisia sanavaihteluja, eikä niillä ollut oppimista edistävää vaikutusta.    
Projekti sisälsi useita palavereja, joissa projektin jäsenet toimivat eri tehtävissä, kuten puheenjohtajana, sihteerinä, projektipäällikkönä tai esittelijänä. Huttusella, Lamminmäellä ja Pelkkikankaalla ei ollut ennestään paljon kokemusta kokouskäytännöstä, joten projektin palaverit olivat hyvin opettavaisia. Lapilla oli ennestään paljon kokemusta kokouksista, joten hän ei nähnyt palavereja kovinkaan opettavaisina. Palavereissa kuitenkin ”jaariteltiin” monesti aivan liikaa samoja asioita, joten ne eivät välttämättä antaneet ihan todenmukaista kuvaa ”oikeista” kokouksista. Toisaalta palaverit olivat ainoa tehokas tapa selvittää osallistujien ideoita ja tavoitteita sekä yhteisesti hyväksyttyjä etenemistapoja. Tämä vaati monesti ”jaarittelua”. 
Projektiryhmälle käytettävä ohjelmointikieli oli vieras, joten tavoitteena oli myös tutustua ja oppia käyttämään JSP-kieltä ohjelmoinnin välineenä WWW-sovelluksen toteuttamisessa. Nämä tavoiteet saavutettiin hyvin.
Kaikki ryhmän jäsenet osallistuvat projektin eri vaiheisiin ja työtehtäviin. Täten kaikki ryhmän jäsenet saivat laajan kokemuksen projektin läpiviennistä. 
5.	
Resurssit ja organisaatio
Luvussa esitellään projektiin osallistuneet henkilöt ja projektiin liittyneet resurssit.
5.1.	Henkilöt 
Projektiryhmän muodostivat tietotekniikan opiskelijat Sami Huttunen, Tatu Lamminmäki, Juha Lappi ja Eija Pelkkikangas.
Tilaajan edustajina toimivat Antti Auer virtuaaliyliopistosta sekä Jari Rantamäki OPLAA!-hankkeesta. Projektikokouksiin osallistuivat myös Kekke Hyvämäki ja Marja Kankaanranta Agora Learning Laboratorystä, Juha Merikoski fysiikan laitokselta ja Hanna Seuranen virtuaaliyliopistosta. 
Projektin alussa Agora Learning Laboratory oli yksi projektin tilaajista, mutta vähän ennen projektisopimuksen allekirjoitusta se vetäytyi projektin tilaajista. Tästä johtuen varsinaisiksi tilaajiksi jäivät vain virtuaaliyliopisto ja OPLAA!-hanke.  
Projektin vastaavana ohjaajana toimi Jukka-Pekka Santanen ja teknisenä ohjaajana Minna Hillebrand. Vesa Lappalainen osallistui projektiin Korppi-asiantuntijana. Pauli Kujala osallistui tietokantaa käsittelevään palaveriin.
Lisäksi projektissa haastateltiin HOPS-näkemysten ja -käytäntöjen selvittämiseksi Anita Malista kasvatustieteiden tiedekunnasta, Antti Niemeä tietotekniikan laitokselta sekä Tuula Maijasta ja Eeva-Liisa Tauriaista hallinnosta. 
5.2.	Tilat ja laitteet 
Projektiryhmä sai käyttöönsä tietotekniikan laitokselta Agorasta huoneen C223.3, jossa oli aluksi kolme Windows XP -konetta ja kaksi Linux-konetta. Viikolla 48 projektiryhmä sai yhden Windows XP -koneen lisää.
Koneisiin oli asennettu dokumentoinnissa ja ohjelmistokehityksessä tarvittavat ohjelmistot. Dokumentointiin käytettiin MS-Word 2000 -tekstinkäsittelyohjelmaa. Ohjelmistokehitystyökaluna käytettiin Borland Software Corporationin JBuilder 9 -ohjelmistoa. 
Linux-koneita käytettiin kehitys- ja testipalvelimena. Näihin oli asennettu tarvittavat versiot avoimen lähdekoodin alaisista Tomcat-, Postgre- ja Apache-palvelinohjelmistoista, sekä kopioitu Korppi-järjestelmän tietokanta.
6.	
Projektin jäsenten tehtävät
Luvussa kuvataan projektiin liittyneet tehtäväalueet ja projektin jäsenten välistä työnjakoa. Yksittäisiä tehtäviä esitellään tarkemmin projektin aikataulun yhteydessä liitteessä 1. Tehtävien jakautumista esitellään liitteissä 2-6.
6.1.	Tehtävätyypit
Projektiin liittyi useita tehtävätyyppejä, jotka sisältävät useita yksittäisiä tehtäviä. Projektin neljän ensimmäisen viikon aikana tehtävät liittyivät käytettäviin työkaluihin ja aihealueeseen tutustumiseen.
Selkeän tehtäväalueen muodostivat erilaiset dokumentit, joiden kirjoittamiseen ja viimeistelemiseen kului huomattava osa resursseista (katso liite 2). Dokumentointia toteutettiin koko projektin ajan tasaisesti, jotta kaikki oleellinen saatiin kirjattua dokumentteihin.
Muita selkeitä tehtäväalueita olivat tietokantojen ja tietorakenteiden suunnittelu, ohjelmointi ja visuaalinen suunnittelu.
6.2.	Projektipäällikkö
Kukin ryhmän jäsenen oli tarkoitus toimia projektipäällikkönä vuorollaan noin neljän viikon ajan. Suunnitelmaan jouduttiin tekemään muutos projektin loppupuolella siten, että Lamminmäki ei toiminut projektipäällikkönä ollenkaan. Tämä tehtiin siksi, että Lamminmäelle jäi enemmän aikaa sovelluksen koodaamiseen. Muutokseen johtaneita syitä on käsitelty tarkemmin luvussa 7. Lamminmäen tilalla projektin lopussa päällikkönä toimi Lappi. Päällikkyyden jakautuminen on kuvattu tarkemmin liitteessä 1.      
Projektipäällikön vuoron vaihto suoritettiin viikkopalaverin yhteydessä, jossa käytiin läpi projektin tila ja lähiajan suunnitelmat tarkasti. Ennen vuoron vaihtoa pidettiin palaveri ryhmän jäsenten kanssa, jossa keskusteltiin projektin tilasta.
Projektipäällikkö vastasi kokonaisuuden hallinnasta, työtehtävien jakamisesta (tehtävälistan päivittämisestä), yleisestä tiedottamisesta, esityslistan laatimisesta ja pöytäkirjan tarkistamisesta sihteerin kanssa. Projektipäällikkö toimi pääsääntöisesti myös projektipalavereiden puheenjohtajana.
6.3.	Tehtävien jakautuminen
Oppimisen tavoitteena oli, että kaikki ryhmän jäsenet osallistuvat kaikkiin tehtäväalueisiin, pyrkien näin saamaan mahdollisimman laajan kokemuksen ja näkemyksen projektin tehtävistä ja läpiviennistä.
Projektin alussa kaikki osallistuivat HOPS-käsitteen määrittämiseen ja sovelluksen yleiseen suunnitteluun. Lisäksi suunnittelimme ryhmänä käyttöliittymää ja tietokantaa. Sovelluksen yleiskuva hahmottui neljän ensimmäisen viikon aikana, jonka jälkeen tehtävät eriytyivät siten, että jokaisella oli oma vastuualueensa. 
Alkuperäinen suunnitelma toteutui tehtävien jakautumisen osalta yhtä poikkeusta lukuunottamatta. Huttusen ja Pelkkikankaan vastuualueet vaihtuivat siten, että Pelkkikangas suunnitteli käyttöliittymän Huttusen sijaan. Muutos tehtiin sen takia, koska Huttunen vastasi vaatimusmäärittelystä ja siten ei voinut samaan aikaan suunnitella käyttöliittymää.  
Huttunen vastasi haastattelujen koordinoinnista, vaatimusmäärittelystä,  projektiraportista ja tehtävälistan kuvaamisesta. Lamminmäellä päävastuuna oli ohjelmointikieleen tutustuminen ja myöhemmin koodaaminen. Lappi vastasi projektisuunnitelmasta, projektisopimuksesta ja tietokantatoteutuksesta. Pelkkikangas vastasi käyttöliittymän suunnittelusta ja sovellusraportista. 
Sovelluksen Java-luokat ovat pääosin Lamminmäen toteuttamia. Lappi auttoi Lamminmäkeä Java-luokkien SQL-kyselyissä. JSP-sivut ovat pääosin Lapin ja Lamminmäen toteuttamia, joissa Huttunen ja Pelkkikangas ovat avustaneet.
Testauksen päävastuu oli Huttusella ja Pelkkikankaalla.

7.	
Toteutunut aikataulu
Viikolla 51 saatiin viimeiset projektiin vaaditut työt tehtyä. Täten projekti kesti n. 14 viikkoa. Projekti päättyi 9.1.2004,  jolloin kaikki dokumentit oli saatu hyväksyttyä. Aikajänne oli jaettu viiteen vaiheeseen: määrittelyyn, suunnitteluun, toteutukseen, testaukseen ja viimeistelyyn.
Tarkemmin aikataulua on esitelty liitteen 1 janakaaviossa. Liitteessä 2 on kuvattu projektiin käytetty kokonaisaika sekä sen jakautuminen eri työtehtäviin. Liitteissä 3-6 on kuvattu henkilökohtaiset työtunnit sekä niiden jakautuminen työtehtävittäin.  
7.1.	Projektin vaiheet
Määrittelyvaiheessa määriteltiin projektin puitteet, tehtiin tarvittavat selvitykset aihealueesta ja tutustuttiin olemassaoleviin järjestelmiin. Määrittelyvaiheen tuloksena valmistui projektisuunnitelma ja vaatimusmäärittely.
Suunnitteluvaiheessa suunniteltiin tietorakenne ja sovelluksen rakenne, hahmoteltiin käyttöliittymää sekä tutustuttiin JSP-tekniikkaan. Suunnitteluvaiheen tuloksena valmistui sovellussuunnitelman osista tietokantasuunnitelma ja käyttöliittymäsuunnitelma. Koko sovelluksen kattavaa sovellussuunnitelmaa ei tehty, koska projektin aikataulu ei sitä mahdollistanut. Em. suunnitelmat riittivät toteutuksen aloittamiseen, eikä erillisen suunnitelman tekeminen näin olisi vienyt projektia merkittävästi eteenpäin. 
Toteutusvaihe aloitettiin Korppi-järjestelmän koodiin tutustumisella. Sovelluksen toteutus aloitettiin tietokannan luomisella. Seuraavaksi käyttöliittymähahmotelmat muutettiin JSP-sivuiksi, jonka jälkeen ohjelmoitiin tarvittavat Java-luokat. Tämän jälkeen toteutettiin sovellus JSP-tekniikalla käyttäen em. Java-luokkia. Vaiheen lopputuloksena valmistui ohjelmakoodi. 
Testausvaiheessa ohjelmaa testattiin kokonaisuutena, jolloin havaittuja virheitä ja puuttuvia ominaisuuksia korjattiin. Testauksen tulokset kuvattiin sovellusraportissa. Erillistä testausraporttia ja käyttöohjetta ei tehty.
Viimeistelyvaiheessa viimeisteltiin projekti- ja sovellusraportti, tarkastettiin projektin dokumentointi ja koottiin projektikansioon projektin tulokset. 
7.2.	
Tarkastuspisteet
Tarkastuspisteet on esitetty taulukossa 1.

Vaihe 	Tulos 	Suunniteltu esittely	Esitetty palaverissa	Hyväksytty	
Määrittely	Projektisuunnitelma
Vaatimusmäärittely	1.10.2003
8.10.2003	23.9.2003
8.10.2003	6.11.2003
6.11.2003	
Suunnittelu	Sovellussuunnitelma
- Tietokantasuunnitelma
- Käyttöliittymäsuunnitelma 	15.10.2003
-
-	-
4.11.2003
6.11.2003	-
28.11.2003
13.11.2003	
Toteutus 	Ohjelmakoodi 	28.11.2003	4.12.2003	16.12.2003	
Testaus 	Sovellusraportti	15.12.2003	10.12.2003	9.1.2004	
Viimeistely	Projektiraportti
Projektikansio	16.12.2003
15.12.2003	16.12.2003
10.12.2003	7.1.2004
9.1.2004	
Taulukko 1: Projektin vaiheet ja tarkistuspisteet.

7.3.	Muutokset suunniteltuun aikatauluun
Projektin aikataulua on kuvattu liitteessä 1, jossa harmaalla on kuvattu suunnitelma ja toteuma muilla merkeillä.
Määrittelyvaiheessa alkanut vaatimusten kirjaaminen jatkui vielä pitkälle suunnitteluvaiheeseen. Ongelmaksi muodostui yhteisesti hyväksyttyjen vaatimusten määrittely (katso luku 8.1). Aikataulusuunnitelmassa määrittelyyn ei ollut osattu varata tarpeeksi aikaa, joten se siirsi muiden töiden aloittamista. Sovellukselle asetetuista vaatimuksista oltiin monesti hyvinkin erimieltä, joten tietokannan ja käyttöliittymän suunnittelun aloitus viivästyivät. Suunnitteluvaiheen lopetus venyi siten 2,5 viikkoa. Suunnittelu oli kuitenkin hyödyllistä ja mielestämme saimme sen kautta hyvän pohjan sovellukselle
Toteutusvaiheen aloittaminen siirtyi edellä mainittujen syiden vuoksi. Tämä vaikutti siihen, että koodaus oli vielä täydessä vauhdissa, kun Lamminmäen olisi pitänyt siirtyä projektipäälliköksi. Projektiryhmä näki tärkeäksi säilyttää työrauhan Lamminmäellä, jolla oli koodauksen päävastuu. Lamminmäen tilalle projektipäälliköksi valittiin Lappi. 

8.	
Riskit ja niiden hallinta
Luvussa kuvataan projektin läpivientiin liittyviä riskejä ja niiden hallintaan liittyviä keinoja.
8.1.	Vaatimusten määrittely
Projektin alussa ei ollut tarkkaa tietoa siitä, mitä HOPS-käsite tarkoittaa. Tämän selvittämiseksi ryhmä tutustui Jyväskylän yliopiston eri laitosten opinto-oppaisiin ja ryhmä kävi haastattelemassa neljää ihmistä eri laitoksilta. Tämän jälkeen ryhmä pääsi vasta vaatimusten määrittelyyn. Vaatimusten määrittely oli työlästä, koska projektiin osallistuneilla oli välillä hyvinkin eriävät näkemykset sovelluksesta ja siihen käytettävistä resursseista.
Tämän huomattuaan ryhmä otti tavoitteekseen, että palaverissa tehdään aina konkreettisia päätöksiä ja siten saadaan vietyä projektia eteenpäin. Tämän ansiosta ryhmä sai pidettyä suunnitellun aikataulun pääpiirteittäin kasassa. Kokonaisuutena vaatimusten määrittely oli työläämpi homma kuin oli osattu ajatella ja siten se vaikutti koko projektiin läpivientiin (katso luku 7). Vaatimusten rajaaminen ja niiden priorisointi kuitenkin auttoivat projektin läpivientiä.
8.2.	Aikataulu
Tiukka aikataulu toi myös oman riskinsä aikataulussa pysymiseen. Tämä huomattiin hyvin projektin määrittelyssä ja suunnittelussa, mutta toisaalta tiukka aikataulu pakotti tekemään töitä projektin eteen. Projektiryhmän jäsenten henkilökohtaisten aikataulujen osalta pyrittiin joustamaan, jotta projekti saadaan toteutettua aikataulussa. 
Projektin läpiviennissä pyrittiin pitämään periaatteena sitä, että  aikatauluista, tehtävistä ja tapahtumista sovittiin hyvissä ajoin. Käytännössä tämä tarkoitti sitä, että tulevat tapahtumat ja tehtävät olivat tiedossa viimeistään viikkoa ennen tapahtumaa.
8.3.	Tekniset riskit
Käki-sovellus laadittiin toimimaan osana Korppi-järjestelmää. Tämä tarkoitti käytännössä sitä, että aiemmin Korpin kehityksessä tehdyt ratkaisut jouduttiin ottamaan huomioon. Tämä vaatii perehtymistä olemassaolevaan järjestelmään ja asetti vaatimuksia käytettäville toteutustavoille.
JSP-tekniikka oli kaikille projektilaisille uutta, mutta kaikilla oli kuitenkin yleistä ohjelmointikokemusta ohjelmointikursseilta ja osalla myös vastaavien töiden kautta. JSP-tekniikkaan tutustuttiin hyvissä ajoin ennen sovelluksen toteutusta ja täten se ei aiheuttanut minkäänlaisia ongelmia. 
8.4.	Ohjaajien ja muiden osapuolten ajankäyttö
Projektin etenemiseen ja aikataulussa pysymiseen vaikutti oleellisesti ohjaajien ja muiden henkilöiden, kuten ATK-tuen ja tilaajien, nopea reagointi ryhmän asettamiin kysymyksiin ja ongelmiin. 
Projektin alussa ATK-tuella oli ongelmia palvella kaikkia projektiryhmiä riittävällä nopeudella, mutta tämä ei haitannut projektia merkittävästi. Projektin puolessa välissä ATK-tuen hitaus häiritsi merkittävästi. Useista pyynnöistä ja lupauksista huolimatta neljännen Windows-koneen saaminen huoneeseen kesti neljä viikkoa, mikä hidasti ohjelmoinnin aloittamista. Kolmen viikon kuluttua neljännestä pyynnöstä saimme rikkinäisen koneen huoneeseemme ja tästä viikon kuluttua saimme vasta ehjän koneen.
Dokumentteihin liittyvän palautteen saamisen ajankohta oli erittäin huono aikataulussa pysymisen kannalta. Ongelmaksi muodostui se, että vastaava ohjaaja palautti tarkastetut dokumentit usein projektipalavereissa, mutta ei tuonut palautettaan esille palavereissa. Ryhmä ei pystynyt tutustumaan palautteeseen palaverin aikana, eikä näin pystynyt esittämään ohjaajan näkemyksiä tilaajille. Täten ryhmä joutui muuttamaan dokumentteja tilaajan tietämättä ja esittämään ne uudelleen seuraavassa palaverissa. Tämä johti siihen, että samoja asioita ”jauhettiin” toistuvasti palavereissa, eikä päätöksiä saatu aikaan. Omalta osaltaan ryhmä pyrki valmistelemaan dokumentit mahdollisimman aikaisin, mutta tällä ei ollut merkitystä ohjaajan em. menettelytavasta johtuen. 
8.5.	Muut riskitekijät
Riskinä projektin onnistumiselle pidettiin myös jäsenten mahdollista sairastumista tai muuta akuuttia menot. Viikoilla 49-50 Pelkkikangas sairastui ensimmäiseksi ja Huttunen melkein heti hän jälkeensä, mikä näkyy heidän työtunteja kuvaavista kaavioista liitteissä 3 ja 6. Sairastumiset eivät vaikuttaneet projektiin haittaavasti, vaan ainoastaan se kasvatti Huttusen ja Pelkkikankaan seuraavien viikkojen työmäärää.
Lappi oli projektin ja muiden opiskelujen ohella töissä ohjelmistosuunnittelijana keskimäärin 23 tuntia viikossa, mikä ei kuitenkaan vaikuttanut merkittävästi projektin etenemiseen.    
Projektista saatavat opintoviikot eivät täytä edes Kelan päätoimiselle opiskelulle asettamia vähimmäisvaatimuksia ja näin opiskelijoiden oli suoritettava myös muita kursseja. Projektin suuri työmäärä (yli 320 tuntia) häiritsi kuitenkin erittäin paljon muuta opiskelua ja näin ollen hidasti opintojen etenemistä. Muihin kursseihin liittyneet tentit ja muut opetustapahtumat vaikuttivat myös projektin käytettävissä oleviin resursseihin. 
Näitä riskejä pyrittiin vähentämään ottamalla tilanne huomioon työnjaossa. Työnjako oli avointa, ts. kaikki tiesivät, mitä kukin teki. Tarvittaessa projektipäällikkö jakoi töitä uudelleen.
9.	
Dokumentointi- ja palaverikäytännöt
Projektin aikana laaditiin useita dokumentteja. Kaikki dokumentit laaditiin yhteneviksi ulkoasultaan. Selkeyteen kiinnitettiin huomioita myös lähdekoodin osalta.
Projektilla oli käytössä sähköpostilista kaki@korppi.jyu.fi, jolle lähetetyt viestit arkistoituivat osoitteeseen http://korppi.it.jyu.fi/list-archive/kaki. Projektin dokumentointi on luettavissa projektin kotisivuilla http://kotka.it.jyu.fi/kaki.
9.1.	Dokumentointikäytännöt
Projektin dokumentit laadittiin Word-tekstinkäsittelyohjelmalla. Dokumenteissa käytettiin samaa tyylimäärittelyä, joka tehtiin ensimmäisen dokumentin yhteydessä. Tiedostot tallennettiin RTF-muodossa, josta ne konvertoitiin PDF-muotoon.  Suunnitelmasta poiketen WWW-sivuilla esitettiin dokumentit PDF-muodon lisäksi myös RTF-muodossa, jotta ne olisivat käytettävissä myös tulevissa projekteissa.
Lähdekoodin kommentoinnissa ja muuttujien nimeämisessä noudatettiin edeltävien projektien kanssa yhtenäistä kommentointityyliä. Jatkokehityksen helpottamiseksi lähdekoodi ja kommentit kirjoitettiin englanniksi. Lähdekoodin dokumentointi kuvataan tarkemmin sovellussuunnitelmassa.
Puheenjohtaja laati ryhmän kanssa esityslistan palaveriin ja lähetti sen projektin sähköpostilistalle. Pöytäkirjojen laatiminen hoidettiin siten, että sihteeri kirjoitti tarkat muistiinpanot ja laatii niiden pohjalta pöytäkirjan. Ryhmä (tai puheenjohtaja ja sihteeri) kävivät läpi pöytäkirjan, jonka jälkeen se lähetettiin projektin sähköpostilistalle. Projektien esityslistat ja pöytäkirjat tallennettiin TXT-muotoon. 

9.2.	Palaverikäytännöt
Projektipäällikkö toimi pääsääntöisesti palavereiden puheenjohtajana. Jokainen ryhmän jäsen toimi vuorollaan sihteerinä (katso liite 1). 
Palavereiden esityslistat valmisteltiin ja lähetettiin projektin sähköpostilistalle vähintään kaksi vuorokautta ennen palaveria. Pöytäkirjan laatiminen ja tarkkojen muistiinpanojen tekeminen oli sihteerin vastuulla. 
Kunkin kokouksen alussa esitettiin ryhmän jäsenten tuntivihkot tarkistettaviksi. Sen jälkeen hyväksyttiin edellisen palaverin pöytäkirja. Pöytäkirjassa kuvattiin käsitellyt asiat, mainittiin tehdyt päätökset ja tehtävät. Tämän jälkeen edettiin esityslistan mukaisesti.
10.	
Kokemuksia projektista
Luvussa kerrotaan ryhmän muodostumisesta. Lisäksi jokainen ryhmänjäsen kertoo henkilökohtaisista kokemuksistaan projektista.
10.1.	Ryhmän muodostuminen
Projektin alussa ryhmän jäsenistä ainoastaan Lappi ja Lamminmäki tunsivat toisensa. Projekti toteutettiin ryhmätyönä, joten oli erittäin tärkeää, että jäsenet toimivat ryhmänä. Ryhmään muodostui todella nopeasti me-henki. Tuntui, että olimme heti ryhmä, kun saavuimme ensimmäistä kertaa projektille varattuun huoneeseen. 
Hyvän ryhmähengen ansiosta ikävätkin asiat kääntyivät yleensä aina positiivisiksi. Projektin puolessa välissä saadut rannetuet osoittautuivat erittäin hyviksi ryhmähengen kohottajiksi. Etenkin eräälle vihreälle elastiselle rannetuelle jaksettiin nauraa useammankin tunnin ajan. Projektin lopussa meinasi väsymys ja turhautuminen viedä voiton projektista, mutta hyvän yhteishengen ansiosta saimme vietyä projekti kunnialla loppuun asti.   
10.2.	Sami Huttunen
Aloitin tänä syksynä viidennen vuoden yliopistolla tietotekniikan ope-linjan opiskelijana. Sovellusprojekti olisi kannattanut suorittaa jo hieman aikaisemmin, koska sen suuri työmäärä hidasti valmistumistani usealla kuukaudella. Olin suunnitellut, että aloittaisin gradun kirjoittamisen syksyllä ja saisin sen valmiiksi kevääseen mennessä. Gradun kirjoittaminen ei kuitenkaan ollut mahdollista sovellusprojektin yhteydessä, joten alkuperäisen suunnitelmani toteutuminen ei näytä enää realistiselta.
Toisaalta en ollut ikinä ajatellut, kuinka paljon joudun tekemään töitä yhden kurssin eteen. Tutkintovaatimuksissa sovellusprojekti (entinen työprojekti) on merkitty viiden opintoviikon laajuiseksi ja siten ajattelin, että se olisi kuten muutkin ”viiden opintoviikon” kurssit. Oletukseni osoittautui kuitenkin hieman vääräksi. Toivottavasti kurssista saatavat yli viiden opintoviikon menevät opintoviikot voidaan liittää tutkintooni siten, että ne nopeuttavat valmistumista. Työmäärän huomioon ottaen ei kurssin suoritus olisi ollut edes mahdollista aikaisemmin, koska kahtena edellisenä vuonna suoritin opettajan pedagogisia opintoja muiden kurssien rinnalla ja sitä ennen en ollut suorittanut kurssille vaadittavia esitietokursseja.
Suurin pelkoni kurssia kohtaan oli se, että ”onnistuuko” ryhmäjako ja minkälaisia muut ryhmän jäsenet ovat. Voin sanoa, että ainakin tämän kerran arpaonni suosi minua. Lamminmäki, Lappi ja Pelkkikangas ovat todella mukavia ihmisiä ja heidän kanssaan työskentely oli erittäin antoisaa. Ryhmän ansiosta jaksoin tehdä töitä loppuun asti.
Projektin aihe oli mielenkiintoinen, koska olin perehtynyt pedagogiikkaan kahden edellisen vuoden aikana ja täten pääsin soveltamaan opintojani. Tutustuminen yliopiston eri HOPSeihin ja tutkintovaatimuksiin antoi työlään, mutta antoisan lähtökohdan projektiin. 
Projektin puolessa välissä alkoi epäilyttää, että kuinka kerkeämme tekemään kaiken jouluun mennessä. Projektiin varattua aikaa oli minusta liian vähän, koska 14 viikkoa on todella lyhyt aika vaadittavaan työmäärään suhteutettuna tai sitten projektissa on ihan liikaa työtä käytettävissä olevaan aikaan. Näin projektin lopussa olen erittäin tyytyväinen siihen, että saimme kaiken sovitun tehtyä vaadittuun aikaan mennessä.

Projektissa opettavaisimpana kokemuksena pidin projektipäällikkönä ja sihteerinä toimimista. Projektipäällikkönä tehtävien jaon kautta pystyi konkreettisesti vaikuttamaan projektin etenemiseen. Sihteerinä jouduin opettelemaan uuden tyylin dokumentoimiseen, koska en ollut ennen kirjoittanut pöytäkirjoja. 
Kaikesta huolimatta projekti oli opettava ja mieleenpainuva kokemus. Etenkin projektin pikkujoulu piristi mukavasti harmaata syksyä.  
10.3.	Tatu Lamminmäki
Jo ennen sovellusprojektin aloitusluentoa tiesin kavereitteni kautta, mitä projekti toisi tullessaan, mutta silti projekti pääsi yllättämään työmäärällään. Vastoin toivomuksiani jouduin Korpin kehitysprojektiin. Sitä ei kauaa kuitenkaan tarvinnut harmitella, sillä jo ensimmäisellä viikolla tuli selväksi, että projektiryhmämme yhteishenki oli loistava.
Koska minulla ei ollut aikaisempaa kokemusta projektityöskentelystä, opetti projekti minulle siitä paljon. Käytännön kokemuksia omaavilta olen kuullut, että projektin palaverikäytännöt ja dokumenttien pilkunviilausten tarkkuus eivät täysin vastaa yritysmaailman todellisuutta, jonka toivon totisesti olevan totta. Koska olin projektimme "pääkoodari", opin eniten ohjelmointia eli siis ohjelmoimaan JSP-sivuja ja Java-papuja.
Projektimme aihe vaati syvällistä suunnittelua ja määrittelyä, joka venytti toteutusvaiheen alkamista. Projektin etenemisen kannalta viisainta olisi varmaankin ollut viedä projekti läpi ilman varsinaista konkreettista toteutusta. Aikaresurssien puitteissa oli nimittäin selvää, että projekti ei pysty sovellusta kokonaisuudessaan toteuttamaan. Kiireettömällä määrittelyllä ja suunnittelulla oltaisiin jatkoprojektille saatu paremmat lähtökohdat. Oppimisen kannalta ohjelmointi oli kuitenkin oleellista.
Usein tuntui, että vastaava ohjaaja oli yksinkertaisesti liian kiireinen valtavan työmääränsä takia. Vastaavalle ohjaajalle täytyy kuitenkin nostaa hattua paneutumisesta työhönsä ja ammattitaidosta dokumenttien korjauksessa.
Aikataulun venyminen aiheutti hampaitten kiristelyä ja muutoksia suunnitelmiin. Ryhmämme selvisi kuitenkin koetuksista mallikkaasti ja palavereissa sovittujen rajausten avulla saatiin projektin päämäärä taas realistiseksi. Teimme myös yhteistuumin kompromisseja. Niistä minun kannaltani oleellisin oli projektipäällikkyyteni poisjäänti, jotta koodaukselle olisi jäänyt aikaa. Tämä oli oiva osoitus siitä, että suunnitelmia muuttamalla voidaan projektin läpivientiä oleellisesti nopeuttaa.
Koska sovellusprojekti on vain kurssi muiden joukossa, ei siihen ole järkevää käyttää kohtuuttomasti aikaa. Tämä on mielestäni unohdettu ja projektilaisia kohdellaan kuin he olisivat töissä. Ryhmämme yritti tätä käsitystä parhaansa mukaan korjata ja esimerkiksi päätti jo projektin alussa, että projekti tullaan lopettamaan joulukuussa 2003. Kurssin maksimiopintoviikot (8ov, 320h/hlö) saavutettiin kaikkien osalta joulukuun puoleenväliin mennessä, joten näiltä osin ajankäyttö oli onnistuttu jakamaan oikein.
Olin suunnitellut projektin ohelle muita kursseja, joista noin puolet jouduin siirtämään myöhempään ajankohtaan. Varsinkin ohjelmoinnin alettua projektin loppupuolella työmäärä kasvoi niin, että muiden kurssien tentteihin ei ollut mahdollisuutta lukea ja projektin ulkopuolista elämää ei juurikaan ollut.
Kokonaisuutena projekti oli kuitenkin antoisa ja opettava kokemus, se antoi vaihtelua muille kursseille ja harjaannutti esiintymistaitoja, joita harvoin vapaaehtoisesti tulee kehitettyä. Uskoisin siitä myös olevan apua työelämässä. Projekti loi myös uusia ihmissuhteita ja uskon, että yhteydenpito muihin projektilaisiin tulee jatkumaan.
10.4.	Juha Lappi
Aloittaessani projektia minulla oli takana 2,5 vuotta yliopisto-opintoja, joiden aikana olin suorittanut 113 opintoviikkoa. Keväästä lähtien olin työskennellyt ohjelmistosuunnittelijana Jyväskyläläisessä IT-yrityksessä, jossa työtehtävinä oli ollut WWW-sovellusten suunnittelu ja palvelimien ylläpitotehtävät. 
Sovellusprojektin aiheeksi toivoin tietoliikenteeseen, siis pääaineeseeni, liittyvää aihetta. Keskeisiksi tavoitteiksi sovellusprojektille asetin laajan ohjelmistoprojektiin liittyvien asioiden hallitsemisen sekä oppimisen ja ohjelmointitaitojen kehittämisen. 
Projektin aloitusluennolla aiheeksi määriteltiin Korppiin liittyvä kehitysprojekti, joka ei täysin vastannut toivettani, mutta oli aiheista toiseksi paras. 
Ryhmämme kokoontui aloitusluennon jälkeen omaan palaveriin ja ryhmähenki alkoi heti muodostua. Ryhmämme aloitti projektin toteuttamisen suurella innolla ja näin projekti lähti nopeasti etenemään. Projektiryhmästämme muodostui nopeasti tiivis ryhmä, jossa asioiden käsittely sujui hyvin. Keskeiseksi tavoitteeksi asetimme sen, että projekti viedään läpi suunnitellussa aikataulussa, kuitenkin siten, että kaikki osallistuvat kaikkiin vaiheisiin ja näin oppimista tapahtuisi mahdollisimman paljon.
Projekti eteni suunnitellulla tavalla suunnitteluvaiheeseen asti, jossa projekti jumiutui vaatimusten määrittelyyn. Samoja asioita ”jauhettiin” palaverissa ja toisessa, tosin välillä hieman eri termeillä. Vaikka keskustelut olivatkin hyödyllisiä kokonaisuuden kannalta, eivät ne sopineet projektille asetettuun aikavaatimukseen (13 viikkoa). 
Omalta osaltani syksyn ohjelmasta muodostui melko tiivis. Projektin ja muiden kurssien ohella olin töissä keskimäärin 23 tuntia viikossa. Näiden lisäksi oli myös muuta ohjelmaa ja näin vuorokauden 24 tuntia tulivat melko tehokkaasti käyttöön. Muutamassa vaiheessa projektia sen tekeminen tuntui turhauttavalta, kun asiat eivät edenneet ryhmästä riippumattomista syistä, eikä mitään oppimista edistävää tapahtunut. 
Tarkasteltaessa kulunutta syksyä kokonaisuutena esiin nousee muutamia näkökohtia, joista keskeisempänä on kurssin oppimistavoitteiden toteutuminen. Sovellusprojekti (ent. työprojekti) on tietotekniikan cum laude -opintoihin kuuluva pakollinen opintojakso, jossa mielestäni keskeisenä päämääränä on projektimuotoisen työskentelytavan oppiminen, erityisesti ohjelmistoprojektin näkökulmasta. Usein projektin kuluessa kuitenkin tuntui siltä, että oppimistavoitteisiin pyrkiminen jäi sivuseikaksi sovelluksen toteutuksen ollessa keskeisenä päämääränä. Tekemällä kyllä oppii asioita, mutta ei välttämättä ymmärtämään niiden merkitystä. Projektiluennot sisälsivät paljon olennaista asiaa, mutta ne jäivät melko irralliseksi käytännön työskentelystä.
Suurimpana ongelmana oli siis se, että asioiden ymmärtämistä ei korostettu työskentelyn yhteydessä, vaan pyrittiin etenemään ala-asteelta tutulla tavalla ”leikkaa tonttu mallin mukaan”. Keskeistä mielestäni kurssissa olisi ollut projektin hallintaan liittyvien toimenpiteiden ja ohjelmistoprojektin vaiheiden ymmärtäminen sekä dokumenttien merkityksen korostaminen ulkoasun ja sanamuotojen sijaan. Dokumenttien mallit ja niille asetetut vaatimukset olivat mielestäni turhan akateemisia ja niistä puuttui yritysmaailmassa tarvittava liiketoiminnallinen näkemys. Suunnitelmien tarkkuus sinänsä kyllä antoi hyvän pohjan toteutukselle.
Opiskelun tuloksia mitataan opintoviikoilla, eikä niiden määrä tässä kurssissa vastaa käytettyä työmäärää. Samalla työmäärällä olisi helposti voinut suorittaa 16 opintoviikkoa muita opintoja. Tarkoituksenani ei ollutkaan käyttää aikaa tähän kurssiin vähimmäisvaatimusta 200 tuntia enempää. Minulle ei nimittäin ole mitään hyötyä mahdollisesti saatavista lisäopintoviikoista, sillä niitä ei pysty sisällyttämään tutkintoon. Tästä periaatteestani poikkesin ainoastaan hyvästä ryhmähengestä johtuen.
Omasta oppimisestani syksyn osalta voin todeta, että uutena asiana opin JSP-tekniikan käyttöä. Samalla tuli kerrattua Javan käyttöä ohjelmoinnissa ja ainahan ohjelmoidessa oppii uutta. Sovelluksen jäädessä melko suppeaksi ajanpuutteesta johtuen, ei kurssin aikana muodostunut selkeää kuvaa laajasta ohjelmistoprojektista. Dokumentoinnissa ei tullut juuri uusia asioita esille, mutta ainahan kertaus parantaa taitoja. Kokoustekniikat, viestintätaidot ja projektityöskentely olivat melko tuttuja entuudestaan, joten näiden osalta projekti jäi vanhan kertaamiseksi - osaamisen vahvistamiseksi.
Edellä mainitut syyt yhdessä projektille asetetun aikataulun kanssa vaikuttivat omaan suhtautumiseen tiettyihin projektissa käytettyihin toimintatapoihin. Ryhmämme toimi ehkä tietyissä tilanteissa hieman totutusta poikkeavasti, pitäen huolta myös omista oikeuksista ja opintojen etenemisestä. Asioista pystyttiin kuitenkin keskustelemaan melko avoimesti ja kriittisiinkin kommentteihimme suhteuduttiin asiallisesti, mikä oli rakentavaa projektin kannalta - kiitos siitä kaikille osapuolille!
Yhteenvetona voin todeta, että ryhmämme työmoraali oli mielestäni kokonaisuutena kiitettävää sekä toiminta aktiivista ja oma-aloitteista. Lisäksi tuli projektille asetetut tavoitteet myös saavutettua. Työskentely ryhmässämme oli myös hauskaa - elastiset rannetuet yhdessä ”pikkujoulujen” kanssa toivat hauskuutta lisää joulukuun alun ”vesisateeseen”. 
10.5.	Eija Pelkkikangas
Syyslukukauden opiskelusuunnitelmiini kuului sovellusprojektin lisäksi kolme matematiikan kurssia. Tarkoituksenani oli suorittaa kuluvan lukuvuoden aikana matematiikan aineopinnot yhtä kurssia lukuunottamatta ja samalla saattaa tietotekniikan aineopinnot sovellusprojektin myötä päätökseen. Aavistin, että syksy tulisi olemaan rankka, mutta uskoin siitä kuitenkin selviäväni. Kävi kuitenkin niin, että sovellusprojekti vaati odotettua enemmän aikaa, jonka vuoksi matematiikan kurssit jäivät vähemmälle huomiolle ja täten huonommalle menestykselle. Kolmesta suunnitellusta kurssista sain yhden rimaa hipoen läpi ja muut jäivät rästeiksi tammikuulle.
Sovellusprojektin aikana tuli kuitenkin opittua uusia asioita kokouskäytänteistä, projektityöskentelystä, dokumenttien rakenteesta ja JSP-tekniikasta. Microsoftin perustyökalujen, Wordin, Excelin ja PowerPointin, käyttö saivat kertausta, samoin kuin kuvan käsittelytaidot. Myös JBuilderin ja PostgreSQL:n käyttö tuli tutummaksi. Projektin hienoimpiin kokemuksiin kuului aiemmin käytyjen kurssien hyödyn huomaaminen. 
Sovellusprojektin aihe, HOPS-sovelluksen laatiminen, tuntui mielenkiintoiselle ja vastasi toivettani. Sovelluksen vaatimusten kasvaminen alkoi kuitenkin jossain vaiheessa hirvittää, sillä viikot kuluivat ja työtunnit karttuivat, mutta projekti ei tuntunut etenevän. Jossain vaiheessa syksyä jouduin perustelemaan itselleni sovelluksen mielekkyyttä ehdotetuilla ominaisuuksilla. Käyttöliittymän suunnitteluvaiheessa näkymät alkoivat vilahdella unissakin ja ajatukset kietoutuivat tavalla tai toisella projektiin ja sen läpivientiin. 
Suuresta työmäärästä huolimatta sovellusprojektin teki inhimilliseksi mukava ja hyvin toiminut ryhmä. Projektihuone toimi tukikohtana, jonne kukin jossain vaiheessa päätyi.
Sovellusprojekti kokonaisuutena oli työläs, mutta myös opettava kokemus, jonka puitteissa oli hyvä opetella projektityöskentelyn taitoja.

11.	
Yhteenveto
Dokumentissa on kuvattu Käki-projektin läpivientiä. Projektin tehtävänä oli toteuttaa prototyyppi WWW-pohjaisesta henkilökohtaisten opintosuunnitelmien laatimis-, hallinta- ja seurantasovelluksesta Jyväskylän yliopiston käyttöön. 
Projektin alkuvaiheessa laadittiin projektisuunnitelma, jossa kuvattiin projektin läpivienti. Projektin edetessä valmistui myös vaatimusmääritelmä, jonka teon yhteydessä huomattiin aiheen olevan liian laaja käytettäviin resursseihin nähden. Samalla huomattiin, että henkilökohtaisia opiskelusuunnitelmia ei voida esittää ilman tutkintovaatimuksia ja opintokokonaisuuksia. Aihetta rajattiinkin siten, että projekti suunnitteli ja toteutti sovelluksen sihteerin ja vieraan käyttöliittymän osalta ja suunnitteli sovelluksen opiskelijan käyttöliittymän osalta. Sovelluksen määrittely vei odotettu enemmän aikaa. 
Tehdyn rajauksen perusteella tehtiin tarvittavat suunnitelmat ja aloitettiin sovelluksen ohjelmointi. Aikataulusta muodostui tiukka, mutta ryhmä pystyi siinä kuitenkin pysymään. Projektin loppuvaiheessa valmistui Sovellusraportti, jossa kuvataan sovellus kokonaisuutena, ja joka toimii jatkokehityksen lähtökohtana. Kyseiseen raporttiin on myös kirjattu jatkokehitys- ja parannusideoita.

Lähteet
[1]    Hillebrand Minna, Silván Markus, Vanhanen Antti ja Ylitalo Marko, ”Koppelo-projektin projektikansio”, Jyväskylän yliopisto, tietotekniikan laitos, 2002.
[2]    Hilpinen Toni, Koivuniemi Marko, Mäkinen Jussi, Nurminen Miika, ”Kiuru-projektin projektikansio”, Jyväskylän yliopisto, tietotekniikan laitos, 2002.
[3]    Huttunen Sami, Lamminmäki Tatu, Juha Lappi ja Eija Pelkkikangas, ”Käki-projektin projektikansio”, Jyväskylän yliopisto, tietotekniikan laitos, 2003.
[3]    Hyvämäki Kekke, ”Hops-kartoituksen analysointia”, Jyväskylän yliopisto,  Virtuaaliyliopistohanke, 2003.
[4]    Jukka Korpela, ”Kirjoita asiaa. Arkisen asiakirjoittamisen opas”, saatavilla html-muodossa <URL: http://www.cs.tut.fi/~jkorpela/kirj/>, 30.12.2002.
[5]    Jukka Korpela, ”Ohjeita ja tietoja suomen kielestä”, saatavilla html-muodossa <URL: http://www.cs.tut.fi/~jkorpela/kielikello/>, 1995.
[6]    Korppi-kehittäjät, ”Korppi-järjestelmän ominaisuudet ja kehitys”, saatavilla html-muodossa <URL: https://korppi.it.jyu.fi/kotka/portal/tietoja.html>, Jyväskylän yliopisto, tietotekniikan laitos, 21.8.2003. 
[7]    Lappalainen Teemu, Valkonen Anu, Vieru Mikko ja Viklund Markus, ”Uraani-projektin projektikansio”, Jyväskylän yliopisto, tietotekniikan laitos 2002.
[8]    Lesonen Minna, Pekkanen Hannu, Tawast Tuukka ja Uuksulainen Heikki, ”Korppi-projektin projektikansio”, Jyväskylän yliopisto, tietotekniikan laitos, 2001.
[9]    Lintunen Sampsa, Pöyhönen Tiina, Vähä-Ruka Teemu ja Ylönen Timo, ”Kottarainen-projektin projektikansio”, Jyväskylän yliopisto, tietotekniikan laitos, 2003.
[10]  Peltomäki Juha ja Silander Simo, ”Java 2 ohjelmoinnin peruskirja”, Docendo Finland Oy, 2002.
[11]  Santanen Jukka-Pekka, ”Tietotekniikan Sovellusprojektien ohje”, Jyväskylän yliopisto, tietotekniikan laitos, 2002.
[12]  Santanen Jukka-Pekka, ”Opinnäytteiden kirjoittaminen, lyhyt oppimäärä”, Jyväskylän yliopisto, tietotekniikan laitos, 2000.

Liitteet
Liitteessä 1 kuvataan projektin suunnitellut ja toteutuneet viikoittaiset tehtävät. Liitteessä 2 kuvataan projektiin käytetyt projektiryhmän jäsenten yhteenlasketut työtunnit viikoittain ja tehtävittäin. Liitteissä 3-6 on kuvattu jokaisen projektiryhmän jäsenen henkilökohtaiset työtunnit viikoittain ja tehtävittäin.
 Liite 1. Projektiaikataulu

Liite 2. Työtunnit viikoittain ja tehtävittäin

Liite 3. Huttusen työtunnit viikoittain ja tehtävittäin

Liite 4. Lamminmäen työtunnit viikoittain ja tehtävittäin

Liite 5. Lapin työtunnit viikoittain ja tehtävittäin

Liite 6. Pelkkikankaan työtunnit viikoittain ja tehtävittäin