WCLIQUE. Ohjelmistoprojekti. Projektisuunnitelma

Samankaltaiset tiedostot
WCLIQUE. Ohjelmistoprojekti. Projektisuunnitelma

WCLIQUE Ohjelmistoprojekti. Projektisuunnitelma

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

WCLIQUE. Ohjelmistoprojekti. Loppuraportti

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

TIEDONKULKU. PROJEKTITYÖ Tik Wclique

VAATIMUSMÄÄRITTELY. PROJEKTITYÖ Tik Wclique

VAATIMUSMÄÄRITTELY. PROJEKTITYÖ Tik Wclique

Projektityö

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

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

TOIMINNALLINEN MÄÄRITTELY. PROJEKTITYÖ Tik Wclique

Santeri Saarinen Korjattu testaustasoja ja tehty tarkennuksia I1-testaukseen

PROJEKTIN OHJAUS JA SEURANTA JOUNI HUOTARI

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

Projektin suunnittelu

PS-vaiheen edistymisraportti Kuopio

Ohjelmistotekniikka kevät 2003 Laatujärjestelmät

Lohtu-projekti. Testaussuunnitelma

OHJ-3010 Ohjelmistotuotannon perusteet. Ohjelmistoprojektin hallinta

CT60A4600 Projektinhallinta. Luentorunko. Luento 1:Yleistä ja organisaatiot. Projektinhallinta Osa 1: yleistä. Kurssin tavoitteet

PROJEKTISUUNNITELMA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (Luonnos 5)

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

Tietotekniikan Sovellusprojektit

A4.1 Projektityö, 5 ov.

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

Ohjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA

PROJEKTISUUNNITELMA. FotMana17

MS Project 2016 perusteet projektiarkkitehdeille ja -insinööreille ver Hannu Hirsi 2018

Soft QA. Vaatimusten muutostenhallinta. Ongelma

Tik Ohjelmistoprojektien Hallinta. Luento 4 Työmäärien arviointi

Lego Mindstorms anturit

Kieliaineistojen käyttöoikeuksien hallinnan tietojärjestelmä

Jyväskylän yliopisto, Sovellusprojektien kokoustila AgC Itkonen Jonne (saapui 9.25) Santanen Jukka Pekka (saapui 9.35)

T Testiraportti - järjestelmätestaus

Kurssin tavoitteista uennot. 4.1 Projektityö, 5 ov. Esitietovaatimukset

Määrittely- ja suunnittelumenetelmät

Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista

Tik Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti

Projektinhallinta SFS-ISO mukaan

Menetelmäraportti - Konfiguraationhallinta

UCOT-Sovellusprojekti. Testausraportti

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

TARKASTUSMENETTELYT JA NIIDEN APUVÄLINETUKI

Kuopio Testausraportti Asiakkaat-osakokonaisuus

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

Lohtu-projekti. Testiraportti. Versiohistoria: syklin toteutuksen testit. 1. ajo Virve

Työn ositusmalleista. Luennon tavoitteista. Motivointia. Walker Royce, Software Project Management, A Unified Framework

EDISTYMISRAPORTTI - PS Virtuaaliyhteisöjen muodostaminen Versio 1.0

Convergence of messaging

Avoimen ja yhteisen rajapinnan hallintamalli

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset. Riskienhallinta DTV projektissa

Siimasta toteutettu keinolihas

T Testiraportti - integraatiotestaus

Matematiikan oppifoorumi Projektisuunnitelma

PROJEKTI- HALLINNAN KÄSIKIRJA

Laatu syntyy tekemällä

Dokumentin nimi LOGO:) Tampereen teknillinen yliopisto. Ryhmä XXX: Projektiryhmän nimi Projektin nimi

Ohjelmistotekniikka - Luento 2

Ohjelmistotekniikka - Luento 2 Jouni Lappalainen

Avoimen ja yhteisen rajapinnan hallintasuunnitelma v.1.4

TOIMITUSSOPIMUS ASIAKAS- JA POTILASTIETOJÄRJESTELMÄSTÄ

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

PROJEKTIN EDISTYMISRAPORTTI Seurantajakso <jaksonumero, alkupäivä - päättymispäivä>

Projekti A: iskunvaimennindynamometri

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

Johdantoluento. Ohjelmien ylläpito

Hybridivalvomon tilatiedon hallinnan kehittäminen

Tik Harjoitustyö

Projektiryhmä Tete Work-time Attendance Software. Henkilökohtainen SE harjoitus: loppuraportti

Projektisuunnitelma. Palvelujen siirto Palvelutietovarantoon (PTV) Harri Nevala 1

PROJEKTIN SUUNNITTELU JOUNI HUOTARI, PAAVO MOILANEN, ESA SALMIKANGAS

Tietojärjestelmän kehittäminen syksy 2003

Projektisuunnitelma Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

Tik Ohjelmistoprojektien Hallinta

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

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

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

Tik Ohjelmistotuoteliiketoiminta

Harjoitustyö Case - HelpDesk

TIEA4 Projektityö, 5-10 op.,

Visma Liikkuvan työn ratkaisut VLS lisensointi. Ylläpitäjän opas

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

Valtioneuvoston kanslia VAIN VIRKAKÄYTTÖÖN Hallinto- ja palveluosasto/hallintoyksikkö Terja Ketola PTJ2008-työsuunnitelma 1 (5)

Tik Harjoitustyö

CAD-tasojärjestelmän päivitys ja laajentaminen Alustava työohjelma ja kustannusarvio

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

Ohjelmistotuotteen hallinnasta

Test World Oy. Ohjelmistoprojekti 2004 T

PROJEKTIN DOKUMENTOINTI JOUNI HUOTARI

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe T1. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T1

PROJEKTINHALLINTA. Käyttäjälähtöinen suunnittelu

Kuopio Testausraportti Kalenterimoduulin integraatio

Miten tehdä onnistunut projektisuunnitelma 10 vinkkiä

Data Sailors - COTOOL dokumentaatio Riskiloki

PROJEKTINHALLINTA

T Projektikatselmus

käyttötapaukset mod. testaus

Transkriptio:

TKK/DISKO/Tik-76.115 WCLIQUE Projektiryhmä Clique http://www.hut.fi/jekahkon/wclique/projplan.pdf WCLIQUE Ohjelmistoprojekti Version 1.2-1 Projektiryhmä Clique: Janne Dufva, 75008T, email: janne.dufva@nokia.com Juha Kähkönen, 75014C, e-mail: juha.erkki.kahkonen@nokia.com Raine Kärkkäinen, 75016E, e-mail: raine.karkkainen@hut.fi Juha Lehtonen, 75019J, e-mail: juha.a.lehtonen@nokia.com Ossi Ouri, 75022M, e-mail: ossi.ouri@nokia.com Sari Salin, 75026S, e-mail: sari.salin@nokia.com Tapani Tarri 52652D, e-mail: tapani.tarri@nokia.com

WCLIQUE 1(27) Versiohistoria Versio Pvm. Laatija Kuvaus 1.0-6 17.10.2000 T.Tarri 1.1-2 05.11.2000 T.Tarri korjattu J. Lehtosen mail-osoite kannessa lisätty kustannuksista taulu (s. Error! Bookmark not defined.) kpl 4.2 tekstiä muutettu (s. ) dokumenttien valm.ajat ja linkit lisätty kpl 8.4 (s. Error! Bookmark not defined.) lisätty kpl 12.6 Varahenkilökäytäntö (s. Error! Bookmark not defined.) 1.2-1 T.Tarri Kpl 11 standardeja poistettu (s. Error! Bookmark not defined.) Kpl 4.2 projektiryhmän työkustannuket korjattu (s. Error! Bookmark not defined.) Kpl 12 on riskien vaikutukset ja hallintaprosessi (kpl12.7) määritelty (s. Error! Bookmark not defined.) n tiivistelmän sisältö korjattu (s. 2) Kpl 8.1 (s. Error! Bookmark not defined.) UML korvattu vuokaavionotaatilla Kpl 8.4 (s. 14) dokumenttien linkit korjattu

