Service Oriented Architecture Adalah



Top 10 Soa Best Practices

Deskripsi Mengenai Web Service dan Service Oriented Architecture (SOA)

A. Web Service

Web services adalah sebuah sistem software yang di desain untuk mendukung interoperabilitas interaksi mesin ke mesin melalui sebuah jaringan. Web services adalah aplikasi sekumpulan data (database), perangkat lunak (software) atau bagian dari perangkat lunak yang dapat diakses secara remote oleh berbagai piranti dengan sebuah perantara tertentu. Secara umum, web servicess dapat diidentifikasikan dengan menggunakan URL seperti hanya web pada umumnya. Web services dapat diartikan juga sebuah metode pertukaran data, tanpa memperhatikan dimana sebuahdatabase ditanamkan, dibuat dalam bahasa apa sebuah aplikasi yang mengkonsumsi data, dan di platform apa sebuah data itu dikonsumsi. Secara umum, web services dapat diidentifikasikan dengan menggunakan URL seperti hanya web pada umumnya. Namun yang membedakan web servicess dengan web pada umumnya adalah interaksi yang diberikan oleh web servicess. Berbeda dengan URL web pada umumnya, URL web services hanya menggandung kumpulan informasi, perintah, konfigurasi atau sintaks yang berguna membangun sebuah fungsi-fungsi tertentu dari aplikasi. Berikut ini adalah standar-standar dalam web service yang berfungsi

dalam menjelaskan interface dan protocol yang harus digunakan untuk memanggil service tersebut. Standar-standar tersebut adalah:• SOAP (Simple Object Access Protocol): Menjelaskan protokol tentang bagaimana sebuah web service dapat dipanggil.• WSDL (Web Services Deinition Language): Sebuah format XML yang menjelaskan interface dari sebuah web service (parameter input dan output).

• UDDI (Universal Description, Discovery and Integration): Sebuah direktori yang berisi daftar web service yang dapat ditemukan dan dipanggil oleh aplikasi lainnya.Dengan standar di atas, web services sangat mendukung implementasi SOA dimana karakteristik SOA seperti loose coupling dan service interface disediakan oleh teknologi web services.

Sebuah web services dapat dipanggil oleh aplikasi lain dengan menggunakan bantuan HTTP (Hypertext Transfer Protocol). Web services juga memungkinkan untuk dipanggil dengan menggunakan protocol lain seperti SMTP (Simple Mail Transfer Protocol), namun yang paling umum digunakan HTTP. Web pada umumnya digunakan untuk melakukan respon dan request yang dilakukan antara client dan server. Sedangkan pada web services hubungan antara client dan server tidak terjadi secara langsung. Hubungan antaraclient dan server dijembatani oleh file web services dalam format tertentu. Sehingga akses terhadap databaseakan ditanggani tidak secara langsung oleh server, melainkan melalui perantara yang disebut sebagai web services. Peran dari web services ini akan mempermudah distribusi sekaligus integrasi database yang tersebar di beberapa server sekaligus. B. SOA (Service Oriented Architecture) SOA atau Service Oriented Architecture merupakan istilah yang menjadi trend dalam teknologi terbaru di dunia TI. Selain itu, 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. 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).

SOA dapat dipandang sebagai sebuah gaya arsitektur sistem informasi yang memungkinkan pembuatan aplikasi yang dibuat dengan mengkombinasikan service yang bebas dan penggabungan service. Operasi antar layanan yang ada berbasis pada definisi yang jelas (seperti kontrak atau WSDL) yang mandiri dari platform dan bahasa pemprograman yang mendasarinya. Definisi interface akan menyembunyikan implementasi dari suatu bahasa pemprograman layanan. Sistem berbasis SOA dapat dikembangkan dari berbagai platform dan teknologi (seperti java dan dot net). Sebagai contoh, Service yang ditulis dengan bahasa C# berjalan di platform Dot Net dan layanan yang ditukis dengan java berjalan di platform java EE. Keduanya dapat digunakan dengan sebuah aplikasi gabungan umum. Aplikasi-aplikasi tersebut berjalan pada masing-masing platform dan tetap dapat menggunakan layanan yang berjalan pada aplikasi lainnya sebagai web service, hal ini memudahkan penggunaan kembali layanan tersebut. Berikut adalah pemodelan Service Oriented Architecture dalam SOA meta-model, Service-Oriented Modeling Framework (SOMF) Version 2.0, dan SOA detailed diagram.

SOA meta-model, The Linthicum Group, 2007

Service-Oriented Modeling Framework (SOMF) Version 2.0

SOA detailed diagram, originally from thewebserviceblog

