PROJEKTISUUNNITELMA. Polku http://code.google.com/p/polku-projekti/ Versio 1.1. Projektiryhmä



Samankaltaiset tiedostot
ESITUTKIMUS. Polku Versio 0.1. Projektiryhmä

PROJEKTISUUNNITELMA. Polku Versio 0.1. Projektiryhmä

ESITUTKIMUS. Polku Versio 1.0. Projektiryhmä

LOPPURAPORTTI. Polku Versio 1.0. Projektiryhmä

VAATIMUSMÄÄRITTELY. Polku Versio 1.2. Projektiryhmä

VAATIMUSMÄÄRITTELY. Polku Versio 1.1. Projektiryhmä

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

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

Projektisuunnitelma. Luuppi verkkoportaali. versio 1.2

Projektityö

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Esitutkimus. Luuppi, versio 1.0. Petri Ikävalko Panu Tunttunen.

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

Reilun Pelin työkalupakki: Kiireen vähentäminen

SALAKIRJOITUKSEN VAIKUTUS SUORITUSKYKYYN UBUNTU käyttöjärjestelmässä -projekti

LOPPURAPORTTI Paperikonekilta Versio 1.0

Convergence of messaging

Siimasta toteutettu keinolihas

Kieliaineistojen käyttöoikeuksien hallinnan tietojärjestelmä

Kuopio Testausraportti Asiakkaat-osakokonaisuus

Playoff kokouspöytäkirja 4

Projektisuunnitelma Nero-ryhmä

Hajautettu Ohjelmistokehitys

Lohtu-projekti. Testaussuunnitelma

TIEA4 Projektityö, 5-10 op.,

Kuopio Testausraportti Kalenterimoduulin integraatio

Projektisuunnitelma. Laitteiston ja kalusteiden hankinta, versio WEB MAGIA OY Laatija Oula Kangas

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

PROJEKTIN OHJAUS JA SEURANTA JOUNI HUOTARI

SOVELLUSPROJEKTIN ARVIOINTILOMAKE

Ylläpitodokumentti Mooan

Tietotekniikan Sovellusprojektit

AS Automaatio ja systeemitekniikan projektityöt Projektisuunnitelma Syksy 2009 A09 05 OSGi IRC Bot For Coffee Maker

Internet-pohjainen ryhmätyöympäristö

AS Automaatio- ja systeemitekniikan projektityöt

T Testiraportti - järjestelmätestaus

Skype for Business ohjelman asennus- ja käyttöohje Sisällys

Vastuu- ja tehtäväalueet sekä tiedonvälitys OSCu-kursseilla

Orientaatio ICT-alaan. Projekti

UCOT-Sovellusprojekti. Testausraportti

PROJEKTISUUNNITELMA. FotMana17

A14-11 Potilaan mittaustiedon siirtäminen matkapuhelimeen

Lego Mindstorms anturit

ADE Oy Hämeen valtatie TURKU. Tuotekonfigurointi. ADE Oy Ly Tunnus:

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

TYÖOHJEET VR-HYVINKÄÄ

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

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

KÄYTETTÄVYYSTESTAUS OSANA KETTERÄÄ KEHITYSTÄ

TIEA4 Projektityö, 5-10 op.,

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

Projektisuunnitelma Viulu

Käyttöliittymä ja tuotantokäsikirjoitus. Heini Puuska

Good Minton Sulkapalloliiton Kilpailujärjestelmä SEPA: Heuristinen arviointi

Testaussuunnitelma Labra

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

TOIMINNALLINEN MÄÄRITTELY MS

Skype for Business ohjelman asennus- ja käyttöohje Sisällys

Alkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS CT10A Kandidaatintyö ja seminaari

BLOGGER. ohjeita blogin pitämiseen Googlen Bloggerilla

PS-vaiheen edistymisraportti Kuopio

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

Tik Ohjelmistotuoteliiketoiminta

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

OHJ-3010 Ohjelmistotuotannon perusteet. Ohjelmistoprojektin hallinta

Kansallisen palveluväylän pilotoinnin tukeminen. JulkICTLab-projektihakemus

Vuoro Sähköisen työaikaraportin käyttöohje

KOODAAKO PROJEKTIPÄÄLLIKKÖ?

Projektisuunnitelma. (välipalautukseen muokattu versio) Vesiprosessin sekvenssiohjelmointi ja simulointiavusteinen testaus

Tarjoussuunnitteluun työkalu

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

Lyseopaneeli 2.0. Käyttäjän opas

Lakki. Lisää ot sik k o osoit t am alla. Nöyrästi vain lakki kourassa... Jussi Vänskä Espotel Oy. vierailuluentosarja OTM kurssi 2010

Arvioinnista kehittämiseen

Bitnami WordPress - Asenna WordPress koneellesi. Jari Sarja

SEPA päiväkirja. Dokumentti: SEPA_diary_EM_PV.doc Päiväys: Projekti : AgileElephant Versio: V0.9

Uudelleenkäytön jako kahteen

Scrum is Not Enough. Scrum ei riitä. Ari Tanninen & Marko Taipale. Nääsvillen oliopäivä 2009 Tampereen teknillinen yliopisto 9.12.

File [Otsikko] Projektisuunnitelma. SPT2014 Selvitysprojekti projektihallinnan työkaluista

Projektisuunnitelma. Projektin tavoitteet

1 Aateliset. 1.1 Johdanto. 1.2 Organisaatio

Työkalut ohjelmistokehityksen tukena

A4.1 Projektityö, 5 ov.

OTM-HANKE. Opintohallinnon tietojärjestelmän modernisointi - tilannekatsaus

Aika Vaihe Lopputulos

Kuntasektorin yhteineset viitearkkitehtuurit Tiedon- ja asianhallinta Johtamisjärjestelmä

Projektijohtaminen. Ohjelma Paikka: HAUS kehittämiskeskus, Munkkiniemen koulutustalo, Hollantilaisentie Helsinki

Ohjelmistojen mallintaminen, kurssikoe esimerkkivastauksia

TIEDONKULKU. PROJEKTITYÖ Tik Wclique

T Testiraportti - integraatiotestaus

Projektisopimus. 1. Sopimuksen osapuolet. 2. Määrittelyt. 2.1 Johtoryhmä. 2.2 Suunnitteludokumentit

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

Onnistunut Vaatimuspohjainen Testaus

Internetin hyödyt ja vaarat. Miten nettiä käytetään tehokkaasti hyväksi?

AS Automaatio- ja systeemitekniikan projektityöt - Projektisuunnitelma

Toteutusvaihe T2 Edistymisraportti

Oy Karltek Ltd internet-sivujen uusiminen. Eveliina Aaltonen

Sosiaalihuollon valtakunnallisten tjpalveluiden. I-vaihe

IT2015 EKT ERITYISEHTOJA OHJELMISTOJEN TOIMITUKSISTA KETTERIEN MENETELMIEN PROJEKTEILLA LUONNOS

Transkriptio:

PROJEKTISUUNNITELMA Polku http://code.google.com/p/polku-projekti/ Versio 1.1 Projektiryhmä Janne Pihlajaniemi Antti Jämsén Maria Hartikainen Pekka Kallioniemi Jorma Laajamäki Panu Tunttunen Nina Tyni Joonas Jokiniemi

