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

Samankaltaiset tiedostot
Loppuraportti. Populous. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Projektisuunnitelma Nero-ryhmä

Ylläpitodokumentti. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

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

Projektisuunnitelma Viulu

Convergence of messaging

Vaatimusmäärittely. Populous. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ylläpitodokumentti Mooan

Populaatiosimulaattori. Petteri Hintsanen HIIT perustutkimusyksikkö Helsingin yliopisto

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

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

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

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

Projektisuunnitelma. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

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

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

Testausraportti v.1.3

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

Projektisuunnitelma. AssariXP-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ohjelmiston toteutussuunnitelma

Projektisuunnitelma. Geneerinen kaavioiden piirto-ohjelmisto

Yhteenvetodokumentti. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Projektisuunnitelma. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Graafinen käyttöliittymä lintujen rengastusjärjestelmään Projektisuunnitelma

Helsingin yliopisto Tietojenkäsittelytieteen laitos Ohjelmistotuotantoprojekti. Esimerkkituoteperhe. Projektisuunnitelma

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

Matematiikan oppifoorumi Projektisuunnitelma

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

Projektisuunnitelma. Kotkat-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ohjelmistotuotantoprojekti

Projektisuunnitelma. Kaapo - Kaavioiden piirto-ohjelma

Projektityö

Ilmoittautumisten profiloija (jatkoprojekti) ILPO2

HELSINGIN YLIOPISTO TIETOJENKÄSITTELYTIETEEN LAITOS OHJELMISTOTUOTANTOPROJEKTI HABA Projektisuunnitelma versio 0.1

TIETOKANTA MERIKOTKIEN SEURANTAAN Projektisuunnitelma

UCOT-Sovellusprojekti. Testausraportti

Kuopio Testausraportti Asiakkaat-osakokonaisuus

Käyttöohje. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

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

Subversion-ohje. Linux Traffic Control-käyttöliittymä Ryhmä paketti2

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

HELSINGIN YLIOPISTO TIETOJENKÄSITTELYTIETEEN LAITOS OHJELMISTOTUOTANTOPROJEKTI HABA Projektisuunnitelma

CVS. Kätevä väline usein päivitettävien tiedostojen, kuten lähdekoodin, hallitsemiseen

58160 Ohjelmoinnin harjoitustyö

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

Yhteenvetodokumentti. PLAYOFF Jari Anttila Sanna Fröblom Aarno Sandvik Tommi Paavilainen Miikka Kohijoki. Päivi Pääkkö, ohjaaja

Playoff kokouspöytäkirja 4

Tietotekniikan Sovellusprojektit

Testaussuunnitelma Labra

T Loppukatselmus

Ylläpito-ohje. Matematiikan oppifoorumi. Carl Johansson Jukka Kariola Outi Marttila Helena Venäläinen Sampsa Virtanen. Ohjaaja.

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

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

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

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

Loppuraportti. HeTLi. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

Projektisuunnitelma. Linux Traffic Control-käyttöliittymä Ryhmä paketti2

OHJ-3010 Ohjelmistotuotannon perusteet. Ohjelmistoprojektin hallinta

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

Lohtu-projekti. Testaussuunnitelma

Toteutusvaihe T3 Digi-tv: Edistymisraportti

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

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

Lohtu-projekti. Projektisuunnitelma. Versiohistoria: Luonnos Virve Korjailtu. Mukana riskienhallinta ja Mari, Kimmo, Virve

T Testiraportti - järjestelmätestaus

Tahiti tähtitieteellisten havaintojen tietokanta

Convergence of messaging

Kieliaineistojen käyttöoikeuksien hallinnan tietojärjestelmä

T Projektikatselmus

Sopimus Asiakas- ja potilastietojärjestelmästä. Liite N: Kielivaatimukset

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

T Testiraportti - integraatiotestaus

Käyttöohje. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

TIETOKANTA MERIKOTKIEN SEURANTAAN Projektisuunnitelma

Ohjelmistojen suunnittelu

