Projektisuunnitelma

PSP-HUT

http://www.hut.fi/~llauren/76115/documents/ps.html
Versio 2.0
3.11.1999
 
Muutoshistoria
Versio Päiväys Muuttaja Muutokset
1.0 13.10.1999 Samuli Seppälä Uusi dokumentti
2.0 3.11.1999 Samuli Seppälä Muutettu 2.3 ja lisätty tehtäviä 3.2.3
Muutettu 4.5 ja lisätty 4.5.1
Numeroitu taulukot


Sisällysluettelo

1. Johdanto
2. Projektin vaiheiden tavoitteet ja aikataulu
3. Tehtävät ja resurssit
4. Työmenetelmät
5. Ohjaussuunnitelma

Sanasto


Johdanto

1.1 Tavoite

1. PSP-HUT projektin tavoitteena on tehdä laadukas ja helppokäyttöinen ohjelmisto tukemaan SEI:n PSP menetelmän käyttöä Internet/intranet ympäristössä.

2. PSP-HUT projektin tavoite on suorittaa TKK:n Tik-76.115 kurssi suunnitelmallisesti ja hallitusti läpi.

1.2 Tehtävä

Tehtävänä on luoda PSP-HUT ohjelmisto, joka tukee SEI:n PSP määritelmää, mutta antaa mahdollisuuden muuttaa käyttäjäkohtaisesti oletusarvoja. PSP-HUT tulee sanoista Personal Software Process - Pizza HUT, nimi kuvaa ohjelmiston tarkoitusta, sillä tarkoituksena on tehdä ohjelmisto, jota on mukava käyttää ja jonka sivuille on kiva tulla, niin kuin Pizza Huttiinkin. PSP vaatii käyttäjältään tarkkaa itsekuria ja ohjelmiston tarkoituksena on helpottaa käyttäjää siten, että hänen tarvitsisi täyttää työläitä kaavakkeita mahdollisimman vähän. Lisää PSP menetelmästä voi lukea SEI:n PSP-sivuilta. Ohjelmiston tarkempi määrittely löytyy vaatimusmäärittelystä.

Tehtävä on hyvin läheisessä yhteydessä TAI tutkimuslaitoksen LUCOS-projektin kanssa ja projekti käyttää Lucoksessa kehitettyjä työkaluja.

1.3 Sidosryhmät

1.3.1 Asiakas ja ohjaajat

Asiakas  Casper Lassenius
Ohjaajat  Jari Vanhanen
  Kai Risku

1.3.2 Projekti ryhmä

Projektipäälikkö  Samuli Seppälä
Asiakasvastaava  
   
Laatupäällikkö Kati Laurila
PSP-Asiantuntija  
Riskivastaava  
   
Arkkitehtuurivastaava Joonas Tamminen
Tietokantavastaava  
   
Käyttöliittymävastaava Juha Itkonen
Java-asiantuntija  
Dokumentointivastava   
Testausvastaava Kimmo Mustonen
   
WWW-Guru Robin Lauren

1.4 Oikeudet työhön

Ryhmän jäsenet ja TAI-tutkimuslaitos saavat kaikki oikeudet projektin tuotteisiin. Oikeuksia ei voi siirtää kolmannelle osapuolelle ilman muiden suostumusta. Ohjelmiston käyttö kaupallisiin tarkoituksiin on sovittava erikseen kaikkien osapuolten kesken.

2. Projektin vaiheiden tavoitteet ja aikataulu

2.1 Projektin suunnittelu (PS)

Tavoitteena on luoda yhteisymmärrys asiakkaan ja projektiryhmän välille siitä, mitä olemme tekemässä sekä määritellä projektin aikana käytettävät ylätason prosessit, kuten muutostenhallinta, tuotteenhalllinta, testaus ja katselmointi, riskienhallinta

Projektin suunnitteluvaihe loppuu 13.10.1999, jolloin palautamme projektisuunnitelman (tämä dokumentti) sekä vaatimusmäärittelyn. Molemmat dokumentit ovat käyneet ennen palautusta sekä ryhmän että asiakkaan kommentoitavina. Varsinainen katselmus järjestetään kurssilla tämän vaiheen takarajan jälkeen.

Tämän vaiheen tulokset verifioidaan sekä projektiryhmän sisäisellä kommentointi- ja katselmointikierroksella, että asiakkaan ja kurssin järjestämissä katselmointitilaisuuksissa.

2.2 Määrittely (MÄ)

Tavoitteena määrittelemme ohjelmiston arkkitehtuurin ja käytettävien työkalujen käyttöön liittyvät standardit sekä toiminta prosessit. Samalla määrittelemme yksityiskohtaisemmin jokaiseen vaatimukseen liittyvät toiminnot sekä reunaehdot.

Tämän vaiheen suorittamisesta syntyy valittua arkkitehtuuria kuvaavia kaavioita. Näistä kaavioista käy ilmi ohjelmiston luokkahierarkia, tietokantarakenne, toiminnallinen ympäristö, tietovuo, ohjelmiston sisäiset prosessit ja modulijako. Vaatimusmäärittelyssä esitettyjen toimintojen tarkempi kuvaus on esitettynä tapahtuma kuvauksena, toiminnot kuvataan use caseinä, jotka sisältää seuraavat tiedot:

