Ohjelmistoarkkitehtuurit Kevät 2016 Arkkitehtuurityylit, osa 1

Koko: px
Aloita esitys sivulta:

Download "Ohjelmistoarkkitehtuurit 2016. Kevät 2016 Arkkitehtuurityylit, osa 1"

Transkriptio

1 Ohjelmistoarkkitehtuurit Kevät 2016 Arkkitehtuurityylit, osa 1 Samuel Lahtinen 1

2 Yleistä 2

3 Kertausta Mitä suunnittelumallia käyttäisit seuraavassa ongelmatilanteessa? 3

4 Kertausta 1 Olet kasailemassa kotiisi sääasemaa ja ameriikan-englantilainen serkkusi on toteuttanut anturille ja lämpötilojen keskilaskennalle kivan komponentin, mutta tiedot saa vain Fahrenheitteina ja sademäärän mittaus käyttää tilavuusmittana ¼ pässinkivespussia. Mikä avuksi? 4

5 Kertausta 2 Olet ostanut BlueberryPie-härpättimen ja aiot koodata siihen musiikki- ja videosoittimen, koska muiden tekemät sovellukset sisältävät mm. NSA:n vakoiluohjelmistoja. Blueperryn päässä pitäisi pystyä hakemaan tiedostoja myös toisilta koneilta (esim. pöytäkoneesi ja läppärisi) ja näissä pyörivän pääteohjelman pitäisi kertoa jotenkin soitto-ohjelmalle päällä olostaan/sijainnistaan. Mikä auttaa? 5

6 Kertausta 3 Olet tekemässä strategiapeliä, jossa voi antaa komentoja yksittäiselle sotilaalle, useille sotilaille, joukko-osastolle, useammalle joukko-osastolle jne. (+muodostaa uusia kokonaisuuksia valitojen perusteella). Haluaisit, että komentojen käskytys toimisi koodissa samaan tapaan riippumatta siitä, minkä kokoiselle muodostelmalle tämä tehdään. Mikä suunnittelumalli voisi auttaa? 6

7 Kertausta 4 Sulautettuun ympäristöön koodailemasi älykotijärjestelmä saa tapahtumia eri laitteilta ja käyttöliittymän eri elementtien kautta. Yhdistelet tapahtumia niiden käsittelijöihin siellä täällä, mutta nyt kaipaisit ohjelmaan selkeyttä, mikä auttaisi? 7

8 Arkkitehtuurityylit Osittavat arkkitehtuurityylit Kerrosarkkitehtuurit (rakenteen ositus) Tietovuoarkkitehtuurit (toiminnan ositus) Palveluihin perustuvat arkkitehtuurityylit Asiakas-palvelin arkkitehtuurit Peer-to-peer Viestinvälitysarkkitehtuurit Publish-subscribe Erikoisarkkitehtuurityylit MVC arkkitehtuurit Tulkkiarkkitehtuurit 8

9 Mitä ovat arkkitehtuurityylit? Arkkitehtuurityyli = yleinen malli, joka kertoo miten järjestelmä organisoidaan ylimmällä abstraktiotasolla, määräten järjestelmän yleisen teknisen luonteen Arkkitehtuurityylit eivät sulje toisiaan pois! Kysymyksiä, jotka voivat johtaa arkkitehtuurityylin valintaan: - Koostuuko järjestelmä komponenteista, jotka ovat selvästi eri käsitetasoilla? - Onko järjestelmän päätarkoitus jalostaa tietoa? - Jaetaanko järjestelmässä jotain resurssia tai tietoa erillisille sovelluksille? - Koostuuko järjestelmä joukosta komponentteja, jotka kommunikoivat keskenään etukäteen tuntemattomilla tavoilla? Ovatko komponentit usein vaihtuvia? 9

10 Kerrosarkkitehtuurit Kerrosarkkitehtuuri (layer/tier architecture): Järjestelmän organisointi käsitetasoltaan nouseviin kerroksiin.. 10

11 Abstraktiotasojen rikkominen ja ohitus Ohitus käyttää toteuttamiseen Abstraktiotasojen rikkominen 11

12 Takaisinkutsut kerrosarkkitehtuurissa Sovelluskerros normaali kutsu takaisinkutsu Alustakerros Takaisinkutsulla voidaan rikkoa kerrosarkkitehtuurin periaatetta ilman, että alempi kerros riippuu ylemmästä 12

13 Kerrosarkkitehtuurien kuvaus: hampurilainen Ei ohituksia Ohituksia Ohituksia 13

14 Kerrosten rajapinnat Kerros A Comp1 Comp2 Comp3 takaisinkutsurajapinta Kerros B Comp4 Comp5 Comp6 Ks. Fasaadi 14

15 Esimerkki: tyypillinen liiketoimintajärjestelmä Käyttöliittymä Sovelluskohtainen logiikka Sovellusaluekohtainen logiikka Tietokanta 15

16 16

17 17

18 Kerrosrakenne ja komponentteja 18

19 Kerrosarkkitehtuuri voi olla moniulotteinen Core GUI Default GUI App GUI GUI Käyttöliittymä Core Logic Default Logic App Logic Logic Core Support Default Support App Support Support Peruspalvelut 19

20 Kerrosarkkitehtuuri voi olla moniulotteinen Core GUI Default GUI App GUI Core Logic Default Logic App Logic Core Support Default Support App Support Yleiskäyttöinen Tuotekohtainen Core Default App Domain-Yritys-Tuote 20

21 Kerrosten riippuvuusanalyysi rivikerros riippuu sarakeker P1 P2 P3 P4 P5 P1 X X P2 X X P3 X X OK, ohitusaste = 1 P4 X P5 21

22 Kerrosten riippuvuusanalyysi row depends on col P1 P2 P3 P4 P5 P1 X X P2 X Ei OK, mitä tehdä? P3 X X X P4 X P5 Vaihdetaan P2:n ja P3:n paikat, jos P2 ei ole selvästi korkeammalla käsitetasolla 22

23 Kerrosten riippuvuusanalyysi row depends on col P1 P2 P3 P4 P5 P1 X X P2 X X Ei OK, mitä tehdä? P3 X X X P4 X Yhdistetään P2 ja P3? P5 23

24 Kerrosten riippuvuusanalyysi Kerros P2 Yksittäisten komponenttien siirto Comp1 Comp2 Comp3 Kerros P3 Siirto OK, jos ei käsitetason ristiriitaa Comp4 Comp5 Comp6 24

25 Kerrosten riippuvuusanalyysi Kerros P2 Yksittäisten komponenttien vaihto Comp1 Comp2 Comp3 Kerros P3 Ei voi siirtää Comp4 Comp5 Comp6 25

26 Harjoitus Suunnittele kerrosarkkitehtuuri seikkailupelille. Järjestelmään kuuluvat seuraavat osat: - Yleinen seikkailupelilogiikka (AL) - Tietokanta (DB) - Pelikäyttöliittymä (GUI) - Graafinen tuki seikkailupeleille (GS) - Pelitietokantapalvelut (GB) - Pelin logiikka (GL) - Yleinen graafinen kirjasto (GLIB) Sijoita nämä osat kerroksiin. 26

27 Game data Database Common Graphics Library Graphic Support (GS) Common Adventure game logic Game Logic GUI 27

28 Kerrosarkkitehtuurien edut ja ongelmat Etuja Melkein aina sovellettavissa Tukee järjestelmän ymmärtämistä ja hallintaa Vähentää riippuvuuksia (ylläpidettävyys, muunneltavuus) Helppo liittää yrityksen organisaatioon (Conway) Tukee uudelleenkäyttöä (tuoterunkoarkkitehtuurin pohjana) Ongelmia Suorituskyky voi heikentyä (epäsuoruus) Saattaa johtaa tarpeettomaan/moninkertaiseen laskentaan Poikkeusten käsittely 29

29 Esimerkki (patologinen) GUI OrderApplication OrderPlatform OrderApplication:orderCheck(XMLdoc apporder) parse apporder check apporder (app specific checking) g = make XMLdoc genorder generalordercheck(g) OrderPlatform:generalOrderCheck(XMLdoc genorder) parse genorder check genorder(general checking) 30

30 Kolmikerrosarkkitehtuuri Yleinen lähestymistapa webissä: Presentation layer/tier / front-end: selaimessa pyörivä osa Application/Logic tier: Sovellustason toiminnallisuus, sovelluspalvelimen ajamaa koodia (Ruby, Java, PHP, ASP.NET, Perl ) Back-end / Data tier: tietokanta ja tietokannan hallinta, miten tallennettuihin tietoihin päästään käsiksi 31

31 Kolmikerrosesimerkki 32

32 33

33 Kerrosarkkitehtuurit, ominaisuudet/featuret ja tiimit 34

34 Kysyttävää?

35 Ongelma-aluetta A1 C Erilliset itsenäisesti kehitetyt komponentit Molemmissa samaa toiminnallisuutta, mutta sopeutettu muihin Sisäisiin komponentteihin Ei uudelleenkäyttöä Sisäisellä tasolla suorituskyvyn optimointi hankalaa Muokkaaminen vaikeampaa... Kutsu & tietoja lähteestä 1 B1 D A2 E Kutsu & tietoja lähteestä 2 B2 F 36

36 Tietovuoarkkitehtuurit (pipes and filters) Tietovuoarkkitehtuuri koostuu komponenteista (filter), jotka tuottavat ja kuluttavat tietoalkioita, ja tietoalkioita komponentilta toiselle kuljettavista väylistä (pipe). filter pipe filter pipe filter pipe pipe filter pipe filter 37

37 Erikoistapaus: liukuhihnatyyli (pipeline) pipe pipe filter1 filter2 filter3 38

38 Kontrollin toteutus liukuhihnatyylissä: push/työntävä tapa 39

39 Kontrollin toteutus liukuhihnatyylissä: pull / vetävä tapa 40

40 Tyypillistä tietovuoarkkitehtuurille Prosessointiyksiköt toimivat toisistaan riippumattomasti (eivät jaa tilatietoa) Prosessointiyksiköt eivät tunne toisiaan, ainoastaan väylien vaatiman tietoformaatin Tieto voidaan prosessoida paloittain Yksiköt ovat tilattomia 41

41 Tietovuoarkkitehtuuria Kuva: 42

42 Rinnakkaiset yksiköt: puskurointi Puskuri filter filter Kukin yksikkö omassa prosessissaan Hitain yksikkö määrää kokonaisajan Puskurien koko on kriittinen tekijä Puskuri on tyypillisesti jonorakenne 43

43 Sisääntuleva viesti filter, noutaa tehtävän jonosta viestijono Kokonaan käsitelty viesti 44

44 Kuormituksen jakoa (load balance) Kuva: 45

45 Mihin käyttäisit tietovuoarkkitehtuuria/missä olet nähnyt sellaisen? 46

46 Esimerkki: yksivaihekääntäjä Selaaja Jäsentäjä Koodin generointi merkkejä tekstialkioita kielen rakenteita koodi ongelma: ohjelmatekstin kontekstisidonnainen käsittely ratkaisu: (i) tietoa kerätään globaaliin symbolitauluun (data) (ii) jäsentäjä toimii pääohjelmana (kontrolli) 47

47 Tietovuorakkitehtuurin edut ja ongelmat? 48

48 Esimerkki: kuvankäsittely (Photoshop lightroom) Alkuperäinen kuvadata terävöinti väritasapaino... Valmis kuva Alkuperäinen säilyy, käsitelty kuva ohjelmassa alkuperäinen + operaatiot Poista filtteri välistä, kuva muuttuu, vaihda paikkaa jne. sama homma Konvertointi esim. verkkojulkaisua tai paperikuvatilausta varten, prosessin ajaminen läpi Mahdollisuus valita koko kuvakirjastolle samat operaatiot jne. (moniajo, rinnakkaisuustuet) 49

49 Esimerkki: MapReduce 50

50 Esimerkkejä Komentorivi (nix) ja komentojen putkittaminen Grafiikka, (GPU-laskenta) ja rinnakkaistuvat tehtävät 51

51 Tietovuoarkkitehtuurien edut ja ongelmat Etuja: Mutkikas tiedon käsittelyprosessi voidaan jakaa helpommin hallittaviin palasiin Tukee uudelleenkäyttöä: prosessointiyksiköitä voidaan kombinoida eri tavoin Tukee ylläpitoa: prosessointiyksikköä voidaan helposti muuttaa Tukee rinnakkaisuutta Ongelmia: Ei sovi interaktiivisille järjestelmille (tai riippuu interaktiosta, esim. hakukone) Tiedon tulkinnasta tulee suorituskykyrasitetta Virhetilanteiden käsittely voi olla vaikeaa 52

