Services
Services menyediakan fungsionalitas bisnis , seperti aplikasi untuk perjalanan bisnis, permohonan untuk pinjaman, dll.
Hal ini berbeda jauh dari fungsionalitas yang ada di technology-oriented functionalities , seperti mengambil atau meng-update data 1 satu tabel dalam database.
Services dalam SOA harus menyediakan nilai bisnis , menyembunyikan rincian implementasi, , and be autonomous.
Service consumers adalah entitas perangkat lunak, yang memanggil service dan menggunakan fungsi2nya.
Interfaces
Service consumers mengakses service melalui Interfaces.
Interfaces merupakan kontrak antara service provider and service consumer
The interface terpisah dari implementasi.
Deskripsi interface menyediakan dasar untuk pelaksanaan service oleh service provider dan dasar untuk pelaksanaan service consumers.
Messages
Operasi-operasi didefinisikan sebagai seperangkat pesan.
Pesan menentukan data yang akan dipertukarkan dan menggambarkannya dalam sebuah platform dan bahasa yang bebas sebagai cara menggunakan skema.
Services hanya mempertukarkan data yang berbeda jauh dari pendekatan object-oriented dan komponen,dimana behavior (implementation code) dapat juga dipertukarakan.
WSDL adalah bahasa service description yang memenuhi kriteria SOA.
Synchronicity
Service consumers mengakses layanan melalui service bus. Hal ini dapat berupa sebuah transport protocol , seperti SOAP, atau ESB.
Service consumers dapat menggunakan komunikasi yang sinkron atau asinkron mode komunikasi untuk meminta/menjalankan operasi services.
dalam mode sinkron, sebuah operasi service mengembalikan respon ke service consumer setelah proses selesai.
service consumer harus menunggu proses selesai.
Biasanya kita menggunakan mode sinkron dengan operasi pengolahan lengkap dalam waktu singkat.
Dalam modus asynchronous, service operation tidak mengembalikan response kepada consumer, tetapi dapat mengembalikan acknowledgement(pengakuan/informasi) sehingga konsumen mengetahui bahwa operasi telah berhasil dijalankan.
Jika respons diperlukan, biasanya digunakan pemanggilan balik dari service kepada consumer yang digunakan. Dalam skenario, korelasi antara pesan diperlukan.
Loose Coupling
Melalui self-describing interface, secara kasar, pertukaran dari struktur data mendukung synchronous and asynchronous mode komunikasi, loose coupling dari services (service yang saling tidak tergantung) tercapai.
Loosely coupled services adalah service yang terbuka hanya pada ketergantungan yang diperlukan dan mengurangi semua jenis ketergantungan buatan.
Hal ini sangat penting ketika service akan pakai sering berubah.
Ketergantungan yang Minimal ini menjamin bahwa akan ada jumlah perubahan yang minimal juga untuk service lainnya ketika satu service dimodifikasi.
Pendekatan seperti meningkatkan Robustness, membuat sistem lebih tahan terhadap perubahan, dan mempromosikan untuk menggunakan kembali service yang ada.
Registries
Untuk menyederhanakan dan mengotomatisasi mencari layanan yang sesuai, jasa layanan dijaga/dipelihara/didaftarkan pada service registries yang bertindak sebagai daftar direktori.
Service providers mempublikasikan services di registries.
service consumers mencari layanan di registries.
Pencarian dapat dilakukan berdasarkan nama, fungsi layanan, atau proses bisnis properti. UDDI adalah contoh layanan registri.
Quality of Service
Services biasanya memiliki keterkaitan dengan atribut kualitas service. Termasuk atribut seperti keamanan, pesan yang dapat diandalkan, transaksi, korelasi, manajemen, policy , dan persyaratan lainnya. Infrastruktur harus menyediakan dukungan untuk atribut ini.
Attribut dr kualitas service cukup penting dalam sistem informasi yang besar. Dalam web services, attribute dr kualitas service dibungkus oleh spesifikasi WS-*,seperti WS-Security, WS-Addressing, WS-Koordinasi, dll Kualitas dr service juga disediakan oleh ESB.
Composition of Services into Business Processes
Terakhir, dan mungkin yang paling penting, konsep SOA adalah komposisi dari services dalam proses bisnis. Service ini terdiri dalam urutan tertentu dan mengikuti 1 set aturan untuk memberikan dukungan kepada proses bisnis.
Komposisi dari service memungkinkan kita untuk memberikan dukungan bagi proses bisnis secara fleksibel dan relatif mudah. Hal ini juga memungkinkan kita untuk mengubah proses bisnis dengan cepat , karena memberikan dukungan untuk perubahan permintaan/persyaratan dengan lebih cepat dan dengan sedikit usaha.
Untuk komposisi, kita akan menggunakan bahasa yang didedikasikan, BPEL, dan sebuah mesin yang definisi proses bisnis yang akan di eksekusi.
Hanya ketika kita mencapai level dari “service composition” kita dapat menyadari semua manfaat SOA.
The figure bellow shows the architectural view of SOA and positions the above-mentioned concepts:
Let us now fill the technologies into the above picture to understand the connection between SOA concepts and technologies that provide means for their realization. So, it is essential that technologies are used according to the guidelines provided by SOA concepts:
Super post, Need to mark it on Digg
Thank you
Elcorin
you’re welcome.