Nimi:
Alkuehto:
Tapahtumaketju(kaaviona):
Poikkeustenkäsittely:
Lopetusehto:

Määrittelyvaiheessa luodaan myös projektin ohjelmointi- ja dokumentointiopas.

Vaihe päättyy toiminnallisen määrittelyn palautukseen 3.11.1999

Vaiheen tulokset validioidaan katselmoimalla systeemiarkkitehtuuria kuvaavia kaavioita sekä katselmoimalla toiminnallista määrittelyä kurssin järjestämässä katselmointitilaisuudessa ja ryhmän sisäisessä katselmuksessa.

2.3 Suunnittelu (SU)

Tavoitteena on kuvata järjestelmä toteuttamiseen riittävällä tarkkuudella sekä luoda testaussuunnitelma (katso luku 4.2) jokaista modulia varten.

Tärkein tehtävä tässä vaiheessa on määritellä modulien rajapinnat ja modulien sisäinen toiminta kaaviona ja muodostaa luokkakaavion koko ohjelmistosta. Tietoliikennettä varten tulee tässä vaiheessa myös määritellä käytettävä XML pohjainen kuvauskieli. Ohjelmistosta tehdään ensimmäinen alpha-proto toteuttamaan järjestelmän perusarkkitehtuuria. Tässä vaiheessa asetetaan myös ominaisuuksien toteutusjärjestys ja -aikataulu, jonka pohjalta lähdemme toteuttamaan järjestelmää.

Alpha-proton sisältösuunnitelma

Saatavat vaihetuotteet: Vaihe päättyy teknisen määrittelyn palautukseen 8.12.1999 ja alpha-protoon 13.12.1999

Vaiheen tulokset verifioidaan katselmoimalla vaihetuotteet sekä ryhmän sisäisessä katselmoinnissa, että kurssin järjestämässä katselmoinnissa.

2.4 Prototyyppi 1 (P1)

Tavoitteena on luoda järjestelmän perustoiminnallisuus. Tärkeintä on luoda hyvin dokumentoitu ja suunniteltu pohja, johon voidaan liittää helposti lisäominaisuuksia.

Toteutuksessa käytetään inkrementaalimenetelmää, jossa toiminnallisuudet lisätään yksitellen prioriteetilistan ja modulien välisten riippuvuuksien määräämässä järjestyksessä. Tässä vaiheessa päätämme myös seuraavassa vaiheessa toteutettavat uudet ominaisuudet sekä parannettavat P1 vaiheen ominaisuudet. Toteutuksen jälkeen ratkaisut dokumentoidaan ja testataan, josta saadaan jokaiselle modulille testiraportti. Modulin suunnittelija kirjoittaa käyttöohjeen loppukäyttäjälle, ylläpitäjälle ja jatkokehittäjälle kirjoitettaan jokaisen modulin jälkeen. Modulin suunnittelija suunnittelee ja toteuttaa myös jokaiseen modulin testitapaukset.

Vaihe päättyy testiraportin palautukseen 16.2.2000 ja proton demoon 21.2.2000

Vaiheen tulokset validioidaan suorittamalla modulien testausta sekä suorittamalla tarkasteluja ryhmän sisällä sekä suorittamalla ensimmäinen perustoiminnallisuudet sisältävä demo. Vaihetuotteille järjestetään ennen vaiheen loppua vielä ryhmän sisäinen katselmointi sekä vaiheen jälkeen kurssin järjestämä katselmointi

2.5 Prototyyppi 2 (P2)

Tavoitteena tässä vaiheessa on lisätä P1 vaiheessa päätettyjä ominaisuuksia sekä parantaa P1 vaiheessa kehitettyjä ominaisuuksia.

Vaiheen aikana tulee suorittaa integrointi ja järjestelmätason testausta ja korjata mahdolliset viat. Muuten toiminta tulee olemaan samantyyppistä kuin P1:ssä.

Vaihe päättyy testiraportin palautukseen 22.3.2000 ja proton demoon 27.3.2000

Vaiheen tulokset varmistetaan tiiviillä priorisointikeskustelulla asiakkaan kanssa sekä toteutuksen testauksella että tarkastelulla.

2.6 Luovutus (LU)

Tavoitteena on viimeistellä ohjelmisto luovutettavaan kuntoon

Vaiheen aikana viimeistellään dokumentaatio, varmistetaan järjestelmätestauksella toiminnallisuudet, poistetaan tilapäistiedostot ja data sekä paketoidaan ohjelmisto. Järjestelmästä kirjoitetaan asennusohje sekä verrataan tehtyä ohjelmistoa vaatimuksiin.

Vaihe päättyy loppuraporttiin 19.4.2000 sekä loppudemonstraatioon 2.5.2000

2.7 Jälkihoito

Ohjelmistosta luovutetaan asiakkaalle toimiva, asennettu järjestelmä sekä tarkka tekninenkuvaus siitä. Samalla kerrotaan asiakkaalle mahdolliset jatkokehitystoimenpiteet. Tavoitteena on antaa asiakkaalle edellytykset jatkokehittää ja hyödyntää järjestelmää.

