integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbais/sl/tis6.pdf · s k la...
TRANSCRIPT
![Page 1: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/1.jpg)
Integrácia aplikácií
Pavol Mederly
Centrum informačných technológií UK
Fakulta informatiky a informačných technológií STU
![Page 2: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/2.jpg)
Obsah
1. Úvod
2. Prístupy k integrácii aplikácií
3. Príklad: integrácia na UK
![Page 3: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/3.jpg)
Úvod
• v typickej organizácii je množstvo aplikácií
• je potrebné, aby spolupracovali
– napr. keď treba automatizovať biznis procesy, ktoré
sú podporované viacerými aplikáciami
– alebo keď chceme získať ucelený pohľad na údaje
spravované viacerými aplikáciami (napr. údaje o
zákazníkovi)
![Page 4: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/4.jpg)
Príklad
Obchodná spoločnosť
Proces: spracovanie objednávky
• prijatie objednávky (zákaznícky portál)
• overenie stavu zákazníka (CRM)
• overenie kreditu zákazníka (ERP)
• zistenie stavu skladu (skladový systém)
• príprava tovaru (ľudská úloha)
• doručenie (externý partner)
• fakturácia (ERP)
• zobrazenie stavu procesu (zákaznícky portál, mail)
CRM = Customer Relationship Management System
ERP = Enterprise Resource Planning System
![Page 5: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/5.jpg)
Otázka 1
Prečo je tam toľko systémov?
• je ťažké (nemožné) vytvoriť systém, ktorý by
pokryl všetky potreby organizácie
– relatívne najbližšie k tomuto cieľu sú systémy typu
ERP (napr. SAP R/3), ale ani tie nepokrývajú všetko
• „best of breed“ má svoje výhody
• často chýba koordinácia medzi oddeleniami
![Page 6: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/6.jpg)
Otázka 2
Prečo tie systémy nespolupracujú?
• lebo sú vyvíjané nezávisle na sebe
• technologické otázky
• konceptuálne otázky: typicky rôzne dátové modely
– od triviálnych rozdielov ako „Meno“ – „KrstneMeno“
– cez problémy typu „kto udržiava databázu klientov?“
– až po ťažko riešiteľné problémy so sémantikou, napr.:
čo označuje údaj „Adresa“?
„Od chvíle, keď bol spustený druhý počítačový program,
používatelia nevedia pochopiť,
prečo sa automaticky plne neprepojil s prvým.“
-- P. Cadarette, K. M. Durward
![Page 7: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/7.jpg)
Prečo ... ? (2)
• pri COTS sú rozdiely pochopiteľné
• pri vývoji na zákazku už trochu menej
• konkrétne:
– času/zdrojov je málo → sústreďujeme sa na
dosiahnutie primárneho cieľa (požadovaná funkčnosť)
– Conwayov zákon: „Organizácie produkujú systémy,
ktorých dizajn kopíruje komunikačnú štruktúru týchto
organizácií.“
• t.j. ak oddelenia vo firme nekomunikujú (nespolupracujú),
nebudú spolupracovať ani systémy, ktoré vytvorili / nasadili
– spájanie firiem, akvizície
![Page 8: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/8.jpg)
Otázka 3
Čo s tým?
Integrácia aplikácií
![Page 9: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/9.jpg)
CRM
Data
ERP
Data
Inv. Mgmt
Data
Delivery
Data
![Page 10: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/10.jpg)
![Page 11: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/11.jpg)
Vieme to spraviť lepšie?
![Page 12: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/12.jpg)
Integrácia – čo to teda je?
• Integrácia aplikácií je proces spájania aplikácií
tak, aby boli schopné spolupracovať na
poskytovaní definovanej funkčnosti.
• To, čo za týmto účelom vytvárame, nazývame
integračným riešením.
• Sú to
– úpravy aplikácií (ak sú vôbec možné a vhodné!)
– komponenty slúžiace na komunikáciu aplikácií /
komunikáciu s aplikáciami
![Page 13: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/13.jpg)
Preukazy Prístupový systém
Univ.
terminály
EMcard
CKM
Kurzy
VoIP
FIS
Helpdesk Knižnica
eLearning Dochádzka
Granty
Stravovanie
RozvrhŠtudent
Ubytovanie
PaM
Integračné riešenie
![Page 14: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/14.jpg)
Čo je najdôležitejšie na
integračnom riešení?
VOĽNÁ VÄZBA
(loose coupling)
• v čase behu (run-time)
• v čase vývoja (design-time)
![Page 15: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/15.jpg)
Voľná väzba v čase behu
• Integračné riešenie nevyžaduje, aby prepojené
systémy boli funkčné v tom istom čase
Preukazy Prístupový systém
Univ.
terminály
EMcard
CKM
Kurzy
VoIP
FIS
Helpdesk Knižnica
eLearning Dochádzka
Granty
Stravovanie
RozvrhŠtudent
Ubytovanie
PaM
![Page 16: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/16.jpg)
Voľná väzba v čase návrhu
• Integračné riešenie umožňuje, aby sa prepojené
systémy mohli vyvíjať nezávisle od seba
Preukazy Prístupový systém
Univ.
terminály
EMcard
CKM
Kurzy
VoIP
FIS
Helpdesk Knižnica
eLearning Dochádzka
Granty
Stravovanie
RozvrhŠtudent
Ubytovanie
PaM
![Page 17: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/17.jpg)
Voľná väzba v čase návrhu
• Integračné riešenie umožňuje, aby sa prepojené
systémy mohli vyvíjať nezávisle od seba
Preukazy Prístupový systém
Univ.
terminály
EMcard
CKM
Kurzy
VoIP
FIS
Helpdesk Knižnica
eLearning Dochádzka V2
Granty
Stravovanie
RozvrhŠtudent
Ubytovanie
PaM
![Page 18: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/18.jpg)
Tri dimenzie klasifikácie
• Poskytovaná funkčnosť
• Spôsob komunikácie s aplikáciami
• Vnútorná komunikácia v rámci int. riešenia
![Page 19: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/19.jpg)
Klasifikácia 1
Typ poskytovanej funkčnosti
• Integrácia prostredníctvom portálu (Portal
Integration)
• Agregácia dátových entít (Entity Aggregation)
• Integrácia procesov (Process Integration)
![Page 20: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/20.jpg)
Integrácia prostredníctvom portálu
• poskytuje používateľom vizuálne konzistentný
pohľad na viacero systémov naraz
• príklad:
– v jednej časti obrazovky vidím objednávku
– v druhej údaje o zákazníkovi (z CRM)
– v tretej údaje o jeho finančných transakciách (ERP)
– vo štvrtej údaje o skladových zásobách (inventory)
• v niektorých prípadoch viem údaje aj
aktualizovať
• integračné riešenie „samo od seba“ v
aplikáciách nevykonáva žiadne aktivity!
![Page 21: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/21.jpg)
Databáza
objednávok
ERP
CRM
Sklad
Portál
![Page 22: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/22.jpg)
Agregácia dátových entít
• poskytuje (ďalším, novým) aplikáciám
konsolidovaný pohľad na údaje spracovávané
jednotlivými systémami
• príklad: virtuálna entita „Objednávka“
– atribúty týkajúce sa objednávky ako takej
– atribúty týkajúce sa zákazníka
– atribúty týkajúce sa produktov a skladu
– (čo ak mám napr. viac systémov s údajmi o
zákazníkovi?)
• int. riešenie „samo“ nevykonáva žiadne aktivity
• tiež „Enterprise Information Integration“ (EII)
![Page 23: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/23.jpg)
Databáza
objednávok
ERP
CRM
Sklad
Agregátor
dátových entít
Systém
dodávateľa
Aplikácia pre
vedenie firmy
Pokročilý
zákaznícky
portál
![Page 24: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/24.jpg)
Integrácia procesov
• vykonáva interakcie medzi systémami s cieľom
realizácie určených požiadaviek
– typicky ide o realizáciu definovaných biznis procesov
• príklad:
– už spomenutá automatizácia spracovania objednávky
• toto je význam snáď najbližší pojmu „Enterprise
Application Integration“ (EAI)
![Page 25: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/25.jpg)
Databáza
objednávok
ERP
CRM SkladManažér
procesov
![Page 26: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/26.jpg)
Preukazy Prístupový systém
Univ.
terminály
EMcard
CKM
Kurzy
VoIP
FIS
Helpdesk Knižnica
eLearning Dochádzka
Granty
Stravovanie
RozvrhŠtudent
Ubytovanie
PaM
Integračné riešenie
Klasifikácia 2
Ako komunikovať s aplikáciami?
![Page 27: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/27.jpg)
Klasifikácia 2
Ako komunikovať s aplikáciami?
• Ideálne je pracovať na úrovni
aplikačnej logiky
– napr. „vráť zoznam zamestnancov“
– sem môžeme zaradiť aj „import/export“
• Výhody:
– jednoduchosť: pracujeme s pojmami AL
– zapuzdrenie: nie sme závislí napr. na
štruktúre databázy (dôležité pre vývoj!)
– robustnosť: aplikuje sa validácia vstupu,
kontrola prístupových práv, ...
– známy programátorský model t.j. volanie
funkcie
Používateľské
rozhranie
Aplikačná
logika
Perzistentné
údaje
(databáza)
![Page 28: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/28.jpg)
Klasifikácia 2
Ako komunikovať s aplikáciami?
• Nevýhody / možné problémy:
– nie každá aplikácia poskytuje API
– nie vždy je API dostatočné a správne
fungujúce
– ak voláme API priamo z inej aplikácie,
vzniká tesná väzba
– API spravidla nie sú stavané na
hromadný prenos údajov
– API sú niekedy (zbytočne?) zložité –
napr. dátové štruktúry alebo interakčné
protokoly:
• Call BAPI_EMPLOYEE_ENQUEUE
• Call BAPI_EMPLCOMM_CREATE
• Call BAPI_EMPLOYEE_ENQUEUE
Používateľské
rozhranie
Aplikačná
logika
Perzistentné
údaje
(databáza)
![Page 29: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/29.jpg)
Klasifikácia 2
Ako komunikovať s aplikáciami?
• Niekedy treba pristupovať priamo k
databáze
– napr. čítaj tabuľky LFA1, LFBK, KNA1,
KNBK
• Výhody:
– prístup k všetkým údajom aplikácie
– efektívnosť: vieme preniesť veľa dát
naraz
– dostupnosť nástrojov: drivery, ETL, ...
Používateľské
rozhranie
Aplikačná
logika
Perzistentné
údaje
(databáza)
![Page 30: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/30.jpg)
Klasifikácia 2
Ako komunikovať s aplikáciami?
• Nevýhody / možné problémy:
– nepublikované a zložité DB schémy
(problém s pochopením a s prechodom
na vyššiu verziu aplikácie!)
– práca na nízkej úrovni abstrakcie
– chýba validácia vstupov a kontrola
oprávnení (možný spor s pravidlami pre
prístup k údajom)
– možná kolízia s činnosťou aplikácie
(kešovanie, zamykanie, ...)
– niekedy nie je možné (ASP/SaaS)
– ak pristupujeme priamo z inej aplikácie,
vzniká tesná väzba
Používateľské
rozhranie
Aplikačná
logika
Perzistentné
údaje
(databáza)
![Page 31: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/31.jpg)
Klasifikácia 2
Ako komunikovať s aplikáciami?
• Poslednou možnosťou je pristupovať
k používateľskému rozhraniu
aplikácie („screen scraping“)
– simuláciou terminálu / stláčaní klávesov
a klikaní myšou / cez HTTP session / ...
• Výhody:
– nízke riziko poškodenia údajov
(zapojená je validácia i bezpečnosť)
– použiteľné pre väčšinu aplikácií
Používateľské
rozhranie
Aplikačná
logika
Perzistentné
údaje
(databáza)
![Page 32: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/32.jpg)
Klasifikácia 2
Ako komunikovať s aplikáciami?
• Nevýhody / možné problémy:
– extrémna krehkosť: aj malá zmena UI
(alebo neočakávaná situácia) spôsobí
problémy s fungovaním integračného
rozhrania
– komplikovaný prístup k údajom – napr.
nutnosť transformácie z prezentačnej
formy na „čisté údaje“
– obmedzený prístup k údajom:
dostaneme len to, čo vidí používateľ
– nízka efektívnosť
Používateľské
rozhranie
Aplikačná
logika
Perzistentné
údaje
(databáza)
![Page 33: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/33.jpg)
Preukazy Prístupový systém
Univ.
terminály
EMcard
CKM
Kurzy
VoIP
FIS
Helpdesk Knižnica
eLearning Dochádzka
Granty
Stravovanie
RozvrhŠtudent
Ubytovanie
PaM
Klasifikácia 3
Ako komunikovať vnútri int. riešenia?
![Page 34: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/34.jpg)
Klasifikácia 3 Ako komunikovať vnútri int. riešenia?
• Synchrónne
• Asynchrónne, s využitím sprostredkovateľa
– dátovody a filtre
– manažér procesov
![Page 35: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/35.jpg)
Synchrónna komunikácia
Objednávkový
systémCRM
ERP
(vloženie objednávky)
overenie stavu
zákazníka
overenie
kreditu
zákazníka
hneď poznám výsledok
pevná väzba v čase behu
(niekedy) pevná väzba v čase návrhu
HTTP, SOAP,
RPC, RMI,
CORBA, ...
![Page 36: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/36.jpg)
Synchrónna komunikácia (2)
• synchrónny prístup sa niekedy používa pri
budovaní SOA (architektúry orientovanej na
služby)
• isté funkcie sú on-line prístupné pre aplikácie
– napr. informácie o zákazníkoch
– na UK napr. overenie „Level 0“ hesla, zistenie
informácií o držiteľovi preukazu, ...
• tu je však extrémne dôležité definovať SLA pre
tieto služby a dôsledne ho (ju) dodržiavať
![Page 37: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/37.jpg)
Asynchrónna komunikácia
• aplikácie komunikujú posielaním správ
• pri komunikácii sa využíva sprostredkovateľ – broker
• broker obsahuje komunikačné kanály, prostredníctvom
ktorých aplikácie komunikujú
![Page 38: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/38.jpg)
Asynchrónna komunikácia (2)
• Výhody:
– voľná väzba v čase behu: komunikujúce systémy
nemusia byť on-line v tom istom čase: jediný
komponent, ktorý musí neustále bežať, je broker
– (niekedy) voľná väzba v čase návrhu: do int. riešenia
je možné zapojiť rôzne mediačné komponenty, ktoré
zaistia transformáciu a smerovanie správ, a tak
uľahčia nezávislý vývoj komunikujúcich aplikácií
• Nevýhody:
– zložitejšie programovanie
– nevhodné, ak potrebujem poznať výsledok operácie
hneď (i keď broker umožňuje aj synchrónnu kom.)
![Page 39: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/39.jpg)
Dátovody a filtre (decentralizované riadenie)
• dátovody sú realizované kanálmi (v brokeri alebo v pamäti)
– prenášajú správy, nemenia ich
• filtre so správami pracujú – správy transformujú, smerujú, ...
• vlastnosti dátovodov a filtrov sú často nastaviteľné
správcom (typ kanálu, perzistentnosť, počet
vlákien/procesov, transakčnosť spracovania, ...)
Prichádzajúca
objednávka
Dešifrovanie AutorizáciaOdstránenie
duplicít
„Čistá“
objednávka
dátovod dátovoddátovod dátovod
![Page 40: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/40.jpg)
Správca procesov (centralizované riadenie)
• jeden z filtrov plní úlohu
správcu procesov
• tento uchováva informácie o
stave spracovania, koordinuje
prácu ostatných filtrov
• jednoduchšie programovanie
a administrácia
• nižšia efektívnosť, vyššia cena
(licencie, podpora)
Prichádzajúca
objednávka
DešifrovanieAutorizácia
Detekcia
duplicít
„Čistá“
objednávka
dátovody
dátovod
![Page 41: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/41.jpg)
Integrácia na UK
• 2003: vydané preukazy študenta a zamestnanca
• leto 2004: čo s dopravou?
• aj ďalšie aplikácie:
– tlač preukazov
– prístupový systém
• zdrojové systémy:
– Študent (13 inštancií)
– personalistika (19 inštancií)
– technológia DBF, nie všetky
inštancie on-line
![Page 42: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/42.jpg)
Centrálna databáza osôb
Systém
ŠTUDENT
Personalistika
a mzdy
Centrálna
databáza
osôb
Cieľové
systémy:
• terminály
• EM CARD
• CKM
• IT
• ubytovanie
• Moodle
• ...
2004: maily a diskety
![Page 43: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/43.jpg)
Centrálna databáza osôb
Systém
ŠTUDENT
Personalistika
a mzdy
Centrálna
databáza
osôb
Cieľové
systémy:
• terminály
• EM CARD
• CKM
• IT
• ubytovanie
• Moodle
• ...
2005: ŠTUDENT – automatický prenos
(Sun Java System MQ)
![Page 44: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/44.jpg)
Centrálna databáza osôb
Systém
ŠTUDENT
Personalistika
a mzdy
Centrálna
databáza
osôb
Cieľové
systémy:
• terminály
• EM CARD
• CKM
• IT
• ubytovanie
• Moodle
• ...
2007: ESB (Progress Sonic ESB)
• asynchrónny prenos údajov (message queuing)
• transformácie údajov podľa potreby
AIS
SAP HR
![Page 45: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/45.jpg)
Prenos údajov dnes
• prenos všetkých údajov (asynchrónny)
– typicky každú noc (niekde raz za týždeň)
– trvá pomerne dlho (desiatky sekúnd až desiatky minút)
– zaručenie prenesenia všetkých údajov
• prenos zmien (asynchrónny)
– okamžite po vykonaní zmeny
– trvá veľmi krátko
– v prípade neočakávanej chyby sa niektoré údaje môžu
stratiť
• prístup k údajom na požiadanie (synchrónny)
– používa sa zriedkavo
![Page 46: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/46.jpg)
(Niektoré) ťažkosti
• Konceptuálne hľadisko:
– rôzny pohľad na fungovanie sveta
• nutná (?) byrokracia v personálnych otázkach
• zložité procesy týkajúce sa preukazov
– kvalita údajov
• Technické hľadisko:
– zložité dátové transformácie
– asynchrónnosť spracovania, dátovody a filtre
– spracovanie výnimočných situácií
– zmeny v aplikáciách, dostupnosť aplikácií
![Page 47: Integrácia aplikácií - dai.fmph.uniba.skdai.fmph.uniba.sk/courses/tvorbaIS/sl/tis6.pdf · S k la d 3 R U Wi O. Agregácia dátových entít •poskytuje (ďalším, novým) aplikáciám](https://reader030.vdocuments.site/reader030/viewer/2022040701/5d575cea88c993461c8b60cd/html5/thumbnails/47.jpg)
Záver
• integrácia aplikácií: náročná a veľmi zaujímavá
• kľúčové slovo: voľná väzba
• existujú kvalitné nástroje, avšak stále je tu
množstvo práce vývojárov
• literatúra na ďalšie štúdium
– Hohpe & Woolf: Enterprise Integration Patterns,
Pearson Education, 2004
– Trowbridge et al.: Integration Patterns, Microsoft
Corporation, 2004.
– resp. http://www.eaipatterns.com/books1.html