IT2015 EKT ERITYISEHTOJA OHJELMISTOJEN TOIMITUKSISTA KETTERIEN MENETELMIEN PROJEKTEILLA LUONNOS

Verkkopokerijärjestelmä Projektisuunnitelma Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Loppuraportti. Matematiikan oppifoorumi. Carl Johansson Jukka Kariola Outi Marttila Helena Venäläinen Sampsa Virtanen. Ohjaaja.

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

Lego Mindstorms anturit

Asennusohje. Sahara-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Siimasta toteutettu keinolihas

Suunnitteluvaihe prosessissa

Projektiorganisaation kuuluvat projektin asiakas, projektin vastuuhenkilö, projektiryhmän ohjaaja sekä projektiryhmä.

Projektisuunnitelma Vesiprosessin sekvenssiohjelmointi ja simulointiavusteinen testaus

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Projektisuunnitelma 0.11

UCOT-Sovellusprojekti. Asennusohje

S11-09 Control System for an. Autonomous Household Robot Platform

Projektisuunnitelma. Dogma

CoMa - Projektisuunnitelma

Yhteenvetodokumentti. myva. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Tehokkaiden strategioiden identifiointi vakuutusyhtiön taseesta

Luonnosversio Tommi Koivula hyväksytty versio Tommi Koivula

Projektisuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Harjoitustyö Case - HelpDesk

Kuopio Testausraportti Kalenterimoduulin integraatio

Ohjelmisto on selainpohjaisen käyttöliittymän tarjoava tietokantajärjestelmä merikotkien seurantaan WWF:n Merikotka-työryhmän tarpeisiin.

Transkriptio:

Projektisuunnitelma Populous Helsinki 9.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Heli Borg Markus Heinonen Ville Luolajan-Mikkola Olli Orajärvi Asiakas Petteri Hintsanen Johtoryhmä Juha Taina Turjo Tuohiniemi Kotisivu http://www.cs.helsinki.fi/group/populous Versiohistoria Versio Päiväys Tehdyt muutokset 1.2 9.12.2005 Päivitetty aikataulua 1.1 5.10.2005 Päivitetty versio 1.0 20.9.2004 Ensimmäinen versio 0.9 17.9.2004 Viimeinen luonnos 0.2 14.9.2004 Toinen luonnos 0.1 14.9.2004 Ensimmäinen luonnos

Sisältö i 1 Johdanto 1 1.1 Työn aihepiiri................................ 1 1.2 Toteutettava tuote.............................. 1 2 Organisaatio 1 2.1 Projektiryhmä................................ 1 2.2 Projektin ohjaaja.............................. 2 2.3 Projektin johtoryhmä............................ 2 2.4 Asiakas................................... 2 2.5 Vastuut................................... 2 3 Työn yleiskuvaus 2 3.1 Osajärjestelmät............................... 2 3.2 Liitynnät muihin järjestelmiin....................... 3 3.3 Toteutusympäristö.............................. 3 3.4 Ohjelmiston vaatimukset.......................... 3 3.5 Kokoarvio.................................. 4 3.5.1 LOC................................ 4 3.5.2 FP.................................. 4 4 Aikataulu 5 4.1 Vaiheet................................... 5 4.1.1 Projektisuunnitelma........................ 5 4.1.2 Vaatimusmäärittely......................... 6 4.1.3 Suunnittelu............................. 6 4.1.4 Toteutus............................... 6 4.1.5 Testaus............................... 6 4.1.6 Käyttöönotto............................ 6 4.1.7 Loppuraportti............................ 6 4.2 Aikajaksot.................................. 6 4.3 Määräajat.................................. 7 5 Työskentelytavat 7

ii 5.1 Kokoukset.................................. 8 5.2 Bugien raportointi.............................. 8 6 Riskianalyysi 8 6.1 Suuri riski.................................. 8 6.2 Mahdollinen riski.............................. 9 6.3 Pieni riski.................................. 9 7 Muuta 10 7.1 Tuotettavat dokumentit........................... 10

