Archive for the Category »Management «

About Services Part 2

Dari tulisan sebelumnya,
Service di katakan mengkapsulkan/membungkus logika yang menjadi suatu pekerjaan yang akan dijalankan oleh suatu proses, juga terdiri dari beberapa langkah.

Service juga di katakan memiliki relasi dengan service lainnya dan di perantarai oleh service description

Pada artikel ini saya ingin topik lanjutan dr ebook Thomas Erl yang saya baca , yaitu sbb:

Services Communicate

services_communicate

Setelah service berkomunikasi dengan mengirimkan message, mk service tersebut kehilangan kontrol akan message tsb (what happens to the message thereafter).
Karena hal inilah, message perlu seperti service dapat bebas berdiri sendiri / (autonomous).
Karena hal itu, sebuah message dapat dilengkapi dengan kecerdasan untuk bs mengurus bagian processing logic nya sendiri.

Service yang menyediakan service description dan ber komunikasi via messages membentuk sebuah arsitektur dasar/sederhana.
Sejauh ini, arsitekture tesebut, tampak sama dengan arsitektur lama yang disalurkan, yang mensuport messaging dan pembagian interface dr processing logic
Perbedaannya adalah 3 komponen inti yang di design yaitu :

  • Services
  • Descriptions
  • Messages

Design Services

services_design

Aspek2 dr prinsip Service-Oriented untuk design dan definisi:

  • Service yang bersifat bebas(loosely Coupled) , service yang memelihara sebuah relasi dimana ketergantungan diminimalisasikan
  • Service Contract, service yang melekat pada sebuah persetujuan komunikasi, yang umumnya didefinisikan oleh satu atau lebih service description dan oleh document-document berkaitan
  • Service autonomy yang memiliki control penuh akan logika yang dikapsulkan.
  • Service abstraction diluar dr apa yg dideskripsikan di service contract, service menyembunyikan logika dari manapun.
  • Service reusability, service ini dibagi kedalam beberapa service dengan maksud untuk dapat digunakan ulang
  • Service composability, koleksi dari service-service dapat di
    kordinasikan dan dirakit menjadi gabungan service.
  • Statelessness Service,
    Service meminimalkan ketahanan akan informasi spesifik untuk sebuah aktivitas
  • Kemampuan menemukan Service (Service discoverability) ,
    service yang didesign untuk mengeluarkan deskripsi sehingga service yang dicari dapat ditemukan dan ditafsirkan via discovery mechanisms yang tersedia.

Built Services

Seperti yang sudah disebutkan di post saya sebelumnya, syarat service oriented dan macam2 abstrak model SOA sudah ada sebelum WEb Service “tiba” -> diluncurkan 🙂
Bagaimanapun juga tidak ada 1 pun kemajuan teknologi yang sangat lengkap dan sukses ,dalam mendaftarkan SOA tanpa web service.
Tapi sekarang ini semua perusahaan platforms sekarang mendukung pembuatan dari solusi service oriented dan kebanyakan melakukannya dengan memahami bahwa SOA menyediakan dukungan didasari dengan menggunakan web service.
Oleh karena itu, sementara ini kita benar2 mengakui bahwa untuk dapat mencapai SOA tidak memerlukan web service.

CMIIW 😀

Sincerely yours,

Rudy Yulianto

About Services

Saya mengambil bahan pembuka, dari sebuah artikel blog yang mengatakan sbb :

Melihat tren para vendor besar, tren ke arah SOA juga telah terlihat nyata. Masing-masing memiliki jagoannya masing-masing. Oracle, IBM, dan Weblogic. Ini artinya, dengan investasi besar di SOA, mereka percaya pada SOA sebagai masa depan seperti dulu Oracle berjargon, “Because we believe in Java”. Di dunia open source pun, salah satu vendor terbesarnya, Apache Software Foundation, juga telah membuat tool-tool SOA-nya.

Jadi, apakah kita akan masih berkutat pada fanatisme sempit macam Java versus MS .net?
Tantangan ke depan kita adalah bagaimana membuat dua platform ini berkomunikasi dan bekerja sama dengan baik. Salah satu medianya adalah SOA. Sudah saatnya kita ngomong tentang Web Service, BPEL, atau ESB (Enterprise Service Bus). Untuk masa depan.

SOA = Service Oriented Architecture.
Apakah yang di maksud Service di sini, saya ingin mencoba menggali lebih dalam mengenai service.
Douglas K. Barry yang mengatakan Service merupakan sebuah fungsi yang di definisikan dengan baik yang tidak bergantung pada keadaan service yang lain.

Dari Ebook Thomas Erl yang saya baca ada beberapa penjelasan mengenai service yang di bagi kedalam beberapa bagian :

Service Mengkapsulkan( encapsulate ) Logika

Encapsulate Logic

Focus kepada service ini bisa menjadi kecil atau besar, karena itu ukuran / ruang lingkup dari logika yang di wakili oleh service dapat berubah2. Logika Service dapat meliputi logika yang di sediakan oleh service lainnya.

