Minggu, 24 November 2013
UNIVERSITAS GUNADARMA
FAKULTAS ILMU KOMPUTER & TEKNOLOGI INFORMASI
TUGAS PENGANTAR TELEMATIKA
Nama & NPM :
Latifah | 13110973
Novika Ari Pahlawati | 15110080
Restu Anjani | 15110772
Fakultas : Ilmu Komputer dan Teknologi Informasi
Jurusan : SistemInformasi
Kelas : 4KA11
Depok
2013
ABSTRAKSI
Latifah. 13110973
Novika Ari Pahlawati. 15110080
Restu Anjani. 15110772
Tugas Pengantar Telematika. Jurusan Sistem
Informasi, Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas
Gunadarma, 2013
Kata Kunci : Middleware, Pengantar
Telematika, Platform
(iii + 11 halaman)
Dalam pemrograman client server
tingkat lanjut,adalah memungkinkan untuk membangun sebuahaplikasi dengan dasar
platform pemrograman yang berbeda-beda. Dalam pemrograman jaringan biasa /
konvesional, maka tidak akan mampu untuk mengkoneksikan dua atau lebih platform
yang berbeda.
Untuk membangun aplikasi itu maka
dibutuhkan sebuah lapisan yang bisa menghubungkan platform pemrograman yang
berbeda, lapisan yang dimaksudkan adalah diistilahkan sebagai ‘middleware’. Middleware
pada tataran implementasi merupakan sebuah paket program instan yang dipakai
pada suatu platform permograman tertentu, sedangkan pada tataran konsep,
middleware mer upakan sebuah lapisan untuk lalulintas penghubung komunikasi
antar objek dari sistem yang berbeda. Ada beberapa jenis middleware, seperti
ORB (Object Request Broker), RMI (Remote Method Invocation), dan MOM (Message
Oriented Middleware).
Dalam tulisan ini akan dibahas
tentang pemahaman dan tujuan umum dari middleware, lingkungan komputasi dari
middleware, memahami kebutuhan middleware, serta mengenal contoh-contoh middleware.
Daftar Pustaka (2012-2013)
ii
DAFTAR
ISI
Halaman
Halaman
Judul.............................................................................................................................i
Abstraksi....................................................................................................................................ii
Daftar
Isi...................................................................................................................................iii
Bab I PENDAHULUAN...........................................................................................................1
1.1 Latar Belakang Masalah............................................................................................1
1.2 Batasan Masalah........................................................................................................1
1.3 Tujuan
Penulisan........................................................................................................2
1.4 Metode
Penelitian......................................................................................................2
Bab II TINJAUAN PUSTAKA..................................................................................................3
2.1 Middleware dan Enterprise ApplicationIntegration.................................................3
2.2Middleware ORB dalam
framework CORBA.........................................................3
2.3 Software CORBA-ORB...........................................................................................6
2.4 Interface Definition Language (IDL).......................................................................7
Bab III ANALISA DAN PEMBAHASAN................................................................................8
3.1 Implementasi Pemrograman
Jaringan Menggunakan Middleware CORBA-ORB...8
3.2 Implementasi Pemrograman......................................................................................9
Bab IV PENUTUP...................................................................................................................10
4.1
Kesimpulan..............................................................................................................10
DAFTAR
PUSTAKA..............................................................................................................11
iii
I. PENDAHULUAN
1.1 Latar belakang
masalah
Untuk membangun
sebuah aplikasi client server multi platform programming salah satu cara adalah
dengan memanfaatkan middleware. Middleware bias dijelaskan pada 2 tataran,
yaitu tataran konsep/paradigma dan tataran aplikasi pemrograman.
Pada tataran konsep,
middleware digunakan sebagai jembatan atau penghubung dua aplikasi atau lebih
yang memiliki perbedaan, middleware kadang disebut sebagai plumbing karena
middleware digunakan untuk menghubungkan 2 bagian dari sebuah aplikasi dan
digunakan untuk melewatkan data diantara mereka. Pada tataran implementasi,
middleware adalah sebuah paket program instan yang digunakan untuk
menghubungkan dua program yang berbeda platforma atau produk/vendor. Beberapa
jenis middleware yang bisa digunakan untuk pemrograman adalah ORB, RPC, RMI,
DCE, dan MOM. Produk Middleware biasanya di pakai oleh sebuah arsitektur atau
framework pemrograman.
ORB (Object Request
Broker) dimiliki oleh arsitektur atau framework pemrograman CORBA (Common
Object Request Broker Architectur) dan JAVA, RMI (Remothe Method Invocation)
dimiliki oleh teknologi JAVA. Pada tulisan ini akan dijelaskan konsep dan
implementasi pemrograman middleware ORB pada framework CORBA, dengan kasus
client server berbeda platform pemrograman. Tulisan ini akan dibagi menjadi
beberapa bagian. Bagian berikutnya adalah bagian II akan membahas tentang
middleware-middleware yang bisa membangun aplikasi bisnis (EAI).
Pada bagian ini juga
akan dibahasa CORBA-ORB serta arsitektur frameworknya. Pembahasan tentang
konsep dan implementasi pemrograman dengan middleware ini akan dibahas pada
bagian III dan pada bagian IV akan dibahas tentang tinjauan kritis penggunaan
middleware dalam membangun aplikasi client server.
1.2 BatasanMasalah
Berdasarkan masalah
diatas maka ruang lingkup penulisan dibatasi pada pemanfaatan middleware ORB
(Object Request Broker)
1
1.3 Tujuan Penulisan
Pembuatan makalah ini
disusun untuk memberikan kemudahan dan pengetahuan tentang middleware
telematika. Memberikan pengetahuan lebih tentang konsep pemrograman jaringan
dengan memanfaatkan middleware ORB (Object Request Broker)
1.4 Metode Penelitian
Beragai data yang
digunakan dalam penulisan ini diperoleh dari studi pustaka dengan mencari bahan
dasar sebagai acuan teori dan bahan dari beragai buku dan situs-situs
terpercaya pada internet serta beberapa referensi yang berhubungan dengan
permasalahan yang akan dibahas penulis.
2
II. TINJAUAN PUSTAKA
2.1 Middleware dan
Enterprise ApplicationIntegration
Middleware adalah
sebuah aplikasi yang secara logic berada diantara lapisan aplikasi (application
layer) dan lapisan data dari sebuah arsitektur layer-layer TCP/IP . Middleware
bisa juga disebut protokol. Protokol komunikasi middleware mendukung layanan
komunikasi aras tinggi.
Biasanya program
middleware menyediakan layanan pesan (messaging services) sehingga
aplikasi-aplikasi yang berbeda-beda itu dapat berkomunikasi. Sistem middleware
mengikat aplikasi-aplikasi yang terpisah. Penggunaannya dalam aplikasi bisnis
dikenal sebagai Enterprise Application Integration (EAI).
Middleware EAI
membuat penghubung antara aplikasi-aplikasi dalam berbagai cara, namun secara
umum cara ini diistilahkan sebagai transformasi dan routing data dan mengatur
aliran proses bisnis. Ada implikasi dalam hal ini bahwa aplikasi-aplikasi itu
ber ada dalam sebuah dunia heterogenitas – perbedaan platform operasi,
pemisahan model data dan penyimpan data, heterogenitas jaringan dan protocol
komunikasi.
2.2 Middleware ORB
dalam framework CORBA
CORBA (Common Object
Request Broker Architecture) adalah sebuah standar system terdistribusi yang
dikembangkan oleh OMG (Object Management Group), yaitu sebuah konsorsium yang
terdiri dari lebih dari 800 perusahaan untuk membantu dalam pemrograman
objek-objek terdistribusi. CORBA adalah sebuah cara bagi objekobjek untuk
melakukan interoperasi lintas jaringan. Sejak spesifikasi CORBA versi 1.2
diperkenalkan pada tahun 1991, CORBA memberikan sebuah mekanisme standar bagi
komunikasi antar objek lintas jaringan, kemudian spesifikasi CORBA tersebut
berkembang dengan diperkenalkannya CORBA 2.0 di tahun 1994 dan CORBA 3.0 yang
direlease tahun 2000. Hal yang penting untuk dicatat bahwa CORBA hanya sebuah
spesifikasi untuk membuat dan menggunakan objek-objek terdistribusi, CORBA
bukan sebuah produk atau bahasa pemrograman.
3
Vendor-vendor yang
ingin membuat produk-produk yang mengikuti spesifikasi CORBA dapat bebas untuk
melakukannya. Tetapi yang perlu ditekankan/diyakinkan adalah bahwa vendor-vendor
tersebut mengikuti spesifikasi CORBA secara persis sama. Hal ini agar semua
produk yang dihasilkan vendor-vendor tersebut memiliki keselarasan dengan CORBA
(CORBA compliant), sehingga satu sama lain dapat berinteraksi. Hal lain yang
perlu diingat bahwa CORBA independen terhadap bahasa pemrograman selama
bahasa-bahasa pemrograman tersebut memiliki pemeta (mapping) dari bahasa
definisi interface dalam CORBA.
CORBA merupakan sebuah spesifikasi middleware yang ideal untuk mendukung dan mengaplikasikan sistem komputer terdistribusi. Arsitektur CORBA berbasis pada model objek. Model ini berasal dari abstraksi inti model objek yang didefinisikan oleh OMG dalam sebuah petunjuk OMA (Object Management Architecture), yang dapat ditemukan dalam [2]. Beberapa hal penting yang perlu dicatat bahwa CORBA berbeda dengan pemrograman objek serupa adalah:
CORBA merupakan sebuah spesifikasi middleware yang ideal untuk mendukung dan mengaplikasikan sistem komputer terdistribusi. Arsitektur CORBA berbasis pada model objek. Model ini berasal dari abstraksi inti model objek yang didefinisikan oleh OMG dalam sebuah petunjuk OMA (Object Management Architecture), yang dapat ditemukan dalam [2]. Beberapa hal penting yang perlu dicatat bahwa CORBA berbeda dengan pemrograman objek serupa adalah:
1.
Objek-objek CORBA
dapatberjalandalamberbagai platform.
2.
Objek-objek CORBA
ditempatkan di manapundalamjaringan.
3.
Objek-objek CORBA
dapat ditulis dalam beberapa bahasa pemrograman yang memiliki pemeta IDL (IDL
mapping).
Bersifat open,
maksudnya bahwa CORBA bias dipakai oleh setiap orang yang ingin menggunakan
standarisasi CORBA ini. Sehingga akan muncul perbedaan-perbedaan dalam
menggunakannya, seperti perbedaan platform ataupun bahasa pemrograman. Tetapi
hal ini justru menjadi kelebihan CORBA bahwa CORBA mampu mengkomunikasikan
sistem yang memiliki perbedaan-perbedaan tersebut.
CORBA merupakan
sebuah arsitektur yang menyediakan sebuah framework crossplatform untuk
membangun dan mengembangkan sistem objek terdistribusi. Ide utama dibelakang
CORBA adalah sebuah perangkat lunak perantara (intermedier) atau disebut
middleware yang mengatur dan menyebarkan akses request ke sekumpulan data
tertentu. Perangkat lunak perantara ini adalah Middleware ORB (Object Request
Broker).
4
ORB melakukan
interaksi dan membuat request ke berbagai macam objek. ORB ini terletak
diantara layer data dan layer aplikasi dalam susunan arsitektur jaringan 7
layer model OSI. ORB akan melakukan negosiasi antara pesan request dari objek
ke objek atau dari objek server ke sekumpulan data (data set). Tujuan CORBA
adalah untuk membuat pemrograman lebih mudah dengan membuat aplikasi berbasis
CORBA yang sangat portable. Untuk melihat lebih detail tentang arsitektur CORBA
dan ORB berada didalamnya, maka CORBA memiliki sebuah arsitektur yang disebut
OMA (Object Management Group).OMA mengelompokkan jenis-jenis interak si antar
program untuk memudahkan penyediaan dukungan.
OMA melakukan strukturisasi dunia aplikasi ke dalam dua kelompok besar: kategori layanan CORBA (CORBAservices) dan kategori fasilitas CORBA (CORBAfacilities). Layanan CORBA menyediakan fungsi-fungsi dasar yang digunakan oleh hampir setiap obyek dalam berbagai aplikasi. Fungsi-fungsi ini biasanya bersifat generik dan tidak tergantung pada jenis domain aplikasi. Sebagai contoh adalah layanan penamaan (naming service). Bayangkan bila memerlukan sebuah layanan tapi tidak tahu kemana harus mencari server yang menyediakan layanan tersebut. Layanan penamaan dapat membantu layaknya sebuah "halaman kuning" (yellow pages) ; dia bisa menyiarkan direktori layanan yang terdaftar padanya. Karena sifatnya yang generik, layanan penamaan dapat digunakan oleh aplikasi dari berbaga i domain.
5
Fasilitas CORBA menyediakan layanan pada level aplikasi. Ada dua jenis fasilitas: horizontal, yang diperlukan oleh berbagai jenis domain (misalnya, user-interface), dan vertikal, yang berlaku khusus untuk domain tertentu. Fasilitas horizontal fungsinya mirip dengan layanan CORBA, tetapi beroperasi pada level yang lebih tinggi karena berhubungan langsung dengan aspek fungsional dari aplikasi. OMG secara terus-menerus melakukan standarisasi terhadap interface untuk komponen-komponen di masing-masing kategori. Semakin banyak layanan dan fasilitas yang distandarisasi, semakin mudah untuk mencapai komputasi terdistribusi berbasis komponen dalam berbagai bidang secara plug-and -play, tanpa terganggu oleh masalah heterogenitas.
2.3 Software CORBA-ORB
Ada banyak software CORBA-ORB baik yang free dan
opensource maupun yang komersil. Yang akan digunakan disini adalah software ORB
dari Java yang disebut Java-ORB dan JAC-ORB dari Fu Berlin / Xtradine. Keduanya
berbasis Java.
Ketika masuk ke pemrograman secara teknis maka yang perlu diketahui adalah
sebuah bahasa interface yang digunakan untuk menghubungkan berbagai macam
aplikasi. Bahasa ini disebut Interface Definition Language (IDL). Untuk
mengenal tentang IDL maka berikut adalah pembahasan tentang IDL.
6
2.4 Interface Definition Language
(IDL)
IDL merupakan inti untuk pembuatan aplikasi CORBA. IDL
memuat sekumpulan tipe variabel yang kemudian akan dipetakan ke berbagai bahasa
pemrograman. Suatu interface dalam CORBA menyediakan sebuah deskripsi
fungsi-fungsi yang disediakan untuk sebuah objek. Atribut, method dan parameter
adalah informasi-informasi yang dispesifikasi oleh sebuah interface. IDL adalah
sebuah bahasa yang menggambarkan objek-objek interface dalam sebuah aplikasi
CORBA.
IDL mendefinisikan tipe-tipe objeknya dengan
mendefinisikan interface-interfacenya. Sebuah interface terdiri dari sekumpulan
nama operasi dan parameter-parameter untuk operasi-operasi tersebut. Catatan
bahwa IDL hanya digunakan untuk menggambarkan interface, dan bukan sebuah
implementasi. IDL bukan pula bahasa pemrograman. Melalui IDL, sebuah
implementasi objek tertentu memberitahukan pada client tentang operasi-operasi
apa saja yang tersedia dan memberitahukan bagaimana cara untuk mengambilnya. Dengan
definisi IDL, objek-objek CORBA harus dipetakan ke beberapa bahasa pemrograman
yang akan digunakan untuk membangun aplikasi client dan juga server. Beberapa
bahasa pemrograman yang memiliki pemeta IDL (IDL mapping) adalah C, C++, Java,
Smalltalk, Lisp, Basic, Pascal dan Python. Setelah mendefinisikan sebuah
interface untuk objek-objek dalam IDL, programmer bebas untuk
mengimplementasikan objek-objek dengan menggunakan bahasa pemrograman yang
sesuai yang memiliki pemeta IDL. Sebagai sebuah protokol kompiler, IDL bisa
digambarkan sebagai berikut:
7
III. ANALISA DAN PEMBAHASAN
3.1 Implementasi Pemrograman
Jaringan Menggunakan Middleware CORBA-ORB
Untuk membangun aplikasinya ada beberapa langkah yang perlu diperhatikan dalam hal pemrograman menggunakan middleware CORBA-ORB. Langkah-langkah itu adalah :
Untuk membangun aplikasinya ada beberapa langkah yang perlu diperhatikan dalam hal pemrograman menggunakan middleware CORBA-ORB. Langkah-langkah itu adalah :
1. Membuat rancangandananalisakebutuhan system
2. Men-download software yang akan digunakan (software
yang akan digunakan adalah Java-ORB dan JAC-ORB)
3. Coding atau melakukanlangkah-langkahteknispemrograman
Untuk membangun pemrograman jaringan dengan Middleware
CORBA-ORB, maka perlu dianalisa terlebih dahulu hal-hal yang diperlukan sebelum
masuk ke langkah coding/pemrograman. Sesuai dengan tujuan yang ingin dibuat
adalah aplikasi yang melakukan koneksi melalui ORB, dan bias menunjukkan
aplikasi yang terpisah dan berbeda platform.
Dari gambar diatas terlihat bahwa ada 2 aplikasi yang jalan di dua platform
pemrograman yang berbeda. Platform yang akan digunakan adalah Java-ORB dan
Jac-ORB. 2 aplikasi tersebut juga akan diinstal pada platform sistem operasi
yang berbeda. Sistem operasi yang akan digunakan adalah Linux untuk Jac-ORB dan
Windows untuk Java-ORB.
8
Dua aplikasi itu pun berada pada mesin yang berbeda.
Disisi lain client pun akan menggunakan platform yang berbeda dengan
server-nya. Jika ingin mengakses Server Java-ORB, maka yang akan digunakan
adalah ORB Name Product Bhs Pemrogrmn Licence JAVA ORB SUN MicroSystem Java
Free VisiBroker Visigenic/Borland Java, C++, Delphi Evaluation JacORB Fu
Berlin/XTRADyneJava Free MICO Mico.org/GPL Soft. C++ Free ISP Rusian Univ C++
Free ORBacus IONA Java, C++ Free OMNIORB OMNI Java, C++ Evaluation VBORB Visual
Basic Free MTdORB Phyton Phyton Free. Aplikasi Client yang dibuat dengan
JAC-ORB. Sedangkan jika client ingin mengakses aplikasi yang ada di platform
JAC-ORB, maka akan digu nakan aplikasi client yang dibangun dengan Java-ORB.
3.2 Implementasi Pemrograman
3.2 Implementasi Pemrograman
Beberapa langkah yang harus dilakukan untuk membangun
aplikasi sesuai dengan arsitektur diatas adalah :
1. Membuatbahasadefinisi IDL
2. Membuataplikasi Server
3. MembuatAplikasi Client
4. Mengkompilasi semua class yang telahdibuat
Contoh kasus ini adalah program jumlah() dan kurang()
untuk server Java-ORB dan program kali() dan bagi() untuk server JAC-ORB. Dua
file tersebut kemudian dikompilasi dengan menggunakan IDL Compiler yang
dimiliki oleh Java- ORB dan JAC-ORB.
Langkah berikutnya membuat aplikasi server untuk kedua ORB yang digunakan. Dua file server diatas sebelum diinstallkan di dua komputer server yang berbeda terlebih dulu di kompilasi. Karena secara default Client tidak bsa mengakses kedua server tersebut, maka langkah berikutnya adalah membuat aplikasi Client dengan CORBA (JAVA-ORB dan JAC-ORB) sebagai Middleware. Setelah CORBAdijalankan, Client dapat mengakses kedua server tersebut.
Langkah berikutnya membuat aplikasi server untuk kedua ORB yang digunakan. Dua file server diatas sebelum diinstallkan di dua komputer server yang berbeda terlebih dulu di kompilasi. Karena secara default Client tidak bsa mengakses kedua server tersebut, maka langkah berikutnya adalah membuat aplikasi Client dengan CORBA (JAVA-ORB dan JAC-ORB) sebagai Middleware. Setelah CORBAdijalankan, Client dapat mengakses kedua server tersebut.
Hasil akhir dari percobaan ini adalah terbukti bahwa
CORBA dapat menghubungkan server sebagai middleware yang berbeda platform
dengan client.
9
4. PENUTUP
4.1 Kesimpulan
Kesimpulan yang diperoleh dari hasil penulisan makalah
ini yaitu : Middleware CORBA-ORB bisa membangun dua buah sistem untuk bisa
saling melakukan interoperasi. Kemudian Middleware CORBA-ORB juga sangat
membantu untuk pengembangan skala program aplikasi. Dan kesimpulan yang
terakhir Middleware CORBA-ORB dapat memudahkan untuk pengembangan tim
developer.
Hal yang sangat menarik dari pemrograman dengan
memanfaatkan middleware CORBA-ORB adalah isu tentang interoperasi, atau
diistilahkan interoperabilitas. Isu ini memandang 2 sistem berbeda yang ingin
melakukan komunikasi.Middleware CORBA-ORB bisa dijadikan suatu fasilitator
untuk melakukan interoperasi itu. Middle ware CORBA-ORB juga bisa digunakan
untuk penghubung dari banyak aplikasi yang berbeda platform bahasa pemrograman.
Isu yang lain yang juga terlibat dalam pemrograman
middleware CORBA-ORB adalah masalah scalability. Isu ini dimaksudkan untuk
penambahan / perluasan skala pengembangan aplikasi. Untuk membuat aplikasi
jaringan client server tidak dibatasi dengan satu platform pemrograman saja
tetapi bias lebih luas lagi dengan berbagai platform pemrograman.
Isu yang juga menarik adalah kemudahan pengembangan.
Dengan sistem terpisah-pisah secara fisik maupun logika, maka tim developer
bias dipecah-pecah secara mudah berdasarkan pemisahan itu. Ahli pemrograman
Java bisa concern dengan aplikasi Java, ahli pemrograman C++ bisa concern
dengan aplikasi C++, begitu juga programer Delphi dan lain-lainnya.
10
Daftar Pustaka
2. Mahmoud H., Qusay , Distributed Programming With Java,
Manning, 2000.
3. Somantri, Maman, Pemrograman Lintas Bahasa Pemrograman
dalam Arsitektur CORBA, Prosiding Seminar Nasional Teknologi Informasi, STTNAS
Yogyakarta, Juni 2005.
4. SomantriMaman. Konsep pemograman Jaringan dengan
memanfaatkan jaringan Middleware ORB
11
0 Comments:
Subscribe to:
Posting Komentar (Atom)