WCLIQUE 2(27) WCLIQUE PROJEKTISUUNNITELMA Projektissa kehitetään kurssin Tik-76.115 harjoitustyönä Clique-algoritmit toteuttavat C-kieliset ohjelmistot. Projektin asiakas on Helsingin teknillisen korkeakoulun tietojenkäsittelylaboratorio. Tämä dokumentti on projektin hallintaan tarkoitettu projektisuunnitelma, jota päivitetään vaiheittain projektin edetessä. Asiakkaan tarve ko ohjelmistoille on tutkimustoimintaan liittyvä. Tuotteita ei ole tarkoitettu kaupalliseen käyttöön. Projektin kustannukset liittyvät lähinnä TKK:n osuuteen kurssin järjestämisestä. Projektiryhmän toiminnasta ei aiheudu eriteltäviä kustannuksia, koska projekti toteutetaan opiskelutyönä. Projektiryhmään kuuluu yhteensä seitsemän henkilöä disko-koulutuksen piiristä. Projektin tavoitteet tuotteen suhteen esitetään vaatimus-, toiminnallinessa ja teknisessämäärittelyissä. Projektin tehtävät ja niiden resurssointi hallitaan MS Projects-ohjelmistoa hyödyntämällä. Projektissa hyödynnettäviä menetelmiä ovat mm USDP ja UML. Ensisjainen tuotteen kehittämisen työkalu on C-kielen kääntäjä Unix-käyttöjärjestelmässä. ssa on määritelty kaikki suunnitelmaan ja projektin hallintaan liittyvät dokumentit (kpl 8.). Kurssin raportoinnin työkalut Tirana (ajankäyttö), Burana (laadunseuranta) ja ViCA (raporttien visualisointi) ovat käytössä. Projekti toteutetaan kuudessa vaiheessa aikavälillä 15.9.2000 ja 27.04.2001. Ko vaiheet ova aikajärjestyksessä projektin suunnittelu, toteutus1...toteutus4 ja luovutusvaihe. Projektisuunnittelun vaiheessa todetut oleellisimmat riskit projektin toteutuksessa ovat ajankäytön hallinta, vieraat käytettävät työkalut, motivaation puute projektiryhmässä, asiakasvaatimusten muutokset projektin aikana ja mahdollisesti henkilöiden estyminen projektin tehtävien hoitamiseen.

WCLIQUE 3(27) Sisällysluettelo 1. Johdanto... 4 1.1 Projektin toteutusympäristö... 4 1.2 Projektissa kehitettävä tuote... 4 1.3 Projektin sidosryhmät... 4 1.4 Oikeudet tuloksiin... 4 1.5 n rakenne ja sisältö... 5 2. Termit ja määritelmät... 5 3. Asiakkaan nykyinen ratkaisu... 7 4. Projektin toteutusperusteet... 7 4.1 Asiakkaan intressit... 7 4.2 Projektin kustannukset... 8 4.3 Projektin hyödyt asiakkaalle... 8 4.4 Asiakkaalle projektista aiheutuvat haitat... 8 5. Projektin organisaatio... 8 6. Projektin tavoitteet ja päättäminen... 10 6.1 Projektiryhmän tavoitteet... 10 6.2 Asiakkaan tavoitteet... 10 6.3 Projektin tavoitteet... 11 6.4 Projektin keskeyttämiskriteerit... 11 6.5 Projektin päättämiskriteerit... 11 7. Projektin resurssit... 11 8. Projektissa käytettävät menetelmät ja työkalut... 16 8.1 Menetelmät... 16 8.2 Työkalut... 16 8.3 Raportointi... 17 8.4 Muut menetelmät ja dokumentit... 17 9. Projektin ositus, vaiheistus ja resurssointi... 19 9.1 Projektin ositus... 19 9.2 Projektin vaiheistus... 20 9.3 Projektin resurssointi... 20 10. Seuranta ja ohjaus... 21 10.1 Aikataulun ja resurssien seuranta... 21 10.2 Laadun seuranta... 21 10.3 Työn ohjaus... 22 11. Standardit, direktiivit ja määräykset... 22 12. Riskienhallintasuunnitelma... 22 12.1 Kommunikaatio... 22 12.2 Työkalut... 23 12.3 Käytännön- ja työkokemus... 23 12.4 Aikataulu... 23 12.5 Asiakkaan vaatimukset... 23 12.6 Varahenkilökäytäntö... 23 12.7 Riskienhallintaprosessi... 25 13. Koulutussuunnitelma... 25 14. Käyttöönottosuunnitelma... 26

WCLIQUE 4(27) 1. JOHDANTO 1.1 Projektin toteutusympäristö Projekti toteutetaan pääasiassa tähän projektiin liittyvän kurssin Tik-76.115 projektiryhmän koulutuskustannuksista vastaavan projektiryhmän jäsenten työnantajan Nokia Networks Oy:n tiloissa pääkaupunkiseudulla. Lisäksi asiakaskontaktit ja neuvottelut sekä kurssiin kuuluvat opetustilaisuudet ja projektikatselmukset kuten myös tiettyjen projektin toteutuksessa tarvittavien työkalujen käytöt tapahtuvat kokonaan tai osittain TKK:n tiloissa Otaniemessä. Merkittävä osa projektin töistä tehdään myös etätyönä projektin jäsenien kotitiloissa. 1.2 Projektissa kehitettävä tuote Projektissa kehitetään ratkaisu asiakkaan tarpeeseen. Asiakas on kehittänyt joukon algoritmeja, joilla voi laskea mm suurimman joukon (suurimmat joukot) solmuja eli klikin (clique) annetusta graafista. Algoritmi 1. voi etsiä suurimman painottamattoman ja algoritmi 2. painotetun klikin. Projektissa tehtävänä on kehittää C-kielinen ohjelmisto, joka toteuttaa edellä mainittujen algoritmien mukaan solmujen joukkojen hakuja. 1.3 Projektin sidosryhmät Projektin sidosryhmät ja niiden merkitys: Asiakas on TKK:n Tietojenkäsittelylaboratorio, tuotteen tilaaja Prof. Patric Östergård ja työn ohjaaja TkL Harri Haanpää. Kurssin Tik-76.115 henkilökunta, asssistentti Pekka Isto Opponointiryhmä. Tehtävän toimeksianto ja vaatimusmäärittelyt sekä avustaminen algoritmien soveltamisessa. Tarjoaa projektissa tarvittavan koulutuksen ja osaltaan tarjoaa työvälineet ja tilat projektin osien toteuttamiseksi. Avustaa projektin toteutuksen ja tuotteen laadullisissa tavoitteissa. 1.4 Oikeudet tuloksiin Kehitettävän ohjelmistotuotteen tekijänoikeudet määritellään erillisessä asiakkaan ja projektiryhmän välisessä sopimuksessa. Lähtökohta on se, että tekijänoikeudet ohjelmistolle jakautuvat tasan asiakkaan ja projektiryhmän jäsenten kesken (asiakas 50% ja projektiryhmä 50%). Lisäksi asiakkaalla on oikeus jatkokehittää tuotetta. Tuote on tarkoitettu tutkimuskäyttöön, ei kaupallisiin tarkoituksiin. Mikäli myöhemmin jostain syystä tuotetta sovelletaan kaupallisiin tarkoituksiin, pätee siinä, mitä edellä mainittiin tekijänoikeuksien jakamisesta tasan asiakkaan ja projektiryhmän jäsenten kesken.

WCLIQUE 5(27) 1.5 n rakenne ja sisältö käsittää yksilöivät tiedot projektista, projektin jäsenistä ja sidosryhmien edustajista. Alussa esitetään lyhyessä tiivistelmässä projektisuunnitelman kappaleissa käsiteltävät asia-aiheet. Tämän jälkeen esitetään projektisuunnitelman sisällysluettelo, josta ilmenee kappaleiden sijainnit projektisuunnitelman eri sivuilla. Tässä käsiteltävän johdato-osan lisäksi sisältää projektisuunnitelma kappaleet seuraavista käsiteltävistä asioista: Termit ja määritelmät Asiakkaan nykyinen ratkaisu Projektin toteutusperusteet Projektin organisaatio Projektin tavoitteet ja päättäminen Projektin resurssit Projektissa käytettävät menetelmät ja työkalut Projektin ositus, vaiheitus ja resurssointi Seuranta ja ohjaus Standardit, direktiivit ja määräykset Riskienhallintasuunnitelma Koulutussuunnitelma Käyttöönottosuunnitelma Projektin suunnittelu sen vaiheiden, tehtävien, resurssien ja aikataulutuksen suhteen toteutetaan lisäksi Microsoft Corporation:n julkaisemalla Microsoft Project 98 - projektinhallintaohjelmalla, mistä syntyvä erillinen tiedosto (clique.mpp) tallennetaan ja ylläpidetään projektin hakemistorakenteessa määriteltävässä hakemistossa. 2. TERMIT JA MÄÄRITELMÄT Seuraavassa esitetään yleisimmät projektin dokumentaatiossa käytettävät termit ja akronyymit/lyhenteet sekä niiden merkitys tai määritelmä käytetyssä yhteydessä.

