Dalam dunia teknologi informasi, terminologi middleware adalah istilah umum dalam pemrograman komputer yang digunakan untuk menyatukan, sebagai penghubung, ataupun untuk meningkatkan fungsi dari dua buah progaram/aplikasi yang telah ada.
Perangkat
lunak middleware adalah perangkat lunak yang terletak diantara program
aplikasi dan pelayanan-pelayanan yang ada di sistim operasi. Adapun
fungsi dari middleware adalah:
- Menyediakan lingkungan pemrograman aplikasi sederhana yang menyembunyikan penggunaan secara detail pelayanan-pelayanan yang ada pada sistem operasi .
- Menyediakan lingkungan pemrograman aplikasi yang umum yang mencakup berbagai komputer dan sistim operasi.
- Mengisi kekurangan yang terdapat antara sistem operasi dengan aplikasi, seperti dalam hal: networking, security, database, user interface, dan system administration.
Tujuan Umum Middleware Telematika
- Middleware adalah S/W penghubung yang berisi sekumpulan layanan yang memungkinkan beberapa proses dapat berjalan pada satu atau lebih mesin untuk saling berinteraksi pada suatu jaringan.
- Middleware sangat dibutuhkan untuk bermigrasi dari aplikasi mainframe ke aplikasi client/server dan juga untuk menyediakan komunikasi antar platform yang berbeda
- Middleware yang paling banyak dipublikasikan : Open Software Foundation’s Distributed Computing Environment (DCE) Object Management Group’s Common Object Request Broker Architecture (CORBA), Microsoft’s COM/DCOM (Component Object Model)
Lingkungan Komputasi Dari Middleware Telematika
Suatu lingkungan di mana sistem komputer digunakan. Lingkungan
komputasi dapat dikelompokkan menjadi empat jenis yaitu :
1. Komputasi tradisional,
2. Komputasi berbasis jaringan,
3. Komputasi embedded,
4. Komputasi grid.
Pada awalnya komputasi tradisional hanya meliputi penggunaan komputer
meja (desktop) untuk pemakaian pribadi di kantor atau di rumah. Namun,
seiring dengan perkembangan teknologi maka komputasi tradisional
sekarang sudah meliputi penggunaan teknologi jaringan yang diterapkan
mulai dari desktop hingga sistem genggam. Perubahan yang begitu drastis
ini membuat batas antara komputasi tradisional dan komputasi berbasis
jaringan sudah tidak jelas lagi.
Lingkungan komputasi itu sendiri bisa diklasifikasikan berdasarkan cara
data dan instruksi programnya dihubungkan yang terdiri atas empat
kategori berikut ini :
1. Single instruction stream-single data stream (SISD) : Satu prosesor dan biasa juga disebut komputer sekuensial
2.
Single instruction stream-multiple data stream (SIMD) : Setiap prosesor
memiliki memori lokal dan duplikasi program yang sama sehingga
masing-masing prosesor akan mengeksekusi instruksi/program yang sama
3.
Multiple instruction stream-single data stream (MISD) : Data yang ada
di common memory akan dimanipulasi secara bersamaan oleh semua prosesor
4.
Multiple instruction stream-multiple data stream (MIMD) : Setiap
prosesor memiliki kontrol unit, memori lokal serta memori bersama
(shared memory) yang mendukung proses paralelisasi dari sisi data dan
instruksi.
Kebutuhan Middleware
Middleware
adalah software yang dirancang untuk mendukung pengembangan sistem
tersebar dengan memungkinkan aplikasi yang sebelumnya terisolasi untuk
saling berhubungan. Dengan bantuan middleware, data yang sama dapat
digunakan oleh customer service, akuntansi, pengembangan, dan manajemen
sesuai kebutuhan. Middleware dapat juga berfungsi sebagai penerjemah
informasi sehingga setiap aplikasi mendapatkan format data yang dapat
mereka proses.
Middleware
tersedia untuk berbagai platform, dengan berbagai jenis. Jenis
middleware yang umum dikembangkan saat ini dapat dikelompokkan dalam
lima kategori besar, salah satunya adalah homegrown, yang dikembangkan
khusus untuk kebutuhan internal organisasi, model RPC/ORB (Remote
Procedure Call/Object Request Broker), Pub/Sub
(Publication/Subscription), Message Queuing, dan TP (Transaction
Processing) Monitor.
Di
Linux, banyak perusahaan besar seperti IBM, BEA, dan Schlumberger yang
sedang dan sudah mengerjakan berbagai sistem middleware. Salah satu
produk middleware IBM untuk
platform
Linux adalah BlueDrekar™. BlueDrekar™ adalah middleware berbasis
spesifikasi Bluetooth™ untuk koneksi peralatan wireless di lingkungan
rumah dan kantor. Produk middleware ini menyediakan protocol stack dan
berbagai API (Application Programming Interfaces) yang dibutuhkan
aplikasi berbasis jaringan. Diharapkan adanya BlueDrekar™ di Linux ini
akan mempercepat pertumbuhan aplikasi dan peralatan berbasis Bluetooth™.
Contoh
lain, BEA Tuxedo™ dari BEA System, sebuah middleware transaction
processing monitor yang juga mendukung model ORB, tersedia untuk
berbagai platform, termasuk RedHat Linux. BEA Tuxedo memungkinkan
kombinasi pengembangan aplikasi dengan model CORBA dan ATMI
(Application-to-Transaction Monitor Interface). Sebuah aplikasi yang
dibuat untuk Tuxedo dapat berjalan pada platform apapun yang ditunjang
oleh BEA tanpa perlu modifikasi
dalam kode aplikasinya.
Dalam
bidang kartu magnetis (smart cards), Schlumberger adalah salah satu
pengembang dan produsen CAC (Common Access Card) dan middleware CAC-nya.
Produk middleware ini yang diberi nama CACTUS (Common Access Card
Trusted User Suite), dapat berjalan di atas Linux. memberi kemampuan
koneksi pada level aplikasi ke kartu magnetis dan fungsi-fungsi
kriptografis.
ShaoLin
Aptus adalah sebuah middleware untuk Linux, yang mengubah jaringan PC
menjadi sebuah arsitektur jaringan komputer yang bersifat 'fit client'.
Produk yang memenangkan 'IT Excellence Awards 2002' di Hong Kong ini,
mengembangkan konsep ' t h i n c l i e nt' dengan memperbolehkan
komputasi berbasis client. Shaolin Aptus membuat banyak klien dapat
menggunakan sistem operasi dan aplikasi yang tersimpan di server melalui
LAN secara transparan.
Saat
ini, hampir seluruh aplikasi terdistribusi dibangun dengan menggunakan
middleware. Masih menurut IDC, perkembangan segmen middleware terbesar
akan terjadi dalam alat yang membantu sistem manajemen bisnis. Hal ini
terjadi untuk memenuhi permintaan akan integrasi
aplikasi
yang lebih baik. Linux, didukung oleh bermacam produk middleware,
memberikan pilihan sistem operasi dan middleware yang stabil, dengan
harga yang bersaing.
Contoh-contoh Middleware
1. Java’s : Remote Procedure Call
Remote Procedure Calls (RPC) memungkinkan suatu bagian logika aplikasi untuk didistribusikan pada jaringan. Contoh :
· SUN RPC, diawali dengan network file system (SUN NFS).
· DCE RPC, sebagai dasar Microsoft’s COM.
Object Request Brokers (ORBs)
memungkinkan objek untuk didistribusikan dan dishare pada jaringan yang
heterogen. Pengembangan dari model prosedural RPC, –Sistem objek
terdistribusi, seperti CORBA, DCOM, EJB, dan .NET memungkinkan proses
untuk dijalankan pada sembarang jaringan.
2.Object Management Group’s : Common, dan Object Request Broker Architecture (COBRA)
3.Microsoft’s COM/DCOM (Companent Object Model), serta
4.Also .NET Remoting.