Kamis, 21 Februari 2013

EAI dan SOA

EAI dan SOA



EAI (Enterprise Application Integration) adalah suatu framwork pengembangan software yang menyediakan kerangka kerja terbuka dalam mengintegrasikan system yang disesuaikan dengan kebutuhan bisnis perusahaan dan aplikasi system yang baru.   Perhatian utama dalam EAI (Enterprise Application Integration) adalah untuk membuat agar aplikasi dapat saling bekerjasama dan mengurangi kompleksitas yang ada. Dan SOA adalah sebuah pendekatan yang dapat digunakan untuk mengatasi masalah tersebut. Tipe-tipe layanan SOA (SOA service) yaitu
:
·         Atomic Services
Merupakan bentuk paling kecil dari layanan SOA dan biasanya menggunakan bahasa pemrograman seperti Java dan C# dan mengekspos sebagai layanan web. Implementasi Atomic Services serba lengkap sehingga tidak memanggil layanan lain. Atomic services mempunyai 2 bentuk yaitu  layanan yang mengimplementasikan logika bisnis yang baru (new services) dan layana yang membungkus aplikasi warisan yang telah ada (adapter services)
·         Composite Services
Layanan ini biasanya lebih rinci dari layanan Atomic, dan dibangun dengan mengkombinasikan dua atau lebih atomic services maupun composite services yang lain. BPEL bisa digunakan tetapi tidak diperlukan. Layana gabungan di composite services tidak terlihat dan interface dari layanan penyusunnya disembunyikan, sehingga konsumen dari layanan composite tidak memperhatikan (tidak perlu memperhatikan) bahwa penyedianya adalah sebuah gabungan.
·         Process Services
Layanan ini mengorkestrasi bisnis proses maupun sub bisnis proses. Mereka melakukannya dengan mengetahui aliran pesan dalam layanan-layanan yang mengiplementasikan aktivitas dalam suatu proses. Process services biasanya diimplementasikan dengan menggunakan bahasa BPEL dan disebarkan diatas BPEL Services Engine

EAI bertujuan untuk menyelesaikan masalah interaksi dan sharing informasi diantara aplikasi system informasi yang berbeda dalam suatu perusahaan. Web services yang berdasarkan SOA telah menyediakan metode pengembangan software dengan menyusun model arsitektur system dengan cara mengorganisir service process. Konsep inti dari SOA adalah layanan (servicess). Terdapat tiga peran dalam SOA seperti terlihat pada Gambar 1 yaitu :





                                      
Gambar 1. Framework web services berbasis SOA

·         Services broker
Mendaftar dan mengelompokkan layanan-layanan yang dipublis oleh services provider, serta menyediakan layanan pencarian (search services)
·         Services provider
Mempublish layanannya dan merespon permintaan(request) yang datang
·         Services requester
Mencari layanan yang diperlukan dengan menggunakan services broker dan memanfaatkan layanan

Komponen-komponen dalam SOA harus mempunyai minimal satu peran yang telah disebutkan diatas. Peran-peran tersebut melakukan operasi-operasi seperti : “find”, “publish” dan “bind”.
Services (layanan) adalah hal utama yang dikembangkan dalam SOA dan berada di layer abstrak diantara kebutuhan bisnis dan teknologi. Dalam proses pengembangan software berbasis SOA hal-hal yang harus diketahui yaitu:
§  Dalam proses pengembangan sistem perangkat lunak berbasis SOA, kita perlu mengetahui hubungan dinamis antara fungsi-fungsi requirements dan services (layanan) yang diperoleh dan hubungan antara layanan dan teknologi dasar dari layanan (services) yang diimplementasikan.
§  Layanan dasar harus memenuhi permintaan (requirements) yang terdefinisi dan fungsi keistimewaan di SOA.
§  Setiap layanan yang dikembangkan tidak tergantung pada sistem lain.
§  Fungsi seluruh sistem diimplementasikan dengan  mengorganisasi proses layanan.

WEB SERVICES
Teknik-teknik kunci yang ada dalam web services seperti terlihat pada Gambar 2






                  
Gambar 2. Teknik-teknik kunci dalam web services

HIRARKI SOA BERDASAR WEB SERVICE
Organisasi bisnis harus mengoptimalkan proses bisnis mereka, maka bisnis dan organisasi TI harus mengoptimalkan layanan mereka. Sebagian layanan dari organisasi bisnis melayani mereka, juga melayani permintaan eksternal. Pelaksanaan layanan mengadopsi komponen infrastruktur. Ada hirarki dari model referensi berdasarkan layanan web dan SOA, ditampilkan sebagai Gambar 3.








Gambar 3.  Hierarchy of reference model

FRAMEWORK EAI BERBASIS WEB SERVICES DAN SOA

EAI berarti untuk mengintegrasikan sistem aplikasi yang dirancang untuk fungsi bisnis yang berbeda. Tujuannya adalah untuk membangun suatu sistem pusat yang membuat sistem aplikasi yang sudah ada dengan baik disesuaikan dengan lingkungan baru. Dalam rangka untuk mencapai tujuan ini, kita hanya menggunakan integrasi aplikasi enterprise berbasis SOA dan layanan Web. Ini adalah metode baru untuk integrasi aplikasi enterprise dengan keuntungan kesederhanaan, interoperabilitas, fleksibilitas fitur, dinamis dan biaya rendah. Berikut ditampilkan kerangka EAI dengan dasar SOA, web services dan message middleware terdapat pada Gambar 4.


















Gambar 4. EAI framework based on web services and SOA

SERVICES BUS FRAMEWORK
Teknologi middleware terutama yang mengadopsi SOAP berorientasi pesan, menangani standarisasi pesan  dan kontrol aliran informasi dengan pola hub. Berikut terdapat contoh pengelolaan services bus seperti yang terdapat dalam Gambar 5.













Gambar 5. Services bus framework