Kurssin sisältö. Kurssin sisältö. Luentoaikataulu karkeasti. Esseiden aikataulu. Aihe-ehdotuksia esseille. Aihe-ehdotuksia esseille

Samankaltaiset tiedostot
Sovellusarkkitehtuurit

Johdanto - agenda JOHDANTO. Middleware definition 2. Middleware definition 1. Väliohjelmisto /09/2007. Lea Kutvonen

Arkkitehtuurinen reflektio

Malliperustainen ohjelmistokehitys - MDE Pasi Lehtimäki

HOJ J2EE & EJB & SOAP &...

Integrointi. Ohjelmistotekniikka kevät 2003

HSMT J2EE & EJB & SOAP &...

Tietojärjestelmäarkkitehtuurit

Malliperustainen ohjelmistokehitys (Model-Driven Engineering, MDE)

Ohjelmistoarkkitehtuurit. Kevät

Ohjelmistoarkkitehtuurit. Syksy 2008

7. Product-line architectures

Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin

2 Ohjelmistoarkkitehtuurien kuvaus

Ohjelmistoarkkitehtuurit. Syksy 2010

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

DIPLOMITYÖ ARI KORHONEN

Ohjelmistoarkkitehtuurit. Syksy 2007

2 Description of Software Architectures

.NET 2006 ja sen jälkeen

Enterprise Architecture TJTSE Yrityksen kokonaisarkkitehtuuri

Harri Kaukovuo Senior Sales Consultant Technology Sales Oracle Finland Oy

SOA käyttöönotto TM:ssä

Computing Curricula raportin vertailu kolmeen suomalaiseen koulutusohjelmaan

Reflektiomekanismien rooli palveluorientoituneissa järjestelmissä. Seminaarityö Tom Bertell

Teknologinen muutos ja yliopistojen tulevaisuus. Tievie-seminaari Helsinki Antti Auer

arvostelija OSDA ja UDDI palveluhakemistoina.

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

Hieman lisää malleista ja niiden hyödyntämisestä

IT-OSAAJA, TIETOJENKÄSITTELYN ERIKOISTUMISOPINNOT

Kurssin suorittaminen. Merkkituotteet strategisessa markkinoinnissa KTT Eiren Tuusjärvi

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

/ ta. Osaa kvalitatiivisella tasolla arvioida sovelluksen hajauttamisen hyötyjä ja haittoja.

Ajankohtaisia SOA tutkimusteemoja

Ohjelmistojen mallintaminen

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

Mobiilialueen tutkimus EU:n 6. puiteohjelmassa: Wireless World Initiative (WWI)

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

Tavoitteena yhdistää eri tavoin toteutetut ja eri tavoin toimivat järjestelmät; integration & interoperability.

Tietojenkäsittelytieteiden koulutusohjelma. Tietojenkäsittelytieteiden laitos Department of Information Processing Science

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

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

Moniulotteisten ohjelmistojen hallinta

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Päihittääkö J2EE.NETin SOAn pohjana?

SOA SIG SOA Tuotetoimittajan näkökulma

ALUEARKKITEHTUURI WEB PALVELUITA KÄYTTÄEN. Niilo Saranummi VTT Tietotekniikka

HELIA 1 (19) Outi Virkki Käyttöliittymät ja ohjelman suunnittelu

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

2 Ohjelmistoarkkitehtuurien kuvaus

T Ohjelmistojen määrittely- ja suunnittelumenetelmät

Revit Architecture 2013 parametriset. komponentit. opetusmateriaali

Kari Rouvinen Johtaja, Technology Products & Solutions. Oracle Finland Oy

Scheduling of Genetic Analysis Workflows on Grid Environments (valmiin työn esittely) Arttu Voutilainen

Rinnakkaisohjelmistot. Liisa Marttinen Tietojenkäsittelytieteen laitos Helsingin yliopisto Kevät 2004

SOA emergence. Palveluorientoituneisuus yritysjärjestelmiin. Avoin seminaari SOAMeS

Ohjelmistotekniikan menetelmät, kesä 2008

Jatkuvuus on arkistoinnissa avainasia

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

Smart cities - nyt ja huomenna

Myös opettajaksi aikova voi suorittaa LuK-tutkinnon, mutta sillä ei saa opettajan kelpoisuutta.

<Insert Picture Here> SOA-rakentajan ensimmäiset askeleet avoimien standardien hyödyntämiseen

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

Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat

Palvelujen dynaaminen valvonta

Palvelusuuntautunut ohjelmistotuotanto Luento 8: Näkökulmien mallinnus ja soveltaminen; Kurssin yhteenveto Toni Ruokolainen

