Definisi

Service Oriented Architecture (SOA) adalah suatu pendekatan arsitektur system yang merepresentasikan proses bisnis menjadi bentuk service yang lebih efisien dan tingkat ketergantungan yang lebih rendah satu sama lain.

Service Oriented Archicteture (SOA) adalah suatu cara perancangan aplikasi dengan menggunakan komponen komponen atau pelayanan yang sudah ada dengan kata lain suatu aplikasi dibangun secara modular.

Yang membuat SOA berbeda adalah komponen atau service dibangun dan berinteraksi satu sama lainsecara bebas dan lepas (loose coupled).

Dengan loose coupled sebuah service dapat dipanggil oleh program atau service lainnya tanpa program pemanggil.berada

MSDN menyatakan SOA sebagai

The policies, practices, frameworks that enable application functionality to be provided and consumed as sets of services published at a granularity relevant to the service consumer. Services can be invoked, published and discovered, and are abstracted away from the implementation using a single, standards-based form of interface. (CBDI)

IBM menyatakan SOA sebagai

Service Oriented Architecture (SOA) is a business-centric IT architectural approach that supports integrating your business as linked, repeatable business tasks, or services. With the Smart SOA approach, you can find value at every stage of the SOA continuum, from departmental projects to enterprise-wide initiatives.

Wikipedia.org menyatakan SOA sebagai

service-oriented architecture (SOA) as a group of services that communicate with each other. The process of communication involves either simple data-passing or two or more services coordinating some activity. Intercommunication implies the need for some means of connecting two or more services to each other.

Dari berbagai definisi diatas kita bisa melihat bahwa ada suatu penekanan tertentu atas service. Disini bisa kita tarik kesimpulan bahwa service akan menjadi kunci dari SOA. Semua perusahaan dan Organisasi pemerintah pada dasarnya memberikan servis contohnya :

ü  Bank tabungan, kartu kredit, box penyimpanan pinjaman

ü  Asuransi, asuransi mobil, rumah, keshatan, kecelakaan

ü  Kepolisian penegakan hokum, pendidikan masyarakat

Servis dapat berupa :

ü  Lewat manusia ( Teller pada.bank )

ü  Selt service (mesin ATM)

ü  Antar  system (transaksi antar bank)

Dari definisi di atas, maka sebuah servis yang diciptakan dengan prinsip SOA dan didukung oleh sistem TI harus mendukung secara langsung servis yang diberikan perusahaan kepada customer, client, partner, masyarakat dan organisasi lain.
Awal tahun 2000-an, ketika teknologi Web Services mulai diperkenalkan, perkembangan SOA sebagai metode pengembangan infrastruktur TI mulai berkembang. Ini dimungkinkan karena Web Services merupakan teknologi yang mampu memfasilitasi pengiriman pesan antarlayanan tanpa terikat platform tertentu.
Spesifikasi awal SOA ini disebut Simple Object Access Protocol (SOAP).

Pencetusnya adalah Microsoft, dengan nama produknya BizTalk. Spesifikasi SOAP sekarang dikelola oleh W3C, badan yang mengembangkan HTML dan HTTP. W3C merupakan lembaga yang bertanggung jawab terhadap teknologi yang mendukung Internet.

Ke depan, diprediksi, SOA akan menjadi standar teknologi baru dan siap mengganti teknologi yang ada sebelumnya.6 Lembaga riset Gartner memproyeksikan, pada 2010 SOA digunakan di lebih dari 80% aplikasi operasional baru yang penting dan juga dalam proses bisnis.

Sementara itu, IDC memperkirakan pada 2010, belanja perusahaan untuk mengadopsi

SOA ini akan mencapai US$ 33,8 miliar.

