Rabu, 07 Desember 2016

jurnal umum Middleware Telematika

JURNAL : Middleware Telematika

Oleh :
Yongky Maherta
4KA08
(19113498)
Jurusan Sistem Informasi


Abstak
Dalam perkembengan teknologi informasi, banyak teknologi yang berkembang salah satunya di bidang telematika. Di telematika sendiri banyak macam teknologi yang berkembang, berhubungan data. Termilogi middleware adalah isatilah dalam bahasa computer yakni berarti penghubung. Dalam pertukaran data. Perangkat lunak middleware adalah perangkat lunak yang digunakan dan terletak diantara program aplikasi dan pelayanan-pealyanan yang ada di system operasi. Middleware juga merupakan suatu subsistem yang menghubungkan subsistem satu dengan subsistem yang lainnya. Jadi secara logika middleware merupakan perantaraa diantara dua komponen yang sedang berjalan. Dalam penulisan ini saya mencoba menyajikan penjelasan tentang middleware.
1.   Pendahuluan
Perkembangan Teknologi telekonikasi dan informtika (telematika) saat ini sangat pesat. Di berbagai bidang hamper membutuhkan teknologi telekomunikasi dan informatika untuk mempermudah suatu perkejaan manusia. Kebutuhan middleware yaitu sebagai software penghubung yang berisi sekumpulan layanan yang memungkinkan beberapa proses dapat berjalan pada satu atau lebih mesin untuk saling berinteraksi pada suatu jaringan juga sebagai integrator. Middleware saat ini dikembangkan untuk memungkinkan satu aplikasi berkomunikasi dengan lainnya walaupun berjalan pada platform yang berbeda. Tujuan utama layanan middleware adalah untuk membantu memecahkan interkoneksi beberapa aplikasi dan masalah  interoperabilitas.
Perangkat lunak ini terdiri dari serangkaian pelayanan yang mengizinkan bermacam-macam proses berjalan dalam satu atau lebih mesin untuk dapat saling berinteraksi satu sama yang lainnya. Lambat laun teknologi ini menyediakan kemampuan interoperabilitas yang mendukung pada perpindahan ke arsitektur distribusi yang berhubungan, yang biasanya sering digunakan untuk mendukung dan menyederhanakan kerumitan, aplikasi terdistribusi. Termasuk didalamnya, web server, aplikasi server dan peralatan sama yang mendukung pengembangan dan pengantaran aplikasi. Middleware secara khusus menjadi bagian dari teknologi informasi modern berbasis XML, SOAP, web service dan pelayanan berbasis arsitektur. Middleware berada diantara aplikasi perangkat lunak yang mungkin bekerja pada system operasi yang berbeda. Middleware serupa dengan middle layer dari sebuah tiga baris sistem arsitektur tunggal, kecuali usahanya melewati bermacam-macam system atau aplikasi. Contohnya perangkat lunak EAI (Enterprise Application Integration), perangkat lunak telekomunikasi, monitor transaksi dan perangkat lunak pemesanan dan pengantrian. Dalam dunia teknologi informasi Middleware merupakan suatu software yang dirancang untuk ` menghubungkan beberapa proses pada satu atau lebih mesin untuk dapat saling berinteraksi pada suatu jaringan.Seperti data customer yang harus dapat dibaca oleh bagian customer service dan akuntansi. Data hasil pengembangan perlu dapat dibaca juga oleh bagian manajemen. Hal ini semakin  terasa ketika sistem tersebar menjadi semakin besar dan bervariasi.
Di sinilah aplikasi middleware memegang peranan, dengan bantuan middleware, data yang sama dapat digunakan oleh customer service, akuntansi, pengembangan, dan manajemen sesuai kebutuhan. Disini middleware dapat berfungsi sebagai penerjemah informasi sehingga setiap aplikasi mendapatkan format data yang dapat mereka proses. Middleware berada diantara lapisan aplikasi (application layer) dan lapisan data dari sebuah arsitektur layer-layer TCP/IP. Middleware bisa juga disebut protocol.

2.   Metode Penulisan
Metode yang digunakan dalam penulisan ini adalah dengan mencari data yang sesuai topic bahasan, melalui website, bog ataupun buku. Dengan menggunakan laptop dan koneksi internet, subjek penulisan ini adalah semua artikel dan jurtnal tentang Midddleware Telematika.

3.   Landasan Teori
a.   Tujuan Layanan Middleware
Tujuan utama layanan middleware adalah untuk membantu memecahkan interkoneksi beberapa aplikasi dan masalah interoperabilitas. Database middleware adalah salah satu jenis middleware disamping message-oriented middleware, object-oriented middleware, remote procedure call, dan transaction processing monitor. Pada prinsipnya, ada tiga tingkatan integrasi sistem komputer yaitu integrasi jaringan, integrasi data, dan integrasi applikasi. Database middleware menjawab tantangan integrasi data, sedangkan midleware yang lain menjawab tantangan integrasi applikasi dan jaringan.
Database middleware yang paling umum digunakan adalah ODBC (Open DataBase Connectivity). Keterbatasan ODBC adalah bahwa middleware ini didisain untuk bekerja pada tipe penyimpanan relational database, lebih tepatnya SQL-based relational database2, meskipun pada saat buku ini ditulis sudah tersedia ODBC untuk text file dan Excel spreadsheet. Database middleware yang lain, yang merupakan superset daripada ODBC adalah OLEDB. OLEDB bisa mengakses hampir segala macam bentuk database, dan karenanya Microsoft mengklaim OLEDB sebagai Universal Data Access Interface2. Kelebihan yang lain dari OLEDB adalah dia didisain dengan konsep obyek komponen (Component Object Model) yang mengandalkan object-oriented computing dan menjadi salah satu trend di dunia komputasi.Hanya saja OLEDB relatif masih baru pada saat buku ini ditulis, sehingga penulis belum dapat mengevaluasinya lebih jauh.
On Line Transaction Processing (OLTP), merupakan perkembangan awal dari koneksi antar remote database. Pertama kali ditemukan tahun 1969 oleh seorang engineer di Ford, kemudian diadopsi oleh IBM hingga kini dikenal sebagai proses OLTP. DIGITAL ACMS merupakan contoh lainnya yang sukses pada tahun 70-an dan 80-an. UNIX OLTP lainnya seperti: Encina, Tuxedo pada era 80-an, serta DIGITAL CICS untuk UNIX yang memperkenalkan konsep dowsizing ke pasar. Remote Procedure Call (RPC), menyediakan fasilitas jaringan secara transparan. Open Network Computing (ONC) merupakan prototipe pertama yang diperkenalkan awal tahun 70-an. Sun unggul dalam hal ini dengan mengeluarkan suatu standar untuk koneksi ke internet. Distributed Computing Environment (DCE) yang dikeluarkan oleh Open Systems Foundation (OSF) menyediakan fungsi-fungsi ONC yang cukup kompleks dan tidak mudah untuk sis administrasinya
b.   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 'thinclient' 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.
c.    Contoh Layanan Middleware
Menyediakan kumpulan fungsi API (Application Programming Interfaces) yang lebih tinggi dari pada API yang disediakan sistem operasi dan layanan jaringan yang memungkinkan suatu aplikasi dapat :
1.      Mengalokasikan suatu layanan secara transparan pada jaringan.
2.      Menyediakan interaksi dengan aplikasi atau layanan lain.
3.      Diperluas (dikembangkan) kapasitasnya tanpa kehilangan fungsinya. Contoh Layanan Middleware.
4.      Transaction Monitor.
5.      Produk pertama yang disebut middleware.
6.      Menempati posisi antara permintaan dari program client dan database, untuk menyakinkan bahwa semua transaksi ke database terlayani dengan baik. Contoh
Layanan Middleware. Distributed Object Middleware
Berikut contohnya :
1. Java's : Remote Procedure Call.
2. Object Management Group's : Common Object Request Broker Architecture (CORBA).
3. Microsoft's COM/DCOM (Component Object Model).
    - Also .NET Remoting.
4.   ActiveX controls (in-process COM components).
d. Middleware Masa Depan dan Messaging Midleware
Database middleware, seperti midleware yang lain akan tetap dan semakin dibutuhkan dimasa yang akan datang. Dan besar kemungkinannya bahwa OLEDB akan menjadi database middleware yang paling populer pada saat teknologinya matang, karena keterbukaannya, arsitekturnya yang object-oriented, dan kemampuannya mengakses hampir semua tipe penyimpanan data. Menyimpan data dalam suatu antrian message jika mesin tujuan sedang mati atau overloaded Mungkin berisi business logic yang merutekan message ke ujuan sebenarnya dan memformat ulang data lebih tepat Sama seperti sistem messaging email, kecuali messaging middleware digunakan untuk mengirim data antar aplikasi.

4.   Pembahasan
4.1.  Definisi RPC
Remote Procedure Call (RPC) adalah sebuah metode yang memungkinkan kita untuk mengakses sebuah prosedur yang berada di komputer lain. Untuk dapat melakukan ini sebuah server harus menyediakan layanan remote procedure. Pendekatan yang dilakuan adalah sebuah server membuka socket, lalu menunggu client yang meminta prosedur yang disediakan oleh server. Bila client tidak tahu harus menghubungi port yang mana, client bisa me- request kepada sebuah matchmaker pada sebuah RPC port yang tetap. Matchmaker akan memberikan port apa yang digunakan oleh prosedur yang diminta client. RPC masih menggunakan cara primitif dalam pemrograman, yaitu menggunakan paradigma procedural programming. Hal itu membuat kita sulit ketika menyediakan banyak remote procedure. RPC menggunakan socket untuk berkomunikasi dengan proses lainnya. Pada sistem seperti SUN, RPC secara default sudah ter- install kedalam sistemnya.
4.2. Implementasi RPC
Untuk proses nya kurang lebih sama dengan RMI. Kalau RMI kita mengenal proxy dan skeleton, pada RPC dikenal dengan Stub( Client stub dan Server stub)
Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhFqMthhAd3ownicACK9Ir2pweVrP2nZCAfYE5CDJwOWVSg8blGQNYCkIrxcdehuVRiIZYhSIaVWGABVVUbmtnh8Thdr-Fcgt2ytsiXc1Ie8WRMsmDHz8nqHRybeVdBR_lARxucrwL2UM/s1600/RPC.jpg
Gambar Ilustrasi Implementasi RPC
Remote Reference Modul dan Communication Modul berada pada tatanan sistem operasi.
Contoh implementasi adalah Sun Microsystems Open Network Computing (ONC) : RPC specification, XDR (eXternal Data Representation) standard, UDP atau TCP transport protocol. Xerox Courier : RPC model, Data representation standard, XNS (Xerox Network Systems) SPP (Sequenced Packet Protocol) sbg transport protocol, Apollo s Network Computing Architecture (NCA), RPC protocol, NDR (Network Data Representation).


4.3. Cara Kerja RPC
Tiap prosedur yang dipanggil dalam RPC, maka proses ini harus berkoneksi dengan server remote dengan mengirimkan semua parameter yang dibutuhkan, menunggu balasan dari server dan melakukan proses kemudian selesai. Proses di atas disebut juga dengan stub pada sisi klien. Sedangkan Stub pada sisi server adalah proses menunggu tiap message yang berisi permintaan mengenai prosedur tertentu.
Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-85V8W02TBOB7sjF04aLUUpIDdDBIWk2sXe-XcaxAvMOAg7u-l_bIMewRQm-mue4ou_4iXT5DV6KM32jgD2lNhDuc-h0uLr01TP2xxsSOS_9q7_nN4kDr962tswbZBM2vFL_td0ydxTQ/s1600/RPC2.jpg
Diagram diatas memberikan gambaran mengenai flow dari eksekusi dalam proses RPC. Berikut ini adalah diagram yang akan menjelaskan secara rinci mengenai proses yang terjadipada klien dan server dalam eksekusi suatu prosedur RPC :
penjelasan dari diagram diatas :
1. Klien memanggil prosedur stub lokal. Prosedur Stub akan memberikan parameter dalam suatu paket yang akan dikirim ke jaringan. Proses ini disebut sebagai marshalling.
2. Fungsi Network pada O/S (Operating system – Sistem Operasi) akan dipanggil oleh stub untuk mengirim suatu message.
3. Kemudian Kernel ini akan mengirim message ke sistem remote. Kondisi ini dapat berupa connectionless atau connection-oriented.
4. Stub pada sisi server akan melakukan proses unmarshals pada paket yang dikirim pada network.
5. Stub pada server kemudian mengeksekusi prosedur panggilan lokal.
6. Jika eksekusi prosedur ini telah selesai, maka eksekusi diberikan kembali ke stub pada server.
7. Stub server akan melakukan proses marshals lagi dan mengirimkan message nilai balikan ( hasilnya ) kembali ke jaringan.
8. Message ini akan dikirim kembali ke klien.
9. Stub klien akan membaca message ini dengan menggunakan fungsi pada jaringan.
10. Proses unmarshalled kemudian dilakukan pada message ini dan nilai balikan akan diambil untuk kemudian diproses pada proses lokal.

Proses diatas akan dilakukan berulang-ulang ( rekursif ) dalam pengeksekusian RPC dalam suatu remote sistem. Contoh aplikasi untuk meremote pada teknik RPC (Remote Procedure Call) adalah menggunakan putty untuk melakukan SSH.
4.4. Kelebihan dan Kekurangan pada RPC
Kelebihan RPC
·           Relatif mudah digunakan
·          Pemanggilan remote procedure tidak jauh berbeda dibandingkan pemanggilan local procedure. Sehingga pemrogram dapat berkonsentrasi pada software logic, tidak perlu memikirkan low level details seperti soket, marshalling dan unmarshalling.
·          Robust (Sempurna)
·          Sejak th 1980-an RPC telah banyak digunakan dalam pengembangan mission-critical application yang memerlukan scalability, fault tolerance, dan reliability.

Kelemahan RPC        
·         Tidak fleksibel terhadap perubahan
·         Static relationship between client & server at run-time.
·         Berdasarkan prosedural/structured programming yang sudah ketinggalan jaman dibandingkan Object Oriented Proggraming
·          Kurangnya location transparency
·          Misalnya premrogram hanya boleh melakukan pass by value, bukan pass by reference.
·         Komunikasi hanya antara 1 klien & 1 server (one-to-one at a time).
·         Komunikasi antara 1 klien & beberapa server memerlukan beberapa koneksi yang terpisah.

5.   Kesimpulan

Dalam perkembangan teknologi sekarang banyak perangkat lunak yang mendukung dalam kegiatan sehari-hari. Perangkat lunak middleware adalah perangkat lunak yang digunakan dan terletak diantara program aplikasi dan pelayanan-pealyanan yang ada di system operasi. Middleware juga merupakan suatu subsistem yang menghubungkan subsistem satu dengan subsistem yang lainnya. Jadi secara logika middleware merupakan perantaraa diantara dua komponen yang sedang berjalan. Dalam penulisan ini saya mencoba menyajikan penjelasan tentang middleware.






Daftar Pustaka

Tidak ada komentar:

Posting Komentar