52 Virheidenkäsittelyä Yksi mahdollisuus, oma erillinen virhevuo, normaali data ja virhedata erikseen (kuten unix-komentorivi Virhepuolella oma filter-osa, joka käsittelee saamansa syötteen ja toimii sen mukaan 53

53 Kääntely-jäsentely virheenkäsittelyn kera Konekielelle kääntö (machine code generator) Selaaja (scanner) Jäsentäjä (parser) Semanttinen tarkistus Semantic checker Tavukoodin tuottaminen (bytecode generator) optimointi konekieltä tavukoodi virheet

54 Kysyttävää?

55 Palveluihin perustuvat arkkitehtuurityylit Oliot (1970-luku) olio lista lisää Käyttävä yksikkö poista 56

56 Palveluihin perustuvat arkkitehtuurityylit Komponentit (1980-luku) Suomenkielen tavutus komponentti Tavutusrajapinta Tekstijärjestelmä 57

57 Palveluihin perustuvat arkkitehtuurityylit Asiakas-palvelin (1990-luku) Palvelun pyytäjä Palvelun tarjoaja Palvelun pyytäjä Esim. EJB verkko 58

58 Palveluihin perustuvat arkkitehtuurityylit Service-Oriented Architecture (SOA) (2000-luku) kysyy palvelua Palvelurekisteri verkko rekisteröityy Palvelun pyytäjä palvelun saaminen Palvelun tarjoaja Esim. Web services 59

59 Palveluihin perustuvat arkkitehtuurityylit Palveluväylä (Enterprise Service Bus, ESB) Sovellus Sovellus Sovellus Sovellus Sovitin Sovitin Sovitin Sovitin Väylä - sovellukset tarjoavat palvelujaan väylän kautta - idea: viestin reititys riippuu viestistä -> ei synny riippuvuuksia sovellusten välille 60

60 SOA-henkisyyttä Itsenäisiä, itsenäisesti ylläpidettävissä & hallittavissa olevia komponentteja Ohjelmistojen koostaminen näistä Ei tiukkaan sidottuja yhteyksiä komponenttien välillä, viestien tms. käyttö kommunikaatiossa Helppo ketjuttaa komponenttien toimintoja jne. SOA ei välttämättä Oracle, Microsoft tms. järkäleen käyttöä 61

61 Asiakas-palvelin arkkitehtuurit Asiakas-palvelin arkkitehtuuri: järjestelmä koostuu jotakin resurssia kontrolloivista ja siihen liittyviä palveluja tarjoavista palvelimista (server) ja palveluja tarvitsevista asiakkaista (client). 62

62 Asiakas-palvelin arkkitehtuurit Palvelut tarjotaan istunnoissa, tiettyyn kokonaisuuteen kuuluvat palvelut annetaan saman yhteyden aikana kontrolloidusti (transaktioina) Asiakkaat ja palvelimet toimivat omissa prosesseissaan, tyypillisesti hajautettuina Asiakkaat ovat tyypillisesti omia sovelluksia, jotka eivät tunne toisiaan Palvelimet eivät tunne asiakkaita Palvelimet tyypillisesti hallinnoivat jotain resurssia tai tietovarastoa 63

63 Missä käyttäisit asiakaspalvelin arkkitehtuuria? 64

64 Esimerkkejä Tietovarastopalvelimet Sovelluspalvelimiin perustuvat järjestelmät Sähköpostiohjelmat (palvelin-pääteohjelma) Verkkosovellukset jne. Yleinen ratkaisutapa, REST-rajapinnat ja käyttäjät Suurin osa nykyisistä sovelluksista ja laitteista jollain tavalla asiakas-palvelinmallin mukaisia, yhteys johonkin nettipalveluun Symbian ja laitteiden näkyminen palveluina 65

65 Tietovarasto- ja sovelluspalvelimet Asiakas Asiakas Käyttöliittymä Sovelluskohtainen logiikka Sovellusaluekohtainen logiikka Palvelin Tietokanta Palvelin Käyttöliittymä Sovelluskohtainen logiikka Sovellusaluekohtainen logiikka Tietokanta 66

66 Asiakas-palvelin arkkitehtuurien edut ja ongelmat Etuja Helpottaa yhteisen resurssin hallintaa (esim. tietoturva) Helpottaa ylläpitoa ja muunneltavuutta (esim. palvelimen vaihto) Hyvä teknologinen tuki Ongelmia Verkkoliikenteestä johtuvat suorituskykyongelmat Palvelinkeskeisyys: kriittisen palvelimen vikaantuminen Poikkeusten käsittely 67

67 P2P: Peer to Peer Asiakas-palvelimen erikoistus Asiakkaat samalla palvelimia, perusasetelmassa tasa-arvoisia Resurssien jakoa, tieto, laskentateho, kaista jne. Virheherkkyys pienenee, resurssien jako mahdollistaa isompien asioiden suorittamisen joukkovoimalla (siirtonopeus, laskentateho, jne.) Myös hybridiversioita, joissa keskitetty palvelinpuoli ja lisänä asiakkaiden välillä p2p toimintaa 68

68 P2P: sovellusalueita Erilaiset tiedostojenjakosovellukset ja tekniikat (esim. Torrent) Hajautettu laskenta, esim. Bitcoin, (Seti at home) Botnetit Skype, keskitetty palvelin, puhelupuoli p2p:n avulla Spotify osa liikenteestä asiakkaiden avulla osa keskitetysti (siirtymässä pois) Toistensa kanssa kommunikoivat laitteet ja koneet 69

69 Miksi Spotify aloitti P2P:n kanssa? 70

70 Spotifyn lähestymistapa (josta luovuttu 2015 aikana) 71

71 Spotifyn lähestymistapa 72

72 p2p: plussat ja miinukset +Vikasietoisuus, kaistan jne. resurssien jaon kautta säästöt, resurssien jaon helppous, skaalautuvuus -turvallisuus, tietoturva, palvelutason vaihtelu, monimutkaisempia toteutusratkaisuja (hybridimalli) 73

73 P2P ja Windows 10 Microsoft ja salakavala p2p Windowspäivitykseen kytkettynä 74

74 Internet of Things (IoT) 75

75 Esimerkkikoodia, P2P Tutorial-and-Example

76 Yhteenvetoa Kerrosarkkitehtuuri osittaa järjestelmän käsitetasojen mukaan Tietovuoarkkitehtuuri osittaa järjestelmän työstämisvaiheiden mukaan Palvelupohjaiset järjestelmät ovat kehittyneet olioohjelmoinnista lähtien kohti palveluväyläratkaisuja ja pilvijärjestelmiä 77

77 Kysyttävää?

6. Arkkitehtuurityylit

6. Arkkitehtuurityylit 6. Arkkitehtuurityylit Osittavat arkkitehtuurityylit Kerrosarkkitehtuurit (rakenteen ositus) Tietovuoarkkitehtuurit (toiminnan ositus) Palveluihin perustuvat arkkitehtuurityylit Asiakas-palvelin arkkitehtuurit

Lisätiedot

Ohjelmistoarkkitehtuurit kevät

Ohjelmistoarkkitehtuurit kevät Ohjelmistoarkkitehtuurit Kevät 2011-2012 Johannes Koskinen http://www.cs.tut.fi/~ohar/ 6. Arkkitehtuurityylit Osittavat arkkitehtuurityylit Kerrosarkkitehtuurit (rakenteen ositus) Tietovuoarkkitehtuurit

Lisätiedot

Ohjelmistoarkkitehtuurit Johannes Koskinen. Osittavat arkkitehtuurityylit

Ohjelmistoarkkitehtuurit Johannes Koskinen.  Osittavat arkkitehtuurityylit Ohjelmistoarkkitehtuurit Kevät 2012-2013 Johannes Koskinen http://www.cs.tut.fi/~ohar/ 1 Arkkitehtuurityylit Osittavat arkkitehtuurityylit Kerrosarkkitehtuurit (rakenteen ositus) Tietovuoarkkitehtuurit

Lisätiedot

Ohjelmistoarkkitehtuurit

Ohjelmistoarkkitehtuurit Ohjelmistoarkkitehtuurit Kevät 2012-2013 Johannes Koskinen http://www.cs.tut.fi/~ohar/ 1 Arkkitehtuurityylit Osittavat arkkitehtuurityylit Kerrosarkkitehtuurit (rakenteen ositus) Tietovuoarkkitehtuurit

Lisätiedot

Osittavat arkkitehtuurityylit. Palveluihin perustuvat arkkitehtuurityylit. Erikoisarkkitehtuurityylit

Osittavat arkkitehtuurityylit. Palveluihin perustuvat arkkitehtuurityylit. Erikoisarkkitehtuurityylit 6. Arkkitehtuurityylit Osittavat arkkitehtuurityylit Kerrosarkkitehtuurit Tietovuoarkkitehtuurit Palveluihin perustuvat arkkitehtuurityylit Asiakas-palvelin arkkitehtuurit Viestinvälitysarkkitehtuurit

Lisätiedot

6. Arkkitehtuurityylit

6. Arkkitehtuurityylit 6. Arkkitehtuurityylit Osittavat arkkitehtuurityylit - Kerrosarkkitehtuurit - Tietovuoarkkitehtuurit Palveluihin perustuvat arkkitehtuurityylit - Asiakas-palvelin arkkitehtuurit - Viestinvälitysarkkitehtuurit

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

Ohjelmistoarkkitehtuurit. Kevät 2012-2013

Ohjelmistoarkkitehtuurit. Kevät 2012-2013 Ohjelmistoarkkitehtuurit Kevät 2012-2013 Johannes Koskinen http://www.cs.tut.fi/~ohar/ 1 Viestipohjaisten yritysjärjestelmien suunnittelumallit 1 Viestinvälitykseen perustuvat yritysjärjestelmät Peruselementit:

Lisätiedot

Arkkitehtuurityylejä ja ratkaisumalleja

Arkkitehtuurityylejä ja ratkaisumalleja Arkkitehtuurityylejä ja ratkaisumalleja Luento 4 12.9.2013 581358 Ohjelmistoarkkitehtuurit 1 Oppimistavoitteet Esimerkkejä yleisesti käytetyistä arkkitehtuurisista ratkaisumalleista ja tyyleistä Muutama

Lisätiedot

Viestinvälitysarkkitehtuurit

Viestinvälitysarkkitehtuurit Viestinvälitysarkkitehtuurit Lähtökohta: Järjestelmä koostuu keskenään kommunikoivista komponenteista, mahdollisesti hajautettuja Komponenttien palveluja ei tiedetä tarkasti etukäteen Komponentteja ja

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

Arkkitehtuurityylejä ja patterneja

Arkkitehtuurityylejä ja patterneja Arkkitehtuurityylejä ja patterneja Luento 4 11.9.2014 581358 Ohjelmistoarkkitehtuurit 1 Oppimistavoitteet Esimerkkejä yleisesti käytetyistä arkkitehtuuripatterneista ja -tyyleistä Muutama käydään läpi

Lisätiedot

Ohjelmistoarkkitehtuuri

Ohjelmistoarkkitehtuuri Ohjelmistoarkkitehtuurien ylläpito Arkkitehtuurityylejä ja laatuvaatimuksia Arkkitehtuurin uudistaminen Arkkitehtuurin uudistamisen malleja Arkkitehtuurin arviointi TTY Ohjelmistotekniikka 1 Ohjelmistoarkkitehtuuri

Lisätiedot

Viestinvälitysarkkitehtuurit Lähtökohta:

Viestinvälitysarkkitehtuurit Lähtökohta: Ohjelmistoarkkitehtuurit Kevät 2012-2013 Johannes Koskinen http://www.cs.tut.fi/~ohar/ 1 Viestinvälitysarkkitehtuurit Lähtökohta: Järjestelmä koostuu keskenään kommunikoivista komponenteista, mahdollisesti

Lisätiedot

9. Muunneltavuuden hallinta

9. Muunneltavuuden hallinta 9. Muunneltavuuden hallinta Muunneltavuuden hallinta (Variability management): Tekniikat ja työtavat, jotka auttavat kuvaamaan, toteuttamaan ja hyödyntämään tuoterungon mahdollistamaa ohjelmistotuotteiden

Lisätiedot

Ohjelmistoarkkitehtuurit, syksy

Ohjelmistoarkkitehtuurit, syksy Arkkitehtonisista tyyleistä ja ratkaisumalleista Ohjelmistoarkkitehtuurit Arkkitehtonisista tyyleistä ja ratkaisumalleista Taylor:n määritelmän mukainen arkkitehtoninen ratkaisumalli (architectural pattern)

Lisätiedot

Oppimistavoitteet. Arkkitehtuurityylejä ja patterneja. Tyylien ja patternien käytöstä. Kolmitasoarkkitehtuuri (N-Tier) Kolmitasoarkkitehtuuri (N-Tier)

Oppimistavoitteet. Arkkitehtuurityylejä ja patterneja. Tyylien ja patternien käytöstä. Kolmitasoarkkitehtuuri (N-Tier) Kolmitasoarkkitehtuuri (N-Tier) Oppimistavoitteet Arkkitehtuurityylejä ja patterneja Esimerkkejä yleisesti käytetyistä arkkitehtuuripatterneista ja -tyyleistä Muutama käydään läpi perusteellisemmin (MVC, tietovuotyylit, kerrosarkkitehtuurit)

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

7 Viestipohjaisten yritysjärjestelmien suunnittelumallit

7 Viestipohjaisten yritysjärjestelmien suunnittelumallit 7 Viestipohjaisten yritysjärjestelmien suunnittelumallit Hohpe G., Woolf B.: Enterprise Integration Patterns. Addison-Wesley 2004. Ohjelmistoarkkitehtuurit Syksy 2010 TTY Ohjelmistotekniikka 1 Viestinvälitykseen

Lisätiedot

Kansallinen palveluväylä Kuntien kokonaisarkkitehtuuri -seminaari

Kansallinen palveluväylä Kuntien kokonaisarkkitehtuuri -seminaari Kansallinen palveluväylä Kuntien kokonaisarkkitehtuuri -seminaari 30.10.2013 Hankejohtaja Pauli Kartano Valtiovarainministeriö Palveluväylä on osa isompaa kokonaisuutta Palveluväylä on osa hallituksen

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

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

Työkalujen yleinen arkkitehtuuri. Ylläpitoon liittyvät työkalut. Ylläpitotehtävien mukaiset työkalut. Työkalujen jaotteluperusteita

Työkalujen yleinen arkkitehtuuri. Ylläpitoon liittyvät työkalut. Ylläpitotehtävien mukaiset työkalut. Työkalujen jaotteluperusteita Ylläpitoon liittyvät työkalut Käyttötarkoituksia ohjelman ymmärtäminen visualisointi etsintä dokumentointi muutosten hallinta koodin muotoilu (pretty printer) erikoistuneet editorit metriikkoihin liittyvät

Lisätiedot

SOA & Ajax Sanahelinää vai toimivaa käytäntöä sähköisessä asioinnissa? Fenix hankejohtaja Harri Juuti Projektipäällikkö Teemu Karvonen

SOA & Ajax Sanahelinää vai toimivaa käytäntöä sähköisessä asioinnissa? Fenix hankejohtaja Harri Juuti Projektipäällikkö Teemu Karvonen SOA & Ajax Sanahelinää vai toimivaa käytäntöä sähköisessä asioinnissa? Fenix hankejohtaja Harri Juuti Projektipäällikkö Teemu Karvonen Agenda Fenix-hankkeen esittely Arkkitehtuuri lyhyesti Kuntalaistili

Lisätiedot

Veto-visualisointityökalu

Veto-visualisointityökalu Ohjelmoinnin suunnittelumallit (design patterns) käyttöliittymissä Vanhin ja keskeisin lähde Gamma E., Helm R., Johnson R., Vlissides J., Design Patterns. Addison-Wesley, USA, 1994. Ajatus ohjelmoinnin

Lisätiedot

10. Muunneltavuuden hallinta: variaatiopisteet

10. Muunneltavuuden hallinta: variaatiopisteet 10. Muunneltavuuden hallinta: variaatiopisteet Muunneltavuuden hallinta (Variability management): Tekniikat ja työtavat, jotka auttavat kuvaamaan, toteuttamaan ja hyödyntämään ohjelmistotuotteiden variaatiota.

Lisätiedot

10. Muunneltavuuden hallinta: variaatiopisteet

10. Muunneltavuuden hallinta: variaatiopisteet Ohjelmistoarkkitehtuurit Kevät 2012-2013 Johannes Koskinen http://www.cs.tut.fi/~ohar/ 1 10. Muunneltavuuden hallinta: variaatiopisteet Muunneltavuuden hallinta (Variability management): Tekniikat ja työtavat,

Lisätiedot

Liiketoimintajärjestelmien integrointi

Liiketoimintajärjestelmien integrointi Liiketoimintajärjestelmien integrointi Vierailuluento 12.12.2016 Esa Heikkinen Mystes Oy Agenda Liiketoimintajärjestelmien integrointi EAI: Enterprise Application Integration EAS: Enterprise Application

Lisätiedot

Case TUHTI. Projektin tunnuslukuja. ! Suuri perusjärjestelmäuudistus! Työt alkoivat kesällä 1999. ! Java luokkia n. 5000

Case TUHTI. Projektin tunnuslukuja. ! Suuri perusjärjestelmäuudistus! Työt alkoivat kesällä 1999. ! Java luokkia n. 5000 Case TUHTI 17.12.2002 1 TietoEnator 2002 Projektin tunnuslukuja! Suuri perusjärjestelmäuudistus! Työt alkoivat kesällä 1999! Otettu tuotantokäyttöön syksyllä 2001! Proof of Concept (5 henkilöä 4 kk) ->

Lisätiedot

Järjestelmä koostuu keskenään kommunikoivista komponenteista, mahdollisesti hajautettuja. Komponenttien palveluja ei tiedetä tarkasti etukäteen

Järjestelmä koostuu keskenään kommunikoivista komponenteista, mahdollisesti hajautettuja. Komponenttien palveluja ei tiedetä tarkasti etukäteen Viestinvälitysarkkitehtuurit Lähtökohta: Järjestelmä koostuu keskenään kommunikoivista komponenteista, mahdollisesti hajautettuja Komponenttien palveluja ei tiedetä tarkasti etukäteen Komponentteja ja

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

Ohjelmistojen mallinnus Ohjelmistoarkkitehtuuri Harri Laine 1

Ohjelmistojen mallinnus Ohjelmistoarkkitehtuuri Harri Laine 1 Ohjelmistojen mallinnus Ohjelmistoarkkitehtuuri 2 28.11.2008 Harri Laine 1 Ohjelmistoarkkitehtuuri Rajapinta UML:ssä piirteiden (attribuuttien ja operaatioiden) kokoelma, josta ei voi suoraan luoda ilmentymiä

Lisätiedot

Ohjelmistokehykset ohjelmistorunkoja uudelleenkäyttö olioperustaisista ohjelmistorunko

Ohjelmistokehykset ohjelmistorunkoja uudelleenkäyttö olioperustaisista ohjelmistorunko Ohjelmistokehykset Määritelmä & tavoitteet, taustaa & peruskäsitteitä, kehykset vs. suunnittelumallit, erikoistamisrajapinnat & kontrollinkulku, kehystyypit, kehysten rakenne ja evoluutio, esimerkki: JHotDraw,

Lisätiedot

www.solita.fi solita@solita.fi

www.solita.fi solita@solita.fi www.solita.fi solita@solita.fi JAVA-SOVELLUSTEN RAKENTAMINEN INTEGROITUUN YMPÄRISTÖÖN Jarno Peltoniemi Solita Oy 10.5.2005 Aiheet Johdanto Portaalit, portletit Oracle Portal Java-sovelluksen rakentaminen

Lisätiedot

Liiketoimintajärjestelmien integrointi

Liiketoimintajärjestelmien integrointi Liiketoimintajärjestelmien integrointi Vierailuluento 2.3.2015 Esa Heikkinen Mystes Oy Agenda Liiketoimintajärjestelmien integrointi EAI: Enterprise Application Integration EAS: Enterprise Application

Lisätiedot

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

- Valitaan kohta Asetukset / NAT / Ohjelmallinen palvelin - Seuraavassa esimerkki asetuksista: valitaan käytössä oleva ohjelmistorajapinta TW-EAV510: VALVONTAKAMERAN KYTKEMINEN VERKKOON OPERAATTORIN IP-OSOITE - Jotta valvontakameran käyttöä varten saadaan avattua tarvittavat portit, pitää operaattorilta saada julkinen IP-osoite, jotta kaikki

Lisätiedot

Ohjelmistoarkkitehtuurit. Kevät 2014 Kertausta

Ohjelmistoarkkitehtuurit. Kevät 2014 Kertausta Ohjelmistoarkkitehtuurit Kevät 2014 Kertausta Samuel Lahtinen http://www.cs.tut.fi/~ohar/ 1 Sisältöä Hieman uutta asiaa/kertausta harjoitustöiden pohjalta Kurssin avainasioiden pikakelaus Tentin rakennetta,

Lisätiedot

Ohjelmistoarkkitehtuurit 2012-2013

Ohjelmistoarkkitehtuurit 2012-2013 Ohjelmistoarkkitehtuurit Kevät 2012-2013 Johannes Koskinen http://www.cs.tut.fi/~ohar/ 1 10. Muunneltavuuden hallinta: variaatiopisteet Muunneltavuuden hallinta (Variability management): Tekniikat ja työtavat,

Lisätiedot

Ohjelmistoarkkitehtuurit. Kevät

Ohjelmistoarkkitehtuurit. Kevät Ohjelmistoarkkitehtuurit Kevät 2012-2013 Johannes Koskinen http://www.cs.tut.fi/~ohar/ 1 Viestipohjaisten yritysjärjestelmien suunnittelumallit Viestinvälitykseen perustuvat yritysjärjestelmät Peruselementit:

Lisätiedot

Johdatus diskreettiin matematiikkaan Harjoitus 7, 28.10.2015

Johdatus diskreettiin matematiikkaan Harjoitus 7, 28.10.2015 Johdatus diskreettiin matematiikkaan Harjoitus 7, 28.10.2015 1. Onko olemassa yhtenäistä verkkoa, jossa (a) jokaisen kärjen aste on 6, (b) jokaisen kärjen aste on 5, ja paperille piirrettynä sivut eivät

Lisätiedot

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta.

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta. Malli-näkym kymä-ohjain arkkitehtuurit (Model-View View-Controller, MVC) Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta. Lähtökohdat: Sovelluksen

Lisätiedot

VisualStudio Pikaopas, osa 1: WEB sivujen suunnittelu

VisualStudio Pikaopas, osa 1: WEB sivujen suunnittelu HAAGA HELIA/IltaTiko ICT2TD005: Ohjelmisto suunnittelutaito 1 VisualStudio Pikaopas, osa 1: WEB sivujen suunnittelu Tämä pikaopas opastaa käyttämään VisualStudion web sivujen suunnittelu ja toteutusominaisuuksia.

Lisätiedot

Viestinvälitysarkkitehtuurit

Viestinvälitysarkkitehtuurit Viestinvälitysarkkitehtuurit Lähtökohta: Järjestelmä koostuu keskenään kommunikoivista komponenteista, mahdollisesti hajautettuja Komponenttien palveluja ei tiedetä tarkasti etukäteen, komponentit ovat

Lisätiedot

WWW-sivut HTML-kielellä esitettyä hypertekstiaineistoa

WWW-sivut HTML-kielellä esitettyä hypertekstiaineistoa WWW ja tietokannat WWW-sivut HTML-kielellä esitettyä hypertekstiaineistoa tekstiä, kuvia, hyperlinkkejä Staattiset sivut kirjoitettu kerran, muuttaminen käsin ongelmana pysyminen ajantasalla Ylläpito hankalaa,

Lisätiedot

Tech Conference 28.-29.5.2015. Windows 10 viimeinen Windowsversio? Sami Laiho Senior Technical Fellow, MVP. #TechConfFI

Tech Conference 28.-29.5.2015. Windows 10 viimeinen Windowsversio? Sami Laiho Senior Technical Fellow, MVP. #TechConfFI Tech Conference 28.-29.5.2015 Windows 10 viimeinen Windowsversio? Sami Laiho Senior Technical Fellow, MVP #TechConfFI Windows 10 viimeinen Windows-versio? Windows 10:n merkitys IT-ympäristöille Windows

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

OHJ-5010 Hajautettujen järjestelmien perusteet

OHJ-5010 Hajautettujen järjestelmien perusteet OHJ-5010 Hajautettujen järjestelmien perusteet Arkkitehtuureista (1/2) Kari Systä Kari.systa@tut.fi 1 Yleistä Uusimman tiedon mukaan ensimmäinen tentti on 19.5.2012 kello 09-12. Kurssin kotisivuilla http://www.cs.tut.fi/~hajap/

Lisätiedot

SAP. Lasse Metso 14.1.2011

SAP. Lasse Metso 14.1.2011 SAP Lasse Metso 14.1.2011 Toiminnanohjausjärjestelmä engl. Enterprise Resource Planning, ERP Integroitu tietojärjestelmä joka palvelee kaikkia yrityksen osastoja. Tuotantoyrityksistä liikkeelle lähtenyt

Lisätiedot

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

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä www.niksula.cs.hut.fi/~jjkankaa// Demosovelluksen tekninen määrittely v. 0.6 Päivitetty 11.12.2000 klo 20:26 Mickey Shroff 2 (12) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite

Lisätiedot

Koira testissä vai Racci tuotannossa O10G/IAS10 Linuxilla

Koira testissä vai Racci tuotannossa O10G/IAS10 Linuxilla Koira testissä vai Racci tuotannossa O10G/IAS10 Linuxilla Petri Tumppila/Bemecon Oy, petri.tumppila@bemecon.fi Tuomas Pystynen/Deepbase Oy, tuomas.pystynen@deepbase.com OUGF 4.11.2004 Agenda Ympäristö

Lisätiedot

Ohjelmistoarkkitehtuurit kevät

Ohjelmistoarkkitehtuurit kevät Ohjelmistoarkkitehtuurit Kevät 20-202 Johannes Koskinen http://www.cs.tut.fi/~ohar/ Viestinvälitysarkkitehtuurit Lähtökohta: Järjestelmä koostuu keskenään kommunikoivista komponenteista, mahdollisesti

Lisätiedot

Ohjelmiston testaus ja laatu. Testaus yleistä

Ohjelmiston testaus ja laatu. Testaus yleistä Ohjelmiston testaus ja laatu Testaus yleistä Määritelmä Testaus on systemaattinen lähestymistapa ohjelmistoissa esiintyvien virheiden löytämiseksi ohjelmaa suorittamalla. Testattaessa pyritään luomaan

Lisätiedot

Ohjelmistoarkkitehtuurit

Ohjelmistoarkkitehtuurit Ohjelmistoarkkitehtuurit Konnektorit ohjelmistoarkkitehtuurissa 18.9.2012 1 Konnektorit (connectors) Konnektori (connector) (liitos) Arkkitehtuurielementti, jonka tehtävänä on mahdollistaa ja hallita komponenttien

Lisätiedot

1 Johdanto. TTY Ohjelmistotekniikka. Ohjelmistoarkkitehtuurit Syksy 2008

1 Johdanto. TTY Ohjelmistotekniikka. Ohjelmistoarkkitehtuurit Syksy 2008 1 Johdanto 1.1 Mikä on ohjelmistoarkkitehtuuri? 1.2 Katsaus ohjelmistotuotannon kehittymiseen 1.3 Epäonnistuneen ohjelmistoarkkitehtuurin seurauksia 1.4 Ohjelmistoarkkitehtuuri ja ohjelmistokehitysprosessi

Lisätiedot

Ohjelmistojen suunnittelu

Ohjelmistojen suunnittelu Ohjelmistojen suunnittelu 581259 Ohjelmistotuotanto 154 Ohjelmistojen suunnittelu Software design is a creative activity in which you identify software components and their relationships, based on a customer

Lisätiedot

Miten voin selvittää säästömahdollisuuteni ja pääsen hyötymään niistä?

Miten voin selvittää säästömahdollisuuteni ja pääsen hyötymään niistä? Se edullisempi tietokanta Miten voin selvittää säästömahdollisuuteni ja pääsen hyötymään niistä? Rasmus Johansson rasmus.johansson@microsoft.com Ratkaisumyyntipäällikkö (Sovellusalusta) Microsoft Oy Miten

Lisätiedot

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

HOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10 HOJ Haja-aiheita Ville Leppänen HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10 Missä mennään... 1. Johdanto (1h) 2. Säikeet (2h) 3. Samanaikaisuudesta (2h) 4. Hajautetuista sovelluksista (1h)

Lisätiedot

Muunneltavuuden hallinta (Variability management):

Muunneltavuuden hallinta (Variability management): 11. Muunneltavuuden hallinta Muunneltavuuden hallinta (Variability management): Tekniikat ja työtavat, jotka auttavat kuvaamaan, toteuttamaan ja hyödyntämään ohjelmistotuotteiden variaatiota. Ohjelmistoarkkitehtuurit

Lisätiedot

9 Edistynyt PHP-ohjelmointi

9 Edistynyt PHP-ohjelmointi 9 Edistynyt PHP-ohjelmointi Luentokerran tavoitteena on käydä läpi joukko sellaisia PHP-sovelluksen toteuttamiseen liittyviä tekijöitä, joiden avulla voidaan parantaa verkkopalvelun totetustyön tuottavuutta

Lisätiedot

10. Tuoterunkoarkkitehtuurit

10. Tuoterunkoarkkitehtuurit 10. Tuoterunkoarkkitehtuurit Johdanto Näkökulmat tuoterunkoihin perustuvaan ohjelmistokehitykseen: liiketoiminta, organisaatio, prosessi, tekninen Tuoterunkojen etuja ja ongelmia 1 Uudelleenkäytt yttö

Lisätiedot

HELIA 1 (8) Outi Virkki Tietokantasuunnittelu

HELIA 1 (8) Outi Virkki Tietokantasuunnittelu HELIA 1 (8) Luento 1 Johdatusta tietokannan suunnitteluun... 2 Tietokantasuunnittelu?... 2 Tietokanta?... 2 Tieto?... 2 Tietokantasuunnittelun tavoite, v.1... 2 Luotettavuus?... 3 Tietokantasuunnittelun

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

1.3 Katsaus ohjelmistotuotannon kehittymiseen

1.3 Katsaus ohjelmistotuotannon kehittymiseen Yleisiä asioita Oliokirja:http://www.cs.tut.fi/~kk/Ohjelmistoarkkitehtuuri.pdf Tenttipäivä 7.5. Tallennukset, jospas tänään onnistaisi Viikkoharkat löytyvät IDLEstä (TTY), kurssin kotisivuilta/paikallisilta

Lisätiedot

Ohjelmistoarkkitehtuurit

Ohjelmistoarkkitehtuurit Ohjelmistoarkkitehtuurit Kevät 2012-2013 Johannes Koskinen http://www.cs.tut.fi/~ohar/ 1 Viestinvälitysarkkitehtuurit Lähtökohta: Järjestelmä koostuu keskenään kommunikoivista komponenteista, mahdollisesti

Lisätiedot

Suorituskyvyn varmistaminen sovelluskehityksen eri vaiheissa Paavo Häkkinen, Presales Teamleader Compuware Finland

Suorituskyvyn varmistaminen sovelluskehityksen eri vaiheissa Paavo Häkkinen, Presales Teamleader Compuware Finland Suorituskyvyn varmistaminen sovelluskehityksen eri vaiheissa Paavo Häkkinen, Presales Teamleader Compuware Finland Epäonnistuminen ei ole vaikeaa Approximately 40% of mission-critical mainframe projects

Lisätiedot

582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus

582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus 582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus Sisältö Mikä on web-sovellus? Selaimen rooli web-sovelluksessa Palvelimen rooli web-sovelluksessa Aineistopyynnöt Tiedon välittäminen

Lisätiedot

Osoitteena O365. Toimisto ja yhteydet pilvestä

Osoitteena O365. Toimisto ja yhteydet pilvestä Osoitteena O365 Toimisto ja yhteydet pilvestä Mitä sisältää O365 Tutut toimistotyökalut käytössäsi missä vain Uusimmat versiot aina mukanasi Ei kiinteitä kustannuksia Korkea käytettävyysaste Ei päivityksistä

Lisätiedot

Tiedon suojaaminen ja hallinta. Sytyke seminaari 17.3.2016

Tiedon suojaaminen ja hallinta. Sytyke seminaari 17.3.2016 Tiedon suojaaminen ja hallinta Sytyke seminaari 17.3.2016 Pasi Parkkonen Ruuvari kourassa 80-luvulla C64, Amiga, Atari, Spectrum, MSX2+, kymmenien PC tietokoneiden kasausta Yliopisto-opintoja ja intti

Lisätiedot

Käyttöönotto-ohje. DNA Sähköposti

Käyttöönotto-ohje. DNA Sähköposti 1 Käyttöönotto-ohje: DNA sähköposti Sisällysluettelo: 1. Tarkoitus... 1 2. Webmail (Outlook Web App)... 2 3. Webmail postilaatikon lisääminen Outlookiin (IMAP)... 3 4. Palvelimen tekniset tiedot... 6 1.

Lisätiedot

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

Järjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri. Järjestelmäarkkitehtuuri Järjestelmäarkkitehtuuri (TK081702) ja Järjestelmäarkkitehtuuri Sovellukset ovat olemassa Järjestelmien uudistaminen vie yleensä arvioitua enemmän resursseja ja kestää arvioitua kauemmin Migration (Migraatio

Lisätiedot

-versiot) Mozilla Firefox Safari Chrome. selaimista. Windows. Windows. Vista. Windows

-versiot) Mozilla Firefox Safari Chrome. selaimista. Windows. Windows. Vista. Windows F-Secure Online Backup - Tekniikkaan liittyviä kysymyksiä ja vastauksia MITÄ KÄYTTÖJÄRJESTELMIÄ F-SECURE ONLINE BACKUP TUKEE? Tuetut käyttöjärjestelmät: Microsoft XP, 32-bittinen: Home- ja Professional-versiot

