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

Koko: px
Aloita esitys sivulta:

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

Transkriptio

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

2 Kurssi Ohjelmistotuotantoprojekti ( ov) Projektiryhmä Heli Borg Markus Heinonen Ville Luolajan-Mikkola Olli Orajärvi Asiakas Petteri Hintsanen Johtoryhmä Juha Taina Turjo Tuohiniemi Kotisivu Versiohistoria Versio Päiväys Tehdyt muutokset Ensimmäinen versio Kommenttien pohjalta korjattu versio Uusi versio kommentoitavaksi Asiakkaalle toimitettava 1.versio Hyväksytty versio.

3 Sisältö i 1 Johdanto Termit Dokumentin rakenne Nykyinen järjestelmä Tarkoitus Rakenne genped chrom simco markertool Ongelmat Käyttötapaukset Sidosryhmät Tutkijan käyttötapaukset Järjestelmän ylläpitäjän käyttötapaukset Vaatimukset Toiminnalliset vaatimukset Laadulliset vaatimukset Rajoitteet suunnittelulle Toteutettava järjestelmä Rakenne Populous-palvelinkomponentti Populous-asiakaskomponentti Käyttöliittymä Ulkoiset liittymät Rajoitteet suunnittelulle ja toteutukselle 24 7 Vaatimusten toteutuminen Validointi

4 7.2 Testaus Ylläpito ii

5 1 Johdanto 1 Populous on syksyn 2004 aikana Helsingin yliopiston Tietojenkäsittelytieteen laitoksella Ohjelmistotuotantoprojekti -kurssin puitteissa toteutettava projekti. Projektissa tuotetaan populaation kehityksen simulointiin käytettävän ohjelmiston osa. Projektin pohjana on HIIT -perustutkimusyksikössä käytössä oleva populaatiosimulaattori, joka koostuu neljästä osasta. Tässä projektissa korvataan käytössä olevan ohjelmiston kaksi ensimmäistä osaa tavoitteena prosessin suoraviivaistaminen. Lisäksi laaditaan käyttöliittymä ohjelmiston käytön helpottamiseksi. Simulointiprosessin lähtökohtana on tyypillisesti yksi populaatioisolaatti. Populaatio koostuu pienestä joukosta yksilöitä, joista populaatio kasvaa annettuun loppukokoon saakka. Simulaatio jäljittelee perusjoukon geenien periytymistä jälkeläisille ja sukupolvelta toiselle laajenemisprosessin kuluessa. Projekti toteutetaan syksyllä 2004 laaditun projektisuunnitelman mukaisesti. Tämä Populous -projektin määrittelydokumentti on tarkoitettu projektiryhmän ja asiakkaan väliseksi sopimukseksi ja se kattaa kokonaisuudessaan toteutettavan ohjelmistolle asetettavat toiminnalliset vaatimukset. Lisäksi dokumentissa määritellään mahdollisimman tarkasti ohjelmistoon kohdistuvat laadulliset vaatimukset. 1.1 Termit Dokumentissa käytetyt termit ja lyhenteet: Alipopulaatio: Populaatio voi jakautua useisiin populaatioisolaatteihin. Alipopulaatioiden välillä pariutumistodennäköisyys on pienempi kuin alipopulaation sisällä. Emäspari: Kromosomeissa sijaitsevat toisiaan vastaavat dna:n rakenneosat. (engl. basepair). Genotyyppi: Useiden markkereiden yhdistelmä. HIIT -perustutkimusyksikkö: Tietojenkäsittelytieteen laitoksen yhteydessä toimiva Helsingin yliopiston ja Teknillisen korkeakoulun yhteisen Helsinki Institute for Information Technology -tutkimuslaitoksen (HIIT) perustutkimusyksikkö (BRU).Yksikön keskeisiä tutkimusalueita ovat data-analyysi, adaptiivinen laskenta ja laskennallinen neurotiede. HUP: Kts. UNIX -signaalit. INT: Kts. UNIX -signaalit. Loppupopulaatio: Populaatiosimulaation lopussa olevan viimeisen sukupolven edustajat muodostavat loppupopulaation. Markkeri: Kromosomissa paikka, jossa esiintyy yksilöiden välistä vaihtelua.

6 Ncurses: Yleisesti käytössä oleva kirjasto tekstitilaisen terminaali-ikkunan sisällön ja toimintojen määrittelyyn. Tässä projektissa NCURSES:lla on tarkoitus toteuttaa yksinkertainen ikkunamainen käyttöliittymä, jolla voidaan suorittaa rinnakkaista ajoa lukuunottamatta samat käyttötapaukset kuin Javalla toteutettava käyttöliittymä. Perustajajäsen: Populaation ensimmäisen sukupolven edustaja, jonka perimästä simulaatio lähtee liikkeelle. Populaatio: Joukko saman lajin yksilöitä, jotka elävät samalla alueella. Populaatioisolaatti: Eristäytynyt populaatio, jossa ei geenivaihtoa ulkopuolelta. Rekombinaatio: Tekijäinvaihtojen määrästä riippuva jälkeläisen geeniperimä. Siirtolainen: Muualta populaatioon tuleva yksilö, jonka geeniperimä poikkeaa ko. populaatioisolaatin perimästä. SNP -mutaatio: Lajin sisäinen, nukleotidisekvenssin tietyssä kohdassa esiintyvä vaihtelu. Muutokset tapahtuvat ainoastaan yhdessä emäsparissa.(engl. SNP = Single Nucleotide Polymorphism). STR-markkerit: Lyhyellä peräkkäisellä kromosomijaksolla toistuvat markkerit. Vaihtelu muodostuu jakson toistojen lukumäärästä. (engl. STR = Short Tandem Repeat). Tekijäinvaihto: Kromosomien risteäminen jakautumisen yhteydessä. (engl. cross-over). TERM: Kts. UNIX -signaalit. UNIX-signaalit: Prosessien väliseen kommunikaatioon käytetty menetelmä, jolla prosessille voidaan antaa signaali. Signaalin tyyppejä ovat mm. INT, TERM ja HUP, joihin reagoiminen voidaan ohjelmassa säätää halutunlaiseksi Dokumentin rakenne Luvussa 2 selvitetään nykyisen populaatiosimulaattorijärjestelmän rakennetta ja toimintaa. Luku 3 sisältää kuvauksen järjestelmään liittyvistä sidosryhmistä ja näiden järjestelmän käytöstä käyttötapauksien avulla. Luvussa 4 on listattu projektin toiminnalliset ja laadulliset vaatimukset sekä toteutukselle asetetut rajoitteet. Luku 5 sisältää yksityiskohtaisen kuvauksen toteutettavasta järjestelmästä. Luvussa 6 on esitetty projektin suunnittelulle ja toteutukselle asetettavat rajoitteet. Luku 7 esittelee miten vaatimukset toteutuvat projektissa toteutettavassa järjestelmässä. 2 Nykyinen järjestelmä Tämä luku sisältää yleiskuvauksen HIIT:issä tällä hetkellä käytössä olevasta ohjelmistosta. Luvussa käydään läpi populaatiosimulaattorin käyttötarkoitus, rakenne ja siihen liitty-

7 vät ongelmat. Simulaattorin toiminnassa ilmenneet ongelmat ovat lähtökohtana Populousprojektille ja muodostavat yhdessä käyttötarkoituksen kanssa taustan, jota vasten projektin onnistumista voidaan arvioida Tarkoitus 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. 2.2 Rakenne Nykyisellään populaatiosimulaattori koostuu neljästä erillisestä osasta, genped, chrom, simco ja markertool, sekä skripteistä, joilla niiden toiminta on yhdistetty. (Kts. Kuva 1, Populaatiosimulaattorin rakenne). Seuraavissa aliluvuissa kuvataan erilliset osat syötteineen ja tulosteineen. Kuva 1: Populaatiosimulaattorin rakenne genped Genpedin on simulointiprosessin ensimmäinen osa. Sen tarkoitus on luoda annettujen parametrien pohjalta sukupuu, jossa kromosomien rekombinoitumista ja mutatoitumista tullaan simuloimaan. Sukupolvet ovat diskreettejä, ts. pariutuminen tapahtuu aina sukupol-

8 ven sisällä. Nykyinen komponentti on kirjoitettu Python-ohjelmointikielellä ja on kooltaan suhteellisen pieni, 128 riviä kommentteineen. Syötteet: Tulosteet: Perustajasukupolven koko (kromosomeina) Viimeisen jälkeläissukupolven koko (kromosomeina) Sukupolvien lukumäärä Viimeisen lisäksi tulostettavat sukupolvet sukupuun tiedot tekstiriveinä Syöttö ja tulostustietojen rakenne: Sukupolvi Id Isä Äiti Sukupuoli Tulostus Lapsiluku Taulukko 1: Genpedin tulosteformaatti Taulukon 1 selitys: Sukupolvi: Sukupolven indeksi, 0=perustajat Id: Yksilön tunnus Isä: Isän id Äiti: Äidin id Sukupuoli: Henkilön sukupuoli, 1=Isä, 2=Äiti Tulostus: +=sukupolvi otetaan mukaan chrom-tulostukseen, -=ei oteta Lapsiluku: Henkilön lapsien lukumäärä chrom Simulointiketjun toinen komponentti on chrom. Chromin lisää genpedin luomaan sukupuuhun kromosomien rekombinoitumisen sukupolvelta toiselle. Chrom on kirjoitettu C- kielellä ja on kooltaan 1201 riviä kommentteineen. Syötteet:

9 5 Tulosteet: Genpedin tulostama sukupuu Miehen kromosomipituus Naisen kromosomipituus Debug-taso Satunnaislukugeneraattorin siemen Interferenssiparametrin arvo Seurantapisteet Seurantapistevapaa alue kromosomin päässä (0-0.5) Jälkeläis- ja perustajajoukko/väli, joiden yhteiset kromosomin osat halutaan määrittää. Vain lopussa elävien jälkeläisten tulostus Tulostuksen pakkaamineen lukukelvottomaan muotoon(tilan säästämiseksi) Sukupolvinumeroinnin sisältyminen tulosteeseen Vanhempien informaation poistaminen tulosteesta Suurin sallittu segmenttimäärä muistissa kerralla Sukupuussa esiintyvien yksilöiden kromosomien rekombinoituneet osat tekstiriveinä Syöttö ja tulostustietojen rakenne: Id Vastinkromosomiparin Loppupiste Pid Osan alkuperäkromosomi tunnus Taulukon 2 selitys: Id: Yksilön tunnus Taulukko 2: Chromin tulosteformaatti

10 Vastinkromosomiparin tunnus: 0=isältä peritty kromosomi, 1=äidiltä peritty kromosomi Loppupiste: Kromosomiosan loppupiste, alkupiste on edellisen osan loppupiste Pid: Id perustajalle, jolta kromosomin osa on peräisin Osan alkuperäkromosomi: Perustajajäsenen kromosomi, josta osa on peräisin. 0=isä, 1=äiti simco Simcon tehtävä on generoida markkerit perustajayksilöille. Se on kirjoitettu C-kielellä. Simcoa ei ole tarkoitus muokata projektin aikana. Syötteet: Tulosteet: STR -markereiden sijaintitiedosto Satunnaislukugeneraattorin siemen Efektiivinen populaatiokoko kromosomeina Otoksen koko Simuloidun sekvenssin pituus emäspareina SNP mutaatiotiheys Rekombinaatiotiheys Lista markkereiden sijainneista ja jakautumisesta Syöttö ja tulostustietojen rakenne: Markkeri Sijainti Ikä Pid SNP SNP SNP SNP SNP SNP SNP Taulukon 3 selitys: Markkeri: Markkerin tyyppi Taulukko 3: Simco:n tulostusformaatti

11 7 Sijainti: Markkerin sijainti Ikä: Mutaation (markkerin) ikä sukupolvina Pid: Kaikkien niiden perustajien id:t, joilla on mutaatio markkerin kohdalla markertool Ketjun viimeinen osa on markertool, joka poimii populaatiosta otoksen ja luo lopullisen markkeridatan. Lisäksi on mahdollista määritellä tautimalli. Markertool vaatii, osittain toteutusteknisistä, mutta myös algoritmiteknisistä syistä, syötteekseen erilaisen, tiiviimmän chrom-tulosteen. Simulaatio-skripti hybridsim.sh muuntaa chrom-tulosteen tähän formaattiin. Chromin tulostetta muokataan seuraavasti: Markertool käsittelee kromosomeja [0; 1] väleinä. Henkilöiden tunnukset ovat kuitenkin erilaisia kuin chromissa: jokaisella yksilöllä on kaksi peräkkäistä tunnusta, jotka vastaavat henkilön vastinkromosomeja. Parillinen tunnus kuvaa isältä perittyä kromosomia ja pariton tunnus äidiltä perittyä. Täsmällisesti: jokaisen henkilön tunnukset ovat 2n,2n+1, jossa 2n vastaa isältä perittyä kromosomia ja 2n + 1 äidiltä perittyä. Tällä numeroinnilla on käytännössä yhdistetty chromin tulosteen kaksi ensimmäistä saraketta. Lisäksi tunnusten numerointi alkaa jokaisessa sukupolvessa uudelleen nollasta. Henkilöllä on siis yksikäsitteinen tunnus(pari) vain oman sukupolvensa joukossa. Muokattu tuloste on toisen sarakkeen mukaan järjestyksessä. Markertool on kirjoitettu C-kielellä ja sitä ei ole tarkoitus projektissa muuttaa. Asiakas Petteri Hintsanen on lupautunut muuttamaan markertoolia sen verran, että seuraavan kromosomiosan alkupisteeksi käy emäsparin kokonaislukuindeksi. Syötteet: Esiprosessoitu chromin tuloste toisen sarakkeen mukaan järjestyksessä Simco:n tuloste Markkerialueen alkukohta Markkerialueen loppukohta Esiintymistiheys mutaatiolle, joka valitaan tautimalliksi loppupopulaatiossa Kromosomipituus Markerikartan kirjoitus tiedostoon Generoitavien SNP markkerien lukumäärä Otoskoko yksilöinä Yleisyys Ilmenevyys(ehdollinen todennäköisyys ilmiasulle)

12 8 Tulosteet: Raportin kirjoitus tiedostoon Otoksen tyyppi( random, affected, case+healthy tai case+random ) Minimiesiintymistiheys alleeleille (alle rajan olevat karsitaan otoksesta) Vanhempien sukupolven koko(trio-asetus) Vanhempien sukupolven luku tiedostosta(trio-asetus) Sukupuun luku tiedostosta(trio-asetus) Sisarusten salliminen otokseen(trio-asetus) Raportti Markkerikartta Alleelikartta Syöttö ja tulostustietojen rakenne: Id Alkupiste Pid Taulukko 4: Markertoolille esiprosessoitu chromin tuloste Taulukon 4 selitys: Id: Yksilön tunnus Alkupiste: Seuraavan kromosomin osan alkupiste Pid: Id perustajalle, jolta kromosomin osa on peräisin

13 9 Tunnus TU1 TU2 TU3 TU4 TU5 TU6 TU7 TU8 YL1 YL2 YL3 YL4 YL5 YL6 Käyttötapaus Syöttötietojen antaminen Tallennettujen syöttötietojen lataus Tulosteen uudelleenkäyttö syöttötiedostona Syöttötietojen muokkaaminen Syöttötietojen tallentaminen Syöttötietojen poistaminen Populaatiosimulaation käynnistäminen Populaatiosimulaation keskeyttäminen Asiakasohjelman konfigurointi Palvelimen käyttöoikeuksien hallinta Järjestelmän asentaminen Palvelimen käynnistäminen Palvelimen sammuttaminen Palvelimen uudelleen käynnistäminen 2.3 Ongelmat Taulukko 5: Tutkijan ja ylläpitäjän käyttötapaukset. Populaatioiden simulointi vaatii tietokoneelta paljon resursseja. Tyypillisesti simuloitavat populaatiot ovat suuria ja simulointia on ajettava sata kertaa tai jopa useammin satunnaisvaihteluiden minimoimiseksi. Nykyisellään yksi simulointiajo alusta loppuun kestää minuuteista kymmeniin minuutteihin riippuen konetehosta ja populaation koosta. Tämänhetkinen ohjelmisto on yhden ihmisen väitöskirjatyön päälle rakennettu ja muiden ihmisten useampaan kertaan muokkaama. Tämän seurauksena komponenttien välinen yhteistyö ei ole saumatonta vaan neljän erillisen osakomponentin toiminta on skriptattu yhteen siten, että parametrit luetaan erillisestä parametritiedostosta ja jokainen osakomponentti työskentelee aiemman vaiheen tiedostoon tallentaman lopputuloksen pohjalta. Lisäksi välissä on tehtävä esiprosessointia, koska chromin tuloste ei ole markertoolin ymmärtämässä muodossa. Tämä kaikki tekee ohjelmiston käytöstä työlästä ja hidasta. 3 Käyttötapaukset Tässä kappaleessa kuvataan järjestelmään liittyvät sidosryhmät (kts. Kuva 2) ja esitellään sidosryhmien käyttötapaukset. Seuraavassa taulukossa 5 on lueteltu kaikki populaatiosimulaattoriin liittyvät käyttötapaukset.

14 Sidosryhmät Populaatiosimulaattorin sidosryhmät on esitetty kuvassa 2. Sidosryhmiä on kaksi: tutkija ja ylläpitäjä. Tutkijan käyttötapaukset on merkitty lyhenteellä TU ja ylläpitäjän käyttötapaukset lyhenteellä YL. Lisäksi kummankin sidosryhmän käyttötapaukset on juoksevasti numeroitu (TU1-TU8 ja YL1-YL6). Kuva 2: Populaatiosimulaattorin sidosryhmät. Tutkija on populaatiosimulaattoria käyttävä, populaatiotutkimusta harjoittava henkilö. Tutkija antaa syötteenä järjestelmälle populaation luontiin tarvittavat lähtötiedot ja saa tulokseksi tiedon loppupopulaation perimästä. Järjestelmä simuloi populaation kehitystä annetusta lähtötilanteesta, kunnes loppupopulaatioon haluttu yksilömäärä on saavutettu. Loppupopulaatiosta voidaan havaita tietyn, alkuperäisestä populaatiosta peräisin olevan markkerin omaavien yksilöiden lukumäärä. Ylläpitäjä on populaatiosimulaattoria ylläpitävä henkilö. Ylläpitäjän tehtävänä on huolehtia järjestelmän asennuksesta ja toiminnasta halutussa käyttöympäristössä. Järjestelmän ylläpitäjänä voi toimia myös tutkija itse. 3.2 Tutkijan käyttötapaukset Käyttötapaukset on esitetty graafisesti kuvassa 3. Tässä luvussa käsitellään yksityiskohtaisesti tutkijaan liittyviä käyttötapauksia. Kukin käyttötapaus on kuvattu ja sen vaatimat syötteet ja sen antamat tulosteet on kuvattu. Toiminnossa mahdollisesti tapahtuvat poikkeukset on kirjattu. Kommenttiosassa on ko. käyttötapaukseen liittyviä huomioita.

15 11 Kuva 3: Käyttötapaukset. TU1. Syöttötietojen antaminen Kuvaus: Tutkija antaa järjestelmälle syöttötiedot käyttämänsä käyttöliittymän mukaisesti joko niille varattuihin kenttiin tai komentoriville. Syöttötietoja käytetään populaatiosimulaation lähtötietoina, joiden avulla simulaatioprosessi etenee. Syöte: Syöte koostuu seuraavista arvoista: 1. Toteutettavan järjestelmän tarvitsemat parametrit: perustajajäsenten lukumäärä loppupopulaation koko sukupolvien lukumäärä simulaation toistojen lukumäärä alipopulaatioiden määrä alipopulaatioiden koot siirtymistodennäköisyydet alipopulaatioiden välillä halutaanko pelkkä sukupuun muodostaminen sukupolvet, joiden yhteiset kromosomin osat halutaan määrittää 2. Simcon tarvitsemat parametrit:

