Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset



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

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Tekninen määrittely

TEKNINEN MÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.0 (Luonnos 2)

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

TOIMINNALLINEN MÄÄRITTELY MS

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

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

Vaatimusmäärittely Ohjelma-ajanvälitys komponentti

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

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

Ohjelma-ajanvälitys komponentti

Digi-tv vastaanottimella toteutettavat interaktiiviset sovellukset Käyttöohje

PILETTI. Tekninen vaatimusmäärittely. v. 0.2

Toteutusvaihe T2 Edistymisraportti

L models. Tekninen määrittely. Ryhmä Rajoitteiset

Testiraportti - Koordinaattieditori

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Tekninen määrittely

Valppaan asennus- ja käyttöohje

TEKNINEN MÄÄRITTELY. PROJEKTITYÖ Tik Wclique

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

EUREFin vaikutukset organisaatioiden tietojärjestelmiin

Suunnitteluvaihe prosessissa

T Testiraportti - järjestelmätestaus

Rajapinnasta ei voida muodostaa olioita. Voidaan käyttää tunnuksen tyyppinä. Rajapinta on kuitenkin abstraktia luokkaa selvästi abstraktimpi tyyppi.

Sisällys. 11. Rajapinnat. Johdanto. Johdanto

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

206 Verkkosivun tuottaminen finaalitehtävät

Toiminnallinen määrittely. XLet esimerkkisovellus

TEKNINEN MÄÄRITTELY. PROJEKTITYÖ Tik Wclique

Sisällys. JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta. Abstraktin luokan idea. Abstrakti luokka ja metodi. Esimerkki

Järjestelmäarkkitehtuuri (TK081702) Avoimet web-rajapinnat

VYPEdit verkkosivualusta SVY-toimijoille

Visma Business AddOn Factoring-laskuaineisto. Käyttäjän käsikirja

Avoimen ja yhteisen rajapinnan hallintamalli

Alkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS CT10A Kandidaatintyö ja seminaari

Toteutusvaihe T3 Digi-tv: Edistymisraportti

Avoimen ja yhteisen rajapinnan hallintasuunnitelma v.1.4

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Rajapinnat ja sisäluokat

T Testiraportti - integraatiotestaus

Testaussuunnitelma Versio Päiväys Tekijä Kuvaus

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Järjestelmäarkkitehtuuri (TK081702) Lähtökohta. Integroinnin tavoitteet

Projektisuunnitelma Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

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

VAATIMUSMÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.2

Muutamia peruskäsitteitä

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset. Riskienhallinta DTV projektissa

Visma Software Oy

VAATIMUSMÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 4)

Internet-pohjainen ryhmätyöympäristö

812341A Olio-ohjelmointi Peruskäsitteet jatkoa

Ristiinopiskelun kehittäminen -hanke

Liikennetiedotus digi-tv:ssä -pilottiprojekti

JULKISTEN VERKKOPALVELUJEN LAATUKRITEERISTÖN KONSEPTI

Visma Business AddOn Tositteiden tuonti. Käsikirja

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä

Rajapinta (interface)

19/20: Ikkuna olio-ohjelmoinnin maailmaan

Liikkuva-sovellusprojekti

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

Määrittelydokumentti: Kansallinen palveluväylä - integraatio

RATKI 1.0 Talousraportin käyttäjän ohje

Järjestelmäarkkitehtuuri (TK081702)

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Aineistosiirron testauksen aloituksen ohje Trafin sopimuskumppaneille

Visma Nova Webservice Versio 1.1 /

Turva-automaation suunnittelu

DIGIROAD DIGIROAD PALVELUT

Webforum. Version 14.4 uudet ominaisuudet. Viimeisin päivitys:

Digi-tv vastaanottimella toteutettavat interaktiiviset sovellukset Editorin käyttöohje

Qt kaikkialla?

Ohje EmvCard -ohjelmistoon tehtävistä asetusmuutoksista OP-korttitilityspalvelun siirtyessä OP-Pohjolan lisensseille

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

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

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Lmodels. Tekninen määrittely. Ryhmä Rajoitteiset