1 Johdanto 1 Tämä dokumentti kuvaa Helsingin yliopiston tietojenkäsittelytieteen laitoksen syksyn 2004 ohjelmistotuotantoprojektin Populous suunnitelman. Dokumentti on tarkoitettu pääasiassa ryhmän itsensä, asiakkaan ja projektin vastuuhenkilöiden luettavaksi. Kuvattuna ovat projektin tavoitteet, organisaatio, aikataulu ja yleisen tason suunnitelma projektn toteuttamiseksi. Tätä dokumenttia tullaan päivittämään tarpeen mukaan projektin edistyessä. 1.1 Työn aihepiiri Erilaisten geenikartoitusmenetelmien ja genomin rakenteen selvittämiseen tarkoitettujen menetelmien testaamisessa simuloidut aineistot ovat välttämättömiä. Simuloinnin kohteena on tyypillisesti ns. populaatioisolaatti: populaatio koostuu alkutilanteessa pienestä joukosta perustajayksilöitä, jonka jälkeen populaatio kasvaa tietyn ajan määriteltyyn loppukokoon saakka. Simulaatiossa jäljitellään perustajajoukon geenien periytymistä laajenemisprosessin aikana. 1.2 Toteutettava tuote Projektin tehtävänä on korvata osia HIIT-perustutkimusyksikössä jo käytössä olevasta populaatiosimulaattorina. Tavoitteena on suoraviivaista simulaatioprosessia, suunnitella ja toteuttaa ohjelmistolle käyttöliittymä sekä parantaa prosessin toimivuutta. 2 Organisaatio Projektin organisaatioon kuuluvat projektin toteuttava projektiryhmä, projektin ohjaaja, projektin johtoryhmä sekä asiakas. Projektiryhmän vastuualueet on määritelty omassa osiossaan. 2.1 Projektiryhmä Ville Luolajan-Mikkola, luolajan@cs.helsinki.fi Heli Borg, heli.borg@cs.helsinki.fi Markus Heinonen, markus.heinonen@cs.helsinki.fi Olli Orajärvi, olli.orajarvi@helsinki.fi

2 2.2 Projektin ohjaaja Jenni Valorinta, valorint@cs.helsinki.fi 2.3 Projektin johtoryhmä Juha Taina, taina@cs.helsinki.fi Turjo Tuohiniemi 2.4 Asiakas Petteri Hintsanen, Petteri.Hintsanen@cs.Helsinki.FI 2.5 Vastuut Projektipäällikkö - Ville Luolajan-Mikkola Mittarivastaava - Olli Orajärvi Vaatimusdokumentti - Heli Borg ja Olli Orajärvi Suunnitteludokumentti - Markus Heinonen ja Olli Orajärvi Testausdokumentit, käyttöohje - Heli Borg ja Markus Heinonen HTML-vastaava - Heli Borg 3 Työn yleiskuvaus Tässä luvussa määritellään projektin arkkitehtuuri karkealla tasolla, toteutusympäristö sekä vaatimuksia ohjelmistolle. Vaatimukset tarkennetaan vaatimusmäärittelyssä ja arkkitehtuuri suunniteludokumentissa. 3.1 Osajärjestelmät Nykyisen järjestelmän osat markertool ja simco säilytetään ennallaan. Osajärjestelmien genped ja chrom toiminnallisuus yhdistetään uuteen, tässä projektissa toteutettavaan sovellukseen. Uuden sovelluksen pääosa, populous, sisältää toteutuksen simulointiin, eli luo annetuilla parametreilla sukupuun markertool:n vaatimassa muodossa ja ajaa markertool:n. Tässä osassa sovellusta tulee olemaan sekä komentorivipohjainen käyttöliittymä batch-ajoja