16 12 STR -markereiden sijaintitiedosto (-S) populaation koko kromosomeina (-n) kromosomin pituus emäspareina (-l) SNP -mutaatioiden todennäköisyys/emäspari/sukupolvi (-u) rekombinaatiotodennäköisyys/emäspari/sukupolvi (-r) 3. Markertoolin tarvitsemat parametrit: tautimallin määrittävät parametrit (-d, -P, -r ) markkereihin liittyvät parametrit (-f, -m ) otoksiin liittyvät parametrit (-N, -s, -a) raportointia varten tarvittavat tiedot Markertoolille (-r, -M ) Tulos: Järjestelmän kaikki populaatiosimulaatioon tarvitsemat tiedot näkyvät niille varatuissa kentissä. Poikkeukset: Kaikkia tarvittavia tietoja ei ole annettu tai ne eivät ole sallituissa rajoissa. Loppupopulaatio on pienempi tai yhtä suuri kuin alkupopulaatio. Perustajajäseniä on alle kaksi. Kommentit: Syöttötietojen oikeellisuuus tarkistettava. TU2. Tallennettujen syöttötietojen lataus Kuvaus: Tutkija lataa syöttötiedot suoraan aiemmin tallennetusta tiedostosta. Tämä mahdollistaa saman simulaation toiston useampaan kertaan samoilla parametreilla. Syöte: Tiedoston nimi ja osoite. Tiedosto on tekstitiedosto, jossa populaatiosimulaattorin tarvitsemat syöteparametrit on annettu myöhemmin määriteltävän formaatin mukaisesti. Tulos: Annetut syöttötiedot näkyvät näytöllä, niille varatuissa kentissä tai komentorivillä, käyttöliittymästä riippuen. Poikkeukset: Annetun nimistä tiedostoa ei löydy tai se on sellaisessa muodossa, että sitä ei voi käyttää syöttötiedostona (ei tekstitiedosto tai väärä formaatti). Kommentit: Tiedoston muoto on määriteltävä tarkasti. TU3. Tulosteen uudelleenkäyttö syöttötiedostona Kuvaus: Tutkija käyttää populaatiosimulaattorin tulosteesta otettua otosta uuden simulaation pohjana. Syöte: Tulostiedoston nimi ja osoite sekä otoksen koko. Tiedosto on tekstitiedosto, jossa populaatiosimulaattorin tarvitsemat syöteparametrit on annettu myöhemmin määriteltävän formaatin mukaisesti.

17 13 Tulos: Annetut syöttötiedot näkyvät näytöllä,. Poikkeukset: Annetun nimistä tiedostoa ei löydy tai se ei ole populaatiosimulaattorin tulostiedosto. Kommentit: - TU4. Syöttötietojen muokkaaminen Kuvaus: Tutkija muokkaa antamiaan syöttötietoja muuttamalla niiden arvoja käyttöliittymän kentissä. Muokkauksella voidaan korjata virheellinen syöte tai muusta syystä vaihtaa syöttötietojen arvoja. Syöte: Minkä tahansa parametrin arvo. Osalla parametreista on annetut oletusarvot tai vaihteluvälit, joiden puitteissa muutos voidaan tehdä. Tulos: Muutetut tiedot näkyvät näytöllä, niille varatuissa kentissä. Poikkeukset: Kaikkia tarvittavia tietoja ei ole annettu tai ne eivät ole sallituissa rajoissa. Kommentit: - TU5. Syöttötietojen tallentaminen Kuvaus: Tutkija antaa syöttötiedot komentoriviltä tai käyttöliittymässä ja tallentaa antamansa syöttötiedot tiedostoon mahdollissta uudelleenkäyttöä tai myöhempää tarkastelua varten. Tallennettuja tietoja voi käyttää uudelleen lataamalla tallennetut syöttötiedot käyttötapauksen TU2 mukaisesti. Syöte: Tallennettavan syöttötiedoston nimi ja paikka, mihin tallennetaan. Tulos: Tiedosto, joka on populaatiosimulaattorin ymmärtämässä muodossa. Tiedosto sisältää tiedot syötetyistä parametreista uudelleen käyttöä varten. Poikkeukset: Saman niminen tiedosto on jo olemassa. Kommentit: - TU6. Populaatiosimulaation käynnistäminen Kuvaus: Tutkija käynnistää populaatiosimulaation annetuilla parametreilla. Parametrit on annettu suoraan käyttötapauksen TU1 mukaan tai tiedostosta käyttötapauksien TU2 tai TU3 mukaan. Syöte: Käynnistyspyyntö, jolloin järjestelmä kysyy halutun tiedostonnimen ja hakemiston, jonne tulokset tallennetaan. Tulos: Loppupopulaatiota kuvaava tekstitiedosto, jossa perustajajäseniltä perityt markkerit on merkitty. Tuloste soveltuu myös populaatiosimulaattorin syötteeksi. Tulostiedosto tallennetaan haluttuun hakemistoon.

18 14 Poikkeukset: Annetussa hakemistossa on jo saman niminen tiedosto. Kommentit: Mahdollisuus suorittaa ainoastaan sukupuun luonti siten, että tuloksena on haluttu määrä sukupolvia ja näiden perimät. TU7. Populaatiosimulaation keskeyttäminen Kuvaus: Tutkija keskeyttää simulaation, esimerkiksi huomatessaan virheen antamissaan syöttötiedoissa. Toiminto pysäyttää turhaan tehtävän työn. Syöte: Keskeytyspyyntö. Tulos: Käynnissä ollut operaatio välitulokssineen häviää. Mikäli koko prosessia sukupuun luominen mukaanlukien iteroidaan, säilytetään saadut tulokset. Tällöin myös iteraatiota on mahdollista jatkaa keskeytetyn operaation alusta eteenpäin. Poikkeukset: - Kommentit: Järjestelmän ylläpitäjän käyttötapaukset Tässä luvussa käsitellään järjestelmän ylläpitoon liittyviä käyttötapauksia. Käyttötapaukset on esitetty graafisesti kuvassa 3. YL1. Asiakasohjelman konfigurointi Kuvaus: Ylläpitäjä konfiguroi asiakasohjelman käyttökuntoon. Syöte: Palvelimien IP-osoitteet ja portit. Tulos: Asiakasohjelmalla voidaan ottaa yhteys järjestelmään. Poikkeukset: - Kommentit: - YL2. Palvelimen käyttöoikeuksien hallinta Kuvaus: Ylläpitäjä konfiguroi palvelimeen tiedot asiakkaista, joilla on pääsy palveluun. Syöte: Asiakasohjelmien IP-osoitteet ja portit. Tulos: Asiakasohjelmalla, jonka tiedot on konfiguroitu, voidaan ottaa yhteyttä palvelimeen. Poikkeukset: - Kommentit: -

19 15 YL3. Järjestelmän asentaminen Kuvaus: Ylläpitäjä asentaa järjestelmän käyttöympäristöön. Syöte: Toteutettu järjestelmä sekä palvelimen asetukset. Tulos: Populaatiosimulaattoria voidaan ajaa paikallisesti koneelta, johon paketti asennettiin, tai käynnistää palvelin etäajoa varten. Poikkeukset: - Kommentit: - YL4. Palvelimen käynnistäminen Kuvaus: Ylläpitäjä käynnistää järjestelmän tarvitseman palvelimen. Syöte: Palvelinohjelma käynnistetään komentoriviltä. Tulos: Asiakasohjelma voi lähettää palvelupyyntöjä käynnistettyyn palvelimeen. Poikkeukset: Mikäli hakemistosta, josta palvelinta yritetään ajaa, on jo käynnistetty palvelin, palautetaan tapahtuneesta virheilmoitus eikä uutta palvelinta käynnistetä. Kommentit: Käynnistyessään palvelin tallentaa PID-numeronsa tiedostoon populous.pid. Uutta palvelinta ei voida käynnistää samasta hakemistosta mikäli kyseinen tiedosto on olemassa. Mikäli palvelin on kaatunut, tiedosto voidaan poistaa. YL5. Palvelimen sammuttaminen Kuvaus: Ylläpitäjä sammuttaa palvelimen. Syöte: Palvelinohjelma ajetaan komentoriviltä parametrilla shutdown tai palvelinprosessille annetaan INT- tai TERM-signaali. Tulos: - Poikkeukset: Mahdollisesti käynnissä oleva ajo keskeytetään ja jonossa olleet palvelupyynnöt poistetaan. Palvelupyynnöt lähettäneille asiakkasohjelmille ilmoitetaan keskeytyksestä. Kommentit: Palvelinohjelmaa ajamalla tehtävä sammuttaminen edellyttää, että sitä ajetaan samasta hakemistosta kuin mistä palvelin on käynnistetty ja että siellä on käynnistyksessä luotu populous.pid-tiedosto. YL6. Palvelimen uudelleenkäynnistäminen Kuvaus: Ylläpitäjä käynnistää palvelimen uudelleen.

20 Syöte: Palvelinohjelma ajetaan komentoriviltä parametrilla restart tai palvelinprosessille annetaan HUP-signaali. Tulos: Asiakasohjelma voi lähettää palvelupyyntöjä käynnistettyyn palvelimeen. Mahdolliset käynnissä olleet ajot on keskeytetty. Poikkeukset: Palvelin käynnistetään mikäli se ei ole valmiiksi käynnissä. Kommentit: Palvelinohjelmaa ajamalla tehtävä uudelleenkäynnistäminen edellyttää, että sitä ajetaan samasta hakemistosta kuin mistä palvelin on käynnistetty ja että siellä on käynnistyksessä luotu populous.pid-tiedosto Vaatimukset Tässä luvussa kuvataan toteutettavaan järjestelmään ja sen komponentteihin kahdistuvat vaatimukset, jotka perustuvat asiakkaan esittämään aineistoon, käyttötapauksiin tai järjestelmän aiempiin suunnitteluratkaisuihin. Vaatimukset on kategorioitu toiminnallisiin (T1-T14), laadullisiin (L1-L8) ja rajoittaviin (R1-R5) ja ne on luetteloitu taulukossa 4. Vaatimuksiin on sovellettu seuraavaa prioriteettiasteikkoa: 1. Välttämätön 2. Toivottu, tehdään jos on aikaa 3. Ei tärkeä Projektissa toteutetaan kaikki luokan 1 vaatimukset. Suunnittelussa otetaan huomioon myös alemman prioriteetin vaatimukset, mutta ne toteutetaan vain jos aikataulu antaa siihen mahdollisuuden. 4.1 Toiminnalliset vaatimukset Toiminnalliset vaatimukset määrittävät, mitä palveluja ohjelmiston on tarjottava ja miten se reagoi syötteisiin. Toiminnalliset vaatimukset kuvaavat ne toiminnot, joita ohjelmiston avulla pitää pystyä suorittamaan. Vaatimuksen prioriteettiluokka on annettu suluissa kuvauksen jälkeen. Populaatiosimulaattorille asetetut toiminnalliset vaatimukset ovat seuraavat: T1. Simulaatioprosessin yhtenäistäminen: Genped ja chrom on yhdistettävä yhdeksi uudeksi komponentiksi, jotta simulointiprosessi yksinkertaistuisi.(1)

