Service Oriented Architecture (SOA)

2. Service Oriented Architecture (SOA)

Service Oriented Architecture (SOA) mulai diperkenalkan sejak tahun 2000 yang lalu. SOA pada dasarnya sebuah model sederhana dalam system terdistribusi. Dalam SOA kita dapat melihat beberapa hal seperti :

 Architecture, merupakan sebuah deskripsi formal dari suatu system, yang mendefinisikantujuan, fungsi, sifat eksternal, dan interface.

 Service, merupakan komponen perangkat lunak yang dapat diakses melalui jaringan untuk menyediakan layana fungsiionalitas kepada yang meminta layanan.

 Service oriented architecture, mengaju kepada gaya bangunan system terdistribusi yang memberikan fungsionalitas layanan, dengan tambahan lose coupling dalam berinteraksi.

Arsitektur SOA dapat diimplementasikan dengan beberapa model teknologi diantaranya : CORBA (Commond Object Requestor Broker Architecture), DCE (Distributed Computing Envirotment) , RMI (Remote method Invocation), DCOM (Distributed Commond Object Model), dan Web Service seperti yang tergambarkan pada Gambar 3.

Gambar 3 Teknologi yang memnfaatkan SOA

Pendekatan loose coupling dalam proses interkasi mengakibatkan independensi terhadap service yang diberikan, sehingga system dapat

bersifat terbuka. Untuk menwujudkan proses ini maka web service dapat menyajikan layanan standar berupa tidak terikat oleh aplikasi yang digunkan sehingga dapat berjalan pada multi platform. Service dalam hal ini memiliki beberapa karakteristik :

 Logical view, service yang dilihat dari level operasi bisnis yang diidentifikasi sebagai interface yang independen 

Message orientation, Sebuah service yang berhubungan dengan client yang bertukar message. 

Discription Orientation, Servive yang didekripsikan sebagai mesin pengolah metadata. 

Network Orientation, Service dituntut untuk dipakai di dalam jaringan. Hal ini menenkankan pada kebutuhan service yang secara otomatis serta mudah ditemukan

Dengan melihat karakteristik service yang terdapat pada SOA, maka pendekatan yang digunakan adalah untuk membangun system terdistribusi, yang memberikan layanan aplikasi fungsionalitas dan baik untuk end user maupun pengguna layanan lainnya.

Dalam SOA, peta layanan untuk mengidentifikasikan fungsi bisnis selama analisis dalam proses bisnis. Layanan mungkin bersifat halus atau kasar tergantung pada proses bisnis. Setiap service memiliki antarmuka yang jelas sehingga memungkinkan untuk dipublikasikan, ditemukan dan dipanggil. Sebuah perusahaan dapat memilih untuk mempublikasikan layanan eksternal kepada pihak ekternal ataupun internal. proses ini dapat dilihat pada gambar 4

Gambar 4 Siklus service dalam SOA

Pada gambar 4 diatas mengilustrasikan siklus dari interaksi service dalam arsitektur system SOA. Pada tahap 1 service provider mempublikasikan service yang dimilikinya ke registry public. Tahap ke-2 service customer mencari service yang dibutuhkan ke registry public (kalau kita kaitkan dengan contoh diatas, maka disini Amazon.com mencari service untuk memvalidasi kartu kredit). Tahap ke-3, registry akan memeberikan respon berupa list service yang tersedia dalam registry yang dilengkapi dengan informasi alamat, cara pemanggilan service, return yang bakal diperoleh dan mengenali protocol yang digunakan. Kemudian tahap ke-4 service memberikan respon. Melihat komponen dan proses yang terdapat dalam siklus service SOA, maka SOA memiliki 3 (tiga) layana utama berupa :

 Service consumer, aplikasi dalam Layanan Konsumen, merupakan sebuah modul perangkat lunak atau layanan lain yang membutuhkan layanan. Ini memulai penyelidikan pelayanan di registri, mengikat ke layanan di atas transportasi, dan mengeksekusi fungsi pelayanan. Service costumer menjalankan layanan sesuai dengan intervace yang diperoleh.

 Service provider, service provider merupakan entitas jaringan yang dialamatkan yang menerima dan mengeksekusi permintaan dari konsumen. Ini menerbitkan layanan dan antarmuka ke service registry sehingga service costumer dapat menemukan dan mengakses layanan.

 Service registry, Sebuah registri layanan yang mendorong untuk menemukan layanan. Service registry berisi gudang layanan yang tersedia dan memungkinkan untuk pencarian antarmuka penyedia layanan kepada penerima layanan.

Selain service yang terdapat dalam SOA, kita juga dapat melihat terdapatnya proses yang berjalan sehingga terbentuk komunikasi antar service yang ada.

 The Publish Operation adalah tindakan pendaftaran layanan atau informasi layanan. Ini bertindak sebagai komunikasi antara registri layanan dan provider. Dimana operator penyedia layanan menerbitkan layanan Web mendeskripsikan untuk registri layanan, rincian informasi berupa layanan Web untuk sebuah komunitas pemohon pelayanan. Rincian menerbitkan API tergantung pada bagaimana registri layanan diimplementasikan. Implementasi registry Layanan lain, seperti UDDI..

 The Find operation adalah dual logis dari operasi mempublikasikan. komunikasi antara service costumer dan service registry. Service Registri menemukan sesuai dengan deskrisi kriteria terhadap koleksi hasil pelayanan. Ini berarti menemukan operasi selalu mengembalikan semua layanan Web dipublikasikan ke layanan registry,

 The bind operation (Operasi mengikat) mewujudkan hubungan client-server antara pemohon layanan dan penyedia layanan. Ciri utama SOA adalah mempromosikan melalui penggabungan komponen-komponen perangkat lunak. Diantara komponen perangkat

lunak tersebut saling berinteraksi dalam satu kesatuan. Sedangkan keuntungan dari penggunaan Arsitektur SOA adalah flexible, scalable, replacability dan fault tolerance.