Ohjelmistoarkkitehtuurit. Kevät 2012-2013

Samankaltaiset tiedostot
7 Viestipohjaisten yritysjärjestelmien suunnittelumallit

Ohjelmistoarkkitehtuurit. Kevät

Viestinvälitysarkkitehtuurit

Ohjelmistoarkkitehtuurit. Kevät 2014


Viestinvälitysarkkitehtuurit Lähtökohta:

Ohjelmistoarkkitehtuurit Refaktorointia, ohjelmien ylläpitoa ja evoluutiota. Kevät 2016

Viestinvälitysarkkitehtuurit

Osittavat arkkitehtuurityylit. Palveluihin perustuvat arkkitehtuurityylit. Erikoisarkkitehtuurityylit

Helppo ottaa käyttöön, helppo käyttää Basware Virtual Printer

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

Logistiikan sekä tavarakuljetusten uudet mahdollisuudet ja niiden hyödyntäminen

Helpottuuko sovellusten välinen integraatio XML:n avulla - kokemuksia ja ratkaisuja, teknologiajohtaja Sauli Tujunen, atbusiness Communications Oyj

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

HOJ J2EE & EJB & SOAP &...

Tietojärjestelmäarkkitehtuurit

Integrointi. Ohjelmistotekniikka kevät 2003

Ohjelmistoarkkitehtuurit. Syksy 2008

6. Arkkitehtuurityylit

Johdatus rakenteisiin dokumentteihin

Ohjelmistoarkkitehtuurit

Ohjelmistoarkkitehtuurit Johannes Koskinen. Osittavat arkkitehtuurityylit

Myyntitilauserän kuvaus

Ohjelmistoarkkitehtuurit. Syksy 2007

Ohjelmistoarkkitehtuurit. Kevät

Ohjelmistoarkkitehtuurit kevät

6. Arkkitehtuurityylit

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

Entrust SSL-sertifikaattien hallinta

Ohjelmistoarkkitehtuurit kevät

HSMT J2EE & EJB & SOAP &...

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

Interfacing Product Data Management System

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

DESIGO. Rakennusautomaatiojärjestelmä, joka kasvaa vaatimusten mukaan DESIGO. astustamattomasti. Siemens Building Technologies DESIGO PX 1

Liiketoimintajärjestelmien integrointi

K U U L A L A A K E R I LUOTTAMUKSELLINEN 1(6)

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

Yksityistietiedon palvelualusta Alustavat palvelukuvaukset

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Hirviö. Design Patterns

Tavaratilausten tietovirrat ja datan hyödyntäminen -case S-ryhmä ja Satakunnan Osuuskauppa

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta

TIETOKANNAT JOHDANTO

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

Baswaren verkkolaskuratkaisut PK-yritykselle. Mikael Ylijoki VP, Network Services Product Management

Web-seminaari

in condition monitoring

eshop manuaali Atea Finland Oy

Tehokasta tiedonvälitystä rakennusalalla

Täsmäytys kuinka tehostat tilauksellisten ja toistuvaislaskujen käsittelyä

MavaSoft-ohjelmistolla voidaan hoitaa lähes kaikki tarpeet, mitä pk-yrityksellä on. MavaSoft hallitsee uusimmat standardit, SEPA ja Web Services.

Ohjelmistoarkkitehtuurit

WWW-sivut HTML-kielellä esitettyä hypertekstiaineistoa

HELPOSTI SÄHKÖISEEN LASKUTUKSEEN. Jaakko Laurila E-invoicing forum

Harjoitustehtävät ja ratkaisut viikolle 48

Ohjelmistoarkkitehtuurit. Syksy 2010

Kuluttajat mukaan verkkolaskujen vastaanottajiksi

Timanttiset-verkkokauppa, ohje

Tilauspalveluun pääsee osoitteessa

ENERGIA JA URAKOINTI AJANKOHTAISFOORUMI

ASTERI LÄHETELASKUTUSOHJELMAN ESITE

Siltojen haitat. Yleisesti edut selvästi suuremmat kuin haitat 2/19/ Kytkin (switch) Erittäin suorituskykyisiä, moniporttisia siltoja

Helia Ohjelmointitaito Tuomas Kaipainen Mermit Business Applications Oy Mermit Business Applications

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

Laskujen muuntaminen tapahtuu, kuten osapuolet ovat keskenään sopineet.

Kehittyneet ominaisuudet

Harjoitustyö Case - HelpDesk

TIETOKANTOJEN PERUSTEET MARKKU SUNI

Asiakaslähtöinen globaali tarjousja tilausprosessi tuotehallinnan ehdoilla. Tommi Isotalo

Somettaminen käyntiin Tiedottaja Johanna Hietikko Koljonen Johanna.hietikko

