MOBIILI JAVA HAJAUTETUISSA MITTAUS- JA OHJAUSJÄRJESTELMISSÄ

Koko: px
Aloita esitys sivulta:

Download "MOBIILI JAVA HAJAUTETUISSA MITTAUS- JA OHJAUSJÄRJESTELMISSÄ"

Transkriptio

1 JOONAS TUNTURI MOBIILI JAVA HAJAUTETUISSA MITTAUS- JA OHJAUSJÄRJESTELMISSÄ DIPLOMITYÖ Aihe hyväksytty osastoneuvoston kokouksessa Tarkastajat: prof. Hannu Koivisto, prof. Tommi Mikkonen

2 Sisällysluettelo TIIVISTELMÄ...4 ABSTRACT...5 KÄYTETYT LYHENTEET JOHDANTO TUTKIMUKSEN RAJAUS TUTKIMUKSEN RAKENNE HAJAUTUKSEN OMINAISUUDET JA VAATIMUKSET TAPAHTUMAPOHJAINEN MITTAUS- JA OHJAUSJÄRJESTELMÄ Hajautettujen järjestelmien erityispiirteitä Kommunikointi järjestelmän komponenttien välillä Automaation erityisvaatimukset MAANTIETEELLISESTI HAJAUTETTU AUTOMAATIOJÄRJESTELMÄ Järjestelmän rakenne Esimerkkejä maantieteellisesti hajautetuista järjestelmistä Maantieteellisen hajautuksen erityisvaatimukset MOBIILI JAVA J2ME Siirrettävyys Konfiguraatiot Profiilit CLDC Yleistä Virtuaalikone CLDC IMP IMP-profiilin ominaisuudet IMletin ajoympäristö ja hallinta IMP-NG MOBIILI JAVA HAJAUTETUISSA JÄRJESTELMISSÄ LIITTYMINEN LAAJEMPAAN JÄRJESTELMÄÄN Järjestelmäarkkitehtuurit Väliohjelmistot CORBA-ORB

3 JMS MOBIILILAITE JÄRJESTELMÄN OSANA Laitearkkitehtuuri Mobiililaitteen kolme roolia SÄÄHAVAINTOVERKKO, CASE VAISALA TAVOITTEET JA YMPÄRISTÖ Tutkimuksen tavoitteet ROSA-tiesääasema Nokia 12 -mobiililaite Kehitysympäristö MOBIILILAITE SÄÄASEMAN AINOANA ALUSTANA Tavoitteet ja toiminta Soveltuvuus sääaseman ainoaksi alustaksi MOBIILILAITE INTEGROITUNA TIESÄÄASEMAAN Tavoitteet ja toiminta Soveltuvuus tiedonvälitykseen säähavaintoverkossa JAVAN ASEMA JA MAHDOLLISUUDET HAJAUTETUSSA AUTOMAATIOSSA JAVAN TODELLINEN SIIRRETTÄVYYS ELINKAAREN HALLINTA ETÄÄLTÄ JMS VIESTINVÄLITYKSESSÄ OHJELMISTOKEHITYKSEN TEHOKKUUS ONGELMAT YHTEENVETO...61 LÄHDELUETTELO

4 TAMPEREEN TEKNILLINEN YLIOPISTO Tietotekniikan osasto Ohjelmistotekniikka TUNTURI, JOONAS: Mobiili Java hajautetuissa mittaus- ja ohjausjärjestelmissä Diplomityö, 68 s. Kesäkuu 2004 Tarkastajat: prof. Hannu Koivisto ja prof. Tommi Mikkonen Rahoittajat: Vaisala Oyj, Metso Automation Oy, TeliaSonera Oyj, Plustech Oy, Nokia Mobile Phones M2M, TEKES, TTY Automaatio- ja säätötekniikan laitos Avainsanat: Mobiili Java, J2ME, CLDC, IMP, JMS, Hajautetut järjestelmät, mittaus- ja ohjausjärjestelmät Tiivistelmä Kustannustehokkuus yhtenä palvelujen ja niitä tukevien toimintojen tärkeimmistä ominaisuuksista on johtanut automatisoitumisen lisääntymiseen yhteiskunnassa. Erityisesti laitteiden verkottaminen hajautetuiksi automaatiojärjestelmiksi on lisääntynyt voimakkaasti. Tämä on lisännyt tarvetta kehittää laitteiden välistä viestintää. Laitteiden välinen viestintä tarvitsee nykyään entistä yleiskäyttöisempiä ja kustannustehokkaampia ohjelmistotekniikoita. Tutkimuksen on tarkoitus selvittää Mobiili Javan soveltuvuutta automaation tarpeisiin. Tutkimuksen teoriaosuus keskittyy hajautuksen ominaisuuksiin automaatiossa sekä Mobiili Java tekniikkaan ja sen soveltuvuuteen mittaus- ja ohjausjärjestelmien ohjelmistotekniikaksi. Tutkimuksen soveltavassa osuudessa on käsitelty hajautettujen sääasemasovellusten toteuttamista Mobiili Javan ja sitä tukevien laitteiden avulla. Tutkimuksessa määritellään myös käsite maantieteellisesti hajautettu automaatiojärjestelmä sekä mobiililaitteen kolme mahdollista roolia mittaus- ja ohjausjärjestelmän osana. Tutkimuksen johtopäätöksissä pohditaan Mobiili Java tekniikan tuomia etuja automatisoituvaan yhteiskuntaan. Lisäksi analysoidaan tekniikan puutteita, tämän hetkistä tilaa ja tulevaisuutta. 4

5 TAMPERE UNIVERSITY OF TECHNOLOGY Department of Information Technology Institute of Software Systems TUNTURI, JOONAS: Mobile Java in Distributed Measurement and Control Systems Master of Science Thesis, 68 pages. June 2004 Examiners: prof. Hannu Koivisto and prof. Tommi Mikkonen Funding: Vaisala Oyj, Metso Automation Oy, TeliaSonera Oyj, Plustech Oy, Nokia Mobile Phones M2M, TEKES, TUT Institute of Automaion and Control Keywords: Mobile Java, J2ME, CLDC, IMP, JMS, Distributed Systems, Measurement and Control Systems Abstract Cost-effectiveness is nowadays one of the main characteristics of services and operations supporting them. This has caused the importance of service automatisation to grow. Networking of devices to build distributed automation systems has especially grown rapidly. This has increased the need to develop machine to machine communication technologies between these devices. There is a call for new generic and cost efficiency software technologies to manage communication between the devices. This thesis clarifies how suitable Mobile Java is considering the needs of automation. Theory part of the thesis concentrates on characteristics of distribution in automation, characteristics of Mobile Java, and it s suitability to fulfil requirements of measurement and control systems. Applied part of the thesis describes the implementation of distributed weather station applications using Mobile Java and devices that support it. The meaning of geographically distributed automation system and the roles of mobile devices as a part of the system have also been defined in the research. Conclusions of this thesis describe the benefits of Mobile Java for a society relying more and more on automation. The worst shortcomings of Mobile Java are concluded in this thesis, as well as the current state and the future of the technology. 5

6 Käytetyt lyhenteet AMS ASCII CDC CLDC CORBA FP GPRS GSM HTTP IM IMP IMP IMP-NG IP J2EE J2ME J2SE JAR JCP JMS Application Management Software American Standard Code for Information Interchange Connected Device Configuration Connected Limited Device Configuration Common Object Request Broker Architecture Foundation Profile General Packet Radio Service Global System for Mobile Communication Hypertext Transfer Protocol Information Module Information Module Profile Information Module Profile Information Module Profile - Next Generation Internet Protocol Java 2 Platform, Enterprise Edition Java 2 Platform, Micro Edition Java 2 Platform, Standard Edition Java Archive Java Community Process Java Message Service 6

7 JSR JVM KVM LAN MIDP MMS MOM MVC NTCIP OEM ORB OTA PP RMS ROSA SIM SMS TCP WAP WSP WTP XML Java Specification Requests Java Virtual Machine K (Kilobyte) virtual machine Local Area Network Mobile Information Device Profile Multimedia Messaging Service Message Oriented Middleware Model View Controller National Transportation Communications for Intelligent Transportation System (ITS) Protocol Original Equipment Manufacturer Object Request Broker Over The Air Personal Profile Record Management System Road Surface Analyzer Subscriber Identity Module Short Message Service Transmission Control Protocol Wireless Application Protocol Wireless Session Protocol Wireless Transaction Protocol Extensible Markup Language 7

8 1. Johdanto Hajautetun automaation kasvu on nähtävissä erilaisten laitteiden muodostamien verkkojen muodossa. Virvoitusjuoma-automaatit keskustelevat varastonohjaus- ja huoltojärjestelmien kanssa, autot lähettävät sijaintinsa hätäkeskukselle onnettomuuden sattuessa tai säähavaintoasema raportoi säätietoja asiakkailleen. Verkottuminen on tunkeutumassa yhä laajemmalle alueelle, kuten viihdepalveluihin ja koteihin. Tämä hajautettujen automaatiojärjestelmien määrän ja niiltä vaadittujen ominaisuuksien nopea lisääntyminen on lisännyt tarvetta kehittää yleiskäyttöisiä ja kustannustehokkaita toteutustekniikoita. Mobiili Java pohjainen ratkaisu on eräs joustava ja helposti erilaisiin järjestelmiin integroituva tapa toteuttaa järjestelmän mittaus- ja ohjaustarpeet. Tutkimuksessa on keskitytty käsittelemään Mobiili Javan soveltuvuutta maantieteellisesti hajautetun mittaus- ja ohjausjärjestelmän ja sen etälaitteiden tarpeisiin. Tutkimuksen kohteena on myös etälaitteiden rooli osana laajempaa järjestelmää sekä viestinvälitys järjestelmän komponenttien välillä. Mittaustiedon välittäminen ja laitteiden etäohjaus voidaan toteuttaa monella eri tavalla. Tutkimuksessa on selvitetty Mobiili Java tekniikan ja viestipohjaisen väliohjelmiston (Java Message Service, JMS) soveltuvuutta tähän tarkoitukseen. Sovelluksena on käytetty maantieteellisesti hajautettua säähavaintoasemaa. 8

9 1.1. Tutkimuksen rajaus Työssä tutkitaan laitteiden väliseen kommunikointiin suunnitellun Mobiili Javan ja sitä tukevien mobiililaitteiden soveltuvuutta maantieteellisesti hajautetun automaation mittausja ohjaustehtäviin. Vaikka työn nimestä on jätetty maantieteellinen hajautus pois, on se mobiilimaailmasta puhuttaessa otettava huomioon. Aiheen laajuuden vuoksi tutkimuksen ulkopuolelle on rajattu tietoturvan käsittely. Tutkittaessa Mobiili Javan liittymistä laajempaan järjestelmään on jouduttu osa merkittävistä järjestelmäarkkitehtuureista, kuten Microsoftin.NET, rajaamaan pois Tutkimuksen rakenne Mobiili Javan soveltuvuutta hajautettuihin mittaus- ja ohjausjärjestelmiin voidaan tarkastella tarkemmin vasta taustalla olevaan teoriaan tutustumisen jälkeen. Viitekehyksen esittelystä ja määrittelystä vastaa luku kaksi, jossa puhutaan hajautuksesta yleisesti, automaation erityisvaatimuksista sekä määritellään maantieteellisesti hajautettu automaatiojärjestelmä. Luvussa kolme on purettu auki Mobiili Javan määrittelyistä työn kannalta olennaisimmat osat sekä esitelty olennaisimmat uudistukset tulevista määrittelyistä. Neljännessä luvussa yhdistetään osittain kahden edellisen luvun anti ja esitellään mahdollisuuksia liittää mobiililaite laajempaan järjestelmään. Samassa luvussa tutkitaan myös mobiililaitteiden mahdollisia rooleja järjestelmän osana. Luku viisi on puhtaasti soveltava. Siihen on dokumentoitu tavoitteita ja tuloksia työn soveltavasta osuudesta: Mobiili Java kahdessa roolissa osana säähavaintoverkkoa. Kahdessa viimeisessä luvussa pohditaan tutkimuksessa saavutettuja tuloksia, arvioidaan tutkimuksen merkitystä ja katsotaan tulevaisuuteen. 9

