2009 oktoober ivo mägi ivoätwebmediadotee · praktiline töö moodustage 3-liikmelised grupid iga...

66
2009 oktoober 2009 oktoober Ivo Mägi ivoätwebmediadotee

Upload: others

Post on 02-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

2009 oktoober2009 oktoober

Ivo Mägi

ivo ät webmedia dot ee

Page 2: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Kes ma selline olen� Kümme aastat tarkvaratööstuses

� Erinevad rollid, hetkel AS Webmedia tarkvara arendusjuht

� Kuus aastat Java SE/EE arendust� Kuus aastat Java SE/EE arendust

� Osalenud kokku 13 erineva ärirakenduse meisterdamisel

� Osakoormusega lektor TÜ-s aastast 2002

Page 3: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Selle loengu eripära� Senised loengud on käsitlenud tarkvara tootmist ühe

konkreetse projekti kontekstis� Käsitletud on ühte konkreetset distsipliini (testimine,

projektijuhtimine, etc)projektijuhtimine, etc)� Antud vaade on peamiselt teostajakeskne

� Nüüd teeme kõike tagurpidi� Räägime kõikidest projektidest korraga� Vaatame probleeme interdistsiplinaarselt� Vaade on pigem tellijakeskne

Page 4: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Millest räägime?� Miks see teid üldse huvitama peaks?

� Mis üldse on ärirakendused?

� Tellimisprotsess

Arenduskeskkond� Arenduskeskkond

� Infrastruktuur

� Süsteemi arhitektuur

� Infoarhitektuur

Page 5: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete
Page 6: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

“Enteprise architecture”

Tundub midagi suurt ja võimast?võimast?

Tundub et selle eest peaks palju raha maksma?

Page 7: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Enteprise applications� Enterprise ei ole midagi muud kui sünonüüm

Company – le.

� Ehk siis tõlgime: enterprise applications – rakendused mis on loodud ettevõtetele nende äri toetamiseksmis on loodud ettevõtetele nende äri toetamiseks

� Loodetavasti enamik maagiast kadus ...

Page 8: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Näited� On ärirakendused

� Elektrooniline haiguslugu

� Ettevõtte palgamaksesüsteem

� Elektrooniline tuludeklaratsioon� Elektrooniline tuludeklaratsioon

� Ei ole ärirakendused� Tekstieditor

� Arvutimäng

� Operatsioonisüsteem

� Kompilaator

Page 9: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Lisame natuke maagiat tagasi� Tarkvaratootjad lisavad oma tootele tihti “Enterprise

Edition” prefiksi või sufiksi rõhutamaks et just see tooteversioon sisaldab kõiki võimalikke featuure� Kontrolli järele kas sul ikka on kõiki neid vidinaid � Kontrolli järele kas sul ikka on kõiki neid vidinaid

tegelikult vaja?

� Ettevõtted kes toodavad tarkvara näiteks pankadele, või telekomidele kutsuvad tihti oma tooteid “Enterprise something”� Nad teevad seda rõhutamaks et see mis valmib on SUUR

Page 10: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Suured rahad suured süsteemid*� Eestis on ca 50 000 ettevõtet

� 90% neist saavad hakkama lihtsa Exceliga

� 9% vajavad ERPi ning CRMi ning ehk midagi ärispetsiifilist mida saab lihtsalt skriptidaärispetsiifilist mida saab lihtsalt skriptida

� Ülejäänud (1%) vajaksid ärispetsiifilisi lahendusi, kuid 90% neist ei saa seda kas endale lubada või ei ole nad piisavalt innovatiivsed

� Ja olemegi jõudnud 0,1% ettevõteteni (50 ettevõtet!) kes moodustavad Eestis “enterprise” klassi turu tellides regulaarselt erinevaid lahendusi

Page 11: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Erinevaid lahendusi ja regulaarselt?� Tarkvaraarendusega seotud osa eelarvest on vähemalt

2 000 000 krooni