WCLIQUE 6(27) Termi tai akronyymi Clique Tik-76.115 USDP C wclique Linux Unix LaTex PDF HTML MS Project Task PMIX Tirana Burana ViCA Termin tai akronyymin määritelmä Ohjelmistotuotteen kehittävän projektiryhmän nimi. Myös joukko solmuja joista kustakin on yhdistävät kaaret muihin solmuihin. Kurssin "Ohjelmistotyö" koodi. "United Software Development Process" on geneerinen ohjelmistoprosessin viitekehys, jota mallia on sovellettu tämän projektin hallintaan. Ohjelmointikieli, jolla asiakkaan algoritmit koodataan. Weighted version of wclique. Kuten "cligue", mutta nyt on solmujen "painot" määritelty numeroarvoina. Käyttöjärjestelmä, jossa C-kielisen laadittavan ohjelman tulee toimia. Käyttöjärjestelmä, jossa C-kielisen laadittavan ohjelman tulee toimia. Tekstiformaatti, jota käytetään tuotteen käyttökirjan dokumentoinnissa. "Portable document format" on yksi käytettävistä dokumenttien tiedostoformaateista. " Hypertext markup language" on yksi käytettävistä dokumenttien tiedostoformaateista. Microsoft:n kehittämä projektinhallintaohjelma, jota käytetään projektin suunnittelun apuvälineenä. ssa tarkoittaa yksittäistä tehtävää. Ms Projekt-tiedostosta laaditun tietokannan siirtämiseksi kurssin palvelimeen tarkoitettu ohjelma. Projektin työmäärän seurantaan käytettävä ohjelmisto. Projektissa käytettävä ongelmien ja virheiden seurannan ohjelmisto. "Visualization Client Applet" on projektissa käytettävä seurantatiedon visualisointiohjelmisto.

WCLIQUE 7(27) Termi tai akronyymi GCC www WBS UML Disko Termin tai akronyymin määritelmä C-kääntäjä "World-Wide Web" tietoverkon (Internet) osa. "Work break-down structure" on projektin osittaminen hierarkisesti osatehtäviin. "Unified Modeling Language" on ohjelmistotuotekehityksen standardikuvaamismenetelmä. Insinööristä diplomi-insinööriksi-koulutusohjelma 3. ASIAKKAAN NYKYINEN RATKAISU Asiakkaalla ei ole tällä hetkellä vastaavaa ohjelmatuotetta kuin projektissa on määrä kehittää lukuunottamatta yhtä prototyyppiä liittyen projektityön osa-alueelle. Asiakas on kehittänyt joukon algoritmeja, joilla voi laskea mm suurimman joukon (suurimmat joukot) solmuja eli klikin (clique) annetusta graafista. Algoritmi 1. voi etsiä suurimman painottamattoman ja algoritmi 2. painotetun klikin. Asiakkaan laatimista algoritmeista on tarkemmat kuvaukset www-sivuilla, joihin on esitetty linkit ohessa: Maximum Clique Problem (suurin/suurimmat joukot solmuja) http://www.tcs.hut.fi/~pat/paper1.ps Maximum-Weight Clique Problem (suurimman painon omaavat solmut) http://www.tcs.hut.fi/~pat/paper2.ps C-kielinen ohjelman prototyyppi algoritmille " Maximum-Weight Clique Problem" http://www.tcs.hut.fi/~pat/wclique.html 4. PROJEKTIN TOTEUTUSPERUSTEET 4.1 Asiakkaan intressit Projektin avaintavoite on kehittää ratkaisu asiakkaan määrittelemän ongelman tarpeeseen. Toisin kuin yleensä ohjelmistokehitysprojekteissa, ei tässä projektissa asiakkaalla ole kaupallisia tarkoitusperiä vaan syyt kehitettävän tuotteen suhteen ovat tieteelliseen tutkimustoimintaan liittyviä. Asiakkaan kehittämät algoritmit ovat lähtökohtana ja apuna muilla tutkimusalueilla ja tämän vuoksi on tärkeää kehittää algoritmien käyttöön tehokas ja käsittelyä nopeuttava työkalu, mihin nykyaikaiset ohjelmistotekniikan keinot antavat erinomaiset mahdollisuudet.

WCLIQUE 8(27) 4.2 Projektin kustannukset Kustannuslaji Määrä ja yksikköhinta SUMMA/FIM seitsemän projektihenkilöä 2100 tuntia, 367 mk/h 770700 kurssin henkilökunta 70 tuntia, 367 mk/h 25690 kaksi asiakkaan edustajaa 90 tuntia, 367 mk/h 33030 tilakustannukset 6 kk, 17000 mk/kk 102000 laitekustannukset 6 kk 7 työasemaa, 2000 mk/kk työasema 84000 materiaalikustannukset konttori- ja atk tarvikkeet 7 erää, 1000 mk/erä 7000 matkakustannukset 7 henkilöä 6 kk, 500 mk/henkilökk 21000 Yhteensä 1043420 Projektin toiminta on tarkoitus toteuttaa kurssin Tik-76.115 harjoitustyönä, joten taulukossa mainitut kustannukset ovat arvioita siitä, mitä ne olisivat, jos yritys toteuttaisi ko ohjelmistotyön. Projektin Clique henkilötyökustannuksiksi on arvioitu 367 FIM / työtunti. Työtunteja projektiryhmän jäsenten osalle voidaan arvioida kertyvän projektin aikana kuuden kuukauden kuluessa kutakin jäsentä kohden noin 300 tuntia. Tämän perusteella voidaan laskea työtuntien kustannukset projektiryhmän jäsenten osalta. Lisäksi aiheutuu kustannuksia asiakkaan edustajien ja TKK:n henkilökunnan työajasta sekä TKK:n tilojen ja projektiryhmän henkilöiden käyttämien muiden tilojen suhteen sekä materiaalien ja työkalujen käytöstä projektin hyväksi. Myös matkakustannukset projektiryhmän jäsenten kohdalla on arvioitu kustannuksissa. 4.3 Projektin hyödyt asiakkaalle Asiakkaan ensisijainen tavoite ja siitä tuleva hyöty projektista on, kuten aiakaisemmassa kohdassa 4.1 todettiin, asiakkaan kehittämien algoritmien käyttöön saatavat tehokkaat ohjelmistotyökalut ja edelleen siihen perustuen tehostuva tutkimustoiminta. Lisäksi voidaan pitää asiakkaan etuna ja hyötynä myös sitä, että asiakkaalla on projektin toteutuksen aikana itsellään mahdollisuus tutustua ja oppia projektien toteutukseen käytettäviä malleja ja menetelmiä. Huomiotta ei voida jättää myöskään sitä asiakkaan etua, että projektin toteutuksesta aiheutuvista kustannuksista vastaa suurelta osin muut kuin asiakas. 4.4 Asiakkaalle projektista aiheutuvat haitat Projektin toiminnan aikana suurin haittatekijä asiakkaalle lienee sen tarvittavan ajan allokointi projektin hyväksi, mikä kuluu projektiryhmän perehdyttämiseen ko algoritmien suhteen sekä määrittelemään ne asiakasvaatimukset projektiryhmän kanssa, jotka tarvitaan tuotteen kehittämiseksi vastaamaan ratkaisuna sitä, mihin asiakkaalla on tarve. Myös yhtenä haittatekijänä asiakkaan kannalta voitaneen pitää sitä, että projektin eteneminen on sidottu kurssin Tik-76.115 aikatauluun (ainakin tietyiltä osin) ja siksi ei ole aina mahdollista edetä siinä tahdissa, mikä saattaisi olla asiakkaalle ja jopa projektia toteuttavalle ryhmälle tarkoituksenmukaista. 5. PROJEKTIN ORGANISAATIO Projektin clique henkilöt ja vastuualueet on esitetty ohessa ensin projektyhmän ja asiakkaan edustajien suhteen ja seuraavassa taulukossa henkilöt tehtäväkentittäin.