Lisätiedot

Seminaari: Keskusmuistitietokannat. Keskusmuistitietokantojen samanaikaisuuden hallinta Ilkka Pullinen

Seminaari: Keskusmuistitietokannat. Keskusmuistitietokantojen samanaikaisuuden hallinta Ilkka Pullinen Seminaari: Keskusmuistitietokannat Keskusmuistitietokantojen samanaikaisuuden hallinta Ilkka Pullinen Sisältö Johdanto Esiteltävien menetelmien taustoja Hajautetun tietokannan spekuloiva samanaikaisuuden

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

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu 13.11.2000

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu 13.11.2000 HELIA 1 (15) Luento 2.7 Toiminnallisuutta tietokantaan... 2 Deklaratiivinen eheysvalvonta... 2 Proseduraalinen eheysvalvonta... 3 Eheysvalvonnan suunnittelusta... 4 Sääntöjen määrittely... 4 Toteutusvaihtoehdot...

Lisätiedot

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

Ohjelmistoteknologioiden koulutus: Web-sovelluskehitys, Java Server. Infotilaisuus 3.12.2014 klo 10:00 Ohjelmistoteknologioiden koulutus: Web-sovelluskehitys, Java Server Infotilaisuus 3.12.2014 klo 10:00 Yleistä Ohjelmistoteknologioiden koulutukset 2014-2015 3: Internet sovellusten ohjelmointi Java Server