� Kes need ettevõtted siis on?� Pangad: Swedbank, SEB, Sampo, ...� Pangad: Swedbank, SEB, Sampo, ...

� Kindlustused: ERGO, IF, Salva, ...

� Telekomid: EMT, Elion, Tele 2, Elisa

� Riik: ministeeriumid ja ametid

� Tervishoid: TÜ kliinikum, PERH, ...

� Ülejäänud: Eesti Energia, Tallink, ...

Page 12: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Kuidas nad neid lahendusi teevad?� Teevad ise?

� Tellivad osaliselt selleks spetsialiseerunud ettevõtetelt?

� Tellivad täielikult sellele spetsialiseerunud ettevõtetelt?ettevõtetelt?

Page 13: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Ja kes need spetsialiseerunud ettevõtted on?� Webmedia,

� Helmes,

� Tietoenator,

Logica, � Logica,

� Proekspert,

� Mebius,

� Fujitsu,

� ...

Page 14: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Mis siis üldse üle jääb?� Tootearendused

� Skype, Playtech

� ... aga ka Raintree, Medisoft, ...

� Ülikoolide töörühmad� Ülikoolide töörühmad

� Startupid� ASI kapital

� Business angels

Page 15: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Ehk siis kokkuvõtteks:� Teil on väga suur tõenäosus sattuda töötama

ärirakendustega

� Kui te juba ärirakendustega töötama satute siis tõenäoliselt on (vähemalt finantsiliselt) huvitavam tõenäoliselt on (vähemalt finantsiliselt) huvitavam töötada suurte rakendustega� Eelarve 500 000kr versus 5 000 000 kr.

Page 16: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Äriarhitektuur� Käsitleme ühe ettevõtte erinevaid infosüsteeme ja

nende probleeme

� Vaatleme probleeme suurettevõtete kontekstis� Väikestel ettevõtetel on vähe süsteeme � Väikestel ettevõtetel on vähe süsteeme

� Väikeste ettevõtete probleemid on väikesed

Page 17: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Vaade tootmisettevõtte ärile tarkvara seisukohast:

Tarnijad Ladu TootmineFTP RMI

Raamatupidamine

Tellijad

Müük ODBCAruandlus / andmeanalüüs

Page 18: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Ja tegelikult:Tarnija 1

Ladu Tootmine

Tarnija 2

Raamatupidamine

Tellija 1

Müük

Tarnija 2

Tarnija 3

Tellija 2

Page 19: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Ärirakenduste spetsiifika� On palju andmeid

� Andmeid säilitatakse “igavesti”

� Operatsioone sooritatakse samaaegselt

Eksisteerib palju kasutajaliidese ekraane� Eksisteerib palju kasutajaliidese ekraane

� On integreeritud teiste ärirakendustega

Page 20: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Andmed� Tänapäeval praktiliselt igas ärirakenduses

opereeritakse andmetega� Klient, Arve, Aadress, Tellimus, Makse, ...

� Andmeid võib säilitada erinevates asukohtades� Andmeid võib säilitada erinevates asukohtades� LDAP, O-O baas, RDMBS, failisüsteem, ...

� 99+ % äriandmestikust hoitakse tänasel päeval relatsioonilises andmebaasis� Aga kas peaks? Alternatiivid?

Page 21: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Suuremad tootjad� Oracle

� IBM

� Microsoft

Sybase� Sybase

� MySQL

� Postgres

Page 22: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Baas ja arhitektuur� Ära käsitle baasi ainult andmehoidlana

� Eksisteerib arhitekte kelle jaoks on oluline disainida lahendus nii et see oleks andmebaasist sõltumatu

� Mida sellega võidetakse ja mida kaotatakse?

� Kasuta konkreetse tootja poolt pakutavaid võimalusi� Kasuta konkreetse tootja poolt pakutavaid võimalusi� Stored procedures

� Triggers

� Indexes

� Materialized views

� ...

� ... Aga loomulikult ainult siis kui sulle seda vaja on.