10 2. Hajautuksen ominaisuudet ja vaatimukset Hajautus tuo järjestelmään kompleksisuutta. Hajautetun järjestelmän hallinta on usein vaikeampaa kuin keskitetyn järjestelmän hallinta. Tosin joissakin tapauksissa hajautus myös yksinkertaistaa järjestelmää jakamalla ongelman pienempiin osiin. Hajautus tuo järjestelmälle ominaisuuksia, joita keskitetty arkkitehtuuri ei tarjoa. Joskus hajautus on pakollista järjestelmän fyysisten ominaisuuksien vuoksi Tapahtumapohjainen mittaus- ja ohjausjärjestelmä Järjestelmällä on yleensä vaatimus maksimiajasta, jossa tehtävä on suoritettava, vaikka sillä ei olisikaan varsinaisia reaaliaikavaatimuksia [Liu01]. Vaatimukset ajoitukselle voivat olla joko kovia tai pehmeitä. Ellei vaatimuksiin pystytä vastaamaan seurauksena voi olla virhe toiminnassa tai tietyn tiedon menetys mittauksessa (kovat ajoitusvaatimukset), tai ainakin järjestelmän toiminnan viivästyminen (pehmeät ajoitusvaatimukset) [Liu01]. Vaatimus määrittelee kuitenkin ennemminkin järjestelmän ulkoisen suorituskyvyn, kuin sen toteuttaman yksittäisen toiminnon ajoituksen. Tehtävien suoritukselle/ajoitukselle on siis asetettu tietyt reunaehdot, joiden puitteissa järjestelmän on toimittava. Monet ohjaus- ja monitorointijärjestelmät ovat tällaisia. Esimerkiksi 10

11 erillisen laadunvalvontajärjestelmän havaittua virheen tuotteessa sen ei tarvitse pysäyttää linjaa reaaliajassa. Tuotannon kannalta riittää, kun tieto virheestä saadaan ennen määritellyn maksimiajan umpeutumista, oli se sitten 100 millisekuntia tai 5 minuuttia. Reaaliaikaisuuden puute ei siis estä laadunvalvontajärjestelmää toimimasta. Tapahtumapohjaisilla järjestelmillä ei yleensä ole kovia reaaliaikavaatimuksia. Mittaus- ja ohjausjärjestelmissä hajautetulla etälaitteella voi kuitenkin olla toimintoja, jotka vaativat reaaliaikaista ajoitusta, vaikka koko järjestelmän tasolla vaatimukset olisivatkin kevyemmät. Esimerkiksi mittaus on joissakin tapauksissa tehtävä millisekunnilleen oikeaan aikaan, vaikkei tiedon eteenpäinviennillä olekaan yhtä kovia vaatimuksia. Kevyemmät vaatimukset tiedonvälityksen ajoituskriittisyyden suhteen mahdollistavat virtuaalikonepohjaisten alustariippumattomien arkkitehtuurien soveltamisen hajautetuissa mittaus- ja ohjausjärjestelmissä Hajautettujen järjestelmien erityispiirteitä Järjestelmiä voidaan hajauttaa monella eri tavalla. Yksinkertaisimmillaan hajautus voidaan tehdä PC-tietokoneen sisällä. Järjestelmän toiminnot hajautetaan eri prosesseille, jotka tekevät toimintojaan erillään, mutta toisistaan riippuen. Esimerkki tällaisesta arkkitehtuurista on MVC-malli (Model-View-Controller) [MVC]. Mallin mukaan toteutetussa ohjelmistossa voidaan tietokanta, käyttöliittymä ja varsinaiset toiminnot hajauttaa omiin ohjelmakomponentteihinsa, jotka vastaavat vain itselleen kuuluvista toiminnoista. Mallin etuna on mahdollisuus toteuttaa komponentit sekä eri ohjelmointikielillä että erilaisille alustoille. Näin saadaan toteutettua komponentit tehokkaimmilla mahdollisilla ohjelmointikielillä sopivimmille alustoille. Eri komponentit voidaan myös toteuttaa kullekin parhaiten sopivassa kehitysympäristössä. Hajautettu järjestelmä mahdollistaa resurssien jakamisen usealle käyttäjälle [CoDoKi01]. Esimerkiksi MVC-mallin mukaisen ohjelmiston käyttö voidaan jakaa usealle käyttäjälle. Käyttöliittymän toteuttaminen verkkosivuna mahdollistaa monen käyttäjän samanaikaisen käytön. Toimintoihin pääsy voidaan näin mahdollistaa kaikille Internetin käyttäjille. Internetiä kutsutaankin maailman suurimmaksi hajautetuksi järjestelmäksi. 11

12 Hajautettujen järjestelmien haasteet voidaan jakaa esimerkiksi seuraavasti [CoDoKi01]: Heterogeenisyys. Heterogeenisyys tarkoittaa samassa hajautetussa järjestelmässä esiintyvien erilaisten verkkojen, käyttöjärjestelmien, tietokoneiden ja ohjelmointikielten yhteensovittamista. Avoimuus. Avoimuus vaatii järjestelmän komponenttien rajapintojen julkaisemista ja niiden yhdistämisen mahdollistamista. Turvallisuus. Hajautettu järjestelmä vaatii tietoturvan toteutumista sen kaikilla tasoilla. Skaalautuvuus. Järjestelmän kokoa tulee voida kasvattaa ja pienentää ilman, että ohjelmistoja joudutaan muuttamaan. Virheiden hallinta. Jokaisen komponentin on hoidettava virheistä toipuminen niin, että ollessaan riippuvainen jostakin toisesta komponentista, se hallitsee myös kyseisen komponentin virhetilanteista johtuvat omat virheet. Samanaikaisuus. Usean käyttäjän järjestelmissä ei saa tulla ongelmia samanaikaisuudesta. Läpinäkyvyys. Jotta ohjelmistokehittäjät pystyvät keskittymään sovelluskehitykseen, on hajautus tehtävä sovelluksen kannalta läpinäkyväksi. Edelliset haasteet kuvaavat hyvin sekä hajautuksen monimutkaisuutta että sen tuomia mahdollisuuksia. Esimerkiksi heterogeenisyys vaatii järjestelmältä joustavia rajapintoja, mutta tarjoaa mahdollisuuden suorituskykyiseen toteutukseen, kuten MVC-mallissa. Järjestelmän skaalautuvuus taas vaatii sen komponenteilta kykyä mukautua muuttuviin tarpeisiin. Toisaalta se antaa mahdollisuuden optimoida toteutuksen tarpeen mukaan sopivan kokoiseksi Kommunikointi järjestelmän komponenttien välillä Hajautetun järjestelmän ominaisuuksiin kuuluu erityisesti älyn ja toimintojen hajauttaminen. Tämän vuoksi järjestelmää, jonka hajautetuilla komponenteilla ei ole itsenäistä toimintakykyä, ei voida perustellusti kutsua hajautetuksi järjestelmäksi. Pelkkä 12

13 anturoinnin hajautus fyysisesti erilleen mittaustietoa analysoivasta keskusjärjestelmästä ei tee järjestelmästä hajautettua. Älyn ja toimintojen hajauttaminen vaatii komponenteilta kahdensuuntaista kommunikointia. Esimerkiksi mittalaitteen on kyettävä lähettämään järjestelmälle mittaustietoa, ja toisaalta järjestelmän tulee pystyä ohjaamaan mittalaitetta. Mittaus- ja ohjaustoiminnot vaativat erilaisia älykkäitä ominaisuuksia kommunikoinnilta. Mittaustiedon määrä voi vaihdella suuresti sovelluksesta riippuen jopa yhden järjestelmän sisällä. Toiselta mittalaitteelta tietoa välitetään vain poikkeustilanteessa virheen sattuessa, kun taas toiselta laitteelta voidaan siirtää kuvia sekunnin välein. Siirtomedian joustavuus erilaisiin tarpeisiin onkin tärkeä ominaisuus hajautetuissa mittaus- ja ohjausjärjestelmissä. Tällaisissa järjestelmissä mittalaite voi lähettää tietoa aktiivisesti tai passiivisesti. Aktiivinen tiedon lähetys voi tapahtua esimerkiksi tietyin aikavälein tai mittauksen ylittäessä jonkin raja-arvon. Mittalaite lähettää mitatun tiedon oman päättelynsä tuloksena. Passiivisella tiedonvälityksellä puolestaan tarkoitetaan laitteen kykyä vastata keskusjärjestelmän pyyntöihin, eli lähettää mittaustietoa pyydettäessä. Hajautettujen laitteiden etäohjauksen toteuttaminen vaatii komponenttien väliseltä kommunikoinnilta edellisten lisäksi parempaa tietoturvaa ja palautetta ohjauksen onnistumisesta. Tietoturvan merkitys saattaa sovelluksesta riippuen olla suuri myös mittaustiedon välityksessä, mutta laitteiden etäohjauksessa sen merkitys on aina ilmeinen. Ohjauskomennon perillemenon varmistamiseksi on siitä yleensä saatava palaute järjestelmälle. Vaatimukset kommunikoinnin toteutuksesta hajautettujen komponenttien välillä riippuu sovelluksen tarpeista ja käytettävissä olevasta siirtomediasta. Esimerkiksi mittaustiedon määrä aikayksikköä kohti vaikuttaa suoraan verkolle asetettaviin vaatimuksiin. Joskus sovellus joudutaan suunnittelemaan siirtomedian asettamien reunaehtojen mukaan. Usein siirtomedia voidaan kuitenkin valita sovelluksen tarpeet täyttäväksi. Voimakkaasti yhteydestä keskusjärjestelmään riippuvissa järjestelmissä voidaan käyttää kommunikoinnin varmentamiseksi kahta siirtomediaa, esimerkiksi kiinteän langallisen yhteyden lisäksi langatonta GPRS-yhteyttä (General Packet Radio Service). 13

14 Automaation erityisvaatimukset Hajautettujen automaatiojärjestelmien keskinäinen erilaisuus johtaa siihen, että niiden järjestelmälle aiheuttamia erityisvaatimuksia on vaikea määritellä. Yleisesti voidaan todeta vaatimusten usein kohdistuvan tiedonsiirron ominaisuuksiin, kuten etälaitteen saavutettavuuteen, kommunikaatiossa käytettävään kaistan leveyteen tai tietoturvaan. Toisaalta automaatiojärjestelmien erilaisuuden vuoksi on kuitenkin vaikeaa määritellä näiden ominaisuuksien tärkeyttä yleisesti automaatiojärjestelmissä. Vaatimukset onkin kohdistettava automaatiojärjestelmien toimintoihin eikä koko järjestelmään. Toimintoja ovat esimerkiksi mittaustiedon siirto, toimilaitteiden ohjaus, reaaliaikainen säätö ja hälytysviestien lähetys. Näille toiminnoille voidaan helpommin asettaa vaatimuksia, vaikka nekin riippuvat koko järjestelmän vaatimuksista. Taulukko 2. 1 on esimerkki toimintojen verkon ominaisuuksille asettamista erityisvaatimuksista. Taulukko 2. 1 Automaatiojärjestelmien toimintojen tiedonsiirrolle asettamia vaatimuksia. Saavutettavuus Kaistan leveys Tietoturva Mittaus Tärkeä Ohjaus Tärkeä Tärkeä Säätö Tärkeä Tärkeä Hälytykset Tärkeä Päivitykset Tärkeä Automaatiojärjestelmät eivät kuitenkaan ainoastaan vaadi ominaisuuksia hajautukselta, ne voivat myös tyytyä joihinkin ominaisuuksiin, joihin tiedon hajauttamiseen perustuvat järjestelmät eivät tyydy. Esimerkiksi käytettävyysvaatimukset ovat laitteiden välisessä kommunikoinnissa erilaiset kuin ihmisen ja koneen välisessä kommunikoinnissa. Ihmiselle on erityisen tärkeää saada välitön palaute tekemästään toiminnosta, mutta laitteelle ei. Tämän vuoksi hajautetussa automaatiojärjestelmässä voidaan esimerkiksi kaistan leveyttä kaventaa käytettävyyden kärsimättä. 14

15 2.2. Maantieteellisesti hajautettu automaatiojärjestelmä Maantieteellisesti hajautettu automaatiojärjestelmä on terminä verrattain uusi, eikä sitä ole vielä tarkasti määritelty missään. Kyseessä on erikoistapaus hajautetuista automaatiojärjestelmistä (Kuva 2. 1). Tässä työssä termillä tarkoitetaan maantieteellisesti toisistaan erillään olevia laitteita, joilla on itsenäistä toimintakykyä ja keskinäisiä riippuvuussuhteita. Maantieteellisesti hajautetussa järjestelmässä laitteet ovat tyypillisesti etäällä toisistaan. Sanalla maantieteellinen halutaan tehdä ero laitteiden perinteiseen sijoitteluun, joka on yleensä rajattu ja hallittu, kuten tehdasympäristö. Itsenäisellä toimintakyvyllä tarkoitetaan laitteiden kykyä tehdä asioita ilman jatkuvaa ulkopuolista valvontaa tai ohjausta. Laitteilla on kyky tehdä itsenäisiä päätöksiä ja toimia niiden perusteella automaattisesti. Keskinäiset riippuvuussuhteet edellyttävät laitteilta kommunikointia järjestelmässä. Kommunikointi on maantieteellisen hajautuksen vuoksi usein mobiilia, vaikka maantieteellinen hajautus ei poissuljekaan langallista kommunikointia. Edellinen määritelmä ja koko kohta 2.2 on tehty yhteistyönä Tom Artellin kanssa, joka on käsitellyt tutkimuksessaan palvelun laatua automaation tiedonsiirrossa [Ar04]. Automaatiojärjestelmät Hajautetut automaatiojärjestelmät Maantieteellisesti hajautetut automaatiojärjestelmät Hajautetut järjestelmät Kuva 2. 1 Maantieteellisesti hajautettu automaatiojärjestelmä. 15