Versiohistoria Päiväys Versionumero Tekijät Muutosten syy Muutokset 04.10.09 0.1 Koko ryhmä. Raakaversio sisäistä katselmointia varten 07.03.10 1.0 Antti Jämsén Sprinttien sisältöä tarkastettu 15.03.10 1.1 Janne Pihlajaniemi Dokumentin muotoilujen korjauksia - Vaiheistus korjattu ja henkilöstön rooleja täsmennetty Sisällysluetteloa ja etusivua korjattu 2

Sisällysluettelo 1 Johdanto... 5 1.1 Tarkoitus ja kattavuus... 5 1.2 Tuote ja ympäristö... 5 1.3 Määritelmät, termit ja lyhenteet...5 1.4 Viitteet...5 1.5 Yleiskatsaus dokumenttiin... 6 2 Nykyinen järjestelmä... 7 2.1 Vanha järjestelmä...7 2.2 Muut vastaavat järjestelmät... 7 3 Hyödyt ja haitat...8 3.1 Projektin hyödyt...8 3.2 Projektin haitat...8 4 Projektin organisointi... 9 4.1 Henkilöstö ja roolit... 9 4.2 Sidosryhmät... 9 Oman organisaation sisällä... 9 Asiakas... 9 4.3 Projektiryhmän koon muuttaminen... 10 5 Projektin tavoitteet ja päättyminen...11 5.1 Projektiryhmän tavoitteet...11 5.2 Asiakkaan tavoitteet... 11 5.3 Projektin tavoitteet... 11 5.4 Projektin keskeyttämiskriteerit... 11 5.5 Projektin päättämiskriteerit...11 6 Projektin ositus ja vaiheistus...12 6.1 Välineet ja menetelmät... 12 6.2 Kehitysmalli...12 6.3 Vaiheistus... 12 6.4 Työmääräarviot... 14 6.5 Toimituspaketti... 15 7 Seuranta ja ohjaus... 15 7.1 Ryhmän sisäinen... 15 7.2 Ryhmän ulkopuolinen...15 Asiakas... 15 Kurssi... 16 8 Standardit, direktiivit ja määräykset... 16 8.1 Standardit ja suositukset... 16 8.2 Luottamuksellisuus... 16 8.3 Tekijänoikeudet...16 9 Tunnistetut riskit...17 3

9.1 Henkilöstöriskit...18 9.2 Asiakasriskit...21 9.3 Organisaatioriskit...23 9.4 Teknologiariskit... 25 9.5 Tuoteriskit... 26 9.6 Riskien seuranta...27 10 Koulutussuunnitelma...28 10.1 Projektiryhmän sisäinen...28 10.2 Asiakkaalle tarjottava...28 11 Asennussuunnitelma...29 12 Käyttöönottosuunnitelma... 30 13 Kustannukset...31 14 Hylätyt ratkaisuvaihtoehdot ja jatkokehitysajatuksia...32 14.1 Alustaa koskevat hylätyt ratkaisut... 32 14.2 Jatkokehitysajatuksia... 32 4

1 Johdanto 1.1 Tarkoitus ja kattavuus Dokumentin tarkoituksena on kuvata, mitä projektiryhmä aikoo tehdä käytössään olevilla resursseilla seuraavan noin viiden kuukauden aikana, sekä miten näitä resursseja on käytettävä projektin tavoitteen saavuttamiseksi. Lisäksi, suunnitelma pyrkii kuvaamaan projektiin liittyviä riskejä, toteutusvälineitä ja mahdollisuuksia. Suunnitelma toimii myös seurantavälineenä ja vertailukohteena sille, miten hyvin projektin toteutus onnistuu. Projekti toteutetaan osana Tampereen yliopiston tietojenkäsittelytieteiden laitoksen Projektityökurssia. 1.2 Tuote ja ympäristö Projektin tarkoituksena on luoda web-sovellus pitkäaikaisten yhteistyöprosessien ja -projektien seurantaan Helsingin kaupunginosayhdistykset ry:lle. Sovelluksella on mahdollisuus tallentaa, muokata ja poistaa tietoa erilaisista tapahtumista, niihin liittyvistä toimijoista sekä näiden välisistä suhteista. Tuote mahdollistaa tapahtumien ja toimijoiden listaamisen ja auttaa näin ollen projekteihin liittyvässä raportoinnissa. 1.3 Määritelmät, termit ja lyhenteet LAMP - Kokoelma avoimen lähdekoodin ohjelmia, jotka yhdessä muodostavat wwwpalvelimen jonka alla voidaan suorittaa dynaamisia web-sivustoja Apache Avoimeen lähdekoodiin perustuva palvelinohjelma PHP WWW-ohjelmointiin suunniteltu ohjelmointikieli MySQL SQL-tietokannan hallintajärjestelmä. Google code Sivusto projektin dokumenttien ja avoimen lähdekoodin ylläpidolle Eclipse Ohjelmointi- ja kehitysympäristö SVN Subversion-versionhallinta. SCRUM Ketterän ohjelmistokehityksen menetelmä Sprintti Projektin ajallinen osakokonaisuus. Sprintin kesto on noin kolme viikkoa. Käytettävyysryhmä Projektityökurssin osallistujista koottu erillinen ryhmä, joka auttaa muita projektityökurssin ryhmiä käytettävyysasioissa. 1.4 Viitteet PHP: http://php.net/ 5

MySQL: http://mysql.com/ Apache: http://httpd.apache.org/ Eclipse: http://www.eclipse.org/ Tortoise SVN: http://tortoisesvn.tigris.org/ Robot Framework: http://robotframework.org/ Google Code http.//code.google.com SCRUM - http://fi.wikipedia.org/wiki/scrum 1.5 Yleiskatsaus dokumenttiin Luvussa 1 esitellään projektin ympäristö sekä listataan yleisimmät lyhenteet ja yhdenmukaistetut termit. Luvussa 2 kerrotaan projektin tuotetta vastaavista sovelluksista. Luvussa 3 esitellään projektin mahdolliset hyödyt ja haitat. Luvussa 4 kerrotaan projektin henkilöstöstä ja esitellään projektille oleelliset sidosryhmät. Luvussa 5 määritellään projektiryhmän ja asiakkaan tavoitteet ja päättymiskriteerit. Luvussa 6 selvitetään projektissa käytettävät välineet ja menetelmät, kehitysmalli sekä aikataulutus. Luvussa 7 kerrotaan projektin sisäisistä ja ulkoisista yhteydenpitokanavista sekä seurantamenetelmistä. Luvussa 8 listataan projektin kannalta oleellisimmat standardit, määritykset ja määritellään projektin ja siinä syntyvien keksintöjen omistusoikeudet. Luvussa 9 listataan projektissa tunnistetut riskit tietoineen sekä esitellään projektin riskienhallintasuunnitelma projektille. Luvussa 10 kerrotaan projektiryhmän sisäisestä sekä asiakkaalle mahdollisesti myöhemmin tarjottavasta koulutuksesta. Luvussa 11 kuvataan projektissa tuotettavan sovelluksen asennussuunnitelma. Luvussa 12 kuvataan projektissa tuotettavan sovelluksen käyttöönottosuunnitelma. Luvussa 13 arvioidaan projektin kustannuksia sekä projektikurssin että reaalimaailman työprojektin näkökulmasta. Luvussa 14 listataan ja kuvataan hylätyt ratkaisuvaihtoehdot sekä jatkokehitysajatukset. 6