Tehtävät ja resurssit

3.1 Koko projekti

Projektiin käytettävän työmäärä saadaan kertomalla projektin henkilölukumäärä kurssin laajuudella näin saamme projektin työmäärä 6*5*40h=1200h. Tämä työmäärä ei jakaannu tasaisesti jokaisen työvaiheeseen eikä tarkkaa arviota voida antaa tässä vaiheessa. Jokaisen vaiheen lopussa teemme tarkemman suunnitelman seuraavasta vaiheesta, jonka mukaan tehtävät määräytyvät sitten jokaiselle. Seuraavassa taulukossa on esitetty karkea tuntimääräjako projektin eri vaiheiden välillä. Päätimme kuitenkin, että vaikka budjetti ei riitä kuin 1200 tuntiin niin laadukasta tuotetta ei saada aikaan, jos työmäärästä ei jousteta.
 
 
  PS SU P1 P2 LU Yhteensä
Yhteensä 165h 362h 534h 378h 300h 172h 1911h
Taulukko 3.1.1 Projektin työmääräarvio
Projektin henkilökunta on käytettävissä koko projektin keston ajan pääsääntöisesti iltaisin. Poikkeuksena joulukuu, jolloin alkukuukaudesta koulun tenttikausi vähentää mahdollisuuksia tehdä projektia, sekä joululoman aika.

3.2 Tarkennetut vaihekohtaiset tehtäväsuunnitelmat

3.2.1 Projektin suunnittelu

 
  SS KL JI JT KM RL Yhteensä
Luennot 7 7 7 7 7 4 39
Projekti 
palaverit
5 5 5 1 1 1 12
Vaatimus- 
määrittely 
palaverit
5 7 7 7 5 3 34
Projektin 
suunnittelu ja 
raportointi
4           4
Projekti- 
suunnitelman 
Kirjoitus
9 3 2 2 2 2 20
Vaatimus 
määrittelyn 
kirjoitus
  6 3 2     10
WWW sivut           3 3
Dokumenttien 
Kasaaminen
    4       2
Projekti yleinen 
(sähköpostit, 
lukeminen) 
1h/vko/henk
3 3 3 3 3 3 18
Sisäinen
Katselmus
4 4 4 3 3 0 18
Yhteensä 33 35 35 25 21 16 165
Taulukko 3.2.1.1 projekti suunnittelun työjako 
Vastuullinen on vahvennettu

3.2.2 Määrittely

Tunnit on jaettu moduulivastaavalle, mutta hän voi jakaa tunteja myös muille.
 
  SS KL JI JT KM RL Yhteensä Status Aikataulu
(Takaraja)
Luennot 4 4 4 4 4 4 24 OK 27.10.1999
Projekti 
palaverit
4 4 4 4 4 4 24 OK 2.11.1999
Toiminnallinen
määrittely 
8 8 8 8 8 8 48 OK 22.10.1999
Tietokantamallin suunnittelu
2*2h
  4 4 4 12 OK 1. 22.10.1999 
2. 29.10.1999
Trasnsactionmallin suunnittelu
2*3h
6 6 6 6 36 NOK 1. 22.10.1999 
2. 29.10.1999
Tietovuokaavion suunnittelu 3 3 3 9 OK 29.10.1999
Käyttöliittymän suunnittelu   3   3 6 OK 1. 22.10.1999 
Koneen asennus: 
NT 
Linux 
Tools
15           15 OK 15.10.1999
Toiminnallinen 
määrittelyn kirjoitus: 
1/2 Use caseista per 
henk
  8     8   16 OK 29.10.1999
Toiminnallinen 
määrittelyn kirjoitus: 
Arkkitehtuurikuvaus, 
ER, oliomalli, 
Tietovuokaavio
      10     10 OK 29.10.1999
Käyttöliittymän 
dokumentointi
          4 4 OK 29.10.1999
PSP:hen 
tutustuminen
10 10 10 10 10 10 50 OK 22.10.1999
Ulkoinen
Katselmus
1 1 1 1 1 1 6 OK  
Sisäinen 
Katselmus & valmistautuminen
8 8 8 8 8 8 48 OK 3.11.1999
Äitidokumenttien päivittäminen 10 10 OK 3.11.1999
Projektin yleinen 
(sähköpostit, 
lukeminen) 
1h/vko/henk
3 3 3 3 3 3 18 OK  
Projektin 
suunnittelu ja 
raportointi
4           4 OK 3.11.1999
Yhteensä 65 54 56 63 54 70 362    
Taulukko 3.2.2.1 määrittely vaiheen työjako 
Vastuullinen on vahvennettu 

3.2.3 Suunnittelu

Vastuulliset voivat jakaa tehtäviänsä myös muille.
 