Page 23: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Milliseid operatsioone teha baasitasandil?� Operatsioonid andmehulkadega

� Mida suurem päring seda kindlamini on tegu baasioperatsiooniga

� Mida keerulisem päring seda kindlamini on tegu � Mida keerulisem päring seda kindlamini on tegu baasioperatsiooniga

� Äriloogika?

� Mida mitte teha baasis?� Kasutajaliidese loome

� Süsteemiintegratsioon

� Äriloogika?

Page 24: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Ärirakenduste spetsiifika� On palju andmeid

� Andmeid säilitatakse “igavesti”

� Operatsioone sooritatakse samaaegselt

Eksisteerib palju kasutajaliidese ekraane� Eksisteerib palju kasutajaliidese ekraane

� On integreeritud teiste ärirakendustega

Page 25: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Andmete säilitamine� Andmete “igavesti” säilitamine annab suurepärased

võimalused andmeanalüüsiks

� Miks andmeanalüüsi äris vaja on?

� Milliseid vaateid äri andmetele soovib� Milliseid vaateid äri andmetele soovib� Kas need vaated on dünaamilised või staatilised?

� Kui palju äri esindajad ise suudavad andmetega opereerida?

Page 26: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Andmete säilitamine� Kas säilitada operatiivbaasis või ladustada eraldi?

� Kas ladustamisel andmeid töödeldakse?

� Kes andmeid laost kasutama hakkab? Kas üldse kasutatakse või tõstetakse ainult jalust ära?kasutatakse või tõstetakse ainult jalust ära?

Page 27: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Ärirakenduste spetsiifika� On palju andmeid

� Andmeid säilitatakse “igavesti”

� Operatsioone teostatakse samaaegselt

Eksisteerib palju kasutajaliidese ekraane� Eksisteerib palju kasutajaliidese ekraane

� On integreeritud teiste ärirakendustega

Page 28: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Concurrency:good� Lõimede sünkroniseerimine on keeruline

� Õnneks on ärirakenduste arendajate elu lihtsam� Rakenduse töötamisel mitmes lõimes saab usaldada

rakendusserverite ja virtuaalmasinate lõimede haldustrakendusserverite ja virtuaalmasinate lõimede haldust

� Andmete samaaegsel muutmisel saab usaldada transaktsioone

Page 29: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Concurrency: bad� Offline concurrency

� Business transactions versus system transactions

� Locking

� Optimistic� Optimistic

� Pessimistic

� Deadlocks

Page 30: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Ärirakenduste spetsiifika� On palju andmeid

� Andmeid säilitatakse “igavesti”

� Operatsioone teostatakse samaaegselt

Eksisteerib palju kasutajaliidese ekraane� Eksisteerib palju kasutajaliidese ekraane

� On integreeritud teiste ärirakendustega

Page 31: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Kasutajaliidesed� Täna on popp teha ärirakenduste kasutajaliidesed

veebipõhistena� Loomulikult eksisteerib ja ka täna tehakse rich client

rakendusirakendusi

� Ärirakendustega aga soovitakse teha asju milleks veeb algselt mõeldud pole

� Tulemuseks on DHTML, AJAX ja muu maagiaga kokku kleebitud rakendused

Page 32: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Kasutajaliidesed: eesmärk� Teenuste pakkumine� Informatsiooni kuvamine� Lõppkasutaja suhtluse töötlus� Ehk siis, me kasutajaliideses EI

Suhtle andmekihiga� Suhtle andmekihiga� Vii läbi süsteemiintegratsiooni� Algata transaktsioone� Autoriseeri operatsioonidele ligipääse� ...

� VAID� Pakume infot ning töötleme serveeritud info põhjal kasutajalt

saadetud sündmusi.

Page 33: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Veebipõhised kasutajaliidesed: Java maailm� MVC

� AJAX

� Web 2.0

Struts

� JSF

� JSP

� XSL(T)

Velocity� Struts

� Spring MVC