2 Nykyinen järjestelmä 2.1 Vanha järjestelmä Kyseiseen tehtävään ei ole olemassa mitään nykyistä järjestelmää. Henkilöstö on kirjannut tapahtumat ja toimijat kukin omalla tavallaan satunnaisiin tekstitiedostoihin ym. dokumentteihin, minkä johdosta niiden hallinta ja jakaminen on ollut hyvin työlästä. Olemassa oleva menetelmä tiedonhallintaan on rajoittunut, joten yhteinen sovellus kyseiseen tehtävään siis on todella tarpeen. 2.2 Muut vastaavat järjestelmät Yleisiä tiedonhallintajärjestelmiä on olemassa useita, mutta asiakkaan vaatimusmäärittelyjen mukaisesti valmista pohjaa pitäisi muokata hyvin paljon. Näimme parhaaksi luoda kokonaan uuden järjestelmän vastaamaan asiakkaan tarpeita. 7

3 Hyödyt ja haitat 3.1 Projektin hyödyt Toteutettavan järjestelmän tarkoituksena on helpottaa ja nopeuttaa projektien seurantaa ja arkistointia, eli sovellus toimii verkostoiden ja niiden tapahtumatietojen hallinnoimisen apuna. Järjestelmään kirjataan ylös verkostoprosessissa suoritettuja tapahtumia, toimijoita ja niiden yhteyksiä sekä huomioita. Huomiot toimivat eräänlaisina muistiinpanoina tapahtumista ja toimijoista, joihin reagoidaan mahdollisimman pian tai joita selataan vasta tarvittaessa. Prosessiseurannan avulla käyttäjät pystyvät paremmin seuraamaan menneitä ja nykyisiä projekteja sekä niiden tapahtumia vähentäen ylimääräistä työtä arkistoitujen asioiden käsittelyssä. 3.2 Projektin haitat Sovelluksen käyttöönotto voi aiheuttaa vaikeuksia uudessa ympäristössä, mutta oletus toteutuksen aikana on, ettei suurempia ongelmia synny käyttöönottovaiheessa. Ohjelmiston käytön mahdollinen koulutus sekä ongelmatilanteet voidaan laskea ajallisiksi ja rahallisiksi haitoiksi. 8

4 Projektin organisointi 4.1 Henkilöstö ja roolit Projektipäälliköt Janne Pihlajaniemi Vastuualueet: viikkopalaverien vetäminen ja tilanvaraus niitä varten ym. ryhmän tapaaminen Tampereella Antti Jämsén Työryhmä Vastuualueet: tiedottaminen asiakkaalle, asiakastapaamiset Helsingissä, viikkoraportit Maria Hartikainen Nina Tyni Dokumentit, sovelluksen testaus Tietokanta, sovelluksen koodaus Jorma Laajamäki Tietokanta, sovellusalustan ylläpito Panu Tunttunen Käyttöliittymä, sovelluksen koodaus Pekka Kallioniemi Käyttöliittymä, sovelluksen koodaus Käytettävyysryhmän edustaja Joonas Jokiniemi 4.2 Sidosryhmät Käyttöliittymä, käytettävyys Tässä kappaleessa listataan projektiin liittyvät sidosryhmät. Oman organisaation sisällä Tampereen yliopisto tarjoaa projektin käyttöön tiloja sekä svn-tietovaraston. Ryhmän jäsenet osallistuvat myös yliopiston tarjoamaan opetukseen. Kurssin puitteissa ryhmän käytettävissä on myös erillinen käytettävyysryhmä. Kurssin luennoitsijana ja vastuuhenkilönä toimii Timo Poranen (timo.t.poranen@uta.fi). Asiakas Projektin asiakas on Helsingin kaupunginosayhdistykset ry (Helka), jonka edustajina toimivat Ilari Kajaste (ilari.kajaste@helka.net), Terhi Vilkman (terhi.vilkman@helka.net) ja Anna Kanervo (anna.kanervo@helka.net). 9

4.3 Projektiryhmän koon muuttaminen Projektiryhmä on nykyisellään sopivan kokoinen, mutta tarvittaessa projekti pystyttäneen viemään läpi, vaikka joku projektiryhmäläisistä keskeyttäisikin kurssin. Tämä kuitenkin lisäisi työpainetta muilla projektiryhmän jäsenillä ja työnjako täytyisi miettiä tarkkaan uudelleen. Jos kaksi tai useampi projektiryhmäläisistä lopettaisi kesken kaiken, olisi projektin läpivienti jo todellisisessa vaarassa ja silloin tarvittaisiin paljon venymistä muilta ryhmän jäseniltä tai ainakin sovelluksen vaatimusten vähentämistä. Käytettävyystiimi toimii siten joustavasti, että sieltä voi saada lisäresursseja tarvittaessa esim. jonkin vaikean käytettävyysongelman ratkaisemiseen tai joku muu käytettävyysryhmän jäsenistä voi tuurata Joonas Jokiniemeä, jos hän joutuisi jättämään kurssin kesken tai olisi muusta syystä estynyt pitkällä aikavälillä osallistumaan projektiin. Projektipäälliköiden kohdalta olisi erityisen hankalaa, jos Janne Pihlajaniemi joutuisi jättämään kurssin kesken, koska toinen projektipäällikkö Antti Jämsén asuu Helsingissä, eikä täten pääse joka viikko osallistumaan ja vetämään viikkopalavereita. Näillä näkymin ryhmän koko on siis varsin hyvä ja toivottavasti tämä sama miehitys säilyy koko projektin ajan. 10

5 Projektin tavoitteet ja päättyminen 5.1 Projektiryhmän tavoitteet Projektiryhmän tavoitteena on tehdä sovellus, joka vastaa asiakkaan tarpeita. Sovellus on tarkoitus saada valmiiksi kurssin osalta annetussa aikataulussa. Koska kyseessä on pakollinen kurssi, on ryhmän tavoitteena luonnollisesti myös itse kurssin suorittaminen ja opintopisteiden saaminen. Projektiin liittyy myös odotuksia uuden oppimisesta, esimerkiksi ennestään vieraaseen ohjelmointikieleen tutustumisesta ja projekteissa mukana olemisesta. 5.2 Asiakkaan tavoitteet Asiakkaan tavoitteena on saada mahdollisimman helppokäyttöinen järjestelmä pitkäaikaisten yhteistyöprosessien ja -projektien seurantaan. Tärkeää on, että sovelluksessa on kaikki tarvittavat ominaisuudet, ja se tukee pitkäaikaista käyttöä. Tavoitteena on, että sovelluksella käyttäjä pystyy syöttämään tapahtumia, toimijoita ja niiden välisiä suhteita tietokantaan. Tapahtumat ovat aikasidonnaisia, ja niihin voi myös liittyä huomautuksia, jotka voivat olla joko aktiivisia (vaativat käyttäjän toimenpiteitä) tai passiivisia. Tapahtumia tulee myös pystyä kokoamaan suuremmiksi kokonaisuuksiksi. Tapahtumat ja toimijat voivat yhtä aikaa kuulua useaankin laajempaan kokonaisuuteen. Sovelluksen tulee kyetä tekemään listauksia tapahtumista käyttäjän valitsemilta ajanjaksoilta. Listauksia pitää pystyä muodostamaan myös toimijoista. Eri listauksien välillä tulee olla linkitykset niin, että esimerkiksi tapahtumien listauksesta on mahdollista siirtyä tapahtumaan liittyvän toimijan listaukseen. Näiden siirtymien tulee olla mahdollisimman sujuvia. 5.3 Projektin tavoitteet Projektin tavoitteena on toteuttaa omat ja asiakkaan vaatimukset mahdollisimman hyvin. Projekti on tarkoitus saada käytettävissä olevan ajan ja resurssien puitteissa mahdollisimman onnistuneeseen päätökseen. 5.4 Projektin keskeyttämiskriteerit Projekti voidaan keskeyttää, jos huomataan, että sen valmiiksi saattaminen ei jostain syystä tule onnistumaan, tai sen jatkaminen ei ole enää mahdollista esimerkiksi tarpeeksi monen projektiryhmän jäsenen keskeytettyä kurssin. Myös asiakas voi vetäytyä projektista, mitä ei kuitenkaan pidetä todennäköisenä. 5.5 Projektin päättämiskriteerit Projekti päättyy, kun sovellus on valmis, tai kaikki projektin osapuolet ovat tyytyväisiä lopputulokseen. Projektityökurssin kannalta projektin tulee olla valmis ja päättyä viimeistään 6.3.2010. 11

6 Projektin ositus ja vaiheistus 6.1 Välineet ja menetelmät Projektissa hyödynnetään GoogleWikiä, joka on monipuolinen Wiki-työkalu projektityöskentelyyn. Kotisivu löytyy osoitteesta: http://code.google.com/p/polku-projekti/. Projektin kotisivulta löytyy myös projektin tuottamat dokumentit ja sitä käytetään mm. tiedostojen ja tiedon jakamiseen ryhmäläisten kesken. Tuntilistaukset ylläpidetään Google-dokumenttien taulukkolaskennassa, johon jokainen ryhmäläinen käy joka viikko viimeistään sunnuntaina kirjaamassa edellisviikon tuntinsa. Google Groupsissa on luotu sähköpostilista, jonka avulla tietoa saadaan nopeasti lähetettyä ryhmän kesken. Yhteydenpito projektin aikana tapahtuu pääasiallisesti sähköpostin kautta, mutta projektilla on myös oma IRC-kanava, jota viimeistään ohjelmointivaiheessa on tarkoitus hyödyntää. Asiakas oli jo etukäteen määritellyt tarkkaan ympäristön, jossa sovellusta ajetaan eli projektiryhmällä ei asiassa ollut sen enempää työtä. Järjestelmä toteutetaan LAMPympäristöön: Palvelin: Linux Ubuntu Server 8.04.3 LTS Web-palvelin: Apache Tietokanta: MySQL 5.0.51a-3ubuntu5.4 Ohjelmointikieli: PHP 5.2.4-2ubuntu5.7, Suhosin-Patch Kehitysympäristönä projektilla toimii tietojenkäsittelytieteiden laitoksen tarjoama virtuaalipalvelin, jossa on palvelinohjelmistona perusasennettu Debian GNU/Linux 5.0. Vaikka palvelin ei olekaan sama kuin asiakkaan käytössä oleva, jolla sovellus tulee pyörimään, niin se on kuitenkin niin lähellä samaa, ettei siitä uskota seuraavan ongelmia. Sovelluksen tulee toimia ainakin Mozilla Firefox-, Internet Explorer- ja mielellään myös Opera- selaimen uusimmassa versiossa (eli vähintään versiossa, joka on tällä hetkellä uusin). 6.2 Kehitysmalli Projektimme kehitysmallina käytetään Scrumia (http://fi.wikipedia.org/wiki/scrum). Käytännön syistä johtuen Scrumia ei kuitenkaan noudateta sillä tarkkuudella kuin yritysmaailmassa, koska päivittäisiin tapaamisiin ei ole mahdollisuutta. Sähköpostia ja IRCkanavaa hyödyntäen kuitenkin pyritään korvaamaan päivittäiset tapaamiset. Projektin vaatimat dokumentit kirjoitetaan mahdollisimman tarkasti koko sovelluksesta, mutta niitä täydennetään koko projektin ajan aina kuhunkin sprinttiin liittyvien asioiden kohdalla. Dokumentoinnissa siis pyritään kattamaan jo ensi alkuun koko sovellus, josta sitten jaetaan suoritettavia tehtäviä jokaiseen sprinttiin. Käytettävyyteen ja käyttöliittymän suunnitteluun liittyvissä sprinteissä, projektiin osallistuu myös ulkopuolisen käytettävyysryhmän edustaja. 6.3 Vaiheistus Projektin aikana dokumentteja kasvatetaan vähitellen. Tästä johtuen valmistumispäivämäärät 12

eivät projektin päättymispäivää lukuun ottamatta ole ehdottomia. Sprintti Sisältö Viikot Pääajankohdat #1: Projektin aloitus Projektin käynnistäminen Aiheeseen tutustuminen Ideointi Projektisuunnitelma Käytettävyyskartoitus 38-41 Katselmointi: 07.10.09 Esitutkimus: 22.09.09 Projektisuunnitelma: 04.10.09 Käytettävyyskartoitus: 09.10.09 #2: Vaatimusmäärittely ja suunnittelu #3: Proton muodostus ja ohjelmoinnin aloitus #4: Proton muodostus ja ohjelmointia #5: Ohjelmointia, katselmointia ja korjausta #6: Ohjelmointia ja katselmointia #7: Ohjelmointia ja testaamista Ohjelmointityökalujen asentaminen Ohjelmointityökaluihin tutustuminen Käyttöliittymän suunnittelu Tietokannan suunnittelu Tietokannan ER-malli Käyttöliittymäsuunnitelma Vaatimusmäärittely Tietokannan muodostaminen Käyttöliittymän muodostaminen Staattisen proton tekemisen aloitus Ohjelmoinnin aloitus Staattinen proto valmis Testidata syötetty tietokantaan 8% valmiina Ohjelmointi jatkuu Katselmointia ja korjaamista asiakkaan kommenttien perusteella 17% valmiina Ohjelmointi jatkuu Session hallinnan toteuttaminen Testaus-suunnitelman tekeminen ja katselmointi 77% valmiina Ohjelmointi jatkuu vielä, lähinnä kuitenkin hienosäätöä eikä uusien ominaisuuksien toteuttamista Bugien korjaus Testaamista Sovelluksen toimittanen 42-45 Katselmointi: 06.11.09 Vaatimusmäärittely: 03.11.09 46-48 Katselmointi: 27.11.09 49-51 Katselmointi: 16.12.09 Projektiesitys: 09.12.09 1-3 Katselmointi: 22.01.10 Testaussuunnitelma: 21.01.10 4-6 Katselmointi: 15.02.10 7-9 Katselmointi: 04.03.10 Testausraportti 1: 02.03.10 Testausraportti 2: 03.03.10 Projektikertomus: 07.03.10 Loppuraportti: 07.03.10 13