Hirviö. Design Patterns

Graafinen käyttöliittymä, osa 1

Yrityksen sähköisen sanomaliikenteen automatisointi

W3C, Web-teknologiat ja XML

SOA SIG SOA Tuotetoimittajan näkökulma

Navistools Standard. Navistools

Contents AdsML ympäristö... 2 AdsML Testi ympäristö... 2 AdsML tuotantoympäristö... 2 AdsML käyttöliittymä... 3 Kirjautuminen...

ehdot 12.1 Toimitus- Yhteystiedot: Gyproc myyntiryhmä: Tilaukset ja toimitukset Tekninen palvelu ORDER

Liiketoimintajärjestelmien integrointi

Myyntitilaus -tiedoston kuvaus

Myyntilasku: 100 % lähteviä laskuja verkkolaskuina Joustavat ratkaisut omien asiakkaittesi valmiuksista riippumatta

Semanttinen Web. Ossi Nykänen Tampereen teknillinen yliopisto (TTY), DMI / Hypermedialaboratorio W3C Suomen toimisto

Helposti sähköiseen laskutukseen. Sami Nikula Tuotemarkkinointipäällikkö

Handi-palvelut ja palvelukanavat

Pipfrog AS Tilausten hallinta

Integraatiotekniikan valinta - tie onnistumiseen.

WinTraden päivitys- ja asennusohjeistus

Suomen Numerot NUMPAC

Paikoillenne, valmiit, lähetetty!

Pilottipalvelun esittely johtopäätökset

Case: Hanakat LVIS-ketjun verkkokaupparatkaisu

Basware Invoice Processing ja SAP MM integraatio

BASWARE E-INVOICE KAIKKI MYYNTILASKUT VERKKOLASKUINA. Juho Värtö, Account Manager

Ohjelmistoarkkitehtuurit harjoitustyö 2008

10. Muunneltavuuden hallinta: variaatiopisteet

Taloushallinto verkkoliiketoiminnassa

3/8. Max pisteet Annettu tieto Pisteet Annettu tieto Pisteet Annettu tieto Pisteet ,5 Kyllä 0,500 Kyllä 0,500 Kyllä 0,500 Kyllä=0,5

Taksiyrittäjän tietotyökalu. Tilaukset internetistä Taksarille

BASWARE PORTAL. Verkkolaskutuksen uusi ikkuna

Transkriptio:

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: Viesti Kanava Reititys Muunnos Hallinta ja monitorointi (Hohpe & Woolf: Enterprise Integration Patterns. Addison-Wesley 2004) 3 Esimerkki: Tilausten käsittely Asiakkaat Varasto Vaatimuksia: Jälleenmyyjä TKS Valmistajat Kuljetusliike - Asiakkaat voivat lähettää tilauksia webin kautta tai faxilla - Tilaus käsitellään monessa vaiheessa: varastotarkistus, toimitus, laskutus - Integrointi olemassaoleviin sovelluksiin: web-client, faxijärjestelmä, laskutus-, toimitus-, ja varastojärjestelmät 4 2

Tilausten vastaanotto Viesti Kanava Reititys Muunnos Hallinta ja monitorointi 5 Tilausten vastaanotto: useita lähteitä Web- GUI Viestiportti Kahdenvälinen kanava Viestimuuntaja Web -> Kanoninen Fax vastaanottaja Kanavasovitin Viestimuuntaja Fax -> Kanoninen Julkaisija-tilaaja kanava 6 3

Viestiportti (Messaging Gateway) Synkroninen, blokkaava: Viestiportti Viestijärjestelmä - erottaa sovelluslogiikan viestinvälityksestä - tarjoaa sovellusaluekohtaisen API:n sovelluksen käyttöön - helposti vaihdettavissa - asynkroninen tapa: esim. sovellus jatkaa ja pollaa viestiportin tulosviestejä palvelupyyntö viestin lähetys tuloksen vastaanotto prosessointi 7 Tilausten vastaanotto: useita lähteitä Web- GUI Viestiportti Kahdenvälinen kanava Viestimuuntaja Web -> Kanoninen Fax vastaanottaja Kanavasovitin Viestimuuntaja Fax -> Kanoninen Julkaisija-tilaaja kanava 8 4

Kanavasovitin (Channel Adapter) Löyhä sovitinliitos: ei integroidu suoraan sovellukseen vaan välillisesti esim. - sovelluksen yleisen API:n kautta - tarkkailemalla sovelluksen aiheuttamia tapahtumia - tarkkailemalla sovelluksen tuottamia tiedostoja tai tietokantoja (esim. tietokantatriggeri) 9 Tilausten vastaanotto: useita lähteitä Web- GUI Viestiportti Kahdenvälinen kanava Viestimuuntaja Web -> Kanoninen Fax vastaanottaja Kanavasovitin Viestimuuntaja Fax -> Kanoninen Julkaisija-tilaaja kanava 10 5

