ABSTRAKS
ESB merupakan salah satu pilar SOA, pilar lainnya adalah WS dan BPEL. ESB merupakan infrastruktur untuk
koneksi layanan SOA dan pertukaran pesan. Fungsionalitas utama ESB adalah melakukan rute, transformasi
protokol serta transformasi pesan atau data. Dengan adanya fungsi transformasi protokol dan pesan pada ESB
ini maka ketidaksesuaian protokol dan data dapat diatasi. ESB juga memudahkan koneksi dan mediasi,
menyederhanakan integrasi serta memudahkan penggunaan ulang komponen-komponen layanan, sehingga
skalabilitas integrasi menjadi tinggi. Pada penelitian ini telah berhasil dilakukan integrasi beberapa web
services yang berasal dari eBay, Yahoo, Amazon dan Paypal dengan menggunakan ESB sebagai middleware
integrasi. Melalui integrasi web services ini telah dapat diketahui pula peran ESB dalam melakukan routing,
dan transformasi pesan dan protocol.
85
Seminar Nasional Teknologi Informasi dan Komunikasi 2012 (SENTIKA 2012) ISSN: 2089-9815
Yogyakarta, 10 Maret 2012
86
Seminaar Nasional Teknoologi Informasi dan
d Komunikasi 2012
2 (SENTIKA 2012)
2 ISSN
N: 2089-9815
Yogyakkarta, 10 Maret 2012
2
Layanan sendiri mem mbentuk arssitektur aplikkasi, konnkrit yang diddasarkan pada WS.
sementaraa itu arsitekttur informasi dicapai melaalui Framework WS ini m merupakan framework
fr
standardisasi data daan ketersediaaan data melaalui tek
knologi yang didasarkan secara standaard, yang
antarmukka layanan (Voos-Matthee, 2011) dip
petakan ke dallam model SO OA sebagai berikut:
SOA merupakan arrsitektur peranngkat lunak yangy a. Layanan-layanan direalisaasikan sebagaii WS
dibangunn menggunakaan prinsip-prinnsip perancanngan b. Pesan dideskkripsikan oleh protokol SOA AP
berorientaasi layanan (Erl, 2005; Sterff, 20006; c. Deskripsi dittetapkan oleh WSDL
Kanchanaavipu, 2008; Nikayin, 20009; Reddy ett al, d. Pada model ini, i pendaftaraan layanan
2009; Li et al, 2010),, sedangkan orientasi
o layaanan menggunakaan UDDI
merupakaan konsep dallam rekayasa perangkat luunak Hal ini padda dasarnya ssesuai dengan n korelasi
yang merrepresentasikaan pendekatann berbeda unntuk ditu
unjukkan paada Gambar 2. Pengertiaan umum
memisahkkan kepentinggan. ntang SOA ini digunakaan di banyak
ten k artikel.
Hal ini berarti bahwa
b fungssionalitas sisttem Naamun definisi SOA ini haanya berurusaan dengan
dipecah kek dalam uniit lojik yang lebih kecil yangy asp
pek teknologi SOA. Hal inni sangat berk kaitan erat
dinamakaan layanan. Layanan-layan
L nan ini lepas satu
s denngan solusi beerbasis WS daan kebutuhann nya, tetapi
sama laiin, tetapi meempunyai kem mampuan unntuk konnsep ini dapaat diabstraksikkan untuk meembangun
berinterakksi satu sam ma lain mellalui mekanissme fon
ndasi SOA seccara umum.
komunikaasi tertentu. Karena ittu, Erl (20005) SOA adalahh sebuah benttuk teknologi arsitektur
mendefinnisikan kompponen SOA sebagais layannan, yanng mengikuti prinsip-prinssip berorientassi layanan
deskripsi, dan pesaan. Layanan berkomunikkasi (Errl, 2005). Konsep berorientasi-layaanan ini
dengan yang lainn melalui pesan y
yang meelakukan pendekatan denggan membagii masalah
memungkkinkan interaaksi antar layanan-layannan, bessar menjadi sekumpulan layanan keecil yang
yang diitetapkan oleeh deskripsi.. Dua layaanan berrtujuan untuuk menyeleesaikan perm masalahan
berkomunnikasi satu saama lain yanng diacu sebaagai terttentu. Setelahh seluruh permmasalahan dap pat dibagi
peminta layanan dann penyedia laayanan. Pemiinta dallam beberapaa layanan, sollusi dari perm masalahan
layanan adalah layannan yang mem manggil layaanan tersebut haruus bisa diselesaikan dengan
lain, seddangkan yangg dipanggil disebut
d penyeedia meemungkinkan seluruh layannan berpartisip pasi dalam
layanan. buah orkestrrasi. Untuk itu ada beberapa
seb
Selainn definisi SOA
S oleh Erl,
E masih ada perrmasalahan yangy harus ddimiliki olehh layanan,
beberapa definisi SOA A yang mirip dari
d sumber laain. yaiitu bagaimanaa layanan beerhubungan, bagaimana
b
Kadang kala
k definisi SOA ini dinnamakan sebaagai lay
yanan berkoomunikasi, bagaimana layanan
frameworrk WS, yangg secara umuum dapat diliihat desain, dan bagaimana pesan antarr layanan
did
pada Gam mbar 2. did
definisikan Erll (2005).
Seperti yanng telah diinyatakan paada latar
bellakang masallah, bahwa kkonsep SOA Delivery
meenurut Erl (22005) ini belum memad dai untuk
meelakukan inteegrasi berbassis SOA. Karena K itu
pennelitian ini tidak
t hanya m mengacu pad da konsep
SOOA Delivery saja,
s melainkaan akan meng gacu pada
konnsep lain yanng telah memaanfaatkan ESB sebagai
midddleware integrasi.
i Juuric (2006)) sudah
meemanfaatkan ESB sebagaai arsitektur integrasi
Gambar 2. Service Oriiented Architeecture (Erl, 20005; berrbasis SOA.
Luuthria et al, 2009; Andary-S
Sage, 2010)
4. ENTERPR RISE SERVIC CE BUS (ESB B)
Layannan menyeddiakan layannan ke pubblik, ESB meerupakan infrastruktur untuk
berperan sebagai penyedia layanan yaang meengintegrasikaan aplikasi dan layanaan. ESB
menyediaakan deskripssi layanan nyaa ke pendaftaaran meemperkuat SO OA melalui pengurangan n jumlah,
layanan. Peminta layyanan, memiinta pengirim man ukuuran, dan kommpleksitas anttarmuka antarra aplikasi
layanan dari penyeedia layanann menggunakkan dann layanan-laayanan. ESB B digunakaan untuk
pendaftarran layanan inni. Dua layanaan ini diikat satu
s meelakukan koneeksi komponenn perangkat lu unak yang
sama lainn, untuk pertuukaran data daan menggunakkan suddah ada dan yang
y baru unttuk membangu un sebuah
fungsionaalitas lain. Inni sesuai denngan definisi Erl SO
OA. ESB dipeerlukan untuk melakukan koneksik ke
yang dipperluas dengaan pendaftarann layanan. Pada bebberapa sumbeerdaya TI. ESB B harus fleksiibel untuk
pendaftarran layanan inni, layanan dapat
d didaftarkkan meenggabungkann dan memassang ulang komponen k
dengan deskripsi
d layannan nya, sehinngga layanan ini sessuai dengan perubahan kkebutuhan bissnis. ESB
dapat dittemukan oleh peminta layaanan. Dalam hal meelakukan koneeksi komponeen yang terikaat longgar,
ini Erl memperluas
m definisinya tenntang SOA yang seh
hingga meenyediakan kemampuan n untuk
masih sangat
s menddasar dengann menggunakkan meengintegrasikaan sistem ke dalam SOA dan men-
frameworrk WS, yang merupakan
m deefinisi SOA yang depploy secara bertahap
b (Juric, 2007; And dary-Sage,
87
Seminar Nasional Teknologi Informasi dan Komunikasi 2012 (SENTIKA 2012) ISSN: 2089-9815
Yogyakarta, 10 Maret 2012
2010).
Pendekatan services bus untuk integrasi adalah ESB menyediakan infrastruktur komunikasi antar
menggunakan teknologi yang menyediakan bus layanan yang kuat, dapat diandalkan, aman dan
untuk integrasi aplikasi. Aplikasi-aplikasi yang dapat diperluas. ESB juga menyediakan kendali
berbeda tidak berkomunikasi satu sama lain secara komunikasi dan kendali atas penggunaan layanan-
langsung melainkan berkomunikasi melalui layanan yang mencakup (Juric, 2007):
backbone middleware SOA. Fitur arsitektur ESB a. Kemampuan menangkap pesan, yang
yang paling membedakan adalah sifat terdistribusi memungkinkan untuk menangkap pesan request
dari topologi integrasi. ESB merupakan sekumpulan untuk layanan-layanan dan pesan response dari
middleware layanan-layanan yang menyediakan layanan, serta memberikan pemrosesan
kemampuan integrasi. Middleware layanan-layanan tambahan. Dengan cara ini, ESB dapat bertindak
ini merupakan jantung arsitektur ESB yang sebagai intermediary.
menempatkan pesan untuk dapat diroutekan dan b. Kemampuan routing, yang memungkinkan ESB
ditransformasikan (Juric, 2007; Andary-Sage, 2010). melakukan routing pesan ke layanan-layanan
Arsitektur umum dari ESB dengan komponen yang berbeda didasarkan pada isi (content), asal,
yang terkoneksi dapat dilihat pada Gambar 3. atau atribut lain.
Komponen dapat mengambil peran penghasil c. Kemampuan transformasi, yang memungkinkan
layanan atau pemakai layanan. Layanan-layanan transformasi pesan sebelum dikirimkan ke
dapat berupa komponen spesial seperti mesin layanan-layanan. Untuk pesan format XML,
orkestrasi, adapter untuk sumberdaya data atau transformasi semacam ini dilakukan
adapter untuk sistem eksternal dengan transformasi menggunakan XSLT (Extensible Stylesheet
pesan atau konversi transport protokol. ESB Language for Transformations) atau mesin
melakukan mediasi pesan antar komponen, XQuery.
memutuskan lokasi untuk rute pesan, dan d. Kendali atas deployment, penggunaan dan
transformasi pesan. ESB memerlukan memori pemeliharaan layanan-layanan. Hal ini
persisten seperti terkoneksi dengan basisdata (Juric, memungkinkan adanya logging, profiling, load
2007; Andary-Sage, 2010). balancing, performance tuning, ongkos
Menurut Juric (2007) dan Andary-Sage (2010), penggunaan layanan-layanan, distributed
satu pendekatan dalam mendefinisikan arsitektur deployment, on-the-fly reconfiguration, dsb.
umum ESB adalah spesifikasi Java Business
Integration. JBI merupakan standard untuk ESB, Fitur manajemen lain yang mencakup definisi
sedangkan ESB sendiri merupakan sebuah pola korelasi antar pesan, definisi path komunikasi yang
arsitektural untuk SOA. Spesifikasi JBI handal, definisi security constraints yang berkaitan
mendeskripsikan arsitektur pluggable bagi kontainer dengan pesan dan layanan-layanan, dsb.
untuk penyedia layanan dan pemakai komponen.
Layanan melakukan koneksi melalui Binding 5. HASIL PENELITIAN & PEMBAHASAN
Component (BC) atau dapat di-host kedalam 5.1 Diagram Use Case
kontainer sebagai bagian dari Service Engine (SE). Diagram Use Case ini menggambarkan
Layanan-layanan dideskripsikan menggunakan kebutuhan sistem. Diagram Use Case digunakan
WSDL. Pesan selalu diterjemahkan ke dalam format untuk mendeskripsikan yang akan dikerjakan sistem,
pesan umum dan dirutekan oleh Normalized mendeskripsikan kebutuhan fungsional sistem, serta
Message Router (NMR). mendeskripsikan fungsionalitas sistem yang
diinginkan dan lingkungannya. Spesifikasi
pelengkap merupakan kebutuhan yang belum
dipetakan pada spesifikasi Use Case yang berisi
kebutuhan non fungsional, seperti pemeliharaan
kode, kehandalan, kinerja dan dukungan atau
kendala sistem, serta keamanan. Gambar 4
menunjukkan kebutuhan system dari aplikasi eShop.
88
Seminar Nasional Teknologi Informasi dan Komunikasi 2012 (SENTIKA 2012) ISSN: 2089-9815
Yogyakarta, 10 Maret 2012
Glassfish ESB
89
Seminar Nasional Teknologi Informasi dan Komunikasi 2012 (SENTIKA 2012) ISSN: 2089-9815
Yogyakarta, 10 Maret 2012
5.5 Implementasi dengan Glassfish ESB 5.24 merupakan komponen penyusun Aplikasi
Implementasi Proses Bisnis menggunakan BPEL Komposit yang dideploy ke server aplikasi Glassfish
2.0 pada Glassfish ESB yang dapat dilihat pada v2.1.
Gambar 8. Pada Gambar 8 dapat dilihat proses bisnis
searchingBP.BPEL. Pada proses bisnis ini proses 6. ESB SEBAGAI MIDDLEWARE
dimulai oleh pemakai layanan (TriggerSearchingBP) INTEGRASI
yang melakukan permintaan ke SearchingBP. ESB merupakan salah satu pilar SOA, pilar
Pemakai layanan diimplementasikan dengan WSDL lainnya adalah WS dan BPEL. WS hanya
yang dikirim dengan menggunakan SOAP BC, menyediakan integrasi point-to-point saja yang tidak
sedangkan penyedia layanan berupa Database BC lagi cocok untuk mengintegrasikan aplikasi dalam
yang dibungkus dengan WSDL. Kemudian response jumlah banyak. Penyelesaian terhadap masalah ini
diterima oleh scSearchingBP berupa SOAP BC. Dari adalah dengan koneksi secara tidak langsung antar
kasus ini tampak adanya perbedaan protokol aplikasi melalui ESB yang menyediakan fasilitas
maupun format pesan yang digunakan antara untuk melakukan routing pesan berbasis content
pemakai layanan dengan penyedia layanan. Pemakai atau context.
layanan menggunakan SOAP, sedangkan penyedia Selain itu ada dua masalah heterogenitas yaitu
layanan menggunakan basisdata. ketidak cocokan antar protokol komunikasi yang
digunakan antara pemakai layanan dan penyedia
layanan. Ketidak cocokan ini tidak memungkinkan
pemakai layanan untuk melakukan permintaan
layanan yang disediakan oleh penyedia layanan.
ESB dapat mengatasi masalah ini dengan
menyediakan fasilitas untuk mengkonversi sebuah
protokol transport/komunikasi ke dalam protokol
lain yang diperlukan. Misalnya fasilitas ini akan
mentransformasikan protokol HTTP ke dalam
protokol SMTP. Melalui fasilitas ini, aplikasi dapat
saling berkomunikasi walaupun protokol antara
pemakai layanan dan penyedia layanan tidak sama.
Masalah heterogenitas yang kedua berkaitan
dengan ketidaksesuaian antara format pesan yang
digunakan oleh pemakai layanan dan penyedia
layanan. masalah ini dipecahkan oleh ESB yang
menyediakan fasilitas untuk melakukan transformasi
format pesan yang digunakan oleh penyedia layanan
maupun pemakai layanan. Misalnya, fasilitas ini
Gambar 8. Proses bisnis SearchingBP yang dapat melakukan transformasi pesan SOAP ke
diimplementasikan menjadi SearchingBP. bpel dalam format lain berbasis XML.
Ketiga peran ESB dalam hal routing,
Diagram Komponen akan diimplementasikan transformasi protokol maupun transformasi pesan /
menggunakan Glassfish ESB dalam bentuk Aplikasi data telah berhasil dijalankan dalam penelitian ini.
Komposit yang tersimpan pada file dengan ekstensi Modul JBI yang telah dihasilkan dari penelitian ini
.zip yang dapat dilihat pada Gambar 9. telah membuktikan penggunaan ESB untuk
melakukan routing dari pemakai layanan ke
penyedia layanan lokal maupaun penyedia layanan
eksternal (Amazon.com, eBay.com, dan
yahoo.com).
Demikian halnya dalam hal transformasi
protokol juga telah berhasil dijalankan melalui ke
modul JBI tersebut. Dari modul JBI tersebut, dapat
dilihat komunikasi antara protokol HTTP dengan
JDBC, atau antara HTTP dengan SMTP, atau antara
HTTP dengan FILE. Demikian halnya untuk
Gambar 9. Hasil implementasi Diagram Komponen transformasi pesan dapat dilakukan melalui format
SearchingCA menjadi Aplikasi Komposit data XML.
SearchingBP.zip
7. KESIMPULAN
Gambar 9 merupakan hasil implementasi Pada penelitian ini telah berhasil dilakukan
Diagram Komponen SearchingBP menjadi Aplikasi integrasi beberapa web services yang berasal dari
Komposit SearchingBP.zip, sedangkan pada Gambar eBay, Yahoo, Amazon dan Paypal dengan
90
Seminar Nasional Teknologi Informasi dan Komunikasi 2012 (SENTIKA 2012) ISSN: 2089-9815
Yogyakarta, 10 Maret 2012
91