Saat ini, SOA merupakan sebuah solusi yang baik untuk permodelan sistem di perusahaan atau organisasi besar. Sebab, permodelan ini memiliki banyak kelebihan, diantaranya: 1. Dapat menyatukan berbagai sistem yang memiliki platform berbeda, seperti J2EE dan .NET. sebab dengan pendekatan ini, yang pengembang akan memilih untuk membangun sebuah layer di atas sistem. Sistem tersebut yang dapat saling berkomunikasi dengan pesan yang sudah distandardisasi, misalnya menggunakan teknologi XML. Dalam sudut pandang SOA, kedua sistem itu masing-masingnya akan dianggap sebagai service. 2. Tahan terhadap perubahan. Perusahaan atau organisasi besar seringkali berubah struktur untuk meningkatkan efisiensi dan kinerja. Akibatnya, perangkat lunak juga terkena imbas untuk menyesuaikan diri terhadap proses bisnis yang baru. Permodelan perangkat lunak dengan SOA akan mengurangi effort untuk modifikasi perangkat lunak tersebut. Sebab, karena seluruh logic dari sistem sudah terpartisi secara bersih menjadi sekumpulan services, kita hanya perlu menyusun ulang seluruh service tersebut dan jika perlu menambahkan yang baru. Hal ini jelas mengurangi biaya.

Web Services seringkali dikaitkan atau bahkan disamakan dengan SOA. Namun sebenarnya keduanya adalah hal yang sangat berbeda. SOA adalah sebuah konsep untuk pengembangan perangkat lunak, sementara Web Services adalah sebuah aplikasi web yang berinteraksi dengan aplikasi web lainnya untuk pertukaran datA. Pembangunan SOA tidak harus menggunakan Web Services, sebab ada bermacam-macam teknologi lain yang memungkinkan, tapi menggunakan Web Services untuk membangun sebuah sistem SOA adalah langkah yang baik. SOA dapat mendukung aktivitas integrasi dan konsolidasi dalam sistem yang kompleks, tetapi SOA tidak diperuntukkan atau menyediakan sebuah metodologi atau kerangka kerja bagi proses pendokumentasian kemampuan atau layanan. Aspek terpenting dalam SOA adalah pemisahan antara implementasi service dan interface. Service melayani permintaan dengan dukungan format tertentu dan mengharapkan hasil suatu permintaan tanpa mempedulikan bagaimana mengeksekusikan setiap permintaan yang didapat sehingga mendapatkan suatu hasil.

C. Aplikasi SOA dan Web Service 

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.

Berikut ini adalah penjelasan mengenai bagaimana web service sebagai sebuah teknologi dapat memfasilitasi beberapa isu perancangan tersebut.

  • 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).

Sumber: [1]http://mti.binus.ac.id/2014/03/14/service-oriented-architecture-persfektif-bisnis-dan-teknologi/ [2]http://www.hermantolle.com/class/2014/03/web-services/

[3]http://bisakomputer.com/mengenal-lebih-dekat-tentang-webservice/ 

[4]Analisa dan Desain Berorientasi Servis untuk Aplikasi Manajemen Proyek - Riyanarto Sarno

Gallery Service Oriented Architecture Adalah

Oracle Service Oriented Architecture Soa

Rizkagustikasari Soa Service Oriented Architecture

An Introduction To Erp Systems Architecture Implementation

Kelompok Rendra Ridho Haqiqi Sigit Prabowo Ppt

Microservices Vs Soa How Are They Different Bmc Blogs

Application Architecture

Dargombez Teknologi Masa Kini Soa Service Oriented

Service Oriented Architecture

Api Vs Microservices A Microservice Is More Than Just An

Microservice Architecture Pattern

Service Oriented Enterprises

Service Oriented Architecture

What Is Soa Testing Tutorial With Example

Goals Of Soa Integration And Interoperability

Service Oriented Architecture Persfektif Bisnis Dan

May 2017 Cerminan Diri Sang Pencari Nilai Hidup

Service Oriented Architecture

1 Layered Architecture Software Architecture Patterns Book

Uas Sit 2010

What Is Enterprise Service Bus Esb Definition From

Establishing Architecture Baseline Webagesolutions Com

Microservices Differences Between Microservices And Soa

Konsep Dasar Soa Service Oriented Architecture B 3 2

Soa Reference Architecture Business Process Layer

Example Of A Service Oriented System Download Scientific

Oracle Service Oriented Architecture Soa

Soa Principles 3 Service Discoverability

Service Oriented Architecture Soa And Web Services The

Service Oriented Architecture Soa And Enterprise Architecture


0 Response to "Service Oriented Architecture Adalah"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel