Senin, 01 Desember 2014

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.

A.    SPESIFIKASI OSGI
Spesifikasi OSGI yang sekarang digunakan dalam aplikasi mulai dari ponsel ke open source Eclipse IDE. Wilayah aplikasi lain meliputi mobil, otomasi industri, otomatisasi bangunan, PDA, komputasi grid, hiburan (misalnya iPronto), armada manajemen dan aplikasi server. Adapun spesifikasi yang lain dimana OSGI akan dirancang untuk melengkapi standar perumahan yang ada, seperti orang – orang LonWorks (lihat kontrol jaringan), CAL, CEBus, HAVi, dan lain-lain. Inti bagian dari spesifikasi adalah suatu kerangka kerja yang mendefinisikan aplikasi model manajemen siklus hidup, sebuah layanan registrasi, sebuah lingkungan eksekusi dan modul. Berdasarkan kerangka ini, sejumlah besar OSGI layers, API, dan Jasa telah ditetapkan. Spesifikasi OSGI yang dikembangkan oleh para anggota dalam proses terbuka dan tersedia untuk umum secara gratis di bawah Lisensi Spesifikasi OSGI. OSGI Alliance yang memiliki program kepatuhan yang hanya terbuka untuk anggota. Pada Oktober 2009, daftar bersertifikat OSGI implementasi berisi lima entri.

B.     ARSITEKTUR OSGi
OSGi Arsitektur 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.

C.    Lapisan OSGi
Model lapisan dari OSGi adalah sebagai berikut :
1.      Bundel: Bundel normal jar komponen dengan nyata tambahan header.
2.      Layanan: Lapisan layanan menghubungkan bundel dalam cara yang dinamis dengan menawarkan model menerbitkan-menemukan-bind untuk polos Interfaces Java tua (POJI) atau Plain Old Java Objects (POJO).
3.      Layanan Registry: The API untuk jasa manajemen (Service Registration, Service Tracker dan Service Reference).
4.      Life-Cycle: The API ntuk manajemen siklus hidup untuk (instal, start, stop, update, dan uninstall) bundel.
5.      Modul: Lapisan ang mendefinisikan enkapsulasi dan deklarasi dependensi (bagaimana sebuah bungkusan dapat mengimpor dan mengekspor kode).
6.      Keamanan: Lapisan yang menangani aspek keamanan dengan membatasi fungsionalitas bundel untuk pra-didefinisikan kemampuan.

D.    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 :
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. Hanya terdiri dari satu paket dan berjumlah kurang dari 30 kelas.
10.  Ukurannya kecil.
11.  Kinerjanya cepat.
12.  Aman.
13.  Sederhana.
14.  Tidak Mengganggu Kinerja Aplikasi Lainnya.
15.  Berjalan dimana saja.
16.  Digunakan secara luas.
17.  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.






SUMBER :
http://zainuliman.blogspot.com/2009/12/open-service-gateway-initiative-osgi.html
http://macansirkuit.blogspot.com/2012/11/manajemen-data-telematika.html

Tidak ada komentar:

Posting Komentar