Projektin päättäminen asiakkaalle heidän sisäistä testausta varten (koska mm. hieman erilainen ympäristö kuin kehitysympäristö) Loppujen dokumenttien kirjoittaminen 93% valmiina Lopputapaaminen asiakkaan kanssa Projekti-CD 100% valmiina 11 Lopputapaaminen 18.03.10 0.1 6.4 Työmääräarviot Projektiryhmän jäsenten käytettävissä olevien työtuntien lukumäärä / viikko: Projektiryhmän jäsen Työtunnit / viikko Janne Pihlajaniemi 10 Antti Jämsén 8 Maria Hartikainen 10 Pekka Kallioniemi 10 Jorma Laajamäki 10 Panu Tunttunen 10 Nina Tyni 10 Joonas Jokiniemi 5 Yhteensä 73 Taulukko 1. Projektin henkilöstöresurssit Projektin kesto : 5½ kuukautta = 22 viikkoa - viikko 52 (vapaa, Joulu) = yhteensä 21 viikkoa Projektin käytettävissä olevat resurssit : n. 1500 työtuntia Asiakkaan käytettävissä olevien työtuntien lukumäärä / viikko : 2 työtuntia (tarvittaessa enemmänkin) Asiakkaan käytettävissä olevat resurssit : n. 40 työtuntia Ajankäyttökategoria Arvioitu osuus (%) Arvioitu tuntimäärä Projektin suunnittelu ja ohjaus 25 375 Vaatimusten määrittely 5 75 14

Suunnittelu 15 225 Ohjelmointi 25 375 Integrointi ja testaus 10 150 Katselmoinnit 1 15 Korjaus 10 150 Opiskelu 4 60 Muut 5 75 Taulukko 2. Projektin työmäärän jakautuminen eri osa-alueille. 6.5 Toimituspaketti Projektista toimitetaan kurssinkin vaatimusten mukainen projekti-cd, joka sisältää seuraavat asiat: Ohjelmiston Lähdekoodin Asennusohjeet Loppuraportti Loppukertomus 15

7 Seuranta ja ohjaus 7.1 Ryhmän sisäinen Projektiryhmä tapaa pääsääntöisesti perjantaisin kello 14-16. Tapaamispaikka voi vaihdella, mutta yleensä ryhmä kokoontuu jossakin Linnan ryhmätyöhuoneista. Janne Pihlajaniemi vetää tapaamiset ja Antti Jämsén sekä asiakas osallistuvat niihin tarvittaessa. Tapaamisissa pyritään käymään läpi edellisen viikon asiat ja käydään läpi seuraavalla viikolla tehtävät asiat. Muutoin yhteydenpito ryhmän kesken tapahtuu Google Groupsin kautta sähköpostilla, puhelimitse tai IRC-kanavalla. Dokumentit, tiedostot, ohjeet ja linkit jaetaan ryhmän sisällä Polku-projektin wiki-sivuilla. Wiki-sivu toimii siis keskeisenä tiedonjakamisen lähteenä. 7.2 Ryhmän ulkopuolinen Asiakas Antti Jämsén toimii yhdyshenkilönä asiakkaaseen, koska sekä asiakas että Antti toimivat Helsingissä. Kommunikointi asiakkaan kanssa pyritään pitämään tiiviinä läpi projektin. Kommunikointi tapahtuu sähköpostin, puhelimen ja aina tarvittaessa tapaamisten muodossa (Antti voi tavata asiakasta myös Helsingissä Helkan tiloissa). Asiakkaalle toimitetaan myös jokaviikkoinen viikkoraportti. Kurssi Kurssin luennoitsija osallistuu raporttien katselmointeihin. Projektipäälliköt ovat yhteydessä kurssin luennoitsijaan projektin aikana ja raportoivat viikoittain projektin etenemisestä. 16

8 Standardit, direktiivit ja määräykset 8.1 Standardit ja suositukset PHP-ohjelmointiin käyttämämme standardit ovat W3 XHTML 1.0 Strict ja W3 CSS Level 2.1. Tietokannan kanssa käytettävä standardi on SQL-2003, ISO:n määrityksen mukaan ISO/IEC 9075(1-4,9-11,13,14):2003. 8.2 Luottamuksellisuus Projektissa ei käsitellä näillä tiedoin luottamuksellisia tietoja. Jos näitä kuitenkin tulee, käydään projektiryhmän kokouksessa läpi periaatteet luottamuksellisten tietojen käsittelyyn. 8.3 Tekijänoikeudet Kaikki moraaliset tekijänoikeudet jäävät asianomaisten teosten tai vastaavien tekijöille, koska kyseessä on opiskeluprojekti, eikä moraalisia tekijänoikeuksia ole mahdollista siirtää tietokoneohjelmistojen kohdalla kuin työ- toimi- tai virka-suhteessa. Muilta osin tekijänoikeudet luovutetaan julkisen lähdekoodin GNU/GPL-lisenssin alaisuuteen. 17

9 Tunnistetut riskit Tässä kappaleessa on tunnistettu ja listattu projektiin liittyvät riskit. Riskit on jaoteltu viiteen eri kategoriaan: Henkilöstö-, Asiakas-, Organisaatio-, Teknologia- ja Tuoteriskeihin. Jokaiselle riskille on lueteltu seuraavat asiat: Riskin nimi Tärkeysaste Todennäköisyys * Vakavuus Todennäköisyysaste 1-5 1 = erittäin epätodennäköinen 5 = erittäin todennäköinen) Vakavuusaste 1-5 Kuvaus Syy Torjunta 1 = vähäinen vaikutus 5 = katastrofaalinen vaikutus Riskin pitempi kuvaus Riskin aiheuttava syy Kuinka riski pyritään torjumaan projektiryhmän toimesta Toipuminen Kuinka riskin realisoitumisesta pyritään toipumaan Projektin vaihe Tila 9.1 Henkilöstöriskit Projektin vaihe jossa riski on ajankohtainen / toteutumiskerrat Projektiryhmän vähäinen motivaatio Tunniste: H-001 Tärkeysaste: 12 Todennäköisyysaste: 3 Vakavuusaste: 4 Projektin ollessa pakollinen suoritettava kurssi, jonka korvauksena on ainoastaan opintopisteitä, saattaa se laskea joidenkin motivaatiota. 18

Ryhmän motivaatio projektia kohtaan on vähäinen. Ryhmän työmotivaatiota pyritään pitämään yllä projektipäälliköiden osalta johtamalla projektia avoimesti, tasapuolisesti ja neuvotteluhenkisesti. Projektiryhmäläisille annetaan jokaiselle mahdollisuus vaikuttaa omiin tehtäviinsä ja työnjaossa otetaan myös ryhmän jäsenten osaamisalueet huomioon. Myös mahdollisuus uusien tehtävien ja toimien kokeiluun annetaan. Mikäli joku projektiryhmän jäsen toistuvasti laiminlyö hänelle annettuja tehtäviä, neuvotellaan hänen kanssaan tilanteesta ja mahdollisesta tehtävien uudelleenjärjestämisestä. Koko projektin elinkaari Ryhmän jäsenet estyvät työskentelemästä hetkellisesti Tunniste: H-002 Tärkeysaste: 5 Todennäköisyysaste: 5 Vakavuusaste: 1 Ryhmän jäsen tai jäsenet eivät pysty työskentelemään projektin hyväksi hetkellisesti jostain syystä. Ryhmän jäsen tai jäsenet ei pysty työskentelemään projektin hyväksi hetkellisesti jostain syystä. Esimerkiksi, teknisistä syistä, kuten kehityspalvelimen kaatuminen tai henkilökohtaisista syistä kuten matkustaminen tai sairastuminen. Hetkellistä estymistä ei täysin voida torjua, mutta useimmiten kuitenkin jossain määrin ennakoida. Jokatapauksessa, ryhmän jäsenien tulisi ilmoittaa koko projektiryhmälle ollessaan estynyt työskentelemästä tiettyinä aikoina. Mahdollinen tehtävien siirtäminen toiselle ryhmän jäsenelle, tilanteesta riippuen. Koko projektin elinkaari Projektiryhmän jäsenen sairastuminen influenssaan Tunniste: H-003 Tärkeysaste: 12 Todennäköisyysaste: 3 Vakavuusaste: 4 Projektiryhmän jäsen sairastuu influenssaan ja on estynyt työskentelemästä pidempiaikaisesti. 19