SS KL JI JT KM RL Yhteensä Status Aikataulu
Luennot 2 2 2 2 2 2 12 NOK 8.12.1999 
Projekti 
palaverit
3 3 3 3 3 3 18 NOK 8.12.1999
ER-mallin jatkosuunnittelu 5 5 10 NOK 20.11.1999
Database connection
suunnittelu
16 16 NOK 20.11.1999
Database connection 
alpha-proto toteutus
16 16 NOK 8.12.1999
Request handler
suunnittelu
20 20 NOK 20.11.1999
Request handler
alpha-proto toteutus
16 16 NOK 8.12.1999
XML Handler
Suunnittelu
10 10 NOK 20.11.1999
XML Handler
alpha-proto  toteutus
15 15 NOK 8.12.1999
Content service
suunnittelu
10 10 NOK 20.11.1999
Contents service
alpha-proto  toteutus
15 15 NOK 8.12.1999
website generator
Suunnittelu
20 20 NOK 20.11.1999
website generator
alpha-proto  toteutus
10 10 NOK 8.12.1999
Website HTML
Suunnittelu
20 20 40 NOK 20.11.1999
Website HTML
alpha-proto toteutus
10 30 40 NOK 8.12.1999
Checkmate
Suunnittelu
10 10 NOK 20.11.1999
Checkmate
alpha-proto toteutus
20 20 NOK 8.12.1999
Client data communicator
suunnittelu
30 30 NOK 20.11.1999
Client data communicator
alpha-proto toteutus
30 30 NOK 8.12.1999
Testaussuunnitelman
kirjoitus ja yhteenveto
15 15 NOK 8.12.1999
Teknisen määrittelyn
yhteenveto
10 10 NOK 8.12.1999
Alpha-proton integrointi 5 5 10 NOK 5.12.1999
Alpha-proton testaus 5 10 15 NOK 8.12.1999
XML 2 2 2 6 NOK 20.11.1999
Oliomalli 4 4 8 NOK 8.12.1999
Solid + Mess serveriin
tutustuminen
8 8 NOK 8.12.1999
Vica 10 10 NOK 8.12.1999
Projektin 
suunnittelu ja 
raportointi
8           8 NOK 8.12.1999
Projekti yleinen 
(sähköpostit, 
lukeminen) 
1h/vko/henk
5 5 5 5 5 5 30 NOK 8.12.1999 
Ulkoinen
Katselmus
1 1 1 1 1 1 6 NOK 8.12.1999
Sisäinen 
katselmus
20 20 5 5 5 5 60 NOK 8.12.1999
Äitidokumenttien
päivittäminen
10 10 NOK 8.12.1999
Yhteensä 66 76 98 98 101 96 534 NOK  
Taulukko 3.2.3.1 suunnitteluvaiheen työjako 
Vastuullinen on vahvennettu

3.2.4 Prototyyppi 1

 
  SS KL JI JT KM RL Yhteensä Status Aikataulu
Projekti 
palaverit
3 3 3 3 3 3 18 NOK  
Suunnittelu 40 40 40 40 40 40 240 NOK  
Projektin 
suunnittelu ja 
raportointi
4           4 NOK  
Projekti yleinen 
(sähköpostit, 
lukeminen) 
1h/vko/henk
5 5 5 5 5 5 30 NOK  
Ulkoinen
Katselmus
1 1 1 1 1 1 6 NOK  
Sisäinen katselmus
ja valmistautuminen
10 10 10 10 10 10 60 NOK
Äitidokumenttien päivittäminen 10 10 20
Yhteensä 63 59 69 69 59 59 378 NOK  
Taulukko 3.2.4.1 prototyyppi 1 työjako 
Vastuullinen on vahvennettu

3.2.5 Prototyyppi 2

 
  SS KL JI JT KM RL Yhteensä Status Aikataulu
Luennot 2 2 2 2 2 2 12 NOK  
Projekti 
palaverit
3 3 3 3 3 3 18 NOK  
Suunnittelu 25 25 25 25 25 25 150 NOK  
Projektin 
suunnittelu ja 
raportointi
4           4 NOK  
Projekti yleinen 
(sähköpostit,
lukeminen) 
1h/vko/henk
5 5 5 5 5 5 30 NOK  
Ulkoinen
Katselmus
1 1 1 1 1 1 6 NOK  
Sisäinen katselmus
ja valmistautuminen
10 10 10 10 10 10 60 NOK
Äitidokumenttien päivittäminen 10 10 20
Yhteensä 50 46 46 46 56 56 300 NOK  
Taulukko 3.2.5.1 prototyyppi 2 työjako 
Vastuullinen on vahvennettu

3.2.6 Luovutus

 
  SS KL JI JT KM RL Yhteensä Status Aikataulu
Projekti 
palaverit
6 6 6 6 6 6 36 NOK  
Paketointi     5 5 5   15 NOK  
Projektin 
raportointi
5           5 NOK  
Ohjeiden 
viimeistely
  5       5 10 NOK  
UlkoinenKatselmus 1 1 1 1 1 1 6 NOK  
Sisäinen katselmus
ja valmistautuminen
10 10 10 10 10 10 60 NOK
Dokumenttien päivittäminen 10 10 10 10 40
Yhteensä 32 32 22 32 32 22 172 NOK  
Taulukko 3.2.6.1 luovutusvaiheen työjako 
Vastuullinen on vahvennettu

3.3 Kustannusarvio