21 17 Tunnus Nimi Esittäjä Luokka T1 Simulaatioprosessin yhtenäistäminen asiakas 1 T2 Esiprosessoinnin poisto asiakas 1 T3 Komentorivikäyttöliittymä asiakas 1 T4 Graafinen käyttöliittymä asiakas 1 T5 Toteutus englanninkielinen asiakas 1 T6 Asiakasohjelman käyttöliittymä asiakas 2 T7 Alipopulaatiot asiakas 1 T8 Sukupuun tulostus asiakas 1 T9 Sukupuun uudelleenkäyttö asiakas 1 T10 Tuloste syötteeksi asiakas 2 T11 Vaihtoehtoinen sukupuun tulostus asiakas 3 T12 Rinnakkaistaminen asiakas 2 T13 Siirtolaiset asiakas 3 T14 Asennuspaketti asiakas 2 L1 Suorituskyky asiakas 1 L2 Virheettömyys ryhmä 1 L3 Käytettävyys asiakas 1 L4 Vakaus ryhmä 1 L5 Turvallisuus ryhmä 1 L6 Dokumentointi ryhmä 1 L7 Unix-yhteensopivuus ryhmä 2 L8 Muistitilan käyttö ryhmä 2 R1 Linux-ympäristö asiakas 1 R2 Markertool formaatti asiakas 1 R3 Ennalleen jäävät osat asiakas 1 R4 Rinnakkaistaminen tausta-ajona asiakas 2 R5 Kohtuullinen verkon käyttö ryhmä 2 R5 Laitteistojen erilaisuus ryhmä 2 Taulukko 6: Vaatimukset.

22 T2. Esiprosessoinnin poisto: Nykyisessä toteutuksessa olevasta esiprosessoinnista halutaan päästä eroon.(1) T3. Komentorivikäyttöliittymä: Uutta komponenttia, sekä kahta säilytettävää on pystyttävä ajamaan myös erillisinä komentoriviltä.(1) T4. Graafinen käyttöliittymä: Ohjelmistoon on tuotettava nykyistä komentorivipohjaista intuitiivisempi käyttöliittymä.(1) T5. Toteutus englanninkielinen: Järjestelmän toteutus, varsinkin käyttöliittymien, tulee olla englanninkielisiä ulkolaisia tutkijoita varten.(2) T6. Asiakasohjelman käyttöliittymä: Ohjelmiston asiakasohjelmaan toteutetaan graafinen käyttöliittymä.(2) T7. Alipopulaatiot: Järjestelmässä on oltava mahdollisuus määritellä alkupopulaatiosta mielivaltaisen kokoisia alipopulaatioita. Jokaisesta sukupolvesta jälkeläiset muuttavat toiseen alipopulaatioon annetulla todennäköisyydellä. Alipopulaatioiden sisällä jäsenet pariutuvat kuten normaalissa isossa populaatiossa.(1) T8. Sukupuu tulostus: Simulaatiossa käytetty sukupuu on voitava tulostaa.(1) T9. Sukupuun uudelleenkäyttö: Koska jotkut simulaatiot voivat olla todella suurikokoisia, ohjelman on annettava mahdollisuus käyttää kerran luotua sukupuuta useampaan simulointiin. Rinnakkaistamisessa mielletään yhteen sukupuuhun liittyvä käsittely iteraatioineen atomiseksi operaatioksi.(1) T10. Tuloste syötteeksi: Otosta ohjelman tuottaman sukupuun viimeisestä sukupolvesta on voitava käyttää uuden ohjelma-ajon perustajapopulaationa. (2) T11. Vaihtoehtoinen sukupuun tulostus: Ohjelmalle on kehitettävä vaihtoehtoinen, intuitiivisempi sukupuun tulostusformaatti.(3) T12. Rinnakkaistaminen: Ohjelman nopeuttamiseksi sitä on voitava ajaa rinnakkain useassa laitteistossa.(2) T13. Siirtolaiset: Populaation ulkopuolelta tulevia yksilöitä, jotka tuovat uutta geeniperimää.(3) T14. Asennuspaketti: Asentamisen helpottamiseksi ohjelmalla olisi hyvä olla asennuspaketti.(2) Laadulliset vaatimukset Laadulliset vaatimukset asettavat reunaehtoja toiminnallisille vaatimuksille. Ne liittyvät seuraaviin tekijöihin: ohjelmiston nopeuteen tai suorituskykyyn, käytettävyyteen, tietoturvaan, muistin tai levytilan käyttöön. Vaatimuksen prioriteettiluokka on annettu suluissa kuvauksen jälkeen. Populaatiosimulaattorille asetetut laadulliset vaatimukset ovat seuraavat:

23 L1. Suorituskyky: Nykyinen ohjelmisto on suhteellisen hidas, koska siinä on monta erillistä osasta yhdistetty skriptin avulla. Ohjelman kokonaissuorituskyvyn on uuden järjestelmän myötä parannuttava.(1) L2. Virheettömyys: Toteutettvan järjestelmän on toimittava virheettömästi.(1) L3. Käytettävyys: Ohjelman käyttö on eri komponenttien erilaisuudesta johtuen jokseenkin monimutkaista. Toteutettavan järjestelmän tarkoituksena on helpottaa ohjelman käyttöä.(1) L4. Vakaus: Ohjelman pitää kyetä toipumaan mahdollisista virheistä siististi.(1) L5. Turvallisuus: Ohjelma ei saa vaarantaa laitoksen tietoturvaa.(1) L6. Dokumentointi: Lopputuote on dokumentoitava selkeästi, jotta järjestelmän käyttö on yksiselitteistä.(1) ja siihen mahdollisesti tehtävät muutokset on helppo toteuttaa.(1) L7. Unix-yhteensopivuus: Ohjelmisto toteutetaan C++ ISO standardin mukaisesti, jolla varmistetaan ohjelman käännettävyys Unix-alustoilla.(2) L8. Muistitilan käyttö: Muistitilan käyttöön kiinnitetään huomiota ohjelmistoa toteutettaessa.(2) Rajoitteet suunnittelulle Suunnittelulle on asetettu seuraavanlaisia rajoitteita:(rajoitteen prioriteettiluokka on suluissa kuvauksen jälkeen.) R1. Linux-ympäristö: Ohjelman on toimittava laitoksen linux-ympäristössä.(1) R2. Markertool formaatti: Uuden ohjelmapalikan tulosteen on oltava markertoolin ymmärtämässä muodossa. Toisaalta myös markertoolin tulosteen on sovelluttava uuden ohjelman syötteeksi.(1) R3. Ennalleen jäävät osat: Simco ja markertool jäävät ennalleen, niihin ei tehdä muutoksia.(1) R4. Rinnakkaistaminen tausta-ajona: Jos rinnakkaistaminen ehditään toteuttaa, ohjelman tulee toimia muissa kuin varsinaisen käyttäjän koneessa matalaprioriteettisenä tausta-ajona.(2) R5. Kohtuullinen verkon käyttö: Jos ohjelmaa ajetaan verkon yli, verkossa liikkuvan datan määrä on pidettävä riittävän vähäisenä, jotta verkko ei mene tukkoon.(2) R6. Laitteistojen erilaisuus: Ohjelman on otettava huomioon, että joissain laitteistoissa muistin tai levytilan määrä voi olla vähäisempi ja reagoitava sellaisessa tilanteessa asianmukaisella tavalla.(2)

24 5 Toteutettava järjestelmä 20 Tässä luvussa kuvataan toteutettava järjestelmää. Järjestelmän liittyminen nykyiseen järjestelmään on esitetty kuvassa Rakenne Järjestelmän rakennetta on kuvattu kuvissa 4 ja 5. Seuraavissa aliluvuissa kuvataan tarkemmin kahta osakompomponenttia. Kuva 4: Toteutettava järjestelmä Populous-palvelinkomponentti Populous järjestelmän palvelinkomponentin tehtävänä on luoda sukupuu, lisätä siihen kromosomien rekombinaatiot ja suorittaa koko simulointiketju loppuun käyttäen alkuperäisiä simco- ja markertool-komponentteja. Se myös kokoaa tuloksena saadut tiedostot haluttuun hakemistoon. Palvelin ohjelmoidaan C++:lla.

25 21 Kuva 5: Populaatiosimulaattorin kokonaiskuva. Syötteet: Perustajasukupolven koko (kromosomeina) Viimeisen jälkeläissukupolven koko (kromosomeina) Sukupolvien lukumäärä Simulaation toistojen lukumäärä Alipopulaatioiden määrä Alipopulaatioiden koot Siirtymistodennäköisyydet alipopulaatioiden välillä Halutaanko pelkkä sukupuun muodostaminen

26 22 Tulosteet: Sukupolvet, joiden yhteiset kromosomin osat halutaan määrittää Hakemistopolku lopputulosten tallentamiseen Tiedostonimi parametrien tallennusta varten Chromin, simcon ja markertoolin parametrit kuten luvussa kaksi on kerrottu, seuraavilla rajoituksilla: 1. Päällekkäiset asetukset syötetään vain kerran ja käytetään samaa asetusta kaikissa sitä käyttävissä ohjelmakomponenteissa 2. Markkerialueen alku- ja loppukohta jätetään pois (markertool) 3. Trioja käytettäessä vanhempien sukupolvi ja sen koko haetaan automaattisesti (markertool) Sukupuu rekombinaatioineen markertoolin ymmärtämässä muodossa sukupuu uudessa formaatissa simcon ja markertoolin tulosteet Syöttö ja tulostustietojen rakenne: Id Alkupiste Pid Taulukko 7: Populouksen tulosteformaatti markertoolille Taulukon 7 selitys: Id: Yksilön tunnus Alkupiste: Seuraavan kromosomin osan alkupiste(emäsparin indeksi) Pid: Id perustajalle, jolta kromosomin osa on peräisin Id Isän id Äidin id Taulukon 8 selitys: Id: Yksilön tunnus Isän id: Yksilön isän tunnus Äidin id: Yksilön äidin tunnus Taulukko 8: Populouksen sukupuuformaatti