WCLIQUE 9(27) Projektiryhmä: Email: ot@ocelot.trs.ntc.nokia.com Kotisivu: http://www.hut.fi/jekahkon/wclique Tapani Tarri, Projektipäällikkö e-mail: tapani.tarri@nokia.com Sari Salin Dokumentointipäällikkö e-mail: sari.salin@nokia.com Janne Dufva Asiakasvastaava e-mail: janne.dufva@nokia.com Juha Kähkönen Laatupäällikkö e-mail: juha.erkki.kahkonen@nokia.com Raine Kärkkäinen Algoritmiasiantunija e-mail: raine.karkkainen@nokia.com Juha Lehtonen Arkitehtuurivastaava e-mail: juha.a.lehtonen@nokia.com Ossi Ouri Suunnittelupäällikkö e-mail: ossi.ouri@nokia.com Asiakkaan edustajat: Patric Östergård Asiakas e-mail: pat@ultra.tcs.hut.fi Harri Haanpää Asiakas/Ohjaaja e-mail: harri.haanpaa@hut.fi Kurssin edustaja: Pekka Isto Tekninen johtaja e-mail: evp@cs.hut.fi Projektin hallinta ja tuki Projektin tekninen toteutus Asiakasvaatimukset Projektin seuranta ja valvonta Projektipäällikkö Tapani Tarri Algoritmiasiantuntija Raine Kärkkäinen Asiakasvastaava Janne Dufva Kurssin Tik-76.115 henkilökunta Tekninen johtaja Pekka Isto Asiakas- ja tuotevaatimukset Janne Dufva Arkitehtuurivastaava Juha Lehtonen Tuotteen vaatimusmäärittelyt Asiakkaan edustaja Patric Östergård Asiakkaan edustaja Patric Östergård Dokumentointipäällikkö Sari Salin Suunnittelupäällikkö (SW)Ossi Ouri Tekninen ohjaus Asiakkaan edustaja Harri Haanpää Asiakkaan edustaja Harri Haanpää Laatupäällikkö Juha Kähkönenen Testauspäällikkö Juha Kähkönen Projektipäällikkö Tapani Tarri Laatupäällikkö Juha Kähkönen Opponointiryhmä

WCLIQUE 10(27) 6. PROJEKTIN TAVOITTEET JA PÄÄTTÄMINEN Projektin tavoitteet on kirjattu/kirjataan seuraaviin projektin www-sivuille sijoitettuihin dokumentteihin: Vaatimusmäärittely Toiminnallinen määrittely Tekninen määrittely http://www.hut.fi/jekahkon/wclique/recspec.pdf http://www.hut.fi/jekahkon/wclique/funcspec.pdf http://www.hut.fi/jekahkon/wclique/techspec.pdf 6.1 Projektiryhmän tavoitteet Projektiryhmällä on kolme päätavoitetta: Kehittää asiakkaan tarpeeseen laadultaan riittävä ohjelmistotuote sovitussa aikataulussa (katso tuotteen kuvaus luvussa 1.2). Päivittää projektiryhmän osaamiset ja taidot projektien toteutuksissa ja verrata tähän liittyvää kurssilla ja harjoitustyön yhteydessä saatavaa teoreettista tietoa nykyisiin projektiryhmän jäsenten työnantajan Nokia Networks:n soveltamiin malleihin. Projektiryhmän jäsenten opinto-ohjelmaan DISKO-opintojen puitteissa kuuluu ko kurssin suorittaminen, mikä toteutuu ko projektityöharjoituksena. 6.2 Asiakkaan tavoitteet Asiakkaan tavoitteena on saada toimiva C-kielinen ohjelmisto toteuttamaan aiemmin luvussa1.2 kuvattuja algoritmeja. Asiakas on yhteistyössä projektiryhmän jäsenten kanssa laatinut tuotteen suhteen vaatimusmäärittelyn, jossa tuotteelle asiakkaan asettamat tavoitteet kuvataan. Dokumentin, jossa ko vaatimusmäärittely on, www-osoite on annettu tämän kappaleen alussa. Seuraavassa esitetään asiakkaan tärkeimmät tavoitteet projektin ja tuotteen suhteen: 1. C-kieliset ohjelmat jotka perustuvat algoritmeihin "Maximum Clique Problem" ja Maksimum-Weight Clique Problem" 2. Ohjelman tulee laskea suurin joukko määriteltyjä solmuja. 3. Ohjelman tulee laskea suurimmat joukot määriteltyjä solmuja. 4. Ohjelman tulee laskea joukot määriteltyjä solmuja, joiden koko on annettu. 5. Ohjelman tulee laskea joukot määriteltyjä solmuja, joiden minimi koko on annettu. 6. Mikäli lopullinen laskennan tulos koostuu joukosta välituloksia on käyttäjän pystyttävä hyödyntämään välituloksia omassa laskennassaan. Käyttäjän on pystyttävä määrittämään oma funktio, jonka parametriksi annetaan välitulos. 7. Ohjelmalle annettava syötetieto eli graafi on pystyttävä järjestämään määriteltyjen järjestelyalgoritmien mukaisesti. 8. Ohjelmiston on toimittava Unix/Linux-käyttöjärjestelmissä. 9. Graafin koko saa olla ainoa rajoitus algoritmien ohjelmalliselle toteutukselle kuitenkin niin, että hyvin suuret graafit (tuhansia solmuja) on laskettavissa ohjelmallisesti.

WCLIQUE 11(27) 10. Ohjelmistotuotteesta tehdään englanninkielinen käyttökirja www-osoitteeseen http://www.tcs.hut.fi/domain/. Käyttökirja on tehtävä LaTex-formaatilla. 6.3 Projektin tavoitteet Projektin tavoitteena on toteuttaa asiakkaan lähinnä teknisiin ja tuotetta koskeviin vaatimuksiin perustuva ohjelmistotuote siten, että myös projektiryhmän tavoitteet toteutuvat. Nämä tavoitteet projektiryhmän suhteen on määritelty luvussa 6.1 ja vastaavasti asiakkaan teknisluonteiset tavoitteet edellisessä luvussa 6.2. 6.4 Projektin keskeyttämiskriteerit Projektin keskeyttäminen voi tapahtua ainoastaan projektiryhmän yhteisellä (määräenemmistö) ja/tai kurssin Tik-76.115 valtuutetun henkilön päätöksellä. Asiakas ei voi keskeyttää projektia määritellyn ohjelmistotuotteen suhteen, koska mainittujen algoritmien käyttö tieteelliseen ja tutkimukselliseen toimintaan, mihin myös ko kurssin suorittaminen voidaan lukea, on vapaata. Projektiryhmän keskeyttämisen kriteerinä voi olla resurssien puuttuminen ko projektin toteuttamiseksi kurssille määritellyssä aikataulussa. Kurssin valtuuttaman henkilön keskeyttämisen kriteeri voi olla se, ettei ko projektin toteuttaminen vastaa kurssin asettamia tavoitteita. 6.5 Projektin päättämiskriteerit Projektityö voidaan katsoa päättyneeksi kun seuraavat kaksi perusedellytystä tulee täytetyiksi: Asiakkaalle on kehitetty määrittelyjen mukainen ohjelmistotuote. Määrittelyjä voidaan projektin kuluessa muuttaa projektiryhmän ja asiakkaan molempien hyväksyessä ko muutokset. Kun projektityö on täyttänyt kurssin Tik-76.115 vaatimukset ja tuotteen valmistuttua projektin aikana tehtyjen määrittelyjen mukaisesti, (loppu-) projektikatselmus ja tuotteen loppudemonstraatio on pidetty. 7. PROJEKTIN RESURSSIT Projektin käytettävissä olevat hekilöresurssit muodostuvat kappaleessa 5. esitettyjen henkilöiden osuuksista projektin tehtävien toteutuksissa. Projektiryhmän jäsenten osalta tehtävät, niiden aikataulutus ja resurssointi sekä työmäärät esitetään projektin vaiheittain tarkemmin MS Project:lla laaditussa tiedostossa "clique.mpp". Tässä tiedostossa on tehtävätason tarkkuudella esitykset yksityiskohtaisesti ja henkilötasolla määritelty vähintään kuluvan ja seuraavan vaiheen ajalta. Sen jälkeen on esitetty arvioidut päätehtävät ja vaiheen kokonaisaika projektissa, mutta tehtäviä ei ole vielä välttämättä henkilötasolla allokoitu näkyviin tiedoston taulukkoon. Tämä tiedosto "clique.mpp" muodostetaan tietokannaksi ja päivitetty versio vähintään kerran jokaisessa projektin vaiheessa siirretään PMIX-ohjelmistolla kurssin palvelimelle, joka on osoitteessa http://mordor.cs.hut.fi/. Asiakkaan ja kurssin henkilökunnan resursseja ei ole esitetty projektin resurssien hallinnassa, koska niiden mukanaoleminen on epäsäännöllistä ja yleensä riippuvaisia muista kuin projektin tarpeista. Seuraavassa taulukossa esitetään projektin käytössä olevat projektiryhmän resurssit vaiheittain ja sen lisäksi huomioidut tehtävät kussakin vaiheessa. Myös arvioidut projektin, vaiheiden ja tehtävien alkamisja loppumisajankohdat on esitetty. Taulukossa olevat kirjainlyhenteet viittaavat seuraaviin henkilöihin: JDu Janne Dufva, JKä Juha Kähkönen, RKä Raine Kärkkäinen, JLe Juha Lehtonen, OOu Ossi Ouri, SSa Sari Salin, TTa Tapani Tarri. Näiden henkilöiden nimimerkkien alapuolelle on arvioitu mukanaoloaika numeroarvoilla, mikä osoittaa osuutta prosentteina projektin vaiheen hyväksi henkilön käytettävissä olevasta kokonaisajasta (huomioidaan vaiheen ajan kaikki päivät ja vuorokauden kaikki