Kustannusarviossa käytämme usein yhtiön sisäisessä laskutuksessa käytettyä 350mk/h/henk se kerrottuna kokonaistyömäärällä saamme projektin kustannuksen työosuuden, johon lisäämme laitehankintamenot. Kustannuksiin ei oteta huomiota Lucos-projektin tuotteita eikä asiakkaan lisenssillä käytettyjä ohjelmia
 
 
 tunnit   tuntihinta   yhteensä 
1886h 350mk/h 660100mk
Taulukko 3.3.1

 
Työtunnit 660100mk
Laite 6000 mk
Yhteensä 666100mk
Taulukko 3.3.2

Työmenetelmät

4.1 Työkalut ja laitteistot

4.2 Testaus

Testauksen suunnittelusta vastaa projektin testausvastaava. Suunnittelu itsessään seuraa V-mallin mukaista järjestystä siten, että suunnitteluprosessi tuottaa kullekin protoiluvaiheelle oman testaussuunnitelman. Uuden suunnitelman toteuttaminen tapahtuu käytännössä siten, että aikaisempaan suunnitemaan lisätään niiden ominaisuuksien testitapaukset, jotka uusi protomalli pitää sisällään. Lisäksi mikäli jo toteutetuissa testitapauksissa havaitaan virheitä tai jo olemassa olevien ominaisuuksien toteutusta on jouduttu muuttamaan, päivitetään kyseiset testitapaukset uusiin suunnitelmiin.

4.3 Dokumentointimenetelmät

Projektin tuottamien dokumenttien pohjana käytetään kurssin tarjoamia dokumenttipohjia. Mikäli joihinkin tarvittaviin dokumentteihin ei ole pohjia saatavana kurssin puitteissa, hankitaan tarkoitukseen sopiva dokumenttipohja muualta (standardit, kirjallisuus).

Dokumenttien laadun tarkkailu toteutetaan katselmuksilla/tarkastuksilla. Laaduntarkkailu- ja tarkastusmenettelyt on kuvattu tarkemmin tämän dokumentin luvussa 5.

Kaikki projektin dokumentaatio toimitetaan html-muodossa. Dokumentit varastoidaan TKK:n atk-keskuksen koneille kurssin suosittelemaan hakemistohierarkiaan. Projektin dokumentaation pääsivu löytyy osoitteesta http://www.hut.fi/~llauren/76115/. Dokumenttiarkistoon varastoidaan myös kaikki varsinaisen projektidokumentaation, ohjelmiston määrittelyjen ja suunnitelmien lisäksi tuotettu dokumentaatio, kuten kokousten esityslista ja pöytäkirjat, työkaluihin ja menetelmiin liittyvät ohjeet, linkkilistat ja muu satunnainen informaatio. Dokumentit tallennetaan määriteltyihin paikkoihin ja kaikilla projektiryhmäläisillä tulee olla luku- ja kirjoitusoikeudet dokumentteihin. Lisäksi tulee huolehtia, että kaikki dokumentit ovat nähtävissä www-selaimella myös atk-keskuksen ulkopuolelta.

Tuotetun ohjelmakoodin dokumentoinnissa ja kommentoinnissa noudatetaan Java-kielellä toteutettujen moduulien osalta JavaDoc Style Guide:n mukaista kommentointityyliä. Ohjelmakoodin dokumentaatio tuotetaan sitten JavaDoc työkalulla html-muotoon ja varastoidaan CVS versionhallintajärjestelmään..

Muiden kuin Java-kielellä toteutettujen moduulien kommentoinnissa noudatetaan soveltuvin osin edellä mainitun tyylioppaan ohjeita, sekä määrittelyvaiheessa luotavaan tyylioppaaseen.

4.4 Projektityön menetelmät

4.4.1 Palaverikäytännöt

Projektin palaveriajat sovimme joko edellisessä kokouksessa tai sitten sähköpostikierroksella n. viikko ennen palaveria ja samalla esitettään palaverin pääaiheet ja tavoitteet, vastuullisen henkilön tulee seurata palaverissä näiden toteutumista. Tästä vastaa se henkilö, jonka vastuulla kyseinen palaveri on.

Kokouksen alussa palaverin vastuuhenkilö käy vielä tarkasti läpi asiat, jotka siinä palaverissa tulee käydä läpi ja mitä päätöksiä ja lopputuloksia siitä palaverista odotetaan. Palaverin vastuuhenkilö kirjaa tärkeimmät päätökset ja lähettää ne koko projektiryhmälle sähköpostiviestinä sekä tallentaa ne projektiryhmän www-sivuille arkistoon. Palaveria suunniteltaessa varmistetaan tietokoneen läsnä olo, jotta päätökset voidaan kirjoittaa suoraan sähköiseen muotoon sekä käsiteltävään asiaan tarvittavien dokumenttien löytyminen tietokoneelta.

Pitää kerran viikossa palaverin, joka ajoittuu määrittelyvaiheessa ke 16-> joko kurssin luennon jälkeen tai suoraan jos luentoa ei ole.

4.4.2 Työajan ja virheiden raportointi

Työajan seurantaan käytetään kurssin järjestämää raportointijärjestelmää. Raportoinnissa käytetään MS-Projektilla tehtyä tehtävä listaa, tehtävälista tehdään edellisen vaiheen lopussa ja siihen  jokainen projektiryhmäläinen arvioi työmäärät sekä tarvittavat tehtävät ennen tämän listan palautusta. Työaikaa seurataan raportoinnin jälkeen valmistumispäivä arviolla sekä käytetyllä työmäärällä.