16 Järjestelmän rakenne Rakenteeltaan maantieteellisesti hajautettu järjestelmä ei periaatteessa eroa paikallisesti hajautetusta järjestelmästä; se koostuu kahdesta pääkomponentista: laitteista ja niitä yhdistävästä verkosta. Hajautetussa järjestelmässä älykkyyttä on viety laitteisiin, eli niillä on vähintään alkeellinen kyky toimia erilaisissa tilanteissa itsenäisesti. Tällaiseksi ei esimerkiksi voida laskea sähköistä lämpömittaria, jonka ainoana tehtävänä on kertoa lämpötila kysyttäessä. Hajautettua älyä sen sijaan olisi mittarilla, joka osaa ilmoittaa tavoitearvosta poikkeavasta lämpötilasta itsenäisesti. Toinen järjestelmän pääkomponentti, verkko, yhdistää laitteet toisiinsa. Laitteet yhdistävää verkkomediaa ei ole määrätty, joten kommunikoinnissa voidaan käyttää erilaisia tekniikoita jopa järjestelmien sisällä. Tärkeintä on valita kuhunkin tilanteeseen parhaiten soveltuva mediatyyppi. Maantieteellisesti hajautettuihin järjestelmiin kuuluu tyypillisesti myös muita komponentteja. Niitä ovat kiinteästi sovelluksen toimintaan tai järjestelmän hallintaan liittyvät järjestelmät. Sovelluksen toimintaan liittyvät järjestelmät voivat olla esimerkiksi tiedonkeruu- ja käsittelyjärjestelmiä. Hallintajärjestelmät liittyvät lähinnä järjestelmän toteutukseen ja toimintaan. Niillä ylläpidetään, valvotaan, konfiguroidaan ja päivitetään verkkoa ja sen muita komponentteja. Molemmat lisäkomponentit ovat tyypillisiä, mutta eivät pakollisia. Hallintajärjestelmien puuttuessa verkon solmut eivät ole keskitetysti hallittuja, vaan toimivat ad-hoc-periaatteella, kuten esimerkiksi tiedostojen jakamiseen tarkoitetut Freenet [FREE] ja Gnutella [GNUT]. Mediariippumattomuuden ansiosta järjestelmässä voidaan käyttää rinnakkaisia tiedonsiirtotapoja josta seuraa, että verkko on epähomogeeninen. Esimerkiksi kiinteän yhteyden katketessa voidaan turvautua varmentavaan langattomaan yhteyteen, josta seuraa, että siirtonopeus pienenee ja viive ja saatavuus saattavat vaihdella rajusti. Tämä asettaa järjestelmälle ja sen hallinnalle erityisiä vaatimuksia. 16

17 Esimerkkejä maantieteellisesti hajautetuista järjestelmistä Sähköverkon hallintajärjestelmä on tyypillinen esimerkki maantieteellisesti hajautetusta automaatiojärjestelmästä. Sähköverkon luotettava toiminta on kansallisesti ehdottoman tärkeää, joten sen toimintavarmuuteen on panostettava paljon. Verkossa on useita itsenäisesti toimivia komponentteja, joiden toiminta vaatii järjestelmältä paljon koordinointia. Koska laitteet ovat etäällä toisistaan, on olennaista, että ne toimivat varmasti kaikissa tilanteissa. Lisäksi on tärkeää, että laitteet ovat etähallittavia, sillä ongelmien sattuessa sähkökatkon pituus on huomattavasti lyhyempi, jos laitteita voidaan konfiguroida ja ohjata etäältä. Kolmas tärkeä vaatimus järjestelmälle on kattava tietoturva, sillä on erityisen tärkeää, ettei mikään ulkopuolinen taho pääse käsiksi sähkönjakeluun. Kommunikoinnissa käytetään hyvin erilaisia mediatyyppejä alkaen puheradioyhteydestä päätyen nopeaan LAN-yhteyteen. [Ko98] Toinen esimerkki maantieteellisesti hajautetusta järjestelmästä on tiesäähavaintoverkko. Järjestelmä koostuu teiden varsille sijoitetuista sääasemista, jotka mittaavat sääolosuhteita, kuten tien lämpötilaa ja liukkautta. Järjestelmään kuuluu sääasemien lisäksi ylemmän tason keskusjärjestelmä, joka hallitsee asemia ja kerää säätietoa niiltä. Järjestelmä voidaan perustella hajautetuksi, koska asemat ovat itsenäisiä yksiköitä. Ne analysoivat mittaustietoa ja lähettävät ylemmän tason järjestelmälle ainoastaan olennaisen osan siitä. Ylemmän tason järjestelmä käsittelee tietoa edelleen ja lähettää sen asiakkaalle, kuten Tiehallinnolle. Tärkeimpänä vaatimuksena järjestelmässä on laitteiden kattava etähallinta ylläpitokustannusten minimoimiseksi ja toiminnan takaamiseksi. Sääasemien manuaalinen läpikäynti laajassa havaintoverkossa, esimerkiksi vikaantumisen takia, olisi työlästä ja kallista. Tiedonvälitys asemien ja ylemmän tason järjestelmän välillä tapahtuu tieosuudesta riippuen kiinteää tai langatonta yhteyttä käyttäen. [VaIce] Kolmas esimerkki maantieteellisestä hajautuksesta on autoihin liitettävä tekstiviestijärjestelmä, joka turvatyynyn lauettua lähettää lähimpään hätäkeskukseen tekstiviestin. Viestistä voisi ilmetä esimerkiksi auton tyyppi, matkustajien määrä, auton sijainti, törmäyksen voimakkuus ja turvatyynyn laukeamisen ajankohta. Autossa oleva mobiililaite kokoaa tekstiviestin sisällön itsenäisesti auton tietojärjestelmästä saamiensa 17

18 tietojen perusteella ja voidaan siten ajatella hajautetuksi. Tällaisia järjestelmiä on autoihin tulossa jo lähitulevaisuudessa [Ti04]. Järjestelmän ehdottomana vaatimuksena on toimintavarmuus, sillä toimintakatkos kolarin hetkellä tekee järjestelmästä täysin hyödyttömän Maantieteellisen hajautuksen erityisvaatimukset Edellisten esimerkkien perusteella maantieteellisesti hajautetuille automaatiojärjestelmille löytyy muutama erityisvaatimus verrattuna paikallisesti hajautettuihin. Tärkeimpiä erityisvaatimuksia ovat kattava etähallinta ja tiukempi tietoturva. Kattavan etähallinnan avulla tehty ylläpito pienentää kustannuksia ja lisää järjestelmän toimintavarmuutta. Ylläpidolla tarkoitetaan laitteissa olevien ohjelmistojen elinkaarenhallintaa ja esimerkiksi ongelmatilanteista toipumista. Kun laitteistojen ohjelmistoalustat tukevat ohjelmistojen elinkaarenhallintaa, voidaan alustoille asentaa etäältä uusia ohjelmia, jotka lisäävät esimerkiksi toiminnallisuutta. Tämä tekee järjestelmästä joustavan mahdollistaen sen muunneltavuuden sopeutumaan muuttuviin tarpeisiin. Tietoturvaan on maantieteellisesti hajautetussa järjestelmässä kiinnitettävä erityistä huomiota, sillä niissä liikennöidään yleensä muiden hallinnoimissa verkoissa. Järjestelmään murtautuminen on helpompaa kuin paikallisesti hajautettuun, jossa liikennöidään useimmin suljetussa verkkoympäristössä palomuurien takana, jolloin järjestelmään käsiksi pääseminen on vaikeampaa. [CoDoKi01] 18

19 3. Mobiili Java Hajautetuissa mittaus- ja ohjausjärjestelmissä etälaitteen älykkyys on pystyttävä ohjelmoimaan niin, että se palvelee sekä mittaus- ja ohjaustarpeita että liittymistä laajemman järjestelmän osaksi. Perinteisten sulautettujen järjestelmien ohjelmointiin käytettyjen kielten, kuten C:n ja assemblyn lisäksi on nykyään olemassa etälaitteita, jotka tukevat Javaa. Mobiili Java on vakiintunut nimitys Java Community Processin (JCP) [JCP] kehittämälle määrittelylle toteuttaa mobiileihin ja muihin sulautettuihin laitteisiin soveltuvia langattomasti siirrettäviä ohjelmistoja. Se tuo sulautettuihin laitteisiin muutaman keskeisen edun käytössä oleviin perinteisiin tekniikoihin nähden, kuten siirrettävyyden, langattoman elinkaarenhallinnan ja tehokkaan ohjelmointikielen. Java 2 Platform, Micro Edition (J2ME) alusta yleisesti, sekä erityisesti Connected Limited Device Configuration (CLDC) konfiguraatio ja Information Module Profile (IMP) profiili ovat mobiililaitteisiin suunnitellun ohjelmistoalustan teknisiä määrittelyjä J2ME Sun Microsystems on jakanut Java 2 alustat (Java 2 Platform) kolmeen erikokoisille järjestelmille tarkoitettuun osaan, Enterprise Editioniin (J2EE), Standard Editioniin (J2SE) ja Micro Editioniin (J2ME). J2SE on PC-ympäristöön tarkoitettujen ohjelmistojen 19

20 toteutukseen suunniteltu alusta, joka sisältää virtuaalikoneen (JVM - Java Virtual Machine), kehitysympäristön ja suuren määrän valmiita ohjelmointirajapintoja. J2EE pohjautuu J2SE:n ja määrittelee tavan toteuttaa laajoja komponenttipohjaisia ja monitasoisia ohjelmistoja. J2ME sisältää tekniikoita ja standardeja, jotka on suunnattu pieniin laitteisiin, kuten kännyköihin ja PDA:hin sekä sulautettuihin järjestelmiin, kuten pesukoneisiin tai limsa-automaatteihin. Koska J2ME:n kohderyhmään kuuluvien laitteiden fyysiset ja toiminnalliset erot saattavat olla hyvin suuria, ohjelmien siirrettävyys ei ole mahdollista kaikkien J2ME laitteiden välillä. Jotta Javan kulmakivestä, siirrettävyydestä, ei ole jouduttu luopumaan on J2ME jaettu tarkennuksiin, joita kutsutaan konfiguraatioiksi ja profiileiksi. Mobiili Java nimitystä käytetään J2ME:n toisesta tähän mennessä määritellystä konfiguraatiosta CLDC:stä (Kuva 3. 1). [Sun2] Mobile Java IMP CDC CLDC J2EE J2SE J2ME Java Card APIs JVM KVM Card VM Kuva 3. 1 Java-alustat erikokoisille järjestelmille. 20

21 Siirrettävyys Ohjelmistojen siirrettävyys on ollut Java teknologioiden käytön suurimpia etuja työasemaja palvelinympäristössä [Sun3]. Koska Javalla toteutetut ohjelmat käännetään tavukoodiksi (engl. bytecode), jota virtuaalikone tulkkaa ohjelmaa ajettaessa, sen alla olevalla käyttöjärjestelmällä ei ole merkitystä. Tarkemmin asiaa käsitellään lähteessä [GoMcGi96]. Siirrettävyyden merkitys kasvaa, mitä enemmän erilaisia laitealustoja on. Laitteilla, jotka ovat J2ME-alustan kohderyhmässä, on hyvinkin erilaisia ominaisuuksia. Laitteessa voi olla näppäimistö, näyttö, verkkoyhteys ja kohtalaisen paljon muistia. Toisaalta saman kohderyhmän laitteella ei välttämättä ole mitään edellisistä. Esimerkkejä laitteista ovat digi-tv, uuni, pesukone, auton navigointilaitteisto ja matkapuhelin. Vaikkei siirrettävyys eri laitekategorioiden välillä olisikaan mahdollista tai edes järkevää, löytyy kategorioiden sisältä laitteita, joihin voidaan ja kannattaa tuottaa ohjelmistoja välittämättä niiden omien käyttöjärjestelmien eroavaisuuksista. Tarve sovellusten siirrettävyyteen tulee sulautetuissa järjestelmissä todennäköisesti olemaan vielä suurempi, kuin työasema- ja palvelinympäristöissä. [Ste] Koska laitteet ovat käyttötarkoitukseltaan, ominaisuuksiltaan ja kooltaan hyvin erilaisia, on J2ME-ohjelmien siirrettävyyden takaamiseksi määritelty konfiguraatiot ja profiilit, joiden mukaan toteutetut ohjelmat toimivat kaikissa niitä tukevissa laitteissa (Kuva 3. 2). Profile(s) Configuration Libraries JVM Host Operating System Kuva 3. 2 J2ME:n arkkitehtuuri. 21

22 Konfiguraatiot Konfiguraatio on teknologian määrittely, jota käytetään yhden tai useamman profiilin (3.1.3) perustana [CLDC10a]. Resursseiltaan erilaisille laitteille on omat konfiguraationsa, jotka JCP määrittelee. Konfiguraatio määrittelee laitekategorialle sopivan virtuaalikoneen, sovellusten hallinnan toiminnan, tietoturvan tason, erot Java-kieleen ja tarpeelliset luokkakirjastot [CLDC10a]. Konfiguraation tulee tarjota ohjelmistoille mahdollisimman toimiva alusta ja riittävät palvelut, jotta ohjelmistokehitys saadaan tehokkaaksi ja ohjelmistot luotettaviksi. Se ei kuitenkaan saa olla liian raskas kyseiselle laitekategorialle, jottei se vie kaikkia resursseja laitteelta. Esimerkiksi muistikapasiteetti on sulautetuissa järjestelmissä lähes poikkeuksetta rajallinen. Tällä hetkellä J2ME:n konfiguraatioita on määritelty kaksi: Connected Device Configuration (CDC) ja Connected Limited Device Configuration (CLDC). CDC on suunniteltu resursseiltaan pienille laitteille, joilla on verkkoyhteys. Tyypillisiä tähän konfiguraatioon kuuluvia laitteita ovat digi-tv, autojen navigointijärjestelmät ja kehittyneemmät kommunikointivälineet [Sun4]. CLDC on määritelty resursseiltaan hyvin pienille laitteille, kuten mobiililaitteille ja pesukoneille sopivaksi Profiilit Vaikka J2ME on jaettu konfiguraatioihin, voi saman konfiguraation sisällä olla toiminnallisuudeltaan hyvinkin erilaisia laitteita. Esimerkiksi CLDC määrittelee virtuaalikoneen ja luokkakirjastojen joukon niinkin erilaisille laitteille kuin matkapuhelin ja pesukone. Nämä laitteet voivat sisältää samanlaisen laitteiston (hardware) ja käyttöjärjestelmän konfiguraatiota varten, mutta niiden toiminnallisuus eroaa toisistaan selvästi. Tämän vuoksi konfiguraatiot on jaettu profiileihin. Profiili määrittelee rajapinnat ja luokkakirjastot kyseiselle laitteelle, jotta sen tarjoamat tarpeet ja mahdollisuudet saadaan mahdollisimman hyvin hyödynnettyä. Konfiguraatioiden tapaan profiilit määrittelee JCP. 22

23 CLDC-konfiguraation profiileista tunnetuin on Mobile Information Device Profile (MIDP), joka on matkapuhelimille suunniteltu profiili. Mobiili Java -ohjelmia ovat juuri matkapuhelimissa ajettavat Java-pelit ja muut Java-sovellukset. Laitteiden väliseen kommunikointiin suunniteltu IMP-profiili on MIDP:n osajoukko. Siitä puuttuvat vain näytön ja näppäimistön ohjaukseen tarkoitetut rajapinnat. CDC:n profiileita ovat puolestaan esimerkiksi Foundation Profile (FP) ja Personal Profile (PP). Molemmille konfiguraatioille on määritelty ja määritellään parhaillaan uusia profiileja, joten ajankohtainen tieto löytyy lähteestä [JCP] CLDC CLDC (JSR-30) on J2ME:n konfiguraation määrittely, joka on suunniteltu pienille langattomille laitteille, joilla on yksinkertainen käyttöliittymä, hyvin pienet muistiresurssit ja kapeakaistainen verkkoyhteys. Tyypillisiä tämän kaltaisia laitteita ovat matkapuhelimet ja PDA:t (Personal Digital Assistant). [Sun1] Yleistä CLDC määrittelee virtuaalikoneen, sovellusten hallinnan toiminnan, tietoturvan tason, erot Java-kieleen ja vaaditut luokkakirjastot. CLDC:tä tukevat laitteet voivat olla melko erilaisia, vaikka konfiguraatio onkin suunnattu tietyn kokoisille laitteille. Tämän vuoksi määrittely ei aseta laitteille muita kuin muistin riittävyyteen liittyviä laitteistovaatimuksia [CLDC10a]. Virtuaalikonetta ja CLDC:n kirjastoja varten on oltava 128 kilotavua haihtumatonta (non-volatile) muistia, eli pysyväismuistia. Javan ajoympäristölle ja olioille on puolestaan oltava vähintään 32 kilotavua haihtuvaa (volatile) muistia eli käyttömuistia. 1 Tässä työssä käsitellään CLDC:n versiota 1.0, vaikka versio 1.1. on jo julkaistu. Versio 1.1 tuo vain joitakin muutoksia, joten CLDC:n perusta on järkevämpi käsitellä alkuperäisen version avulla. Myös työn kannalta tärkein profiili IMP 1.0 on määritelty käyttämään CLDC:n versiota 1.0. Erot näiden versioiden välillä käsittelen kohdassa

24 Määrittelyn tekijöiden (JSR-30 Expert group) mukaan yksi tärkeimmistä Java tekniikoiden tuomista eduista pienten laitteiden maailmaan on dynaaminen ja turvallinen sovellusten lataaminen erilaisten verkkojen yli laitteille. Aiemmin kyseisiin laitteisiin, kuten matkapuhelimiin, oli kovakoodattu (hardcoded) tietyt ominaisuudet, mutta nyt laitevalmistajat etsivät ratkaisuja, joilla laitteista saataisiin laajennettavampia, jolloin ne voisivat toimia alustoina kolmansien osapuolien tuottamille ohjelmille. Määrittely ei kuitenkaan ota kantaa tapaan, jolla sovellukset siirretään laitteelle, se vain vaatii laitteelta tiettyjä ominaisuuksia, jotka mahdollistavat siirron. [CLDC10a] Konfiguraatio määrittelee joitakin eroja ohjelmointikielelle, pyrkien kuitenkin noudattamaan Java-kielen määrittelyä [GoJoSte96] mahdollisimman tarkasti. Erot Javakieleen ovat liukulukujen puute, olioiden hävittämistä ennen kutsuttavan finalize-metodin puute ja suppeampi valikoima rajapintoja poikkeusten hallinnalle. [CLDC10a] Konfiguraatio määrittelee myös sovellusten hallinnan (CLDC10a kohta 3.3) sekä sovellusten tietoturvan Virtuaalikone CLDC:n määrittelemä virtuaalikone on suunniteltu vastaamaan mahdollisimman suurelta osin PC-maailman Javan virtuaalikoneen (JVM) määrittelyä, josta enemmän lähteessä [LiYe99]. CLDC:n virtuaalikoneelle on kuitenkin jouduttu suunnittelemaan omia rajoituksia ja toiminnallisuuksia johtuen erityisesti sulautettujen laitteiden rajallisesta muistikapasiteetista [CLDC10a]. Merkittävimmät eroavaisuudet JVM:en verrattuna ovat liukulukutuen ja muutamien muiden ominaisuuksien puuttuminen sekä luokkatiedostojen varmennus (engl. verification), muoto ja niiden lataaminen. Liukulukutuki on jätetty konfiguraatiosta pois, koska tuki puuttuu suurimmasta osasta kohderyhmän laitteista ja sen lisääminen konfiguraatioon olisi kasvattanut virtuaalikoneen kokoa liikaa. Muista pois jätetyistä ominaisuuksista merkittävin on Java Native Interfacen (JNI) puute. CLDC ei tue JNI:a, koska se ei sovi konfiguraation tietoturvaan. CLDC:n tietoturva määrittelee niin kutsutun hiekkalaatikkomallin (engl. sandbox model), jonka mukaan sovellusta tulee ajaa suljetussa 24

25 ympäristössä. Rajapinnat, joita sovellus saa käyttää, tulee olla määritelty konfiguraatiossa, profiilissa tai laitteen tukemassa OEM-luokassa (OEM - Original Equipment Manufacturer) (Kuva 3. 3). Hiekkalaatikkomalli esitellään tarkemmin lähteen [CLDC10a] kohdassa IMP Applications CLDC IMP OEM-Specific IMP Applications OEM- Specific Classes Native Applications Native System Software Device Hardware Kuva 3. 3 Mobiililaitteen ohjelmistoarkkitehtuuri. Luokkatiedostojen varmennus on konfiguraatiossa suunniteltu niin, että tiedoston esivarmennus (engl. preverification) tehdään jo kehitysympäristössä ennen tiedoston siirtämistä laitteelle (Kuva 3. 4). Ajonaikainen varmennus tapahtuu esivarmennuksessa luotujen attribuuttien avulla. Viimeinen merkittävä ero JVM:en liittyy sovelluksen sisältävän luokan muotoon ja sen lataamiseen laitteelle. Jotta yksi Mobiili Javan tärkeimmistä ominaisuuksista, sovellusten dynaaminen lataaminen laitteelle, voitaisiin toteuttaa, on konfiguraatio määritellyt luokille tietyt ominaisuudet liittyen niiden muotoon ja lataamiseen. [CLDC10a] Ensimmäinen CLDC:lle toteutettu virtuaalikone K virtual machine (KVM) on äärimmäisen niukka (engl. lean) virtuaalikone. Virtuaalikone tarvitsee ainoastaan muutaman sata kilotavua muistia toimiakseen. [Sun1] 25

26 Development Workstation Target Device (KVM Runtime) MyApp.java Javac Download Verifier MyApp.class Preverifier Interpreter MyApp.class Kuva 3. 4 Sovelluksen verifiointi Mobiili Javassa CLDC 1.1 Toteutettaessa tehokkaita tiedonkeruujärjestelmiä, joissa mobiililaite toimii osana järjestelmää, tulisi Mobiili Java sovelluksilla olla tuki liukuluvuille. Tämä onkin suurin lisäys mitä CLDC:n versioon 1.1 on tullut. Suunnittelijoiden (JSR-139 Expert group) mielestä CLDC:n määrittelyyn ei tarvinnut tehdä merkittäviä muutoksia. Ryhmä oli yleisesti tyytyväinen edelliseen versioon. Tästä johtuen versio 1.1 on vain määrittelyn seuraava askel, joka on täysin taaksepäin yhteensopiva version 1.0 kanssa. [CLDC11a, kohta 1.2] Joitakin asioita uuteen määrittelyyn on kuitenkin lisätty. Tärkeimpänä pidetty uusi ominaisuus on tuki liukuluvuille. Luokat java.lang.float ja java.lang.double tuovat mahdollisuuden käsitellä liukulukuja valmiiden metodien avulla [CLDCAPI]. Myös muita 26

27 kirjastoluokkia on jouduttu muokkaamaan liukulukutuen vuoksi. Toinen tärkeä muutos on heikon viittauksen (engl. weak reference) lisääminen. Heikon viittauksen avulla ohjelma voi säilyttää viitteen olioon, jottei automaattinen roskienkeruu tuhoa sitä [Sun6]. Uuteen konfiguraatioon on tehty myös monia pienempiä muutoksia kirjastoihin sekä muutama uusi luokka, kuten java.util.calendar, java.util.date, java.util.timezone ja java.lang.noclassdeffounderror [CLDCAPI]. Myös edellisessä versiossa ilmenneitä virheitä on korjattu. Näiden muutosten, erityisesti liukulukutuen lisäyksen johdosta, vaatimus muistintarpeelle on noussut 160 kilotavusta 192 kilotavuun. [CLDC11a, kohta 1.2] 3.3. IMP Hajautettujen mittaus- ja ohjausjärjestelmien laitteiden toiminnallisuuden toteuttaminen ja laitteiden yhdistäminen laajempaan järjestelmään, voidaan toteuttaa noudattamalla CLDCkonfiguraatioon kuuluvaa IMP-profiilia. Profiili on suunniteltu yhä kasvaville tarpeille toteuttaa dynaamisia ja etähallittavia sovelluksia erilaisille sulautetuille ja hajautetuille järjestelmille. Tällaisissa järjestelmissä etälaitteeseen ollaan yhteydessä verkon yli, yleensä langattomasti. Laitteessa itsessään ei tarvitse olla rajapintaa käyttäjälle. Profiili ei siis tue rajapintoja näytölle, eikä näppäimistölle. Se onkin ainoa asia, joka erottaa profiilin MIDP-profiilista. IMP:n luokkakirjastojen joukko on siis osajoukko MIDP:n luokkakirjastojen joukosta. Profiilien muu toiminnallisuus on identtinen, koska IMP on määritelty käyttäen MIDP-profiilia perustana IMP-profiilin ominaisuudet Profiili määrittelee sovellusten toiminnallisuuden sulautetuille etähallittaville laitteille sisältäen rajapinnat muun muassa verkkoyhteyden hallinnalle, paikalliselle tietovarastolle ja sovelluksen elinkaaren hallinnalle [IMPIndex]. Profiilia noudattavassa laitteessa tulee olla 160 kilotavua vapaata muistia virtuaalikoneelle ja luokkakirjastoille. Sen tulee myös tukea langatonta tietoliikennettä. Laitteen käyttöjärjestelmältä profiili vaatii vain vähäisiä 27