WCLIQUE 12(27) tunnit kokonaisaikaan). Tehtävien toteuttamiseen tarvittavat henkilöaikamäärät ovat yleensä toiset ja ne eivät saa ylittää näitä käytettävissä olevia aikoja, jotta projektisuunnitelma pysyy realistisena. PROJEKTIN / VAIHEEN / TEHTÄVÄN NIMI JDu JKä RKä JLe OOu SSa TTa PROJEKTIN / VAIHEEN / TEHTÄVÄN ALKU PROJEKTIN / VAIHEEN / TEHTÄVÄN LOPPU clique ohjelmistoprojekti Mon 25.09.00 Fri 27.04.01 Projektin suunnittely (vaihe1) 10 10 10 10 10 10 15 Mon 25.09.00 Tue 17.10.00 Projektiryhmä perustettu Mon 25.09.00 Mon 25.09.00 Ms Project harjoittelu Thu 28.09.00 Sat 30.09.00 Kick off- palaverin suunnittelu Sat 30.09.00 Mon 02.10.00 Kick off- palaveri Tue 03.10.00 Tue 03.10.00 Projektihakemistojen luonti Sun 08.10.00 Wed 11.10.00 Dokumenttien konverkointi html- tai PDF-formaattiin Wed 04.10.00 Fri 06.10.00 Tekijänoikeussopimus Sat 30.09.00 Tue 10.10.00 Vaatimusmäärittely Sat 30.09.00 Tue 10.10.00 Task-määrittelyt Tue 03.10.00 Mon 09.10.00 ", luvut 1 10 ja kokoaminen" ", seuranta ja ohjaus" ", standardit, direktiivit ja määräykset" ", riskienhallintasuunnitelma" ", koulutussuunnitelma" ", käyttöönottosuunnitelma" Thu 05.10.00 Fri 13.10.00 Mon 09.10.00 Tue 10.10.00 Mon 09.10.00 Tue 10.10.00 Mon 09.10.00 Tue 10.10.00 Mon 09.10.00 Tue 10.10.00 Tue 10.10.00 Wed 11.10.00 Edistymisraportti Fri 13.10.00 Sat 14.10.00 Projekti-palaveri Fri 13.10.00 Fri 13.10.00 "PMIX,TIRANA" Mon 16.10.00 Mon 16.10.00 n esittely Tue 17.10.00 Tue 17.10.00

WCLIQUE 13(27) Opponointi Tue 17.10.00 Tue 17.10.00 Toiminnallinen määrittely Sat 14.10.00 Sun 15.10.00 Arkitehtuurisuunnittelu Sat 14.10.00 Sun 15.10.00 Toteutus1 (vaihe2) 10 10 10 10 10 10 15 Sat 21.10.00 Thu 09.11.00 Projekti-palaveri Sat 21.10.00 Sat 21.10.00 Toiminnallinen määrittely Sat 21.10.00 Fri 27.10.00 Tiedon- ja versioidenhallintasuunnitelma Sun 22.10.00 Sun 22.10.00 Arkitehtuurisuunnittelu Sat 21.10.00 Wed 01.11.00 Moduulisuunnittelu Mon 23.10.00 Sun 05.11.00 Testaussuunnitelma Wed 25.10.00 Sat 04.11.00 Laatusuunnitelma Sat 21.10.00 Tue 24.10.00 Käyttökirjan suunnittelun aloitus Thu 26.10.00 Fri 27.10.00 Vaatimusmäärittelyn päivitys Fri 27.10.00 Sat 28.10.00 n päivitys Wed 01.11.00 Sat 04.11.00 Edistymisraportti Sun 05.11.00 Sun 05.11.00 Dokumenttien valmistus ja konverkointi html- tai PDFformaattiin Tue 31.10.00 Mon 06.11.00 Teknisen määrittelyn aloitus Sat 04.11.00 Mon 06.11.00 Projekti-palaveri Sat 04.11.00 Sat 04.11.00 "PMIX,TIRANA" Mon 06.11.00 Mon 06.11.00 Projektikatselmus Thu 09.11.00 Thu 09.11.00 Opponointi Thu 09.11.00 Thu 09.11.00 Toteutus2 (vaihe3) 10 10 10 10 10 10 10 Sat 11.11.00 Fri 15.12.00 Projektipalaveri Sat 11.11.00 Sat 11.11.00 Arkitehtuurisuunnittelu Sun 12.11.00 Thu 16.11.00 Moduulisuunnittelu Mon 13.11.00 Mon 20.11.00 Koodaus Tue 14.11.00 Wed 22.11.00 Käyttökirjan suunnittelu Tue 14.11.00 Thu 16.11.00 Tekninen määrittely Wed 15.11.00 Fri 17.11.00

WCLIQUE 14(27) Testaus Fri 01.12.00 Thu 07.12.00 Testausraportti Fri 08.12.00 Fri 08.12.00 Testaussuunnitelman päivitys Sat 09.12.00 Sat 09.12.00 n päivitys Thu 07.12.00 Mon 11.12.00 Edistymisraportti Tue 05.12.00 Tue 05.12.00 Dokumenttien valmistus ja konverkointi html- tai PDFformaattiin Thu 07.12.00 Wed 13.12.00 Projekti-palaveri Sat 09.12.00 Sat 09.12.00 "PMIX,TIRANA" Mon 11.12.00 Mon 11.12.00 "Projektikatselmus, proton demo" Fri 15.12.00 Fri 15.12.00 Opponointi Fri 15.12.00 Fri 15.12.00 Toteutus3 (vaihe4) 10 10 10 10 10 10 5 Sat 16.12.00 Fri 16.02.01 Joululoma Sat 16.12.00 Fri 12.01.01 Projektipalaveri Tue 16.01.01 Tue 16.01.01 Arkitehtuurisuunnittelu Wed 17.01.01 Sun 21.01.01 Moduulisuunnittelu Thu 18.01.01 Mon 22.01.01 Koodaus Fri 19.01.01 Tue 23.01.01 Käyttökirjan suunnittelu Sat 20.01.01 Wed 24.01.01 Testaus Sun 21.01.01 Thu 25.01.01 Testausraportti Mon 22.01.01 Mon 22.01.01 Testaussuunnitelman päivitys Tue 23.01.01 Tue 23.01.01 n päivitys Wed 24.01.01 Sat 27.01.01 Edistymisraportti Thu 25.01.01 Thu 25.01.01 Dokumenttien valmistus ja konverkointi html- tai PDFformaattiin Sat 27.01.01 Fri 02.02.01 Projekti-palaveri Sat 10.02.01 Sat 10.02.01 "PMIX,TIRANA" Mon 12.02.01 Mon 12.02.01 "Projektikatselmus, proton demo" Fri 16.02.01 Fri 16.02.01 Opponointi Fri 16.02.01 Fri 16.02.01