� DOJO

� Scipt.aculo.us

� Stripes

� Wicket

� Velocity

� Tapestry

� Javascript

� XHTML

� DOM

� JSON

Page 34: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Ärirakenduste spetsiifika� On palju andmeid

� Andmeid säilitatakse “igavesti”

� Operatsioone teostatakse samaaegselt

Eksisteerib palju kasutajaliidese ekraane� Eksisteerib palju kasutajaliidese ekraane

� On integreeritud teiste ärirakendustega

Page 35: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Milleks ärirakendusi üldse integreerida?

Page 36: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Integratsiooni tüübid� Jagatud andmed.

� Remote procedure calls

� Messaging

Mashups� Mashups

Page 37: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Jagatud andmed� Andmemudeli kasutus mitme rakenduse poolt

� +� Relatsioonilised andmebaasid on väga levinud

Joine ja filtreid saab rakendada otse andmebaasis kus see � Joine ja filtreid saab rakendada otse andmebaasis kus see on kõige efektiivsem

� Lihtne

� -� Erinev arusaam andmestruktuuridest erinevates

rakendustes

� Probleemid lukustusega

Page 38: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Jagatud andmed: millal kasutada� Eesti andmemahtude puhul saab pea kõigi ettevõtete

majasisese integratsiooni teostada jagatud andmetega� Erandid juhul kui allstruktuurid (müük, ladu,

tootmine) defineeerivad samu mõisteid väga erinevalt.tootmine) defineeerivad samu mõisteid väga erinevalt.

� Ettevõtetevahelisel integratsioonil ebasoovitav

Page 39: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

RPC� Ärioperatsioonide kasutus mitme rakenduse poolt

� Maksa arve� Leia klient� Peata isiku volitus� Peata isiku volitus

� Märkate erinevust – ei kasutata andmeid vaid mingit tüüpi ärioperatsiooni

� Teenusorienteeritud arhitektuuri alustala

� Kas stored procedure kasutus on RPC üle JDBC/ODBC/... on RPC või jagatud andmed?

Page 40: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

RPC: Millal kasutada?� Ettevõttesiseks integratsiooniks juhul kui

� Andmemudelid on erinevad

� Andmestruktuurid/andmestik on väga suur

� Ei ole majanduslikult põhjendatud samale � Ei ole majanduslikult põhjendatud samale andmestruktuurile kolimine� Ettevõtete ühinemine, ülevõtmine

� Ettevõtetevaheliseks integratsiooniks� Kui messaging ei sobi

Page 41: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

RPC: tehnoloogia� CORBA

� RMI

� RMI-IIOP

Web Services� Web Services

� DCOM

Page 42: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Messaging� Asünkroonne teadete edastus: vahendaja abil

eraldatakse teineteisest saatja ja vastuvõtja. � Saatja ei pea teadma midagi vastuvõtja(te)st

� Vastuvõtja ei pea teadma midagi saatja(te)st� Vastuvõtja ei pea teadma midagi saatja(te)st

� Saatja ja vastuvõtja ei pea olema samal ajahetkel operatiivsed

Page 43: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Messaging� Kaks põhimõtteliselt lahenduse tüüpi

� Queue: point-to-point

� Topic: publish-subscribe

Page 44: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Messaging: tehnoloogia� Java: JMS implementatsioonid

� MS: MSMQ

� EAI: BEA Aqualogic products, IBM MQ, ...

Page 45: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Integratsioon: mashups� Rakendus mis kombineerib andmed eri allikatest

kokku view kihis� Näide: Google Maps+Craigslist

� Näide: Google Maps+Flickr� Näide: Google Maps+Flickr

� Näide: maa-ameti korteritehingute statistika + city24

� Peamine erinevus portaalist: portaalis kombineeritakse andmed serveris

Page 46: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Mashups: millal kasutada� Kui view on disainitud taastasutavate widgetite abil

� Kui äriväärtus seisneb just vaate tasemel kombineerimises

Page 47: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Integratsioon: x-tee� Kes teavad mis on x-tee ja mis sellest kasu on?

� X-tee teenuste näiteid� Ettevõtte andmete küsimine registrikoodi järgi

Kontroll kas isik on ettevõtte volitatud esindaja� Kontroll kas isik on ettevõtte volitatud esindaja

� Isikule kuuluvate sõidukite päring

� Isiku elukoha päring

� Kontroll kas isikul on kehtiv kindlustus haigekassast

� ...

Page 48: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Integratsioon: näited� Võlamenetlusprotsess

� Jõustruktuuride infokasutus

� Kindlustuskompanii poliiside koostamine

Page 49: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Tellimine: kes neid süsteeme loob ja haldab?� Majasisene IT?

� Tänapäeval järjest rohkem outsource mudel� Miks?

� Mis mahus teenust väljast osta?� Mis mahus teenust väljast osta?� Kõik?� Arendus?� Hooldus?

� Millist teadmist kindlasti ei tohi oma ettevõttest ära lasta:� Ärikompetents� Kontroll infrastruktuuri üle� Integratsioon süsteemide vahel

Page 50: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Mida võib väljast tellida?*� Arendusteenust

� Süsteemianalüüsi

� Projektijuhtimist (osaliselt)

Testimist (osaliselt)� Testimist (osaliselt)

Page 51: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Mida väljast tellides tuleb fikseerida?� Arenduskeskkond

� Infrastruktuur

� Süsteemi arhitektuur

Infoarhitektuur� Infoarhitektuur

� Ehk siis – meie tänase loengu sisu

Page 52: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Arenduskeskkond� Versioonihaldus

� Tööülesannete haldus

� Ehitamine

Dokumentide haldusvahendid� Dokumentide haldusvahendid

� Integratsioonivahendid

� Protsess ja selle haldusvahendid

� Tarnete teostamise kord

Page 53: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Infrastruktuur� Andmebaas(-baasid)� Programmeerimiskeel(-keeled)� Rakendusserver (-serverid)� Kliendikeskkond (OS, brauser)� Kliendikeskkond (OS, brauser)� Paketeeritud rakendused (ERP, CRM, CMS, BPM, ESB)� Andmeteenused (autentimine, audit, kliendiinfo)� Integratsiooniprotokollid� Muu: Fail-over + load-balancing, SSL tugi, ID-kaardi

infrastruktuur, pangalingid, M-ID, x-tee tugi, puhverdamine, monitooring, ...

Page 54: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Süsteemiarhitektuur� Ärirakendustes võime eristada nelja eri liiki

rakenduste arhitektuuri:� Desktop-rakenduse arhitektuur

� Veebirakenduse arhitektuur� Veebirakenduse arhitektuur

� Sõnumiedastuse arhitektuur

� Batching protsesside arhitektuur

Page 55: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Süsteemiarhitektuur: veebirakendus� Tugevalt mõjutatud infrastruktuurist. Näide baseerub

Eestis levinud Java EE platvormil*

Page 56: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete
Page 57: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Mille alusel valikuid teha?� Tehniline

� Efektiivsed toodangukeskkonnas

� Produktiivsed arenduses

� Õpikõver� Õpikõver

� Äriline� Tööjõu saadavus ja hind

� Time – to – market

� TCO

Page 58: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Infoarhitektuur� Kust milliseid andmeid kasutada?

� Milliste reeglite alusel kasutada?

� NäitedKasutaja ja organisatsiooni info: LDAP/AD� Kasutaja ja organisatsiooni info: LDAP/AD

� Isikud: party patterni järgi realiseeritud baas.Kasutatakse üle ODBC/JDBC päringute

� Arved/Maksed: MS Dynamics AX/SAP/Oracle EBS. Kasutus üle stored procedure

� Tooted: omaloodud lahendus, kasutus üle RMI

Page 59: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Miks sellele tähelepanu pöörata?� Tüüpjuhtumid:

� Ettevõttel on igas rakenduses oma tabel “KASUTAJA”Miks see halb on?� Miks see halb on?

� Erinevad rakendused defineerivad erinevalt mõiste “TOODE”� Miks see halb on?

Page 60: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Arhitektuur kui protsess� Väga lihtne on äriarhitektil toota 500lk dokumente ja

käskida selle järgi toimida� Paraku see ei tööta, sest inimesed:

� ei loe seda materjali läbi� ei saa loetust aru� ei saa loetu eesmärkidest aru� kardavad muutusi� on mingi valdkonna / tehnoloogia idealistid� ...

� Kõik eelkirjeldatu toob kaasa selle et inimesed kas teadmatult või teadlikult töötavad arhitektuurile vastu

Page 61: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Arhitektuur kui protsess� Arhitekt ei saa olla “valgete kinnastega”

� Või õigemini saab küll – maailmas on päris palju “arhitekte” kelle relvastuses on ainult Powerpoindislaidid ja Wordi dokumendid

� Nemad on esimesed kes praeguses majandussituatsioonis lahti lastakse

� Tuleb omada kontakti reaalsusega� Töövahenditeks on ikkagi ka IDE, andmebaasiklient,

shelli skriptid, etc.� Tuleb pidevalt jälgida mida arendusest tulemina

tarnitakse ning kontrollida selle sobivust suurde pilti

Page 62: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Arhitektuur kui protsess� Peaaegu alati on lähtepositsioonis midagi mis

“ideaalsesse” arhitektuuri ei sobi� Väga harva saab alustada tühjalt lehelt – tüüpiliselt on

teil olemas juba kümneid rakendusiteil olemas juba kümneid rakendusi

� Pole kasu ainult ideaalse maailma kirjeldamisest, tuleb kirjeldada ka viis sinna jõudmiseks

Page 63: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Arhitektuuri seos äriga� Arhitekt peab ärist aru saama

� Arhitekt peab suutma ärile põhjendada mingi muudatuse kasulikkust äri seisukohast

� Kujutage end ise ette CEO/VC/kantsleri seisukohast � Kujutage end ise ette CEO/VC/kantsleri seisukohast kui teile öeldakse:

“Migreerime kõik OC4J 9 JDK 1.4 instantsid WLS 10 JDK 6.0 peale ning juurutame paralleelselt SSO teenuse.

Maksma läheb see umbes 5-10MEEK ning valmis saab loodetavasti 2010 lõpuks”

Page 64: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Kokkuvõte� Kui te olete äriarhitektuuri eest vastutav*, siis seadke

raamid mille piires on lubatud süsteemidel valikuid teha, sh:� Tellimisprotsess ja arendusvahendid� Tellimisprotsess ja arendusvahendid

� Infrastruktuur

� Süsteemiarhitektuur

� Infoarhitektuur

� Tehke plaan kuidas olemasolev pilt nendesse raamidesse sobituda

� Ja hakake tegema, samm sammu haaval ...

Page 65: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Praktiline töö� Moodustage 3-liikmelised grupid

� Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete nimed

� Samalt laualt saate ka lähteülesande kirjelduse� Samalt laualt saate ka lähteülesande kirjelduse

� Aega 2 minutit

Rühmad moodustatud

Page 66: 2009 oktoober Ivo Mägi ivoätwebmediadotee · Praktiline töö Moodustage 3-liikmelised grupid Iga grupp võtab eest laualt kaks lehte paberit ja kirjutab igale lehele meeskonnaliikmete

Ülesanne� Oled värskelt palgatud CIO Sparks AS –

nimelises ettevõttes. Sulle allub 15 spetsialisti, kes seniseid süsteeme hallanud on.

� Juhatus on sulle esimesel koosolekul � Juhatus on sulle esimesel koosolekul kirjeldanud erinevaid probleeme. Sinu ülesanne on pakkuda lahendused.

� Lisaks oodatakse sult ka tegevuskava mustandit ning eelarvet.