varten, että interaktiivinen tekstipohjainen ncurses-kirjastolla toteutettu käyttöliittymä. Lisäksi populous-osajärjestelmää voidaan ajaa palvelintilassa, jolloin simulaatioajoja tehdään asiakassovellusten tekemistä palvelupyynnöistä. Järjestelmän asiakassovellus toteutetaan siten, että se voi ajaa useamman simulaatioajon sarjan rinnakkain useilla eri palvelimilla. Asiakassovellukseen tehdään mahdollisuus käyttää aikaisemman ajon tulosta uusien alkuarvona, sekä määritellä luodaanko palvelinsovelluksessa pelkkä sukupuu vai prosessoidaanko se markertool:lla ja simcolla. 3 3.2 Liitynnät muihin järjestelmiin Toteutettavan sovelluksen tulostus toimii syötteenä nykyisen järjestelmän sovellukselle markertool (protokolla tarkennetaan myöhemmin). Uudessa järjestelmässä on myös voitava asettaa alkuarvot aikaisemman ajon tuloksesta, eli sovelluksen on ymmärrettävä myös markertool-sovelluksen tulostusmuoto. 3.3 Toteutusympäristö Projekti toteutetaan tietojenkäsittelytieteen laitoksen Linux-ympäristössä. Pääosa projektista toteutetaan C++-kielellä, ainoastaan erillinen asiakasohjelmisto toteutetaan Javalla. Kaikki tuotettu ohjelmakoodi säilytetään keskitetysti CVS-järjestelmässä. Ohjelmiston kehityksessä voi kukin käyttää haluamaansa kehitysympäristöä, mutta kehitys on oltava mahdollista ja luontevaa myös ilman erillistä yhtenäistä ympäristöä. Ohjelmiston koontiversiot käännetään keskitetysti kehityspalvelimella make-komennolla. 3.4 Ohjelmiston vaatimukset Tässä dokumentissa on ohjelmiston vaatimukset esitetty yleisellä tasolla, ja niitä päivitetään tarpeen mukaan. Osa tässä esitetyistä vaatimuksista on optionaalisia, mutta niitä ei ole eritelty, vaan kaikki näistä on tarkoitus suunnitella ja toteuttaa. Vaatimusten karsimisesta neuvotellaan asiakkaan kanssa erikseen. Ohjelmiston on oltava tulostukseltaan yhteensopiva nykyisen järjestelmän komponenttien markertool ja simco kanssa. Ohjelmistoon on tuotettava nykyistä komentorivipohjaista intuitiivisempi käyttöliittymä. Sovellusta on kuitenkin pystyttävä ajamaan myös pelkästään komentoriviltä batch-ajoja silmälläpitäen. Uutena ominaisuutena ohjelmistoon on toteutettava tuki alipopulaatioille, jolloin alkupopulaatio jaetaan algoritmilla haluttuun määrään osia. Alipopulaatioiden sisällä jäsenet pariutuvat kuten normaalissa isossa populaatiossa, mutta alipopulaatioiden kesken pariutuminen tapahtuu vain annetulla todennäköisyydellä.

Ohjelmistoa halutaan ajettavan useita kertoja peräkkäin aina edellisten tulosten pohjalta. Tätä varten on ohjelmistoon tehtävä mahdollisuus asettaa alkuarvot markertoolsovelluksen tulostuksen pohjalta. Samoilla alkuarvoilla tehtäviä ryhmäajoja on voitava suorittaa rinnakkain määritellyillä koneilla. Ohjelmistossa on voitava luoda myös pelkkä sukupuu, joka voidaan prosessoida tarpeen mukaan useampaankin kertaan rinnakkain markertool- ja simco-sovelluksilla. 4 3.5 Kokoarvio Ohjelmiston kokoa on pyritty arvioimaan sekä aikaisemman tiedon että projektisuunnitelmavaiheessa tunnettujen vaadittujen toiminnallisuuksien pohjalta. Projektiin arvioidaan käytettävän 960 työtuntia. 3.5.1 LOC Aikaisemmissa ohjelmistotuotantoprojekteissa on kukin jäsen tuottanut keskimäärin noin 600 riviä lähdekoodia LOC-menetelmän mukaan. Koska tässä projektissa sovelluksen vaativimmat osat ovat algoritmien toteuttamisessa, jäisi ohjelmiston koko alle keskimääräisen, mutta koska lisäksi asiakasohjelmisto toteutetaan Javalla, voidaan ohjelmarivien määrän päätyvän lähelle keskiarvoa. Kun ryhmässä on neljä jäsentä, on arvio ohjelmarivien määrästä siten 2400. 3.5.2 FP Syötteiden lukumäärä (8, keskimääräinen) alkupopulaation koko loppupopulaation koko sukupolvien määrä alipopulaatioiden määrä alipopulaatioiden risteytymistodennäköisyys alkupopulaation alkuarvot markertool-sovelluksen ajo valinnaiseksi sukupuun syöttö (vain markertool:n ajamista varten) Tulosteiden lukumäärä (1, monimutkainen)

