T-76.115 Tietojenkäsittelyopin ohjelmatyö



Samankaltaiset tiedostot
Päivämäärä Projektiryhmä Keimo

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

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

T Tietojenkäsittelyopin ohjelmatyö. Testisarja Ray tracing. Tietokonegrafiikka-algoritmien visualisointi. Testisarja Ray tracing

Testisarja Materiaali- ja valaistusparametrit

Tämä on tietokonegrafiikka-algoritmien visualisointijärjestelmän projektisuunnitelma. Päivämäärä Projektiryhmä Keimo

Epooqin perusominaisuudet

Ohjeet asiakirjan lisäämiseen arkistoon

Muita kuvankäsittelyohjelmia on mm. Paint Shop Pro, Photoshop Elements, Microsoft Office Picture Manager

,QWHUQHWVHODLPHQNl\WWlPLQHQ±,QWHUQHW([SORUHU

TALLENNETAAN MUISTITIKULLE JA MUISTIKORTILLE

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

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

Skype for Business pikaohje

KÄYTTÖOHJE. Servia. S solutions

T Tietojenkäsittelyopin ohjelmatyö

OP-eTraderin käyttöopas

Microsoft Lync Kaakkois-Suomen Ammattikorkeakoulu Oy Mikkelin Ammattikorkeakoulu Oy Kymenlaakson Ammattikorkeakoulu Oy

Tilastokeskuksen rajapintapalveluiden käyttöönotto ArcGISohjelmistossa

Luento 3: 3D katselu. Sisältö

Transkribuksen pikaopas

6.1 Tekstialueiden valinta eli maalaaminen (tulee tehdä ennen jokaista muokkausta ym.)

Ohjeita kirjan tekemiseen

CEM DT-3353 Pihtimittari

Ohje 1 (12) Maarit Hynninen-Ojala MOODLE PIKAOHJE. Kirjautuminen Moodleen ja työtilan valitseminen

Ohje olettaa, että Java on asennettu oletuskansioonsa sekä päivitetty uusimpaan versioonsa ja että selaimen latauskansiona on oletus.

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

Tärkeimmät toiminnot. Kertausta ja uusia toimintoja Wordistä sekä tiedostonhallinnasta. Tärkeimmät toiminnot jatkuu...

Sivu 1 / Viikin kirjasto / Roni Rauramo

A. Peruskäyttöohje Digilehtiö

Ksenos Prime Käyttäjän opas

Teknillinen korkeakoulu T Tietojenkäsittelyopin ohjelmatyö. Testausraportti Smartmeeting opponointi

Drupal-sivuston hallintaopas

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

Varmuuskopiointi ja palauttaminen Käyttöopas

TAMK Ohjelmistotekniikka G Graafisten käyttöliittymien ohjelmointi Herkko Noponen Osmo Someroja. Harjoitustehtävä 2: Karttasovellus Kartta

Varmuuskopiointi ja palauttaminen Käyttöopas

FrontPage Näkymät

Enigmail-opas. Asennus. Avainten hallinta. Avainparin luominen

Sonera Yrityssähköposti. Outlook 2013 lataus ja asennus

sivu 1 SURFCAM V5 JÄRJESTELMÄN VAATIMUKSET

NÄIN TEET VIDEO-MAILIN (v-mail)

Skype for Business ohjelman asennus- ja käyttöohje Sisällys

zotero

NUUO ETÄOHJELMA PIKAOPAS. Maahantuoja Dasys Oy Kaivolahdenkatu HELSINKI helpdesk@dasys.fi

Videokuvan siirtäminen kamerasta tietokoneelle Windows Movie Maker -ohjelman avulla

Siirtyminen Outlook versioon

Verkkosivut perinteisesti. Tanja Välisalo

4. Lausekielinen ohjelmointi 4.1

Finnfoam tuotekirjaston asennusohje. Asennus ja rekisteröintiohje

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

MOODLE-OHJE: Liitetiedoston lisääminen ja päivittäminen

CipherLab CPT-8001L -tiedonkeruupäätteen käyttö Ecomin kanssa

OHJ-7400 Graafisen käyttöliittymän ohjelmointi, Harjoitustyö

GEOS 1. Ilmastodiagrammi Libre Office Calc ohjelmalla

MixW ja Dx-vihjeet (ohje) oh3htu

OHJE EXCEL-MAKRON LUOMISEKSI JA MAKRON KÄYTÖSTÄ

Ensin klikkaa käynnistä-valikkoa ja sieltä Kaikki ohjelmat valikosta kaikki ohjelmat

VERKKOVELHO-YLLÄPITOTYÖKALUN KÄYTTÖOHJE

Kirkkopalvelut Office365, Opiskelijan ohje 1 / 17 IT Juha Nalli

Jos haluat uuden Share-työkalun, valitse Pods -> Share -> Add New Share tai jos sinulla on jo auki Share-työkalu, näyttää se tältä:

KUVANKÄSITTELY THE GIMP FOR WINDOWS OHJELMASSA

Uutiskirjesovelluksen käyttöohje

Toimeentulotuen sähköinen asiointi - Käyttöohje

Ennen kuin aloitat lataamisen tarkista järjestelmävaatimukset:

TeamViewer 11 -ohjelma etäkoulutuksissa ja tuessa

FOTONETTI BOOK CREATOR

OHJELMISTOTEKNIIKKA LABORATORIOHARJOITUKSEN OHJEET

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

Flow!Works Pikaohjeet

Käyttöohje - Sanoma Pro digikirjat verkkopalvelu v Sanoma Pro digikirjat verkkopalvelu Yleistä Laitteistovaatimukset...

Väitöskirja -mallipohja

ASENNUS- JA KÄYTTÖOHJE

FTP -AINEISTOSIIRRON OHJE PC / MAC Ympäristö

KÄYTTÖÖN. Koulukirjat tietokoneelle PIKAOHJEET PAPERPORT -OHJELMAN. Sisällysluettelo

Viva-16. Käyttöohje Veikko Nokkala Suomen Videovalvonta.com

1 Asentaminen. 2 Yleistä ja simuloinnin aloitus 12/

Kipan AC huone on pääsääntöisesti auki ja opiskelijoiden vapaasti käytettävissä.

Tik Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu KÄYTTÖOHJE. LiKe Liiketoiminnan kehityksen tukiprojekti

HP ProBook 430 G5 kannettavien käyttöönotto

ASENNUSOHJEET INTERNET-ASENNUS. Navita Yritysmalli. YHTEYSTIEDOT Visma Solutions Oy Mannerheiminkatu LAPPEENRANTA Puh.

Goalkeeper Game Statistics (v12) käyttöohjeet

3. Laajakaistaliittymän asetukset / Windows XP

Ohjelmisto on tietokanta pohjainen tiedostojärjestelmä, joka sisältää virtuaalisen hakemisto rakenteen.

EasyGO Hunter Käyttäjän opas

1 Tivax Professional 4.5

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Word 2003:n käyttötoimintojen muutokset Word 2010:ssä

UpdateIT 2010: Editorin käyttöohje

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

KYMP Webmail -palvelu

KÄYTTÖOHJE YOMANI XR 1 (9) POPLATEK OY / Yomani XR maksupäätteen käyttöohje. Poplatek Oy

Sen jälkeen Microsoft Office ja sen alta löytyy ohjelmat. Ensin käynnistä-valikosta kaikki ohjelmat

NOOX xperio herätyskello valvontakamera

Käyttöohje. Energent MagiCAD plugin

H5P-työkalut Moodlessa

2020 Fusion. What s New in Version 6? What s New in Version 6? 1 of Fusion

Kurssin hallinta -työväline

Transkriptio:

T-76.115 Tietojenkäsittelyopin ohjelmatyö Sisältö Tämä on tietokonegrafiikka-algoritmien visualisointiin tarkoitettujen visualisointien ja niiden kehitykseen tarkoitetun ohjelmointirajapinnan käyttäjävaatimusdokumentti. Päivämäärä 18.10.2002 Projektiryhmä Keimo keimo-dev@list.hut.fi Kirjoittajat Matti Kannala mkannala@cc.hut.fi Muutokset PVM Tekijä Versio Selitys 18.10.2002 Matti Kannala 0.1 Dokumentti mentorin kommentointiin 25.10.2002 Matti Kannala 0.2 Dokumentti ryhmälle kommentointiin 28.10.2002 Matti Kannala 1.0 Dokumentti PP-vaiheen palautukseen 11.11.2002 Matti Kannala 1.1 Muutoksia vaatimuksiin kts. kpl 10 24.11.2002 Matti Kannala 1.2 Dokumentin yhtenäistäminen 07.02.2003 Matti Kannala 1.3 Muutoksia vaatimuksiin kts. kpl 10 1

Sisällysluettelo 1 Johdanto...3 1.1 Dokumentin tarkoitus... 3 1.2 Dokumentin lukijat... 3 1.3 Yleiskatsaus dokumenttiin... 3 1.4 Lähteet... 4 2 Järjestelmän yleiskuvaus... 5 2.1 Keimo - algoritmien visualisointiympäristö... 5 2.2 Järjestelmän päätoiminnot... 5 3 Asiakkaan tavoitteet... 6 3.1 Taustatietoa... 6 3.2 Tavoitteet... 6 4 Käyttäjäryhmät... 7 5 Toiminnalliset vaatimukset... 7 5.1 Käyttötapauslista... 7 5.2 Käyttötapaukset kaikissa visualisoinneissa... 8 5.3 Käyttötapaukset yksittäisissä visualisoinneissa... 11 5.4 Käyttötapaukset ohjelmointirajapinnassa... 15 6 Tuotteen ominaisuudet... 17 6.1 Ominaisuuslista... 17 6.2 Käytettävyys... 17 6.3 Luotettavuus... 18 6.4 Suorituskyky... 18 6.5 Siirrettävyys... 18 6.6 Jatkokehitettävyys... 18 6.7 Dokumentointi... 19 7 Rajoitukset... 20 7.1 Standardit... 20 7.2 Ohjelmistorajoitukset... 20 7.3 Laitteistorajoitukset... 20 7.4 Sopimukset... 21 8 Käsitteet... 21 9 Sanasto... 22 10 Muutokset dokumentissa... 23 10.1 Version 1.1 muutokset... 23 10.2 Version 1.2 muutokset... 23 10.3 Version 1.3 muutokset... 23 11 Hyväksyntä... 23 11.1 Tuotteen hyväksyminen... 23 11.2 Dokumentin hyväksyminen... 24 2

1 Johdanto 1.1 Dokumentin tarkoitus Tämän dokumentin tarkoitus on kuvata järjestelmän toimintaa käyttäjän näkökulmasta. Teknisiä yksityiskohtia ei tässä dokumentissa kuvata. Käyttäjävaatimukset kuvaavat järjestelmän toiminnot, jotka käyttäjä voi nähdä ja joita asiakas toivoo järjestelmään saavansa. Muutokset dokumenttiin tehdään vaatimusten muutosprosessin mukaan. Dokumentti on myös asiakkaan hyväksymä sopimus toimitettavan tuotteen toiminnoista ja ominaisuuksista. Seuraavalla kaaviolla on kuvattu yleisellä tasolla mitkä osat kuuluvat dokumentin aihepiiriin ja mitkä ovat niiden suhteet ja sijoittumiset projektiin. Vaatimusten määrittely Määrittely & Suunnittelu & Ohjelmointi & Testaus Hyväksymistestaus Vaatimusten hallinta 1.2 Dokumentin lukijat Taulukko 1 Dokumentin mahdolliset lukijat Lukija ryhmä ja asiakas Ohjelmoijat Testaajat Manuaalien kirjoittajat Projekti ryhmä 1.3 Yleiskatsaus dokumenttiin Syy lukemiseen Voidakseen antaa palautetta käyttäjävaatimuksista Voidakseen ymmärtää mitä toimintoja ja ominaisuuksia järjestelmän pitää sisältää Voidakseen testata vaatimuksien perusteella Saadakseen materiaalia käyttöoppaisiin Voidakseen seurata projektin edistymistä vaatimuksien kannalta Dokumentin kappaleessa 2 (Järjestelmän yleiskuvaus) kerrotaan toimitettavan tuotteen ominaisuudet pääpiirteiltään. Kappaleessa 3 (Asiakkaan tavoitteet) keskitytään asiakkaaseen ja sen tavoitteeseen projektin suhteen. Tuotteen käyttäjäryhmät esitellään kappaleessa 4 (Käyttäjäryhmät). Dokumentin tärkein osa vaatimukset listataan kappaleissa 5 (Toiminnalliset vaatimukset) ja kappaleessa 6 (Tuotteen ominaisuudet). Kappaleessa 7 (Rajoitukset) kerrotaan tuotteeseen liittyvät rajoitukset. Dokumentin käsitteet ja sanasto esitellään kappaleissa 8 (Käsitteet) ja 9 (Sanasto). Dokumentin 3

muutokset on lueteltu kappaleessa 10 (Muutokset dokumentissa). Dokumentin allekirjoittaa ja hyväksyy asiakas kappaleeseen 11 (Hyväksyntä). Dokumentissa vaatimukset on luokiteltu kolmeen luokkaan: Toiminnallinen järjestelmän pitää tehdä Ominaisuus järjestelmällä pitää olla Rajoitus rajoittaa järjestelmää Vaatimukset luokitellaan seuraavien tärkeysluokkien mukaan: elintärkeä Suositeltava toimintaa oleellisesti lisäävä Hyödyllinen otetaan huomioon, mutta toteutetaan vain jos aikaa projektissa jää 1.4 Lähteet Taulukko 2 Lähteenä käytetyt dokumentit Tyyppi Dokumentin nimi Versio Kuvaus Projektiaiheen esite Muistiot T-76.115 Topic Overview: Visualization of Computer Graphics Algorithms Asiakastapaamisten muistiot 1.0 Asiakas esittelee projektin aiheen, tavoitteet, teknologiaratkaisut, vaatimukset projektiryhmältä ja yhteystiedot asiakkaaseen. 1.0 Muistiot, joissa on listattu asiakastapaamisessa esille tulleet asiat Vaatimuslista Kerättyjä vaatimuksia 15.10.02 Lista vaatimuksista, joita on tullut esiin asiakkaalta ja projektiryhmältä Dokumenttipohja Ohje vaatimustenmäärittelyyn Tutkimusprojekti T-76.115 User Requirements Document T-76.115 Requirements definition guidelines QURE Quality through Requirements 1.0 Tämän dokumentin englanninkielinen dokumenttipohja 20.10.02 Ohje vaatimusten määrittelyyn. 16.11.01 QURE-tutkimusprojektin kotisivut ja siellä olevat dokumentit 4

2 Järjestelmän yleiskuvaus 2.1 Keimo - algoritmien visualisointiympäristö Keimo-järjestelmä on tietokonegrafiikka-algoritmien visualisointijärjestelmä. Järjestelmä on tarkoitettu opetuskäyttöön yliopistotasoiselle tietokonegrafiikan kurssille. Lopullinen asiakkaalle toimitettava järjestelmä koostuu muutamasta valmiista visualisoinnista ja uusien visualisointien tekemiseen tarkoitetusta ohjelmointirajapinnasta. Valmis tietokonegrafiikka-algoritmien visualisointi on yhdellä tietokoneella ajettava interaktiivinen, kolmiulotteista grafiikka sisältävä havainnollinen esitys algoritmin toiminnasta. Visualisointeja käyttävät tietokonegrafiikkakurssin luennoitsija ja opiskelijat. Ohjelmointirajapinta (framework) on korkeantason C++-kielinen ohjelmointirajapinta, jonka avulla voidaan sujuvasti tehdä uusia visualisointeja. Ohjelmointirajapintaa käyttävät tietokonegrafiikkakurssin luennoitsija ja assistentit. 2.2 Järjestelmän päätoiminnot 2.2.1 Valmiit visualisoinnit Kuva 1 Visualisointien käyttötapausdiagrammi 5

2.2.2 Uusien visualisointien ohjelmointirajapinta Kuva 2Ohjelmointirajapinnan käyttötapausdiagrammi 3 Asiakkaan tavoitteet 3.1 Taustatietoa Asiakkaana projektissa on Teknillisen korkeakoulun Tietoliikenneohjelmistojen ja Multimedian Laboratorion professori Lauri Savioja. Asiakas tietää paljon projektin aihepiiristä. Tällä hetkellä asiakas luennoi Tietokonegrafiikan kurssia (T-111.300). Luennoilla käydään läpi mm. tietokonegrafiikan algoritmeja. Algoritmien oppiminen on paljon helpompaa selventävistä kuvasta kuin pelkästä tekstistä. Vielä helpompaa oppiminen on animoidusta visualisaatiosta, joka kuvaa algoritmin toimintaa. Tällaiset visualisoinnit, esim. järjestämisalgoritmia visualisoiva Java-appletti, voivat olla todella arvokkaita luennolla näytettäviksi tai itseopiskeluun. Asiakas uskoo, että monen tietokonegrafiikka-algoritmin ideat ja rajoitukset voitaisiin visualisoida näyttävästi käyttäen reaaliaikaista kolmiulotteista grafiikkaa. 3.2 Tavoitteet Asiakkaan päätavoitteena on tuottaa materiaalia, jota voi käyttää opetuksellisiin tarkoituksiin Tietokonegrafiikan kurssilla (T-111.300). Tavoitteena on saada muutama esitysvalmis visualisointi tietokonegrafiikka-algoritmeista ja ohjelmointirajapinta uusien visualisointien luontiin. Näistä ohjelmointirajapinnalla on suurempi painoarvo. 6

4 Käyttäjäryhmät Taulukko 3 Järjestelmän käyttäjät Käyttäjäryhmä Kuvaus Käyttäjien lukumäärä Luennoitsijat Luennoitsijat luennoivat 1-3 yliopistotasoisella tietokonegrafiikkakurssilla. He valmistelevat visualisoinnit ennen luentoa ja näyttävät ne opiskelijoille luennolla. Ohjelmoijat Tietokonegrafiikkakurssin 5-10 henkilökunnasta (luennoitsija ja assistentit) he tekevet uusia visualisointeja C++-kielellä käyttäen visualisointeja varten tarkoitettua ohjelmointirajapintaa. Opiskelijat Tietokonegrafiikkakurssin opiskelijat, jotka katsovat valmisteltuja visualisointeja luennolla ja luennon jälkeen itseopiskeluna. 100-200 per vuosi 5 Toiminnalliset vaatimukset 5.1 Käyttötapauslista Käyttötapaus 1 Ohjelman käynnistäminen... 8 Käyttötapaus 2 Visualisoinnin käynnistäminen... 8 Käyttötapaus 3 Kameroiden navigointi... 9 Käyttötapaus 4 Kappaleiden renderöintitavan muuttaminen... 9 Käyttötapaus 5 Normaalivektoreiden näyttäminen... 9 Käyttötapaus 6 Käyttöliittymäkomentojen nauhoittaminen... 10 Käyttötapaus 7 Nauhoituksien toistaminen... 10 Käyttötapaus 8 Kameroiden lisääminen... 11 Käyttötapaus 9 Debug-kameran lisääminen... 11 Käyttötapaus 10 Kameran polttoväli... 11 Käyttötapaus 11 Etu- ja takaleikkaustasot... 12 Käyttötapaus 12 Ortogonaali perspektiivi... 12 Käyttötapaus 13 Materiaaliparametrien säätäminen... 12 Käyttötapaus 14 Paikallinen valaistusmalli: Phong... 13 Käyttötapaus 15 Valojen liikuttaminen... 13 Käyttötapaus 16 Z-puskurin visualisointi... 13 Käyttötapaus 17 A-puskurin visualisointi... 14 7

Käyttötapaus 18 Varjojen näyttäminen... 14 Käyttötapaus 19 Perustransformaatiot... 15 Käyttötapaus 20 Objektikirjasto... 15 Käyttötapaus 21 Tekstuurikirjasto... 15 Käyttötapaus 22 Matematiikkakirjasto... 16 Käyttötapaus 23 Materiaalikirjasto... 16 Käyttötapaus 24 Yleiset 3D-primitiivit... 16 5.2 Käyttötapaukset kaikissa visualisoinneissa Käyttötapaus 1 Ohjelman käynnistäminen Ohjelman käynnistäminen R513 Käyttäjän pitää voida käynnistää ohjelma ajamalla yksi tiedosto käyttöjärjestelmässä. Visualisointiohjelma on asennettuna koneella 1. Käyttäjä etsii koneen hakemistosta ohjelman käynnistystiedoston. 2. Käyttäjä ajaa käynnistystiedoston. Keskeytykset - Lopputilanne Visualisointi ohjelman käynnistyy. Esiin tulee käyttöliittymä- ja 3Dgrafiikkaikkuna. Grafiikkaikkunaan aukeaa visualisaatio. Käyttötapaus 2 Visualisoinnin käynnistäminen Visualisoinnin käynnistäminen R514 Käyttäjän pitää voida luoda ja käynnistää uusi visualisointi sulkematta ohjelmaa. Visualisointiohjelma on käynnnistetty. 1. Käyttäjä valitsee käyttöliittymästä komennon uuden nauhoitustus tiedoston luontiin. 2. Käyttäjä valitsee esiin tulevalta dialogilta visualisointityypin. Dialogilla näkyy lyhyt selostus visualisaatiosta. 3. Käyttäjä hyväksyy valinnan painamalla OK-nappia. Keskeytykset - Lopputilanne Ohjelma avaa visualisoinnin valitun tyypin mukaan ja nauhoite on tyhjä. 8

Käyttötapaus 3 Kameroiden navigointi Keskeytykset Lopputilanne Kameroiden navigointi R504 Käyttäjän pitää voida navigoida kaikkia kameroita hiiren ja näppäimistön avulla. Visualisoinnissa on ainakin yksi visualisointi-ikkuna auki. 1. Käyttäjä valitsee hiirellä ikkunan. 2. Käyttäjä suuntaa kameran hiiren nappi pohjassa samalla liikuttamalla ikkunassa kursoria. 3. Käyttäjä liikuttaa kameraa katsomissuuntaan eteenpäin ja taaksepäin näppäimistöllä. 4. Käyttäjä pyörittää kameraa katsomissuunnan akselin ympäri molempiin suuntiin näppäimistöllä. 5. Käyttäjä suuntaa kameran näppäimistöllä. Visualisoinnissa voi olla kappaleita, joiden läpi ei voi navigoida. Kamera on käyttäjän haluamassa paikassa ja suunnassa. Käyttötapaus 4 Kappaleiden renderöintitavan muuttaminen Keskeytykset Lopputilanne Kappaleiden renderöintitavan muuttaminen R503 Käyttäjän pitää voida valita kappaleiden renderöintitapa käyttöliittymän avulla. Valittavia renderöintitapoja pitää olla rautalankamalli (Wireframe), tasaväriset pinnat (Flat) ja sävytetyt pinnat (Gouraud). Visualisoinnissa on ainakin yksi visualisointi-ikkuna auki. 1. Käyttäjä valitsee hiirellä ikkunan. 2. Käyttäjä valitsee hiirellä yhden kappaleen. 3. Käyttäjä vaihtaa hiirellä käyttöliittymästä renderöintitapaa. Jos käyttäjä ei valitse kappaletta vaiheessa 2. kaikki kappaleet vaihtavat renderöintitapaa Valitun kappaleen renderöintitapa muuttuu. Käyttötapaus 5 Normaalivektoreiden näyttäminen Normaalivektoreiden näyttäminen R508 Käyttäjän pitää voida valita kappaleiden normaalivektorit näkyviin käyttöliittymän avulla. Visualisoinnissa on ainakin yksi visualisointi-ikkuna auki. 9

Keskeytykset Lopputilanne 1. Käyttäjä valitsee hiirellä ikkunan. 2. Käyttäjä valitsee hiirellä yhden kappaleen. 3. Käyttäjä vaihtaa hiirellä käyttöliittymästä normaalivektorit päälle/pois. Jos käyttäjä ei valitse kappaletta vaiheessa 2. kaikkien kappaleiden normaalivektorit tulevat näkyviin/poistuvat näkyvistä Valitun kappaleen normaalivektorit tulevat näkyyviin/poistuvat näkyvistä. Käyttötapaus 6 Käyttöliittymäkomentojen nauhoittaminen Käyttöliittymäkomentojen nauhoittaminen R509 Käyttäjän pitää voida nauhoittaa käyttöliittymäkomentoja ja tallentaa nauhoite käyttöliittymän avulla. Luennoitsijat Käyttäjä on asettanut visualisoinnin tilaan josta hän haluaa aloittaa nauhoittamisen. Tilanne voi olla missä nauhan kohdassa tahansa ja nauhoiteessa pitää voida poistaa pätkiä. 1. Käyttäjä painaa käyttöliittymästä nauhoitusnappia. 2. Käyttäjä navigoi kameraa. 3. Käyttäjä vaihtaa visualisoinnin asetuksia. 4. Käyttäjä painaa käyttöliittymästä nauhoituksen pysäytysnappia. 5. Käyttäjä poistaa pätkän keskeltä nauhoitetta. 6. Käyttäjä valitsee nauhoitteen tallennuskomennon menusta. 7. Käyttäjä valitsee avautuvan tallennusikkunan avulla tiedoston nimen ja sijainnin. 8. Käyttäjä sulkee ikkuna OK -napilla. Keskeytykset - Lopputilanne Käyttäjän komennot nauhoittuivat ja nauhoite tallentui tiedostoon. Jos nauhoitus ei tapahtu nauhan loppuun, siirtyy nauhan loppuosa eteenpäin nauhoituksen edetessä. Käyttötapaus 7 Nauhoituksien toistaminen Nauhoituksien toistaminen R510 Käyttäjän pitää voida toistaa tallennettu nauhoite käyttöliittymäkomennoista käyttöliittymän avulla. Luennoitsijat, Opiskelijat Käyttäjällä on samalla visualisoinnilla nauhoitettu tiedosto 1. Käyttäjä valitsee menulta nauhoitteen avaamiskomennon. 2. Käyttäjä etsii avautuvan aavaamisikkunan avulla tiedoston. 3. Käyttäjä hyväksyy lataamisen Open -napilla. 4. Käyttäjä painaa toistamisnappia. 5. Käyttäjä painaa pysäytysnappia. 10

Keskeytykset Lopputilanne 6. Käyttäjä valitsee kohdan nauhoituksesta vierityspalkista hiirellä. 7. Käyttäjä painaa toistamisnappia. Tiedoston väärä formaatti aiheuttaa varoituksen ja keskeyttää toiminnon. Nauhoite pyörinyt loppuun ja käyttäjä on nähnyt nauhoitetun esityksen. Käyttötapaus 8 Kameroiden lisääminen Keskeytykset Lopputilanne Kameroiden lisääminen R501 Käyttäjän pitää voida lisätä käyttöliittymän avulla visualisointiin kameroita (ikkunoita) käyttöliittymän kameralistasta. Kaikki visualisoinnin kamerat eivät ole näkyvissä. 1. Käyttäjä valitsee käyttöliittymästä kameran näkyviin. Jos kamera on näkyvissä ei uutta kameraa tule näkyviin. Käyttäjän valitsema kamera (ikkuna) tulee näkyviin. Käyttötapaus 9 Debug-kameran lisääminen Keskeytykset Lopputilanne Debug-kameran lisääminen R502 Käyttäjän pitää voida lisätä käyttöliittymän avulla visualisointiin debug-kameroita (ikkunoita) käyttöliittymän debug-kameralistasta. Debug-kamerassa pitää näkyä muiden kameroiden kuvausalue läpinäkyvänä keilana. Kaikki visualisoinnin kamerat eivät ole näkyvissä. 1. Käyttäjä valitsee käyttöliittymästä debug-kameran näkyviin. Jos kamera on näkyvissä ei uutta kameraa tule näkyviin. Käyttäjän valitsema debug-kamera (ikkuna) tulee näkyviin. Muiden kameroiden kuvausalueet näkyvät läpinäkyvinä keiloina. 5.3 Käyttötapaukset yksittäisissä visualisoinneissa 5.3.1 3D-kameran parametrit Käyttötapaus 10 Kameran polttoväli Kameran polttoväli R608 Käyttäjän pitää voida säätä valitun kameran polttoväliä käyttöliittymän avulla. Visualisoinnissa on ainakin yksi visualisointi-ikkuna auki. 11

1. Käyttäjä valitsee hiirellä ikkunan. 2. Käyttäjä säätä kameran polttoväliä käyttöliittymästä. Keskeytykset - Lopputilanne Kameran polttoväli muuttuu. Käyttötapaus 11 Etu- ja takaleikkaustasot Etu- ja takaleikkaustasot R609 Käyttäjän pitää voida säätä valitun kameran etu- ja takaleikkaustasojen etäisyyksiä käyttöliittymän avulla. Visualisoinnissa on ainakin yksi visualisointi-ikkuna auki. 1. Käyttäjä valitsee hiirellä ikkunan. 2. Käyttäjä säätää etuleikkaustason etäisyyden käyttöliittymästä. 3. Käyttäjä säätää takaleikkaustason etäisyyden käyttöliittymästä. Keskeytykset - Lopputilanne Kameran etu- ja takaleikkaustasot muuttuvat ja kappaleita tulee tai poistuu näkyvistä riippuen käyttäjän säätämistä arvoista. Käyttötapaus 12 Ortogonaali perspektiivi Keskeytykset Lopputilanne Ortogonaali perspektiivi R617 Hyödyllinen Käyttäjän pitää voida asettaa kameran perspektiivin ortogonaaliseksi käyttöliittymän avulla. Visualisoinnissa on ainakin yksi visualisointi-ikkuna auki. 1. Käyttäjä valitsee hiirellä ikkunan. 2. Käyttäjä valitsee käyttöliittymästä perspektiivin ortogonaaliseksi Jos perspektiivi oli jo valmiiksi ortogonaali ei muutosta kamerassa tapahdu. Kameran perspektiivi muuttuu ortogonaaliseksi. 5.3.2 Lokaalit valaistusmallit ja materiaaliparametrit Käyttötapaus 13 Materiaaliparametrien säätäminen Materiaaliparametrien säätäminen R607 Käyttäjän pitää voida valita kappaleiden materiaaliparametrit ja valoparametrit. Parametrejä ovat kappaleen väri, emittoituva valo, ambientin valon heijastus, diffuusin valon heijastus, specular-valon heijastus ja läpinäkyvyys. 12

Keskeytykset Lopputilanne Visualisoinnissa on ainakin yksi visualisointi-ikkuna auki. 1. Käyttäjä valitsee hiirellä ikkunan. 2. Käyttäjä valitsee hiirellä yhden kappaleen. 3. Käyttäjä vaihtaa hiirellä käyttöliittymästä materiaaliparametria. 4. Käyttäjä vaihtaa hiirellä käyttöliittymästä valoparametreja. Jos käyttäjä ei valitse kappaletta vaiheessa 2. kaikki kappaleet vaihtavat materiaaliansa ja valaistuksensa. Valitun kappaleen materiaali ja valaistus muuttuu. Käyttötapaus 14 Paikallinen valaistusmalli: Phong Keskeytykset Lopputilanne Paikallinen valaistusmalli: Phong R606 Suositeltava Käyttäjän pitää voida valita kappaleiden valaistusmalliksi Phongvalaistusmalli käyttöliittymän avulla. Visualisoinnissa on ainakin yksi visualisointi-ikkuna auki. 1. Käyttäjä valitsee hiirellä ikkunan. 2. Käyttäjä valitsee hiirellä yhden kappaleen. 3. Käyttäjä vaihtaa hiirellä käyttöliittymästä renderöintitapaa. Jos käyttäjä ei valitse kappaletta vaiheessa 2. kaikki kappaleet vaihtavat valaistusmallia Phong:ksi. Valitun kappaleen valaistusmalli muuttuu Phong:ksi. Käyttötapaus 15 Valojen liikuttaminen Keskeytykset Lopputilanne 5.3.3 Z- ja A-puskuri Valojen liikuttaminen R619 Suositeltava Käyttäjän pitää voida liikuttaa visualisoinnin valaisimia käyttöliittymän avulla. Visualisoinnissa on ainakin yksi visualisointi-ikkuna auki. 1. Käyttäjä valitsee hiirellä ikkunan. 2. Käyttäjä valitsee hiirellä yhden valaisinobjektin. 3. Käyttäjä liikuttaa valaistusobjektia käyttöliittymän avulla. Jos käyttäjä ei valitse valaisinta, mikään valo ei liiku. Valitun valaisimen paikka vaihtuu. Käyttötapaus 16 Z-puskurin visualisointi Z-puskurin visualisointi R604 13

Käyttäjän on pystyttävä visualisoinnin avulla näkemään Z-puskurin toiminta. Käyttäjällä vähintään kaksi ikkunaa (kameraa) avattuna 1. Käyttäjä valitsee käyttöliittymästä Z-puskurin visualisoinnin päälle. 2. Käyttäjä tarkastelee ikkunasta Z-puskurin toimintaa samalla kun navigoi kameraa. 3. Käyttäjä vaihtaa Z-puskurin parametrejä käyttöliittymästä. 4. Käyttäjä tarkastelee ikkunasta Z-puskurin toimintaa samalla kun navigoi kameraa. Keskeytykset - Lopputilanne Käyttäjä on nähnyt Z-puskurin toiminnan Käyttötapaus 17 A-puskurin visualisointi A-puskurin visualisointi R603 Hyödyllinen Käyttäjän on pystyttävä visualisoinnin avulla näkemään A-puskurin toiminta. Käyttäjällä vähintään kaksi ikkunaa (kameraa) avattuna 1. Käyttäjä valitsee käyttöliittymästä A-puskurin visualisoinnin päälle. 2. Käyttäjä tarkastelee ikkunasta A-puskurin toimintaa samalla kun navigoi kameraa. 3. Käyttäjä vaihtaa A-puskurin parametrejä käyttöliittymästä. 4. Käyttäjä tarkastelee ikkunasta A-puskurin toimintaa samalla kun navigoi kameraa. Keskeytykset - Lopputilanne Käyttäjä on nähnyt A-puskurin toiminnan 5.3.4 Globaalit valaistusmallit Käyttötapaus 18 Varjojen näyttäminen Keskeytykset Varjojen näyttäminen R612 Suositeltava Käyttäjän pitää voida valita kappaleiden varjot päälle käyttöliittymän avulla. Varjojen muodostuminen pitää visualisoida säteillä. Visualisoinnissa on valaistu kappale näkyvissä. 1. Käyttäjä valitsee käyttöliittymästä varjot näkyviin Jos varjot ovat jo valmiiksi valittuna, varjot lähtevät pois 14

Lopputilanne Kappaleisiin osuvat varjot näkyvät tummempina alueina. Varjon heittävästä kappaleesta lähtee valon suuntaisia visualisoituja säteitä varjon reunoihin. 5.3.5 Perustransformaatiot Käyttötapaus 19 Perustransformaatiot Keskeytykset Lopputilanne Perustransformaatiot R618 Käyttäjän pitää voida säätää kappaleen kierto-, skaalaus- ja transformaatiomatriiseja ja niiden kertomisjärjestystä käyttöliittymän avulla. Visualisoinnissa on ainakin yksi visualisointi-ikkuna auki, jossa ainakin yksi kappale. 1. Käyttäjä valitsee kappaleen käyttöliittymän avulla. 2. Käyttäjä vaihtelee käyttöliittymästä matriisien järjestystä. 3. Käyttäjä vaihtelee käyttöliittymästä rotaation komponenttien järjestystä. 4. Käyttäjä vaihtelee käyttöliittymästä matriisien numeroarvoja. Jos käyttäjä ei valinnut kappaletta vaiheessa 1, matriiseihin liittyvät käyttöliittymäkomennot eivät vaikuta mihinkään kappaleeseen. Kappale on siirtynyt, skaalautunut ja pyörähtänyt matriisien mukaan. 5.4 Käyttötapaukset ohjelmointirajapinnassa Käyttötapaus 20 Objektikirjasto Objektikirjasto R404 Suositeltava Käyttäjän pitää voida lisätä objekteja valmiista objektikirjastosta objektin tiedoston nimellä. Luennoitsijat, ohjelmoijat Käyttäjä haluaa lisätä objektin lataamisen koodiin. 1. Käyttäjä etsii sopivan objektin objektilistasta 2. Käyttäjä lisää objektin lataamiskutsun objektin nimi parametrinä Keskeytykset - Lopputilanne Käyttäjä saa lisättyä objektin lataamisen koodiin. Käyttötapaus 21 Tekstuurikirjasto Tekstuurikirjasto R405 Suositeltava 15

Käyttäjän pitää voida lisätä tekstuureja valmiista tekstuurikirjastosta tekstuurin tiedoston nimellä. Luennoitsijat, ohjelmoijat Käyttäjä haluaa lisätä tekstuurin objektille koodissa. 1. Käyttäjä etsii sopivan tekstuurin tekstuurilistasta 2. Käyttäjä lisää tekstuurinlatauskutsun tekstuurin nimi parametrinä. Keskeytykset - Lopputilanne Käyttäjä saa lisättyä tekstuurin lataamisen koodiin. Käyttötapaus 22 Matematiikkakirjasto Matematiikkakirjasto R406 Käyttäjän pitää voida käyttää valmista matematiikkakirjastoa. Luennoitsijat, ohjelmoijat Käyttäjä haluaa käyttää jotain valmista matematiikkafunktiota. 1. Käyttäjä lisää kutsun matematiikkakirjaston funktioon. Keskeytykset - Lopputilanne Käyttäjä saa lisättyä kutsun matematiikkakirjaston funktioon. Käyttötapaus 23 Materiaalikirjasto Materiaalikirjasto R408 Hyödyllinen Ohjelmoijan pitää voida käyttää valmiita materiaaleja objektien ulkoasun määrittämisessä. Luennoitsijat, ohjelmoijat Käyttäjä haluaa käyttää jotain valmista materiaalia. 1. Käyttäjä valitsee materiaalikirjastosta sopivan materiaalin (tekstuuri, valaistusominaisuudet ja alpha). 2. Käyttäjä lisää objektille valitun materiaalin. Keskeytykset - Lopputilanne Käyttäjä saa lisättyä objektille valmiin materiaalin. Käyttötapaus 24 Yleiset 3D-primitiivit Yleiset 3D-primitiivit R407 Käyttäjän pitää voida käyttää valmiita 3D-primitiivejä pisteitä, viivoja, kolmioita, nuolia ja tekstiä. Luennoitsijat, ohjelmoijat Käyttäjä haluaa käyttää jotain valmista 3D-primitiiviä. 1. Käyttäjä lisää 5 pistettä visualisaatioon. 16

2. Käyttäjä lisää 5 viivaa visualisaatioon. 3. Käyttäjä lisää kolmion visualisaatioon. 4. Käyttäjä lisää tekstiä visualisaatioon. 5. Käyttäjä lisää nuolen osoittamaan yhtä pistettä visualisaatiossa. Keskeytykset - Lopputilanne Käyttäjä saa lisättyä kaikki 3D-primitiivit. 6 Tuotteen ominaisuudet 6.1 Ominaisuuslista Vaatimus 1 Käyttöliittymäkirjaston vähimmäisvaatimus GLUT... 17 Vaatimus 2 Javan AWT:lla toteutettu käyttöliittymä... 17 Vaatimus 3 Virheiden korjaus ennen toimitusta... 18 Vaatimus 4 Visualisointien suorituskyky... 18 Vaatimus 5 Ohjelmakoodin siirrettävyys... 18 Vaatimus 6 Visualisointi splineistä... 18 Vaatimus 7 RIB-formaatin tuottaminen... 19 Vaatimus 8 Ohjelmakoodin kommentointikieli... 19 Vaatimus 9 Ohjelmakoodin kommentointistandardi... 19 Vaatimus 10 Ohjelmointirajapinnan dokumentointikieli... 19 Vaatimus 11 Ohjelmointirajapinnan dokumentin formaatti... 19 Vaatimus 12 Ohjelmakoodin kommenttien HTML-julkaisu... 19 6.2 Käytettävyys Käytettävyyttä on vaikea mitata ja melkein kaikissa projekteissa vaatimuksena on hyvä käytettävyys. Tässä projektissa käytettävyyttä mitataan esim. seuraavilla vaatimuksilla. Vaatimus 1 Käyttöliittymäkirjaston vähimmäisvaatimus GLUT Käyttöliittymäkirjaston vähimmäisvaatimus GLUT R309 Ohjelmoijat toteuttavat tuotteen käyttöliittymän GLUT-kirjastolla tai kehittyneemmällä portattavalla kirjastolla Vaatimus 2 Javan AWT:lla toteutettu käyttöliittymä Javan AWT:lla toteutettu käyttöliittymä R310 Suositeltava Ohjelmoijat toteuttavat tuotteen käyttöliittymän Javan AWT-kirjastoa käyttäen. 17

6.3 Luotettavuus Luotettavuus tarkoittaa toimitettavien tuotteiden toimintavarmuutta. Toimintavarmuutta voidaan parantaa testaamalla ja korjaamalla testauksessa löytyvät virheet. Vaatimus 3 Virheiden korjaus ennen toimitusta 6.4 Suorituskyky Virheiden korjaus ennen toimitusta R311 Ohjelmoijat ovat korjanneet tuotteen kaikki löydetyt vakavat virheet ennen toimitusta. Suorituskyky tarkoittaa valmiiden visualisointien toimimisnopeutta. Toimimisnopeutta tarvitaan, jotta kuvan hidas päivitys ei haittaisi visualisointien katselua. Vaatimus 4 Visualisointien suorituskyky 6.5 Siirrettävyys Visualisointien suorituskyky R512 Käyttäjän pitää voida katsoa visualisointeja vähintään 20:n kuvan vaihtotaajuudella (fps >= 20) Siirrettävyys (portattavuus) tarkoittaa ohjelmointirajapinnan ja valmiiden visualisointien siirtämistä Windows-ympäristöstä Linux-ympäristöön. Käytännössä tämä tarkoittaa sitä, että kun ohjelmointikoodi on siirretty Linux:lle, voidaan ohjelma kääntää gcc-kääntäjällä ja visualisointeja ajaa Linux-käyttöjärjestelmässä. Vaatimus 5 Ohjelmakoodin siirrettävyys Ohjelmakoodin siirrettävyys R304 Siirtäjän pitää voida kääntää ohjelmakoodi virheettä gcc:lla Linux:ssa ilman ohjelmakoodin muuttamista. 6.6 Jatkokehitettävyys Jotta tuote olisi helposti jatkokehitettävissä, pitää se ottaa huomioon tuotteen kehityksessä. Asiakkaalla on muutama jatkokehitysidea, joista on seuraavat vaatimukset. Vaatimus 6 Visualisointi splineistä Visualisointi splineistä 18

R402 Suositeltava Ohjelmoijien pitää voida käyttää splinejä ohjelmointirajapinnasta. Ohjelmointirajapinnasta pitää löytyä ainakin Bezier-käyrät ja TCBkäyrät. Vaatimus 7 RIB-formaatin tuottaminen 6.7 Dokumentointi RIB-formaatin tuottaminen R403 Hyödyllinen Ohjelmoijien pitää voida lisätä ohjelmointirajapintaan RIB-formaatin tuki. Vaatimus 8 Ohjelmakoodin kommentointikieli Ohjelmakoodin kommentointikieli R201 Ohjelmoijat kommentoivat kaiken ohjelmakoodin englanniksi. Vaatimus 9 Ohjelmakoodin kommentointistandardi Ohjelmakoodin kommentointistandardi R202 Suositeltava Ohjelmoijat kommentoivat ohjelmakoodin Doxygen-ohjelman standardin mukaan, jotta ohjelmakoodista voidaan tuottaa helposti dokumentointi HTML-formaattiin. Vaatimus 10 Ohjelmointirajapinnan dokumentointikieli Ohjelmointirajapinnan dokumentointikieli R204 Dokumentoija kirjoittaa ohjelmointirajapinnan dokumentoinnin englanniksi Vaatimus 11 Ohjelmointirajapinnan dokumentin formaatti Ohjelmointirajapinnan dokumentin formaatti R205 Hyödyllinen Dokumentoija kirjoittaa ohjelmointirajapinnan dokumentoinnin Latexformaatissa Vaatimus 12 Ohjelmakoodin kommenttien HTML-julkaisu Ohjelmakoodin kommenttien HTML-julkaisu R203 19

Hyödyllinen Dokumentoija tekee ohjelmakoodin kommenteista Doxygen-ohjelmalla HTML-sivuston. 7 Rajoitukset 7.1 Standardit Projektissa on hyvin vähän rajoituksia standardien takia. Ainoa rajoitus liittyy ohjelmointirajapinnan ohjelmakoodin dokumentointiin. Taulukko 4 Standardirajoitukset Ohjelmointirajapinta Kommentointi 7.2 Ohjelmistorajoitukset Doxygen-ohjelman vaatima formaatti Toimitettavat visualisoinnit ja ohjelmointirajapinta on tarkoitettu käytettäviksi Windowsympäristössä. Ohjelmistovaatimukset ovat seuraavat: Taulukko 5 Ohjelmistorajoitukset Visualisoinnit Käyttöjärjestelmä Windows 95/98/2000/ME/XP Java-tulkki Vähintään J2SE v 1.4 Ohjelmointirajapinta Käyttöjärjestelmä Windows 95/98/2000/ME/XP Java-tulkki Vähintään J2SE v 1.4 Java-kääntäjä Vähintään J2SE v 1.4 C++-kääntäjä Microsoft Visual C++ 6.0/ Gnu Compiler Collection 7.3 Laitteistorajoitukset Toimitettavat visualisoinnit ja ohjelmointirajapinta on tarkoitettu käytettäväksi Windowsympäristössä. Laitteistovaatimukset ovat seuraavat: Taulukko 6 Laitteistorajoitukset Visualisoinnit ja ohjelmointirajapinta Näytönohjain OpenGL-yhteensopiva Muisti Vähintään 64MB Kovalevy Vähintään 50MB Prosessori Vähintään 300MHz Hiiri Vähintään kaksinappinen 20

7.4 Sopimukset Asiakkaan kanssa projektiryhmä tekee sopimuksen, missä molemmilla osapuolilla jää täydet oikeudet visualisointeihin ja ohjelmointirajapintaan. Sopimus tehdään heti kun kurssin puolesta saadaan sopimuspohja tai viimeistään ensimmäisen toteutusvaiheen loppuun mennessä. 8 Käsitteet Taulukko 7 Käsite Kamera Käyttöliittymä Kuvaus Erillinen ikkuna, jossa on kolmiulotteinen näkymä visualisoinnin maailmaan. Erillinen ikkuna, joka sisältää käyttöliittymäkomponentteja visualisoinnin ohjaamiseen. Kuva 3 Käyttöliittymän peruskäsitteet 21

Kuva 4 Käyttöliitymän prototyyppi 9 Sanasto Taulukko 8 Dokumentin sanastoa Sana Doxygen LaTeX OpenGL Debug-kamera Tekstuuri Normaalivektori Mipmap Gcc Kuvaus Ohjelmakoodin dokumentointijärjestelmä. Tuottaa esim. HTML- tai Latex-kielisen esityksen ohjelmakoodin kommenteista. Laadukkaiden dokumenttien tuottamiseen käytettävä defacto-standardi ja järjestelmä. Tunnetuin 2D/3D grafiikkaan käytetty ohjelmointirajapinta. Kamera 3D-maailmaan, jossa näkyy vain muissa kameroissa näkyvät kappaleet sekä niiden näkyvyyskeila. Kappaleen pinnalle piirrettävä pintamateriaalia esittävä kuva. Kappaleen pinnasta kohtisuoraan ulospäin pinnasta oleva suuntavektori. Menetelmä tallentaa monta eri resoluutioista tekstuuria Gnu Compiler Collection on ilmainen kääntäjä kokoelma, joka sisältää esim. C++-kääntäjän. 22

10 Muutokset dokumentissa 10.1 Version 1.1 muutokset Lisätty lokaaleihin valaistusmalleihin käyttötapaus valojen liikuttamisesta. Lisätty kaikkien visualisointien toimintoihin käyttötapaukset visualisointiohjelman ja yksittäisen visualisoinnin käynnistämisestä Lisätty käyttötapaus materiaalikirjastosta Varjot-visualisoinnin nimi muutettu Globaaleiksi valaistusmalleiksi ja prioriteetti laskettu suositeltavaksi Perustransformaatioiden prioriteettiä nostettu välttämättömäksi Lisätty kuva käyttöliittymän prototyypistä 10.2 Version 1.2 muutokset Tyylin yhtenäistäminen muiden projektin dokumenttien kanssa. 10.3 Version 1.3 muutokset Lisäyksiä vaatimuksiin: o R503 Ohjelman käynnistyessä pitää visualisaation avautua automaattisesti. o R514 Visualisaation avaamisessa pitää näkyä selostus visualisaatiosta. o R509 Nauhoitus voi alkaa mistä nauhan kohdasta tahansa ja nauhoiteesta pitää voida poistaa pätkiä. Nauhoittaessa keskelle nauhan loppuosa siirtyy eteenpäin. o R607 Lokaalit valaistusmallit visualisaatiossa pitää myös valojen parametreja pystyä muuttamaan. o R407 3D-primitiiveissä pitää olla nuoliprimitiivi. Poistoja vaatimuksiin: o R514 Visualisaation avaamisessa ei syötetä tiedoston nimeä o R503, R508, R607, R606, R619 Visualisaation ei tarvitse tukea objektien valintaa hiiren kursorilla. Objektin valinta pitää olla kuitenkin mahdollista jotenkin. o R619 Valojen liikuttelu hiirellä ei ole vaadittua. 11 Hyväksyntä 11.1 Tuotteen hyväksyminen Tuote hyväksytään hyväksymistestauksella. Hyväksymistestauksessa testataan mitkä vaatimuksista ovat toteutuneet. Vaatimus ei voi toteutua osaksi, vaan se joko toteutuu tai ei toteudu. Jotta tuote olisi hyväksyttävä toimitettavaksi kaikki välttämättömät 23

vaatimukset pitää olla toteutettu. Suositeltavista vaatimuksista pitää olla 50% toteutettu. Hyödyllisistä vaatimuksista ei tarvitse toteutua mikään. Ne pitää kuitenkin huomioida arkkitehtuurissa ja niitä tehdään jos aikaa korkeamman prioriteetin vaatimuksilta aikaa jää. Taulukko 9 Hyväksymistestauksen tulos Hyväksyttyjä vaatimuksia Hylättyjä vaatimuksia Suositeltava Hyväksyttävä Toimitettavan tuotteen on hyväksymistestannut: ja päivämäärä 11.2 Dokumentin hyväksyminen Tämän dokumentin on kokonaisuudessaan lukenut ja hyväksynyt: ja päivämäärä 24