28 ominaisuuksia. Sen tulee kuitenkin muun muassa kyetä huolehtimaan keskeytyksistä, poikkeuksista ja aikatauluttamisesta. Käyttöjärjestelmän tulee mahdollistaa normaalit muistiin ja ulkoiseen rajapintaan kohdistuvat luku- ja kirjoitusoperaatiot. Profiili vaatii myös sovelluksen elinkaaren hallinnalle tietyt tukitoiminnot, josta enemmän profiilin määrittelyn liitteessä [IMP1.0 liite A]. [IMP1.0, kohdat 2.11 ja 2.1.2] Arkkitehtuuri. Profiilin mukaisten laitteiden ohjelmistoarkkitehtuuri voi sovellusten kannalta jakaantua kolmeen osaan Kuva 3. 3 mukaisesti. Laitteessa voidaan ajaa IMlettien (IMP-sovellus) lisäksi valmistajakohtaisia rajapintoja käyttäviä OEM-IMlettejä sekä laitteen oman käyttöjärjestelmän päälle tehtyjä sovelluksia. Valmistaja voi siis suunnitella omia OEM-luokkakirjastoja esimerkiksi laitteen oman I/O rajapinnan käyttämiseksi. Siirrettävyys eri valmistajien laitteiden välillä on kuitenkin mahdollista vain, jos IMleteissä käytetään ainoastaan IMP-profiilissa määriteltyjä rajapintoja. [IMP1.0, luku 3] Liittyminen laajempaan järjestelmään. Laitteen liittäminen laajempaan järjestelmään voidaan IMP-profiilia tukevissa laitteissa toteuttaa TCP/IP-protokollan päälle HTTPyhteyden avulla. Yhteys voidaan muodostaa myös WAP:ia (Wireless Application Protocol) käyttäen. WAP sisältää HTTP/TCP/IP-pinon tyyppisen protokollan, jossa vastaa WSP (Wireless Session Protocol) ja TCP/IP:tä vastaa WTP (Wireless Transaction Protocol). Myös WAP:n kaltaista i-modea voidaan käyttää laajempaan järjestelmään liittymisen osana. [IMP1.0, luku 6] Sovellusten dynaaminen lataaminen. Yksi Mobiili Java järjestelmien tärkeimmistä ominaisuuksista on mahdollisuus siirtää IMlettejä verkon yli laitteelle (OTA over-theair Provisioning). J2ME:n konfiguraatiot ja profiilit eivät kuitenkaan ota kantaa tapaan, jolla sovellus siirretään verkon yli ylemmän tason järjestelmältä laitteelle. Mobiili Java toteutusten siis oletetaan tukevan sovellusten dynaamista siirtoa laitteelle, mutta määrittelyt eivät ota kantaa tekniikkaan, jolla siirto tehdään. Tämä johtuu siitä, että mahdollisia teknisiä ratkaisuja on useita. Toisaalta myös siirtotapaan vaikuttavia tarpeita on erilaisia. Näistä syistä johtuen olisi ollut mahdotonta määritellä standardoitua tapaa siirtää sovelluksia laitteelle. [MIDP1.0, kohta 2.2] 28

29 Erilaiset siirtotavat on jätetty laitevalmistajien ja mahdollisten muiden määrittelyjen vastuulle. Esimerkki julkisesta määrittelystä sovellusten siirron toteuttamiseksi on Sunin julkaisu Over The Air User Initiated Provisioning Recommended Practice for the Mobile Information Device Profile [Sun5]. Laitevalmistajat voivat siis kuitenkin toteuttaa sovellusten siirron haluamallaan tavalla. Esimerkiksi Nokian mobiililaitteiden käyttämä M2M (Machine To Machine) Gateway perustuu CORBA:an (Common Object Request Broker Architecture). Sen oliopyyntöjen välityksen (ORB - Object Request Broker) avulla voidaan IMlettejä siirtää langattomasti ylemmän tason järjestelmältä laitteelle [Nokia12c]. Muistiin tallentaminen. Profiili tarjoaa mahdollisuuden tallentaa tietoa laitteen muistiin ja käyttää sitä myöhemmin. Tallennus mekanismin nimi on Record Management System (RMS). Tallennuksilla on sama elinkaari kuin IMlet Suitella (IMlet Suite on usean IMletin nippu), eli ne ovat pysyviä kunnes IMlet Suite tuhotaan. IMletit voivat käyttää muistiin tallennettuja tietoja ristiin yhden IMlet Suiten sisällä. Toinen IMlet voi tallentaa esimerkiksi mittaustietoa, jota toinen IMlet käsittelee. Tallennusoperaatiot ovat atomistisia, synkronoituja ja sarjallistettuja, joten tieto pysyy turmeltumattomana (engl. corrupt) myös päällekkäisten tallennusyritysten jälkeen. Tieto tallennetaan muistiin tavutaulukkoina (engl. byte array). RMS tarjoaa valmiit rajapinnat tallennettavan tiedon muuntamiseen tavutaulukoiksi, joten tallennettava tieto voi olla minkä muotoista tahansa. [IMP1.0, luku 7] IMletin ajoympäristö ja hallinta IMP-profiili määrittelee sitä noudattaville sovelluksille (IMlet) ja mobiililaitteille tietyt ominaisuudet, jotka niiden tulee toteuttaa. Tällaisia ovat esimerkiksi se, miten IMlet on pakattu, kun se siirretään laitteelle, millainen ajoympäristö laitteella on sovellusta varten ja kuinka laite voi hallita sovellusta sen elinkaaren ajan [IMP1.0, sivu 23]. Tätä sovelluksen hallintaa ja sen elinkaarta käsittelevää mallia kutsutaan sovellusmalliksi (engl. application model). Sovelluksen hallintaohjelma (engl. application management software AMS) tarjoaa ympäristön, jonne IMlet voidaan asentaa, jossa se voidaan käynnistää ja pysäyttää, ja josta 29

30 se voidaan poistaa (Kuva 3. 5). AMS huolehtii myös virheistä, joita edellisten toimintojen suorituksen aikana mahdollisesti tapahtuu. [IMP1.0, kohta 8.2] resumerequest() Paused pauseapp() startapp() Activated notifypaused() destroyapp() notifyrequest() Stopped destroyapp() Kuva 3. 5 IMletin tilat ja tilasiirtymiset. [Top02] IMletit pakataan JAR-tiedostoiksi (Java Archive [JAR]). Yhdessä tiedostossa voi olla useampia IMlettejä ja niiden käyttämiä luokkakirjastoja. JAR-paketissa tulee olla myös JAR manifesti, joka määrittää IMlet Suiten tunnistamisessa ja asentamisessa tarvittavat tiedot AMS:lle. Sovelluksen kuvaaja (engl. application descriptor) puolestaan kertoo AMS:lle paketin sisältämien IMlettin sopivuuden kyseiselle laitteelle. [IMP1.0, kohta 8.4 ja 8.5] IMP-NG Ensimmäiset versiot MIDP- ja IMP-profiileista ovat osoittaneet niissä joitakin selviä puutteita. Käytännön tutkimustuloksia on saatu erityisesti MIDP-profiilin ominaisuuksien riittävyydestä, ensimmäisen määrittelyn valmistuttua jo yli kolme vuotta sitten (JSR-37, Final Release, ). MIDP:stä onkin jo julkaistu versio 2.0. IMP-profiilin toista 30

31 versiota lähdettiin määrittelemään melkein heti ensimmäisen version valmistuttua kesällä Kuten ensimmäinen IMP-profiili perustui ensimmäiseen MIDP-profiiliin, tulee toinen IMP perustumaan toiseen MIDP:iin. IMP-NG tulee siis olemaan MIDP 2.0 profiilin osajoukko. IMP-NG profiili tulee olemaan taaksepäin yhteensopiva IMP 1.0 version kanssa. IMP-NG profiiliin tulee muutamia tärkeitä ominaisuuksia, kuten sovellusten varmentaminen, joka mahdollistaa allekirjoituksella varmennetun IMletin pääsyn laitteen omiin rajapintoihin. Tämä ominaisuus on puuttunut IMP:n ensimmäisestä versiosta, jossa kaikkia IMlettejä ajetaan hiekkalaatikko-mallin mukaisessa rajapinnoiltaan rajoitetussa ympäristössä. Muita tärkeitä ominaisuuksia uudessa profiilissa tulee olemaan HTTPS-tuki, pieni ja tehokas XML-muunnin (Extensible Markup Language), verkkoyhteyksien muodostaminen Javan Socket-rajapintaa käyttäen sekä sovellusten dynaaminen lataaminen laitteelle. Englanninkielinen termi OTA provisioning kuvaa tätä toimintoa, joka on määritelty omassa julkaisussaan [Sun5]. JCP tulee sisällyttämään julkaisun IMP-NG profiilin määrittelyyn. [JCP, kohta JSR-228] 31

32 4. Mobiili Java hajautetuissa järjestelmissä Hajautetuissa mittaus- ja ohjausjärjestelmissä laitteiden liittäminen järjestelmän osaksi on luonnollinen edellytys sen toiminnalle. Esimerkiksi mittausdatan siirtäminen etälaitteilta asiakkaille vaatii kommunikointia laitteiden ja muun järjestelmän välillä. Laitteiden etähallintaa puolestaan vaaditaan nykyaikaiselta mittaus- ja ohjausjärjestelmältä elinkaarenhallinnan ja kustannustehokkuuden vuoksi. Mobiili Javan TCP/IP-tuki mahdollistaa PC-maailmassa kehitettyjen joustavien kommunikointitapojen käytön myös sulautetuissa järjestelmissä Liittyminen laajempaan järjestelmään Järjestelmäarkkitehtuuri vaikuttaa hajautetun järjestelmän ominaisuuksiin erityisen paljon. Erilaiset tavat jakaa vastuu järjestelmän eri osille vaikuttaa voimakkaasti sen suorituskykyyn, luotettavuuteen ja turvallisuuteen. Vastuuta voidaan keskittää johonkin verkon osaan erityisesti tai jakaa laajemmin hajautetuille komponenteille. [CoDoKi01] 32

33 Järjestelmäarkkitehtuurit Asiakas-palvelin -malli on tällä hetkellä käytetyin ja historiallisesti merkittävin hajautusmalli. Suurin osa Internetin hajautuksesta perustuu tähän malliin. Sen perusideana on keskittää toimintoja ja palveluja verkon yksittäisille solmuille (Kuva 4. 1). Näiden solmujen palveluja voivat järjestelmän muut komponentit käyttää verkon yli. Tällaisissa verkoissa palvelimien määrä on pienempi kuin asiakkaiden, eli toiminnot ja älykkyys on keskitettyä. [CoDoKi01] Client Result Invocation Server Result Client Result Invocation Client Kuva 4. 1 Perinteinen asiakas-palvelin malli. Mittaus- ja ohjausjärjestelmissä toiminnot ja palvelut hajautetaan eripuolille verkkoa, jolloin palvelimien määrä kasvaakin asiakaskomponentteja suuremmaksi (Kuva 4. 2). Ohjelmistoteknisesti hajautetut mittalaitteet toimivat kuitenkin yleensä asiakassovelluksina, johtuen niiden kevyemmistä vaatimuksista toiminnallisuuden ja resurssien kulutuksen osalta. 33

Integrointi. Ohjelmistotekniikka kevät 2003

Integrointi. Ohjelmistotekniikka kevät 2003 Integrointi Ohjelmistotekniikka kevät 2003 ERP (Toiminnanohjausjärjestelmä) Myynti Henkilöstö, palkanlaskenta Kirjanpito Myynti Myyjät Extranet Tietovarasto Laskutus, reskontrat Asiakas ERP Asiakasrekisteri

Lisätiedot

Vaatimusmäärittely Ohjelma-ajanvälitys komponentti

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

Lisätiedot

in condition monitoring

in condition monitoring Etäteknologioiden automaatiosovellukset Using e-speak e in condition monitoring tutkija professori Hannu Koivisto Sisältö Tausta Globaali kunnonvalvontajärjestelmä E-speak globaalissa kunnonvalvontajärjestelmässä

Lisätiedot

Hajautettujen järjestelmien rakentaminen - Jini. Ohjelmistotuotantovälineet-seminaarin esitelmä

