SOA Architecture
Service Oriented Architecture adalah suatu gaya arstektural dimana terdiri dari service-service dari basic unit aplikasi software yang berdiri sendiri dan meng-automasi satu atau lebih bisnis proses , dan dapat meningkatkan interoperabilitas yakni pertukaran informasi maupun reusability.
Esensi utama dari Service-Oriented Architecture adalah kolaborasi service dalam skala dunia dimana dipublikasikan untuk mengantarkan agilitas bisnis dan fleksibilitas IT. Tujuan ini dapat dicapai tidak hanya mengkaji arsitektur service dari sisi teknologi perspektif maupun protokol web service saja, tetapi juga membutuhkan kreasi dari SOE Service Oriented Environment.
Karakteristik Service Oriented Architecture
Service di dalam SOA didefinisikan sebagai unit software aplikasi yang menyediakan satu bisnis proses. Service – service mempunyai karakteristik yang harus diperhatikan, sebagai berikut :
ý Coarse Granularity
Menggambarkan ukuran dari komponen – komponen yang diperlukan untuk membangun suatu system.
ý Interface VS Implementasi
Interface dapat menyederhanakan pengguna bisnis untuk menggunakan service , karena user tidak harus mengetahui detail implementasi yang terjadi.
ý Kontrak
Sebagai bukti obligasi antara service provider dengan pengguna bisnis. Kontrak dapat termasuk ekspektasi service , kemampuan , ketersediaan , biaya dan support.
ý Loose Coupling
Design service harus memperhatikan faktor fleksibilitas dan ketidaktergantungan satu komponen dengan yang lainnya.
ý Lifecycle Indepedence
Setiap dari software provider dan service component harus dapat beroperasi dalam siklus hidup yang terpisah.
ý Invokable Interface
Service interface harus dapat diakses baik secara lokal maupun remote.
ý Communication protocol
Pemilihan protokol tidak dapat dibatasi oleh perilaku service itu sendiri maupun pada saat pengembangan melainkan pada saat waktu yang berjalan(run- time )
Beberapa prinsipal kunci mengenai Servce-Oriented:
ý Service adalah elemen yang penting , web service yang mendukung di dalamnya merupakan serangkaian standarisasi protokol dimana service itu dapat dipublikasikan , ditemukan , dan digunakan .
ý SOA tidak hanya sekedar service arsitektur dari sudut pandang teknolodi tetapi juga dari kebijakan – kebijakan ( policy ) dan frameworks dimana dapat menjamin service yang “tepat” yang akan tersedia dan dapat dipakai.
ý Dengan Service-Oriented Architecture diharuskan mempunyai paling sedikitnya dua proses yang terpisah untuk pengembangan dan pengguna.
Service Oriented Architecture Maturity Model
Maturity model dibawah ini menggambarkan diagram yang didiskusikan antara service provider dan pengguna bisnis mengenai kemampuan dan keuntungan penerapan SOA di dalam organisasi.
Keuntungan Service Oriented Architecture ( SOA )
#Universal Automation
Automasi logika bisnis untuk visi organisasi yang dapat diaplikasikan secara konsisten terhadap fungsi-fungsi bisnis sehingga meningkatkan agilitas organisasi
#Reusable
Mediasi service menyediakan kebutuhan central infrastruktur yang mempengaruhi QOS ( Quality Of Service) seperti keamanan dan kemampuan service , sehingga dapat mengurangi biaya pengembangan di setiap pengembangan yang terjadi dalam bisnis unit .
#Abstracted
Sisi implementasi service dapat di-abstraksi melalui back-end proses ,sehingga service tetap dapat berjalan dan berkembang secara independen.
#Published
Tidak ada service yang dapat di publikasikan tanpa persetujuan dari quality-assurance ,maka dari itu fungsionalitas dari service tersebut sudah dapat dikatakan tepat.
#Platform Independence
Memungkinkan implementasi service dalam lebih dari 1 platform yang berbeda ., sehingga memunculkan kesempatan untuk dapat digunakan kembali.
#Location Independence
Virtual service mempunyai kemampuan untuk menyembunyikan lokasi service yang sebernarnya dari service customer. Memungkinkan untuk memindahkan implementasi service tanpa mengganggu pengguna service.