DTEK1047: Hajautet ohjelmistojärjestelmät (HOJ)



Samankaltaiset tiedostot
Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin

HOJ J2EE & EJB & SOAP &...

HSMT J2EE & EJB & SOAP &...

HOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10

HOJ Kertausluento. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/58

Tietokoneverkot. T Tietokoneverkot (4 op) viimeistä kertaa CSE-C2400 Tietokoneverkot (5 op) ensimmäistä kertaa

HSMT Tietokannoista. Ville Leppänen. HSMT, c Ville Leppänen, IT, Turun yliopisto, 2008 p.1/32

Tietokoneen rakenne (2 ov / 4 op) Syksy 2006

Ohjelmistoarkkitehtuurit. Syksy 2007

19/20: Ikkuna olio-ohjelmoinnin maailmaan

T harjoitustyö, kevät 2012


Harjoitustyö. Jukka Larja T Tietokoneverkot

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

Tietokoneen rakenne (2 ov / 4 op) Syksy 2007 Liisa Marttinen. Helsingin yliopisto Tietojenkäsittelytieteen laitos

T Ohjelmistojen määrittely- ja suunnittelumenetelmät


Sovellusarkkitehtuurit

T harjoitustehtävät, syksy 2011

13/20: Kierrätys kannattaa koodaamisessakin

Sulautetut järjestelmät

CUDA. Moniydinohjelmointi Mikko Honkonen

Sisältö. Työn idea Protokollat. Harjoitustyön käytäntöjä. Työn demoaminen. Etäisyysvektori Linkkitila. Palvelin Moodle SSH-tunnelit

T Harjoitustyöluento

T Multimediatekniikka

Menetelmätieteiden opintokokonaisuudessa on kaikissa tapauksissa oltava vähintään 10 op matematiikkaa ja vähintään 10 op tilastotiedettä.

Tietokoneen toiminta (Computer Organization I)

- Valitaan kohta Asetukset / NAT / Ohjelmallinen palvelin - Seuraavassa esimerkki asetuksista: valitaan käytössä oleva ohjelmistorajapinta

Agenda. Läpäisyvaatimukset Henkilökunta Luennot ja aikataulu Kurssimateriaali Harjoitustyöt Demoharjoitus Tentti ja arvostelu Muuta?

Saamelainen kulttuuri KEVÄÄN 2009 OHJELMA IV periodi

ELEC-C7230 Tietoliikenteen siirtomenetelmät. Yleistä

Luento 0: Kurssihallinto Tietokoneen rakenne (2 ov / 4 op) Syksy 2006

Mikä on internet, miten se toimii? Mauri Heinonen

Aurinkoenergiajärjestelmien etäseurantajärjestelmä

TieVie-hanke Saksan kieli. Ritva Huurtomaa

Oppimistavoitteet kurssilla Rinnakkaisohjelmointi

Opettajalle ohje opintojakson toteutuksen tekemiselle mallipohjana ja mallipohjan tuominen opintojakson toteutukseen.

Vastuuopettaja. Kurssiesite Olio-ohjelmoinnin perusteet Kevät Olio-ohjelmoinnin perusteet (5 op) Tavoitteena

Tietokoneen toiminta (Computer Organization I)

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

Tähtitieteen käytännön menetelmiä Kevät 2009

Ohjelmointi II. Erkki Pesonen Luennot ja harjoitukset. Itä-Suomen yliopisto Tietojenkäsittelytieteen laitos 2015

Henrika Honkanen Oulun yliopisto Biolääketieteen laitos Anatomian ja solubiologian yksikkö

Tietokoneen toiminta (Computer Organization I)

Tehostetun tuen luokat. Malli inkluusion toteuttamisesta Leikarissa

S Liikenneteorian perusteet (2 ov) K-98

T Johdatus tietoliikenteeseen ja multimediatekniikkaan 5 op. Kevät 2013

LUENTO 0. Tervetuloa! Käyttöjärjestelmät II 2 ov Teemu Kerola. Helsingin yliopisto Tietojenkäsittelytieteen laitos

ELEC-C7230 Tietoliikenteen siirtomenetelmät

P e d a c o d e ohjelmointikoulutus verkossa

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

WWW-ohjelmoinnin kokonaisuus. WWW-OHJELMOINTI 1 Merkkauskielet. Merkkauskielten idea. Merkkauskielet (markup languages) Merkkauskielten merkitys

TIE Tietorakenteet ja algoritmit 1. TIE Tietorakenteet ja algoritmit

Ohjelmistoteknologioiden koulutus: Web-sovelluskehitys, Java Server. Infotilaisuus klo 10:00

T Johdatus tietoliikenteeseen 5 op

Tietokoneen toiminta (Computer Organization I)

5. Luento: Rinnakkaisuus ja reaaliaika. Tommi Mikkonen,

Harjoitustyöohje

ALOITUS. Alkusanat Missä ollaan ja miksi Lyhyt oma esittely nimi, koulu ja mitä ainetta opetat Päivän ohjelma

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

Tietokone.ja.verkko. Web$sisällönhallinta. Tietokone. Tietokone:.Historia.pikakelauksena.

