Bismillah...

Web service

      Web service merupakan salah satu bentuk implementasi Service Oriented Architecture yang dapat memberikan banyak keuntungan bagi sebuah organisasi. Sebuah aplikasi berbasis teknologi Web service dapat menyediakan data maupun fungsi tertentu bagi aplikasi lain meskipun berbeda sistem operasi, perangkat keras, maupun bahasa pemrograman yang digunakan untuk membangunnya.
      Keunggulan web service ini dapat dimanfaatkan untuk memecahkan permasalahan integrasi sistem informasi dalam suatu organisasi. Institusi pendidikan merupakan sebuah organisasi yang di dalamnya terdapat beberapa entitas/unit yang memiliki fungsi khusus. Setiap unit dapat memiliki satu atau lebih sistem perangkat lunak yang berbeda-beda. Dalam menjalankan suatu fungsi tertentu, suatu perangkat lunak bisa jadi memerlukan data atau fungsi dari unit lain. Penelitian ini adalah menerapkan konsep Service Oriented
       Architecture pada pengembangan sistem informasi akademik sehingga memiliki interoperability lintas platform dan mampu berkomunikasi dengan unit lain dengan menyediakan service yang dapat diakses oleh aplikasi lain.
       Publikasi service dilakukan pada Universal Description Discovery and Integration server yang menyimpan informasi alamat untuk proses service binding. Strategi tertentu perlu digunakan untuk mengembalikan data dalam web service tergantung pada data yang dikembalikan. Pembuatan web service harus memastikan SOAP dapat dibentuk dari objek yang menjadi nilai kembalian bagi web service client.

Definisi Web Service
       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.
       Web service 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.

Beberapa alasan mengapa digunakannya web service  adalah sebagai berikut:
   > Web service dapat digunakan untuk mentransformasikan satu atau beberapa bisnis logic atau class dan objek yang terpisah dalam satu ruang lingkup yang menjadi satu, sehingga tingkat keamanan dapat ditangani dengan baik.
   > Web service memiliki kemudahan dalam proses deployment-nya, karena tidak memerlukan registrasi khusus ke dalam suatu sistem operasi.
   > Web service cukup di-upload ke web server dan siap diakses oleh pihak-pihak yang telah diberikan otorisasi.
   > Web service berjalan di port  80 yang merupakan protokol standar HTTP, dengan demikian web service tidak memerlukan konfigurasi khusus di sisi firewall.

Arsitektur Web Service
Web service memiliki tiga entitas dalam arsitekturnya, yaitu :
   > Service Provider (penyedia layanan) : Berfungsi untuk menyediakan layanan/service dan mengolah sebuah registry agar layanan-layanan tersebutdapat tersedia.
   > Service Registry (daftar layanan) : Berfungsi sebagai lokasi central yang mendeskripsikan semua layanan/service yang telah di-register.
   > Service Requestor (peminta layanan) : Peminta layanan yang mencari dan menemukan layanan yang dibutuhkan serta menggunakan layanan tersebut.

Operasi-Operasi Web Service Secara umummemiliki tiga operasi yang terlibat di dalamnya, yaitu: 
   > Publish/Unpublish : Menerbitkan/menghapus layanan ke dalam atau dari registry.
   > Find : Service requestor mencari dan menemukan layanan yang dibutuhkan.
   > Bind : Service requestor setelah menemukan layanan yang dicarinya, kemudian melakukan binding ke service provider untuk melakukan interaksi dan mengakses layanan/service yang disediakan oleh service provider.

Komponen-Komponen Web Service
Web service secara keseluruhan memiliki empat layer komponen seperti pada gambar di atas, yaitu:
   > Layer 1: Protokol internet standar seperti HTTP, TCP/IP
   > Layer 2: Simple Object Access Protocol (SOAP), merupakan protokol akses objek berbasis XML yang digunakan untuk proses pertukaran data/informasi antar layanan.
   > Layer 3: Web Service Definition Language (WSDL), merupakan suatu standar bahasa dalam format XML yang berfungsi untuk mendeskripsikan seluruh layanan yang tersedia.

Berikut ini beberapa keuntungan Web Service:
   > Web Service menyediakan interoperabilitas antar berbagai aplikasi perangkat lunak yang running pada platform yang berbeda.
   > Web Service menggunakan standard dan protokol yang open. Jika memungkinkan protokol dan format data adalah text-based, membuatnya mudah bagi pengembang untuk memahami.
   > Dengan pemanfaatan HTTP, Web Service dapat bekerja melalui banyak pengukuran keamanan firewall yang umum tanpa menuntut perubahan bagi aturan firewall filtering.
   > Web Service mengijinkan perangkat lunak dan service dari perusahaan dan lokasi yang berbeda untuk dikombinasikan dengan mudah untuk menyediakan suatu service yang terintegrasi.
   > Web Service mengijinkan penggunaan kembali service dan komponen di dalam suatu infrastruktur
   > Web Service dapat secara bebas digabungkan (loosely coupled) dengan demikian memudahkan suatu pendekatan terdistribusi ke pengintegrasian aplikasi.

Sedangkan Kekurangan Web Service adalah:
   > Karakteristik standard Web Service saat ini masih dalam tahap perkembangan awal dibandingkan open standard komputer terdistribusi yang lebih matang seperti CORBA. Ini nampaknya akan merupakan suatu kerugian yang temporer ketika kebanyakan vendor sudah merasa terikat dengan standard OASIS untuk menerapkan Mutu dari aspek service dari produk mereka.
   > Web Service dapat saja memiliki performance/kinerja yang lemah dibandingkan dengan pendekatan komputasi terdistribusi lain seperti RMI, CORBA, atau DCOM. Ini merupakan suatu trade-off yang umum ketika memilih format yang text-based. XML dengan tegas tidak menghitung antar tujuan disain-nya baik singkatan dari penyandian maupun efisiensi dari uraian. Ini bisa berubah dengan standard XML Infoset, yang menguraikan bahasa yang XML-based dalam kaitan dengan hal-hal yang abstrak (unsur-unsur, atribut, logika bersarang). Penyajian angle-bracket (< >) secara tradisional kini dilihat sebagai suatu serialisasi ASCII (atau Unicode) dari XML, bukan XML itu sendiri. Pada model ini, serialisasi biner adalah suatu alternatif yang sama yang sah. Penyajian biner seperti SOAP MTOM menjanjikan untuk meningkatkan efisiensi wire dari XML messaging.
======


http://blog.unsri.ac.id