Collaborative and interoperable computing

OHJ-5201 Web-palveluiden toteutustekniikat. Kurssisisällöstä. Tarja Systä

arvostelija Palvelukeskeinen arkkitehtuuri liiketoimintanäkökulmasta Jukka Ruotsalainen Helsinki HELSINGIN YLIOPISTO

Järjestelmäarkkitehtuuri (TK081702)

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

Palvelulaatutietoinen väliohjelmisto

Sisällys. Ratkaisumallien historia. Ratkaisumalli. Ratkaisumalli [2] Esimerkki: Composite [2] Esimerkki: Composite. Jaakko Vuolasto 25.1.

Malliperustainen ohjelmistokehitys ja malliperustainen arkkitehtuuri

Palvelut yritysarkkitehtuurin keskiössä: OP-Pohjola-ryhmän matkakokemuksia

Käyttöliittymä ja tuotantokäsikirjoitus. Heini Puuska

Teemat. Järjestelmätarpeet. Distributed object model. Väliohjelmistot /04/2004. Objekti- ja komponenttiväliohjelmistot. Objektijärjestelmät

Tapahtumankäsittely Semanttisen Webin Menetelmillä

VÄLIOHJELMISTOT INTEGRAATIOTEKNIIKKANA

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

Mobiiliohjelmointi,, 5op

Palvelusuuntautunut ohjelmistotuotanto Luento 1: Kurssin järjestelyt, palveluperustaisten järjestelmien periaatteet Toni Ruokolainen, 8.9.

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

Tietoliikenne I 2 ov kevät 2003

Ohjelmistojen mallintaminen, kesä 2009

P e d a c o d e ohjelmointikoulutus verkossa

Common Lisp Object System

Tietoliikenne I (muuntokoulutettaville) 2 ov syksy 2003 Luennot Liisa Marttinen

Tietoliikenne I (muuntokoulutettaville) 2 ov syksy 2003 Luennot Liisa Marttinen

CS35A0011 Johdatus tietojohtamiseen ja informaatioverkostoihin 6

3. Käsiteanalyysi ja käsitekaavio

Java Platform, Enterprise Edition (Java EE)

Distribution issues, global state, clusters, CORBA, etc. Distributed objects

Ohjelmistokehitys COM-komponenttien avulla

Object Framework - One. OF-1 is a high-productive Multi-UI OpenEdge data driven development framework. Veli-Matti Korhonen

Tuottavuutta sovelluskehitykseen Oraclen työkaluilla: JDeveloper 10g ja HTML DB OUGF Syysseminaari

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

Tietoliikenne I 2 ov kevät 2004

Tietoliikenne I 2 ov kevät 2004

Globaalisti Hajautettu Ohjelmistokehitys Mitä, Miksi & Miten? Maria Paasivaara

Transkriptio:

Väliohjelmistot Kurssin hallinnolliset tiedot Lea Kutvonen Helsingin yliopisto Tietojenkäsittelytieteen laitos Kevät 2004 Kurssin tavoite tutustua väliohjelmistoratkaisujen periaatteisiin mitkä ovat väliohjelmistojen tavoitteet mitä väliohjelmistot tekevät, miten mitkä seikat vaikuttavat väliohjelmiston kehitykseen antaa mahdollisuuden pohtia mihin suuntaan väliohjelmistot kehittyvät miten väliohjelmistot muuttavat ohjelmistotuotantoprosessin luonnetta ja työkaluja miten valita tehtävään sopiva väliohjelmistoalusta Kurssin asema valinnainen laudaturkurssi vaadittavat esitiedot tietoliikenne, käyttöjärjestelmät hajautetut järjestelmät tai ohjelmistoarkkitehtuurit tms. laudaturkurssi Kurssin suorittaminen luennot + aktivointitehtävät esseet esitys seminaaripäivänä tentti kurssin materiaali artikkelit, ei kurssikirjaa artikkelit saatavissa webistä kurssin sivuilta kurssilukemisto tenttiin, muu kirjallisuus esim esseiden aiheita ajatellen Johdanto mitä väliohjelmistoilla tarkoitetaan väliohjelmistojen rooli ja tehtävät väliohjelmistojen luonteeseen vaikuttavat tekijät väliohjelmistojen kategorisointia teknisiin tasoihin, arkkitehtuurityyleittäin ja tavoitteen mukaan Transaktionaalisista väliohjelmistoista Viestipohjaisista väliohjelmistoista RPC-pohjaisista väliohjelmistoista Lea Kutvonen 1

Objekti- ja komponenttiväliohjelmistoista Arkkitehtuurimalli Tavoitteet ja palvelut Case CORBA: objekti- ja komponenttiversiot dynaaminen sidonta, rajapintatietojen hallinta Avoimen hajautetun tietojenkäsittelyn viitemalli yleiskuvaus standardijoukosta sovellusalustan rakenne ja palvelut tuntumattomuuspalvelujen toteuttaminen avoimet sidonnat Palvelukeskeiset arkkitehtuurit Sovellusten tuotantovälineiden kehityslinjat (MDA) Erityisteemoja? Reaaliaikaisuus Mobiliteetti Loppuseminaari Täydentävää materiaalia kurssilaisten esityksistä: Case-kuvauksia väliohjelmistopalveluista Muiden komponenttiarkkitehtuurien esittelyjä Tutkimushankkeiden esittelyjä Ohjelmistotyökalujen esittelyjä Luentoaikataulu karkeasti 16.3 & 19.3 Hallinnolliset asiat + johdanto 22.3 & 26.3 (10.00) Eri tyyppisistä väliohjelmistoista Objekti- ja komponenttipohjaiset 30.3 ei luentoa 2.4 (10.00) Objekti- ja komponenttipohjaiset 6.4 (lisäaikataulu?) 16.4 ODP-viitemalli 20.4 & 23.4 SOA ja MDA 27.4 & 30.4 Reaaliaikaisuus, Mobiliteetti?? 17.5-19.5 Seminaari-istunnot (tarkennettu ohjelma myöhemmin) 21.5 Tentti Esseiden aikataulu Esseeaiheiden hyväksyttäminen 22.3 tarkistan seminaariohjelman YHTEENSOPIVUUDEN, mikä edellyttää että KAIKKI ovat aiheensa valinneet 22.3 mennessä; ilmoitan hyväksytyt aihepiirit www-sivulla 23.3 Esseesuunnitelmien sisäänjättö VIIMEISTÄÄN 7.4 Suunnitelmista saa käydä keskustelemassa joko ennen aiheen valintaa tai suunnitelman jättöä; aihepiirit laajoja ja rajauksessa tarvitaan useimmissa tapauksissa keskustelua Palaute esseesuunnitelmista noin viikossa (siis viim.15.4) Sähköposti + keskustelu Esseiden sisäänjättö VIIMEISTÄÄN 4.5 Palaute esseistä reilussa viikossa eli viimeistään 10.5 Esseet julkaistaan 10.5-16.5 (kukin omansa) Seminaaripäivät 17.5-19.5 ohjelma muodostetaan 22.3 ja tarkennetaan/tarkistetaan 8.4 Lista ei ole millään muotoa poissulkeva Listalla aihepiirejä joita kavennettava yhdessä Lähdemateriaaliehdotukset henkilökohtaisesti, osa näkösällä kurssin sivulla RPC-semantiikat viestiperustainen vo: arkkitehtuuri + case tapahtumaorientoitu vo: arkkitehtuuri + case Kommunikoinnin laadusta: Saanti- ja paikkatuntumattomuus CORBA- ja Java RMI -ympäristöissä Vikasietoisuus Migraatio Ryhmäkommunikointi Lea Kutvonen 2

Tiedon tallentamisesta tiedon eheyden säilyttäminen hajautetussa tiedostojärjestelmässä hajautetun tietokannan ongelmista palveluista meklaus UDDI kommunikointimalleista multimedian käsittelyn vaatimukset komponenttien yhteentoimivuus open bindings CORBA messaging QoS kommunikoinnin laadun varmistus ohjelmistojen kehittämisestä case: MDA konnektoreiden tuottamisesta järjestelmäarkkitehtuureista TAO reaaliaikajärjestelmänä turva-arkkitehtuuri (CORBA tai J2EE) Adaptiivisuus jossakin seuraavista: MULTE-ORB, Open-ORB, Flexinet, GOPI, TAO ORB reflektiivinen järjestelmä (mm. CACM June 2002) Projektikatsaukset GLOBE mobiilijärjestelmä-case Reflektiivisyys Coulson & Blair Lukemistot ja aktivointitehtävät Kurssilukemisto - Johdanto Bakken, D. E., Middleware. Encyclopedia of Distributed Computing. Kluwer Academic Press, 2001. Bernstein, P., Middleware. CACM, Feb 1996. Campbell, A., Coulson, G., Kounavis, M. E., Managing Complexity: Middleware Explained. Distributed Computing. Charles, J., Middleware Moves to the Forefront. IEEE Computer, pp. 17-19, May 1999. Kurssilukemisto -- väliohjelmistotyypit Schantz, R. E., Schmidt, D.C., Encyclopedia for Software Engineering, chapter Middleware for Distributed Systems: Evolving the common structure for Network-centric applications. Wiley&Sons. http://www.cs.wustl.edu/~schmidt/pdf/middlewarechapter.pdf Banavar, G., Chandra, T., Strom, R., Sturman, D., A case for message oriented middleware. Lecture notes in computer science, 1693, 1999. http://www.research.ibm.com/gryphon/our_research /Research_papers/disc99.ps Lea Kutvonen 3

Kurssilukemisto -- väliohjelmistotyypit Bernstein, P.A., Transaction processing monitors, CACM 33,11, pp.75-86. Bakre, A., Badrinath, B., R., M-RPC: a remote procedure call service for mobile clients Lewandowski, S., Frameworks for component-based Client/Server computing. Birrell, A. D., Nelson, J. B, Implementing remote procedure calls; ACM Transactions on Computer Systems 2, 1 (Feb. 1984), pp. 39-59. Colouris, et.al, 2PL + nested transactions Tanenbaum & van Steen (toisintaminen, ristiriidattomuus, synkronisuus, nimet) jos eivät ole ennestään tuttuja Kurssilukemisto objekti- ja komponenttiväliohjelmistoista Vinoski, S., CORBA: Integrating Diverse Applications within Distributed Heterogeneous Environments OMG, A Discussion of the Object Management Architecture. Chapters 1-4. tai Tanenbaum & van Steen: Distributed Systems, luku 9 Vinoski, S., New features for CORBA 3. Wang, Schmidt, O Ryan: Overview of the CORBA Component Model Kiinnostuneille myös Humberto Cervantes, Common concepts of component models. Technical paper, LSR, Beanome, September 2002. Gail Anderson, Paul Anderson, Enterprise JavaBeans Overview. InformIT, Aug 2002. Kurssilukemisto -- Avoimen hajautetun tietojenkäsittelyn viitemalli Hanssen, O., Eliassen, F., A Framework for policy bindings. Kutvonen, L., Architectures for Distributed Systems: Open Distributed Processing Reference Model. Kurssilukemisto -- SOA TBD Kurssilukemisto -- MDA Siegel, Jon, Developing in OMG s Model- Driven Architecture. Object Management Group White Paper, Nov 2001. Kiinnostuneille myös OMG Architecture Board, Model Driven Architecture (MDA), Jul 2001, ORMSC/2001-07-01 (täydentävä) Kurssilukemisto muut teemat Riippuu esityksistä mahdollisesti vierailijoita Lea Kutvonen 4

Johdanto ja väliohjelmistotyyppien esittely mitä tavoitteita väliohjelmistoilla on? millaisia keinoja tavoitteisiin pääsemiseksi on pyritty käyttämään? mihin ympäristöihin kukin tyyppi väliohjelmistoa soveltuu? miten ratkaisutyypit olennaisesti eroavat toisistaan? esiintyykö tyyppejä puhtaana jossakin? miten väliohjelmisto on läsnä tuntemissasi ohjelmistotyökaluissa ja suoritusympäristöissä? mikä on olennaista suoritusaikaisen ympäristön ja ohjelmointikielen / sovelluskehittimen suhteessa? mitä seuraa erilaisista käsitemalleista näiden välillä? Objekti- ja komponenttiväliohjelmistot termien täsmälliset sisällöt, mm. objekti vs. komponentti, hajautettu objekti, komponenttikehys, sovelluskehitin, application server, components and connectors sisältö ja heijastumat CORBAalustalla miten dynaaminen sidonta hoidetaan? miten komponentin tarjoama toiminto käynnistetään? millä välineillä komponenteista kootaan sovellus? kuka määrää ja millä välineillä palvelun tilattomuudesta tai istuntokäsitteen hyödyntämisestä, palvelun tilatiedon pysyvyydestä, säikeistyksestä, Avoin hajautettu mitä tarkoittaa tässä avoin? mitä standardi määrää? kenelle suunnattu? miten CORBA-malli vastaa? mitä tarkoitetaan deklaratiivisella ohjelmoinnilla, reflektiivisellä väliohjelmistolla, avoimella kerrosrakenteella? -- SOA TBD -- MDA mitä ovat MDA, UML, MOF; CIM, PIM, PSM näiden keskinäinen suhde millainen ohjelmistosuunnitteluprosessi sopii MDA-ajatteluun mikä tässä on uutta vai onko edes uutta? mitä hyötyä MDA:sta pyritään saamaan? muut teemat täydennetään myöhemmin Lea Kutvonen 5