Hajautettujen järjestelmien rakentaminen - Jini. Ohjelmistotuotantovälineet-seminaarin esitelmä Hajautettujen järjestelmien rakentaminen - Jini Ohjelmistotuotantovälineet-seminaarin esitelmä Anu K. Leponiemi (anu@lepo.net) Helsingin yliopisto Tietojenkäsittelytieteen laitos Helsinki 2000 SISÄLLYSLUETTELO

Lisätiedot

Sovellusarkkitehtuurit

Sovellusarkkitehtuurit HELIA TiKo-05 1 (9) Sovellusarkkitehtuurit ODBC (Open Database Connectivity)... 2 JDBC (Java Database Connectivity)... 5 Middleware... 6 Middleware luokittelu... 7 Tietokanta -middleware... 8 Tapahtumamonitorit

Lisätiedot

Järjestelmäarkkitehtuuri (TK081702) Web Services. Web Services

Järjestelmäarkkitehtuuri (TK081702) Web Services. Web Services Järjestelmäarkkitehtuuri (TK081702) Standardoidutu tapa integroida sovelluksia Internetin kautta avointen protokollien ja rajapintojen avulla. tekniikka mahdollista ITjärjestelmien liittämiseen yrityskumppaneiden

Lisätiedot

Aurinkoenergiajärjestelmien etäseurantajärjestelmä

Aurinkoenergiajärjestelmien etäseurantajärjestelmä Aurinkoenergiajärjestelmien etäseurantajärjestelmä Janne Raitaniemi (Bitec Oy) Saku Rantamäki (SAMK) Aurinkoenergiajärjestelmien luonne järjestelmien odotettu elinkaari on pitkä investoinnin kannattavuus

Lisätiedot

Pertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro1 29.10.2013

Pertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro1 29.10.2013 Virtualisointi Pertti Pennanen DOKUMENTTI 1 (5) SISÄLLYSLUETTELO Virtualisointi... 2 Virtualisointiohjelmia... 2 Virtualisointitapoja... 2 Verkkovirtualisointi... 2 Pertti Pennanen DOKUMENTTI 2 (5) Virtualisointi

Lisätiedot

Ohjelmistoarkkitehtuuri. Verkotettu multimedia. Multimedian vaikutukset. Mediavirtojen puskurointi. Ohjelmointi. Selain-ohjelmistoarkkitehtuuri

Ohjelmistoarkkitehtuuri. Verkotettu multimedia. Multimedian vaikutukset. Mediavirtojen puskurointi. Ohjelmointi. Selain-ohjelmistoarkkitehtuuri Ohjelmistoarkkitehtuuri Verkotettu multimedia Käyttöliittymä Middleware Tietoliikenne 1 2 Multimedian vaikutukset Mediavirtojen puskurointi 3 4 Ohjelmointi Selain-ohjelmistoarkkitehtuuri 5 6 WWW-arkkitehtuuri

Lisätiedot

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

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

Lisätiedot

Tietojärjestelmien yhteensovittaminen turvallisesti älykkäisiin koneisiin

Tietojärjestelmien yhteensovittaminen turvallisesti älykkäisiin koneisiin Tietojärjestelmien yhteensovittaminen turvallisesti älykkäisiin koneisiin Tampereen teknillinen yliopisto 28.1.2010 Jouni Vuorensivu Remion Ltd. www.remion.com jouni.vuorensivu@remion.com Jouni Vuorensivu

Lisätiedot

ZENworks Application Virtualization 11

ZENworks Application Virtualization 11 ZENworks Application Virtualization 11 ZENworks / perinteinen asennus ZENworks virtualisointi Ei erillistä asennusta Ei vaadita erilisiä oikeuksia Oletusasetukset mukana Eri versiot samanaikaisesti Sama

Lisätiedot

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo Concurrency - Rinnakkaisuus Group: 9 Joni Laine Juho Vähätalo Sisällysluettelo 1. Johdanto... 3 2. C++ thread... 4 3. Python multiprocessing... 6 4. Java ExecutorService... 8 5. Yhteenveto... 9 6. Lähteet...

Lisätiedot

Toimilohkojen turvallisuus tulevaisuudessa

Toimilohkojen turvallisuus tulevaisuudessa Toimilohkojen turvallisuus tulevaisuudessa Turvallisuusseminaari ASAF 30.10-1.11.2006 Mika Strömman Teknillinen korkeakoulu 1 Sisältö Luotettavuuden lisääminen hyvillä tavoilla Toimilohkokirjastot Turvatoimilohkot

Lisätiedot

Tietojärjestelmäarkkitehtuurit

Tietojärjestelmäarkkitehtuurit Tietojärjestelmäarkkitehtuurit ITK130 Johdatus ohjelmistotekniikkaan Syksy 2003 Sami Kollanus 1 Aluksi Tietojärjestelmäarkkitehtuurit vs. ohjelmistoarkkitehtuurit Pohjana Tietojärjestelmäarkkitehtuurit

Lisätiedot

Agenda. Johdanto Ominaispiirteitä Kokonaisjärjestelmän määrittely Eri alojen edustajien roolit Sulautetut järjestelmät ja sulautettu ohjelmointi

Agenda. Johdanto Ominaispiirteitä Kokonaisjärjestelmän määrittely Eri alojen edustajien roolit Sulautetut järjestelmät ja sulautettu ohjelmointi 1. Luento: Sulautetut Järjestelmät Arto Salminen, arto.salminen@tut.fi Agenda Johdanto Ominaispiirteitä Kokonaisjärjestelmän määrittely Eri alojen edustajien roolit Sulautetut järjestelmät ja sulautettu

Lisätiedot

TURVALLISEN TEKNIIKAN SEMINAARI 2003. Laitteiden etähallinta tietoverkkojen välityksellä Jani Järvinen, tuotepäällikkö

TURVALLISEN TEKNIIKAN SEMINAARI 2003. Laitteiden etähallinta tietoverkkojen välityksellä Jani Järvinen, tuotepäällikkö TURVALLISEN TEKNIIKAN SEMINAARI 2003 Laitteiden etähallinta tietoverkkojen välityksellä Jani Järvinen, tuotepäällikkö Mitä on etähallinta? Jotain muuta kuin laitteen välittömässä läheisyydessä tapahtuvaa

Lisätiedot

Palvelun toteuttaminen hajautetussa palvelualustassa

Palvelun toteuttaminen hajautetussa palvelualustassa toteuttaminen hajautetussa palvelualustassa Diplomityöseminaariesitys 20.8.2002 Mika Laurell Aihe Aihe: toteuttaminen hajautetussa palvelualustassa Valvoja: prof. Seppo J. Halme, Teknillinen korkeakoulu

Lisätiedot

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

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

Lisätiedot

Web sovelluksen kehittäminen sähkönjakeluverkon suojareleisiin

Web 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ätiedot

Mobiilin MIDP-sovelluksen toteutus ja suorituskyky XML-pohjaisilla yhteyskäytännöillä

Mobiilin MIDP-sovelluksen toteutus ja suorituskyky XML-pohjaisilla yhteyskäytännöillä Mobiilin MIDP-sovelluksen toteutus ja suorituskyky XML-pohjaisilla yhteyskäytännöillä Heikki Holopainen 6.5.05 Joensuun yliopisto Tietojenkäsittelytiede Pro gradu -tutkielma TIIVISTELMÄ Ohjelmistojen kehitys

Lisätiedot

Virtualisointiympäristössä on kolme pääosaa: isäntä (host), virtualisointikerros ja vieras (guest).

Virtualisointiympäristössä on kolme pääosaa: isäntä (host), virtualisointikerros ja vieras (guest). 1 Virtualisoinnin avulla voidaan purkaa suora linkki suoritettavan sovelluksen (tai käyttöjärjestelmän tms.) ja sitä suorittavan laitteiston välillä. Näin saavutetaan joustavuutta laitteiston käytössä.

Lisätiedot

FuturaPlan. Järjestelmävaatimukset

FuturaPlan. Järjestelmävaatimukset FuturaPlan Järjestelmävaatimukset 25.1.2017 2.2 Hermiankatu 8 D tel. +358 3 359 9600 VAT FI05997751 33720 Tampere fax. +358 3 359 9660 www.dbmanager.fi i Versiot Versio Päivämäärä Tekijä Kommentit 1.0

Lisätiedot

Järjestelmäarkkitehtuuri (TK081702)

Jä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ätiedot

mikä sen merkitys on liikkuvalle ammattilaiselle?

mikä sen merkitys on liikkuvalle ammattilaiselle? artikkeli WWAN-verkko WWAN-verkko: mikä sen merkitys on liikkuvalle ammattilaiselle? Nopeiden, saumattomien yhteyksien merkitys minkä tahansa yrityksen menestykseen sekä liikkuvan ammattilaisen tehokkuuteen

Lisätiedot

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

Jä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ätiedot

Web-palveluiden toteutus älykortille

Web-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ätiedot

Älykästä. kulunvalvontaa. toimii asiakkaan omassa tietoverkossa

Älykästä. kulunvalvontaa. toimii asiakkaan omassa tietoverkossa Älykästä kulunvalvontaa e Acces toimii asiakkaan omassa tietoverkossa Perinteisen kulunvalvonnan seitsemän pullonkaulaa eli miksi useat yritykset eivät ole hankkineet kulunvalvontajärjestelmää? 1. Koska

Lisätiedot

XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy

XPages 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ätiedot

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

Järjestelmäarkkitehtuuri (TK081702) Lähtökohta. Integroinnin tavoitteet Järjestelmäarkkitehtuuri (TK081702) Integraation tavoitteita Lähtökohta Web-palvelut Asiakasrekisteri ERP, Tuotannon ohjaus Tuotanto Myynti Intranet Extranet? CRM Johdon tuki Henkilöstö Kirjanpito Palkanlaskenta

Lisätiedot

KODAK EIM & RIM VIParchive Ratkaisut

KODAK EIM & RIM VIParchive Ratkaisut ATK Päivät 2006 Mikkeli KODAK EIM & RIM VIParchive Ratkaisut 29.-30.5. 2006 Stefan Lindqvist HCIS Sales Specialist Health Care Information Systems Kodak Health Group 3/24/2013 1 Arkistoinnin haasteita

Lisätiedot

.NET ajoympäristö. Juha Järvensivu 2007

.NET ajoympäristö. Juha Järvensivu 2007 .NET ajoympäristö Juha Järvensivu juha.jarvensivu@tut.fi 2007 Käännösprosessi C# lähdekoodi C# kääntäjä CILtavukoodi JITkäännös Ajettava natiivikoodi Kehitysympäristössä ohjelmoijan toimesta Ajonaikana.NET

Lisätiedot

TURVAVÄYLÄSEMINAARI. Erilaiset kenttäväylät ja niiden kehitys 13.11.2002. Jukka Hiltunen

TURVAVÄYLÄSEMINAARI. Erilaiset kenttäväylät ja niiden kehitys 13.11.2002. Jukka Hiltunen TURVAVÄYLÄSEMINAARI Erilaiset kenttäväylät ja niiden kehitys 13.11.2002 Jukka Hiltunen Miksi väylätekniikkaa? 1. luonnolliset perusteet: : kehittyneiden kenttälaitteiden ja ylemmän tason laitteiden välille

Lisätiedot

AKKREDITOITU TESTAUSLABORATORIO ACCREDITED TESTING LABORATORY WE CERTIFICATION OY OPERATOR LABORATORY

AKKREDITOITU TESTAUSLABORATORIO ACCREDITED TESTING LABORATORY WE CERTIFICATION OY OPERATOR LABORATORY T304/A01/2017 Liite 1 / Appendix 1 Sivu / Page 1(5) AKKREDITOITU TESTAUSLABORATORIO ACCREDITED TESTING LABORATORY WE CERTIFICATION OY OPERATOR LABORATORY Tunnus Code Laboratorio Laboratory Osoite Address

Lisätiedot

IoT-järjestelmän ja ulkovalaistuksen ohjauksen hankinta -markkinavuoropuhelutilaisuus

IoT-järjestelmän ja ulkovalaistuksen ohjauksen hankinta -markkinavuoropuhelutilaisuus IoT-järjestelmän ja ulkovalaistuksen ohjauksen hankinta -markkinavuoropuhelutilaisuus Teknologia-arkkitehtuuri ja rajapinnat/integraatiot 21.3.2019 Sisältö Alustojen asemoituminen ja pilvivalmius Arkkitehtuuriperiaatteet

Lisätiedot

Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin

Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin Ville Leppänen HSMT, c Ville Leppänen, IT, Turun yliopisto, 2009 p.1/15 HSMT (Java-kielellä) Aineopintotasoinen kurssi, 5op. Luennot:

Lisätiedot

Linux 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 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ätiedot

Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat

Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat Teollisuusautomaation tietoturvaseminaari Purchasing Manager, Hydro Lead Buyer, Industrial Control Systems 1 Agenda / esityksen tavoite