Kuluvalle syksylle on ennustettu normaalia vakavampaa kausiinfluenssa-aaltoa. Sairaus saattaa kestää kahdesta kolmeen viikkoa, jolloin projektiryhmän jäsen saattaa olla estynyt työskentelemästä projektissa. Kausittaisten influenssojen torjunta on vaikeaa. Projektin johto suosittelee ryhmän noudattavan terveysviranomaisten ohjeita influenssan torjunnassa. Tehtävien uudelleenjärjestäminen ryhmän jäsenten kesken riskin realisoituessa. Koko projektin elinkaari Projektiryhmän aikataulujen yhteensovittaminen epäonnistuu Tunniste: H-004 Tärkeysaste: 4 Todennäköisyysaste: 2 Vakavuusaste: 2 Kaikki projektiryhmän jäsenet eivät pysty osallistumaan viikkotapaamisiin samanaikaisesti. Ryhmän jäsenillä on muita projektiin liittymättömiä asioita ja tapahtumia, jotka saattavat estää osallistumisen tapaamisiin. Sovitaan kiinteät tapaamisajat, jotka parhaiten sopivat kaikille ryhmän jäsenille. Videoneuvottelutekniikkaa pyritään käyttämään mahdollisuuksien mukaan hyväksi silloin kun joku ryhmän jäsenistä ei pääse paikalle. Jokaisesta viikkopalaverista kirjoitetaan muistio wikiin mihin kirjataan tärkeimmät asiat ja tehtävät seuraavalle viikolle. Koko projektin elinkaari Kurssin keskeyttäminen projektiryhmän jäsenen osalta Tunniste: H-005 Tärkeysaste: 8 Todennäköisyysaste: 2 Vakavuusaste: 4 Joku projektiryhmän jäsenistä keskeyttää kurssin projektin aikana. Tämä saattaa vaarantaa projektin saattamisen päätökseen sen laajuisena kuin alunperin on suunniteltu. Projektiryhmän jäsenen muut projektiin liittymättömät kiireet, 20

motivaation puute tai ennalta-arvaamattomat elämäntilanteet saattavat johtaa kurssin keskeyttämiseen. Odottamattomien elämäntilanteiden torjuminen projektin puitteissa on käytännössä mahdotonta. Projektinjohtajat tekevät parhaansa projektiryhmän motivaation ylläpitämiseksi. Projektin ollessa opiskelijaprojekti, ei ryhmän jäsenen keskeyttäessä lisäresursseja ole saatavilla. Tällöin tulee projektin sisältö tarkistaa. Koko projektin elinkaari Ryhmän jäsenten vähäinen kokemus valittujen tekniikoiden käytöstä Tunniste: H-006 Tärkeysaste: 5 Todennäköisyysaste: 5 Vakavuusaste: 1 Kaikilla ryhmän jäsenillä ei ole entuudestaan kokemusta valittujen tekniikoiden käytöstä. Tämä saattaa hidastaa toteutuksen aloittamista ja ongelmien ratkaisua. Ryhmän jäsenillä ei ole ennalta kokemusta valituista teknologioista. Aloitetaan toteutus mahdollisimman aikaisessa vaiheessa tutustumalla ohjelmointityökaluihin ja tekniikoihin, ohjelmoimalla pieniä kokonaisuuksia. Ryhmä tutustuu saatavilla oleviin oppaisiin valituista tekniikoista ja opiskelee käytännönläheisesti työn ohessa. Ryhmälle voidaan järjestää koulutusta valituista tekniikoista workshop-tyyppisesti, myös asiakkaan avustuksella. Määrittely ja toteutus 9.2 Asiakasriskit Asiakkaan edustajan vähäinen mielenkiinto projektia kohtaan Tunniste: A-001 Tärkeysaste: 5 Todennäköisyysaste: 1 Vakavuusaste: 5 Asiakkaan edustaja ei vastaa projektipäälliköiden yhteydenottoihin. Asiakkaan edustaja ei ole kiinnostunut projektin tilasta. 21

Asiakasta informoidaan projektin tilasta vakituisesti. Projektiryhmä tekee päätöksen projektin viemisestä loppuun projektityökurssin vetäjän kanssa. Koko projektin elinkaari Asiakkaan vaatimusten väärin tulkitseminen Tunniste: A-002 Tärkeysaste: 8 Todennäköisyysaste: 2 Vakavuusaste: 4 Projektiryhmä tulkitsee asiakkaan vaatimuksia eri tavalla kuin asiakas itse. Vaatimuksia ei ole kirjattu ollenkaan tai ne on kirjattu huolimattomasti. Asiakkaan vaatimukset kirjataan mahdollisimman tarkasti ja avoimella keskustelulla varmistetaan että projektiryhmä tulkitsee vaatimukset oikein. Asiakkaan vaatimukset kirjataan huolellisesti ja varmistetaan että projektiryhmä tulkitsee niitä oikein. Koko projektin elinkaari Uusien vaatimusten ilmaantuminen myöhäisessä vaiheessa Tunniste: A-003 Tärkeysaste: 6 Todennäköisyysaste: 3 Vakavuusaste: 2 Asiakas esittää uusia vaatimuksia projektin myöhäisessä vaiheessa. Määrittelyvaiheessa kaikkia oleellisia vaatimuksia ei ole käsitelty. Jokaisen sprintin sisältö päätetään ennen sprintin aloittamista, eikä sisältöä muuteta kesken sprintin. Uudet vaatimukset otetaan mukaan seuraavan sprintin sisältöä suunniteltaessa. Uudet vaatimukset priorisoidaan muiden vaatimusten kanssa ja annetaan asiakkaalle mahdollisuus vaikuttaa sprinttien sisältöön. Toteutus ja testaus 22

Asiakas ei osallistu palavereihin Tunniste: A-004 Tärkeysaste: 8 Todennäköisyysaste: 2 Vakavuusaste: 4 Asiakkaalla ei ole mahdollisuutta osallistua palavereihin. Asiakkaan edustajalla ei ole aikaa tai muista syistä johtuen on estynyt osallistumasta palavereihin. Asiakkaasta riippuvia riskejä on projektiryhmän lähes mahdoton torjua. Riskejä ehkäistään pitämällä asiakas hyvin informoituna projektin tilasta. Projektiin liittyvät tapaamiset pyritään järjestämään asiakkaalle sopivaan aikaan. Määrittely Vaatimuksien selvittämiseen käytetään liiaksi aikaa Tunniste: A-005 Tärkeysaste: 8 Todennäköisyysaste: 2 Vakavuusaste: 4 Vaatimuksien selvittämiseen käytetään liikaa aikaa eikä vaatimuksia lyödä lukkoon ajallaan. Vaatimuksia ei saada selville ajoissa. Edetään sprintti kerrallaan, toteutetaan vain olennaisimmat vaatimukset ja pyritään selvittämään ne mahdollisimman hyvin. Rajoitetaan toteutettavien vaatimusten määrää ja keskitytään vain olennaisiin vaatimuksiin. Määrittely Asiakas ei pysty pitämään sovittuja asioita Tunniste: A-006 Tärkeysaste: 4 Todennäköisyysaste: 1 Vakavuusaste: 4 Asiakas ei pysty järjestämään sovittuja asioita. 23