WCLIQUE 15(27) Toteutus4 (vaihe5) 10 10 10 10 10 10 10 Sat 17.02.01 Fri 23.03.01 Projektipalaveri Sat 17.02.01 Sat 17.02.01 Arkitehtuurisuunnittelu Sun 18.02.01 Thu 22.02.01 Moduulisuunnittelu Mon 19.02.01 Fri 23.02.01 Koodaus Sat 24.02.01 Wed 28.02.01 Käyttökirjan suunnittelu Sun 25.02.01 Thu 01.03.01 Testaus Thu 01.03.01 Tue 13.03.01 Testausraportti Wed 14.03.01 Wed 14.03.01 Testaussuunnitelman päivitys Thu 15.03.01 Thu 15.03.01 n päivitys Sat 17.03.01 Sat 17.03.01 Edistymisraportti Sun 18.03.01 Sun 18.03.01 Dokumenttien valmistus ja konverkointi html- tai PDFformaattiin Fri 16.03.01 Wed 21.03.01 Projekti-palaveri Sat 17.03.01 Sat 17.03.01 "PMIX,TIRANA" Mon 19.03.01 Mon 19.03.01 "Projektikatselmus, proton demo" Fri 23.03.01 Fri 23.03.01 Opponointi Fri 23.03.01 Fri 23.03.01 Luovutus (vaihe6) 10 10 10 10 10 10 10 Sat 24.03.01 Fri 27.04.01 Projektipalaveri Sat 24.03.01 Sat 24.03.01 Koodaus Sun 25.03.01 Thu 29.03.01 Käyttökirjan viimeistely Mon 26.03.01 Fri 30.03.01 Integrointitestaus Sat 31.03.01 Wed 04.04.01 Systeemi-testaus Thu 05.04.01 Thu 12.04.01 Opponointitestausraportti Fri 13.04.01 Mon 16.04.01 Testausraportti opponointryhmältä Tue 17.04.01 Tue 17.04.01 Testausraportti Wed 18.04.01 Wed 18.04.01 Projekti-palaveri Sat 21.04.01 Sat 21.04.01 "PMIX,TIRANA" Mon 23.04.01 Mon 23.04.01

WCLIQUE 16(27) n finalisointi Fri 20.04.01 Sat 21.04.01 Loppuraportti Sat 21.04.01 Tue 24.04.01 Dokumenttien valmistus ja konverkointi html- tai PDFformaattiin "Projektikatselmus, proton demo" Tue 17.04.01 Mon 23.04.01 Fri 27.04.01 Fri 27.04.01 Opponointi Fri 27.04.01 Fri 27.04.01 8. PROJEKTISSA KÄYTETTÄVÄT MENETELMÄT JA TYÖKALUT 8.1 Menetelmät Projektin toteutukseen sovelletaan geneeristä USDP:n (United Software Development Process) mallia. Toisin kuin aiemmin suunniteltiin UML:n käyttöön ei ole toistaiseksi perusteita. Perinteinen vuokaavioesitys on tarkoituksenmukainen ohjelman toiminnan esittämisessä. 8.2 Työkalut Projektin toteutuksessa käytettävät työkalut on esitetty seuraavassa taulukossa: Työkalu Versio Tehtävä GCC C-kielen kääntäjä. MS Project 98 98 Projektinhallinta. MS Word 6.0 Dokumenttien tekstinkäsittely. Acrobat Destiller 3.01 Dokumenttien kääntäminen PDformaattiin. UNIX-käyttöjärjestelmä Linux-käyttöjärjestelmä PMIX-ohjelmisto Tirana-ohjelmisto Burana-ohjelmisto ViCa Ohjelmatuotteen koodaus ja käyttö. Ohjelmatuotteen koodaus ja käyttö. MS Project:lla laaditun tiedoston siirto kurssin palvelimeen. Projektin työmäärän seuranta. Tuotteessa havaittavien ongelmien ja virheiden seuranta. Mittareiden visualisointiohjelma.

WCLIQUE 17(27) Netscape Navicator 3.04 Web-sivujen selain. MS Outlook 98 Sähköpostiohjelmisto. 8.3 Raportointi Raportointi totetetaan ajan- ja virheiden seurannan suhteen kuten kappaleessa 10. on esitetty. Projektin toteutuksen suunnitelmat raportoidaan projektikatselmuksissa kussakin vaiheessa. Samoin raportoidaan tuotteen suhteen tehdyt määrittelyt ja projektin edistyminen. Projektikatselmuksissa raportoiduista asioista laaditaan myös kirjalliset raportit, joihin johtavat linkit löytyvät projektin kotisivulta http://www.hut.fi/jekahkon/wclique/. Projektikatselmukset ovat varsinainen raportointimenetelmä asiakkaalle ja kurssin henkilökunnalle. Projektin sisäinen raportointi toteutuu tehtävien suhteen projektryhmän projektipalavereissa, joissa tehtävistä vastaavat esittävät tuloksensa ja edistymisensä tehtäviensä suhteen. 8.4 Muut menetelmät ja dokumentit Seuraavien menetelmien ja työkalujen kuvauksiin löytyvät linkit projektin kotisivulta http://www.hut.fi/jekahkon/wclique/. Menetelmät ja työkalut ovat seuraavassa taulukossa.

WCLIQUE 18(27) Dokumentti Dokumentin sisällöstä vastaavat Dokumentin valmistumisajankohta Tuotteen ja dokumenttien identifiointi ja versiointi http://www.hut.fi/~jekahkon/wclique/versiointikayt_171100.pdf Tuotteen ja muutosten hallinta http://www.hut.fi/~jekahkon/wclique/muutoskayt_171100.html Dokumentointikäytäntö http://www.hut.fi/~jekahkon/wclique/dokumentointi_kayt_171100.pdf Dokumenttien arkistointi ja varmuuskopiointi http://www.hut.fi/~jekahkon/wclique/arkistointikayt_171100.pdf Projektin dokumenttien hakemistorakenne http://www.hut.fi/~jekahkon/wclique/hakemistorak_071100.pdf Tiedonkulku http://www.hut.fi/~jekahkon/wclique/tiedonkulkukayt_171100.pdf Spesifikaatioden toteutus http://www.hut.fi/~jekahkon/wclique/spesifikaatio_kayt_071100.pdf Laatujärjestelmä ja laadunvarmistus http://www.hut.fi/~jekahkon/wclique/laatujarjestelmakayt_071100.html Testaussuunnitelma http://www.hut.fi/~jekahkon/wclique/testauskayt_071100.html Test Case- määrittely http://www.hut.fi/~jekahkon/wclique/testcasemaarittely_171100.html Testiraportit http://www.hut.fi/~jekahkon/wclique/testiraportointikayt_171100.html Tarkastukset ja katselmoinnit http://www.hut.fi/~jekahkon/wclique/tarkastuskayt_171100.html Kokouskäytännöt http://www.hut.fi/~jekahkon/wclique/kokouskayt 071100.pdf Ryhmätyökäytännöt http://www.hut.fi/~jekahkon/wclique/ryhmatyokayt_071100.pdf Sari Salin 17.11.2000 Juha Kähkönen 17.11.2000 Sari Salin 17.11.2000 Sari Salin 17.11.2000 Sari Salin 07.11.2000 Janne Dufva 17.11.2000 Janne Dufva 07.11.2000 Juha Kähkönen 07.11.2000 Juha Kähkönen 07.11.2000 Juha Kähkönen 17.11.2000 Juha Kähkönen 17.11.2000 Juha Kähkönen 17.11.2000 Tapani Tarri 07.11.2000 Tapani Tarri 07.11.2000