Lisätiedot

Kaikki analogiset järjestelmät digitaalisiksi ja verkkokäyttöisiksi - jo tänään Kustannustekkuutta ja joustavuutta työskentelyyn

Kaikki analogiset järjestelmät digitaalisiksi ja verkkokäyttöisiksi - jo tänään Kustannustekkuutta ja joustavuutta työskentelyyn Kaikki analogiset järjestelmät digitaalisiksi ja verkkokäyttöisiksi - jo tänään Kustannustekkuutta ja joustavuutta työskentelyyn Terveydenhuollon 29. ATK-päivät Jyväskylä 25-27.5.2003 Verkostoitumisen

Lisätiedot

Turvallinen etäkäyttö Aaltoyliopistossa

Turvallinen etäkäyttö Aaltoyliopistossa Turvallinen etäkäyttö Aaltoyliopistossa Diplomityöseminaari Ville Pursiainen Aalto-yliopiston tietotekniikkapalvelut Valvoja: Prof Patric Östergård, Ohjaajat: DI Jari Kotomäki, DI Tommi Saranpää 7.10.2016

Lisätiedot

Työasemien hallinta Microsoft System Center Configuration Manager 2007. Jarno Mäki Head of Training Operations M.Eng, MCT, MCSE:Security, MCTS

Työasemien hallinta Microsoft System Center Configuration Manager 2007. Jarno Mäki Head of Training Operations M.Eng, MCT, MCSE:Security, MCTS Työasemien hallinta Microsoft System Center Configuration Jarno Mäki Head of Training Operations M.Eng, MCT, MCSE:Security, MCTS IT Education Center Agenda Yleistä työasemien hallinnasta Työasemien hallinta

Lisätiedot

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

Alkuraportti. 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ätiedot

Action Request System

Action 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ätiedot

Home Media Server. Home Media Server -sovelluksen asentaminen tietokoneeseen. Mediatiedostojen hallinta. Home Media Server

Home Media Server. Home Media Server -sovelluksen asentaminen tietokoneeseen. Mediatiedostojen hallinta. Home Media Server 2007 Nokia. Kaikki oikeudet pidätetään. Nokia, Nokia Connecting People ja Nseries ovat Nokia Oyj:n tavaramerkkejä tai rekisteröityjä tavaramerkkejä. Muut tässä asiakirjassa mainitut tuotteiden ja yritysten

Lisätiedot

Vuorekseen liittyvä tutkimusja kehitysprojekti. Langaton Vuores. Kotikatupalvelin