27 Populous-asiakaskomponentti Populous-asiakaskomponentin tehtävä on ohjata ohjelman rinnakkaista suoritusta ja koota ajojen tulokset eri koneilta haluttuun paikkaan. Asiakaskomponentti ohjelmoidaan Javalla. Syötteet: Tulosteet: Samat kuin palvelinkomponentilla Käytettävien laitteistojen IP-osoitteet. Näyttää käyttäjälle tietoa prosessien statuksesta ja tuloksesta. 5.2 Käyttöliittymä Kaikkiaan toteutetaan kolme erilaista käyttöliittymää. Palvelimeen tulee curses-pohjainen tekstikäyttöliittymä, Javalla toteutettavaan asiakasohjelmaan tulee graafinen Swing -käyttöliittymä ja näiden lisäksi palvelimeen sisällytetään mahdollisuus komentorivikäynnistykseen. Komentorivikäyttöliittymällä voidaan käyttää ohjelmiston palvelin- komponenttia suoraan komentoriviltä. Tällöin riittää yksi komento, joka ajaa koko simulaation läpi. Nykyisen järjestelmän tarvitsemia skriptejä ei tule tarvitsemaan. Ohjelmiston parametrit syötetään joko määrittelämällä ohjelman parametriksi syötetiedosto tai antamalla parametrit käsin. Asiakasohjelman tarkoituksena on ohjata ja hallita yhdessä tai useammassa palvelimessa ajettavia simulaatioita ja koota tulokset asiakasohjelman koneelle. Asiakasohjelma toteutetaan Javalla (alustariippumattomuus) Swing-käyttöliittymällä. Asiakasohjelmassa on kentät käytössä olevien palvelinten verkko-osoitteiden syöttämiseen. Käytettävät palvelimet valitaan graafisesti listasta, ja jokaiselle palvelimelle voidaan määritellä erikseen sille annettava simulaatioprosessi. Palvelimille välitetyt simulaation parametrit syötetään intuitiivisin valinta-, lista- ja vetovalikko-komponentein. Palvelinten simulaatioiden tilasta näytetään tietoa, sekä myös simulaatioiden valmistumisesta. Palvelimeen toteutetaan komentorivikäyttöliittymän lisäksi tekstipohjainen curses käyttöliittymä, joka pohjautuu teksti-kenttiin ja valintalistoihin. Curses-versio käyttöliittymästä mukailee asiakasohjelman käyttöliittymää, mutta ilman rinnakkaistamista. Käyttöliittymät kuvataan tarkemmin myöhemmin tehtävässä suunnitteludokumentissa. 5.3 Ulkoiset liittymät Toteutettavan sovelluksen tulostus toimii syötteenä nykyisen järjestelmän sovellukselle markertool. Uudessa järjestelmässä on myös voitava asettaa alkuarvot aikaisemman ajon tuloksesta, eli sovelluksen on ymmärrettävä myös markertool-sovelluksen tulostusmuoto.

28 6 Rajoitteet suunnittelulle ja toteutukselle 24 Toteutettavan ohjelman on toimittava tietojenkäsittelytieteen laitoksen linux-ympäristössä. Järjestelmä suunnitellaan nimenomaan tietojenkäsittelytieteen laitoksella toimivan HIIT -perustutkimusyksikön käyttöön, joten se suunnitellaan toimimaan laitoksen käyttöympäristössä. Uuden populous -komponentin tulosteen on oltava markertoolin ymmärtämässä muodossa, jotta näitä voidaan käyttää yhdessä. Toisaalta myös markertoolin tulosteen on sovelluttava uuden ohjelman syötteeksi. Tällä mahdollistetaan simulaation jatkaminen ottamalla tuloksesta uusi otos seuraavan ajon perustajajäseniksi. Simco ja markertool jäävät ennalleen, niihin ei tehdä muutoksia. Tarkoituksena on toteuttaa mahdollisimman yhtenäinen järjestelmä, jonka osana on uusi populous -ohjelma ja nykyisin käytössä olevasta järjestelmästä osat simco ja markertool, jotka on esitelty tämän dokumentin luvuissa (simco) ja (markertool). 7 Vaatimusten toteutuminen Luvussa käsitellään lyhyesti asiakkaan vaatimusten toteutuminen ohjelmistossa. 7.1 Validointi Vaatimukset on kartoitettu asiakastapaamisissa ja asiakkaan tuottaman aineiston pohjalta ja lueteltu tässä dokumentissa. Dokumentissa on kerrottu myös miten vaatimuksiin on tarkoitus vastata. Kartoituksen kattavuus varmistetaan hyväksyttämällä tämä määrittelydokumentti asiakkaalla. Vaatimusten toteutumista valmiissa ohjelmistossa valvotaan testausvaiheessa. 7.2 Testaus Ohjelmiston testaus jakaantuu kolmeen osaan: yksikkö-, integraatio- ja järjestelmätestaukseen. Yksikkötestaus aloitetaan toteutusvaiheessa, muut osiot suoritetaan toteutusvaiheen lopuksi ja sen jälkeen. Yksikkötestauksessa testataan yksittäiset komponentit niiden valmistumisen yhteydessä. Integraatiotestauksessa testataan yksikkötestattuja osien ja osajärjestelmien yhteentoimivuutta sekä rajapintoja. Järjestelmätestaus suoritetaan valmiilla ohjelmistolla, jonka kokonaistoiminta varmennetaan testi- ja käyttötapauksin. Testausproseduuri etenee alhaalta ylös rakentaen järjestelmää testatuiden osien ja alikokonaisuuksien päälle. Testaus määritellään yksityiskohtaisesti testaussuunnitelmassa.

29 Ylläpito Projektiryhmä ei vastaa työn luovutuksen ja asennuksen jälkeisestä ohjelmiston ylläpidosta. Järjestelmän mahdolliset tulevat ominaisuudet jäävät tulevien projektien huoleksi.

Populaatiosimulaattori. Petteri Hintsanen HIIT perustutkimusyksikkö Helsingin yliopisto

Populaatiosimulaattori. Petteri Hintsanen HIIT perustutkimusyksikkö Helsingin yliopisto Populaatiosimulaattori Petteri Hintsanen HIIT perustutkimusyksikkö Helsingin yliopisto Kromosomit Ihmisen perimä (genomi) on jakaantunut 23 kromosomipariin Jokaisen parin toinen kromosomi on peritty isältä

Lisätiedot

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

Projektisuunnitelma. Populous. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Projektisuunnitelma Populous Helsinki 9.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Heli Borg Markus

Lisätiedot

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

Testaussuunnitelma. Populous. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma Populous Helsinki 10.11.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti ( ov) Projektiryhmä Heli Borg Markus

Lisätiedot

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

Testausdokumentti. Populous. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testausdokumentti Populous Helsinki 10.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Heli Borg Markus

Lisätiedot

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

Loppuraportti. Populous. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Loppuraportti Populous Helsinki 10.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Heli Borg Markus

Lisätiedot

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

Käyttöohje. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Käyttöohje Boa Open Access Helsinki 5.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Ilmari Heikkinen

Lisätiedot

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

Ylläpitodokumentti. Boa Open Access. Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Ylläpitodokumentti Boa Open Access Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Ilmari

Lisätiedot

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie Ylläpitodokumentti Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie Helsinki 16.7.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti

Lisätiedot

UCOT-Sovellusprojekti. Testausraportti

UCOT-Sovellusprojekti. Testausraportti UCOT-Sovellusprojekti Testausraportti Ilari Liukko Tuomo Pieniluoma Vesa Pikki Panu Suominen Versio: 0.02 Julkinen 11. lokakuuta 2006 Jyväskylän yliopisto Tietotekniikan laitos Jyväskylä Hyväksyjä Päivämäärä

Lisätiedot

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

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testausdokumentti Kivireki Helsinki 17.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Anu Kontio Ilmari

Lisätiedot

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

Subversion-ohje. Linux Traffic Control-käyttöliittymä Ryhmä paketti2 Subversion-ohje Linux Traffic Control-käyttöliittymä Ryhmä paketti2 Helsinki 1.11.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti

Lisätiedot

Testausdokumentti. Sivu: 1 / 10. Ohjelmistotuotantoprojekti Sheeple Helsingin yliopisto. Versiohistoria

Testausdokumentti. Sivu: 1 / 10. Ohjelmistotuotantoprojekti Sheeple Helsingin yliopisto. Versiohistoria Sivu: 1 / 10 Testausdokumentti Ohjelmistotuotantoprojekti Sheeple Helsingin yliopisto Versiohistoria Versio Päivitykset 0.4 Lisätty mod_form.php -tiedostoon liittyvät testit 0.5 Lisätty johdanto 1.0 Dokumentti

Lisätiedot

Testaussuunnitelma. PUSU-ryhmä. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma. PUSU-ryhmä. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma PUSU-ryhmä Helsinki 13.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Jussi Hynninen

Lisätiedot

Ylläpitodokumentti Mooan

Ylläpitodokumentti Mooan Ylläpitodokumentti Mooan Helsinki 16.08.06 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9+1op/6ov) Projektiryhmä Heikki Aitakangas

Lisätiedot

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

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testausraportti Orava Helsinki 5.5.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Juhani Bergström Peter

Lisätiedot

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

Määrittelydokumentti NJC2. Helsinki 11.2.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Määrittelydokumentti NJC2 Helsinki 11.2.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti ( ov) Projektiryhmä Eero Anttila Olli

Lisätiedot

Convergence of messaging

Convergence of messaging Convergence of messaging Testaussuunnitelma The Converge Group: Mikko Hiipakka Anssi Johansson Joni Karppinen Olli Pettay Timo Ranta-Ojala Tea Silander Helsinki 20. joulukuuta 2002 HELSINGIN YLIOPISTO

Lisätiedot

Suunnitteludokumentti

Suunnitteludokumentti Suunnitteludokumentti Populous Helsinki 10.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Heli Borg

Lisätiedot

T Testiraportti - järjestelmätestaus

T Testiraportti - järjestelmätestaus T-76.115 Testiraportti - järjestelmätestaus 18. huhtikuuta 2002 Confuse 1 Tila Versio: 1.0 Tila: Päivitetty Jakelu: Julkinen Luotu: 18.04.2002 Jani Myyry Muutettu viimeksi: 18.04.2002 Jani Myyry Versiohistoria

Lisätiedot

TOIMINNALLINEN MÄÄRITTELY MS

