pulsu
(Created by jkaasine 05092008) : Projektisuunnitelma
This page last changed on 2008-11-28 by htmannin.
ProjektisuunnitelmaVersiohistoria:
1. Johdanto1.1. YleistäTämä dokumentaatio on syksyn 2008 ohjelmistotuotantoprojektin Pulsu ryhmän projektisuunnitelma. Dokumentin tarkoitus on kuvata millaiseen projektiin asiakkaan kanssa on ryhdytty ja antaa projektin jäsenille mahdollisuus seurata projektin etenemistä. Suunnitelma pidetään ajan tasalla ja sitä päivitetään tarvittaessa. 1.2. Parannettava järjestelmäPULS -tiedonhakujärjestelmä etsii Internetistä löytyvistä dokumenteista tautiesiintymiä, jotka muokataan ihmisen vapaamuotoisesta tekstistä tietokoneen ymmärtämään muotoon ja syötetään tietokantaan. Järjestelmässä on tällä hetkellä käytössä web-pohjainen käyttöliittymä, jolla voidaan tehdä erilaisia hakuja, sekä ryhmittelyitä tietokannasta löytyvään informaatioon. Käyttöliittymässä on myös mahdollisuus tarkastella tautien maantieteellistä sijoittautumista karttapohjalla. 2. Projektiorganisaatio2.1. Projektin jäsenetHeikki Manninen projektipäällikkö 2.2. Tehtävien kuvaukset ja vastuualueetProjektipäällikkö
Suunnittelupäällikkö
Tukipalvelu- ja koodipäällikkö
Ohjelmistopäällikkö
Laatupäällikkö
2.3. Asiakkaat ja asiakkaan vastuualueetAsiakkaina ovat PULS järjestelmän kehittäjistä Roman Yangarber, sekä Peter von Etter, joka toimii myös kurssin ohjaajana. Asiakkaan vastuulla on osallistua vaatimusmäärittelyyn ja hyväksyä tuotettavalle ohjelmistolle suunnitellut ominaisuudet. Asiakkailla on mahdollisuus projektin aikana osallistua projektiryhmän kokouksiin ja vaatimusmäärittelyiden formaaleihin katselmuksiin. 3. Laitteisto ja ympäristöAikaisempi järjestelmä toimii CMUCL-lispympäristössä, jonka tärkeimpinä osina toimivat:
Projekti toteutetaan MySQL (v.4.1.12) tietokannalla, SBCL-lispympäristössä, samoilla vanhan järjestelmän kirjastoilla ja yleisillä web-tekniikoilla, kuten (x)html, css, javascript ja xml. Sivujen pitää toimia suosituimmilla standardeilla selaimilla kuten Firefox. Ohjelmiston käyttöjärjestelmänä toimii laitoksen CSL-linux ja palvelimena db.cs.helsinki.fi tai sysdb.cs.helsinki.fi. 4. RiskianalyysiProjektin riskit ja niiden hallintaRiskien todennäköisyys ja vakavuus on merkattu asteikolla: vähäinen, kohtalainen, merkittävä
5. Viestintä5.1. Ryhmän sisäinen viestintäProjektiryhmän sisäinen viestintä tapahtuu seuraavilla tavoilla
5.2. Viestintä asiakkaan kanssaProjektipäällikkö hoitaa asiakasta kohtaan tapahtuvan viestinnän. Kokouksissa asiakkaiden kanssa tapahtuva kommunikointi tapahtuu paikalla olevien henkilöiden vaatimusten mukaan, mutta kaikki virallinen dokumentaatio julkaistaan englanniksi. Ohjelmointiin liittyvät muuttujien nimeämiset, kommentoinnit, ym. toteutetaan myös englanniksi.
6. ResurssitProjektiryhmän käytössä on tietojenkäsittelytieteen laitoksen atk -salit, kokoustilat ja mahdollisesti myös oppimiskeskus Alexandrian kokoustilat. Ryhmällä on käytössään myös ryhmähakemisto, subversion -versionhallintajärjestelmä, sähköpostilista, irc-kanava, sekä Helsingin yliopiston wiki. 7. Projektin aikataulu ja töiden ositus7.1. ProjektityöskentelyProjektiryhmä kokoontuu tktl:n tiloissa Vaihe I
Vaihe II
Jokaisesta kokouksesta tehdään muistio, joka julkaistaan wikissä viimeistään seuraavana päivänä. Muistion tekeminen ja julkaisu on aina kokouksessa toimineen sihteerin vastuulla ja sihteerin tehtävää kierrätetään tilaisuudesta riippuen. Kokouksien lisäksi saatetaan tarpeen vaatiessa järjestää ylimääräisiä tapaamisia ideoiden tuottamiseen tai ongelmien ratkaisuun. Jokainen projektin jäsen kirjaa työtuntinsa ennen maanantain kokousta tuntiseurantajärjestelmään. Jokaisessa milestone -ajankohdassa pidetään hyväksymiskokous, jossa käydään yhdessä läpi edellisen vaiheen dokumentaatiot ja arvioidaan mahdollisuudet siirtyä seuraavaan vaiheeseen. Vaatimusmäärittelydokumenteista järjestetään viralliset katselmukset, joiden dokumentaatiot toimitetaan asiakkaille ja projektin jäsenille viimeistään kaksi päivää aikaisemmin. Töiden jako on suunniteltu niin, että jokaisella on oma vastuualueensa jossain vaiheessa projektia. Tämän lisäksi jokainen osallistuu muiden vaiheiden toteutukseen, jolloin pyrimme saamaan mahdollisimman tasavertaisen, mutta samalla joustavan tavan työskennellä. Myös projektin eri vaiheiden osittaisella limittämisellä tähdätään siihen, että kaikilla olisi aina jotain tehtävää, eikä kaikki työt kasaantuisi yhden jäsenen tehtäviksi.
7.2. KokoarvioTKTL:n aikaisenpien projektiohjeiden perusteella ryhmämme pystyy tuottamaan n.2300-3500 riviä koodia. Projektin ohjelmointityö tapahtuu ylemmän tason kielillä, valmiita kirjastoja käyttäen ja järjestelmän vanhaa koodia kierrättämällä, jolloin koodirivien tuottaminen voi olla tuota arviota suurempi. Toisaalta projektiin liittyy myös ulkonäköseikkojen toteuttaminen, joiden suunnittelu ja toteutus vie aikaa varsinaiselta ohjelmoinnilta. Projektin kokoa on vaikea myöskään arvioida tarkasti, koska asiakas ei ole täysin varma siitä mitä projektissa halutaan toteuttaa. Tämä antaa toteutukselle vapaammat kädet ja asiakkaille paremmat mahdollisuudet vaikuttaa lopputulokseen, mutta luo epävarmuutta projektin aikatauluun ja toteutuksen laajuuteen. Nämä seikat huomioiden arvio lopullisen tuotoksen koosta on noin 4000-5000 koodiriviä. 7.3. LaadunvalvontaDokumenttien laatua valvotaan yhteisillä katselmuksilla ja muun ryhmän aktiivisella palautteella. Ohjelmiston laatua tarkkaillaan hyvän suunnittelun avulla, jolloin ongelmakohtiin voidaan puuttua mahdollisimman aikaisesti. Kattavan testaussuunnitelman ja testauksen avulla saavutetaan mahdollisimman virheetön koodi.
7.4. Projektin vaiheetVaatimusanalyysiKartoitetaan asiakkaan toiveet ohjelmiston toiminnasta. Oleellisena osana on myös projektin rajaus, jotta toteutetut ominaisuudet saadaan toteutettua projektin aikataulussa. Vaatimusmäärittely hyväksytetään asiakkaalla virallisessa katselmuksessa. SuunnitteluSuunnittelun lähtökohtana pidetään vaatimusmäärittelyä, jonka pohjalta luodaan yksityiskohtainen suunnitelma ohjelmiston toteuttamiseksi. Toteutus ja yksikkötestausOhjelmisto toteutetaan suunnitteludokumentin mukaan ja tuotetun koodin testaamisen suunnittelu aloitetaan samaan aikaan. Jos toteutus poikkeaa jostain syystä suunnitteludokumentin ohjeistuksesta, suunnitteludokumenttia päivitetään ja korjauksien syyt merkitään suunnitteludokumenttiin. Testausdokumentaatio aloitetaan. Integrointi- ja järjestelmätestausKomponenttien yhteensopivuus testataan esimerkiksi valmiiden- ja kierrätettyjen komponenttien kanssa, sekä muun järjestelmän kuten tietokannan osalta. Projektin päättäminenKaikki projektin tuotokset kerätään yhteen ryhmähakemistoon sopivan hakemistopuun alle. Hakemistopuun juureen laitetaan tiedosto (esimerkiksi index.html), jonka kautta päästään käsiksi arvosteltaviin tuotoksiin. Edellisen kohdan hakemistopuu poltetaan kahdelle CD-R -levylle. Toinen poltetuista CD-R -levyistä annetaan ohjaajalle ja toinen asiakkaalle. Yksi CD-R -levy riittää, jos asiakas ei halua omaa kopiota. Valmis tuote on asennettava ennen projektin päättämistä asiakkaan koneelle (ellei toisin sovita). Hallintajärjestelmässä oman päättyneen projektin päiväkirja- ja mittaustiedot täydennetään valmiiksi. Tämän jälkeen projekti merkitään päättyneeksi hallintajärjestelmään. 7.5. Projektissa tuotettavat dokumentitProjektin kaikki ulkoiset dokumentit kirjoitetaan englanniksi, muut suomeksi. Vaatimusdokumenttia, suunnitteludokumenttia ja testaussuunnitelmaa jatketaan projektin II vaiheessa. Projektisuunnitelma (sisäinen)Projektisuunnitelma sisältää projektiin liittyvät henkilöt, riskianalyysin, työn osittamisen, työn seurannan ja aikataulun. Vaatimusdokumentti (ulkoinen)Vaatimusmäärittely on asiakkaan ja projektiryhmän välinen sopimus tuotettavasta ohjelmistosta ja sen ominaisuuksista. Se sisältää myös käyttötapaukset, käyttäjävaatimukset ja korkean tason järjestelmäarkkitehtuurin. Suunnitteludokumentti (sisäinen)Suunnitteludokumentti sisältää suoraviivaisen ohjeistuksen toteutusta varten. Siinä kuvataan kaikki järjestelmän osat arkkitehtuurista komponentteihin ja niiden rajapintoihin. Testaussuunnitelma (sisäinen)Testaussuunnitelma sisältää suunnitelman ohjelmiston testaamiseksi V-mallin mukaisesti. Siinä määritellään myös testauksen kattavuus ja testausstrategia. Käyttöohje (ulkoinen)Käyttöohje opastaa ohjelmiston tehokkaaseen käyttöön ilman ulkopuolisten avustusta. Ylläpitodokumentti (ulkoinen)Ylläpitodokumentti tehdään englanninkieliseksi kuvaukseksi järjestelmän arkkitehtuurista ja eri komponenttien toiminnasta. Erityistä huomiota kiinnitetään uusien näkymien luontiin tarkoitettujen rajapintojen kuvaamiseen. Yhteenvetodokumentti (sisäinen)Yhteenvetodokumenttiin kerätään kaikki aikaisempi dokumentaatio, sekä tehdään yhteenveto projektin etenemisestä, sekä siitä mikä projektissa meni hyvin ja mikä huonosti. 7.6. AikatauluProjektin aikataulu on jaoteltu kahteen eri vaiheeseen, joista ensimmäisessä vaiheessa toteutetaan sivuston pääsivu, sekä osa muista tarpeellisiksi koetuista näkymistä. Projektin toisessa vaiheessa näitä näkymiä parannellaan asiakkaalta saadun palautteen mukaan ja toteutetaan sivuston loput näkymät.
Milestones
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
Document generated by Confluence on 2008-12-12 16:01 |