Ketika membangun SOA (Service Oriented Architecture) mungkin kita akan bertemu dengan
pernyataan bahwa kita tidak memerlukan web
service untuk membangun SOA. Namun pernyataan ini akan diikuti pernyataan
selanjutnya yang menyatakan bahwa memulai membangun SOA dengan menggunakan web service adalah awal yang baik.
Web Service dimulai dari konsep ringan
yang kualitas layanan yang tinggi. Kebutuhan produksi dari berbagai segmen dan
industri menuntut inovasi teknologi dan globalisasi ekonomi. Konsep ini
terwujud dalam bentuk virtual enterprise (perusahaan
virtual) . Kerjasama dengan berbagai perusahaan dan unit usaha dengan teknologi
web mendukung konsep ini, salah satunya dengan web service.
Salah satu contoh kerjasama yang dapat kita
lihat misalnya pada konsep toko online. Kita dapat memilih produk yang kita
minati pada katalog produk toko tersebut. Jika transaksi pembayaran dimulai
akan dibutuhkan data tentang jenis pembayaran yang kita pilih, misalnya kartu
kredit. Informasi yang diperlukan dari kartu kredit dapat mencakup masa
berlaku, minimal transaksi dan seterusnya. Pihak yang berwenang melakukan
validasi transaksi adalah Bank yang menerbitkan kartu kredit. Dalam hal ini
toko online dapat bekerjasama dengan beberapa bank dengan cara memanggil service yang disediakan oleh Bank untuk
memeriksa dan melakukan validasi transaksi pembayaran dengan kartu kredit.
Selain sebagai bentuk kerjasama antar
organisasi, service juga dapat
dikembangkan di internal perusahaan. Masing-masing area atau proses bisnis menyediakan modul service yang dapat diakses pihak lain
untuk data tertentu yang dibutuhkan. Konsep kerjasama berorientasi servis ini
yang menjadi landasan dibangunnya Service
Oriented Architecture (SOA).
Service Oriented Architecture (SOA) merupakan salah satu pendekatan untuk memenuhi
standar kebutuhan dan kualitas dari pembangunan sebuah perangkat lunak (software). Prinsipnya, SOA “membungkus”
fungsionalitas sebuah
sistem ke dalam bentuk layanan-layanan. Dengan demikian, beragam aplikasi dengan
platform yang berbeda-beda dapat
saling terhubung dan melakukan pertukaran data tanpa harus terikat kuat satu
sama lain (loosely coupled). SOA juga merupakan konsep arsitektur perangkat
lunak yang memanfaatkan service yang telah dibuat pada jaringan
sistem yang telah ada, contohnya ketika kita memanggil service dari sebuah Bank
untuk mengetahui nilai tukar rupiah yang berlaku pada saat itu. Konsep SOA berupa komponen
perangkat lunak yang dapat berdiri sendiri sehingga services yang ada dapat digunakan kembali untuk pengembangan
perangkat lunak yang baru.
Seperti telah dijelaskan
sebelumnya, untuk mengimplementasikan sebuah service, terdapat beberapa isu utama, yaitu bagaimana service berkomunikasi, bagaimana service didesain, dan bagaimana pesan/message antar service didefinisikan. Web service merupakan sebuah
teknologi yang dapat memenuhi kebutuhan ini.
Bagaimana web service sebagai sebuah teknologi dapat
memfasilitasi beberapa isu perancangan tersebut dapat dijelaskan sebagai
berikut :
- Sebuah service dalam SOA adalah sebuah aplikasi web service. Pada dasarnya sebuah service dalam SOA adalah sebuah aplikasi yang merepresentasikan sebuah business logic atau automation logic dari sebuah proses sistem besar yang mencakupinya. Tuntutan dari sistem ini adalah dia harus bisa berdiri sendiri dan bisa berkomunikasi satu sama lain. Hal ini sudah dimilki oleh sebuah aplikasi web service. Maka dari itu, implementasi service dalam SOA merupakan aplikasi web service.
- Hubungan satu service dengan yang lainnya didefinisikan dengan Web Service Description Language (WSDL). WSDL mendeskripsikan bagaimana format sebuah pesan yang akan dikirim oleh sebuah aplikasi web service harus ditulis, agar dapat dimengerti oleh aplikasi web service lainnya yang menerima. Dalam sudut pandang SOA, yang menggunakan web service serbagai service, teknologi WSDL ini menjadi jembatan untuk menghubungkan sebuah service ke service lainnya.
- Service berkomunikasi satu sama lain menggunakan SOA messaging. Kebutuhan untuk saling berkirim pesan dalam SOA merupakan hal yang paling penting. Untuk teknologi pengiriman pesan, kita dapat menggunakan SOAP. Hal ini dikarenakan SOAP fleksibel dan dapat dikembangkan lebih jauh.
Untuk mengkomposisi sekumpulan web services
menjadi workflow, dibutuhkan sebuah standar. Hal ini dimungkinkan dengan adanya
WS-BPEL (Web service- Business Process Execution Language) atau BPEL4WS (Business Process Execution
Language for Web Service).
World Wide Web Consortium (W3C) mendefinisikan web service sebagai suatu sistem perangkat
lunak yang didesain untuk mendukung operasi interaksi antara mesin dengan mesin
melalui suatu jaringan. Web service merupakan suatu Aplication Programming Interface (API)
yang dapat diakses melalui suatu jaringan seperti internet, dan dieksekusi pada
sistem remote yang merupakan pemilik dari service
yang diminta. Web service ini memiliki dua spesifikasi
dasar yang harus dipenuhi, yaitu:
- Berkomunikasi melalui protokol internet (umumnya menggunakan HTTP).
- Mengirim dan menerima data dalam format dokumen XML
Web service
adalah suatu sistem perangkat lunak yang dirancang untuk mendukung
interoperabilitas dan interaksi antar sistem pada suatu jaringan. Web service
digunakan sebagai suatu fasilitas yang disediakan oleh suatu web site untuk
menyediakan layanan (dalam bentuk informasi) kepada sistem lain, sehingga
sistem lain dapat berinteraksi dengan sistem tersebut melalui layanan-layanan (service) yang disediakan oleh suatu
sistem yang menyediakan web service. Service mampu menyimpan data informasi dalam format
XML, sehingga data ini dapat diakses oleh sistem lain walaupun berbeda
platform, sistem operasi, maupun bahasa compiler. Web service
bertujuan untuk meningkatkan kolaborasi antar pemrogram dan perusahaan, yang
memungkinkan sebuah fungsi di dalam web service dapat
dipinjam oleh aplikasi lain tanpa perlu mengetahui detil pemrograman yang
terdapat di dalamnya.
Posting selanjutnya akan memperlhatkan bagaimana membuat web service dengan bahasa pemrograman Java.
Sumber : Analisa dan Desain Berorientasi Servis untuk Aplikasi Manajemen Proyek - Riyanarto Sarno
0 comments