Pada dasarnya, SOA adalah arsitektur teknologi informasi yang menitikberatkan pada layanan (services), dimana komponen-komponen peranti lunak dapat digunakan kembali (reused) dan dipadukan kembali (recombined) dengan fleksibel.
Di lingkungan arsitektur peranti lunak berbasis SOA, yang memanfaatkan berbagai mekanisme standar seperti misalnya eXtensible Markup Language (XML), komponen-komponen peranti lunak itu tampil di jaringan menawarkan services, yang kemudian dimanfaatkan aplikasi-aplikasi lainnya. Alhasil, bagi departemen TI, cara ini lebih produktif.

Kini mereka bisa dengan mudah mengubah atau membangun services baru tanpa harus  membongkar berbagai jenis aplikasi satu per satu. Filosofi desain peranti SOA memaksa perusahaan untuk membuat reusable service, ketimbang membuat satu aplikasi utuh. Aspek reuse atau penggunaan kembali di dalam SOA ini berdampak pada penghematan biaya, karena para pengembang peranti lunak bisa meminimalkan kode-kode software yang berlebihan, selain waktu pengembangan software juga lebih cepat. Hal ini berarti pula perusahaan bisa lebih siap merespon perubahan kebutuhan

Life Cycle dari Service Oriented Architecture (SOA)

IBM menyatakan, ada 4 tahap besar dalam life-cycle SOA. Ke empat tahap ini pun dapat diperinci lagi sebagai berikut :

Plan
Fokus pada kebutuhan perusahaan dan tentukan area-area yang membutuhkan perubahan. Tahapan rinci dalam Plan :
• Committing to a strategy for SOA within the overall IT strategy
• Explicitly determining the level of IT and SOA capabilities
• Articulating and refining the vision and strategy for SOA
• Reviewing current governance capabilities and arrangements
• Developing a governance plan

Define
• Establishing or refining a SOA Center of Excellence (COE)
• Defining additional capabilities required, such as upgrades to the IT infrastructure
• Agreeing on policies for service reuse across lines of business
• Putting funding mechanisms in place to encourage this reuse
• Establishing mechanisms to guarantee service levels

Enable
• Deploying new and enhanced governance arrangements such as: Tracking the decision making processes; Enabling the policy infrastructure; and Providing the monitoring tools
• Deploying technology to discover and manage assets
• Communicating and educating expected behaviors and practices within both the business and IT decision-making communities
• Enabling the policy infrastructure

Measure
• Monitoring compliance with policies and governance arrangements, such as service level agreements (SLAs), reuse levels, and change policies
• Analyzing IT effectiveness metrics

Service Oriented Archicteture mempunyai business benefit

Kecepatan

Dalam SOA proses bisnis dipecah dan disederhanakan dalam bentuk service yang lebih kecil. Ketergantungan yang ada antar service harus diminimalisir. Sehingga apabila terjadi perubahan pada suatu proses bisnis cukup service yang berkaitan saja yang mengalami perubahan. Tidak perlu seluruh sistem. Dengan begini system dapat merespon perubahan dengan cepat

Real time responsive

Dalam service service tersimpan business rules dan batasan batasan dalam bisnis dan service service ini disimpan dan dikelola dalam sebuah server aplikasi yang disebut ESB. Sehingga berbagai jenis aplikasi dapat mengakses business rules tersebut. Apabila terjadi suatu perubahan terhadap business rules, ESB akan mengelolanya secara otomatis sehingga business rules yang baru akan berlaku saat itu juga.

Penghematan

Meskipun pada awalnya implementasi SOA membutuhkan biaya yang besar, dengan implementasi SOA memungkinan pengembangan sistem yang terpusat. Sehingga ada banyak resource yang bisa dikurangi. Dengan demikian akan mengurangi biaya juga.

Servise Oriented Archicteture mempunyai Technical benefit

Channel independent

Bisnis berkaitan dengan banyak pihak, Baik pelanggan maupun supplier. Berbagai pihak yang behubungan dengan orakhirganisasi tentu saja memungkinkan adanya berbagai jenis aplikasi yang berbeda-beda. Dengan adanya service dan ESB, memungkinkan untuk berbagai aplikasi tersebut untuk mengakses business rules yang telah kita definisikan. Sehingga pihak-pihak yang berkaitan dengan organisasi tidak tergantung lagi terhadap suatu aplikasi tertentu yang telah kita definisikan.