Virheiden raportointiin käytämme kurssin raportointityökalua. Testaajan tulee lähettää myös modulin vastuulliselle tieto virheen löytämisestä. Virheistä tulee tiedottaa myös tätä modulia käyttävien modulien vastuullisille, jotta he voivat testata uudestaan toiminnot korjauksen jälkeen.

4.4.3 Sisäinen tiedonkulku

Projektiryhmällä on sähköpostijakelulista, jolla tavoittaa kaikki ryhmäläiset. Tätä käytetään tiedonvälitykseen ryhmän välillä. Kaikki päätökset, ohjeet ja kurssia koskeva tiedotus tulee myös tallentaa projektin www-sivuille. Vaiheen tekemättömiä tehtäviä sekä niiden statusta varten muodostetaan ryhmän sivulle To-Do -lista, nakkilista. Siihen merkitään tehtävä vastuullinen, aikaraja, status sekä kommentit. Kaikilla on oikeus päivittää tuota listaa.

4.4.4 Dokumenttien hallinta

Projektivaiheiden lopputuotteet sekä  tuotetta kuvaavat kaaviot ja kuvat tulee tallentaa www-sivujen lisäksi versionhallintaa varten CVS-järjestelmään. Dokumenteille annetaan silloin myös leimat, jotka kertoo sen statuksen, avainsanat, vaiheen ja modulin. Arvot on lueteltu taulukossa:
 
 
Status Draft
Freezed
Approved
Current
Obsolated
Keywords Tässä muutama esimerkki, lisää voi keksiä:
projektisuunnitelma
vaatimusmääritelmä
fyysinen arkkitehtuurikaavio
ER-kaavio
Luokkakaavio
Vaihe PS

SU
P1
P2
LU
Moduli Tässä muutama esimerkki, lisää voi keksiä:
Projekti
XML-parser
Mess-gateway
Tietokanta
Taulukko 4.4.4.1 CVS:n dokumenttien hallinnan avainsanat

4.5 Riskien hallinta

Projektin riskienhallinta suoritetaan kurssin Tik-76.161 Riskienhallinta ohjelmistoprojekteissa mukaisesti. Koko projektiryhmä osallistuu kurssille ja siten myös riskienhallinnasta tulee koko projektiryhmän yhteinen asia.

Ensin projektiryhmä tutustuu riskienhallintaan ja käytettävään riskienhallintamenetelmään kahdella luennolla: 8.10. ja 15.10. Varsinainen riskienhallinta tapahtuu käyttäen Riskit menetelmää (The Riskit Method for Software Risk Management, version 1.00, CS-TR-3782, 1997. Computer Science Technical Reports. University of Maryland. College Park, MD.).

Riskienhallintasessioita pidetään projektin aikataulua myötäillen siten, että ensimmäinen pidetään projektisuunnittelu -vaiheen päätyttyä, toinen määrittelyvaiheen jälkeen, kolmas suunnitteluvaiheen ja vastaavasti neljäs ja viides prototyyppi 1- ja prototyyppi 2-vaiheiden jälkeen. Tätä aikataulua myötäillen projektin riskit raportoidaan erillisellä vaiheiden mukaan täydennettävällä riskienhallintaraportilla. Tässä dokumentissa ylläpidetään päivitettyä yhteenvetoa tärkeimmistä riskeistä ja kontrolloivista toimenpiteistä.

Yleisenä periaatteena on, että perinteisen paperinmakuisen riskien listaamisen sijasta pyritään siihen, että tämän projektin riskienhallinta keskittyy aktiiviseen ja suunnitelmalliseen toimintaan riskitason alentamiseksi. Hallittu ja suunnitelmallinen Riskit menetelmän käyttö ja koko projektiryhmän osallistuminen jatkuvaan riskienhallintaprosessiin antaa tälle erinomaiset mahdollisuudet.

4.5.1 Tärkeimmät riskit