Solusi yang bersifat otomatis berjalan, terdiri dari service-service, dimn setiap service dapat meng-kapsulkan(encapsulate) suatu pekerjaan yang di tampilkan / di jalankan oleh suatu proses atau sub-proses yang juga terdiri dari beberapa langkah.

Relasi Service

Encapsulate Relate

di dalam SOA, service dapat di gunakan oleh service lainnya atau program lainnya. kita perlu mengetahui dan sadar akan inteaksi dari service-service tsb
Kesadaran ini tercapai saat kita menggunakan Service Description

sebuah Service Description di dalam Service merupakan format dasar terpenting untuk mendirikan/menentukan nama service, hasil yang diharapkan(passing parameter)/dikembalikan(return value),

Pola service yang menggunakan Service Description terbentuk sebagai (menghasilkan) relasi yang di klasifikasikan sebagai penggabungan sesuatu yang memiliki sifat bebas (loosely Coupled)

dalam suatu service untuk berinteraksi dan menyelesaikan sesuatu yang berarti, mereka perlu saling bertukar informasi. sebuah komunikasi dalam framework, memungkinan untuk melayani mereka (service-service tersebut) untuk dapat memiliki hubungan yang bersifat bebas(loosely Coupled).
Sehingga framework seperti itu sangatlah diperlukan.

CMIIW 😀

Sincerely Yours,

Rudy Yulianto

Service Oriented Analogy

umumnya di suatu perusahaan yang berorientasi kepada pelayanan menyediakan pelayanan, dimana pelayanan tsb bisa digunakan oleh banyak konsumennya.
umumnya bisnis di perusahaan ini meliputi komunitas bisnis –> mungkin mksdnya ‘proses bisnis’
Masuk akal, jika komunitas bisnis dari perusahaan tsb, tidak di pakai oleh sebuah bisnis outlet (jika di artikan sebagai ‘saluran’ atau ‘bagian yang lbh kecil’)
Dengan menguraikan komunitas bisnis menjadi lebih khusus (menjadi 1 outlet ), mk kita mencapai sebuah lingkungan dimana ada bbrp outlet yang dapat dijalankan(didistribusikan).

penggabungan outlet dengan architecture, mk dalam konotasi teknis disebut “Service-Orientation”.

Sehingga “Service-Oriented Architecture” adalah syarat yang mewakili model dimana ada automation logic dibagi menjadi lebih kecil, menjadi unit-unit logika–> dalam SOA dikenal sebagai SERVICE.
Umumnya unit-unit tersebut mencakup bagian/potongan besar dari business automation logic.
Masing-masing unit tersebut bisa di jalankan (didistribusikan).

Dengan pembagian ini, kita dapat menghindari sebuah model yang memiliki hubungan/koneksi yang padat, dmn dpt menghasilkan ketergantungan juga.

Dengan mengizinkan bisnis2 mengurus service2 nya sendiri,secara tidak langsung kita juga mengizinkan service2 tersebut, untuk berkembang dan bertumbuh secara tidak bergantung dengan service lainnya. 😀

Meskipun kita mengizinkan service2 tsb untuk berkembang di antara outlet, kita kita msh perlu memastikan mereka setuju untuk mengikuti perjanjian dasar. Contoh analogy nya : kita membuat code untuk 1 fungsi , berdasarkan parameter yang ada di fungsi tsb, contoh lainnya, keseragaman pekerja berbicara dengan bahasa yang sama kepada para pelanggan.

Kesamaannya, SOA mengizinkan setiap unit logika2 (proses bisnis) untuk tidak terisolasi/tergantung dengan lainnya.
Unit2 logika ini, perlu menyesuaikan dengan prinsip2(standarisasi) yang mengizinkan mereka untuk di kembangkan secara bebas (tidak tergantung 1 dengan yang lainnya)

CMIIW 😀

Sincerely yours,

Rudy Yulianto

Category: SOA  Tags: ,  2 Comments
PERTAMA X TTNG SOA

dari referensi ebook thomas erl yang saya baca (IMHO),
SOA adalah sebuah konsep.
syarat SOA : bisa ada setiap waktu, dapat digunakan di keadaan yang berbeda serta tujuan yang berbeda pula.

keberadaan SOA tersebut mewakili sebuah pendekatan yang memfocuskan pada suatu pemisahan. What this means ? 😀
pemisahan di sini,mngkn mengartikan sebuah proses yang di pisah2.
dimana diperlukan logika yang dapat menyelesaikan suatu problem yang dapat membuat nya (bisnis tsb) dibagun lebih baik lagi, carried out (mngkn mksdnya bs di modify), dimana pemisahan ini dimatangkan/didalami ke dalam suatu kumpulan yang lebih kecil, menjadi bagian2 lain yang saling berkaitan. 🙂

Pendekatan ini lebih mengutamakan teknologi dan solusi yang dapat di jalankan secara otomatis yang dapat di gunakan untuk memecahkan macam2 problem.

CMIIW 😀

Sincerely yours,

Rudy Yulianto

Category: SOA  Tags:  Leave a Comment