Translate

Sunday, August 7, 2016

Middleware



I.1        Middleware

Dalam konteks komputasi terdistribusi, definisi middleware adalah software layer yang berada antar sistem operasi dan aplikasi di setiap sistem.
Karena dipicu oleh semakin berkembangnya aplikasi berbasis jaringan, teknologi middleware menjadi semakin penting. Teknologi ini menjangkau domain yang sangat luas, meliputi distributed objects and components, message-oriented communication, dan mobile application support.
Perusahaan dan organisasi mulai membangun system informasi berskala besar dengan menggabungkan aplikasi-aplikasi independen yang sudah ada, dan digabungkan dengan  pengembangan aplikasi baru. Proses integrasi berkaitan dengan aplikasi warisan dari sistem lama. Aplikasi warisan hanya dapat digunakan melalui antarmuka yang spesifik, dan tidak dapat dimodifikasi. Pada banyak kasus, besarnya biaya tulis ulang aplikasi warisan adalah penghalang utama.  
Jumlah sistem yang semakin bertambah terdiri atas sejumlah peralatan yang terhubung oleh jaringan, dan masing-masing peralatan memberikan fungsi yang melibatkan baik interaksi lokal dengan dunia nyata dan interaksi secara remote dengan peralatan lain pada sistem. Hal ini meliputi jaringan komputer, sistem telekomunikasi, unit uninterruptible power supply dan unit manufaktur terdesentralisasi.
User berinteraksi dengan aplikasi internet melalui berbagai macam peralatan dengan karakteristik dan kemampuannya beragam. Antara PC, smartphone dan PDA, bandwidth yang bervariasi, kemampuan pemrosesan lokal, kapasitas layar, kemampuan menampilkan gambar berwarna sangat beragam. 

I.2        Fungsi Middleware

Pada contoh kasus diatas, aplikasi menggunakan software perantara (intermediate software ) yang berada diatas sistem operasi dan protokol komunikasi untuk melakukan fungsi fungsi berikut ini :
·         Menyembunyikan distribusi, seperti pada kenyataanya aplikasi terdiri dari banyak bagian yang berjalan pada lokasi yang terdistribusi.
·         Menyembunyikan heteroginitas berbagai macam komponen hardware dan sistem operasi serta protokol komunikasi.
·         Memberikan antarmuka yang uniform, standar dan berlevel tinggi pada developer aplikasi dan integrator sehingga aplikasi mudah disusun, digunakan kembali, dipindahkan dan dan dioperasikan.
·         Memberikan seperangkat layanan standar untuk melakukan berbagai fungsi yang umum, untuk menghindari duplikasi kerja dan memfasilitasi kolaborasi antar aplikasi
Layer software intermediate ini terkenal dengan nama yang umum yaitu middleware.
Peranan middleware adalah mempermudah pembuatan aplikasi, dengan menyediakan abstraksi pemrograman yang umum, dengan membungkus keberagaman dan distribusi pada hardware dan sistem operasi dan dengan cara menyembunyikan detail pemrograman low-level.


I.3        Desain Middleware

Membuat software menjadi sebuah komoditas dengan membangun sebuah industri dari komponen yang reusable adalah menjadi tujuan pada awal ilmu rekayasa perangkat lunak. Sementara itu, kemajuan penting telah dicapai, hal ini tetap menjadi tantangan jangka panjang.
Fungsi middleware adalah untuk menjadi mediasi interaksi antara komponen aplikasi, atau antara aplikasi. Karena itu isu arsitektural menjadi peran utama dalam mendesain middleware. Arsitektur berhubungan dengan organisasi, struktur keseluruhan, dan pola komunikasi untuk aplikasi maupun middleware itu sendiri.
Disamping aspek arsitektur, masalah utama desain middleware berkaitan dengan berbagai macam aspek sistem terdistribusi. Setiap sistem middleware bergantung pada layer komunikasi yang memungkinkan berbagai bagian sistem beroperasi bersama. Sebagai tambahan, fungsi komunikasi disediakan oleh middleware untuk aplikasi,  dan entitas komunikasi dapat memberikan peran yang berbeda seperti client-server atau peer-to-peer. Middleware memberikan model interaksi yang berbeda (synchronous invocations, asynchronous message passing, koordinasi antara objek yang dibagi-pakai) yang tergabung dalam pola yang berbeda.  

I.4        Contoh Middleware

Contoh aplikasi middleware antara lain:
  • Ice—A Modern Alternative to CORBA
  • ObjectWeb - Open-Source Middleware
  • JBoss - Professional Open-Source Java Middleware
  • PrismTech OpenFusion CORBA Middleware
  • IBM Websphere MQ
  • Microsoft BizTalk Server
  • Oracle Fusion Middleware
  • RoboSuite by Kapow Technologies
  • Coridan - an Open-Source solution
  • Middleware Xbox Website
  • Clinical Laboratory Middleware - Instrument Manager
  • SkyBoard - Distributed Data Management Platform
  • NDDS - Real-Time Publish Subscribe using the Network Data Distribution Service

I.5        Tantangan Middleware

Desainer middleware di masa yang akan datang akan menghadapi beberapa tantangan:
·         Sistem middleware mengandalkan mekanisme intersepsi dan indireksi yang menyebabkan pengurangan performa. Middleware beradaptasi dengan cara memperkenalkan indireksi tambahan yang membuat situasi menjadi semakin buruk.
·         Aplikasi menjadi semakin terhubung dan saling bergantung, jumlah objek, user dan peralatan cenderung bertambah. Hal ini menambah permsalahan skalabilitas komunikasi dan algoritma manajemen objek dan menambahkan kompleksitas administrasi
·         Ubiquitous computing adalah visi masa depan yang menambah jumlah peralatan yang ditambahkan pada berbagai macam objek fisik yang ikutserta dalam komunikasi global. Mobilitas dan konfigurasi ulang yang dinamis akan menjadi feature dominan, membutuhkan adaptasi permanen aplikasi.
·         Mengelola aplikasi besar yang heterogen, terdistribusi luas, dan evaluasi permanen menimbulkan banyak pertanyaan seperti observasi konsisten, keamanan, merupakan begaining antara otonomi dan interdependensi untuk subystem berbeda., definisi dan implementasi kebijakan resource.

No comments:

Post a Comment

silahkan membaca dan berkomentar