Selasa, 18 November 2014

OSGI(Open Service Gateway Initiative)

BAB 1
Pendahuluan

Dikembangkan untuk mengendalikan alat-alat elektronik dalam rumah tangga dengan internet. Yaitu 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 sunmicrosistem yaitu Java Embedded Server. Teknologi ini dinamakan home network dan jinni adalah salah satu standart untuk pembuatan home nerwork yang berbasis java.
Selain itu, pengembangan OSGI dalam Teknologi dan industri adalah untuk otomatisasi industri. Seperti otomatisnya system dalam gudang yang dapat meminta dalam PPIC untuk mengadakan bahan baku, dan masih banyak yang lain.
Dalam ilmu Komputer ini sangat banyak pengembang yang memanfaatkan teknologi OSGI ini. Dari surfing di internet banyak yang mengulas tentang Pemrograman Java yang mengapdopsi teknologi OSGI ini. Salah satu contoh adalah knopflerfish merupakan framework untuk melakukan OSGI didalam program Java. Dan juga eclipse IDE merupakan OSGI framework yang dikembangkan oleh eclipse dan berbasis GUI. Dan masih banyak juga dalam server serta program-program lain yang mengembangkan teknologi OSGI ini.
Apakah OSGI itu? Kami akan membahas lebih dalam tentang OSGI.


BAB 2
Pembahasan

OSGI (Open Service Gateway Initiative) adalah sebuah rencana industri untuk cara standar untukmenghubungkan perangkat seperti perangkat rumah tangga dan sistem keamanan ke Internet. OSGI berencana menentukan program aplikasi antarmuka (API) untuk memungkinkan komunikasi dan kontrol antara penyedia layanan dan perangkat di dalam rumah atau usaha kecil jaringan. OSGI API akan dibangun pada bahasa pemrograman Java. Program java pada umumnya dapat berjalan pada platform sistem operasi komputer.
The OSGI Alliance (sebelumnya dikenal sebagai Open Services Gateway inisiatif) adalah sebuah organisasi standar terbuka yang didirikan pada Maret 1999. Aliansi dan anggota – anggotanya telah ditentukan sebuah layanan berbasis Java platform yang dapat dikelola dari jarak jauh. Spesifikasi OSGI yang dikembangkan oleh para anggota dalam proses terbuka dan tersedia untuk umum secara gratis di bawah Lisensi Spesifikasi OSGI. Pada Oktober 2009, daftar bersertifikat OSGI implementasiberisi lima entri.



Setiap kerangka yang menerapkan standar OSGi menyediakan suatu lingkungan untuk modularisasi aplikasi ke dalam kumpulan yang lebih kecil. Setiap bundel adalah erat-coupled, dynamically loadable kelas koleksi, botol, dan file-file konfigurasi yang secara eksplisit menyatakan dependensi eksternal mereka (jika ada).  Kerangka kerja konseptual yang dibagi dalam bidang-bidang berikut:
  1. Bundles
    Bundles adalah normal jar komponen dengan nyata tambahan header
  2. Services
    Layanan yang menghubungkan lapisan bundel dalam cara yang dinamis dengan menawarkan menerbitkan-menemukan model mengikat Java lama untuk menikmati objek (POJO).
  3. Services
    API untuk jasa manajemen (ServiceRegistration, ServiceTracker dan ServiceReference).
  4. Life-Cycle
    API untuk manajemen siklus hidup untuk (instal, start, stop, update, dan uninstall) bundel.
  5. Modules
    Lapisan yang mendefinisikan enkapsulasi dan deklarasi dependensi (bagaimana sebuah bungkusan dapat mengimpor dan mengekspor kode).
  6. Security
    Layer yang menangani aspek keamanan dengan membatasi fungsionalitas bundel untuk pra-didefinisikan kemampuan.
  7. Execution Environment
Mendefinisikan metode dan kelas apa yang tersedia dalam platform tertentuTidak ada daftar tetap eksekusi lingkungan, karena dapat berubah sebagai Java Community Process menciptakan versi baru dan edisi Jawa. Namun, set berikut saat ini didukung oleh sebagian besar OSGi implementasi :
·         CDC-1.1/Foundation-1.1
·         OSGi/Minimum-1.0
·         OSGi/Minimum-1.1
·         JRE-1.1
·         Dari J2SE-1.2 hingga J2SE-1.6
·         CDC-1.0/Foundation-1.0



BAB 3
Penutup
Kesimpulan

Manfaat dari OSGI adalah sebagai berikut :
Ø  Mengurangi Kompleksitas (Reduced Complexity), mengembangkan dengan teknologi OSGi berarti mengembangkan bundel: komponen OSGi. Bundel adalah modul. Mereka menyembunyikan internal dari bundel lain dan berkomunikasi melalui layanan didefinisikan dengan baik. Menyembunyikan internals berarti lebih banyak kebebasan untuk berubah nanti. Hal ini tidak hanya mengurangi jumlah bug, itu juga membuat kumpulan sederhana untuk berkembang karena bundel ukuran benar menerapkan sepotong fungsionalitas melalui interface didefinisikan dengan baik.
Ø  Reuse, para model komponen OSGi membuatnya sangat mudah untuk menggunakan banyak komponen pihak ketiga dalam suatu aplikasi. Peningkatan jumlah proyek-proyek sumber terbuka memberikan JAR’s mereka siap dibuat untuk OSGi. Namun, perpustakaan komersial juga menjadi tersedia sebagai bundel siap pakai.
Ø  Real World, OSGI kerangka kerja yang dinamis. Ini dapat memperbarui bundel on the fly dan pelayanan yang datang dan pergi. Ini dapat menghemat dalam penulisan kode dan juga menyediakan visibilitas global, debugging tools, dan fungsionalitas lebih daripada yang telah dilaksanakan selama satu solusi khusus.
Ø  Easy Deployment, Manajemen standar API membuatnya sangat mudah untuk mengintegrasikan teknologi OSGi dalam sistem yang ada dan masa depan.
Ø  Dynamic Updates, Model komponen OSGi adalah model dinamis. Kumpulan dapat diinstal, mulai, berhenti, diperbarui dan dihapus tanpa menurunkan keseluruhan sistem.
Ø  Simple, The OSGI API sangat sederhana. API inti hanya terdiri dari satu paket dan kurang dari 30 kelas / interface. API inti ini cukup untuk menulis kumpulan, menginstalnya, start, stop, update,dan menghapus mereka dan mencakup semua pendengar dan keamanan kelas.
Ø  Small, The OSGi Release 4 Framework dapat diimplementasikan kedalam JAR 300KB. Ini adalahoverhead kecil untuk jumlah fungsi yang ditambahkan ke salah satu aplikasi denganmemasukkan OSGi. Oleh karena itu OSGi berjalan pada berbagai macam perangkat: dari sangatkecil, kecil, dan untuk mainframe. Hanya meminta Java VM minimal untuk menjalankan danmenambahkan sangat sedikit di atasnya.
Ø  Fast, Salah satu tanggung jawab utama dari Framework OSGi memuat kelas-kelas dari bundel.Di Java tradisional, JARs benar-benar terlihat dan ditempatkan pada daftar linear. Pencariansebuah kelas memerlukan pencarian melalui daftar ini. Sebaliknya, pra-kabel OSGi bundel dantahu persis untuk setiap bundel bundel yang menyediakan kelas. Kurangnya pencarian yangsignifikan faktor mempercepat saat startup.

Sumber :