Koko projektiryhmän voimin 22.10.1999 pidetyn riskienhallintatilaisuuden tuloksena määriteltiin taulukossa 4.5.1 esitetyt riskit, joiden katsottiin edustavan suurimpia uhkia tälle projektille. Taulukon sarakkeen "Todennäköisyys" numeroarvot kuvaavat riskin todennäköisyyttä asteikolla 1 = hyvin todennäköinen ... 4 = ei lainkaan todennäköinen. Sarakkeiden "Haitta ryhmälle" ja "Haitta asiakkaalle" numeroarvot kuvaavat riskin toteutumisesta mainitulle sidosryhmälle aiheutuvaa haittaa tai menetystä asteikolla 1 = erittäin suuri ... 4 = vähäinen.
Prioriteetti  Tekijä  Tapahtuma  Todennä-
köisyys 
Reaktio  Seuraus  Haitta ryhmälle  Haitta asiakkkaalle 
1 Kaikilla projektiryhmän jäsenillä on ulkopuolisia esteitä, kuten työ ja muut opinnot. Jonkun projektiryhmäläisen aika ei riitä suunniteltujen tehtävien tekemiseen.  1 Tehtävien uudelleenorganisointi. Muille projektiryhmäläisille jää enemmän tehtävää. 2 4
3  Projektilla ei ole rahaa käytössä työkaluhankintoihin. Työkalut/menetelmät osoittautuvat riittämättömiksi tai huonoiksi. 2 Vaihdetaan työkalua tai -menetelmää - Joudutaan tekemään joitain työvaiheita uudelleen.
- Työmäärä kasvaa.
- Työteho kasvaa.
3 3
Junnataan vanhoilla työkaluilla ja menetelmillä. - Työ on tehotonta.
- Laatu ja toteutuksen laajuus kärsivät.
2 2
2   Järjestelmästä tulee liian laaja toteutettavaksi projektin aikataulussa. 2   Järjestelmää ei ehditä toteuttaa kunnolla miltään osa-alueelta. 3 1
5   Projektiryhmän sisäinen ilmapiiri järkkyy. 3 Ilmapiirin kohotustilaisuus. - Ilmapiiri kohenee, ehkä vähän.
- Seuraavan päivän työpanos on huono.
3 4
Ilmapiiri huononee entisestään. 1 2
4 Kellään projektiryhmän jäsenistä ei ole juurikaan aikaisempaa kokemusta tai asiantuntemusta PSP:stä. Järjestelmästä ei tule hyvää, helppokäyttöistä eikä toimivaa. 4 Dokumentoidaan hyvin ja näytetään tyytyväisiltä. Saadaan laatupalkinto kyseenalaisin keinoin ja ollaan ainosti tyytyväisiä. 3 1
Järjestelmän toteutus ei onnistu. 3 Opiskellaan Järjestelmän toteutus jää vajavaiseksi. 2 1
 6    Tuotetut dokumentit ja ohjelmakoodi tuhoutuvat.  4  Yritetään tehdä tuhoutuneet osat uudelleen. - Aika ei riitä.
- Työmäärä kasvaa räjähdysmäisesti.
 1
- Ei saada mitään valmiiksi.
- Ei saada opintoviikkoja.
1 1
Taulukko 4.5.1.1: PSP-HUT projektin tärkeimmät riskit 

4.5.2 Kontrolloivat toimenpiteet

Tärkeimmille riskeille määrittelimme seuraavanlaisia kontrolloivia toimenpiteitä

Riski 1:

Suunnitellaan työnjako, tehtävät ja työmäärät huolellisesti, ajoissa ja otetaan huomioon projektiryhmäläisten todellinen käytettävissä oleva aika.

Riski 2:

Pidetään vaatimukset realistisina ja rajataan vaatimuksia tiukasti. Pidetään asiakas ajan tasalla suunnitelluista ominaisuuksista ja vaadittavista työmääristä. Priorisoidaan vaatimukset ja rajataan jo 1. prototyyppivaiheen jälkeen lopullinen toteutettava toiminnallisuus.

Pidetään huolta, että toteutetaan ominaisuudet määrittelyjen mukaisesti ja prioriteettijärjestyksessä, eikä aleta toteutusvaiheessa lisäämään toiminnallisuuteen pieniäkään määrittelemättömiä toimintoja tai ominaisuuksia.

Riski 3:

Evaluoidaan työkaluja ennen valintaa ja pyritään valitsemaan sellaisia työkaluja, jotka tunnetaan ja tiedetään hyviksi ja tehokkaiksi.

Riski 4:

Opiskellaan PSP:tä. Otetaan PSP käyttöön projektin toteuttamisvaiheessa.

Riski 5:

Pidetään ryhmähenkeä kohottavia tilaisuuksia. Huolehditaan, että ryhmän sisäinen kommunikaatio toimii.

Riski 6:

Järjestetään versionhallinta kuntoon ja säilytetään koodia ja dokumentaatiota TKK:n ATK-Keskuksen varmistetuilla levyillä.

4.6 Jäsenten roolit ja tehtäväjako

Projektiryhmän roolit on nimetty kappaleessa 1.3.2. Näiden roolien lisäksi koko ryhmä osallistuu taitojensa mukaan varsinaiseen toteutukseen saaden vastuulleen aina tietyn modulin. Modulin omistajat nimetään suunnitteluvaiheessa. Tehtäväkohtaiset vastuu jaot tapahtuvat aina edellisen vaiheen lopussa, tehtäviä suunniteltaessa pääsääntöinä pidetään

4.7 Lähdeluettelo

 SEI:n PSP www-sivut.

Ohjaussuunnitelma

5.1. Laadunvarmistus

Jokainen projektiryhmän jäsen on ensisijaisesti itse vastuussa oman työnsä laadukkuudesta. Projektissa on tiukat aikatauluvaatimukset ja kriteerit työn laadukkuudelle. Nämä eivät kuitenkaan ole keskenään ristiriitaisia tavoitteita. Pikemminkin laadukkaat työtavat ja menetelmät ovat avain aikataulun pitämiseksi. Tämän projektin laadunvarmistus pohjaa "Mitä ikinä teetkin, tee se kerralla oikein" -periaatteeseen. Käytännössä tämä toteutetaan siten, että kaikki työ on suunnitellaan hyvin, suunnitelmia noudatetaan ja suunnitelmien toteutumista seurataan.