Lisätiedot

Rinnakkaisuuden hyväksikäyttö peleissä. Paula Kemppi

Rinnakkaisuuden hyväksikäyttö peleissä. Paula Kemppi Rinnakkaisuuden hyväksikäyttö peleissä Paula Kemppi 24.4.2008 Esityksen rakenne Johdantoa Rinnakkaisuus Pelimoottorien rinnakkaisuuden mallit Funktionaalisen rinnakkaisuuden malli Rinnakkaisen tiedon malli

Lisätiedot

Valtakunnallisen yhteishaun vaikutus opiskelijavalintaan 9.5.2007

Valtakunnallisen yhteishaun vaikutus opiskelijavalintaan 9.5.2007 Valtakunnallisen yhteishaun vaikutus opiskelijavalintaan 9.5.2007 Sari Pulkkinen Taustaa osa opiskelijavalintojen kehittämisen kokonaisuutta hallitusohjelma OPM:n kehittämissuunnitelma 2003 2008 VN:n tietohallintostrategia

Lisätiedot

Tietoliikenne II (2 ov)

Tietoliikenne II (2 ov) Tietoliikenne II (2 ov) Kevät 2001 Liisa Marttinen Kurssikirja: Tanenbaum, Computer Networks (3. Painos) Tietoliikenne II Kertausta ja täydennystä Tietoliikenne I - kurssin asioihin perusteellisemmin laajemmin

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