5 sukupuu Ulkoisten liittymien lukumäärä (1, keskimääräinen) markertool-sovelluksen ajaminen Count-total = 43 Sovituskertoimet Fi (0 = ei ollenkaan, 3 = keskimääräisesti, 5 = oleellisesti) Tietoliikenne 2 Hajautettu laskenta 2 Suorituskykyvaatimukset 2 Käyttöympäristö (aiempi kuormitus) 1 Reaaliaikainen tietojen syöttö 0 Tietojen syötön kompleksisuus 3 Tiedostojen reaaliaikainen päivitys 0 Syötteiden, tulosteiden yms. monimutkaisuus 4 Prosessoinnin kompleksisuus 5 Uudelleenkäytettävyys 4 Asennus ja käyttöönotto 2 Monta eri kohdeorganisaatiota 1 Päivitettävyys ja helppokäyttöisyys 3 Yhteensä 29 FP = 40 4 Aikataulu Projektimallina käytetään vesiputousmallia. Ohjelmiston ylläpito rajataan projektin ulkopuolelle; ylläpitoon tarvittava materiaali toimitetaan asiakkaalle valmiin ohjelmiston yhteydessä. 4.1 Vaiheet Projekti on jaettu seitsemään vaiheeseen. Jokaisen vaiheen tulos toimii seuraavaan vaiheeseen syötteenä, eikä vaiheita voidan siten suorittaa merkittävissä määrin rinnakkain. 4.1.1 Projektisuunnitelma Projektin tavoitteet, organisaatio, aikataulu sekä muita yleisiä projektiin liittyviä asioita kirjataan projektisuunnitelmaan. Suunnitelman tietoja päivitetään tarpeen mukaan projektin edistyessä.

6 4.1.2 Vaatimusmäärittely Kartoitetaan asiakkaan kanssa ohjelmiston vaatimukset, sidosryhmät, toiminnot, liittymät ja rajoitukset. Tuloksena saadaan määrittelydokumentti. 4.1.3 Suunnittelu Suunnitellaan ohjelmiston rakenne määrittelydokumentin pohjalta. Tuloksena saadaan dokumentti, joka kuvaa ohjelmiston arkkitehtuurin, tarvittavat algoritmit, tietorakenteet, käyttöliittymän ja testaussuunnitelman. 4.1.4 Toteutus Ohjelmisto toteutetaan suunnitteludokumentin mukaisesti. Tuloksena saadaan vaatimukset täyttävä ohjelmisto ja käyttöohje. Toteutuksen yhteydessä luodaan ohjelmiston osille testitapauksia, joita käytetään testausvaiheessa. 4.1.5 Testaus Tuotettu ohjelmisto testataan suunnitteluvaiheessa tehdyn testaussuunnitelman mukaisesti. Tuloksena saadaan testausdokumentti. 4.1.6 Käyttöönotto Ohjelmisto siirretään toteutusympäristöstä tuotantoympäristöön. Käyttöönoton jälkeen tehdään loppuraportti. 4.1.7 Loppuraportti Ohjelmiston käyttöönoton jälkeen luodaan loppuraportti yhteenvetona projektin kulusta. 4.2 Aikajaksot Vaiheet on jaettu osittain päällekäisiin aikajaksoihin. Aikajaksot on esitetty Gantt-kaaviona kuvassa 1. Jaksoille on jaettu aikaa seuraavasti: Projektisuunnitelma Vaatimusmäärittely Suunnittelu Toteutus Testaus Käyttöönotto 1,5vk 4,5vk 5vk 3,5vk 2vk 2vk