WCLIQUE 19(27) 9. PROJEKTIN OSITUS, VAIHEISTUS JA RESURSSOINTI 9.1 Projektin ositus Seuraavassa esitetään projekti ositus karkeasti (WBS eli work break-down structure) aktiviteetteettien mukaan. Ohjelmisto clique -asiakkaalle tuote -kurssin suoritus Projektinsuunnittelu -projektiryhmän muodostaminen -vaatimusmäärittely -projektisuunnitelma -projektin ohjaus- ja seurantamenetelmät Toteutus1 -toiminnallinenmäärittely -arkitehtuurisuunnittelu Toteutus2 -arkitehtuurisuunnittelu -tekninenmäärittely -moduulisuunnittelu -moduulitestaus Toteutus3 -arkitehtuurisuunnittelu -moduulisuunnittelu -moduulitestaus -integrointi Toteutus4 -moduulisuunnittelu -moduulitestaus -integrointi -integrointitestaus Luovutus -debugging -regressiotestaus -alfa-versio -hyväksyntätestaus

WCLIQUE 20(27) 9.2 Projektin vaiheistus Seuraavassa esitetään projektin vaiheet ja vaiheiden aikataulutus. clique ohjelmistoprojekti Mon 25.09.00 Fri 27.04.01 Projektin suunnittely Mon 25.09.00 Tue 17.10.00 Toteutus1 Sat 21.10.00 Thu 09.11.00 Toteutus2 Sat 11.11.00 Fri 15.12.00 Toteutus3 Sat 16.12.00 Fri 16.02.01 Toteutus4 Sat 17.02.01 Fri 23.03.01 Luovutus Sat 24.03.01 Fri 27.04.01 Seuraavassa kuvassa on esitetty, miten edellämainittujen vaiheiden suhteen USDP:n ohjelmistoprosessin viitekehystä on sovellettu tässä projektissa. 3URMHNWLQ YDLKHHW 3URMHNWLQ VXXQQLWWHOX 3URVHVVLQYDLKHHW 7RWHXWXV 7RWHXWXV 7RWHXWXV 7RWHXWXV /XRYXWXV 9DDWLPXVPllULWWHO\ 7RLPLQQDOOLQHQ PllULWWHO\ 7HNQLQHQPllULWWHO\.RRGDXV 7HVWDXV 9.3 Projektin resurssointi Projektin resurssit ja vastuualueet on esitetty pääpiirteittäin kappaleessa 7. Tarkemmin projektin resurssointi vaiheittain ja tehtävittäin sidottuna projektin aikatauluun ja sisältäen työmääräarviot on määritelty projektin ohjaukseen ja hallintaan käytettävällä MS Project-ohjelmistolla ja määritellyt tiedot on tallennettu tiedostoon clique.mpp, josta edelleen on laadittu tietokanta, jonka päivitetty versio on kussakin projektin vaiheessa siirretty PMIX-ohjelmistolla kurssin palvelimeen.

WCLIQUE 21(27) 10. SEURANTA JA OHJAUS Projektin seurantaa hoidetaan kurssin puitteissa määritellyillä menetelmillä ja työkaluilla. Projektin eri vaiheiden deadlinet, katselmukset ja demo-tilaisuudet on määritelty projektisuunnitelmassa ja ne perustuvat kurssin aikatauluun. Kunkin vaiheen tuottamat dokumentit on määritelty. 10.1 Aikataulun ja resurssien seuranta MS Project ohjelmistolla Projektin tehtävät kirjataan MS Project -tiedostoon, josta ne edelleen siirretään PMIX-ohjelmalla kurssin palvelimelle. Tarkemmat ohjeet tiedostopohjan eri kohtiin sivulla http://mordor.cs.hut.fi/tik- 76.115/ohjeet/ps-ohje.html Ajankäytön seuranta Tirana-järjestelmällä Kunkin ryhmän jäsenen projektiin käyttämä aika raportoidaan Tirana-järjestelmää käyttäen tehtäväkohtaisesti. Tehtävät perustuvat MS Project tiedostoon, myös suunnittelematon työ raportoidaan. Tuntien lisäksi raportoidaan työlaji, arvio jäljellä olevasta työmäärästä ja arvio valmistumispäivästä. Jokainen ryhmän jäsen raportoi tuntinsa vähintään viikoittain suoraan Tiranajärjestelmään tai ensin omassa kirjanpidossaan ja vie sieltä edelleen tuntitiedot Tirana-järjestelmään jokaisen vaiheen päätteeksi viimeistään ennen vaiheen päätöskatselmusta. 10.2 Laadun seuranta Virheraportointi Burana-järjestelmällä Ohjelmistossa havaitut virheet, puutteet ja ongelmat raportoidaan Burana-järjestelmää käyttäen. Raportti tehdään välittömästi havaitsemisen jälkeen ja raportoija määrittelee raportille vastuuhenkilön. Mikäli vastuuhenkilö ei ole yksiselitteisesti selvillä, projektipäällikkö on/määrää vastuuhenkilö/n. Muutostenhallintapolitiikka vikaraporttien käsittelyssä määritellään tarkemmin, kun ryhmä on tutustunut Burana-järjestelmän ominaisuuksiin ja toteutusvastuiden jako on tarkemmin selvillä. Ajankäytön seurantaan Buranaa EI käytetä. Projektin vaiheessa "Toteutus1" laadunseurantaan liittyvät asiat määritellään tarkemmin laadittavassa laatusuunnitelmassa. Ohjelmiston koon seuranta Burana-järjestelmällä Ohjelmiston kokoa seurataan Burana-järjestelmällä CCCC-ohjelmaa hyväksi käyttäen. Ohjelmiston kokoraportti tehdään jokaisen vaiheen päätteeksi. Visualisointi ViCA-ohjelmistolla ViCA-ohjelmistolla voidaan tehdä kuvaajia kerätyistä tiedoista. Myöhemmin päätetään, millä tavoin projektissa tätä hyödynnetään. Muut projektin aikana mitattavat kohteet Tässä vaiheessa varataan mahdollisuus ottaa projektin edetessä muita tarpeellisia mittareita käyttöön, mikäli sille myöhemmin löytyy perusteita esim laatusuunnitelman teon yhteydessä.

WCLIQUE 22(27) 10.3 Työn ohjaus Algoritmiin ja sen implementointiin liittyvissä asioissa kommunikoidaan säännöllisesti työn ohjaajan, Harri Haanpään kanssa. Käytännön syistä suurin osa tiedon vaihdosta pyritään hoitamaan sähköpostin välityksellä. Ohjelmointiryhmä on pääosin vastuussa näiden yhteydenottojen ja palaverien järjestämisestä. Asiakkaan, Patric Östergårdin kanssa pidetään kokous tarvittaessa, lähinnä esim. kun algoritmiin liittyvissä vaatimuksissa ilmenee tarkentamistarvetta. Asiakkaalle ja ohjaajalle järjestetään demonstraatiot sekä kurssin projektikatselmusten yhteydessä että silloin, kun jokin osatoiminnallisuus valmis tai suorituskykyominaisuus kaipaa asiakkaan arviointia. 11. STANDARDIT, DIREKTIIVIT JA MÄÄRÄYKSET Ohjelmisto on toteutettava ANSI-C standardin mukaisesti. ANSI C on kuvattu American National Standard X3.159-1989:ssa. Toteutettavan ohjelmiston lähdekoodi julkaistaan vapaasti käytettäväksi tieteellisiin tarkoituksiin. Mikäli joku haluaa käyttää ohjelmaa kaupallisiin tarkoituksiin niin siihen otetaan kantaa mikäli asia tulee ajankohtaiseksi. Tällöin käytäntö on kuten kappaleessa 1.4 on kuvattu. Ohjelmistoa ei tässä vaiheessa alisteta minkään erityisen lisensointimenettelyn alaiseksi. ANSI C IEEE 829 UML 1997 USDP ISO 9000-1 C-ohjelmointikieli Ohjelmistotestauksen dokumentaation standardi Notaatiostandardi Ohjelmistoprosessin viitekehys Laadun hallinta ja varmistus, valinnan ja käytön opas, standardi Laki tekijänoikeuksista 12. RISKIENHALLINTASUUNNITELMA 12.1 Kommunikaatio Ryhmän jäsenet ovat ns. erillisopiskelijoita, jotka päivätyönsä johdosta, opiskelevat käytännössä ainoastaan iltaisin ja viikonloppuisin. Ryhmän jäsenillä on tämän johdosta rajalliset mahdollisuudet ryhmätyöskentelylle, sekä projektikokouksille. Tämä saattaa heikentää myös ryhmää koskevan informaation välittymistä ryhmän, asiakkaan, sekä kurssin järjestäjien välillä. Tämän riski saattaa aiheuttaa vakavia myöhästymisiä projektissa ja tehtävien toteutuksen laiminlyöntejä heikon seurannan ja kommunikaation takia. Tämän riskin merkitys on suuri. Riskiä yritetään hallita järjestämällä ryhmätyöskentelytilaisuudet, sekä projektikokoukset mahdollisuuksien mukaan iltaisin ja viikonloppuisin.

