Prinsip – Prinsip Service Orientation
Pendekatan Service Oriented Architecture (SOA) tidak memiliki prinsip – prinsip yang baku digunakan untuk pengembangan SOA tersebut. Beberapa prinsip yang seringkali digunakan terkait dengan pendekatan SOA terdapat pada pembahasan di bawah ini (Thomas Erl, 2008, p290-310):
i. Prinsip 1 : Service dapat digunakan kembali (Reusability)
Pengembangan sistem yang menggunakan pendekatan SOA, service dirancang secara khusus untuk mendukung penggunaan kembali sesuai dengan kebutuhannya.
ii. Prinsip 2 : Service merupakan formal specifation
Service tidak membutuhkan suatu pembagian apa pun di dalam pengembangan yang menggunakan pendekatan SOA untuk dapat berinteraksi dengan service. Service membutuhkan sebuah kontrak yang formal yang dapat mendeskripsikan setiap service yang telah ada dan menentukan persyaratan yang dibutuhkan pada pertukaran informasi yang terjadi.
iii. Prinsip 3 : Service merupakan loosely couple
Service secara khusus pada pendekatan SOA dirancang untuk dapat berkomunikasi dengan antar service tanpa perlu saling ketergantungan.
iv. Prinsip 4 : Inti sari service berdasarkan logika
Satu – satunya bagian dari service yang terlihat di dunia luar pada penerapan pendekatan SOA merupakan hal – hal yang ditampilkan melalui kontrak service tersebut. Logika dasar yang melampui hal tersebut dinyatakan ke dalam deskripsi yang terdiri dari kontrak yang tidak nyata dan tidak relevan dengan permintaan dari service tersebut.
v. Prinsip 5 : Decomposition Service
Penggunaan SOA menyebabkan service dapat menyusun service yang lain. Hal ini memungkinkan logika yang dapat digambarkan pada tingkat granularity yang berbeda dan mempromosikan penggunaannya kembali serta penyusunan dari inti sari yang berada pada layer.
vi. Prinsip 6 : Service bersifat otonomi
Logika yang menggunakan pendekatan SOA dipengaruhi oleh sebuah service yang diletakan pada sebuah batasan yang tidak dapat dilihat. Service tersebut akan mengontrol batas tersebut dan untuk mengeksekusinya tidak perlu bergantung dengan service lain.
vii. Prinsip 7 : Service bersifat stateless
Service yang berbasiskan SOA tidak harus membutuhkan pengaturan informasi state. Hal ini dikarenakan state tersebut dapat menghalangi kemampuan service untuk bergabung atau berintegrasi.
viii. Prinsip 8 : Service tidak terdeteksi
Service yang dirancang harus dapat memungkinkan deskripsi mengenai diri service sendiri di dalam sistem yang telah menerapkan SOA untuk dapat menemukan servicenya tersebut dan dapat dimengerti oleh manusia dan pemohon service tersebut yang dapat menggunakan logika dalam service tersebut.