- Apa
Itu Open Service Gateway Initiative (OSGi)
Open
Service Gateway Initiative (OSGi) adalah sebuah system dan aplikasi
interoperability berbasis komponen platform yang terintegrasi. OSGi merupakan
system modul dinamik untuk Java. Teknologi OSGi adalah Universal Middleware.
Teknologi OSGi menyediakan sebuah service-oriented, lingkungan yang berbasis
komponen untuk pengembang dan menawarkan jalan standard untuk mengatur siklus
hidup software. Kemampuan ini dapat menambah nilai jangkauan dari computer dan
peralatan yang menggunakan platform Java dengan sangat hebat.
Teknologi
OSGi mengadopsi keuntungan dari menambah time-to-market dan mengurangi biaya
pengembangan karena teknologi OSGi menyediakan subsistem komponen yang
terintegrasi dari pre-build dan pre-tested. Teknologi ini juga mengurangi biaya
perawatan dan memberikan kesempatan aftermarket yang baru dan unik karena
jaringan dapat digunakan untuk update secara dinamik dan mengirimkan service
dan aplikasi di lapangan.
OSGi ARSITEKTUR
OSGi adalah sebuah set
spesifikasi yang mendefinisikan sebuah komponen system dinamik untuk Java.
Spesifikasi ini memungkinkan sebuah model pengembangan dimana aplikasi (secara
dinamik) terdiri dari berbagai komponen yang berbeda. Spesifikasi OSGi
memungkinkan komponen-komponennya untuk menyembunyikan implementasinya dari
komponen lainnya ketika berkomunikasi melalui services dimana biasanya ketika
hal ini berlangsung implementasi antar komponen dapat terlihat jelas. Model
yang simple ini telah jauh mencapai efek dari segala aspek dari proses
pengembangan software.
Lapisan OSGi
Model lapisan dari OSGi
adalah sebagai berikut :
Definisi :
- bundles
: bundles adalah komponen OSGi yang dibuat oleh pengembang/developer.
- Services
: lapisan service menghubungkan bundles dalam sebuah jalan dinamik dengan
menawarkan model publish-find-bind untuk objek Java yang lama.
- Life
Cycle : API untuk menginstall, memulai, menghentikan, update dan
menguninstall bundles.
- Modules
: lapisan yang menjelaskan bagaimana bundles dapat mengimport dan
mengexport kode.
- Security
: Lapisan yang memegang aspek keamanan.
- Execution
Environment : menjelaskan class dan method apa yang ada di platform.
KEUNTUNGAN
TEKNOLOGI OSGi
Menjelaskan teknologi
OSGi kepada yang belum familiar dengan teknologi ini sangatlah sulit. Ada
begitu banyak artikel yang menjelaskan teknologi OSGi tetapi hal itu masih
belum bisa dimengerti oleh user yang benar-benar awam karena teknologi OSGi
menyediakan solusi untuk permasalahan yang banyak orang menganggap bahwa maslah
itu merupakan aspek instrinsik dari Java.
Permasalahan ini
sebenarnya bukan masalah instrinsik dari Java dan teknologi OSGi dapat
mengatasi itu semua. Alasan utama mengapa teknologi OSGi dapat sukses karena
teknologi ini menyediakan komponen system yang benar-benar matang yang dapat
bekerja di lingkungan yang sangat banyak jumlahnya. Komponen system yang biasa
digunakan untuk membangun aplikasi yang tingkat kekompleksannya sangat tinggi
seperti IDEs (Eclipse), aplikasi server (GlassFish, IBM Websphere, Oracle/BEA
Weblogic, Jonas, JBoss), aplikasi framework (Spring, Guice), otomatisasi
industry, telepon dan banyak lainnya.
Keuntungan dari
teknologi OSGi antara lain adalah sebagai berikut :
- Mengurangi
kompleksitas : mengembangkan dengan OSGi berarti menembangkan bundles :
salah satu komponen OSGi. Bundles adalah modul. Bundles menyembunyikan
aspek internalnya dari bundles lainnya. Hal ini berarti ada banyak
kebebasan untuk menggantinya di kemudian hari.
- Dapat
digunakan kembali : model komponen OSGi sangat mudah digunakan dan dapat
digunakan dengan aplikasi pihak ketiga.
- RealWorld
: OSGi framework dinamik. Hal ini berarti OSGi dapat diupdate secara
online.
- Mudah
Penyebarannya : teknologi OSGi bukanlah sebuah teknologi standard. OSGi
dapat dimanage sedemikian rupa serta dapat diatur cara penginstalannya.
- Update
yang dinamik : OSGi komponen bisa diupdate secara dinamik.
- Adaptif
: model komponen OSGi didesain sedemikian rupa hingga diperbolehkan untuk
mengkombinasi dan mencocokan antar komponen.
- Transparan
- Banyak
versinya
- Simple
: OSGi API sangat simple. API OSGi hanya terdiri dari satu paket dan
berjumlah kurang dari 30 kelas.
- Ukurannya
kecil
- Kinerjanya
cepat
- Malas
: Malas dalam software itu berarti bagus. Teknologi OSGi mempunyai banyak
mekanisme hanya ketika dibutuhkan saja.
- Aman
- Sederhana
- Tidak
Mengganggu Kinerja Aplikasi Lainnya
- Berjalan
dimana saja
- Digunakan
secara luas
- Didukung
Oleh Berbagai Perusahaan : OSGi juga didukung oleh berbagai perusahaan
seperti Oracle, IBM, Samsung, Nokia, IONA, Motorola, NTT, Siemens,
Hitachi, Deutsche Telekom, Redhat, Ericsson, dan masih banyak lagi.
Jika sedang
mengembangkan Java maka teknologi OSGi merupakan langkah lanjut yang harus
ditempuh karena teknologi OSGi dapat memecahkan masalah yang mungkin tidak akan
terbayangkan sebelumnya. Keuntungan menggunakan teknologi OSGi yang begitu
berguna jika kita menggunakan Java, maka sudah seharusnya teknologi OSGi masuk
berada dalam kotak peralatan kita.
OSGi Specifications
-
OSGi Service Platform Release 4
-
OSGi Service Platform Release 4 was
first released in October 2005. Version 4.1 was released in May 2007. Version
4.2 was released in September 2009.
-
Errata
-
API Javadoc
-
XML Schemas
- KELEBIHAN
DAN KEKURANGAN OSGI
Kelebihan
1) Berjalan dimana saja dan digunakan secara
luas
2) Aman, sederhana dan tidak mengganggu
kinerja aplikasi lainnya
3) Ukurannya kecil dan Kinerjanya cepat
4) Transparan dan Banyak versinya
5) Simple : OSGi API sangat simple.
6) RealWorld : OSGi framework dinamik.
7) Dapat digunakan kembali
8) Mengurangi kompleksitas
Kekurangan
1. Ruang lingkupnya sangat kecil
2. Keamanan kurang terjaga dari kejahatan
hacker
3. Biaya sangat mahat untuk pembuatan
aplikasi dari OSGI
4. Rawan terjadinya pencurian data
5. Ukuran penyimpanan yang sangat kecil
untuk data yang di simpan
Tidak ada komentar:
Posting Komentar