OSGi (Open Service Gateway Initiative) adalah sebuah rencana
industri untuk cara standar untuk menghubungkan perangkat seperti perangkat
rumah tangga dan sistem keamanan ke Internet. OSGi berencana menentukan program
aplikasi antarmuka (API) untuk pemrogram menggunakan, untuk memungkinkan
komunikasi dan kontrol antara penyedia layanan dan perangkat di dalam rumah
atau usaha kecil jaringan. OSGI juga merupakan sebuah system dan aplikasi
interoperability berbasis komponen platform yang terintegrasi serta 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.
ARSITEKTUR OSGi
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 :
a.Bundles : bundles adalah komponen OSGi yang dibuat oleh
pengembang/developer.
b.Services : lapisan service menghubungkan bundles dalam
sebuah jalan dinamik dengan menawarkan model publish-find-bind untuk objek Java
yang lama.
c.Life Cycle : API untuk menginstall, memulai, menghentikan,
update dan menguninstall bundles.
d.Modules : lapisan yang menjelaskan bagaimana bundles dapat
mengimport dan mengexport kode.
e.Security : Lapisan yang memegang aspek keamanan.
f.Execution Environment : menjelaskan class dan method apa
yang ada di platform.
KEUNTUNGAN TEKNOLOGI OSGi
Keuntungan dari teknologi OSGi antara lain adalah sebagai berikut
:
1.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.
2.Dapat digunakan kembali : model komponen OSGi sangat mudah
digunakan dan dapat digunakan dengan aplikasi pihak ketiga.
3.RealWorld : OSGi framework dinamik. Hal ini berarti OSGi
dapat diupdate secara online.
4.Mudah Penyebarannya : teknologi OSGi bukanlah sebuah
teknologi standard. OSGi dapat dimanage sedemikian rupa serta dapat diatur cara
penginstalannya.
5.Update yang dinamik : OSGi komponen bisa diupdate secara
dinamik.
6.Adaptif : model komponen OSGi didesain sedemikian rupa hingga
diperbolehkan untuk mengkombinasi dan mencocokan antar komponen.
7.Transparan
8.Banyak versinya
9.Simple : OSGi API sangat simple. API OSGi hanya terdiri
dari satu paket dan berjumlah kurang dari 30 kelas.
10.Ukurannya kecil
11.Kinerjanya cepat
12.Malas : Malas dalam software itu berarti bagus. Teknologi
OSGi mempunyai banyak mekanisme hanya ketika dibutuhkan saja.
13.Aman
14.Sederhana
15.Tidak Mengganggu Kinerja Aplikasi Lainnya
16.Berjalan dimana saja
17.Digunakan secara luas
18.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.
Spesifikasi OSGi
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