Asiakas ei omasta tai kolmannesta osapuolesta johtuen pysty pitämään sovittuja asioita. Asiakkaasta riippuvia riskejä on projektiryhmän lähes mahdoton torjua. Projektiryhmä yrittää etsiä korvaavia tapoja jatkaa projektin etenemistä. Toteutus 9.3 Organisaatioriskit Projektipäälliköiden kokemuksen puute Tunniste: O-001 Tärkeysaste: 9 Todennäköisyysaste: 3 Vakavuusaste: 3 Projektin johtaminen ei ole sujuvaa. Projektin projektipäälliköt eivät ennalta omaa käytännön kokemusta projektien läpiviemisestä ja valvonnasta. Projektipäälliköt osallistuvat aktiivisesti projektin johtamiseen koko projektin ajan. Ongelmatilanteissa projektipäälliköt kartoittavat yhdessä ratkaisuvaihtoehtoja ja tarvittaessa tiedustelevat projektiryhmän ja/tai muiden sidosryhmien kantaa ratkaisuun. Koko projektin elinkaari Vastuiden jako ryhmän jäsenten kesken on epäoikeudenmukaista Tunniste: O-002 Tärkeysaste: 6 Todennäköisyysaste: 2 Vakavuusaste: 3 Vastuiden jako projektiryhmän jäsenten kesken on tehty epäoikeudenmukaisesti projektipäälliköiden toimesta. Projektipäälliköt jakavat vastuita epäoikeudenmukaisesti projektiryhmän jäsenille. Projektipäälliköiden tulee valvoa vastuiden jakaantumisesta projektiryhmän jäsenten kesken. Projektipäällikön tulee tarvittaessa puuttua asiaan, joko itsenäisesti tai projektiryhmän jäsenen ilmoituksesta ja vastuiden jakaantuminen tarkistaa. 24

Vastuiden jakautumisen tarkistaminen. Koko projektin elinkaari Työmääräarvioiden epäonnistuminen Tunniste: O-003 Tärkeysaste: 9 Todennäköisyysaste: 3 Vakavuusaste: 3 Työmääräarviot eivät vastaa todellisia työmääriä. Käytettyjen tekniikoiden tuntemattomuus ja vähäinen kokemus projektitöiden tekemisestä saattaa aiheuttaa työmääräarvioiden vääristymistä. Työmääräarvioita tehdään sprinttien suunnitteluvaiheessa Sprinttien sisältöä muutetaan tarpeen mukaan niin, että tärkeimmät toiminnallisuudet saadaan toteutettua. Määrittely Kommunikointi asiakkaiden kanssa tai projektiryhmän sisällä ei toimi Tunniste: O-004 Tärkeysaste: 6 Todennäköisyysaste: 2 Vakavuusaste: 3 Kommunikointi projektiryhmän ja asiakkaan välillä tai ryhmän sisällä ei toimi. Asiakkaalle ei välitetä tietoja projektiin olennaisesti liittyvistä asioista tai asiakkaan viestit eivät saavuta projektiryhmää. Projektiryhmän sisäiseen kommunikointiin käytettävät kanavat eivät toimi tai tavoita koko projektiryhmää. Toinen projektipäälliköistä on nimetty hoitamaan yhteydenpitoa asiakkaan kanssa ja välittämään asiakkaalta tulevat viestit koko projektiryhmän tietoon. Projektin sisäiseen kommunikoitiin käytetään useampia kanavia. Viikoittaisissa projektipalavereissa käydään läpi projektiin olennaisesti liittyviä asioita ja ne myös kirjataan palaverimuistioon. Koko projektin elinkaari 25

9.4 Teknologiariskit Ennalta tuntemattomiin teknologioihin tutustuminen kestää liian pitkään Tunniste: T-001 Tärkeysaste: 12 Todennäköisyysaste: 3 Vakavuusaste: 4 Projektissa käytettävät teknologiat ovat projektiryhmälle lähes täysin aiemmin tuntemattomia. Tämä saattaa aiheuttaa aikataulujen venymistä ja kaikkia asiakkaan esittämiä vaatimuksia ei välttämättä ehditä toteuttamaan projektin aikana. Projektissa käytettävät teknologiat eivät ole projektiryhmälle entuudestaan tuttuja. Tutustumalla saatavilla oleviin tekniikoita käsitteleviin oppaisiin ja manuaaleihin. Jo projektin aikaisessa vaiheessa pyritään opettelemaan uusia tekniikoita ohjelmoimalla pieniä toiminnallisuuksia. Sprinttien sisältöä muutetaan tarpeen mukaan niin, että tärkeimmät toiminnallisuudet saadaan toteutettua. Toteutus ja testaus Valitut teknologiat eivät sovellu vaatimusten toteuttamiseen Tunniste: T-002 Tärkeysaste: 5 Todennäköisyysaste: 1 Vakavuusaste: 5 Vaatimukset ovat liian kompleksisia valituilla teknologioilla toteutettaviksi. Toteutukseen valitut teknologiat eivät mahdollista kaikkien määriteltyjen toiminnallisuuksien toteuttamista. Vaatimusmäärittelyn aikana pyritään arvioimaan valittujen teknologioiden sopivuutta vaatimusten toteuttamiseen. Vaatimuksien muokkaaminen teknologioiden rajoitusten mukaan. Määrittely ja toteutus Ohjelmointityökalujen käyttöönotto viivästyy Tunniste: T-003 Tärkeysaste: 9 26

Todennäköisyysaste: 3 Vakavuusaste: 3 Ohjelmointityökalujen käyttöönotto viivästyy joko projektiryhmästä tai kolmannesta osapuolesta johtuvista syistä. Näinollen projektissa käytettävien teknologioiden opiskelun aloittaminen ja itse tuotteen tekeminen viivästyy. Ohjelmointityökaluja ja kehitysympäristöä ei saada tarpeeksi nopeasti käyttöön projektin alkuvaiheessa. Ohjelmointityökalujen käyttöönoton tilannetta seurataan viikkopalavereissa ja mahdollisia ongelmia ratkotaan koko ryhmän voimin. Wikiin kirjoitetaan tai laitetaan linkkejä työkalujen käyttöönottoa käsitteleviin artikkeleihin. Käyttöönotossa ilmaantuvissa ongelmatilanteissa kysytään apua muilta projektiryhmän jäseniltä. Toteutus ja testaus 9.5 Tuoteriskit Huono käytettävyys Tunniste: T-001 Tärkeysaste: 12 Todennäköisyysaste: 3 Vakavuusaste: 4 Tuote on hankala käyttää Tuotteen käyttöliittymän suunnittelussa ei ole otettu huomioon tuotteen kohderyhmää. Käyttöliittymän suunnittelussa keskitytään käyttäjäkeskeisyyteen ja loogisiin toimintokokonaisuuksiin. Käytettävyysryhmän edustaja toimii osana käyttöliittymän suunnittelussa. Käytettävyysryhmän järjestämästä vertaisarvioinnista ja asiakkaalta saatu palaute otetaan huomioon suunniteltaessa käyttöliittymään tehtäviä muutoksia. Tuotteen käytettävyyttä parannetaan sprintti kerrallaan. Toteutus ja testaus Tuote ei vastaa asiakkaan tarpeita Tunniste: T-002 Tärkeysaste: 10 27