7 Kuva 1: Projektin aikataulu GANTT-kaaviona. 4.3 Määräajat Määräajat on laskettu aikajaksojen keston mukaan siten, että ne olisivat aina projektikokousta edeltävänä päivänä. Takaraja dokumenteille on keskiviikkona klo 14:00 ja maanantaina klo 16:00, koska niiden tutustumiseen ennen seuraavaa kokousta halutaan antaa vähintään yksi ilta- ja yksi aamupäivä aikaa. pe 17.9.2004 T1 Projektisuunnitelma ke 29.9.2004 T2 Määrittelydokumentti ma 4.10.2004 Määrittelydokumentin korjaukset ma 25.10.2004 T3 Suunnitteludokumenin FTR ma 8.11.2004 Suunnitteludokumentti ja testaussuunnitelma korjauksineen ke 10.12.2004 T4 Ohjelmiston toteutus valmis ke 10.12.2004 T5 Testausdokumentti ke 10.12.2004 T6 Loppuraportti pe 10.12.2004 Projektin takaraja 5 Työskentelytavat Ryhmällä on säännöllisiä tapaamisia, joissa jokaisen ryhmän jäsenen on syytä olla läsnä. Lisäksi voidaan tarvittaessa sopia muista tapaamisista, samoin tapaamisista asiakkaan kanssa. Tapaamisten ulkopuolella hoidetaan kommunikaatio pääasiassa sähköpostitse, mutta tarvittaessa myös puhelimitse. Ryhmän kotisivut löytyvät osoitteesta http://www.cs.helsinki.fi/group/populous/. Kotisivuille liitetään tuotetut dokumentit, pöytäkirjat, ajankohtaista tietoa projektin vaiheesta, osallistujien yhteystiedot sekä linkkejä hyödyllisille ulkopuolisille sivustoille. Ryhmän kotihakemisto on /home/group/populous/, johon kaikki projektin materiaali tuotetaan. Valmiit tuotokset pidetään selvästi erillään keskeneräisistä sijoittamalla ne eri alihakemistoon. Kaikista tuotteista kopioidaan uuden version julkaisun yhteydessä kappale tuotteet-hakemistoon

8 siten, että versionumero sisältyy tiedoston nimeen. 5.1 Kokoukset Ryhmä tapaa säännöllisesti kaksi kertaa viikossa: tiistaisin klo 14:15-16:00 huoneessa A318 ja torstaisin klo 08:30-9:45 huoneessa C131. Näiden lisäksi järjestetään 1-2 viikon välein seurantakokous, jossa arvioidaan projektin edistymistä suhteessa aikatauluun. Jokaisen vaiheen lopussa pidetään suunnittelukokous. Suunnitteludokumentille pidetään vielä erillinen tarkastuskokous, jota varten suunnitteludokumentti on oltava toimitettu vähintään kahta päivää aikaisemmin. 5.2 Bugien raportointi Toteutusvaiheessa löydetyistä ohjelmiston bugeista raportoidaan niiden vakavuudesta ja vaikutusalueesta riippuen joko ilmoittamalla kyseisen osion vastaavalle tai koko ryhmälle. Suuremmista ohjelmiston virheistä, esim. rakenteellisista ongelmista, on syytä keskustella ryhmätapaamisissa. 6 Riskianalyysi Riskianalyysi on jaettu kolmeen osaan riskin todennäköisyyden perusteella, suuresta pieneen riskiin. Jokaiselle riskille on annettu määrittely, vaikutus (asteikolla pieni, kohtalainen, suuri, kriittinen), toiminta riskin toteutuessa sekä mahdolliset keinot ennaltaehkäisyyn ja tunnistamiseen. 6.1 Suuri riski Jäsen sairastuu Vaikutus: Pienestä kohtalaiseen sairauden pituudesta ja vakaudesta riippuen. Toiminta: Sairastuneen jäsenen tehtäviä jaetaan tarpeen mukaan muille ryhmän jäsenille. Myös sairastunut pidetään ajan tasalla projektin kehityksestä Uusien työkalujen opettelu hidastaa projektin edistymistä Vaikutus: Kohtalainen. Toiminta: Perehdytään työkaluihin tarkemmin yhdessä. Ryhmän jäsenten taidot eivät riitä suunnitellun toteuttamiseen Vaikutus: Kohtalainen.

