Simplicity

May 17th, 2010

Karakteristik SOA

Posted by Didit Adipratama in SOA-Service Oriented Enterprise

SOA merupakan suatu perancangan aplikasi dengan menggunakan komponen-komponen yang sudah ada sebelumnya. Aplikasi dibangun secara independen atau modular. Perbedaan SOA dengan Object Oriented Programming yang sebelumnya telah mem-booming, yaitu SOA merupakan komponen atau service yang dibangun dan dapat berinteraksi satu sama lain secara bebas dan lepas atau disebut loose coupled. Dengan demikian, program dapat memanggil service tersebut tanpa memperhatikan lokasi dan platform apa yang digunakan oleh service tersebut. Hal inilah yang membuat sebuah service pada SOA dapat dipanggil oleh service lainnya pada saat run-time. Contohnya pada aplikasi core banking yang menyediakan sebuah service Fund Transfer. Penerapan SOA dapat membuat aplikasi-aplikasi lainnya dapat memanggil service Fund Transfer tersebut tanpa harus tahu lokasi dimana jaringannya dan teknik pemanggilan yang harus digunakan.

Karakteristik lainnya adalah SOA disusun atas 2 hal: Service Interface dan Service Implementation. Service Interface merupakan parameter input/output dan lokasi untuk dapat dipanggil oleh service lainnya. Misalnya, service interface untuk lookup NIM mahasiswa, yang menyatakan bagaimana untuk mendapatkan informasi dari seorang mahasiswa (dari nama, tanggal lahir, atau NIM). Service Implementation adalah logic atau coding dari lookup mahasiswa tersebut dijalankan. SOA tidak tergantung dari bahasa pemrograman apa yang sedang digunakan, tetapi, yang palin penting adalah bagaimana service tersebut dipanggil dan dapat memberikan informasi.

Karakteristik SOA yang terakhir adalah service tersebut harus business oriented.  Maksudnya, setiap service yang akan dijalankan harus melakukan suatu aktiitas bisnis tertentu, mislanya pada Core Banking Customer Lookup, Fund Transfer, Check Inventory, dan sebagainya. Dapat dilihat bahwa hubungan antara SOA dan Web Services sangat erat, dan keberhasilan SOA belakangan ini juga di support oleh tingginya pemakaian web services di pengembang aplikasi.  Walaupun ide tentang SOA telah ada sebelum web services dilahirkan, web services dan SOA saat ini telah menjadi suatu sinergi dan bahkan beberapa kalangan menganggap dengan menggunakan web services maka ia telah menerapkan SOA.

May 17th, 2010

SOA Solution Layering

Posted by Didit Adipratama in SOA-Service Oriented Enterprise

SOA layer

SOA memiliki standarisasi bagan dalam merancang suatu enterprise system dengan menggunakan Global Enterprise Architecture, yaitu sebuah set standarisasi, aturan pokok/principles dan kebijaksanaan/policies yang digunakan sebagai petunjuk dan alat ukur kefektifitan penggunaan Teknologi Informasi/TI didalam konstruksi dan penyebaran aplikasi yang menerapkan business design.

Bagan umum yang digunakan Enterprise Architecture/EA terlihat pada gambar 3 diatas. Bagan ini juga dikenal sebagai SOA Solution Layering, yang menjelaskan bagaimana SOA sebagai services bertindak sebagai provider yang menghasilkan suatu inovasi yang memberikan solusi kepada end-user atau konsumen. Komponen dari SOA Layering terbagi 4, yaitu: operational system, services, business process dan channels. Operational System merupakan Core aplikasi atau Enterprise System yang sudah terbentuk dan digunakan oleh suatu organisasi untuk menjalankan proses bisnisnya. Core aplikasinya dapat terdiri dari berbagai macam platform dengan fungsinya masing-masing.  Sesuai dengan analisa proses bisnis yang akan dibuat, maka pada layer services, dibuat service-service independen yang mempunyai fungsinya masing-masing, untuk menarik input dari output core aplikasi. Contohnya, membuat service yang dapat membaca hasil text dari modul SAP untuk dapat diolah kembali. Dari kumpulan service maka akan terbentuk composite service yang akan membentuk suatu bisnis proses. Dan selanjutnya akan diterjemahkan kedalam interface yang dikehendaki. Semua Layer terhubung oleh Enterprise Service Bus (ESB). ESB merupakan komponen kunci yang menyediakan sarana komunikasi atau penerjemah yang membuat service-service dapat berintegrasi. Lalu diluar system, terdapat Governance yang akan mengatur mengenai business policies dan service contract dalam menjalan proses bisnisnya.

May 17th, 2010

Benefit Implementasi SOA

Posted by Didit Adipratama in SOA-Service Oriented Enterprise