Waktu pengembangan yang lebih singkat

Dalam SOA, bisnis proses yang dipecah dalam bentuk service yang lebih kecil memungkinkan perubahan dan pengembangan pada service yang tertentu saja. Karena pengembangan dilakukan secara terfokus, waktu yang dibutuhkanpun menjadi lebih sedikit.

Mengurangi duplikasi

Service dalam SOA dikelola dalam server aplikasi yang disebut ESB. Karena service dikelola secara terpusat, hal ini akan mengurangi kemungkinan adanya duplikasi sistem. Selain itu, bentuk service yang memungkinkan reuseability juga mengurangi adanya fungsi yang sama yang ada didalam sebuah sistem.

Karakteristik dari SOA

  1. Service have platform independent, selt describing interfaces (XML)
  2. Messages are formally defined
  3. Service can be discovered
  4. Service have quality of service characteristics defined in policies
  5. Service can be provided on any platform

Hubungan antar Service (coupling)

  • Tingkat ketergantungan tinggi ( Tight Coupling)

Disatu sisi permorfa baik namun akan membuat kesulitan pada maintenance problems

  • Tingkat ketergantungan rendah (Loose Coupling)

Serrvice provider mendefinisikan dan mempublikasikan service mereka menggunakan bahasa yang standar. Interface mendefinisikan metode metode yang dapat diinvoke oleh service consumer

Pemicu utama implementasi SOA terletak dalam layanan yang kompetitif dan integrasi yang berkembang, baik di data maupun tingkatan aplikasi. Pengembangan layanan SOA yang disebutkan oleh para responden termasuk mengurangi waktu dan biaya dalam memberikan layanan, membuat layanan bisa dibagi di seluruh perusahaan dan lebih fleksibel serta bisa digunakan ulang.

Dalam analisis Springboard, IBM tetap memimpin vendor SOA di Asia, diikuti pemain SOA lainnya seperti Microsoft, BEA, HP, SAP, Tibco, dan Oracle.

Layanan

  • Sebuah komponen yang mampu melakukan sebuah tugas, sebuah lalyanan WSDL : sekumpulan dari titik titik akhir (W3c)
  • Sejenis kemampuan yang dideskripsikan menggunakan WSDL (CBDI)

Definisi Layanan

Sebuah kendaraan dimana kebuuthan atau keinginan pelanggan dipuaskan sesuai dengan kontrak yang disepakati (implisit atau eksplisit) yyang mencakup service Agreement, Function Offerend dan seterusnya.

Pemenuhan Layanan

Sebuah contoh dari sebuah eksekusi kemampuan

Web Service

  • Sebuah system software yang dirancang untuk mendukung interaksi mesin ke mesin yang memudahkan operasi didalam sebuah jaringan. Ia memiliki sebuah antar muka yang dideskripsikan dalam sebuah format yang dapat diproses oleh mesin (WSDL specific). Sistem lainnya berinteraksi dengan Web service dengan cara yang ditentukan oleh penjelasannya dengan menggunakan pesan pesan SOAP, biasanya dengan menggunakan  HTTP dengan serialisasi XML bersama dengan standard lain yang terkait dengan Web (W3C)
  • Sebuah antarmuka yang dapat deprogram ke sebuah kemampuan  yang sesuai dengan protocol protocol WSnn (CBDI)

Banyak karakteristik SOA ini diilustrasikan didalam sebuah laporan CBDI terbaru yang membandingkan Web services yang dipublikkasikan oleh dua perusahaan dotcom sebagai altrenatif bagi akses berbasis browser mereka yang normal, yang memungkinkan pengguna yang menyertakan fungsionalitas yang ditawarkan ke dalam aplikasi aplikasi mereka sendiri.Dalam sebuah kasus sudah terbukti bahwa web services merupakan layanan bisnis yang penting sebagai contoh mengijinkan Pengguna layanan untuk melihat harga, membuat daftar atau menambahkan sebuah item ke tas belanja