Toiminta: Pyritään jakamaan tehtäviä paremmin taitoja vastaavasti, pyritään nostamaan taito riittävälle tasolle tai neuvotellaan asiakkaan kanssa ominaisuuksien karsimisesta. 9 6.2 Mahdollinen riski Huono ohjelmakoodin laatu Vaikutus: Suuri. Toiminta: Ohjelmakoodia siistittävä mahdollisuuksien puitteissa. Tunnistaminen: Vaikeuksia lukea toisten tuottamaa ohjelmakoodia, löytää virheiden aiheuttajia ja refaktoroida ohjelmistoa. Ennaltaehkäisy: Sovitaan yhteisistä ohjelmointityyleistä, noudetaan hyviä ohjemointikäytäntöjä ja puututaan asiaan heti kun siihen on aihetta Arvioitua suurempi työmäärä Vaikutus: Suuri. Toiminta: Neuvoteltava asiakkaan kanssa ominaisuuksien karsimisesta. Ennaltaehkäsy: Pyritään työmäärää arvioitaessa ottamaan huomioon mahdolliset sitä lisäävät tekijät. Aikataulu pettää Vaikutus: Suuri. Toiminta: Neuvoteltava asiakkaan kanssa ominaisuuksien karsimisesta Ennaltaehkäsy: Arvioidaan aikataulu realistisesti. Epäselvät vaatimukset Vaikutus: Kohtalainen. Toiminta: Oltava yhteydessä asiakkaaseen kunnes epäselvyydet on saatu selvitettyä. Tunnistaminen: Eri näkemyksiä vaatimuksista ryhmän sisällä, erimilisyyksiä asiakkaan kanssa Ennaltaehkäisy: Käydään vaatimukset tarkasti alusta alkaen läpi. 6.3 Pieni riski Jäsen keskeyttää Vaikutus: Kriittinen.

Toiminta: Jaetaan keskeyttäneen työt muille. Karsitaan tuotteen ominaisuuksia tarvittaessa. Lopputulos ei tyydytä asiakkaan tarpeita Vaikutus: Kriittinen. Toiminta: Keskustellaan asiakkaan kanssa toimenpiteistä. Ennaltaehkäisy: Hyväksytetään vaatimusmäärittely ja suunnitteludokumentti asiakkaalla. Asiakkaan vaatimusten muuttuminen Vaikutus: Kohtalainen. Toiminta: Ohjelmiston suunnitelmaa muutettava vaatimusten täyttämiseksi. Aikataulusta riippuen neuvoteltava ohjelmiston ominaisuuksien karsimisesta asiakkaan kanssa. Ennaltaehkäisy: Pyritään varautumaan erilaisiin variaatioihin ja suunnitellaan ohjelmistosta joustava. Lisäksi kartoitetaan vaatimukset ja hyväksytetään vaatimusmäärittely ja suunnitteludokumentti asiakkaalla. Laitteisto-ongelmat laitoksen koneissa (palvelin, työasemat, tulostimet) Vaikutus: Kohtalaisesta kriittiseen. Toiminta: Ilmoitettava ylläpidolle asiasta. 10 7 Muuta Tässä osiossa käsitellään kaikkia projektin kulkuun liittyviä mutta muihin osioihin kuulumattomia asioita. 7.1 Tuotettavat dokumentit Projektin dokumentit tehdään LaTeX-muodossa, josta luodaan PDF-versio. Projekteja pidetään ohjelmakoodin tapaan CVS-järjestelmässä kehityksen ajan. Projektisuunnitelman lisäksi tuotetaan projektin aikana seuraavat dokumentit: Vaatimusdokumentti Suunnitteludokumentti Testaussuunnitelma Käyttöohje Testausraportti Loppuraportti