Projektisuunnitelma Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

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

Simulaattorin asennus- ja käyttöohje

Yhteinen opintohallinnon järjestelmä

Visma Business AddOn Tuotetarrat. Käsikirja

KÄYTTÄJÄKOKEMUKSEN PERUSTEET, TIE-04100, SYKSY Käyttäjätutkimus ja käsitteellinen suunnittelu. Järjestelmän nimi. versio 1.0

Uudelleenkäytön jako kahteen

Tämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus:

Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla.

812347A Olio-ohjelmointi, 2015 syksy 2. vsk. IX Suunnittelumallit Proxy, Factory Method, Prototype ja Singleton

Menetelmäraportti Ohjelmakoodin tarkastaminen

Alkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS Ti Kandidaatintyö ja seminaari

TEKNINEN OHJE VAIHTOTASETIETOJEN TIEDOSTORAPORTOINTIIN EXCEL-TYÖKIRJALLA

TYPO3 - Open Source Enterprise CMS

ZENworks Application Virtualization 11

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

OTM-HANKKEEN SIDOSRYHMÄSEMINAARI

Ohjelmistoarkkitehtuurit harjoitustyö 2008

Lomalista-sovelluksen määrittely

13/20: Kierrätys kannattaa koodaamisessakin

Kansallinen ASPAtietojärjestelmä

Visma Fivaldi. Ohjeet Java web startin ja HTML5-työkalun aktivointiin

Transkriptio:

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, termit ja lyhenteet...4 1.4. Viitteet...4 1.5. Yleiskatsaus dokumenttiin...4 2. Yleiskuvaus...6 2.1. Sovellusalueen kuvaus...6 2.2. Järjestelmän liittyminen ympäristöönsä...6 2.3. Laitteistoympäristö...6 2.4. Ohjelmistoympäristö...6 3. Arkkitehtuurin kuvaus...7 3.1. Suunnitteluperiaatteet...7 3.2. Tietokanta-arkkitehtuuri...7 3.3. Ohjelmistoarkkitehtuurit, moduulit ja prosessit...7 4. Luokkien kuvaukset...8 4.1. MPEGContainer...8 4.1.1. Yleiskuvaus...8 4.1.2. Rajapinnat ja liittymät...8 4.1.3. Rakenne ja toteutus...8 4.1.4. Virheenkäsittely...9 4.2. MPEGFile...9 4.2.1. Yleiskuvaus...9 4.2.2. Rajapinnat ja liittymät...9 4.2.3. Rakenne ja toteutus...9 4.2.4. Virheenkäsittely...9 4.3. CoordinateMark...9 4.3.1. Yleiskuvaus...9 4.3.2. Rajapinnat ja liittymät...9 4.3.3. Rakenne ja toteutus...9 4.3.4. Virheenkäsittely...9 4.4. RectangleCoordinateMark...9 4.4.1. Yleiskuvaus...9 4.4.2. Rajapinnat ja liittymät...9 4.4.3. Rakenne ja toteutus...10 4.4.4. Virheenkäsittely...10 4.5. EllipseCoordinateMark...10 4.5.1. Yleiskuvaus...10 4.5.2. Rajapinnat ja liittymät...10 4.5.3. Rakenne ja toteutus...10 4.5.4. Virheenkäsittely...10 5. Erityiset tekniset ratkaisut...11 Toiminnallinen määrittely: Editori 2

5.1. MPEG-2-videon käsittely...11 6. Hylätyt ratkaisuvaihtoehdot...12 Versio Päiväys Tekijä Kuvaus 0.1 11.12.01 Tuomas Lindström Alustava luonnos Toiminnallinen määrittely: Editori 3

