Assalamu’alaikum wr.wb.
Salam
Blogger. Pada tulisan kali ini saya akan mengulas tentang Spesifikasi &
Arsitektur Open Service Gateway Initiative beserta penerapannya dalam bidang
TI. Teknologi Open Service Gateway Initiative merupakan seperangkat
spesifikasi yang mendefinisikan sistem komponen dinamis untuk Java salah satu
contohnya. Spesifikasi ini memungkinkan suatu model mengembangkan aplikasi yang
dinamis terdiri dari banyak komponen. Spesifikasi OSGI yang sekarang
digunakan dalam aplikasi mulai dari ponsel ke open source Eclipse IDE.
Open
Service Gateway Initiative (OSGi) juga merupakan sebuah sistem dan aplikasi
interoperability berbasis komponen platform yang terintegrasi. OSGi merupakan
sistem 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 komputer 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.
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. Inti bagian dari spesifikasi OSGI 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.
Arsitektur OSGi:
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. Bundel
Kumpulan jar normal komponen dengan nyata tambahan header. Sebuah bundeladalah 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 perilaku yang lebih canggih, dengan tingkat deeming seluruh agregat sebuah komponen.
Kumpulan jar normal komponen dengan nyata tambahan header. Sebuah bundeladalah 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 perilaku yang lebih canggih, dengan tingkat deeming seluruh agregat sebuah komponen.
2. Layanan
Layanan yang menghubungkan lapisan bundel dalam cara yang dinamis dengan menawarkan, menerbitkan dan menemukan model dapat mengikat Java lama untuk menikmati objek (POJO). Siklus hidup menambahkan lapisan bundel dinamis yang dapat diinstal, mulai, berhenti, diperbarui dan dihapus. Buntalan bergantung pada lapisan modul untuk kelas loading tetapi menambahkan API untuk mengatur modul – modul dalam run time. Memperkenalkan lapisan siklus hidup dinamika yang biasanya bukan bagian dari aplikasi. Mekanisme ketergantungan luas digunakan untuk menjamin operasi yang benar dari lingkungan.
Layanan yang menghubungkan lapisan bundel dalam cara yang dinamis dengan menawarkan, menerbitkan dan menemukan model dapat mengikat Java lama untuk menikmati objek (POJO). Siklus hidup menambahkan lapisan bundel dinamis yang dapat diinstal, mulai, berhenti, diperbarui dan dihapus. Buntalan bergantung pada lapisan modul untuk kelas loading tetapi menambahkan API untuk mengatur modul – modul dalam run time. Memperkenalkan lapisan siklus hidup dinamika yang biasanya bukan bagian dari aplikasi. Mekanisme ketergantungan luas digunakan untuk menjamin operasi yang benar dari lingkungan.
3. Layanan Registrasi (Services-Registry)
API untuk manajemen jasa (ServiceRegistration, ServiceTracker
dan ServiceReference).OSGi Alliance yang telah ditentukan
banyak layanan. Layanan yang ditentukan oleh antarmuka Java. Kumpulan dapat
mengimplementasikan antarmuka ini dan mendaftarkan layanan dengan Layanan
Registri. Layanan klien dapat menemukannya di registri, atau bereaksi ketika
muncul atau menghilang.
4. Siklus Hidup (Life-Cycle)
API untuk manajemen siklus hidup untuk (instal, start, stop,
update, dan uninstall) bundel.
5. Modul
Lapisan yang mendefinisikan enkapsulasi
dan deklarasi dependensi (bagaimana sebuah bungkusan dapat mengimpor dan
mengekspor kode).
6. Keamanan
Layer yang menangani aspek keamanan
dengan membatasi fungsionalitas bundel untuk pra didefinisikan kemampuan.
7. Pelaksanaan
Lingkungan
Mendefinisikan metode dan kelas apa yang
tersedia dalam platform tertentu. Tidak 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.0/Foundation-1.0
· 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
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. 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.
Kesimpulan dari tulisan ini yaitu bahwa Open Service Gateway
Initiative (OSGi) merupakan sebuah sistem dan aplikasi interoperability berbasis
komponen platform yang terintegrasi. OSGi merupakan sistem 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 serta memiliki
banyak manfaat dibidang TI.
Sumber :
http://zainuliman.blogspot.com/2009/12/open-service-gateway-initiative-osgi.html
http://ayazmaniez.wordpress.com/2009/11/24/open-service-gateway-initiative-osgi/
http://cosaviora.blogspot.com/2011/01/spesifikasi-dari-osgi-open-service.html
Tidak ada komentar:
Posting Komentar