Laitteessa tulee olla ohjelmisto tai uudempi, tarvittaessa päivitä laite


HAHMONTUNNISTUKSEN PERUSTEET

HSMT Web-sovellustekniikoista

Molemmille yhteistä asiaa tulee kerralla enemmän opeteltavaa on huomattavasti enemmän kuin englannissa

Tietojenkäsittelyn perusteet 2. Lisää käyttöjärjestelmistä

OHJ-7400 Graafisen käyttöliittymän ohjelmointi 4/6op

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

OHJ-1151 Ohjelmointi IIe

Luento 1 Tietokonejärjestelmän rakenne

Ohjelmistoarkkitehtuurit Kevät käytäntöjä

Tietoliikenne I (muuntokoulutettaville) 2 ov Syksy 2002 Luennot Liisa Marttinen 11/6/2002 1

KEVÄT lv. Seuraa nettilukkaria todennäköisten päivitysten havaitsemiseksi. Päivitykset on merkitty punaisella!

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

Digitaalisen median tekniikat Luento 1: Intro

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

A4.1 Projektityö, 5 ov.

Kurssiesite Olio-ohjelmoinnin perusteet Kevät Jorma Laurikkala Tietojenkäsittelytieteet Informaatiotieteiden yksikkö Tampereen yliopisto

FuturaPlan. Järjestelmävaatimukset

ISACA Finland OWASP The OWASP Foundation. Timo Meriläinen Antti Laulajainen.

Tietosuojaselvitys Aviisi-projektissa ja Kansalliskirjaston digitaaliset aineistot

Graafisen käyttöliittymän ohjelmointi Syksy 2013

SÄHKÖISEN LIIKETOIMINNAN AMMATILLISET ERIKOISTUMIS- OPINNOT (30 op)

Samanaikaisen innovatiivisuuden ja tehokkuuden edistäminen. Olli-Pekka Kauppila, Mira Halonen & Ville Koiste Aalto-yliopiston kauppakorkeakoulu

IIO10200 Tietokantaohjelmointi (4 op)

AB TEKNILLINEN KORKEAKOULU

Sonera Hosted Mail -palvelun käyttöohje

ABTEKNILLINEN KORKEAKOULU Tietoverkkolaboratorio

AB TEKNILLINEN KORKEAKOULU

Tietoliikenne I 2 ov kevät 2003

Visma Nova Webservice Versio 1.1 /

Visma Software Oy

Internet ja tietoverkot

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

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

HOJ RPC = Remote Procedure Call (ja Common Object Request Broker Architecture)

Mokapäivä Leppävaara

Ohjelmistoarkkitehtuurit. Syksy 2008

Transkriptio:

DTEK1047: Hajautet ohjelmistojärjestelmät (HOJ) Johdatus kurssiin Ville Leppänen HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/15

HOJ (Java-kielellä) Aineopintotasoinen kurssi, 5op. Luennot: Ville Leppänen, Ville.Leppanen@utu.fi Harjoitustyöohjaaja: Sama (I) + Sampsa Rauti (II). WWW: staff.cs.utu.fi/opinnot/kurssit/hoj-2012/ https://moodle2.utu.fi/course/view.php?id=1228 Luentoajat: ti 12-14 (β) ja to 12-14 (β) (poikkeuksia!). Alkaa: ti 29.10; loppuu: to 13.12. Luentoja: 24t. Suoritustavat: 2-osainen harjoitustyö + tentti. Tentit: 7.1.2013, 11.2 ja 11.3. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.2/15

Luentosuunnitelma Vko 44 Johdanto + säikeet + samanaikaisuudesta Vko 45 Johdatus verkkosovelluksiin, soketit. Vko 46 Soketit ja RMI (Remote Method Invocation) Vko 47 RMI ja RPC (Remote Procedure Call). Vko 48 WWW-tekniikoista, XML, Ajax, Vaadin. Vko 49 Pilvialustat ja -sovellukset. Vko 50 Haja-aiheita, kertaus. Haja-aiheita Turvallisuudesta, dokumentointi, testaus, palomuurit,... HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.3/15

Kuka voi suorittaa? Esitiedot: TKO2005 Olio-ohjelmoinnin perusteet. Suositus: Olisi hyvä tietää myös sisäluokat ja olla kohtuullisen vankka tuntuma ohjelmointiin. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.4/15

Materiaali Kalvot verkossa! Yritän kirjoittaa / päivittää monistetta luentojen edetessä. Paljon kirjoja, mutta mikään ei tunnu kattavalta. Deitel & Deitel: Java, How to Program, 9th edition, Prentice Hall, 1500+ sivua sekä CD. (Ei kovin kattava.) Bruce Eckel: Thinking in Java (saa verkosta). HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.5/15

Kurssin suorittamisesta Luennot kuunteleminen suotavaa. Ei demonstraatioita ( laskuharjoituksia ). Tentti. Tenttipäivät: 7.1.2013, 11.2 ja 11.3. Harjoitustyö: 2-osainen harjoitustyö, joka tulisi tehdä 2-3h ryhmissä. Osat: (1) säikeet, (2) soketit ja RMI sovellettuna paikkatietoon. Kurssin tahti on tiivis. Harjoitustyö tulisi tehdä kurssin aikana! HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.6/15

