PENDAHULUAN
OSGi (Open Service Gateway Initiative)
adalah kerangka Java untuk mengembangkan dan menggunakan program perangkat
lunak modular dan perpustakaan. The OSGi (Open Service
Gateway initiative) spesifikasi menjelaskan
sistem modular dan layanan platform untuk Java bahasa
pemrograman yang mengimplementasikan lengkap dan dinamis model
dan komponen, sesuatu yang tidak ada dalam standalone Java /VM lingkungan. Aplikasi atau komponen,
datang di bentuk bundel untuk penyebaran, bisa di instal secara jarak jauh,
dimulai,
berhenti, diperbarui, dan dihapus tanpa memerlukan restart manajemen Java paket / kelas ditentukan
dengan sangat rinci. Aplikasi manajemen siklus hidup dilaksanakan melalui API yang
memungkinkan untuk remote download dari kebijakan
manajemen. Layanan registrasi memungkinkan kumpulan
untuk mendeteksi penambahan layanan baru, atau penghapusan layanan, dan
beradaptasi sesuai.
OSGi ini adalah
sebuah teknologi dimana kita dapat menggabungkan berbagai fungsi dalam satu
tujuan atau aplikasi, suatu cara untuk menggabungkan berbagai bagian-bagian
yang mana bagian-bagian ini dibungkus menjadi sebuah aplikasi yang dapat kita
gunakan dengan berbagai macam kegunaan. Sebenarnya teknologi ini berawal dari
pikiran bagaimana cara mengubah program tanpa membongkar koding. Dari situ teknologi ini mulai dikembangkan dalam
bahasa pemrograman mulai dari instalasi, jalannya program, update
dan sampai uninstall tanpa perlu memperbarui coding. Manfaat dalam penerapan OSGi ini adalah programmer dapat mengupdate atau mengupgrade kodingnya dengan mudah. Contoh :
programmer membuat aplikasi yang mana terdapat bug yang harus ditambal, programmer ini
tidak perlu melakukan pengkodingan ulang dan mengganti aplikasi
yang lama dengan aplikasi baru yang memakan waktu dan biaya yang besar untuk
menambalnya(patching). Seperti cara inject (suntik) ke dalam program yang
telah dibuat. Dan ini tidak merubah struktur program dan kinerja program
tersebut. Contoh kedua yaitu plugin yang dapat menambahkan fungsi dalam
aplikasi. Mudah dalam penerapan bagi tim yang membuat aplikasi tentunya tugas
mereka berbeda. Ada yang membuat desain antar muka atau GUI, ada yang membuat
koding jalan softwarenya, ada yang membuat keamanannya, dan
lain sebagainya. Nah dari semua koding
yang telah dibuat ini kita dapat satukan dengan dan dibungkus dari
komponen-komponen OSGI ini.
ISI
-
Spesifikasi
OSGI
Spesifikasi OSGI yang dikembangkan oleh para anggota dalam proses
terbuka dan tersedia untuk publik secara gratis di bawah OSGi Spesifikasi
License. The OSGi Alliance memiliki kepatuhan program yang terbuka untuk
anggota saja. Pada November 2010, ada tujuh bersertifikat kerangka
OSGi implementasi. Sebuah
daftar halaman terpisah baik bersertifikat dan non-bersertifikat OSGi Spesifikasi Implementasi , yang
meliputi kerangka OSGi dan spesifikasi OSGi lainnya.
Spesifikasi
OSGI adalah suatu kerangka kerja yang mendefinisikan aplikasi model manajemen
siklus hidup, sebuah layanan registrasi, sebuah lingkungan eksekusi dan modul. Spesifikasi
OSGI digunakan di dalam sebuah aplikasi mulai dari ponsel ke open source
Eclipse IDE. Wilayah aplikasi lain meliputi mobile, otomasi industri,
otomatisasi bangunan, PDA, komputasi grid, hiburan, armada manajemen dan
palikasi server.
-
Arsitektur
OSGI
OSGI adalah sebuah set spesifikasi yang mendefinisikan sebuah komponen
system dinamik untuk java. Spesifikasi OSGI memungkinkan komponen-komponenya
untuk menyembunyikan implementasinya dari komponen lainnya ketika berkomunikasi
melalui services dimana biasanya ketika hal ini berlnagsung implementasi antar
komponen dapat terlihat jelas. Model yang simpel ini telah jauh mencapai efek
dari segala aspek dari proses pengembangan software.
OSGI service gateway arsitektur
Setiap kerangka yang
menerapkan standar OSGI menyediakan suatu lingkungan untuk modularisasi
aplikasi ke bundel kecil. Setiap bundel digabungkan dengan erat, memuat koleksi
dinamis kelas, dan konfigurasi file-file yang secara eksplisit menyatakan
dependensi eksternal mereka(jika ada)/
Kerangka kerjsa ini secara konseptual di bagi menjadi bidang-bidang berikut
:
-
Bundel
Bundel adalah kumpulan jaringan normal komponen dengan header tambahan yang
nyata. Sebuah bundel adalah sekelompok kelas java dan sumber daya tambahan yang
dilengkapi dengan rincian file pada Manifest.MF nyata semua isinya. Serta layanan
tambahan yang diperlukan untuk memberikan kelompok termasuk kelas java yang
lebih canggih, dengan tingkat seluruh agregat sebuah komponen.
-
Layanan
Layanan yang menghubungkan lapisan bundel secara dinamis dengan menawarkan
model menawarka, menerbitkan, menemukan model dapat mengikat Plain Old Java
Interfaces(POJI) atau Plain Old Java Objectd(POJO).
-
Layanan
Registrasi
Aplikasi pemrograman antarmuka untuk jasa manajemen ( Service Registration,
SERVICE Tracker dan Service Reference). Kumpulan layanan ini dapat mengimplementasikan
dan mendaftarkan dengan layanan registrasi. Layanan klien dapat menemukan atau
bereaksi ketika muncul atau menghilang di registrasi.
-
Siklus-Hidup
Aplikasi pemrograman antarmuka untuk manajemen siklus hidup(install, start,
stop, update. Dan uninstall) untuk bundel.
-
Modul
Lapisam yang mendefinisikan enkapsulasi dan deklarasi dependensi(bagaimana
sebuah bungkusan dapat ,mengimpor dan mengekspor kode)
-
Kemanan
Lapisan yang menangani aspek keamanan dengan membatasi fungsionalitas
bundel untuk kemampuan yang telah ditentukan.
-
Pelaksanaan
Lingkungan
Mendefinisikan metode dan kelas apa yang tersedia dalam platform tertentu. Tidak
ada daftar tetap Pelaksanaan lingkungan, karena dapat berubah sebagai komunitas
java proses menciptakan versi baru dan edisi java. namun, kumpulan berikut ini
kebanyakan mengikuti impelementasi OSGI.
a.
CDC-1.0/Foundation-1.0
b.
CDC-1.0/Foundation-1.1
c.
OSGI/minimum-1.0
d.
OSGI/minimum-1.1
e.
JRE-1.1
f.
From
J2SE-1.2 up to J2SE-1.6
Contoh Implementasi OSGI
-
Dalam kehidupan
sehari-hari
Dikembangkan untuk mengendalikan
alat-alat elektronik dalam rumah tangga dengan internet. Caranya dengan
menghubungkan berbagai framework OSGI ini untuk mengendalikan alat-alat rumah
tangga yang bersifat elektronik. Hal ini dilakukan dengan berbagai protocol
network yaitu bluetooth, uPnP, HAVI dan X10. Dengan bantuan jini dan standart
OSGI dari sun micro sistem yaitu Java Embedded Server. Teknologi ini adalah
salah satu standart untuk pembuatan home network yang berbasis java.
-
Teknologi dan
industri
Pengembangan ini untuk
otomatisasi industri, seperti otomatisnya sistem dalam gudang yang dapat
meminta PPIC untuk mengadakan bahan baku dan lainnya.
-
Ilmu
Komputer
Salah satu contoh nya adalah
Knopflerfish. Knopflerfish merupakan framework untuk melakukan OSGI di dalam
program java. dan juga eclipse IDE merupakan OSGI framework yang dikembangkan
oleh eclipse dan berbasis GUI.
Kesimpulan
Dari uraian diatas kita dapat
menyimpulkan dengan teknologi OSGI kita dapat mempermudah pekerjaan yang
berkaitan dengan elektronik. Karena fungsi dari OSGI sendiri adalah
menggabungkan berbagai fungsi salam satu aplikasi.
DAFTAR PUSTAKA
0 komentar:
Posting Komentar