Mengenal Web Service, Salah Satu Teknologi Web

Web service merupakan suatu komponen software yang merupakan selfcontaining, aplikasi modular self-describing yang dapat dipublikasikan, dialokasikan, dan dilaksanakan pada web. Web service adalah teknologi yang mengubah kemampuan internet dengan  menambahkan kemampuan transactional web, yaitu kemampuan web untuk saling berkomunikasi dengan pola program-to-program (P2P). Fokus web selama ini didominasi oleh komunikasi program-to-user dengan interaksi business-to-consumer (B2C), sedangkan transactional web akan didominasi oleh program-to-program dengan interaksi business-to-business.

gambar web service

Gambar 1 merupakan blok bangunan web service yang mana menyediakan fasilitas komunikasi jarak jauh antara dua aplikasi yang merupakan layer arsitektur web service.

a. Layer 1 : protokol internet standar yang digunakan sebagai sarana transportasi adalah HTTP dan TCP/IP.

b. Layer 2 : Simple Object Access Protocol (SOAP) berbasiskan XML dan digunakan untuk pertukaran informasi antar sekelompok layanan.

c. Layer 3 : Web service Definition Language (WSDL) digunakan untuk mendiskripsikan attribute layanan.

d. Layer 4 : Universal Description, Discovery and Integration, yang mana merupakan direktori pusat untuk deskripsi layanan.

 

Web service adalah sebuah software yang dirancang untuk mendukung interoperabilitas interaksi mesin-ke-mesin melalui sebuah jaringan. Web service secara teknis memiliki mekanisme interaksi antar sistem sebagai penunjang interoperabilitas, baik berupa agregasi (pengumpulan) maupun sindikasi (penyatuan). Web service memiliki layanan terbuka untuk kepentingan integrasi data dan kolaborasi informasi yang bisa diakses melalui internet oleh berbagai pihak menggunakan teknologi yang dimiliki oleh masingmasing pengguna. Sekalipun mirip dengan Application Programming Interface (API) berbasis web, web service lebih unggul karena dapat dipanggil dari jarak jauh melalui internet. Pemanggilan web service bisa menggunakan bahasa pemrograman apa saja dan dalam platform apa saja, sementara API hanya bisa digunakan dalam platform tertentu. Web service dapat dipahami sebagai Remote Procedure Call (RPC) yang mampu memproses fungsi-fungsi yang didefinisikan pada sebuah aplikasi web dan mengekspos sebuah API atau User Interface (UI) melalui web. Kelebihan web service adalah: 1) lintas platform, 2) language independent, 3) jembatan penghubung dengan database tanpa perlu driver database dan tidak harus mengetahui jenis DBMS, 4) mempermudah proses pertukaran data, serta 5) penggunaan kembali komponen aplikasi. Berdasarkan konsep hubungan dan penyampaian informasi, web service dikembangkan melalui empat model arsitektur, masing-masing berorientasi pada message, action, resource, dan policy. Pengembangan model yang diturunkan berdasarkan orientasi pada action (Service Oriented Model/SOM)) menghasilkan Services Oriented Architecture (SOA), yaitu model arsitektur berbasis layanan. Sementara pengembangan model yang diturunkan berdasarkan orientasi pada resource (Resource Oriented Model/ROM) menghasilkan Resource Oriented Architecture (ROA), yaitu model arsitektur berbasis sumberdaya informasi.

Dalam perkembangannya, model web service memiliki dua metode yang berorientasi pada layanan dan sumberdaya informasi, yaitu: SOAP (Simple Object Access Protocol) dan REST (REpresentational State Transfer). Impementasi model SOA telah banyak dilakukan dan dikembangkan oleh banyak vendor (misal: Microsoft, Sun dan IBM, melalui dukungan platform infrastruktur .Net dan Java). Proses layanan dengan arsitektur SOAP memiliki tiga komponen utama, yaitu: 1) service provider, 2) service requester, dan 3) service broker, serta komponen pendukung yaitu: 1) XML, 2) SOAP-XML (terdiri atas header dan body), 3) WSDL, serta 4) UDDI. Metode REST telah dikembangkankan oleh Fielding yang didasari oleh empat prinsip utama teknologi, yaitu: 1) Resource identifier through Uniform Resource Identifier (URI), 2) uniform interface (sumberdaya CRUD menggunakan operasi PUT, GET, POST, dan DELETE), 3) self-descriptive messages (sumberdaya tidak terikat sehingga dapat mengakses konten HTML, XML, PDF, JPEG, plain text, meta data, dll), serta 4) stateful interactions through hyperlinks (bersifat stateless). Metode REST lebih sederhana karena menggunakan format standar (HTTP, HTML, XML, URI, MIME), namun jika diperlukan proses pertukaran data, maka konten berupa teks dari hasil eksekusi web service dapat diolah dalam format teks (seperti XML atau HTML) dengan menggunakan utilitas komunikasi data berupa koneksi socket protokol HTTP. Utilitas ini umumnya tersedia dalam pustaka komunikasi pada bahasa pemrograman (seperti Java, Visual Basic, Delphi, PHP, ASP, dan JSP).

Model web service memberikan layanan untuk proses pertukaran data antar sistem informasi yang merupakan bentuk implementasi konsep interoperabilitas. Model layanan web service setidaknya melibatkan dua hal penting, yakni:

1. Problem utama pada format data. Selama ini problem ini diselesaikan menggunakan format netral yaitu XML, yaitu sebuah format dokumen yang mampu menjelaskan struktur dan semantik (makna) dari data yang dikandung oleh dokumen, lebih fokus pada substansi data, struktur data dan semantik data yang ditransfer tidak “hilang”, dan telah menjadi standar defacto pertukaran data antar sistem.

2. Problem pada mekanisme pertukaran data. Solusi masalah ini dapat menggunakan Service-Oriented Architecture (SOA), yaitu sebuah skema yang memungkinkan komunikasi antar sistem dilakukan secara loosely-coupled, artinya masing-masing pihak tidak memiliki ketergantungan yang tinggi satu sama lain. Dalam SOA, komunikasi didasarkan pada konsep layanan menggunakan prinsip client-server, ada yang menyediakan layanan dan yang lain bisa meminta layanan. Permintaan layanan dilakukan dengan cara memanggil fungsi yang merepresentasikan layanan tersebut. Apabila fungsi dipanggil, maka aplikasi penyedia layanan wajib memberikan layanannya ke aplikasi pemanggil. Keunggulan SOA adalah detil internal yang terlibat dalam pemanggilan fungsi layanan

sepenuhnya disembunyikan. Ada interface yang memisahkan secara tegas bagian publik (boleh diketahui oleh aplikasi lain) dan bagian privat (aplikasi lain tidak perlu tahu). Dengan interface tersebut, aplikasi client tidak perlu tahu tentang detil internal, namun cukup mengetahui sintaks fungsinya saja. SOA bisa mengakomodasi kepentingan server yang tidak perlu menunjukkan detil data yang sensitif/rahasia, sementara client tetap bisa meminta data yang diinginkannya kepada server.

Sumber

Sutanta, Edhy. 2012. Kebutuhan Web Service Untuk Sinkronisasi Data Antar Sistem Informasi Dalam E-GOV Di Pemkab Bantul Yogyakarta. Jurtik-STMIK Bandung (Edisi Mei 2012)

Deviana, Hartati. 2011. Penerapan XML Web Service Pada Sistem Distribusi Barang. Jurnal Generic

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s