Harjoitustöistä Osat ovat kaikille samoja! Työn ratkaisemisen periaatteista saa keskustella, mutta koodia ei saa antaa toisille. Jos havaitaan kopiointia (rakenteellista, tms), seurauksena hylkääminen. Ensimmäinen osatyö annetaan viikolla 44. Jos on tehnyt viime vuoden HSMT-harjoitustyön, uutta ei tarvitse tehdä. Dokumentointi: JavaDoc (tai vastaava). Työn voi tehdä 2-3 hengen ryhmässä (suositeltavaa). Jos ryhmä, ilmoitus luennoitsijalle viikolla 44. Mahdollisesti töiden julkinen purkutilaisuus. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.7/15

Kurssin tavoitteita 1/2 Käydä läpi ohjelmointikielten ulkopuoliset modernit verkko-ohjelmointiin liittyvät rajapinnat. Opetetaan asioita erityisesti Javan kannalta. Moni käsiteltävä asia on ratkaistu useassa ohjelmointikielessä samalla tapaa, mutta merkittäviä erojakin on. Voimakas sidos Javaan on hieman epätoivottava, mutta konkretisointi on välttämätöntä. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.8/15

Kurssin tavoitteita 2/2 Säikeet ja samanaikaisuuteen liittyvän problematiikan hallinta. Soketit. RMI Remote Method Invocation. Verkko: asiakas-palvelin sovelluksen välinen keskustelu; XML, JSON. Verkko: palvelinsovellukset ja tietokantapalvelimet. WWW+Java: Servletit, Ajax. RPC Remote Procedure Call. WWW-tekniikoista. Pilvialustat. Verkkoliikenteen turvallisuudesta. Dokumentointi, testaus,... HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.9/15

Lisätavoite Jokainen osallistuja suorittaa kurssin kaikki osat kolmessa kuukaudessa. Suorituksia tähän kurssin instanssiin voi tehdä vielä maaliskuussa 2013. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.10/15

Missä mennään... 1. Johdanto (1h) 2. Säikeet (2h) 3. Samanaikaisuudesta (2h) 4. Hajautetuista sovelluksista (1h) 5. Soketit (3h) 6. RMI ja J2EE (3h) 7. RPC (1h) 8. WWW-sovellustekniikoista (2h) 9. Pilvialustat (4h) 10. Haja-aiheita (2h) 99. Kertausluento (2h) + 1h pelivaraa HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.11/15

Ohjelmien toimintaympäristöstä Missä ympäristössä ohjelmat operoivat? Rajoittunut ympäristö (sulautetut järjestelmät) tai tavallinen ympäristö. Tavallisesti: keskusmuisti, levymuisti, levykemuisti, oheislaitteet, käyttöjärjestelmä, näppäimistö ja monitori. Prosessorin lähellä: väylärakenne, ohjaimia ja välimuisteja. Lisäksi: verkko ja verkon myötä toiset tietokoneet. Toimintaympäristö ei näy kielen tasolla vaan luokkaja/tai aliohjelmakirjastojen kautta. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.12/15

Verkko: taustaa Verkko: Internet ollut jo 1970-luvulla, periaatteessa samanlaisena kuin nykyään. Tuli ohjelmointikielten kirjastoihin mukaan n. 1980-luvulla (erityisesti C ja C++; APRA etc). Asiakas-palvelin sovelluksia paljon: sähköposti, WWW, news, DNS, pääteohjelmat, irc, verkkotietokannat, gopher, kello, NFS,... HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.13/15

Säikeet: taustaa Samanaikaisuus/rinnakkaisuus tuli useiden prosessoreiden myötä. Esiintyy kielissä hyvin monessa muodossa. Rinnakkaisuus vanha asia: 1960-luku. Yleistynyt viime vuosina pakkaustiheyden noustessa. Samanaikaisuus heikoin muoto. Säikeiden avulla. Ajatuksena saada enemmän irti koneesta. Java: GUI & verkko & säikeet kirjastojen avulla (säikeille hieman tukea kielessä). HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.14/15

Asiakas-palvelin suhteesta Internet: maailmanlaajuinen alusta asiakas-palvelin tietokonesovelluksille. (Muita: DigiTV, mobiiliverkko.) WWW-selain: asiakas; http-palvelin, jonkin muun protokollan mukainen palvelin,... WWW:n idea: palvelimella html-dokumentteja & Java-appletteja & etc; selain lataa ja suorittaa niitä Yleisemmin: palvelin on tieto- ja palvelu varasto. Asiakas vs. palvelin: vaikuttamista molempiin suuntiin. Asiakaspuolen laskenta (client-side computing). Aiemmin keskuskoneessa tehtiin laskenta; nyt "keskuskone"(=palvelin) jakaa "laskettavaa". Pilvilaskenta edustaa softallista paluuta keskuskoneaikaan. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.15/15