Web Services tietokantaohjelmoinnin perusteet

Web Services tietokantaohjelmoinnin perusteet ASP.NET Web Services Web Services tietokantaohjelmoinnin 2 (22) Sisällys Harjoitus 1: Tietokannat ja Web Services... 3 Harjoitus 2: Windows Client... 10 Harjoitus 3: Datan päivitys TableAdapterin avulla...

Lisätiedot

Tässä kertauksena SOA ja palvelu.

Tässä kertauksena SOA ja palvelu. 1 Tässä kertauksena SOA ja palvelu. Eri lähteet esittävät erilaisia vaatimuksia SOA-järjestelmän osasille eli palveluille. Yleisimpiä ja tärkeimpiä ovat autonomisuus, löyhä sidonta, toteutusriippumaton

Lisätiedot

Windows Live SkyDrive - esittely

Windows Live SkyDrive - esittely Windows Live SkyDrive - esittely Microsoftin SkyDrive on pilvipohjainen tiedostojen säilytys- ja jakopalvelu. SkyDrive tarjoaa 25 Gb ilmaista säilytystilaa tiedostoille ja valokuville. Voit käyttää SkyDriven

Lisätiedot

Arkkitehtuuriperustainen. Tuoterunkoihin perustuva ohjelmistotuotanto. Tuoterunkoarkkitehtuurien hyödyntäminen uudistamisessa