Disisi lain layanan organisasi lainnya cukup berbeda, ia mengimplementasikan sebuah API yang bertujuan umum yang menyediakan akses Create, Read, UP date and Delete (CRUD) ke basis data mereka melalui web services. Sementara tak ada yang salah dengan implementasi yang satu ini dibutuhkan agar pengguna  memahami model dasar dan mentaati aturan aturan bisnis untuk memastikan bahwa integritas data dilindungi. WSDL tidak memberitahu apa apa kepada anda tentang bisnis atau entitasnya. Ini adalah sebuah contoh web service sebelum SOA.

SOA tidak hanya sebuah arsitektur layanan yang dilihat perspektif teknologi,namun kebijakan, teknik dan framework yang mana kita memastikan layanan yang tepat yang disediakan dan dikonsumsi.

Sebuah framework untuk memahami apa yang mendasari sebuah layanan yang baik. Prinsip dari Orientasi Layanan yang mengijinkan kita untuk menetapkan kebijakan pengukuran kinerja dll

Kita dapat melihat dua set yang jelas :

  • Prinsip yang terkait dengan antarmuka

Kemampuan untuk tidak bergantung pada teknologi, standarisasi dan kemapuan yang dapat digunakan

  • Prinsip perancangan

Ini lebih tentang mencapai layanan yang berkualitas, memenuhi kebutuhan sisnis yang nyata dan membuat layanan mudah digunakan dapat diadaptasi secara tidak terpisah dan mudah dikelola

Yang menarik  dari set kedua telah menunjukkan kebeberapa perluasan oleh organisasi yang telah mendirikan arsitektur arsitektur komponen yang matang.

Sementara komponen komponen berkualitas tinggi telah diciptakan mungkin untuk aplikasi aplikasi inti tertentu dimana ada sebuah kasus yang jelas untuk penggunaan kembali dan pembagian yang tersebar luas secara lebih umum sulit untuk membuat apa yang tlelah dirasakan dan biaya investasi dengan sebuah ROI jangka pendek.

Tabel 1. Memperlihatkan prinsip dari rancangan layanan yang baik yang dimungkinkan oleh karakteristik Web service ataupun SOA

Diaktifkan oleh

Web Service

Netral Teknologi Kebebasan platform titik akhir
Terstandard Protokol – protocol standard
Dapat digunakan Memungkinkan penemuan dan penggunaan otomatis
Diaktifkan oleh SOA Dapat digunakan kembali Kegunaan layanan tidak digunakan kembali dengan menyalin kode / implementasi
Diabstraksi Layanan diabstraksi dan diimplementasi
Dipublikasi Tepat fungsionalitas spesifikasi antarmuka layanan yang dipublikasi, bukan implementasi
Formal Kontrak formal antara kewajiban tempat titik akhir pada penyedia dan pengguna
Relevan Fungsionalitas yang ada pada sebuah granula ritas yang dikenali oleh pengguna sebagai sebuah layanan yang berarti.

Jika prinsip yang dirangkum dalam tabel 1 sesuai,kita mendapatkan beberapa keuntungan yang menarik :

Ada sinkronisasi yang nyata antara perspektif bisnis dan implementasi TI

Selama bertahun tahun, orang orang bisnis belum benar benar memahami arsitektur  TI  Dengan layanan yang dirancang dengan baik kami dapat meningkatkan komunikasi secara radikal dengan bisnis dan tentu saja bergerak diluar jajaran dan secara serius mempertimbangkan perbedaan proses bisnis dan TI.

Sebuah layanan yang dibentuk dengan baik memberi kita sebuah unit manajemen yang terkait dengan penggunaan bisnis

Pemisahan atas ketentuan layanan member kita dasar pemahaman atas biaya siklus hidup dari sebuah layanan dan bagaimana itu digunakan didalam bisnis

This entry was posted in Uncategorized. Bookmark the permalink.