1. ORACLE SERVICE BUS
Studija slučaja Splitske banke
Igor Štefičić, voditelj projekata
Tomislav Lovrić, tehnički konzultant
TIS Objektni informacijski sustavi d.o.o.
2. TIS Objektni informacijski sustavi d.o.o.
TIS Grupa d.o.o.
• privatna tvrtka osnovana 1989. u Zagrebu
• danas objedinjuje pet tvrtki sa sjedištima u Zagrebu te tvrtke
u Osijeku i Mariboru
• blizu 200 zaposlenih
• primarne djelatnosti:
• pružanje savjetodavnih (konzultantskih) usluga
• razvoj i projektiranje
• implementacija i održavanje rješenja u području bankarstva,
maloprodaje, proizvodnje, transporta, javne uprave,
telekomunikacijskih usluga, izdavaštva i marketinga
3. TIS Objektni informacijski sustavi d.o.o.
TIS Objektni informacijski sustavi
• tvrtka specijalizirana za izradu i implementaciju bankarskih i
poslovnih rješenja uz integraciju s postojećim (legacy)
sustavima
• poslujemo prema standardima kvalitete ISO 9001:2000
• pružamo usluge savjetovanja (konzalting) prilikom
projektiranja informacijskih sustava i sistemskog softvera
• uz bankarski sektor poslovna ponuda je usmjerena i na
rješenja u području financija, javne uprave, transporta,
maloprodaje i dr.
6. Sadržaj
• Uvod
• Zahtjevi i odabir rješenja
• Rješenje
• Izazovi u fazi razvoja i testiranja
• Što dalje
• Zaključak
• Pitanja
7. Uvod
• 2006. Splitska banka postaje članica Société Générale
grupe
• radi potrebe standardizacije uvode se nova IT rješenja
meñu kojima i integralni bankarski sustav Delta-Bank
Delta-
• u tijeku je veliki projekt migracije na novi sustav
• napušta se postojeće middleware rješenje te je u sklopu
projekta migracije bilo potrebno razviti novo rješenje koje
će povezati postojeće i nove aplikacije sa Delta-Bank
Delta-
i Global Pay Plus platnim modulima
8. Zahtjevi i odabir rješenja
Zahtjevi na novo rješenje:
• stabilnost, sigurnost i fleksibilnost
• pouzdanost pri prijenosu i isporuci poruka i datoteka
• brzina obrade
• komunikacija korištenjem različitih komunikacijskih
protokola
• procesiranje i transformacija različitih tipova poruka i
datoteka
• logiranje uspješnih i neuspješnih dogañaja
• administracija i monitoriranje sustava
9. Zahtjevi i odabir rješenja
• nakon analize nekih od mogućih rješenja i izrade “proof
of concept” primjera, Oracle Service Bus izabran je kao
optimalna tehnologija za izradu programskog rješenja
10. Zahtjevi i odabir rješenja
• Oracle Service Bus je bivši BEA-in proizvod poznat kao
BEA-
AquaLogic Service Bus
• sastavni dio Oracle SOA Suite i Event Driven Architecture
paketa, a može se koristiti i kao zaseban proizvod
• dokazana SOA integracijska platforma dizajnirana za
integraciju, virtualizaciju i upravljanje servisima
11. Zahtjevi i odabir rješenja
• Osnovne značajke OSB-a su:
OSB-
• povezivanje korištenjem mnoštva
komunikacijskih adaptera i protokola
• napredne mogućnosti prijenosa
i usmjeravanja
• transformacija poruka
• virtualizacija servisa
• skalabilnost
• paralelno procesiranje i caching
• obrada pogrešaka i logiranje
• policy management
• monitoring
12. Rješenje
• File Transformation Tool (FTT)
• aplikacija razvijena u suradnji TIS-a i Splitske banke
TIS-
• aplikacija za prijenos i usmjeravanje datoteka i poruka
izmeñu različitih bankovnih sistema
• razvijena u Oracle WebLogic Workshop-u i temeljena na
Workshop-
Oracle Service Bus tehnologiji
• osim prijenosa, aplikacija izvodi i transformaciju datoteka
i poruka, te logiranje uspješnih i neuspješnih dogañaja
13. Rješenje
Aplikacijske komponente:
• Transformacijski programi
• Pomoćni sistemi (MQ server, Oracle baza podataka)
• Web servis za obradu pogrešaka
• Alerting (mail)
• Korisnička web aplikacija (PHP) za pregled poruka,
upravljanje slanjem poruka na MQ Server i administraciju
korisnika
14. Rješenje
Arhitektura rješenja
Klijent aplikacija
DELTA-BANK
VANJSKI SISTEMI
AIX Server
FTT
AIX, Windows, UNIX
GPP
UNIX
Oracle
database
AIX Server
15. Rješenje
Tok obrade:
• Zaprimanje datoteka/poruka (osluškivanjem ulaznog
direktorija ili MQ-a)
MQ-
• Provjera na ponovljivost
• Validacija ulaznog formata
• Kontrola sadržaja
• Transformacija datoteke/poruke
• Formiranje izlazne datoteke/poruke
• Dostava datoteke/poruke na predviñenu lokaciju
(MQ ili izlazni direktorij)
• Zapis u bazu
• Arhiviranje ulazne datoteke/poruke
• Logiranje rezultata
16. Rješenje
Obrada grešaka
• Vrlo bitan aspekt aplikacije
• Zbog prirode aplikacije važno je da se sve greške zabilježe
• Uz korištenje postojećih OSB funkcionalnosti za logiranje i
izvještavanje, izrañen je vlastiti servis koji bilježi dogañaje u
sustavu
• Vlastito rješenje omogućava fleksibilniji način praćenja
grešaka s obzirom na formu i organizaciju sadržaja loga
• Obavijest mailom prilikom svake ustanovljene greške
• Premještanje poruke/datoteke u predviñeni direktorij
17. Rješenje
Monitoring
• Odvija se korištenjem OSB konzole
• Dobro strukturirani prikaz s korištenjem grafičkih komponenti
omogućava brzo i jednostavno uočavanje problema
• Postoje 4 razine na kojima se prati sustav:
◦ SLA Alerts (Service level agreement)
◦ Pipeline Alerts - upozorenja o tokovima transformacija
◦ Service Health - praćenje servisa
◦ Server Health - praćenje servera
20. Izazovi u fazi razvoja i testiranja
• razvoj rješenja tekao je paralelno sa razvojem sustava
koje je FTT aplikacijom trebalo povezati:
• promjene formata i pravila mapiranja tijekom i nakon
završetka razvoja
• nepostojanje unaprijed kreiranih MQ kanala i
queue-
queue-ova
• nepostojanje testnih datoteka u konačnom formatu za
dio transformacijskih programa
• nepotpuna dokumentiranost nekih od postojećih sustava
21. Što dalje
• FTT se proširuje sa dva nova transformacijska rješenja
koja povezuju novu aplikaciju za internet bankarstvo sa
platnim sistemima
• U fazi je izrada aplikacije za automatski izračun
prekoračenja koja se razvija dijelom na OSB-u, a dijelom
OSB-
u Oracle PL/SQL-u
PL/SQL-
• U planu je razvoj još jedne nove OSB aplikacije koja će
putem maila i SFTP-a komunicirati direktno sa klijentima
SFTP-
22. Zaključak
• U slučaju izrade middleware rješenja za Splitsku banku
pokazalo se da se Oracle Service Bus može uspješno
koristiti kao zaseban proizvod u izradi stand alone
aplikacija koje su pouzdane i jednostavno nadogradive
• Pokazao se vrlo uspješan u zadacima transformacije,
prijenosa i usmjeravanja poruka
• Njegovi brojni adapteri i komunikacijski protokoli
olakšavaju integraciju rješenja baziranih na različitim
platformama i programskim jezicima