Arkkitehtuuriperustainen. Tuoterunkoihin perustuva ohjelmistotuotanto. Tuoterunkoarkkitehtuurien hyödyntäminen uudistamisessa Tuoterunkoarkkitehtuurien hyödyntäminen uudistamisessa Järjestelmän arkkitehtuurin tarkoituksena edistää uudelleenkäyttöä ohjelmisto- tai tuoteperheiden Järjestelmän arkkitehtuurin uudistaminen Arkkitehtuurin

Lisätiedot

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta.

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta. Malli-näkym kymä-ohjain arkkitehtuurit (Model-View View-Controller, MVC) Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta. Lähtökohdat: Sovelluksen

Lisätiedot

Tietoliikenne II (2 ov)

Tietoliikenne II (2 ov) Tietoliikenne II (2 ov) Kevät 2001 Liisa Marttinen Kurssikirja: Tanenbaum, Computer Networks (3. Painos) Tietoliikenne II Kertausta ja täydennystä Tietoliikenne I - kurssin asioihin perusteellisemmin laajemmin

Lisätiedot

Luotettavuuden mittaamisesta. Ilkka Norros ja Urho Pulkkinen

Luotettavuuden mittaamisesta. Ilkka Norros ja Urho Pulkkinen Luotettavuuden mittaamisesta Ilkka Norros ja Urho Pulkkinen IP-verkon luotettavuuden aspektit Regulator User Provider availability reliability maintainability controllability Designer failures errors attacks