WCLIQUE 23(27) 12.2 Työkalut Ryhmän jäsenille uudet työkalut saattavat aiheuttaa hankaluuksia joidenkin projektin vaiheiden suorittamisessa. Seurauksen saattaa olla projektin niiden tavoitteiden myöhästyminen projektin alkuvaiheessa, joiden suoritukseen ko työkaluja tarvitaan. Tämän riskin merkitys on pieni. Riskiä yritetään hallita tutustumalla oma-aloitteisesti työkaluihin, työkalujen käyttöoppaisiin, sekä pyytämällä konsultointiapua mahdollisesti kurssin järjestäjiltä. 12.3 Käytännön- ja työkokemus Ryhmän jäsenten kohtalaisen suuren käytännön työkokemuksen, sekä käytännön projekteihin osallistumisen johdosta, orientoituminen alusta loppuun oppikirjan mukaisesti suoritettavaan ohjelmistoprojektiin saattaa olla hankalaa. Tämän seurauksena saattaa kurssin tarjoaman opetuksen teho ja vaikutus projektin jäseniin laskea. Tämän riskin merkitys on pieni. Riskiä yritetään hallita motivoimalla, sekä kannustelmalla itse kukin ryhmän muita jäseniä suoriutumaan ohjelmistoprojektista kunnialla. 12.4 Aikataulu Ohjelmistoprojektin tiukka aikataulu muiden kurssien, sekä ryhmän jäsenten päivätyön lomassa, saattaa aiheuttaa luisumista aikataulujen suhteen. Tämä on suuri käytännön riski, joka toteutuessaan on käytännön syistä hyvin hankala hallita. Tällöin ryhmän jäsenten on syytä kääntyä kurssin järjestäjien, sekä asiakkaan puoleen. 12.5 Asiakkaan vaatimukset Osa asiakkaan asettamista vaatimuksista tarkentuu mahdollisesti vasta tuotettavan järjestelmän suunnittelun tai toteutuksen aikana, jolloin vaatimusten tarkentuminen voi pahimmillaan aiheuttaa paljonkin työmäärän kasvua. Tämän riskin merkitys on oleellinen. Riskiä työmäärän kasvamisen suhteen yritetään hallita, suunnitelemalla toteutettavasta järjestelmästä mahdollisimman joustava mahdollisia vaatimuksien tarkentumisia ajatellen. 12.6 Varahenkilökäytäntö Projektin henkilön tilapäinen tai pysyvä estyminen hoitamasta projektin tehtäviä on huomioitava riski. Pahimmillaan sen vaikutuksesta saattaa tärkeä projektin tehtävä jäädä toteuttamatta tai myöhästyä oleellisesti asetettuihin projektin tavoitteisiin nähden. Tämän riskin merkitys on suuri. Projektiryhmän vastuualueiden tehtävien ressurssointi ja riittävän monen henkilön puitteissa oleva asiantuntemus niissä varmistetaan varahenkilöjärjestelyin. Varallaolevat henkilöt määräytyvät ko olevan tehtävän ja vastuualueen suhteen siten, että varahenkilö tai varahenkilöt (ensisijainen, toissijainen jne) pyritään määrittelemään siitä tehtäväkentän (katso taulukko kappaleessa 5. PROJEKTIN ORGANISAATIO) ryhmästä, johon tehtäväkenttään sijaisen tarvitsijan tehtävä ja vastuualue osana kuuluu.

WCLIQUE 24(27) Seuraavassa on taulukoitu henkilöt ja heidän tehtäviensä varahenkilöt. Tehtävä Henkilö Varahenkilöt Projektipäällikkö Tapani Tarri 1. Janne Dufva 2. Sari Salin 3. Juha Kähkönen Asiakasvastaava Janne Dufva 1. Raine Kärkkäinen 2. Juha Kähkönen 3. Tapani Tarri Dokumentointipäällikkö Sari Salin 1. Tapani Tarri 2. Juha Kähkönen 3. Janne Dufva Laatupäällikkö Juha Kähkönen 1. Sari Salin 2. Janne Dufva 3. Tapani Tarri Algoritmiasiantuntija Raine Kärkkäinen 1. Juha Lehtonen 2. Ossi Ouri 3. Juha Kähkönen Arkitehtuurivastaava Juha Lehtonen 1. Ossi Ouri 2. Raine Kärkkäinen 3. Juha kähkönen Suunnittelupäällikkö Ossi Ouri 1. Juha Kähkönen 2. Juha Lehtonen 3. Raine Kärkkäinen

WCLIQUE 25(27) 12.7 Riskienhallintaprosessi Riskien seuranta ja hallinta tapahtuu projektikokousten yhteydessä. Riskit kartoitetaan ja niille tehdään hallintasuunnitelma. Riskien statukset, merkitys suuri, oleellinen tai pieni, määritellään kuten myös määritellään onko riski akuutti vai onko se poistunut. 13. KOULUTUSSUUNNITELMA Projekti kuuluu olennaisena osana kurssiin Tik-76.115 Ohjelmatyö. Kurssin ohjelmaan kuuluu myös 28.09.2000 järjestetty MS Project koulutus ja tiistaisin kello 18-20 järjestettävät luennot. Ainakin projektipäälliköiden tulisi osallistua MS Project koulutukseen ja ryhmän jäsenet osallistuvat mahdollisuuksien mukaan järjestettäville luennoille. Esitietovaatiomuksina Ohjelmatyökurssille ovat Tik-76-601 Ohjelmistotuotannon perusteet ja jokin kursseista Tik-76.611 613. Lähes kaikki ryhmän jäsenet osallistuvat tänä syksynä järjestettäville Ohjelmistotuotannon kurssille ja "Tik-76.613 Ohjelmistojen testaus ja laadunvarmistus" kurssille. Myös ryhmän aiemmat Disko-opinnot tukevat projektia kuten myös ryhmän jäsenten insinööri-tutkintoihin johtaneet opinnot sekä useiden vuosien kokemukset projektityöskentelystä mm työnantajansa Nokia Networks Oy:n tuotekehitysprojekteissa, joten muuta kuin yllä mainittua erillistä koulutusta ei tässä yhteydessä tarvinne järjestää.

WCLIQUE 26(27) 14. KÄYTTÖÖNOTTOSUUNNITELMA Tuote otetaan käyttöön asteittain. Mahdollisimman aikaisessa vaiheessa asiakkaalle esitetään vaihetuote, josta ilmenee mm kuinka ohjelmistoa on tarkoitus käyttää. Vaikka wcliquesta oli aikaisempi ns. proto versio, ei tätä tulla käyttämään uuden version rinnalla muussa mielessä kuin referenssinä nopeudesta. Ennen kuin ohjelma asennetaan asiakkaan koneeseen, mikä tässä tapauksessa on yksi tietojenkäsittelyteorianlaboratorion Linux koneista, ohjelmaa testataan Nokian System Support - testilaboratoriossa jossa käyttöjärjestelmänä on Linux RedHat 6.0 tai uudempi. Kun Wqlicue on todettu toimivaksi, se voidaan toimittaa Patric Östergårdille tietojenkäsittelylaboratorioon testattavaksi. Tomitus voi tapahtua lähdekoodina meilitse tai CD rom:lla. Havaittuja puutteita ohjelmassa pyritään korjaamaan kunnes päädytään yhteisymmärrykseen softan toimivuudesta, eli ns. Beta testausvaihe on ohitettu. Asennus tapahtuu kääntämällä C kielinen ohjelma asiakkaan koneessa, jolloin ohjelman tulisi olla suoraan ejettavissa. Asennukseen kuuluu myös LaTex-kielinen käyttökirja.