Rabu, 06 Januari 2010

Contoh Penerapan OSGi (Open Service Gateaway Initiative)

Merupakan serangkaian spesifikasi yang mendefinisikan sebuah sistem komponen dinamik untuk Java. Spesifikasi ini memungkinkan sebuah model pengembangan dimana aplikasi (secara dinamis) disusun dari bermacam komponen (yang dapat digunakan ulang) berbeda. Spesifikasi OSGi memungkinkan komponen untuk menyembunyikan implementasi mereka dari komponen lainnya sementara berkomunikasi menggunakan service, dimana objeknya secara khusus dibagi diantara komponen. Model sederhana ini secara mengejutkan telah mencapai efek untuk hampir semua aspek dari proses pengembangan perangkat lunak. OSGi merupakan teknologi pertama yang berhasil memecahkan masalah-masalah nyata dalam pengembangan perangkat lunak dengan menggunakan sebuah komponen sistem. Pengguna teknologi OSGi melihat pengurangan kompleksitas yang signifikan hampir dalam semua aspek pengembangan perangkat lunak. Kode program yang lebih mudah ditulis dan diuji, dapat dipakai ulang, membangun sistem menjadi lebih mudah, pembukaan yang lebih dapat diatur, bugs yang dapat dideteksi lebih cepat dan runtime yang menyediakan sebuah tanda yang memberitahu apa yang sedang berjalan.

OSGi mempunyai lapisan seperti pada gambar berikut ini:

Lapisan OSGi

  • Bundles

Merupakan komponen OSGi yang dibuat oleh pengembang.

  • Services

Lapisan services menghubungkan bundles dalam sebuah jalan dinamik dengan menawarkan sebuah model mengumumkan-mencari-mengikat untuk menjelaskan objek lama Java.

  • Life Cycle

API yang harus diinstall, dijalankan, dihentikan, diperbarui, dan bundle dihilangkan.

  • Modules

Merupakan lapisan yang menjelaskan bagaimana bundles menjadi sangat penting dan mengekspor kode.

  • Security

Lapisan yang menangani keamanan.

  • Execution Environment

Menjelaskan metoda dan kelas apa yang tersedia dalam platform yang spesifik.


http://code86.wordpress.com/2009/12/20/middleware-osgi-ami-c-jcp/