Service Oriented Architecture : Persfektif Bisnis dan Teknologi

 SOA atau Service Oriented Architecture merupakan istilah yang menjadi trend dalam teknologi terbaru di dunia TI. Mngacu kepada nama  Service Oriented Architecture merupakan  sebuah pendekatan dalam merancang (arsitek) sistem  dimana service yang ada dalam masing-masing sistem yang ada. Dalam hal ini, komponen-komponen tersebut memberikan suatu jenis layanan bisnis (service) tertentu seperti antara lain: melakukan pembayaran, transfer pembayaran, mengecek status akun bank, dan lain sebagainya.

Untitled

Gambar 1. SOA komponen (Sumber :  Paul C. Brown, “Implementing SOA: Total Architecture in Practice”, 2008, Addison Wesley Professional, ISBN-10: 0-321-50472-0 ISBN-13: 978-0-321-50472-2.)

 

Secara umum bisa dikatakan bahwa SOA adalah sebuah arsitektur kerangka kerja berbasis standar  yang terhubung yang memungkinkan sistem-sistem  untuk saling mengintegrasikan data yang sebelumnya hanya tersimpan rapat di berbagai lokasi atau sumber. Dengan kata lain,SOA merupakan arsitektur yang mendukung integrasi bisnis sebagai layanan yang terhubung dan menjadi jalan menuju inovasi.(SOA juga menjadi strategi bisnis berbasis teknologi dan hasil evolusi untuk mengintegrasi berbagai sumber informasi dari sumber kode atau platform yang berbeda-beda).

 

Gambar dibawah ini memberikan gambaran secara khuss tetang proses dan absyraksi dari SOA

  Untitled2

Gambar 2. : SOA Abstraksi dan Proses (Sumber : Norbert Bieberstein, et al., “Executing SOA: A Practical Guide for the Service-Oriented Architect”, 2008, IBM Press, ISBN-10: 0-13-235374-1 ISBN-13: 978-0-13-235374-8.  )

 

Dalam Gambar diatas, SOA absraksi  merupakan bagan yang sangat penting dalam proses pengembangan SOA. Secara umum sistem yang terhubung dengan SOA terdiri dari Sistem saat ini, sistem yang berhubungan dengan Customer Service, ERP dan juga Web.Dalam pendekatan diatas dapat disimpulkan bahwa Web Service Component dan Web Service API akan terhubung dengan SOA Absraksi.

Komteks SOA adalah  loose coupled yang artinya sebuah service dapat di-panggil oleh program/service lainnya tanpa program pemanggil tersebut perlu memperhatikan di mana lokasi service yang dipanggil berada dan platform/teknologi apa yang digunakan oleh service tersebut. Loose coupling sangat penting bagi SOA karena dengan demikian pemanggilan sebuah service oleh service lainnya dapat dilakukan pada saat run-time.

Untitled3

Gambar 3. : Ilustrasi dari SOA Service  (Sumber : 2.           Paul C. Brown, “Succeeding with SOA: Realizing Business Value through Total Architecture”, 2007, Addison Wesley Professional, ISBN-10: 0-321-50891-2 ISBN-13: 978-0-321-50891)

Misalnya sebuah aplikasi core Penerbangan  menyediakan sebuah service ticket booking, maka aplikasi-aplikasi lainnya seperti flight schedule, payment gateway, Flight Detail dan sebagainya dapat memanggil service flight booking tersebut tanpa perlu mengetahui  di mana flight schedule  tersebut berada di dalam jaringan dan teknik pemanggilan yang harus digunakan. Hal ini kontras dengan pendekatan tight coupling di mana dalam hal ini setiap aplikasi penerbangan  di atas masing-masing harus mempunyai fungsi flight schedule  di dalamnya sehingga akan menyulitkan dan membutuhkan biaya/resource besar jika perlu merubah logic dari flight  schedule ke requirement bisnis yang baru di dalam setiap aplikasinya.

Dapat disimpulkan bahwa SOA menjadi solusi dari beragamnya platform serta permintaan untuk interopability dari sistem.