1. Johdanto 1.1. Tarkoitus ja kattavuus Tämän dokumentin tarkoituksena on määritellä editorin toiminnallisen määrittelyn mukaisten toimintojen teknisen toteutuksen. Järjestelmän muista osista tehdään erilliset tekniset määrittelyt. 1.2. Tuote ja ympäristö Tuote on kuvattu toiminnalisen määrittelyn kohdassa 1.2 [2]. 1.3. Määritelmät, termit ja lyhenteet Koko projektiin liittyvät määritelmät, termit ja lyhenteet on esitetty erillisessä liitteenä olevassa dokumentissa. 1.4. Viitteet Tekninen määrittely perustuu seuraaviin muihin projektiryhmän tuottamiin dokumentteihin: [1] MHP Esitutkimus [2] Toiminnallinen määrittely: editori 0.5, 5.12.2001 1.5. Yleiskatsaus dokumenttiin Dokumentti jakautuu seitsemään eri lukuun. Ensimmäinen luku on johdanto ja se kuvaa dokumentin tarkoitusta ja laajuutta sekä esittelee tuotteen pääpiirteittäin. Toinen luku kuvaa tuotteen käyttö-, laitteisto- ja ohjelmistoympäristön. Kolmannessa luvussa käsitellään editorin arkkitehtuuria ja suunnittelumenetelmiä. Neljännessä luvussa käydään luokkakohtaisesti läpi editorin tekninen toteutus. Viides luku kuvaa editorissa käytetyt erityiset tekniset ratkaisut. Kuudenteen lukuun on dokumentoitu hylätyt ratkaisuvaihtoehdot perusteluineen. Toiminnallinen määrittely: Editori 4

Toiminnallinen määrittely: Editori 5

2. Yleiskuvaus 2.1. Sovellusalueen kuvaus Sovellusalue on kuvattu erillisessä dokumentissä [1]. 2.2. Järjestelmän liittyminen ympäristöönsä Editori toimii täysin itsenäisenä sovelluksena. 2.3. Laitteistoympäristö Laitteistoympäristö on kuvattu dokumentissa Toiminnallinen määrittely kohdassa 7.2 [2]. 2.4. Ohjelmistoympäristö Editori toimii MS Windows ympäristössä, johon on asennettu JDK 1.2.2. Toiminnallinen määrittely: Editori 6

3. Arkkitehtuurin kuvaus 3.1. Suunnitteluperiaatteet Suunnittelu perustuu oliosuunnitteluun, koska Editorin ohjelmointikielenä on Java. Lähtökohtana suunittelussa on hyödyntää Javan valmiita kirjastoja mahdollisimman tehokkaasti. Modulaarisuus on toinen suunnittelun perusta. Selkeiden rajapintojen käyttö toteutuksessa helpottaa eri osien itsenäistä toteuttamista ja yhteen liittämistä. 3.2. Tietokanta-arkkitehtuuri Editori tallentaa koordinaattimerkinnät XML-muotoiseen tiedostoon. 3.3. Ohjelmistoarkkitehtuurit, moduulit ja prosessit MPEGContainer CoordinateMark MPEGFile MPEGDecoder Java Native Interface Mark Dekooderi C-ohjelma Kuva 3.1: Editorin arkkitehtuuri, moduulit ja rajapinnat. Editori koostuu käyttöliittymästä, joka näyttää videokuvan, jonka päälle koordinaattimerkintöjä voidaan lisätä ja erillisestä MPEG-2 dekooderista, joka purkaa MPEG-2 muotoista videokuvaa. Editori käyttöliittymineen toteutetaan Javalla ja dekooderina on valmis C-kielinen dekooderiohjelma. Editori käyttää dekooderia Java Native Interfacea (JNI) käyttämällä. (Kuva 3.1) Toiminnallinen määrittely: Editori 7