TOIMINNALLINEN MÄÄRITTELY MS TOIMINNALLINEN MÄÄRITTELY 11.11.2015 MS YLEISTÄ 1/2 jäsennelty etenee yleiskuvauksesta yksityiskohtiin kieliasultaan selkeä kuvaa myös tulevan järjestelmän ympäristöä tarpeellisella tarkkuudella kuvaa

Lisätiedot

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

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma Koskelo Helsinki 16.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Tom Bertell Johan

Lisätiedot

Testausraportti v.1.3

Testausraportti v.1.3 Testausraportti v.1.3 HeTLi Helsinki 24.8.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 2/7 Kurssi Projektiryhmä Asiakas Johtoryhmä Kotisivu 581260 Ohjelmistotuotantoprojekti

Lisätiedot

Teknillinen korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö. Testitapaukset - Koordinaattieditori

Teknillinen korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö. Testitapaukset - Koordinaattieditori Testitapaukset - Koordinaattieditori Sisällysluettelo 1. Johdanto...3 2. Testattava järjestelmä...4 3. Toiminnallisuuden testitapaukset...5 3.1 Uuden projektin avaaminen...5 3.2 vaa olemassaoleva projekti...6

Lisätiedot

MPCC-työkalua voidaan käyttää yhden laitteen valvontaan ja yhden tai useamman laitteen konfigurointiin (Modbus broadcast, osoite 0).

MPCC-työkalua voidaan käyttää yhden laitteen valvontaan ja yhden tai useamman laitteen konfigurointiin (Modbus broadcast, osoite 0). V1.0.0 (14.10.2015) 1 (7) KYTKENTÄ HUOM: toimii Modbus-masterina. Tämän vuoksi toinen mahdollinen Modbus-master on irrotettava verkosta, kun kytketään valmiiseen Modbus-verkkoon. Produalin Modbus-laitteiden

Lisätiedot

Valppaan asennus- ja käyttöohje

Valppaan asennus- ja käyttöohje Versio Päiväys Muokkaaja Kuvaus 0.9 16.2.2006 Tuukka Laakso Korjattu versio 0.1 Antti Kettunen Alustava versio Sisällysluettelo 1 Johdanto...2 2 Valppaan asennus...3 2.1 Valppaan kääntäminen...3 2.2 Valmiiksi

Lisätiedot

TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos. Harjoitustyö 4: Cache, osa 2

TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos. Harjoitustyö 4: Cache, osa 2 TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos TKT-3200 Tietokonetekniikka I Harjoitustyö 4: Cache, osa 2.. 2010 Ryhmä Nimi Op.num. 1 Valmistautuminen Cache-työn toisessa osassa

Lisätiedot

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

Testaussuunnitelma. Ohjelmistotuotantoprojekti Nero. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma Ohjelmistotuotantoprojekti Nero Helsinki 5.11.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti ( ov) Projektiryhmä

Lisätiedot

Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla

Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla Viimeksi muokattu 5. toukokuuta 2012 Maastotietokannan torrent-jakeluun sisältyy yli 5000 zip-arkistoa,

Lisätiedot

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

Projektisuunnitelma. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Projektisuunnitelma KotKot Helsinki 22.9.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 + 1 op) Projektiryhmä Tuomas Puikkonen

Lisätiedot

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

CVS. Kätevä väline usein päivitettävien tiedostojen, kuten lähdekoodin, hallitsemiseen CVS Versionhallintajärjestelmä Kätevä väline usein päivitettävien tiedostojen, kuten lähdekoodin, hallitsemiseen Käytetään komentoriviltä, myös graafisia käyttöliittymiä saatavilla CVS Kaikki tiedostot

Lisätiedot

S Laskennallinen systeemibiologia

S Laskennallinen systeemibiologia S-114.2510 Laskennallinen systeemibiologia 3. Harjoitus 1. Koska tilanne on Hardy-Weinbergin tasapainossa luonnonvalintaa lukuunottamatta, saadaan alleeleista muodostuvien eri tsygoottien genotyyppifrekvenssit

Lisätiedot

KServer Etäohjaus Spesifikaatio asiakaspuolen toteutuksille

KServer Etäohjaus Spesifikaatio asiakaspuolen toteutuksille KServer Etäohjaus 1 (5) KServer Etäohjaus Spesifikaatio asiakaspuolen toteutuksille Palvelimen toteutuksen ollessa versio 1.0, spesifikaation versio 1.0.0. 2009, Riku Eskelinen/ KServer Software Development

Lisätiedot

Lohtu-projekti. Testaussuunnitelma

Lohtu-projekti. Testaussuunnitelma Lohtu-projekti Testaussuunnitelma Versiohistoria: 1.0 19.2.2003 1. versio Mari 1.1 20.2.2003 Muutoksia Mari 1.2 25.2.2003 Katselmoinnissa esiin tulleet Mari muutokset 1.3 17.3.2003 2. syklissä tehtävät

Lisätiedot

Autentikoivan lähtevän postin palvelimen asetukset