Vuorekseen liittyvä tutkimusja kehitysprojekti. Langaton Vuores. Kotikatupalvelin Vuorekseen liittyvä tutkimusja kehitysprojekti Langaton Vuores Kotikatupalvelin Tutkimuksen tausta Langaton tietoliikenne on arkipäivää Personoidut päätelaitteet (taskutietokone, matkapuhelin, kannettava

Lisätiedot

TEKNIIKAN JA LIIKENTEEN TOIMIALA. Tietotekniikka. Ohjelmistotekniikka INSINÖÖRITYÖ

TEKNIIKAN JA LIIKENTEEN TOIMIALA. Tietotekniikka. Ohjelmistotekniikka INSINÖÖRITYÖ TEKNIIKAN JA LIIKENTEEN TOIMIALA Tietotekniikka Ohjelmistotekniikka INSINÖÖRITYÖ SOVELLUSKEHYS VETOBOX-SOVELLUSPALVELIMEN MOBIILEILLE KÄYTTÖLIITTYMÄSOVELLUKSILLE Työn tekijä: Marko Heiskanen Työn valvoja:

Lisätiedot

Tikon ostolaskujen käsittely

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

Lisätiedot

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta 21.12.200 7

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta 21.12.200 7 Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta 21.12.200 7 Mikä on IT arkkitehtuuri? Liiketoimintamalli määrittelee IT arkkitehtuurin IT arkkitehtuuri ottaa kantaa sovelluksen laadullisiin vaatimuksiin

Lisätiedot

BACnet protokolla kiinteistöautomaatiossa

BACnet protokolla kiinteistöautomaatiossa BACnet protokolla kiinteistöautomaatiossa Yrityksen toimintamalli Toimitusjohtajataso Toimitusjohtajan tehtävät Organisoi ja valvoo organisaation toimintaa sekä reagoi tarvittaessa. Myös raportointi on

Lisätiedot

TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO

TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO TEHTÄVÄ 2: Symantec Endpoint Protection Manager, SEPM keskitetyn tietoturva hallintaohjelmiston asennus, sekä vaadittavien palveluiden/roolien käyttöönottaminen

Lisätiedot

SOA SIG SOA Tuotetoimittajan näkökulma

SOA SIG SOA Tuotetoimittajan näkökulma SOA SIG SOA Tuotetoimittajan näkökulma 12.11.2007 Kimmo Kaskikallio IT Architect Sisältö IBM SOA Palveluiden elinkaarimalli IBM Tuotteet elinkaarimallin tukena Palvelukeskeinen arkkitehtuuri (SOA) Eri

Lisätiedot

HOJ J2EE & EJB & SOAP &...

HOJ J2EE & EJB & SOAP &... HOJ J2EE & EJB & SOAP &... Ville Leppänen HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/18 Missä mennään... 1. Johdanto (1h) 2. Säikeet (2h) 3. Samanaikaisuudesta (2h) 4. Hajautetuista sovelluksista

Lisätiedot

IBM Iptorin pilven reunalla

IBM Iptorin pilven reunalla IBM Iptorin pilven reunalla Teppo Seesto Arkkitehti Pilvilinnat seesto@fi.ibm.com Cloud Computing Pilvipalvelut IT:n teollistaminen Itsepalvelu Maksu käytön mukaan Nopea toimitus IT-palvelujen webbikauppa

Lisätiedot

JAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A274615 JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++?

JAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A274615 JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++? JAVA-OHJELMOINTI 3op A274615 JAVAN PERUSTEET LYHYT KERTAUS Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: http://java.sun.com/docs/books/tutorial/index.html Vesterholm, Kyppö: Java-ohjelmointi,

Lisätiedot

HSMT J2EE & EJB & SOAP &...

HSMT J2EE & EJB & SOAP &... HSMT J2EE & EJB & SOAP &... Ville Leppänen HSMT, c Ville Leppänen, IT, Turun yliopisto, 2011 p.1/15 Missä mennään... 1. Johdanto (1h) 2. Säikeet (2h) 3. Samanaikaisuudesta (2h) 4. Hajautetuista sovelluksista

Lisätiedot

Järjestelmäarkkitehtuuri (TK081702) Hajautettu tietokanta. Hajautuksen hyötyjä

Järjestelmäarkkitehtuuri (TK081702) Hajautettu tietokanta. Hajautuksen hyötyjä Järjestelmäarkkitehtuuri (TK081702) Hajautettu tietokanta Hajautettu tietokanta Jokainen hajautettu tietokanta muodostaa oman kokonaisuutensa Loogisesti yhtenäinen data on hajautettu tietokantoihin (eri

Lisätiedot

1 YLEISKUVAUS... 2. 1.1 Kaapelikaistaliittymä... 2. 1.2 Palvelun rajoitukset... 2 2 PALVELUKOMPONENTIT... 3. 2.1 Päätelaite... 3. 2.2 Nopeus...

1 YLEISKUVAUS... 2. 1.1 Kaapelikaistaliittymä... 2. 1.2 Palvelun rajoitukset... 2 2 PALVELUKOMPONENTIT... 3. 2.1 Päätelaite... 3. 2.2 Nopeus... Palvelukuvaus 1 Sisällysluettelo 1 YLEISKUVAUS... 2 1.1 Kaapelikaistaliittymä... 2 1.2 Palvelun rajoitukset... 2 2 PALVELUKOMPONENTIT... 3 2.1 Päätelaite... 3 2.2 Nopeus... 3 2.3 IP- osoitteet... 3 3 TOIMITUS

Lisätiedot

Selvitysraportti. MySQL serverin asennus Windows ympäristöön

Selvitysraportti. MySQL serverin asennus Windows ympäristöön Selvitysraportti MySQL serverin asennus Windows ympäristöön IIO30200 / Jouni Huotari Arto Sorsa / F3900 CREATIVE COMMONS LISENSOITU http://creativecommons.org/licenses/by-nc-sa/1.0/fi/ 26.4.2010 1 SISÄLTÖ

Lisätiedot

Järjestelmäarkkitehtuuri (TK081702) Yritysarkkitehtuuri. Muutostarpeet

Järjestelmäarkkitehtuuri (TK081702) Yritysarkkitehtuuri. Muutostarpeet Järjestelmäarkkitehtuuri (TK081702) Ympäristö Muutostarpeet ja niihin vastaaminen Yritysarkkitehtuuri Liiketoiminta-arkkitehtuuri Tavoitteet, Palvelut, Prosessit Informaatioarkkitehtuuri Tietotarpeet,

Lisätiedot

Android ohjelmointi. Mobiiliohjelmointi 2-3T5245

Android 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ätiedot

TIES530 TIES530. Moniprosessorijärjestelmät. Moniprosessorijärjestelmät. Miksi moniprosessorijärjestelmä?

TIES530 TIES530. Moniprosessorijärjestelmät. Moniprosessorijärjestelmät. Miksi moniprosessorijärjestelmä? Miksi moniprosessorijärjestelmä? Laskentaa voidaan hajauttaa useammille prosessoreille nopeuden, modulaarisuuden ja luotettavuuden vaatimuksesta tai hajauttaminen voi helpottaa ohjelmointia. Voi olla järkevää

Lisätiedot

Taitaja 2015 Windows finaalitehtävä

Taitaja 2015 Windows finaalitehtävä Taitaja 2015 Windows finaalitehtävä Tehtäväkuvaus Tehtävänäsi on siirtää, asentaa ja määritellä yrityksen Windows -ratkaisuihin perustuva IT-ympäristö. Käytä salasanaa Qwerty123, jos muuta ei ole pyydetty.

Lisätiedot

LANGATON TIEDONSIIRTO ENERGIA

LANGATON TIEDONSIIRTO ENERGIA LANGATON TIEDONSIIRTO ENERGIA Radiomodeemit ovat yksi luotettavimmista tavoista langattomaan tiedonsiirtoon toimintakriittisissä -sovelluksissa kuten sähköntuotannossa, -siirrossa ja -jakelussa. Satel

Lisätiedot

Omat Lähdöt ohjelmointirajapinta: Versio 1.01

Omat Lähdöt ohjelmointirajapinta: Versio 1.01 Sivu 1(19) Omat Lähdöt ohjelmointirajapinta: Versio 1.01 Seasam House Oy Helsingin seudun liikenne Hyväksynyt: Päivämäärä: Hyväksynyt: Päivämäärä: www.seasam.com Sivu 2(19) Versio historia Versio 0.01

Lisätiedot

Tuotantokoneen langaton etädiagnostiikka

Tuotantokoneen langaton etädiagnostiikka Tuotantokoneen langaton etädiagnostiikka Esa Salminen esa@ac.tut.fi Jari Seppälä Puh. (03) 3115 2967, telefax (03) 3115 2340, jari.seppala@tut.fi Mikko Salmenperä Puh. (03) 3115 4203, telefax (03) 3115

Lisätiedot

Terveydenhuollon Atk-päivät 2009

Terveydenhuollon Atk-päivät 2009 Terveydenhuollon Atk-päivät 2009 26. 27.5.2009, Jyväskylä Mika Kolhinoja Teknologiakonsultti Citrix CCA, Citrix CCEA, Citrix CCSP, Microsoft MCP, Microsoft MCSA, Microsoft MCSE, Microsoft MCTS, Microsoft

Lisätiedot

Sisäänrakennettu tietosuoja ja ohjelmistokehitys

Sisäänrakennettu tietosuoja ja ohjelmistokehitys Sisäänrakennettu tietosuoja ja ohjelmistokehitys Petri Strandén 14. kesäkuuta, 2018 Petri Strandén Manager Cyber Security Services Application Technologies Petri.stranden@kpmg.fi Petri vastaa KPMG:n Technology

Lisätiedot

Liite 1: KualiKSB skenaariot ja PoC tulokset. 1. Palvelun kehittäjän näkökulma. KualiKSB. Sivu 1. Tilanne Vaatimus Ongelma jos vaatimus ei toteudu

Liite 1: KualiKSB skenaariot ja PoC tulokset. 1. Palvelun kehittäjän näkökulma. KualiKSB. Sivu 1. Tilanne Vaatimus Ongelma jos vaatimus ei toteudu Liite 1: skenaariot ja PoC tulokset 1. Palvelun kehittäjän näkökulma Tilanne Vaatimus Ongelma jos vaatimus ei toteudu Palvelun uusi versio on Palveluiden kehittäminen voitava asentaa tuotantoon vaikeutuu

Lisätiedot

Palveluperustaiset arkkitehtuurityylit

Palveluperustaiset arkkitehtuurityylit Palveluperustaiset arkkitehtuurityylit Mukana palvelun tarjoajia ja palvelun käyttäjiä Perusajatuksena tyypillisesti tarjota johonkin resurssiin liittyviä palveluita 1 Asiakas-palvelin -arkkitehtuurit

Lisätiedot

29.11.2015. Työasema- ja palvelinarkkitehtuurit IC130301. Storage. Storage - trendit. 5 opintopistettä. Petri Nuutinen

29.11.2015. Työasema- ja palvelinarkkitehtuurit IC130301. Storage. Storage - trendit. 5 opintopistettä. Petri Nuutinen Työasema- ja palvelinarkkitehtuurit IC130301 5 opintopistettä Petri Nuutinen 5 opintopistettä Petri Nuutinen Storage Storage hallinnassa tärkeää saatavuus laajentaminen turvaaminen optimointi Storagen

Lisätiedot

Perusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita.

Perusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita. Perusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita. Arkkitehtuuriin vaikuttavat ympäristötekijät Jo kehittämisen alkuvaiheessa on tarpeellista hahmotella arkkitehtuurin perusratkaisu. Lähtökohdat

Lisätiedot

Älykkäät sähköverkot puuttuuko vielä jotakin? Jukka Tuukkanen. Joulukuu 2010. Siemens Osakeyhtiö

Älykkäät sähköverkot puuttuuko vielä jotakin? Jukka Tuukkanen. Joulukuu 2010. Siemens Osakeyhtiö Älykkäät sähköverkot puuttuuko vielä jotakin? Jukka Tuukkanen Smart grid mahdollistaa tulevaisuuden vision toteutumisen Strateginen suunnittelu Mistä aloittaa? Mihin investoida? Mitä teknologioita valita?

Lisätiedot

Tietoturva ja käyttäjäkohtaisuus älykkäässä verkottamisessa Pekka Isomäki TeliaSonera Finland Oyj

Tietoturva ja käyttäjäkohtaisuus älykkäässä verkottamisessa Pekka Isomäki TeliaSonera Finland Oyj Tietoturva ja käyttäjäkohtaisuus älykkäässä verkottamisessa Pekka Isomäki TeliaSonera Finland Oyj Tulevaisuuden tietoverkot ovat älykkäitä 2 Verkon rakentuminen Tietokannat Todentaminen ja oikeudet Yritysjohto

Lisätiedot

Langattoman kotiverkon mahdollisuudet

Langattoman kotiverkon mahdollisuudet Langattoman kotiverkon mahdollisuudet Tietoisku 5.4.2016 mikko.kaariainen@opisto.hel.fi Lataa tietoiskun materiaali netistä, kirjoita osoite selaimen osoitelokeroon: opi.opisto.hel.fi/mikko Tietoverkot

Lisätiedot

Menetelmäraportti - Konfiguraationhallinta

Menetelmäraportti - Konfiguraationhallinta Menetelmäraportti - Konfiguraationhallinta Päiväys Tekijä 22.03.02 Ville Vaittinen Sisällysluettelo 1. Johdanto... 3 1.1 Tärkeimmät lyhenteet... 3 2. Konfiguraationhallinnan tärkeimmät välineet... 4 2.1

Lisätiedot

PIKAOPAS NOKIA PC SUITE 4.3. Nokia 8310 -puhelimelle. Copyright Nokia Mobile Phones 2001. Kaikki oikeudet pidätetään Issue 6

PIKAOPAS NOKIA PC SUITE 4.3. Nokia 8310 -puhelimelle. Copyright Nokia Mobile Phones 2001. Kaikki oikeudet pidätetään Issue 6 PIKAOPAS NOKIA PC SUITE 4.3 Nokia 8310 -puhelimelle Copyright Nokia Mobile Phones 2001. Kaikki oikeudet pidätetään Issue 6 Sisällysluettelo 1. JOHDANTO...1 2. JÄRJESTELMÄVAATIMUKSET...1 3. PC SUITE -OHJELMISTON

Lisätiedot

Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista

Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista 582101 - Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista 1 Ohjelmistotuotannon työkaluuista Projektinhallintatyökalut (ei käsitellä tällä kurssilla) CASE- ja mallinnustyökalut (esim. Poseidon)

Lisätiedot

The administrative process of a cluster. Santtu Rantanen Valvoja: Prof. Jorma Jormakka

The administrative process of a cluster. Santtu Rantanen Valvoja: Prof. Jorma Jormakka The administrative process of a cluster Santtu Rantanen Valvoja: Prof. Jorma Jormakka Sisällysluettelo Johdanto Yleistä HA klustereista Tietoturva klustereissa Hallintaprosessi Johtopäätökset Johdanto

Lisätiedot

Teollisuuden uudistuvat liiketoimintamallit Teollinen Internet (Smart Grid) uudistusten mahdollistajana

Teollisuuden uudistuvat liiketoimintamallit Teollinen Internet (Smart Grid) uudistusten mahdollistajana Teollisuuden uudistuvat liiketoimintamallit Teollinen Internet (Smart Grid) uudistusten mahdollistajana 2/27/2014 Ind. Internet_energy 1 2/27/2014 Ind. Internet_energy 2 Energia- ym. teollisuuden tietoympäristö

Lisätiedot

Teknisiä käsitteitä, lyhenteitä ja määritelmiä

Teknisiä käsitteitä, lyhenteitä ja määritelmiä Teknisiä käsitteitä, lyhenteitä ja määritelmiä Yleistä Asuinkiinteistön monipalveluverkko Asuinkiinteistön viestintäverkko, joka välittää suuren joukon palveluja, on avoin palveluille ja teleyritysten

Lisätiedot

Tekninen suunnitelma - StatbeatMOBILE

Tekninen 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ätiedot

Virtualisoi viisaasti paranna palvelua. Iikka Taanila Systems Architect IBM Systems and Technology Group

Virtualisoi viisaasti paranna palvelua. Iikka Taanila Systems Architect IBM Systems and Technology Group Virtualisoi viisaasti paranna palvelua Iikka Taanila Systems Architect IBM Systems and Technology Group Älykkäämpi IT Web Servers App Servers End Users App Servers App Servers App/DB Server App/DB Servers

Lisätiedot

Tiedon analysoinnista pitkäaikaissäilytykseen

Tiedon analysoinnista pitkäaikaissäilytykseen Tiedon analysoinnista pitkäaikaissäilytykseen Jari Nästi, Client Technical Professional - Tivoli Software Perhosvaikutus eli perhosefekti (engl. "butterfly effect") on kaaosteoriassa käytetty kuvaus siitä,

Lisätiedot

KESKITETTY RAIDELIIKENTEEN INFORMAATIOJÄRJESTELMÄ. Järjestelmän yleiskuvaus

KESKITETTY RAIDELIIKENTEEN INFORMAATIOJÄRJESTELMÄ. Järjestelmän yleiskuvaus KESKITETTY RAIDELIIKENTEEN INFORMAATIOJÄRJESTELMÄ Järjestelmän yleiskuvaus Laatinut Tarkastanut Hyväksynyt Kari Ryyppö Tarkoitus: Keskitetyn raideliikenteen informaatiojärjestelmän ohjausjärjestelmän tekninen

Lisätiedot

Security server v6 installation requirements

Security server v6 installation requirements CSC Security server v6 installation requirements Security server version 6.x. Version 0.2 Pekka Muhonen 2/10/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes Contents

Lisätiedot

Projektityö: Mobiiliajopäiväkirja. Mikko Suomalainen

Projektityö: 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ätiedot

Sisäilmaston mittaus hyödyntää langatonta anturiteknologiaa:

Sisäilmaston mittaus hyödyntää langatonta anturiteknologiaa: Ismo Grönvall/Timo/TUTA 0353064 Tehtävä 5: Sisäilmaston mittaus hyödyntää langatonta anturiteknologiaa: Ihmiset viettävät huomattavan osan (>90 %) ajasta sisätiloissa. Sisäilmaston laatu on tästä syystä

Lisätiedot

Kieliversiointityökalu Java-ohjelmistoon. Ohje

Kieliversiointityökalu Java-ohjelmistoon. Ohje Kieliversiointityökalu Java-ohjelmistoon Ohje 2/6 SISÄLLYSLUETTELO 1 YLEISTÄ OHJELMASTA... 3 2 PÄÄ-IKKUNA...4 3 YLÄVALIKKO... 4 3.1 TIEDOSTO... 4 3.2 TOIMINTO... 4 3.3 ASETUKSET... 5 3.4 OHJE... 5 4 VÄLILEHDET...5

Lisätiedot

Mistä on kyse ja mitä hyötyä ne tuovat?

Mistä on kyse ja mitä hyötyä ne tuovat? Pilvipalvelut Mistä on kyse ja mitä hyötyä ne tuovat? Pilvipalvelut - Mistä on kyse ja mitä hyötyä ne tuovat? Suurin osa kaikista uusista it-sovelluksista ja -ohjelmistoista toteutetaan pilvipalveluna.

Lisätiedot

Järjestelmäarkkitehtuuri (TK081702) SOA, Service-oriented architecture SOA,

Järjestelmäarkkitehtuuri (TK081702) SOA, Service-oriented architecture SOA, Järjestelmäarkkitehtuuri (TK081702) SOA SOA-arkkitehtuuri perustuu xml:ään ja Web Services teknologioihin Mahdollistaa joustavan mukautumisen tuleviin muutoksiin Kustannustehokas Toteutukset perustuvat

Lisätiedot

DownLink Shared Channel in the 3 rd Generation Base Station

DownLink Shared Channel in the 3 rd Generation Base Station S-38.110 Diplomityöseminaari DownLink Shared hannel in the 3 rd Diplomityön tekijä: Valvoja: rofessori Samuli Aalto Ohjaaja: Insinööri Jari Laasonen Suorituspaikka: Nokia Networks 1 Seminaarityön sisällysluettelo

Lisätiedot

Älykkäämpi päätelaitteiden hallinta Juha Tujula, CTO, Enfo Oyj. 2013 IBM Corporation

Älykkäämpi päätelaitteiden hallinta Juha Tujula, CTO, Enfo Oyj. 2013 IBM Corporation Älykkäämpi päätelaitteiden hallinta Juha Tujula, CTO, Enfo Oyj 2013 IBM Corporation 3 Enfo Suomessa Markkinat: Suomessa IT-palvelumarkkinan koko on noin 2,5 miljardia euroa ja sen arvioidaan kasvavan pitkällä

Lisätiedot

Tulevaisuuden Internet. Sasu Tarkoma

Tulevaisuuden Internet. Sasu Tarkoma Tulevaisuuden Internet Sasu Tarkoma Johdanto Tietoliikennettä voidaan pitää viime vuosisadan läpimurtoteknologiana Internet-teknologiat tarjoavat yhteisen protokollan ja toimintatavan kommunikointiin Internet

Lisätiedot

Tiedonsiirto- ja rajapintastandardit

Tiedonsiirto- ja rajapintastandardit Tiedonsiirto- ja rajapintastandardit Viitekehys Julkishallinnon perustietovarantojen rajapinnat (PERA) työryhmän tulokset valmiit syksyllä 2011 Määrittelee teknisen arkkitehtuuriratkaisun tietovarantojen

Lisätiedot

Kandidaatintyön aiheita

Kandidaatintyön aiheita Kandidaatintyön aiheita PM&RG:n aihe-ehdotukset Mervi L. Ranta ja Henrik J. Asplund Mervi L. Ranta & Henrik J. Asplund PL 15400, 00076 AALTO email: pmrg@tkk.fi FINLAND http://www.cs.hut.fi/~pmrg Version

Lisätiedot

Security server v6 installation requirements

Security server v6 installation requirements CSC Security server v6 installation requirements Security server version 6.4-0-201505291153 Pekka Muhonen 8/12/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes

Lisätiedot

Suunnitteluvaihe prosessissa

Suunnitteluvaihe prosessissa Suunnittelu Suunnitteluvaihe prosessissa Silta analyysin ja toteutuksen välillä (raja usein hämärä kumpaankin suuntaan) Asteittain tarkentuva Analyysi -Korkea abstraktiotaso -Sovellusläheiset käsitteet

Lisätiedot

CUDA. Moniydinohjelmointi 17.4.2012 Mikko Honkonen

CUDA. Moniydinohjelmointi 17.4.2012 Mikko Honkonen CUDA Moniydinohjelmointi 17.4.2012 Mikko Honkonen Yleisesti Compute Unified Device Architecture Ideana GPGPU eli grafiikkaprosessorin käyttö yleiseen laskentaan. Nvidian täysin suljetusti kehittämä. Vuoden

Lisätiedot