4. Luokkien kuvaukset Kuva 4.1: Luokkakaavio Seuraavassa on kuvattu editorin tekninen toteutus luokkatasolla. Editorin luokkakaavio on kuvassa 4.1. MPEG-2 dekooderin käyttö on kuvattu luvussa 5. Erityiset tekniset ratkaisut. 4.1. MPEGContainer 4.1.1. Yleiskuvaus MPEGContainer on editorin keskeisin luokka. Se toteuttaa editorin työskentelyalueen piirtämällä valitun videokuvan ja sen siältämät koordinaattimerkinnät. 4.1.2. Rajapinnat ja liittymät MPEGContainer laajentaa java.awt.container-luokan ja toteuttaa rajapinnat: java.awt.event.actionlistener, java.awt.event.mouselistener ja java.awt.event.mousemotionlistener. MPEGContainer keskustelee MPEG-2 tiedostoa purkavan moduulin kanssa käyttäen MPEGFile-rajapintaa. Koordinaattimerkinnät liitetään MPEGContainer-luokkaan CoordinateMarkrajapinnan kautta. 4.1.3. Rakenne ja toteutus MPEGContainer perii java.awt.container-luokan. Container-olio voi sisältää useita java.awt.component-olioita ja tätä ominaisuutta MPEGContainer käyttää hyväksi. MPEGContainer lukee MPEGFile-rajapinnan yli java.awt.image-tyyppisen kuvan, joka piiretään ruudulle. Kuvaan liittyvät Toiminnallinen määrittely: Editori 8

koordinaattimerkinnät luetaan XML-tiedostosta taulukkoon ja ne piirretään ruudulle. 4.1.4. Virheenkäsittely 4.2. MPEGFile 4.2.1. Yleiskuvaus MPEGFile on rajapinta, jonka läpi MPEGContainer-luokka keskustelee MPEG-2 tiedostoa purkavan moduulin. 4.2.2. Rajapinnat ja liittymät MPEGFile on rajapinta, joka edustaa MPEG-2 tiedostoa. 4.2.3. Rakenne ja toteutus Rajapinta määrittelee toteutettaviksi metodeiksi tiedoston lataamisen, tietyn videon kohdan etsimisen, kuvan palauttamisen java.awt,image-tyyppisenä ja kuvan koon palauttamisen. 4.2.4. Virheenkäsittely 4.3. CoordinateMark 4.3.1. Yleiskuvaus Rajapinta erilaisille koordinaattimerkinnöille. 4.3.2. Rajapinnat ja liittymät CoordinateMark on rajapinta, joka edustaa koordinaattimerkintää. 4.3.3. Rakenne ja toteutus Rajapinta määrittelee toteutettaviksi metodeiksi koordinaattimerkin piirtämisen ja tarkistuksen syötetyn koordinaatin kuulumisesta koordinaattimerkinnän alueeseen. 4.3.4. Virheenkäsittely 4.4. RectangleCoordinateMark 4.4.1. Yleiskuvaus Nelikulmion muotoinen koordinaattimerkintä. 4.4.2. Rajapinnat ja liittymät RectangleCoordinateMark toteuttaa CoordinateMark-rajapinnan. Toiminnallinen määrittely: Editori 9

4.4.3. Rakenne ja toteutus 4.4.4. Virheenkäsittely 4.5. EllipseCoordinateMark 4.5.1. Yleiskuvaus Ellipsin muotoinen koordinaattimerkintä. 4.5.2. Rajapinnat ja liittymät EllipseCoordinateMark toteuttaa CoordinateMark-rajapinnan. 4.5.3. Rakenne ja toteutus 4.5.4. Virheenkäsittely Toiminnallinen määrittely: Editori 10

5. Erityiset tekniset ratkaisut 5.1. MPEG-2-videon käsittely MPEG-2-tiedostoa luetaan ja puretaan C-kielisessä erillisessä dekooderiohjelmassa, jota käytetään Java Native Interfacen yli. Java-luokka MPEGDecoder toteuttaa MPEGFile-rajapinnan käyttäen JNI-metodeja, jotka ovat toteutettu C-kielellä dekooderi-ohjelmaan. Toiminnallinen määrittely: Editori 11

6. Hylätyt ratkaisuvaihtoehdot Toiminnallinen määrittely: Editori 12