Autentikoivan lähtevän postin palvelimen asetukset Autentikoivan lähtevän postin palvelimen asetukset - Avaa Työkalut valikko ja valitse Tilien asetukset - Valitse vasemman reunan lokerosta Lähtevän postin palvelin (SM - Valitse listasta palvelin, jonka

Lisätiedot

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta T-76.115 Tietojenkäsittelyopin ohjelmatyö Sisältö Tämä on dokumentti esittelee tietokonegrafiikkaalgoritmien visualisointijärjestelmän kehitysprojektissa käytettävän vaatimustenhallintamenetelmän. Päivämäärä

Lisätiedot

Vaatimusmäärittely Ohjelma-ajanvälitys komponentti

Vaatimusmäärittely Ohjelma-ajanvälitys komponentti Teknillinen korkeakoulu 51 Vaatimusmäärittely Ohjelma-ajanvälitys komponentti Versio Päiväys Tekijä Kuvaus 0.1 21.11.01 Oskari Pirttikoski Ensimmäinen versio 0.2 27.11.01 Oskari Pirttikoski Lisätty termit

Lisätiedot

Keskustelusivusto. Suunnitteludokumentti

Keskustelusivusto. Suunnitteludokumentti Keskustelusivusto Suunnitteludokumentti Tietokantasovellus, Syksy 2007, Ryhmä 1 Tuomas Puikkonen tpuikkon@cs.helsinki.fi Tietojenkäsittelytieteen laitos Helsingin Yliopisto Sisältö Keskustelusivusto...1

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2011 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2011 1 / 39 Kertausta: tiedoston avaaminen Kun ohjelma haluaa lukea tai kirjoittaa tekstitiedostoon, on ohjelmalle

Lisätiedot

EMVHost Online SUBJECT: EMVHOST ONLINE CLIENT - AUTOMAATTISIIRROT COMPANY: EMVHost Online Client sovelluksen käyttöohje AUTHOR: DATE: 15.03.

EMVHost Online SUBJECT: EMVHOST ONLINE CLIENT - AUTOMAATTISIIRROT COMPANY: EMVHost Online Client sovelluksen käyttöohje AUTHOR: DATE: 15.03. EMVHost Online SUBJECT: COMPANY: COMMENTS: AUTHOR: EMVHOST ONLINE CLIENT - AUTOMAATTISIIRROT NETS OY EMVHost Online Client sovelluksen käyttöohje NETS OY DATE: 15.03.2011 VERSION: 1.0 1 SISÄLLYS SISÄLLYS...

Lisätiedot

T Testiraportti - integraatiotestaus

T Testiraportti - integraatiotestaus T-76.115 Testiraportti - integraatiotestaus 16. huhtikuuta 2002 Confuse 1 Tila Versio: 1.1 Tila: Päivitetty Jakelu: Julkinen Luotu: 19.03.2002 Jani Myyry Muutettu viimeksi: 16.04.2002 Jani Myyry Versiohistoria

Lisätiedot

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

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14 Arkkitehtuurikuvaus Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy Ryhmä 14 Muutoshistoria Versio Pvm Päivittäjä Muutos 0.4 1.11.2007 Matti Eerola 0.3 18.10.2007 Matti Eerola 0.2

Lisätiedot

L models. Käyttöohje. Ryhmä Rajoitteiset

L models. Käyttöohje. Ryhmä Rajoitteiset Teknillinen korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö Lineaaristen rajoitteiden tyydyttämistehtävän ratkaisija L models Käyttöohje Ryhmä Rajoitteiset Versio Päivämäärä Tekijä Muutokset 0.1

Lisätiedot

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

Ohjelmisto on selainpohjaisen käyttöliittymän tarjoava tietokantajärjestelmä merikotkien seurantaan WWF:n Merikotka-työryhmän tarpeisiin. TIETOKANTA MERIKOTKIEN SEURANTAAN Käyttöohje Versiohistoria: Versio Päivämäärä Kuvaus Tekijä 1.0 11.12.2007 Ensimmäinen luonnos Janne Piippo 2.0 13.12.2007 Virallinen verio Janne Piippo HELSINGIN YLIOPISTO

Lisätiedot

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

Asennusohje. Sahara-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Asennusohje Sahara-ryhmä Helsinki 24.8.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Sanna Keskioja Sampo

Lisätiedot

CLOUDBACKUP TSM varmistusohjelmiston asennus

CLOUDBACKUP TSM varmistusohjelmiston asennus Luottamuksellinen JAVERDEL OY CLOUDBACKUP TSM varmistusohjelmiston asennus Copyright 2 (9) SISÄLLYSLUETTELO 1 ASENNUSOHJE WINDOWS KÄYTTÖJÄRJESTELMÄLLÄ VARUSTETTUIHIN LAITTEISIIN... 3 1.1 Yleistä... 3 1.2

Lisätiedot

Simulaattorin asennus- ja käyttöohje

Simulaattorin asennus- ja käyttöohje Linux ja Windows XP Versio Päiväys Muokkaaja Kuvaus 0.2 16.2.2006 Mikko Halttunen Katselmoinin jälkeen 0.1 13.2.2006 Mikko Halttunen Alustava versio Sisällysluettelo 1 Johdanto... 3 2 Simulaattorin asennus...

Lisätiedot

Harjoitustehtävät ja ratkaisut viikolle 48

Harjoitustehtävät ja ratkaisut viikolle 48 Harjoitustehtävät ja ratkaisut viikolle 48 1. Tehtävä on jatkoa aiemmalle tehtävälle viikolta 42, missä piti suunnitella älykodin arkkitehtuuri käyttäen vain ennalta annettua joukkoa ratkaisuja. Tämäkin

Lisätiedot

Asko Ikävalko, k0201291 22.2.2004 TP02S-D. Ohjelmointi (C-kieli) Projektityö. Työn valvoja: Olli Hämäläinen

Asko Ikävalko, k0201291 22.2.2004 TP02S-D. Ohjelmointi (C-kieli) Projektityö. Työn valvoja: Olli Hämäläinen Asko Ikävalko, k0201291 22.2.2004 TP02S-D Ohjelmointi (C-kieli) Projektityö Työn valvoja: Olli Hämäläinen Asko Ikävalko LOPPURAPORTTI 1(11) Ratkaisun kuvaus Käytetyt tiedostot Tietuerakenteet Onnistuin

Lisätiedot

Harjoitustyö 3 - Millosemeni

Harjoitustyö 3 - Millosemeni Harjoitustyö 3 - Millosemeni Tampereen kaupunki tarjoaa avoin data -sivuillaan Tampereen joukkoliikenteen aikataulut, reitit sekä rajapinnan joukkoliikenteen reaaliaikaiseen seurantaan. Näinpä erilaisille

Lisätiedot

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

Verkkopokerijärjestelmä. Loppuraportti Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008 Verkkopokerijärjestelmä Loppuraportti Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008 Projektiryhmä Samuli Aalto-Setälä Jukka Kekälainen Jarno Kyykkä Mika Mielonen Mårten Smeds Otto Waltari Ohjaaja

Lisätiedot

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

Testaussuunnitelma. Asdf. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma Asdf Helsinki 22.2.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Kuisma Sami Louhio

Lisätiedot

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

Uutisjärjestelmä. Vaatimusmäärittely. Web-palvelujen kehittäminen. Versio 1.3 Uutisjärjestelmä Vaatimusmäärittely Versio 1.3 Sisällys 1 Muutoshistoria... 4 2 Viitteet... 4 3 Sanasto... 4 3.1 Lyhenteet... 4 3.2 Määritelmät... 4 4 Johdanto...5 4.1 Järjestelmän yleiskuvaus... 5 4.2

Lisätiedot

Käyttöohje. Versiohistoria: 1.0 7.5.2003 1. versio Mari 1.1 9.5.2003 Kommenttien perusteella korjattu versio

Käyttöohje. Versiohistoria: 1.0 7.5.2003 1. versio Mari 1.1 9.5.2003 Kommenttien perusteella korjattu versio Otus- projektinhallintatyökalu Käyttöohje Versiohistoria: 1.0 7.5.2003 1. versio Mari 1.1 9.5.2003 Kommenttien perusteella korjattu versio Mari Tampere 9. toukokuuta 2003 Kimmo Airamaa, Andreas Asuja,

Lisätiedot

Sukupuu -ohjelma. Ossi Väre (013759021) Joni Virtanen (013760641)

Sukupuu -ohjelma. Ossi Väre (013759021) Joni Virtanen (013760641) Sukupuu -ohjelma Ossi Väre (013759021) Joni Virtanen (013760641) 7.11.2011 1 Johdanto Toteutimme C -kielellä sukupuuohjelman, johon käyttäjä voi lisätä ja poistaa henkilöitä ja määrittää henkilöiden välisiä

Lisätiedot

Henkilö- ja koulutusrekisterin asennusohje

Henkilö- ja koulutusrekisterin asennusohje Henkilö- ja koulutusrekisterin asennusohje Ohjelmaversio 1.0 Dokumenttiversio 1.0 2 Ohjelman lataaminen Voit ladata henkilöstö- ja koulutusrekisteriohjelman asennuspaketin EduSetup.exe sivustolta valitsemalla

Lisätiedot

T-76.115 Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

T-76.115 Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta T-76.115 Tietojenkäsittelyopin ohjelmatyö Sisältö Tämä on dokumentti esittelee tietokonegrafiikkaalgoritmien visualisointijärjestelmän kehitysprojektissa käytettävän vaatimustenhallintamenetelmän. Päivämäärä

Lisätiedot

Enigmail-opas. Asennus. Avainten hallinta. Avainparin luominen

Enigmail-opas. Asennus. Avainten hallinta. Avainparin luominen Enigmail-opas Enigmail on Mozilla Thunderbird ja Mozilla Seamonkey -ohjelmille tehty liitännäinen GPG-salausohjelmiston käyttöä varten. Sitä käytetään etenkin Thunderbirdin kanssa sähköpostin salaamiseen

Lisätiedot

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Tekninen määrittely: Editori Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Sisällysluettelo 1. Johdanto...4 1.1. Tarkoitus ja kattavuus...4 1.2. Tuote ja ympäristö...4 1.3. Määritelmät,

Lisätiedot

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Vaatimusmäärittely Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Versio Päiväys Tekijä Kuvaus 0.1 12.10.01 Pekka Koskinen Ensimmäinen luonnos 0.2 17.10.01 Pekka Koskinen Lisätty vaatimuksia

Lisätiedot

Integroidun maksupäätteen lisääminen käyttöönotossa

Integroidun maksupäätteen lisääminen käyttöönotossa Integroidun maksupäätteen lisääminen käyttöönotossa Elisa tarjoaa maksupäätteiksi Netsin Ingenico ipp350 tai iwl250 Ethernet yhteydellä ja iwl250 mallia Bluetooth yhteydellä. Jotta maksupääte toimii Elisa

Lisätiedot

NAVITA BUDJETTIJÄRJESTELMÄN ENSIASENNUS PALVELIMELLE

NAVITA BUDJETTIJÄRJESTELMÄN ENSIASENNUS PALVELIMELLE NAVITA BUDJETTIJÄRJESTELMÄN ENSIASENNUS PALVELIMELLE Ennen palvelinohjelman asennusta perustetaan tarvittavat kansiot. Oikeustasoista share- tai security-tason oikeudet riittävät; molempien oikeustasojen

Lisätiedot

Korkeakoulujen prosessipalvelin: mallintajan palvelinohje Versio 0.2

Korkeakoulujen prosessipalvelin: mallintajan palvelinohje Versio 0.2 Korkeakoulujen prosessipalvelin: mallintajan palvelinohje Versio 0.2 Sisällysluettelo Muutoshistoria...3 1 Johdanto...4 2 Palvelimen käyttöön tarvittavat ohjelmat...4 3 Palvelimelle kirjautuminen...4 4

Lisätiedot

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta T-76.115 Tietojenkäsittelyopin ohjelmatyö Sisältö Tämä on dokumentti esittelee tietokonegrafiikkaalgoritmien visualisointijärjestelmän kehitysprojektissa käytettävän vaatimustenhallintamenetelmän. Päivämäärä

Lisätiedot

Linux - käyttöoikeudet

Linux - käyttöoikeudet Linux - käyttöoikeudet Seuraavaksi läpikäydään Linuxin käyttöoikeushallintaa. Lähteinä on käytetty seuraavia: http://fi.wikibooks.org/wiki/ubuntu_tutuksi Kuutti, Rantala: Linux http://doc.ubuntu.com/ubuntu/serverguide/c/user-management.html

Lisätiedot

Arkkitehtuurien tutkimus Outi Räihä. OHJ-3200 Ohjelmistoarkkitehtuurit. Darwin-projekti. Johdanto

Arkkitehtuurien tutkimus Outi Räihä. OHJ-3200 Ohjelmistoarkkitehtuurit. Darwin-projekti. Johdanto OHJ-3200 Ohjelmistoarkkitehtuurit 1 Arkkitehtuurien tutkimus Outi Räihä 2 Darwin-projekti Darwin-projekti: Akatemian rahoitus 2009-2011 Arkkitehtuurisuunnittelu etsintäongelmana Geneettiset algoritmit

Lisätiedot

Testaussuunnitelma Labra

Testaussuunnitelma Labra Testaussuunnitelma Labra Helsinki 25.8.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 1 Kurssi 581260 Ohjelmistotuotantoprojekti (9+1op) Projektiryhmä Anssi Kapanen,

Lisätiedot

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri Testausraportti Oppimistavoitteiden hallintajärjestelmä harri Helsinki 13.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti

Lisätiedot

FAMILYTREEPAINTER. FamilyTreePainter Käyttöohje

FAMILYTREEPAINTER. FamilyTreePainter Käyttöohje FAMILYTREEPAINTER FamilyTreePainter Käyttöohje i F A M I L Y T R E E P A I N T E R FamilyTreePainter Käyttöohje Copyright 2006-2013 Timo Vaara Email: timo@vaara.org ii Table of contents 1 YLESIATÄ... 1

Lisätiedot

UCOT-Sovellusprojekti. Asennusohje

UCOT-Sovellusprojekti. Asennusohje UCOT-Sovellusprojekti Asennusohje Ilari Liukko Tuomo Pieniluoma Vesa Pikki Panu Suominen Versio: 1.00 Julkinen 15. joulukuuta 2006 Jyväskylän yliopisto Tietotekniikan laitos Jyväskylä Hyväksyjä Päivämäärä

Lisätiedot

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit Ohjelmiston testaus ja laatu Ohjelmistotekniikka elinkaarimallit Vesiputousmalli - 1 Esitutkimus Määrittely mikä on ongelma, onko valmista ratkaisua, kustannukset, reunaehdot millainen järjestelmä täyttää

Lisätiedot

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

Toteutusdokumentti. Populous. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Toteutusdokumentti Populous Helsinki 10.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Heli Borg Markus

Lisätiedot

Toinen harjoitustyö. ASCII-grafiikkaa

Toinen harjoitustyö. ASCII-grafiikkaa Toinen harjoitustyö ASCII-grafiikkaa Yleistä Tehtävä: tee Javalla ASCII-merkkeinä esitettyä grafiikkaa käsittelevä ASCIIArt-ohjelma omia operaatioita ja taulukoita käyttäen. Työ tehdään pääosin itse. Ideoita

Lisätiedot

Tikon ostolaskujen käsittely

Tikon ostolaskujen käsittely Toukokuu 2014 1 (8) Toukokuu 2014 2 (8) Sisällysluettelo 1. Käyttäjäasetukset... 3 2. Yleiset parametrit... 3 3. Kierrätysasetukset... 3 4. palvelimen tiedot... 4 5. lähetyksen aktivointi... 5 6. Eräajot

Lisätiedot

Toiminnalliset ja ei-toiminnalliset vaatimukset Tunnus (ID) Vaatimus Vaatimuksen

Toiminnalliset ja ei-toiminnalliset vaatimukset Tunnus (ID) Vaatimus Vaatimuksen Vaatimusluettelo versio 0.17 Toiminnalliset ja ei-toiminnalliset vaatimukset Tunnus (ID) Vaatimus Vaatimuksen Yleiset vaatimukset 1 Koodistopalvelujärjestelmä on selainkäyttöinen 2 Käyttöliittymän tulee

Lisätiedot

RATKI 1.0 Talousraportin käyttäjän ohje

RATKI 1.0 Talousraportin käyttäjän ohje RATKI RATKI 1.0 Talousraportin käyttäjän ohje Ohje 21.01.2008 0.1 Vastuuhenkilö Petri Ahola Sisällysluettelo 1. Yleistä... 3 1.1. Kuvaus... 3 1.2. Esitiedot... 3 1.3. RATKIn käyttöoikeuksien hankinta...

Lisätiedot

Harjoitus 6. Käytä String-luokasta vain charat- ja length-operaatioita.

Harjoitus 6. Käytä String-luokasta vain charat- ja length-operaatioita. Nämä ovat kurssin viimeiset harjoitukset. Hyväksytyistä ratkaisuista ja läsnäoloista kerättyjen pisteiden summan tulee olla vähintään 40 % ( pistettä) tehtävien ja läsnäolopisteiden kokonaislukumäärien

Lisätiedot

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

Testaussuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma PULSU Syksy 2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Heikki Manninen Noora Joensuu

Lisätiedot

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

Projektisuunnitelma. (välipalautukseen muokattu versio) Vesiprosessin sekvenssiohjelmointi ja simulointiavusteinen testaus Projektisuunnitelma (välipalautukseen muokattu versio) Vesiprosessin sekvenssiohjelmointi ja simulointiavusteinen testaus Ville Toiviainen Tomi Tuovinen Lauri af Heurlin Tavoite Projektin tarkoituksena

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 15.3.2010 T-106.1208 Ohjelmoinnin perusteet Y 15.3.2010 1 / 56 Tiedostoista: tietojen tallentaminen ohjelman suorituskertojen välillä Monissa sovelluksissa ohjelman

Lisätiedot

Febdok 6.0 paikallisversion asennus OHJEISTUS

Febdok 6.0 paikallisversion asennus OHJEISTUS Febdok 6.0 paikallisversion asennus OHJEISTUS Sisällys 1 YLEISTÄ 1 2 ASENNUKSEN VALMISTELUT 2 2.1 VARMUUSKOPIOT 2 2.2 ASENNUSTIEDOSTON LATAUS, WWW.FEBDOK.FI 2 2.3 ASENNUSTIEDOSTON LATAUS, FEBDOK:IN SISÄINEN

Lisätiedot

KÄYTTÖOHJE. Servia. S solutions

KÄYTTÖOHJE. Servia. S solutions KÄYTTÖOHJE Servia S solutions Versio 1.0 Servia S solutions Servia Finland Oy PL 1188 (Microkatu 1) 70211 KUOPIO puh. (017) 441 2780 info@servia.fi www.servia.fi 2001 2004 Servia Finland Oy. Kaikki oikeudet

Lisätiedot

Ohjelmiston toteutussuunnitelma

Ohjelmiston toteutussuunnitelma Ohjelmiston toteutussuunnitelma Ryhmän nimi: Tekijä: Toimeksiantaja: Toimeksiantajan edustaja: Muutospäivämäärä: Versio: Katselmoitu (pvm.): 1 1 Johdanto Tämä luku antaa yleiskuvan koko suunnitteludokumentista,

Lisätiedot

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Toiminnallinen määrittely: Editori Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Versio Päiväys Tekijä Kuvaus 0.01 7.11.01 Pekka Koskinen Alustava sisällysluettelo 0.1 12.11.01 Pekka

Lisätiedot

Visma Avendon asennusohje

Visma Avendon asennusohje Visma Avendon asennusohje 1 Versio 5.21 On tärkeää, että käytössäsi on aina uusin toimittamamme versio ohjelmistosta. Asentamalla viimeisimmän version saat käyttöösi ohjelman tuoreimmat ominaisuudet ja

Lisätiedot

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

Lohtu-projekti. Testiraportti. Versiohistoria: syklin toteutuksen testit. 1. ajo Virve Lohtu-projekti Testiraportti Versiohistoria: 1.0 6.5.2003 2. syklin toteutuksen testit. 1. ajo Virve Helsinki 6. toukokuuta 2003 Kimmo Airamaa, Andreas Asuja, Mari Muuronen, Seppo Pastila, Virve Taivaljärvi

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2009 1 / 28 Puhelinluettelo, koodi def lue_puhelinnumerot(): print "Anna lisattavat nimet ja numerot." print

Lisätiedot

Ohjelmistojen mallintaminen, kurssikoe esimerkkivastauksia

Ohjelmistojen mallintaminen, kurssikoe esimerkkivastauksia Ohjelmistojen mallintaminen, kurssikoe 15.12. esimerkkivastauksia Tehtävä 1 a: Ohjelmistotuotantoprosessi sisältää yleensä aina seuraavat vaiheet: määrittely, suunnittelu, toteutus, testaus ja ylläpito.

Lisätiedot

TIETOKONE JA TIETOVERKOT TYÖVÄLINEENÄ

TIETOKONE JA TIETOVERKOT TYÖVÄLINEENÄ aaro.leikari@hotmail.com TIETOKONE JA TIETOVERKOT TYÖVÄLINEENÄ 25.01.2016 SISÄLLYS 1. Käyttöjärjestelmän asentaminen... 1 1.1 Windowsin asettamia laitteistovaatimuksia... 1 1.2 Windowsin asentaminen...

Lisätiedot

ASENNUS- JA KÄYTTÖOHJE

ASENNUS- JA KÄYTTÖOHJE ASENNUS- JA KÄYTTÖOHJE YKSIKKÖHINTA SOPIMUKSEN TOTEUTUNEET MÄÄRÄT-SOVELLUS CMPRO5 VERSIO 2.8 PÄIVITETTY HEINÄKUU 2010 COPYRIGHT 2010 ARTEMIS FINLAND OY. ALL RIGHTS RESERVED. KÄYTTÖOHJE SIVU 2 (12) SISÄLLYSLUETTELO

Lisätiedot

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

Testaussuunnitelma. Karstula. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma Karstula Helsinki 20.4.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Juha-Pekka Juutilainen

Lisätiedot

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia

Lisätiedot

Toinen harjoitustyö. ASCII-grafiikkaa 2017

Toinen harjoitustyö. ASCII-grafiikkaa 2017 Toinen harjoitustyö ASCII-grafiikkaa 2017 Yleistä Tehtävä: tee Javalla ASCII-merkkeinä esitettyä grafiikkaa käsittelevä ASCIIArt17-ohjelma omia operaatioita ja taulukoita käyttäen. Työ tehdään pääosin

Lisätiedot

Tikon ostolaskujen käsittely

Tikon ostolaskujen käsittely Toukokuu 2013 1 (7) 6.3.0 Copyright Aditro 2013 Toukokuu 2013 2 (7) Sisällysluettelo 1. Käyttäjäasetukset... 3 2. Yleiset parametrit... 3 3. Kierrätysasetukset... 3 4. palvelimen tiedot... 4 5. lähetyksen

Lisätiedot

Algoritmit 1. Luento 1 Ti Timo Männikkö

Algoritmit 1. Luento 1 Ti Timo Männikkö Algoritmit 1 Luento 1 Ti 10.1.2017 Timo Männikkö Luento 1 Algoritmi Algoritmin toteutus Ongelman ratkaiseminen Algoritmin tehokkuus Algoritmin suoritusaika Algoritmin analysointi Algoritmit 1 Kevät 2017

Lisätiedot

Kieliaineistojen käyttöoikeuksien hallinnan tietojärjestelmä

Kieliaineistojen käyttöoikeuksien hallinnan tietojärjestelmä Kieliaineistojen käyttöoikeuksien hallinnan tietojärjestelmä Omistaja Tyyppi Tiedoston nimi Turvaluokitus Kohderyhmä Turvaluokituskäytäntö --- SE/Pekka Järveläinen Projektisuunnitelma projektisuunnitelma_kielihallinto.doc

Lisätiedot

Linuxissa uusi elämä 1

Linuxissa uusi elämä 1 17.06.19 Linuxissa uusi elämä 1 Linux on hyvä vaihtoehto Windowsille Uusiin tai vanhempiin tietokoneisiin Miksi käyttäisin Linuxia Tekniikan Maailman Linux vinkki Siirtyisinkö Linuxiin? 17.06.19 Linuxissa

Lisätiedot

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010 TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta Yliassistentti Jussi Hakanen jussi.hakanen@jyu.fi syksy 2010 Evoluutiopohjainen monitavoiteoptimointi MCDM ja EMO Monitavoiteoptimointi kuuluu

Lisätiedot

Sonera Viestintäpalvelu VIP VIP Laajennettu raportointi Ohje

Sonera Viestintäpalvelu VIP VIP Laajennettu raportointi Ohje Sonera Viestintäpalvelu VIP VIP Laajennettu raportointi Ohje Sisällysluettelo VIP Laajennettu raportointi... 3 Luo raportti Laajennetun raportoinnin työkaluilla... 4 Avaa Laajennettu raportointi... 4 Valitse

Lisätiedot

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

SALAKIRJOITUKSEN VAIKUTUS SUORITUSKYKYYN UBUNTU 11.10 käyttöjärjestelmässä -projekti Järjestelmäprojekti 1 projektisuunnitelma ICT4TN007-2 SALAKIRJOITUKSEN VAIKUTUS SUORITUSKYKYYN UBUNTU 11.10 käyttöjärjestelmässä -projekti Versio 0.1 Tekijät Keijo Nykänen Tarkastanut Hyväksynyt HAAGA-HELIA

Lisätiedot

Käyttöohje. MAITO metadatan hallintatyökalu. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Käyttöohje. MAITO metadatan hallintatyökalu. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Käyttöohje MAITO metadatan hallintatyökalu Helsinki 14.12.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä

Lisätiedot