Todennäköisyysaste: 2 Vakavuusaste: 5 9.6 Riskien seuranta Tuote ei sovellu asiakkaan sille ajattelemaan käyttöön. Tuotteen vaatimusten määrittelyssä on epäonnistuttu määrittelemään vaatimukset asiakkaan tarpeita vastaavaksi. Asiakkaan edustaja ei ole osallistunut tuotteen testaamiseen tai määrittelyyn. Tuotteen vaatimusten ja sprinttien sisällön määrittelyssä tulee asiakkaan näkökulma ottaa mahdollisimman hyvin huomioon. Asiakas otetaan mukaan tuotteen testaukseen mahdollisimman aikaisessa vaiheessa. Riskin mahdollinen realisoituminen tapahtuu täysin vasta tuotetta julkaistaessa ja käyttöön otettaessa. Tämän projektin puitteissa ei ole mahdollista toipua tuotteen julkaisemisen jälkeen esiintyvistä ongelmista. Tuotteen julkaisu Riskien tilannetta seurataan koko projektin ajan ja viikkopalavereissa käydään läpi meneillään olevaan sprinttiin oleellisesti liittyvät riskit. Muut projektiin liittyvät ongelmat ja niiden liittyminen ja mahdollinen vaikutus jo tunnistettuihin riskeihin arvioidaan myös viikoittaisissa tapaamisissa. Riskilistaa päivitetään uusien tunnistettujen riskien ilmaantuessa ja jo tunnistettujen riskien realisoituessa. 28

10 Koulutussuunnitelma 10.1 Projektiryhmän sisäinen Työkalut ja menetelmät eivät ole kaikille entuudestaan tuttuja, joten koulutukseen on syytä paneutua huolella. Kaikkiin menetelmiin löytyy kuitenkin jonkin verran kokemusta projektiryhmän sisältä, joten sisäisillä koulutuksilla pystytään helpottamaan työkaluihin ja menetelmiin tutustumista. Asiakas on myös suostunut osallistumaan koulutukseen etenkin PHP-kielen osalta, jos siihen ilmenee tarvetta. Sisäisiä koulutuksia on tarkoitus järjestää ja menetelmiin tutustua toisessa sprintissä ennen varsinaisen ohjelmoinnin aloittamista ja myös kolmannessa sprintissä, kun varsinainen ohjelmointityö alkaa. Koulutuksia järjestetään myös tarpeen vaatiessa myöhempien sprinttien aikana. Ohjeita on myös tarkoitus laittaa projektin sivuille, josta ryhmän jäsenet voivat niitä käydä lukemassa. 10.2 Asiakkaalle tarjottava Asiakkaan kanssa sovitaan myöhemmin mahdollisesta koulutuksesta, jos tälle nähdään tarvetta. 29

11 Asennussuunnitelma Asiakkaalla on asennusympäristö valmiina. Asennus tulee tapahtumaan asiakkaan toimesta siirrettävällä medialla (esim. Cd-ROM) siirretyistä tiedostoista. Koska toimiva kokonaisuus koostuu php-lähdekielisistä tiedostoista ja tietokantaan tallennettavista tiedoista, ei varsinaista asennuspakettia tarvita. Tarpeen vaatiessa asiakkaalle voidaan lähettää ohjeita asennukseen. Asennus tapahtuu kopioimalla a)php-tiedostojen osalta: kopioimalla tiedostot hakemistorakenteineen niille määriteltyyn osaan tiedostojärjestelmää b) tietokannan osalta: asentamalla tietokannasta otettu vedos asiakkaan omaan tietokantaan. 30

12 Käyttöönottosuunnitelma Koska lopullinen käyttöympäristö poikkeaa toteutus- ja testausympäristöstä, saattaa käyttöönotossa ilmetä ongelmia. Asiakas on kuitenkin lupautunut suorittamaan käyttöönoton lopullisessa käyttöympäristössä. Projektiryhmä toimittaa tarvittavat komponentit asiakkaalle viimeistään 18.3.2010. 31

13 Kustannukset Projektiin on arvioitu käytettävän kaiken kaikkiaan noin 1500 työtuntia. Jos projektiryhmän jäsenten tuntipalkka on 32 euroa, muodostuu projektin kokonaispalkkakustannuksiksi 48 000 euroa. Projektiin liittyvät matkakustannukset koostuvat lähinnä toisen projektipäällikön matkakuluista Tampereen ja Helsingin välillä. Matkat kuljetaan junalla, ja arvioitu lippukustannus koko projektin aikana on 1364 euroa. Matkakuluihin lasketaan myös Helsingin paikallisliikenteen lippukustannuksia 53 euroa. Matkapäivärahakustannuksia projektin aikana tulee arviolta 840 euroa. Projektiin liittyviä kustannuksia puheluista ja tekstiviesteistä tulee projektin aikana arviolta noin 40 euroa per projektiryhmän jäsen, eli yhteensä 320 euroa. Projektin kokonaiskustannukset ovat 50 577 euroa. Projektin kokonaishinta 35% voittomarginaalilla asiakkaalle on 68 279 euroa. Todellisuudessa projekti on asiakkaalle kuitenkin erittäin edullinen, sillä yllä lasketut kustannukset ovat vain viitteellisiä. Koska kyseessä on yliopiston projektityökurssi, eivät projektiin osallistuvat opiskelijat saa työstään rahallista korvausta. Todellisia projektista aiheutuvia kustannuksia asiakkaalle ovatkin lähinnä asiakkaan omat matkakulut projektitapaamisiin Tampereelle. Tarpeetonta matkustamista vältetään, ja viikkotapaamisissa pyritään mahdollisuuksien mukaan hyödyntämään videoneuvottelutekniikkaa. Näin ollen projekti on asiakkaan kannalta erittäin kannattava. 32

14 Hylätyt ratkaisuvaihtoehdot ja jatkokehitysajatuksia 14.1 Alustaa koskevat hylätyt ratkaisut Aluksi ratkaisuksi tietojen hallintaan harkittiin jonkinlaista wikijärjestelmää, mutta ehdotus hylättiin, koska wikistä ei löydy kaikkia niitä ominaisuuksia, joita sovelluksessa tarvitaan, kuten esimerkiksi aikasidonnaisuutta. 14.2 Jatkokehitysajatuksia Sovellusta voitaisiin tulevaisuudessa jatkokehittää pienin muutoksin asiakkaan taholta soveltuvaksi myös sidosryhmien ja yhteistyökumppaneiden käyttöön. Sovelluksen voisi myös integroida osaksi isompaa järjestelmää, esimerkiksi Joomla-moduuliksi. 33