Kahdenvälinen kanava (Point-to-Point Channel) Voi olla useita potentiaalisia vastaanottajia, mutta kanava itse takaa, että vain yksi vastaanottaja saa kunkin viestin Mahdollisesta vastaanottajan valinnasta huolehtii kanava, vastaanottajien ei tarvitse koordinoida keskenään 11 Tilausten vastaanotto: useita lähteitä Web- GUI Viestiportti Kahdenvälinen kanava Viestimuuntaja Web -> Kanoninen Fax vastaanottaja Kanavasovitin Viestimuuntaja Fax -> Kanoninen Julkaisija-tilaaja kanava 12 6

Kanoninen tietomalli (Canonical Data Model) tiedon esitys, joka on riippumaton sovelluksista sovellusriippuvat esitykset muunnetaan kanoniseen jos sovelluksen esitysmuoto muuttuu, riittää muuttaa muuntaja X kanoninen tai kanoninen X 13 Viestimuuntaja (Message Translator) Muuttaa formaatin tai rakenteen muuttamatta informaatiota Erillinen komponentti Viestimaailman (Adapter): muuttaa viestiformaatin XML-pohjaisten viestien muuntaminen keskenään: XSLT XML <-> jokin muu formaatti: XML jäsentäjät ym. 14 7

Tilausten vastaanotto: useita lähteitä Web- GUI Viestiportti Kahdenvälinen kanava Viestimuuntaja Web -> Kanoninen Fax vastaanottaja Kanavasovitin Viestimuuntaja Fax -> Kanoninen Julkaisija-tilaaja kanava 15 Julkaisija-tilaaja kanava (Publisher-Subscriber Channel) Viesti Tilaaja Julkaisija Julkaisijalta tuleva viesti kopioidaan kaikille tilaajille Kukin tilaaja saa jokaisen viestin kerran Tilaajat eivät tunne toisiaan eivätkä julkaisijaa Julkaisija ei tunne tilaajia Tarkkailija-suunnittelumallin idea viestimaailmassa (tapahtumaviestejä) Voi olla myös monta julkaisíjaa Tilaaja Tilaaja 16 8

Kysyttävää? Reititys Viesti Kanava Reititys Muunnos Hallinta ja monitorointi 18 9

Tilausten käsittely tarkista varasto tarkista asiakas [OK] Poikkeusten käsittely toimita tavara lähetä lasku 19 Tilausten käsittely Julkaisijatilaaja Asiakashallinta Sisältöperustainen reititin kelvollinen tilaus Julkaisijatilaaja Laskutus Toimitus Varastohallinta Yhdistäjä epäkelpo tilaus 20 10

Yhdistäjä (Aggregator) Tilallinen komponentti Kerää koosteita sisääntulevista viesteistä Pitää yllä vaillinaisia koosteita Jos uusi viesti tekee jostakin vaillinaisesta koosteesta täydellisen, koosteviesti lähetetään eteenpäin Kooste ei ole välttämättä unioni (esim. valitaan paras tai ensimmäinen sopiva, muut unohdetaan) 21 Tilausten käsittely Asiakashallinta Sisältöperustainen reititin kelvollinen tilaus Laskutus Toimitus Varastohallinta Yhdistäjä epäkelpo tilaus 22 11

Sisältöperustainen reititin (Content-based Router) Vastaanottaja/kanava määrätään viestin sisällön perusteella (esim. jonkin kentän arvo tai esiintyminen) Ongelma: reititin tuntee vastaanottajat ja riippuu niistä Mahdollinen ratkaisu: vastaanottajat informoivat (dynaamisesti) reititintä millaisia viestejä haluavat (Dynamic Router) 23 Hallinta ja monitorointi Viesti Kanava Reititys Muunnos Hallinta ja monitorointi 24 12

Älykäs Edustaja (Smart Proxy) 1 Pyyntö Vastaus1 Älykäs Edustaja Pyyntö Palvelun tarjoaja 2 Vastaus2 Vastaus Sovellukset lähettävät palvelupyyntöjä Smart Proxy toimii palvelun pyytäjien ja tarjoajan välissä SP pitää kirjaa pyytäjistä ja ohjaa vastauksen oikealle sovellukselle (Correlation Identifier antaa tunnisteen pyynnölle) SP voi kerätä metatietoa viesteistä (esim. käsittelyaika) ja lähettää sen valvontayksikölle Kontrolli Metatieto 25 Kysyttävää? 13