Lisätiedot

Webinaariin liittyminen Skype for

Webinaariin liittyminen Skype for Webinaariin liittyminen Skype for Business Web Appin kautta Ohjeet Sähköpostin Liity webinaariin tästä -linkki Kun klikkaat Osallistumisohjeet webinaariin -sähköpostiviestissä olevaa Liity webinaariin

Lisätiedot

Kiekun arkkitehtuuri ja tekniikka. Ghita von Gerdten projektipäällikkö

Kiekun arkkitehtuuri ja tekniikka. Ghita von Gerdten projektipäällikkö Kiekun arkkitehtuuri ja tekniikka Ghita von Gerdten projektipäällikkö Järjestelmäarkkitehtuurin fyysinen viitearkkitehtuuri Käyttöliittymä, (työasema) GUI Internet Explorer Adobe Reader Esitystapa Portaali

Lisätiedot

Ohjelmistoarkkitehtuurit Kevät 2014 Arkkitehtuurityylit vol 2

Ohjelmistoarkkitehtuurit Kevät 2014 Arkkitehtuurityylit vol 2 Ohjelmistoarkkitehtuurit Kevät 2014 Arkkitehtuurityylit vol 2 Samuel Lahtinen (Johannes Koskinen) http://www.cs.tut.fi/~ohar/ 1 Yleisesti Huomenna ei luentoa, tapaaminen TC103:ssa Muistakaa harkkavälinäyttöilmo

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

YTHS Raportointijärjestelmähankkeen

YTHS Raportointijärjestelmähankkeen 1 (11) YTHS Raportointijärjestelmähankkeen tarvemäärittely Periaatetason arkkitehtuurin ja ratkaisun kartoitus 2 (11) Sisällysluettelo 1. ALUSTUS... 3 2. JÄRJESTELMÄARKKITEHTUURI... 3 2.1. ETL PROSESSI...

Lisätiedot

Harri Kaukovuo Senior Sales Consultant Technology Sales Oracle Finland Oy

Harri Kaukovuo Senior Sales Consultant Technology Sales Oracle Finland Oy Harri Kaukovuo Senior Sales Consultant Technology Sales Oracle Finland Oy Oracle10 g Web Services Sisältö Service Oriented Architecture (SOA) Web Services Service Oriented Architecture Service Oriented

Lisätiedot

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1 Ohjelmistoarkkitehtuurit Syksy 2009 Kai Koskimies Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1 Tervetuloa Kuopion yliopisto, Oulun yliopisto (Kajaani), Tampereen yliopisto, Turun yliopisto,

Lisätiedot

BookIT DDM Helppoa viestintää kännykkään Teknologiakuvaus

BookIT DDM Helppoa viestintää kännykkään Teknologiakuvaus BookIT DDM Helppoa viestintää kännykkään Teknologiakuvaus BookIT Oy 27.10.2004 Yleistä BookIT DDM palvelu tarjoaa käyttäjille mahdollisuuden välittää avoimessa mobiilipalveluympäristössä transaktioita

Lisätiedot

Web-palvelu voidaan ajatella jaettavaksi kahteen erilliseen kokonaisuuteen: itse palvelun toiminnallisuuden toteuttava osa ja osa, joka mahdollistaa k

Web-palvelu voidaan ajatella jaettavaksi kahteen erilliseen kokonaisuuteen: itse palvelun toiminnallisuuden toteuttava osa ja osa, joka mahdollistaa k 1 Web-palvelu voidaan ajatella jaettavaksi kahteen erilliseen kokonaisuuteen: itse palvelun toiminnallisuuden toteuttava osa ja osa, joka mahdollistaa ko. toiminnallisuuden hyödyntämisen Web-palveluna.

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

Ohjelmistojen mallintaminen Tietovuokaaviot Harri Laine 1

Ohjelmistojen mallintaminen Tietovuokaaviot Harri Laine 1 Ohjelmistojen mallintaminen Tietovuokaaviot 3.11.2008 Harri Laine 1 t Data flow diagrams Pohjana systeemiteoreettinen järjestelmämalli Input system output Järjestelmän tehtävä on muokata lähtötiedoista

Lisätiedot

HAKURATKAISUN ANATOMIA - KURKISTUS PELLIN ALLE

HAKURATKAISUN ANATOMIA - KURKISTUS PELLIN ALLE HAKURATKAISUN ANATOMIA - KURKISTUS PELLIN ALLE Jukka Huhta Nikke Myöhänen Ville Tenhunen 5.11.2014 AGENDA MITÄ? MIKSI? ARKKITEHTUURI KAHLAUS INDEKSIT INTEGRAATIOT KÄYTTÖLIITYMÄT RAUDAT KÄYTTÖ NYT JA JATKOSSA

Lisätiedot

Loppukäyttäjän ohje Asennus- ja käyttöohje Mac

Loppukäyttäjän ohje Asennus- ja käyttöohje Mac Loppukäyttäjän ohje Asennus- ja käyttöohje Mac Fujitsun mpollux DigiSign Client on kortinlukijaohjelmisto, jonka avulla voit kirjautua luotettavasti ja turvallisesti organisaation tietoverkkoon tai sähköiseen

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