Implementasi SOA pada perusahaan relative membutuhkan biaya yang cukup besar. Akan tetapi, dengan perencanaan yang baik, SOA dapat memberikan keuntungan yang lebih besar. Keuntungan dapat dirasakan dari segi biaya dan waktu, antara lain:

–  Penghematan

Dengan membangun suatu koleksi services, penghematan dapat dimulai. Jika pada proyek yang pertama, waktu dan tenaga yang dihabiskan paling besar, maka proyek selanjutnya, usaha yang dikeluarkan akan makin kecil karena sudah banyak tersedia services sebagai hasil dari proyek sebelumnya yang dapat di-reuse.

–  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, sistem 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.

–  Channel independent

Bisnis berkaitan dengan banyak pihak, Baik pelanggan maupun supplier. Berbagai pihak yang behubungan dengan organisasi 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.

Sesungguhnya apa yang dijanjikan oleh SOA tidak hanya terbatas pada penghematan biaya dan tenaga dari upaya pembangunan aplikasi, namun pada akhirnya adalah terwujudnya suatu organisasi yang mampu dengan cepat mengadaptasi proses-proses bisnis didalamnya agar mampu menjawab tuntutan pasar terkini.

May 17th, 2010

SOA is dead

Posted by Didit Adipratama in SOA-Service Oriented Enterprise

Implementasi SOA banyak ditinggalkan karena masalah biaya investasi yang relative tinggi. Pasar yang menyebabkan harga SOA menjadi tinggi, juga memiliki banyak factor, diantaranya resesi ekonomi yang membuat para CEO membanting stir untuk tidak menggunakan SOA. Para pelaku bisnis akan lebih cenderung mengambil pilihan lain dengan cost relative lebih murah. Vendorpun melihat kesempatan bisnis ini, untuk menciptakan/merenovasi option lain yang mempunyai cost lebih rendah, tetapi memiliki kemampuan seperti SOA, dengan cara memanfaatkan SOA-tools. Suatu perusahaan belum bisa dikatakan sudah menerapkan SOA, jika tidak mengkolaborasikan business process perusahaan dengan Inovasi IT dalam satu path untuk membuat hasil kerja yang lebih powerful dan valuable. Bisa dapat dibayangkan, jika para vendor-vendor tersebut yang memanfaatkan tools SOA tersebut dengan maksimal, dapat memberikan solusi bagi perusahaan dengan cost yang relative murah dan preparation time yang lebih cepat, maka banyak perusahaan lain juga akan menggunakan second opinion ini, sehingga SOA benar-benar ditinggalkan oleh pasarnya. Hal penting lain yang membuat SOA ditinggalkan adalah ROI-nya relative tidak bisa dirasakan dalam waktu yang relative cepat. Besar/kecilnya scope bisnis suatu perusahaan juga berpengaruh pada penerapan SOA. Penerapan SOA akan tidak efektif jika diterapkan pada perusahaan yang cenderung relative kecil atau sampai dengan menengah.

Jika para vendor dan CEO pada saat ini lebih memilih untuk tidak menggunakan SOA, maka banyak para programmer yang direkrut vendor juga akan bisa terpengaruh untuk terfokus kepada second opinion ini. Jadi tidak hanya ditinggal pasar, tetapi para developer bisnis tertentu juga banyak beralih dari SOA ke solusi lainnya. Hal-hal inilah yang menimbulkan & memperkuat pendapat: “SOA is dead”.

Menurut saya, “SOA is dead” itu tidak memiliki arti sesungguhnya yaitu benar-benar hilang, tidak dapat digunakan lagi, dan tidak ada penerusnya. SOA memang akan ditinggalkan oleh para pelaku bisnisnya, baik vendor, konsumen, dan developer, untuk pasar dan waktu tertentu, tetapi Esensi SOA pada akan tetap ada dan terus berevolusi untuk memberikan keturunannya bagi kepentingan IT improvement.

Kurt Cagle menjabarkan bagaimana karekteristik SOA dan menjelaskan kalau para pelaku bisnis SOA akan berjalan ditempat untuk sementara waktu, sedangkan Tjain beropini bahwa “SOA is dead” tidak benar. Dia mengatakan bahwa kata-kata itu hanyalah akronim kalau SOA telah menjadi tidak konsisten. “SOA is dead” hanya dilihat dari para pelaku bisnisnya saja. Tetapi yang sebenarnya adalah SOA akan terus hidup dan terus berkembang.

  • Monthly

  • Binusian Link

  • Meta

    • Subscribe to RSS feed
    • The latest comments to all posts in RSS
    • Subscribe to Atom feed
    • Powered by WordPress; state-of-the-art semantic personal publishing platform.
    • Firefox - Rediscover the web