KIMMO YLI-ROHDAINEN Sääaseman selainkäyttöliittymä
|
|
- Ahti Mäkelä
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 KIMMO YLI-ROHDAINEN Sääaseman selainkäyttöliittymä Kandidaatintyö Tarkastaja: Mikko Salmenperä
2 II TIIVISTELMÄ TAMPEREEN TEKNILLINEN YLIOPISTO Automaatiotekniikan koulutusohjelma KIMMO YLI-ROHDAINEN: Sääaseman selainkäyttöliittymä Kandidaatintyö, 20 sivua Helmikuu 2011 Pääaine: Automaation tietotekniikka Tarkastaja: Mikko Salmenperä Avainsanat: sääasema, käyttöliittymä, HTML5, AJAX Tampereen Teknillisen Yliopiston systeemitekniikan laitoksella on Vaisala Rosa - sääasema mittaamassa lämpötilaa, tuulen nopeutta ja suuntaa, sademäärää sekä ilmankosteutta. Tässä kandidaatintyössä kehitetään sääasemaa varten uusi dynaaminen selainkäyttöliittymä, joka mahdollistaa sääaseman mittaustulosten tarkkailun. Työssä käytettäviä toteutustekniikoita ovat muun muassa Java, AJAX-tekniikat, HTML5 ja JavaScript. Työssä määritellään ensin vaatimukset toteutettavan selainkäyttöliittymän ulkonäölle ja toiminnallisuudelle. Seuraavaksi esitellään suunnitelma sovelluksen arkkitehtuurille, rakenteelle ja toiminnalle. Viimeiseksi kuvataan toteutuksen keskeiset ratkaisut ja tutustutaan lyhyesti toteutuksessa käytettyyn kehitteillä olevaan HTML5-spesifikaatioon.
3 III SISÄLLYS 1. Johdanto Vaatimusmäärittely Käyttötapaukset KT1: Uusimpien mittausten hakeminen KT2: Kuvaajien näyttämän aikavälin vaihtaminen KT3: Kuvaajan suurentaminen KT4: Kuvaajan tallentaminen Käyttöliittymä Suunnittelu Sovellusarkkitehtuuri Rakenne Toiminta Toteutus Kehitysympäristö Toteutuksen keskeiset ratkaisut HTML Yhteenveto Lähteet
4 IV TERMIT JA LYHENTEET Termi Selitys AJAX Asynchronous JavaScript And XML. Kokelma tekniikoita, joiden avulla luodaan vuorovaikutteisia websovelluksia. Apache Tomcat Java Servlet ja JavaServer Pages tekniikoita käyttävä palvelin. API Application Programming Interface. Ohjelmointirajapinta. DAO Data Access Object. Ohjelmiston olio, joka toteuttaa tiedon hakemisen tietokannasta. GPS Global Positioning System. Satelliittipaikannusjärjestelmä. Hibernate ORM-kirjasto Java-ohjelmointikielelle. HTML Hyper Text Markup Language. Websivujen kuvauskieli. HTML5 HTML:n uusin spesifikaatio [13]. HTTP Hypertext Transfer Protocol. Selaimien ja WWWpalvelimien käyttämä tiedonsiirtoprotokolla. Java Ohjelmointikieli ja ohjelmistoalusta. JavaScript Selaimessa ajettava ohjelmointikieli. JSON JavaScript Object Notation. Kevyt tekstipohjainen tiedonsiirtomuoto [5]. JSP JavaServer Pages, staattista ja dynaamista sisältöä HTTP-vastaukseen yhdistelevä tekniikka [6]. MySQL Tietokannan hallintajärjestelmä. ORM Object Relational Mapping. Olio-relaatio mallinnus. PNG Portable Network Graphics. Häviötön bittikarttagrafiikan tallennusformaatti. RGraph JavaScript-kirjasto kuvaajien piirtämiseen HTML5:n canvas-elementille. servletti Java Servlet, HTTP-vastaukseen dynaamista sisältöä tuottava Java-luokka [9]. UML Unified Modeling Language. Standardi graafinen mallinnuskieli ohjelmistokehitykseen. W3C World Wide Web Consortium. W3C kehittää webin teknologioita. WHATWG Web Hypertext Application Technology Working Group. Keskittyy HTML-standardin kehittämiseen.
5 1 1. JOHDANTO Tampereen Teknillisen Yliopiston systeemitekniikan laitoksella on tutkimusprojektissa (Vaisala Rosa -sääaseman etäkäyttö Telit GE863-GPS moduulin avulla) toteutettu sääpalvelu www-sovelluksena. Työssä käytettiin Vaisala Rosa -sääasemaa, jolla voidaan mitata lämpötilaa, tuulen nopeutta ja suuntaa, sademäärää sekä ilmankosteutta. Lisäksi sääasemassa on GPS-anturi (Global Positioning System), jolta saadaan sääaseman sijainnin koordinaatit. Sovellus tallentaa sääasemalta saamansa mittaustulokset MySQL-tietokantaan. Sovelluksen selainkäyttöliittymä näyttää uusimman mittauksen lisäksi historiakuvaajat edellisten 24 tunnin ja viikon ajalta. [10] Tämän kandidaatintyön tarkoituksena on määritellä, suunnitella ja toteuttaa tälle sääasemalle uusi ja parempi selainpohjainen käyttöliittymä. Mittaustulosten hakemista ja tallentamista ei ole tarkoitus muuttaa, vaan uuden käyttöliittymän tulee hakea mittaustulokset olemassa olevan järjestelmän tietokannasta. Koska nykyinen käyttöliittymä näyttää uusimman mittauksen lisäksi historiakuvaajat vain edellisten 24 tunnin ja viikon ajalta, tulee toteutettavan käyttöliittymän mahdollistaa mittaustulosten tarkastelu myös pidemmiltä ajanjaksoilta. Työn tavoitteena on myös tehdä uudesta käyttöliittymästä dynaamisempi lisäämällä interaktiota. Tärkeimpiä toteutettavia ominaisuuksia ovat kuvaajien suurentaminen, kuvaajien tallentaminen ja kuvaajan esittämän aikavälin valinta. Lisäksi käyttöliittymään lisätään sääaseman sijainnin näyttävä kartta. Käyttöliittymä on tarkoitus toteuttaa niin, että sitä ei ensimmäisen latauskerran jälkeen tarvitse ladata enää uudelleen selaimeen, vaan vain mittaustuloksia ladataan sovelluksen palvelimelta ja ne päivitetään näkyviin käyttöliittymään. Tämä onnistuu, kun totetuksessa käytetään AJAX-tekniikoita (Asynchronous JavaScript And XML). Näin saadaan palvelimen rasitusta vähennettyä ja siten pystytään palvelemaan suurempaa käyttäjäjoukkoa. Työn tavoitteena on myös tutustua HTML5:n (HyperText Markup Language) tarjoamiin uusiin ominaisuuksiin ja käyttää osaa niistä käyttöliittymän toteutuksessa. HTML on standardoitu kuvauskieli, jota käytetään erityisesti webbisivujen kuvaukseen. HTML5 on seuraava versio standardista ja se on vielä keskeneräinen. [13] Tämän dokumentin luvussa 2 esitetään vaatimukset toteutettavalle sovelluksel-
6 1. Johdanto 2 le. Seuraavaksi luvussa 3 esitellään suunnitelma sovelluksen arkkitehtuurille, rakenteelle ja toiminnallisuudelle. Suunnitelman kuvaamiseen käytetään UML:n (Unified Modeling Language) mukaisia kaavioita. UML on graafinen mallinnuskieli, joka on tarkoitettu käytettäväksi ohjelmistokehityksessä. Tämän jälkeen luvussa 4 kuvataan sovelluksen toteuttamiseen käytetyt työkalut ja keskeiset ratkaisut. Lisäksi tässä luvussa tutustutaan HTML5-standardiin. Lopuksi tehdään yhteenveto toteutetusta sovelluksesta luvussa 5.
7 3 2. VAATIMUSMÄÄRITTELY Tässä luvussa esitellään toteutettavalle sovellukselle asetettavat vaatimukset. Sovelluksen toimintoja kuvataan käyttötapauksilla luvussa 2.1. Sovelluksen käyttöliittymää käsitellään luvussa Käyttötapaukset Sovelluksen toiminnot kuvataan käyttötapauksilla. Kaikki käyttötapaukset on esitetty UML:n mukaisessa käyttötapauskaaviossa kuvassa 2.1. Kuva 2.1: Sovelluksen käyttötapauskaavio.
8 2. Vaatimusmäärittely KT1: Uusimpien mittausten hakeminen Suorittajat: Käyttäjä Esiehdot: Sääaseman käyttöliittymä on onnistuneesti latautunut käyttäjän selaimeen. Kuvaus: Käyttäjä painaa Update -nappia. Näkyviin päivittyvät uusimmat mittaustulokset. Uusimmat mittaustulokset haetaan myös automaattisesti 5 minuutin välein. Poikkeukset: Jos mittaustuloksien hakeminen palvelimelta epäonnistuu, ilmoitetaan virheestä käyttäjälle viestilaatikolla. Lopputulos: Näkyvissä ovat uusimmat mittaustulokset KT2: Kuvaajien näyttämän aikavälin vaihtaminen Suorittajat: Käyttäjä Esiehdot: Sääaseman käyttöliittymä on onnistuneesti latautunut käyttäjän selaimeen. Kuvaus: Käyttäjä painaa haluamaansa aikaväliä vastaavaa nappia. Aikavälivaihtoehdot ovat vuorokausi, viikko, kuukausi ja vuosi. Kaikki kuvaajat päivittyvät näyttämään mittauksia valitulta aikaväliltä. Poikkeukset: Jos mittaustuloksien hakeminen palvelimelta epäonnistuu, ilmoitetaan virheestä käyttäjälle viestilaatikolla. Lopputulos: Kaikki kuvaajat näyttävät mittauksia valitulta aikaväliltä KT3: Kuvaajan suurentaminen Suorittajat: Käyttäjä Esiehdot: Sääaseman käyttöliittymä on onnistuneesti latautunut käyttäjän selaimeen. Kuvaus: Käyttäjä avaa kuvaajan kontekstivalikon. Tämä tehdään eri selaimissa eri tavoin, yleensä hiiren vasemmalla tai oikealla napilla. Käyttäjä valitsee kontekstivalikosta toiminnon Zoom. Valittu kuvaaja tulee näkyviin suurennettuna. Kun käyttäjä painaa hiiren nappia uudelleen, kuvaaja palautuu alkuperäisen kokoiseksi. Poikkeukset: - Lopputulos: Kuvaajan suurentamisen ja pienentämisen jälkeen näkymä on samanlainen kuin ennen toiminnon suorittamista.
9 2. Vaatimusmäärittely KT4: Kuvaajan tallentaminen Suorittajat: Käyttäjä Esiehdot: Sääaseman käyttöliittymä on onnistuneesti latautunut käyttäjän selaimeen. Kuvaus: Käyttäjä avaa kuvaajan kontekstivalikon. Tämä tehdään eri selaimissa eri tavoin, yleensä hiiren vasemmalla tai oikealla napilla. Käyttäjä valitsee kontekstivalikosta toiminnon Get PNG. PNG-muotoinen (Portable Network Graphics) kuva valitusta kuvaajasta voidaan tallentaa käyttäjän valitsemaan tiedostoon. Poikkeukset: - Lopputulos: Valittu kuvaaja on tallennettu käyttäjän tietokoneelle PNGmuodossa. 2.2 Käyttöliittymä Sovelluksen käyttöliittymä on selainpohjainen ja siinä on yksi näkymä. Käyttöliittymä toteutetaan käyttäen hyödyksi AJAX-tekniikoita, jotka mahdollistavat käyttöliittymän osien päivittämisen lataamatta koko sivua uudelleen. Tätä hyödynnetään kuvaajien ja mittaustulosten päivittämisessä. Käyttöliittymän hahmotelma on esitetty kuvassa 2.2. Käyttöliittymän yläosan vasemmassa laidassa on esitettynä kaikkien mitattavien suureiden viimeisimmät mittausarvot sekä mittauksien suoritusaika. Näiden alapuolella on nappi, jolla voidaan hakea uusimmat mittaustulokset palvelimelta. Tämä toiminto on kuvattu käyttötapauksessa KT1 luvussa Uudet mittaustulokset haetaan myös automaattisesti 5 minuutin välein. Käyttöliittymän yläosan oikeassa laidassa on kartta. Kartalle on merkitty sääaseman sijainti. Kartan näyttämää aluetta voidaan siirtää, tarkentaa ja loitontaa vapaasti, jolloin kartta päivittyy dynaamisesti eikä koko sivua tarvitse ladata uudelleen. Käyttöliittymän alaosassa ovat ensin napit, joilla voidaan valita kuvaajien näyttämä aikaväli. Kuvaajien näyttämän aikavälin vaihtaminen on kuvattu käyttötapauksessa KT2 luvussa Myös kuvaajien päivittyminen tapahtuu dynaamisesti, eikä koko sivua tarvitse ladata uudelleen. Näiden nappien alapuolella ovat mittausten historiatietoja esittävät kuvaajat. Jokaiselle mitattavalle suurelle on oma kuvaajansa. Kuvaajaa voidaan suurentaa tai se voidaan tallentaa käyttäjän tietokoneelle. Nämä toiminnot on kuvattu käyttötapauksissa KT3 ja KT4 luvuissa ja
10 2. Vaatimusmäärittely 6 Kuva 2.2: Sovelluksen käyttöliittymähahmotelma.
11 7 3. SUUNNITTELU Tässä luvussa esitetään suunnitelma sovelluksen toteuttamiseksi. Järjestelmän rakenteen ja toiminnan havainnollistamiseen käytetään UML:n mukaisia kaavioita, kuten sijoittelukaaviota, luokkakaaviota ja tapahtumasekvenssikaavioita. Ensin kuvataan järjestelmän arkkitehtuuri korkealla tasolla luvussa 3.1. Sitten kuvataan järjestelmän rakenne tarkemmin luvussa 3.2. Lopuksi kuvataan järjestelmän toimintaa luvussa Sovellusarkkitehtuuri Järjestelmä käyttää asiakas-palvelin -arkkitehtuuria. Palvelimen vastuulla on tarvittavien mittaustulosten noutaminen tietokannasta, niiden käsittely ja lähettäminen asiakkaalle. Asiakkaan vastuulla on käyttöliittymän esittäminen, mittaustulosten pyytäminen palvelimelta ja niiden esittäminen käyttäjälle. Käyttöliittymä ja sen toiminnot on kuvattu vaatimusmäärittelyssä luvussa 2. Järjestelmän komponenttien sijoittelu eri laitteille on esitetty järjestelmän sijoittelukaaviossa kuvassa 3.1. Käyttöliittymä toimii asiakaskoneen selaimessa. Tietokanta ja mittaustulosten käsittelystä vastaavat komponentit toimivat palvelinkoneella. Kuva 3.1: Järjestelmän sijoittelukaavio. Järjestelmän palvelin on kerrosarkkitehtuurin mukainen. Kerrosarkkitehtuurissa
12 3. Suunnittelu 8 järjestelmän komponentit sijoitellaan eri kerroksille niiden abstraktiotason mukaan. Ylemmän kerroksen komponentit käyttävät alempien kerrosten alemman abstraktiotason komponentteja omien toimintojensa toteuttamiseen. Kerrosarkkitehtuuri jakaa järjestelmän pienempiin osiin, jotka ovat siten helpommin hallittavia. Kerrosarkkitehtuuri myös rajoittaa komponenttien välisiä riippuvuuksia. [4] Tässä järjestelmässä palvelimen rakenne koostuu kolmesta kerroksesta, jotka ovat ylhäältä alas lueteltuina palvelukerros, tiedonhakukerros ja mallikerros. Kerroksien tarkoitus ja rakenne on kuvattu tarkemmin luvussa 3.2. Järjestelmän tietokanta sijaitsee myös palvelimella. 3.2 Rakenne Palvelimen rakenne on kerrosarkkitehtuurin mukainen ja se on esitetty luokkakaaviossa kuvassa 3.2. Kerrokset ovat ylhäältä alas lueteltuina palvelukerros, tiedonhakukerros ja mallikerros. Seuraavaksi käsitellään kaikkien kerrosten tarkoitus ja rakenne aloittaen alimmalta abstraktiotasolta. Alin kerros on mallikerros. Se pitää sisällään mittauksiin liittyvän kohdealueen mallin. Siihen kuuluvat Weather-, Measurement-, ja MeasurementType-luokat. Weather-luokka kuvaa yhteen mittausjoukkoon liittyvät tiedot kuten aika, paikka ja siihen kuuluvat mittaukset. Measurement-luokka kuvaa yhteen mittaukseen liittyvät tiedot kuten mittausarvon ja mittaustyypin. MeasurementType-luokka kuvaa mittaustyypin ja siihen liittyvän suureen ja yksikön. Kaikki luokat ovat käytettävän tietokantaskeeman mukaisia ja jokaista luokkaa vastaa tietokannassa yksi taulu. Luokat ovat vain tiedon tallentamista varten, eikä niillä ole mitään toiminnallisuutta. Keskimmäinen kerros on tiedonhakukerros. Se vastaa tiedon hakemisesta tietokannasta. Tämän toiminnallisuuden toteuttaa WeatherDao-luokka (Data Access Object), joka on kerroksen ainoa luokka. Tällä luokalla on metodit mittaustyyppien hakemiseen, uusimpien mittausten hakemiseen ja mittausten hakemiseen halutulta aikaväliltä. Tämän kerroksen tarkoituksena on olla ainoa tietokantaa käsittelevä kerros, jolloin muut kerrokset eivät ole riippuvaisia tietokannasta. Tällöin tietokantaa käsittelevä koodi on keskitetty yhteen paikkaan, jolloin tämä koodi ja muutokset siihen ovat helpommin hallittavissa. Ylin kerros on palvelukerros. Se tarjoaa asiakaskomponentin vaatimat palvelut. WeatherNowService- ja WeatherHistoryService-luokat tuottavat nämä palvelut. WeatherNowService-luokka tarjoaa palvelun, jolta asiakas voi pyytää uusimmat mittaustulokset. WeatherHistoryService-luokka tarjoaa palvelun, jolta asiakas voi pyytää mittaustuloksia tietyltä aikaväliltä. Mahdollisia aikavälejä ovat vuorokausi, viikko, kuukausi ja vuosi. Lisäksi kerrokseen kuuluu Serializer-luokka, joka vastaa olioiden serialisoinnista. Oliot on serialisoitava, jotta ne voidaan lähettää teks-
13 3. Suunnittelu 9 Kuva 3.2: Palvelinohjelmiston luokkakaavio. timuodossa verkon yli asiakkaalle. WeatherNowService- ja WeatherHistoryServiceluokat käyttävät tiedonhakukerrosta mittausten hakemiseen ja Serializer-luokkaa niiden serialisointiin. Lisäksi WeatherHistoryService-luokka tekee keskiarvojen laskentaa mittauksilla, jotta verkon yli lähetettävien mittaustulosten määrää voidaan rajoittaa. Muuten mittausten lähettäminen olisi hidasta, kun haettaisiin mittauksia esimerkiksi vuoden ajalta. Asiakas koostuu kolmesta komponentista. Karttakomponentti vastaa käyttöliittymän kartan lataamisesta, alustamisesta ja toiminnasta. Grafiikkakomponentti vastaa käyttöliittymän kuvaajien piirtämisestä ja päivittämisestä. Yhteyskomponentti vastaa mittaustulosten hakemisesta palvelimelta ja niiden käsittelystä. Yhteyskomponentti pyytää mittaustulokset palvelimen tarjoamilta WeatherNowService- ja
14 3. Suunnittelu 10 WeatherHistoryService-palveluilta HTTP-pyyntöinä (HyperText Transfer Protocol). Kuvaajien päivittämiseen yhteyskomponentti käyttää grafiikkakomponenttia. 3.3 Toiminta Palvelimen tärkeimpiä toimintoja ovat uusimpien mittaustulosten hakeminen ja mittaustulosten hakeminen joltain aikaväliltä. Näihin toimintoihin liittyvien tapahtumien kulku on kuvattu tapahtumasekvenssikaavioilla kuvissa 3.3 ja 3.4. Kuva 3.3: Uusimpien mittaustulosten hakeminen palvelimelta. Uusimpien mittaustulosten hakeminen on kuvattu tapahtumasekvenssikaaviolla kuvassa 3.3. Tapahtuma alkaa siitä, kun asiakkaan yhteyskomponentti lähettää HTTP-pyynnön palvelimelle. WeatherNowService-luokka käsittelee pyynnön hakemalla ensin uusimmat mittaukset tietokannasta käyttäen WeatherDao-luokkaa. Seuraavaksi saatu vastaus serialisoidaan Serializer-luokan avulla tekstimuotoon. Sitten serialisoitu vastaus lähetetään asiakkaalle HTTP-vastauksena. Lopuksi asiakkaan yhteyskomponentti päivittää uudet mittaukset näkyviin käyttöliittymään. Tietyn aikavälin mittaustulosten hakeminen on kuvattu tapahtumasekvenssikaaviolla kuvassa 3.4. Tapahtuma alkaa siitä, kun asiakkaan yhteyskomponentti lähettää HTTP-pyynnön palvelimelle. WeatherHistoryService-luokka käsittelee pyynnön hakemalla ensin aikavälin mittaukset tietokannasta käyttäen WeatherDao-luokkaa. Jos mittauksia on liikaa kerralla lähetettäväksi, niin mittauksista lasketaan keskiarvoja lyhyemmiltä aikaväleiltä. Näin saadaan rajoitettua lähetettävien mittausten lukumäärää. Seuraavaksi saadut mittaustulokset serialisoidaan Serializer-luokan avul-
15 3. Suunnittelu 11 Kuva 3.4: Tietyn aikavälin mittaustulosten hakeminen palvelimelta. la tekstimuotoon. Sitten serialisoidut mittaustulokset lähetetään asiakkaalle HTTPvastauksena. Lopuksi asiakkaan yhteyskomponentti ja grafiikkakomponentti päivittävät uudet mittaukset näkyviin käyttöliittymän kuvaajiin.
16 12 4. TOTEUTUS Tässä luvussa kuvataan sovelluksen toteutus. Ensin esitellään työssä käytetty kehitysymparistö luvussa 4.1. Seuraavaksi esitellään työn toteutuksessa käytetyt keskeiset ratkaisut ja kirjastot luvussa 4.2. Lopuksi tutustutaan vielä tarkemmin käyttöliittymän toteutuksessa käytettyyn HTML5:een luvussa Kehitysympäristö Sovelluksen palvelinohjelmisto toteutettiin Java-ohjelmistoalustalle. Javaan kuuluu itse ohjelmointikielen lisäksi laajat luokkakirjastot ja virtuaalikone, jossa ohjelmat ajetaan. Sovelluksen kehitykseen käytettiin avoimen lähdekoodin Eclipse Helios (3.6) -kehitysympäristöä, joka sisältää koodieditorin, kääntäjän ja debuggerin. Eclipse on laajennettavissa lisäosilla, joita onkin saatavilla suuri määrä. Tässä työssä käytettiin Eclipse Web Tools Platform -lisäosaa helpottamaan sovelluksen kehittämistä. Sovelluksen käyttöliittymä toteutettiin HTML5-kuvauskielellä ja selaimessa ajettavalla JavaScript-ohjelmointikielellä. HTML5 on esitelty tarkemmin luvussa 4.3. Myös käyttöliittymän kehittämiseen käytettiin jo mainittua Eclipse-kehitysympäristöä ja erityisesti sen Web Tools Platform -lisäosaa. Käyttöliittymän testaamiseen käytettiin Mozilla Firefox -selainta ja sen Firebug-lisäosaa, joka mahdollisti suoritettavan JavaScript-koodin debuggaamisen. Palvelinohjelmistoa ajetaan Apache Tomcat 6 -palvelimessa, joka tukee Javan servlettejä ja JSP-teknologiaa (JavaServer Pages). Servletti on Java-luokka, joka käsittelee HTTP-pyyntöjä ja tuottaa HTTP-vastauksen dynaamisesti [9]. JSP-teknologia on menetelmä HTML-sivun tuottamiseen yhdistelemällä staattista sisältöä ja dynaamisesti Java-koodilla tuotettua sisältöä [6]. Ohjelmistoa voidaan ajaa ja debugata Tomcat-palvelimessa suoraan Eclipse-kehitysympäristön avulla. Jo olemassa oleva järjestelmä tallentaa mittaustulokset MySQL-relaatiotietokantaan, joten myös nyt toteutettu järjestelmä käyttää sitä. Tarvittaessa käytettävää tietokannan hallintajärjestelmää voitaisiin kuitenkin vaihtaa helposti 4.2 Toteutuksen keskeiset ratkaisut Sovelluksen näyttämät mittaustulokset haetaan relaatiotietokannasta. Nämä relaatiot muunnetaan luvussa 3.2 esitellyn mallikerroksen mukaisiksi MeasurementType-,
17 4. Toteutus 13 Weather-, ja Measurement-luokkien olioiksi. Tähän olio-relaatio muunnokseen ja tietokantahakujen suorittamiseen käytetään Hibernate-kirjaston versiota Hibernate on ORM-kirjasto (Object Relational Mapping) Java-ohjelmointikielelle. Tietokannan taulujen ja mallikerroksen luokkien väliset vastaavuudet kuvataan XML-tiedostoihin, joiden mukaan Hibernate osaa tehdä olio-relaatio muunnokset. [7] Luvussa 3.2 esiteltyyn tiedonhakukerrokseen kuuluva WeatherDao-luokka vastaa tarvittavien tietokantakyselyiden suorittamisesta. Se suorittaa tietokantakyselyt käyttäen Hibernate-kirjaston tarjoamaa rajapintaa ja tuloksena saadaan mallikerroksen mukaisia olioita. Koska suurien tietomäärien hakeminen tietokannasta ja muuntaminen olioiksi on melko hidasta, tallennetaan pitempien aikavälien mittaustulokset muistiin. Seuraavilla kerroilla tulokset ovat nopeasti saatavissa muistista. Tulokset haetaan uudelleen tietokannasta kerran vuorokaudessa, jotta saadaan aina uudetkin mittaukset mukaan tuloksiin. Palvelukerroksen WeatherNowService- ja WeatherHistoryService-luokat toteutettiin Javan servletteinä, joita käyttöliittymä käyttää HTTP-pyynnöillä. Nämä luokat hakevat tarvittavat mittaukset tietokannasta WeatherDao-luokan metodeilla. Saadut mittaukset serialisoidaan Serializer-luokan avulla JSON-muotoon (JavaScript Object Notation) ennen kuin ne lähetetään käyttöliittymälle. JSON on kevyt tekstimuotoinen tiedonsiirtomuoto, joka sopii käytettäväksi erityisesti JavaScript-ohjelmointikielen kanssa [5]. Serialisointiin Serializer-luokka käyttää Flexjson kirjastoa [1]. Käyttöliittymä toteutettiin yhtenä JSP-sivuna, joka tuottaa HTML5-dokumentin. Sen yläosan vasemmassa laidassa on tietokannasta haettujen viimeisimpien mittausten tiedot. Yläosan oikeassa laidassa on interaktiivinen kartta, johon on merkitty sääaseman sijainti. Kartta toteutettiin Google Maps JavaScript API V3 - ohjelmointirajapinnan ja siihen liittyvän JavaScript-kirjaston avulla [8]. Tämä mahdollisti helpon ja nopean tavan kartan upottamiseen sivulle. Käyttöliittymän latauksen yhteydessä suoritetaan JavaScript-koodi, joka alustaa kartan toimintakuntoon. Mittausten historiatietoja esittäviä kuvaajia varten käyttöliittymäsivulla on viisi canvas-elementtiä. Canvas-elementti on HTML5:n uusi elementti, joka tarjoaa skripteille bittikartta-alueen, jolle voidaan piirtää grafiikkaa dynaamisesti [13]. Kuvaajien piirtämiseen käytetään RGraph-kirjastoa, joka mahdollistaa erilaisten kuvaajien ja graafien helpon piirtämisen canvas-elementille. Piirtäminen tapahtuu JavaScriptohjelmointikielellä. Tässä työssä käytettiin Scatter chart -tyyppistä kuvaajaa. [3] Käyttöliittymän latauksen jälkeen ajetaan JavaScript-koodi, joka alustaa kuvaajat ja asettaa halutut asetukset. Myöhemmin kuvaajiin päivitetään palvelimelta ladatut mittaustulokset. Koska kuvaajat piirretään vasta käyttäjän selaimessa, on palvelimen rasitus selvästi pienempi. Tämä pienentää sekä tarvittavaa tiedonsiirtokapasiteettiä että laskentatehoa.
18 4. Toteutus 14 RGraph-kirjasto tukee myös kuvaajien kontekstivalikkoon lisättäviä komentoja [3]. Tässä työssä käytettiin komentoja, jotka mahdollistavat kuvaajien suurentamisen sekä tallentamisen PNG-muodossa. Näiden komentojen tarkempi toiminta on kuvattu käyttötapauksissa KT3 ja KT4 luvuissa ja Mittaustulokset ladataan käyttöliittymään AJAX-tekniikalla WeatherNowServiceja WeatherHistoryService-luokkien toteuttamilta servleteiltä HTTP-pyynnöillä. Nämä pyynnöt toteutettiin jquery-kirjaston tarjoamalla getjson()-metodilla [2]. Näin toteutettiin viimeisimpien mittausten päivittäminen käyttöliittymän yläosaan sekä mittaustulosten noutaminen ja piirtäminen kuvaajiin. Nämä toiminnot on kuvattu tarkemmin käyttötapauksissa KT1 ja KT2 luvuissa ja Kuvaajien päivittäminen tehdään tyhjentämällä canvas-elementin sisältö RGraph.Clear-funktiolla, sijoittamalla kuvaajaa vastaavaan muuttujaan uudet piirrettävät pisteet ja piirtämällä kuvaaja uudelleen Draw-funktiolla [3]. Lopputuloksena saadaan luvun 2.2 mukainen käyttöliittymä vaaditulla toiminnallisuudella. Lopullinen käyttöliittymä on esitetty kuvassa 4.1. Käyttöliittymässä on näkyvissä satunnaisesti tuotettua mittausdataa, jota käytettiin sovelluksen testaamiseen. 4.3 HTML5 HTML on standardoitu kuvauskieli, jota käytetään erityisesti webbisivujen rakenteen ja sisällön kuvaukseen. Standardin kehitys pysähtyi pitkäksi aikaa versioon 4, kun sen kehittäjä W3C (World Wide Web Consortium) keskittyi XML-pohjaisiin standardeihin. Kuitenkin vuonna 2004 Apple, Mozilla ja Opera halusivat jatkaa HTML-standardin kehitystä, joten ne aloittivat HTML5:n kehittämisen. Nämä organisaatiot perustivat kehitystyötä varten WHATWG-organisaation (Web Hypertext Application Technology Working Group). Vuonna 2007 myös W3C alkoi kehittää HTML5-standardia, joten nyt nämä kaksi organisaatiota kehittävät sitä yhteistyössä. [13] HTML5 tuo joukon uusia ominaisuuksia standardiin. Uusia elementtejä tulee esimerkiksi dokumentin rakenteen kuvaamiseen, multimedian näyttämiseen ja tiedon visualisointiin. Dokumentin rakenteeseen liittyviä uusia elementtejä ovat esimerkiksi section-, header- ja footer-elementit. Multimediaa varten lisättyjä elementtejä ovat esimerkiksi audio-, video- ja canvas-elementit. Niillä voidaan näyttää selaimessa multimediaa ilman erillisiä plugineita. Lisäksi esimerkiksi progress- ja meter-elementtejä voidaan käyttää tiedon visualisointiin. Myös joitain vanhentuneita elementtejä jätetään uuden standardin ulkopuolelle. Myös lomakkeissa voidaan käyttää monia uusia tietotyyppejä. Nämä mahdollistavat käyttäjän syöttämän tiedon tarkistamisen ennen niiden lähettämistä palvelimelle. Esimerkkejä näistä ovat -, url-, date- ja time-tietotyypit. [12] Lisäksi uusi standardi tuo mukanaan muutamia ohjelmointira-
19 4. Toteutus 15 japintoja, jotka mahdollistavat esimerkiksi videon ja äänen toiston uusien audio- ja video-elementtien kanssa. Drag & Drop API (Application Programming Interface) yhdessä draggable- ja dropzone-elementtien kanssa mahdollistaa vedä ja pudota toiminnallisuuden. [13] Tässä työssä käytettiin canvas-elementtiä kuvaajien piirtämiseen. Sillä merkitään tietyn kokoinen bittikartta-alue, jolle voidaan dynaamisesti piirtää grafiikkaa. Alueen koko valitaan halutuksi width- ja height-attribuuteilla. [13] Alueelle voidaan piirtää monipuolisen JavaScript-ohjelmointirajapinnan avulla. Tämä ohjelmointirajapinta tarjoaa metodit muun muassa suorakulmioiden, viivojen ja erilaisten käyrien piirtämiseen. Piirtää voidaan erilaisilla viivanleveyksillä, väreillä ja varjoilla. Koska piirtäminen tapahtuu JavaScript-ohjelmointikielellä, voidaan piirrettyä kuvaa muuttaa esimerkiksi käyttäjän syötteiden perusteella tai ajan kuluessa. Tämä mahdollistaa interaktiiviset sovellukset ja animaatiot. Rajapinta tukee myös piirretyn alueen muuntamista PNG-kuvaksi. [11] Koska HTML5-spesifikaatio on tällä hetkellä (helmikuussa 2011) vielä luonnosvaiheessa (Working Draft), tulee siihen vielä suuriakin muutoksia. Tästä huolimatta monet suosituimmista selaimista tukevat ainakin joitakin uusia ominaisuuksia. Kaikkien selainten HTML5-tuki on vielä hyvin puutteellista, mutta ne päivittyvät nopeasti tuoden tukea uusille elementeille ja ominaisuuksille.
20 4. Toteutus 16 Kuva 4.1: Sovelluksen käyttöliittymä.
21 17 5. YHTEENVETO Tässä kandidaatintyössä määriteltiin, suunniteltiin ja toteutettiin sääasemalle uusi selainpohjainen käyttöliittymä. Käyttöliittymälle asetettuja tavoitteita olivat muun muassa interaktiivisuus, dynaamisuus, AJAX-tekniikoiden käyttö, kuvaajien suurentaminen ja tallentaminen sekä historiakuvaajien näyttämän aikavälin valinta. Sovellus määriteltiin kuvaamalla vaadittu toiminnallisuus käyttötapauksin. Lisäksi määriteltiin käyttöliittymään kuuluvat elementit ja niiden sijainnit käyttöliittymäsivulla. Sovelluksen suunniteltu arkkitehtuuri, rakenne ja toiminta kuvattiin UML:n mukaisilla luokka-, sijoittelu- ja tapahtumasekvenssikaavioilla. Sovelluksen arkkitehtuurissa hyödynnettiin asiakas-palvelin -mallia ja kerrosarkkitehtuuria. Sovelluksen kehitystyö tehtiin Eclipse-kehitysympäristössä. Sovelluksen palvelinohjelmisto toteutettiin Javalla ja sitä ajetaan Apache Tomcat -palvelimella. Käyttöliittymän totetuksessa käytettiin HTML5-kuvauskieltä, erityisesti sen canvas-elementtiä, sekä JavaScript-ohjelmointikieltä. Lisäksi HTML5-kuvauskielen uudet ominaisuudet esiteltiin lyhyesti. Havaittiin selaimien HTML5-tuen olevan tällä hetkellä vielä puutteellinen, mutta tärkeimmät ominaisuudet, kuten canvas-elementti, ovat jo hyvin tuettuina. Sovelluksen kehittämisessä käytettiin useita kolmannen osapuolen kirjastoja, sekä palvelinohjelmistossa että käyttöliittymässä. Palvelinohjelmistojen Java-kirjastot ja -tekniikat ovat nykyään vakiintuneita, hyvin dokumentoituja ja helppokäyttöisiä. AJAX-tekniikoiden käyttö on myös nykyään helppoa, sillä monet vakiintuneet JavaScript-kirjastot helpottavat kehittämistä. Erityisesti tässä työssä käytetty jquery-kirjasto tarjoaa helppokäyttöiset funktiot AJAX-kutsujen tekemiseen. JQuery-kirjasto ottaa myös huomioon selainten erilaisuuden, jolloin kehittäjän ei tarvitse kirjoittaa koodia monelle selaimelle erikseen. HTML5:n ja canvas-elementin käyttöä helpottavia kirjastoja löytyy myös, mutta niiden suurimpina ongelmina ovat keskeneräisyys ja muuttuvat rajapinnat. Ne kyllä helpottavat huomattavasti grafiikan piirtämistä, kun kehittäjän ei tarvitse piirtää kaikkia kuvioita ja kuvaajia itse alusta lähtien. Tässä työssä kuvaajien piirtämiseen käytetty RGraph-kirjasto päivittyi sovelluksen kehitysaikana moneen kertaan saaden korjauksia ja uusia ominaisuuksia. Sillä on myös erittäin hyvä dokumentaatio, joka sisältää monia esimerkkejä kirjaston käytöstä. Määritelty ja suunniteltu sovellus toteutettiin onnistuneesti. Kaikki sovellukselle
22 5. Yhteenveto 18 asetetut tavoitteet ja vaatimukset saavutettiin ja toiminnot toteutettiin. Sovelluksen heikkoudeksi havaittiin tietokantahakujen ja mittaustulosten käsittelyn hitaus, kun mittaustuloksia haettiin pitkältä aikaväliltä. Myös sovelluksen muistinkulutus oli näissä tapauksissa melko suurta.tämä ongelma pystyttiin kuitenkin osittain kiertämään tallentamalla hitaiden tietokantahakujen tulokset muistiin, josta ne voitiin lukea seuraavilla kerroilla nopeasti. Myöskään käyttöliittymän ulkoasuun ei keskitytty juurikaan, joten se jäi melko karuksi. Siinä on aihetta jatkokehitykselle. AJAX-tekniikoiden ja HTML5:n yhteiskäytöllä saatiin käyttöliittymästä dynaaminen, nopea ja mukava käyttää. Toisaalta saatiin myös siirrettyä laskentakuormaa palvelimelta käyttäjän selaimelle, kun siirretäänkin enimmäkseen vain mittaustuloksia palvelimelta selaimeen kuvatiedostojen sijaan ja kuvaajat piirretäänkin vasta selaimessa. Täten pystytään palvelemaan suurempaa käyttäjäjoukkoa samoilla resursseilla.
23 19 LÄHTEET [1] Flexjson Documentation, Viitattu Saatavissa: flexjson.sourceforge.net/. [2] jquery Documentation, Viitattu Saatavissa: jquery.com/main_page. [3] RGraph Documentation, Viitattu Saatavissa: rgraph.net/docs/index.html. [4] Frank Buschmann, Regine Meunier, Hans Rohner, Peter Sommerlad, and Michael Stal. Pattern-Oriented Software Architecture, Volume 1: A System of Patterns. John Wiley & Sons, Chichester, UK, p. [5] Douglas Crockford. RFC4627: JavaScript Object Notation, Viitattu Saatavissa: [6] Pierre Delisle, Jan Luehe, and Mark Roth. JavaServer Pages Specification Version 2.1, Viitattu Saatavissa: communityprocess/final/jsr245/index.html. [7] Gavin King and Christian Bauer and Max Rydahl Andersen and Emmanuel Bernard and Steve Ebersole. Hibernate Reference Documentation, Viitattu Saatavissa: reference/en-us/pdf/hibernate_reference.pdf. [8] Google. Google Maps JavaScript API V3 Documentation, Viitattu Saatavissa: javascript/. [9] Rajiv Mordani. Java Servlet Specification Version 3.0, Viitattu Saatavissa: index.html. [10] Mikko Salonen. Vaisala Rosa -sääaseman etäkäyttö Telit GE863-GPS moduulin avulla. Technical report, Tampere University of Technology, [11] W3C. HTML Canvas 2D Context, Viitattu Saatavissa: http: // [12] W3C. HTML5 differences from HTML4, Viitattu Saatavissa:
24 LÄHTEET 20 [13] W3C. HTML5 Specification, Viitattu Saatavissa:
Projektinhallintaa paikkatiedon avulla
Projektinhallintaa paikkatiedon avulla Tampereen Teknillinen Yliopisto / Porin laitos Teemu Kumpumäki teemu.kumpumaki@tut.fi 25.6.2015 1 Paikkatieto ja projektinhallinta Paikkatiedon käyttäminen projektinhallinnassa
LisätiedotAJAX-konsepti AJAX. Asynkronisuus. Nykyisten web-ohjelmien ongelmia. Asynchronous JavaScript And XML
AJAX-konsepti AJAX Asynchronous JavaScript And XML Viimeisin muoti-ilmiö web-ohjelmoinissa, termi Ajax tuli käyttöön vuoden 2005 aikana Joukko teknologioita, joiden avulla voidaan toteuttaa uudenlaisen
LisätiedotT-111.361 Hypermediadokumentin laatiminen. Sisältö. Tavoitteet. Mitä on www-ohjelmointi? Arkkitehtuuri (yleisesti) Interaktiivisuuden keinot
T-111.361 Hypermediadokumentin laatiminen -Ohjelmointi Peruskäsitys www-ohjelmoinnin kentästä Tekniikat interaktiivisuuden toteuttamiseen tekniikat tekniikat Tietokannat Juha Laitinen TKK/TML juha.laitinen@hut.fi
LisätiedotOhjelmistojen mallintamisen ja tietokantojen perusteiden yhteys
Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys Tällä kurssilla on tutustuttu ohjelmistojen mallintamiseen oliomenetelmiä ja UML:ää käyttäen Samaan aikaan järjestetyllä kurssilla on käsitelty
LisätiedotUutisjä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ätiedot582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus
582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus Sisältö Mikä on web-sovellus? Selaimen rooli web-sovelluksessa Palvelimen rooli web-sovelluksessa Aineistopyynnöt Tiedon välittäminen
LisätiedotTietokanta.java Luokka tarjoaa välineet tietokannan lukemiseen. Haetuista tiedoista muodostetaan kurssi- ja opetus-olioita.
Arkkitehtuurikuvaus Käytössä olevat java-luokat: Kansio: /WEB_INF/classes/ - käännetyt luokat Kansio: /WEB_INF/src/ - lähdekoodi custom_pojos: Kurssi.java Java-luokka, jonka sisältö vastaa tietokannassa
LisätiedotJärjestelmäarkkitehtuuri (TK081702)
Järjestelmäarkkitehtuuri (TK081702) yleistyvät verkkopalveluissa Youtube Google... Avaavat pääsyn verkkopalvelun sisältöön. Rajapintojen tarjoamia tietolähteitä yhdistelemällä luodaan uusia palveluja,
LisätiedotArkkitehtuurikuvaus. 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ätiedotJärjestelmäarkkitehtuuri (TK081702) AJAX, Asynchronous JavaScript And XML. AJAX, Asynchronous JavaScript And XML
Järjestelmäarkkitehtuuri (TK081702) Ajax 2000-luvun alkuvuosina selainsotien rauhoituttua ohjelmistotalot alkoivat kehittää selainten luoman uuden ohjelmointiympäristön käyttötapoja. Syntyi AJAX (Asynchronous
LisätiedotTekninen suunnitelma - StatbeatMOBILE
Tekninen suunnitelma - StatbeatMOBILE Versio Päivämäärä Henkilö Kuvaus 1.0 13.12.2013 Pöyry Alustava rakenne ja sisältö 1.1 22.12.2013 Pöyry Lisätty tekstiä ilmoituksiin, turvallisuuteen ja sisäiseen API:in
LisätiedotJWT 2016 luento 11. to 21.4.2016 klo 14-15. Aulikki Hyrskykari. PinniB 1097. Aulikki Hyrskykari
JWT 2016 luento 11 to 21.4.2016 klo 14-15 Aulikki Hyrskykari PinniB 1097 1 Viime luennolla o AJAX ja JSON, harjoitustyön tehtävänanto, vierailuluento avoimesta datasta Tänään o APIt rajapinnoista yleisesti
LisätiedotELM GROUP 04. Teemu Laakso Henrik Talarmo
ELM GROUP 04 Teemu Laakso Henrik Talarmo 23. marraskuuta 2017 Sisältö 1 Johdanto 1 2 Ominaisuuksia 2 2.1 Muuttujat ja tietorakenteet...................... 2 2.2 Funktiot................................
LisätiedotLaajuus 5 op Luennot: 12 x 2t Harjoitukset: 7 viikkoharjoitusta harjoitusten tekemiseen saatavissa apua 2 ryhmää / harjoitus
Laajuus 5 op Luennot: 12 x 2t 11.3.2014 29.4.2014 Harjoitukset: 7 viikkoharjoitusta harjoitusten tekemiseen saatavissa apua 2 ryhmää / harjoitus Lähiopetuksen jäkeen harjoitustyö ja tentti Aulikki Hyrskykari
Lisätiedotwww.solita.fi solita@solita.fi
www.solita.fi solita@solita.fi JAVA-SOVELLUSTEN RAKENTAMINEN INTEGROITUUN YMPÄRISTÖÖN Jarno Peltoniemi Solita Oy 10.5.2005 Aiheet Johdanto Portaalit, portletit Oracle Portal Java-sovelluksen rakentaminen
LisätiedotCopyright Observis Oy All rights reserved. Observis Oy Ville Kanerva, CTO Heikki Isotalus, COO Datasta tietoa
Observis Oy Ville Kanerva, CTO Heikki Isotalus, COO Datasta tietoa Platform Tuotekehityksen haasteita ja ratkaisuja Haaste: Massiivisten tietomäärien hallinta Ratkaisu: Pilvipalvelun skaalautuvuus Haaste:
LisätiedotTekninen suunnitelma - StatbeatMOBILE
Tekninen suunnitelma - StatbeatMOBILE Versio Päivämäärä Henkilö Kuvaus 1.0 13.12.2013 Pöyry Alustava rakenne ja sisältö 1.1 22.12.2013 Pöyry Lisätty tekstiä ilmoituksiin, turvallisuuteen ja sisäiseen API:in
LisätiedotKoskelo-Sovellusprojekti. Vaatimusmäärittely
Koskelo-Sovellusprojekti Vaatimusmäärittely Atte Pulkkis Perttu Lähdesmäki Irene Venäläinen Harri Pitkänen Versio 1.0 Julkinen 9.1.2008 Jyväskylän yliopisto Tietotekniikan laitos Jyväskylä Hyväksyjä Päivämäärä
LisätiedotDigi-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ätiedotKIURU Tietotekniikan sovellusprojekti
KIURU Tietotekniikan sovellusprojekti Toni Hilpinen Marko Koivuniemi Jussi Mäkinen Miika Nurminen DOKUMENTIN NIMI dd.mm.yyyy Jyväskylän yliopisto Tietotekniikan laitos Kiuru-projektin tietoja Tekijät:
LisätiedotKäyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä
www.niksula.cs.hut.fi/~jjkankaa// Demosovelluksen tekninen määrittely v. 0.6 Päivitetty 11.12.2000 klo 20:26 Mickey Shroff 2 (12) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite
LisätiedotAction Request System
Action Request System Manu Karjalainen Ohjelmistotuotantovälineet seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 25.10.2000 Action Request System (ARS) Manu Karjalainen Ohjelmistotuotantovälineet
LisätiedotValppaan 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ätiedotWWW-sivut HTML-kielellä esitettyä hypertekstiaineistoa
WWW ja tietokannat WWW-sivut HTML-kielellä esitettyä hypertekstiaineistoa tekstiä, kuvia, hyperlinkkejä Staattiset sivut kirjoitettu kerran, muuttaminen käsin ongelmana pysyminen ajantasalla Ylläpito hankalaa,
LisätiedotKYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka. Joni Korjala APACHE WWW-PALVELIN Seminaarityö 2012
KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka Joni Korjala APACHE WWW-PALVELIN Seminaarityö 2012 SISÄLLYS 1 JOHDANTO 3 2 WWW-PALVELIMEN TOIMINTA 4 3 OMINAISUUDET
LisätiedotProjektityö: Mobiiliajopäiväkirja. Mikko Suomalainen
Projektityö: Mobiiliajopäiväkirja Mikko Suomalainen 1. Määritelmä Mobiiliajopäiväkirja on kännyköille suunnattu ajopäiväkirja-sovellus. Sovelluksen pääperiaate on toimia automaattisena ajopäiväkirjana.
LisätiedotXPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy
IBM Collaboration Forum ٨.٣.٢٠١١ XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy ٢٠١١ IBM Corporation Domino-sovelluskehitys Nopea kehitysympäristö (Rapid application development,
LisätiedotHarjoitustyö 3: Verkkosivujen toiminnallisuus (JavaScript)
Harjoitustyö 3: Verkkosivujen toiminnallisuus (JavaScript) Kurssin toisessa harjoitustyössä tutustutaan verkkosivujen toiminnallisuuden toteuttamiseen JavaScript:n avulla. Lisäksi käydään läpi verkkosivuston
LisätiedotHTML5 video, audio, canvas. Mirja Jaakkola
HTML5 video, audio, canvas Mirja Jaakkola Video webbisivulla HTML5 mahdollistaa videon lisäämisen webbi-sivuille ilman plugineja. Yleisimmät videoformaatit webissä: Mpeg-4 eli H.264 Ogg Flash Perustuu
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 12.4.2010 T-106.1208 Ohjelmoinnin perusteet Y 12.4.2010 1 / 34 Graafiset käyttöliittymät Tähän asti kirjoitetuissa ohjelmissa on ollut tekstipohjainen käyttöliittymä.
LisätiedotAlkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS Ti Kandidaatintyö ja seminaari
LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS Ti5004000 - Kandidaatintyö ja seminaari Alkuraportti Avoimen lähdekoodin käyttö WWW-sovelluspalvelujen toteutuksessa Lappeenranta, 4.6.2007,
LisätiedotTämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus:
Dokumentaatio, osa 1 Tehtävämäärittely Kirjoitetaan lyhyt kuvaus toteutettavasta ohjelmasta. Kuvaus tarkentuu myöhemmin, aluksi dokumentoidaan vain ideat, joiden pohjalta työtä lähdetään tekemään. Kuvaus
LisätiedotLohtu-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ätiedotArkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14
Arkkitehtuurikuvaus Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy Ryhmä 14 Muutoshistoria Versio Pvm Päivittäjä Muutos 1.0 19.10.2007 Suanto 0.3 18.10.2007 Matti Eerola 0.2 17.10.2007
LisätiedotVaatimusmää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ätiedotTIE-20200 Samuel Lahtinen. Lyhyt UML-opas. UML -pikaesittely
Lyhyt UML-opas UML -pikaesittely UML, Unified Modeling Language Standardoitu, yleiskäyttöinen mallinnuskieli, jota ylläpitää/hallitsee (Object Management Group) OMG Historiaa: 90-luvulla oli paljon kilpailevia
Lisätiedotkäyttötapaukset mod. testaus
käyttötapaukset Jari Ojasti Nokia email : jari.ojasti@nokia.com puh : 040 5926 312 Kartta hyväksyntä määrittely suunnittelu suunnittelu mod. testaus integrointi sys. testaus Ylläpito koodaus (toteutus)
LisätiedotTavallisen videomainoksen sijasta Ruudussa voidaan mainostauolla esittää dynaamisia spotteja.
RUUTU DYNAAMINEN SPOTTI TEKNISET OHJEET Versio 1.0 Yleistä Tavallisen videomainoksen sijasta Ruudussa voidaan mainostauolla esittää dynaamisia spotteja. Dynaamiset spotit ovat flash mainoksia, jotka mahdollistavat
LisätiedotOhjelmistojen mallintaminen, mallintaminen ja UML
582104 Ohjelmistojen mallintaminen, mallintaminen ja UML 1 Mallintaminen ja UML Ohjelmistojen mallintamisesta ja kuvaamisesta Oliomallinnus ja UML Käyttötapauskaaviot Luokkakaaviot Sekvenssikaaviot 2 Yleisesti
LisätiedotHTTP-välityspalvelimen käyttö tapahtumien keräämiseen
HTTP-välityspalvelimen käyttö tapahtumien keräämiseen Tero Tähtinen Teknillinen korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio Diplomityöesitelmä 29.11.2004 1 Johdanto Diplomityössä
LisätiedotInterfacing Product Data Management System
Interfacing Product Data Management System Tekijä: Työn valvoja: Mats Kuivalainen Timo Korhonen Esitelmän sisältö Työn suorituspaikka - Ideal Product Data Oy Käsitteitä Työn tavoitteet Työn tulokset 1/5
LisätiedotArkkitehtuuri. Ylätason sovellusarkkitehtuuri
Arkkitehtuuri Termieditorin käyttö vaatii kirjautumisen. Peruskäyttäjälle myönnetään erikseen aineistokohtaisia luku- ja muokkausoikeuksia. Järjestelmän ylläpitäjä (admin) saa ylläpitää kaikkia aineistoja.
LisätiedotKäyttöohje. Ticket Inspector. Versio 1.0. Sportum Oy
Käyttöohje Ticket Inspector Versio 1.0 Sportum Oy 10.5.2017 Sivu 1 Sisällysluettelo 1. Yleistä... 2 2. Kirjautuminen ensimmäisellä kerralla / PIN-koodin unohtuessa... 3 3. Tunnistautuminen... 4 4. Päänäkymä...
LisätiedotLoppuraportti. Virtuaali-Frami, CAVE-ohjelmisto. Harri Mähönen projektiassistentti Seinäjoen ammattikorkeakoulu. Versio
1 Loppuraportti Virtuaali-Frami, CAVE-ohjelmisto Harri Mähönen projektiassistentti Seinäjoen ammattikorkeakoulu Versio 1.0 15.1.2006 2 Sisällys Tiivistelmä... 3 1 Johdanto... 4 1.1 Dokumentin tarkoitus...
LisätiedotHOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10
HOJ Haja-aiheita Ville Leppänen HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10 Missä mennään... 1. Johdanto (1h) 2. Säikeet (2h) 3. Samanaikaisuudesta (2h) 4. Hajautetuista sovelluksista (1h)
LisätiedotYllä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ätiedotETÄTERMINAALIYHTEYS SELAIMELLA
Opinnäytetyö (AMK) Tietotekniikan koulutusohjelma Sulautetut ohjelmistot 2017 Akseli Aarnio ETÄTERMINAALIYHTEYS SELAIMELLA OPINNÄYTETYÖ (AMK) TIIVISTELMÄ TURUN AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma
LisätiedotSuvi Junes Tietohallinto / Opetusteknologiapalvelut 2012
Tiedostot Uudet ominaisuudet: - Ei Tiedostot-kohtaa alueen sisällä, vaan tiedostonvalitsin, jolla tiedostot tuodaan alueelle siihen kohtaan missä ne näytetään - Firefox-selaimella voi työpöydältä raahata
LisätiedotDokumentin nimi LOGO:) Tampereen teknillinen yliopisto. Ryhmä XXX: Projektiryhmän nimi Projektin nimi
Tampereen teknillinen yliopisto Ohjelmistotekniikan laitos OHJ-3500 Ohjelmistotuotannon projektityö LOGO:) Ryhmä XXX: Projektiryhmän nimi Projektin nimi Dokumentin nimi Jakelu: (Ryhmä) (Kurssihenkilökunta)
LisätiedotJärjestelmäarkkitehtuuri (TK081702) Avoimet web-rajapinnat
Järjestelmäarkkitehtuuri (TK081702) SOA yleistyvät verkkopalveluissa Youtube Google... Avaavat pääsyn verkkopalvelun sisältöön. Rajapintojen tarjoamia tietolähteitä yhdistelemällä luodaan uusia palveluja,
LisätiedotAlkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS CT10A4000 - Kandidaatintyö ja seminaari
LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS CT10A4000 - Kandidaatintyö ja seminaari Alkuraportti Avoimen lähdekoodin käyttö WWW-sovelluspalvelujen toteutuksessa Lappeenranta, 30.3.2008,
LisätiedotCTRL+F Android-sovellus
CTRL+F Android-sovellus Vili-Robert Hietala Opinnäytteen raportointi Sähköosasto Toukokuu 2015 KUVAILULEHTI 14.04.2015 Tekijä(t) Vili-Robert Hietala Työn laji Opinnäytteen raportointi Sivumäärä 7 Luottamuksellisuus
LisätiedotTiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas
Tiedonhallinnan perusteet Viikko 1 Jukka Lähetkangas Kurssilla käytävät asiat Tietokantojen toimintafilosofian ja -tekniikan perusteet Tiedonsäilönnän vaihtoehdot Tietokantojen suunnitteleminen internetiä
Lisätiedotopiskelun suunnittelujärjestelmä, kurki ja ilmo käyttävät kaikki samaa tietokantaa, ja uusi järjestelmä tulee osaksi tätä.
25.1.2010 Palaverin kysymyksien selvittelymuistio Mitä ominaisuuksia halutaan? Sopivat ajat sprinttien jälkeisiin demoihin/palavereihin. - mitkä ajat sopivat? Pekka : pe 12-16 Tommi : pe 8-16 Onko ohjelmointikielen
LisätiedotJS-kehitys - yleiskuvaus. TIEA255 - Juho Vepsäläinen
JS-kehitys - yleiskuvaus TIEA255 - Juho Vepsäläinen Taustaa Basic, Pascal, C (PC, AVR), Java, Object Pascal (Delphi), PHP, Python, Lua, AS2, C++ (Qt) JavaScript,... Avoimen lähdekoodin proj. kehitystä
LisätiedotWritten by Administrator Monday, 05 September 2011 15:14 - Last Updated Thursday, 23 February 2012 13:36
!!!!! Relaatiotietokannat ovat vallanneet markkinat tietokantojen osalta. Flat file on jäänyt siinä kehityksessä jalkoihin. Mutta sillä on kuitenkin tiettyjä etuja, joten ei se ole täysin kuollut. Flat
LisätiedotWWW-Sivustojen suunnittelu. Miten WWW toimii. Suunnittelun lähtökohdat 14.10.2010
WWW-Sivustojen suunnittelu Miten WWW toimii Web-selain hakee Web-sivun HTML-kielisen kuvauksen Sivuun liittyvät kuvat (jpeg, gif, png) Sivuun liittyvät muut elementit Palvelimen URL-osoite esim. http://www.metropolia.fi
LisätiedotWWW-Sivustojen suunnittelu
WWW-Sivustojen suunnittelu Miten WWW toimii Web-selain hakee Web-sivun HTML-kielisen kuvauksen Sivuun liittyvät kuvat (jpeg, gif, png) Sivuun liittyvät muut elementit Palvelimen URL-osoite esim. http://www.metropolia.fi
LisätiedotAndroid ohjelmointi. Mobiiliohjelmointi 2-3T5245
Android ohjelmointi Mobiiliohjelmointi 2-3T5245 Mikä on Android? Linux kernelin päälle rakennettu, Googlen kehittämä sovelluspino mobiilisovelluksiin Erillinen versio puhelimelle ja taulutietokoneille
LisätiedotDigi-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ätiedotIT-OSAAJA, TIETOJENKÄSITTELYN ERIKOISTUMISOPINNOT
IT-OSAAJA, TIETOJENKÄSITTELYN ERIKOISTUMISOPINNOT KOULUTUKSEN KOHDERYHMÄ SISÄLTÖ Koulutuksen tavoitteena on antaa opiskelijalle valmiudet uusien tietoteknisten menetelmien ja välineiden hyödyntämiseen.
LisätiedotJWT 2017 luento 10. to klo Aulikki Hyrskykari. PinniB Aulikki Hyrskykari
JWT 2017 luento 10 to 20.4.2016 klo 12-14 Aulikki Hyrskykari PinniB 1096 1 Viime luennolla o Funktiot JavaScriptissä, callback, IIFE, sulkeumat ja Module pattern Tänään o AJAX (Asynchronous JavaScript
LisätiedotTällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia.
MagicDraw-pikaohje Tällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia. Alkuvalmistelut Windows (sali TC205) 1) Kirjaudu sisään TTY:n intra-tunnuksella.
LisätiedotKäyttöohje. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Käyttöohje KotKot Helsinki 14.12.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 + 1 op) Projektiryhmä Tuomas Puikkonen Matti
LisätiedotSUOMEN KUNTALIITTO RY
Karttaliittymä Versio: 18.10.2011 Julkaistu: 27.10.2011 Voimassaoloaika: Toistaiseksi Sisällys 1 Johdanto... 2 1.1 Suosituksen tausta... 2 1.2 Suosituksen rakenne... 2 2 Soveltamisala... 2 3 Lyhenteet...
LisätiedotTestausautomaation mahdollisuudet käyttöliittymän testauksessa. Anssi Pekkarinen 5.11.2015
Testausautomaation mahdollisuudet käyttöliittymän testauksessa Anssi Pekkarinen 5.11.2015 Agenda Kustannustehokkaan testausautomaation tekemiseen vaikuttavat tekijät Käyttöliittymätestauksen haasteet Uudet
LisätiedotTIE Principles of Programming Languages CEYLON
TIE-20306 Principles of Programming Languages CEYLON SISÄLLYSLUETTELO 1. YLEISTIETOA KIELESTÄ JA SEN KEHITTÄMISESTÄ... 1 2. CEYLONIN OMINAISUUKSIA... 2 2.1 Modulaarisuus... 2 2.2 Tyypit... 2 2.3 Muita
LisätiedotSivuston nopeus. Tiivistämällä resursseja gzip- tai deflate-koodilla voit vähentää verkon kautta lähetettävien tavujen määrää.
Sivuston nopeus Mobiili 80 / 100 Nopeus Pitäisi korjata: Ota pakkaus käyttöön Tiivistämällä resursseja gzip- tai deflate-koodilla voit vähentää verkon kautta lähetettävien tavujen määrää. Pienennä seuraavien
LisätiedotVAATIMUSMÄÄRITTELY. Polku http://code.google.com/p/polku-projekti/ Versio 1.2. Projektiryhmä
VAATIMUSMÄÄRITTELY Polku http://code.google.com/p/polku-projekti/ Versio 1.2 Projektiryhmä Janne Pihlajaniemi Antti Jämsén Maria Hartikainen Pekka Kallioniemi Jorma Laajamäki Panu Tunttunen Nina Tyni Joonas
LisätiedotILMAINEN KARTTATIETO
ILMAINEN KARTTATIETO MIKÄ ON MUUTTUNUT? Täydellinen vallankumous tietojen vapautumisessa GPS alkuna TIETOJA LÖYTYY PALJON: EROJA SIINÄ, MITEN TIETOA KÄYTETÄÄN. PELKÄSTÄÄN REITTIHAKUUN JA PAIKKOJEN ETSINTÄÄN
LisätiedotSivuston nopeus. Tiivistämällä resursseja gzip- tai deflate-koodilla voit vähentää verkon kautta lähetettävien tavujen määrää.
Sivuston nopeus 40 / 100 Nopeus Pitäisi korjata: Ota pakkaus käyttöön Tiivistämällä resursseja gzip- tai deflate-koodilla voit vähentää verkon kautta lähetettävien tavujen määrää. Pienennä seuraavien resurssien
LisätiedotDatanhaku www-käyttöliittymästä Mikko Parviainen, Ilmatieteen laitos / tietojärjestelmät mikko.parviainen@fmi.fi
Helsinki Testbed tutkijankäyttöliittymä Datanhaku www-käyttöliittymästä Mikko Parviainen, Ilmatieteen laitos / tietojärjestelmät mikko.parviainen@fmi.fi 7.4.2006 Taustaa Helsinki Testbed on Ilmatieteen
LisätiedotAnalyysi, 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ätiedotTaustaa. CGI-ohjelmointi
Taustaa CGI-ohjelmointi CGI = Common Gateway Interface Hyvin yksinkertainen ja helppo tapa toteuttaa dynaamisuutta ja interaktivisuutta htmldokumentteihin Kehitetty tiedon siirtoon palvelimen ja asiakasselaimen
LisätiedotARVO - verkkomateriaalien arviointiin
ARVO - verkkomateriaalien arviointiin Arvioitava kohde: Jenni Rikala: Aloittavan yrityksen suunnittelu, Arvioija: Heli Viinikainen, Arviointipäivämäärä: 12.3.2010 Osa-alue 7/8: Tekninen toteutus Edellinen
LisätiedotHelsinki Testbedin säätuotteet tänään ja tulevaisuudessa
Helsinki Testbedin säätuotteet tänään ja tulevaisuudessa Helsinki Testbed Workshop 6.4.2006 Pekka Keränen 06.04.06 Johdanto Projektin www-sivusto http://testbed.fmi.fi Säätuotteet julkisiksi MM-kisoihin,
LisätiedotJärjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri. Järjestelmäarkkitehtuuri
Järjestelmäarkkitehtuuri (TK081702) ja Järjestelmäarkkitehtuuri Sovellukset ovat olemassa Järjestelmien uudistaminen vie yleensä arvioitua enemmän resursseja ja kestää arvioitua kauemmin Migration (Migraatio
LisätiedotDart. Ryhmä 38. Ville Tahvanainen. Juha Häkli
Dart Ryhmä 38 Ville Tahvanainen Juha Häkli 1.LYHYESTI Dart on luokkapohjainen, yksiperintäinen, puhdas olio-ohjelmointikieli. Dart on dynaamisesti tyypitetty. Sovellukset on organisoitu modulaarisiksi
LisätiedotEpooqin perusominaisuudet
Epooqin perusominaisuudet Huom! Epooqia käytettäessä on suositeltavaa käyttää Firefox -selainta. Chrome toimii myös, mutta eräissä asioissa, kuten äänittämisessä, voi esiintyä ongelmia. Internet Exploreria
LisätiedotKirjaudu sisään palveluun klikkaamalla Omat kartat -painiketta.
Kirjaudu sisään palveluun klikkaamalla Omat kartat -painiketta. Sisäänkirjauduttuasi näet palvelun etusivulla helppokäyttöisen hallintapaneelin. Vasemmassa reunassa on esillä viimeisimmät tehdyt muutokset
LisätiedotDXL Library ja DXL-kielen olemus. Pekka Mäkinen Pekka.Makinen@softqa.fi SoftQA Oy http/www.softqa.fi/
DXL Library ja DXL-kielen olemus Pekka Mäkinen Pekka.Makinen@softqa.fi SoftQA Oy http/www.softqa.fi/ DOORS extension Language DXL on DOORSin laajennuskieli, jolla voidaan kehittää lisätoiminnallisuutta.
LisätiedotSivuston nopeus. Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä
Sivuston nopeus Mobiili 54 / 100 Nopeus Pitäisi korjata: Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä Sivullasi on 8 estävää ohjelmaresurssia ja 9 estävää CSS-resurssia. Tämä viivästyttää
LisätiedotSivuston nopeus. Sivullasi on 2 uudelleenohjausta. Uudelleenohjaukset viivästyttävät sivun lataamista.
Sivuston nopeus Mobiili 56 / 100 Nopeus Pitäisi korjata: Älä käytä aloitussivun uudelleenohjauksia Sivullasi on 2 uudelleenohjausta. Uudelleenohjaukset viivästyttävät sivun lataamista. Vältä aloitussivun
LisätiedotWeb sovelluksen kehittäminen sähkönjakeluverkon suojareleisiin
TEKNILLINEN KORKEAKOULU / VAASAN YLIOPISTO Diplomityöesitelmä Web sovelluksen kehittäminen sähkönjakeluverkon suojareleisiin Timo Ahola 2006 Web sovellus Web palvelut joiden avulla laite voidaan liittää
LisätiedotAlkuun HTML5 peliohjelmoinnissa
Paavo Räisänen Alkuun HTML5 peliohjelmoinnissa www.ohjelmoimaan.net Tätä opasta saa vapaasti kopioida ja levittää ei kaupallisissa tarkoituksissa. Sisällysluettelo 1: Alkusanat 2: Alkuun 3: Pelinäkymä
LisätiedotLinux rakenne. Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat
Linux rakenne Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat Linux ydin Ytimen (kernel) päätehtävä on tarjota rajapinta
LisätiedotSivuston nopeus. Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä
Sivuston nopeus 66 / 100 Nopeus Pitäisi korjata: Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä Sivullasi on 2 estävää ohjelmaresurssia ja 1 estävää CSS-resurssia. Tämä viivästyttää
LisätiedotVisual Case 2. Miika Kasnio (C9767) 23.4.2008
Visual Case 2 Miika Kasnio (C9767) 23.4.2008 Työn tarkasti: Jouni Huotari 24.4.2008 1 SISÄLTÖ 1. TYÖN LÄHTÖKOHDAT... 2 2. PERUSTIEDOT... 2 3. ASENTAMINEN... 2 4. OMINAISUUDET... 3 4.1. UML-kaaviot... 4
LisätiedotVisualStudio Pikaopas, osa 1: WEB sivujen suunnittelu
HAAGA HELIA/IltaTiko ICT2TD005: Ohjelmisto suunnittelutaito 1 VisualStudio Pikaopas, osa 1: WEB sivujen suunnittelu Tämä pikaopas opastaa käyttämään VisualStudion web sivujen suunnittelu ja toteutusominaisuuksia.
LisätiedotTapahtumakalenteri & Jäsentietojärjestelmä Toteutus
Tapahtumakalenteri & Jäsentietojärjestelmä Toteutus Henri Kinnunen, Seppo Tompuri, Tero Malkki, Matti Heiskanen, Tommi Rönkönharju, Tuomas Valkeapää Sisällysluettelo 1. Alkusanat...2 2. Käyttötapaukset...2
LisätiedotSivuston nopeus. Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä
Sivuston nopeus Mobiili 66 / 100 Nopeus Pitäisi korjata: Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä Sivullasi on 2 estävää ohjelmaresurssia ja 2 estävää CSS-resurssia. Tämä viivästyttää
LisätiedotAnalyysi, 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ätiedot10 Nykyaikainen WWW-arkkitehtuuri
10 Nykyaikainen WWW-arkkitehtuuri è è è 10 Nykyaikainen WWW-arkkitehtuuri WWW on ylivoimaisesti suosituin hypertekstijärjestelmä. Käydään seuraavaksi läpi nykyaikaisen WWW-arkkitehtuurin perusteet. Vuonna
LisätiedotL models. Tekninen määrittely. Ryhmä Rajoitteiset
Teknillinen Korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö Lineaaristen rajoitteiden tyydyttämistehtävän ratkaisija L models Tekninen määrittely Ryhmä Rajoitteiset Versio Päivämäärä Tekijä Muutokset
LisätiedotVerkkopalveluiden saavutettavuus
Verkkopalveluiden saavutettavuus Puhuja: Ossi Nykänen Tampereen teknillinen yliopisto, Hypermedialaboratorio, W3C Suomen toimisto Paikka: Helsinki, Tieteiden talo, 24.3.2011 Johdanto Verkkopalvelun saavutettavuus
LisätiedotWeb-palveluiden toteutus älykortille
älykortille Jukka Hänninen Valvoja: Prof. Raimo Kantola Ohjaaja: DI Kaj Höglund, Elisa Oyj Sisältö Työn tausta Standardointi Älykortin web-palvelin Toteutus Hyödyt ja mahdollisuudet Kohdatut ongelmat Lopputulos
LisätiedotPedacode Pikaopas. Java-kehitysympäristön pystyttäminen
Pedacode Pikaopas Java-kehitysympäristön pystyttäminen Pikaoppaan sisältö Pikaoppaassa kuvataan, miten Windowstyöasemalle asennetaan Java-ohjelmoinnissa tarvittavat työkalut, minkälaisia konfigurointeja
LisätiedotTestidatan generointi
Testidatan generointi Anu Ahonen Kevät 2008 Tämä työ on tehty Creative Commons -lisenssin alla Työn tarkasti 9.4.2008 Jouni Huotari (JAMK/IT) 1 SISÄLTÖ 1 TYÖN LÄHTÖKOHDAT JA TOTEUTUS...2 2 TESTIDATAN GENEROINTI
LisätiedotSivuston nopeus. Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä
Sivuston nopeus 69 / 100 Nopeus Pitäisi korjata: Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä Sivullasi on 11 estävää ohjelmaresurssia ja 7 estävää CSS-resurssia. Tämä viivästyttää
Lisätiedot