Web Service merupakan fenomena yang sangat panas saat ini karena, banyak kelebihan yang ditawarkan oleh Web Service terutama interoperabilitas tinggi dan penggunaannya yang dapat diakses kapanpun dan dimanapun selama mesin kita terhubung oleh jaringan internet salah satunya. Menurut W3C Web service adalahsuatu sistem perangkat lunak yang didisainuntuk mendukung interaksi mesin ke mesin pada suatu jaringan
Keuntungan penggunaan Web Service
- Format penggunaan terbuka untuk semua platform.
- Mudah di mengerti dan mudah men-debug.
- Dukungan interface yang stabil.
- Menggunakan standard-standard “membuka service sekali” dan mempunyai pemakai banyak.
- Mudah untuk menengahi pesan-pesan proses dan menambahkan nilai.
- Routing and pengiriman.
- Security.
- management and monitoring.
- schema and service design.
- Akselerasi.
- mudah untuk mengembangkan dengan semantic transport tambahan.
- Terbuka, standard-standard berbasis teks.
- Pencapaian modular.
- Tidak mahal untuk diimplementasikan (relatif).
- Mengurangi biaya integrasi aplikasi enterprise.
- Implementasi yang incremental
Ada tiga standar utama untuk penerapan web services. Standar-standar ini mendukung pertukaran data berbasis XML. Tiga standar tersebut meliputi SOAP, WSDL, dan UDDI. Berikut akan di jelaskan secara singkat mengenai standar tersebut.
- SOAP ( Simple Object Access Protocol )
Protokol ini mendukung proses pengkodean data (biasanya XML) dan transfernya melalui HTTP (Hyper Text Transfer Language). Dalam konteks web services, SOAP adalah suatu bahasa versi bebas dari protokol RPC (Remote Procedure Caoll) yang berguna untuk proses transaksi melalui HTTP standar. SOAP membuat klien web service dapat memilih beberapa parameter mengenai permintaannya dan memberikannya kpd si penyedia. Ketika penyedia menganggapi permintaan tersebut, maka terjadilah web services.
- WSDL ( Web Services Description Language )
Merupakan bahasa berbasis XML yang menjelaskan fungsi-fungsi dalam web services. WSDL menyediakan cara untuk memanfaatkan kapabilitas web services. WSDL memberi tahu mesin lain bagaimana memformat/ menterjemahkan permintaan yang diterima berikut respon mereka agar proses web service bisa berjalan. Singkatnya, WSDL adalah bahasa yang memungkinkan berbagai dokumen yang dibuat dalam aplikasi yang berbeda dapat berkomunikasi.
- UDDI (Universal Description Discovery and Integration )
Adalah semacam direktori global untuk mengelola web services. Fungsinya mirip dengan Yellow Pages untuk versi web services. UDDI berisi informasi tentang penawaran atau layanan apa yang ditawarkan perusahaan berikut dengan detil teknis bagaimana cara mengaksesnya. Inforamsi tersebut ditulis dalam bentuk file-file WSDL.
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:
1. 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.
2. 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.
3. 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:
1. Service Requester (peminta layanan)
Berfungsi untuk menyediakan layanan/service dan mengolah sebuah registry agar layanan-layanan tersebut dapat tersedia.
2. Service Provider (penyedia layanan)
Berfungsi sebagai lokasi central yang mendeskripsikan semua layanan/service yang telah di-register.
3. Service Registry (daftar layanan)
Peminta layanan yang mencari dan menemukan layanan yang dibutuhkan serta menggunakan layanan tersebut.