Työn suunnittelu etenee vaihekohtaisesti siten, että kunkin työvaiheen aluksi projektisuunnitelmaa tarkennetaan aktiviteettien ja resurssoinnin osalta. Projektisuunnittelusta vastaa ensisijaisesti projektipäällikkö, mutta jokainen projekti ryhmän jäsen vastaa siitä, että suunnitelma on sellainen, että siihen itse pystyy henkilökohtaisesti sitoutumaan. Lisäksi sovitaan ja määritetään prosessit ja menetelmät vaiheen läpiviemiseksi. Suunnitteluun liittyy myös kuhunkin vaiheeseen liittyvien katselmointien ja testauksen yksityiskohtainen suunnittelu. Laatupäällikön tehtävänä on osallistua suunnitteluun aktiivisesti ja sitä kautta varmistaa, että suunnitelma on realistinen ja sovitut työmenetelmät ovat riittäviä toivotun laadun varmistamiseksi. Ensisijaisesti työmenetelmien valinnassa pyritään varmistamaan, että ne tukevat parhaalla mahdollisella tavalla vaatimusmäärittelyssä esitettyjen laatukriteerien (lisää linkki) toteutumista.

Projektipäällikkö seuraa aktiivisesti visualisointityökalun avulla ja suoralla kommunikoinnilla projektiryhmän kanssa, että työ etenee aikataulussaan. Korjaavat toimenpiteet aloitetaan välittömästi, jos tarvetta ilmenee. Projektin laatupäällikön vastuulla on seurata ja varmistaa, että suunniteltuja prosesseja ja menetelmiä toteutetaan projektin jokaisen työvaiheen osalta, ja tarvittaessa sopia korjaavat toimenpiteet projektipäällikön ja muun projektiryhmän kanssa. Koska elämme muuttuvassa ympäristössä, suunnitelmista saatetaan joutua poikkeamaan. Kaikki poikkeamat suunnitellusta dokumentoidaan, perustellaan ja seuraukset analysoidaan.

5.2. Muutostenhallinta

Projektinsuunnitteluvaiheen hyväksyt tuotokset (projektisuunnitelman ja vaatimusmäärittelyn versiot 1.0) ilmaisevat projektiryhmän sitoumuksen toimittaa asiakkaalle tarkalleen se, mitä sovittiin. Tämä tarkoittaa, että kaikki projektista lähtevät muutokset liittyen vaatimusmäärittelyssä ja projektisuunnitelmassa mainittuihin aikataulullisiin, laadullisiin ja sisällöllisiin tavoitteisiin on hyväksytettävä asiakkaalla. Tämä tapahtuu muutospyynnöllä, jossa on kuvattu muutos ja mahdolliset seuraukset projektin tavoitteisiin. Projektipäällikkö käy muutospyynnön läpi yhdessä asiakkaan kanssa, jonka seurauksena se joko hyväksytään tai hylätään. Jos muutostarve lähtee asiakkaalta, on myös asiakkaan esitettävä perusteltu muutospyyntö, jossa kuvataan muutos ja sen tärkeys suhteessa jo sovittuihin tavoitteisiin. Projektipäällikkö on vastuussa siitä, että projektiryhmä analysoi vaaditun muutoksen vaikutukset. Jos esitetyt uudet vaatimukset vaarantavat jo sovittujen tavoitteiden toteutumisen, on ennen muutospyynnön hyväksymistä neuvoteltava uudet asiakasta tyydyttävät tavoitteet.

5.3. Katselmukset

Yleisperiaatteena on, että kaikki projektin kaikki vaihetuotteet katselmoidaan projektiryhmän sisäisesti ennen palautusta. Jotta katselmoitavan materiaalin erityispiirteet voidaan huomioida, katselmoinnit suunnitellaan vaihetuotekohtaisesti. Suunnitelmassa määritetään katselmointiryhmä ja roolit/näkökulmat kullekin katselmointiin osallistujalle. Rooleja valittaessa pyritään erityisesti huomioimaan, että katselmoitava vaihetuote tulee tarkastettua jokaista vaatimusmäärittelyssä esitettyä laatukriteeriä vasten ja että joku on vastuussa konsistenttiudesta äitidokumenttien kanssa. Suunnittelussa myös varataan katselmointiajankohta siten, että korjauksiin jää tarpeeksi aikaa ennen palautusta. Ennen varsinaisen katselmoinnin järjestämistä, varmistetaan, että vaihetuote on kypsä katselmoitavaksi. Lisäksi varmistetaan, että katselmoijilla on riittävästi aikaa materiaaliin tutustumiseen ja kommentointiin. Vaihetuotteen vastuuhenkilö vastaa katselmoinnin järjestämisestä, projektipäällikkö toimii katselmoinnin puheenjohtajana ja laatupäällikkö vastaa, että sovittua katselmusprosessia noudatetaan. Katselmoinnista kirjoitetaan pöytäkirja ja sopimuksen mukaan joko laatupäällikkö tai projektipäällikkö varmistaa, että vaihetuotteen vastuuhenkilö tekee sovitut korjaukset materiaaliin ennen sen palautusta.