Selasa, 06 Januari 2015

OSGi (Open Service Gateway Initiative)

Definisi
OSGI (Open Service Gateway Initiative) merupakan sebuah rencana industri untuk cara standar untuk menghubungkan perangkat seperti perangkat rumah tangga dan sistem keamanan ke Internet. OSGI mempunyai rencana yaitu menentukan program aplikasi antarmuka (API) untuk pemrogram menggunakan, 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. OSGI adalah sebuah interface pemrograman standar terbuka. The OSGI Alliance (sebelumnya dikenal sebagai Open Services Gateway inisiatif, sekarang nama kuno) 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.

Kerangka OSGi (OSGi framework)
Kerangka OSGi merupakan suatu sistem modul dan layanan platform untuk Java bahasa pemrograman yang menerapkan lengkap dan dinamis model komponen, sesuatu yang seperti tahun 2012 tidak ada di Jawa standalone / VM lingkungan. Spesifikasi OSGi telah bergerak melampaui fokus asli gateway layanan, dan sekarang digunakan dalam aplikasi mulai dari ponsel ke open source Eclipse IDE. Area aplikasi lainnya termasuk mobil, otomasi industri, otomatisasi bangunan, PDA, komputasi grid, hiburan, armada manajemen dan aplikasi server .
Model lapisan dari OSGi adalah sebagai berikut :

Definisi :
a.Bundles : bundles adalah komponen OSGi yang dibuat oleh pengembang/developer.
b.Services : lapisan service menghubungkan bundles dalam sebuah jalan dinamik dengan menawarkan model publish-find-bind untuk objek Java yang lama.
c.Life Cycle : API untuk menginstall, memulai, menghentikan, update dan menguninstall bundles.
d.Modules : lapisan yang menjelaskan bagaimana bundles dapat mengimport dan mengexport kode.
e.Security : Lapisan yang memegang aspek keamanan.
f.Execution Environment : menjelaskan class dan method apa yang ada di platform.

Manfaat OSGI
1. Mengurangi Kompleksitas (Reduced Complexity)
2. Reuse
3. Real World
4. Easy Deployment
5. Dynamic Updates
6. Simple
7. Kecil (Small)
8. Cepat (Fast)

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.

Kekurangan OSGI :
1. Ruang lingkupnya sangat kecil
2. Keamanan kurang terjaga dari kejahatan hacker
3. Biaya sangat mahat untuk pembuatan aplikasi dari OSGI
4. Rawan terjadinya pencurian data
5. Ukuran penyimpanan yang sangat kecil untuk data yang di simpan

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. 

OSGi Specifications :
OSGi Service Platform Release 4
OSGi Service Platform Release 4 was first released in October 2005. Version 4.1 was released in May 2007. Version 4.2 was released in September 2009. 
-Errata 
-API Javadoc 
-XML Schemas 

Peluang dan Tantangan dalam Pengembangan OSGi
1.      Mengurangi Kompleksitas (Reduced Complexity).
2.      Mengembangkan dengan teknologi OSGi berarti mengembangkan bundel: komponenOSGi. Bundel adalah modul. Mereka menyembunyikan internal dari bundel lain danberkomunikasi melalui layanan didefinisikan dengan baik. Menyembunyikan internals berartilebih banyak kebebasan untuk berubah nanti. Hal ini tidak hanya mengurangi jumlah bug, itu juga membuat kumpulan sederhana untuk berkembang karena bundel ukuran benarmenerapkan sepotong fungsionalitas melalui interface didefinisikan dengan baik. Ada sebuahblog menarik yang menjelaskan teknologi OSGi apa yang mereka lakukan bagi prosespembangunan
2.      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 jugamenjadi tersedia sebagai bundel siap pakai.
3.      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.
4.      Easy Deployment.
Teknologi OSGi bukan hanya sebuah standard untuk komponen, tapi juga menentukan bagaimana komponen diinstal dan dikelola. API telah digunakan oleh banyak berkas untuk menyediakan sebuah agen manajemen. Agen manajemen ini bisa sesederhana sebagai perintah shell, TR-69 sebuah protokol manajemen pengemudi, OMA DM protokol sopir, komputasi awan antarmuka untuk Amazon EC2, atau IBM Tivoli sistem manajemen. Manajemen standar API membuatnya sangat mudah untuk mengintegrasikan teknologi OSGi dalam sistem yang ada dan masa depan.
5.      Dynamic Updates.
Model komponen OSGi adalah model dinamis. Kumpulan dapat diinstal, mulai, berhenti,diperbarui, dan dihapus tanpa menurunkan keseluruhan sistem. Banyak pengembang Java tidak percaya ini dapat dilakukan pada awalnya oleh karena itu tidak digunakan dalam produksi.Namun, setelah menggunakan ini dalam pembangunan selama beberapa waktu, sebagian besar mulai menyadari bahwa itu benar-benar bekerja dan secara signifikan mengurangi waktu penyebaran.
6.      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.
7.      Kecil (Small). 
The OSGi Release 4 Framework dapat diimplementasikan kedalam JAR 300KB. Ini adalah overhead kecil untuk jumlah fungsi yang ditambahkan ke salah satu aplikasi dengan memasukkan OSGi. Oleh karena itu OSGi berjalan pada berbagai macam perangkat: dari sangat kecil, kecil, dan untuk mainframe. Hanya meminta Java VM minimal untuk menjalankan dan menambahkan sangat sedikit di atasnya.
8.      Cepat (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. Pencarian sebuah kelas memerlukan pencarian melalui daftar ini. Sebaliknya, pra-kabel OSGi bundel dan tahu persis untuk setiap bundel bundel yang menyediakan kelas. Kurangnya pencarian yang signifikan faktor mempercepat saat startup.

Sumber :

Sabtu, 20 Desember 2014

Manajemen Data Telematika



Definisi manajemen data menurut DAMA (Demand Assigned Multiple Access) merupakan suatu pengembangan dan penerapan arsitektur, kebijakan, praktik, dan prosedur yang secara benar menangani siklus hidup lengkap data yang dibutuhkan oleh suatu perusahaan. Maka dapat diartikan Manajemen data telematika merupakan prosedur yang menangani siklus hidup lengkap data yang dibutuhkan oleh perusahaan dengan bantuan telematika.

Manajemen Data Telematika dilihat dari sisi Client & Server
a.       Manajemen Data Sisi Klien
Manajemen Data yang terjadi pada sisi klien dapat kita pahami pada DBMS dibawah ini.
·         Mobile DBMS (Embedded/Ultra tiny/Java Database), merupakan suatu DBMS yang terdapat pada peralatan bergerak (mobile device). mobile DBMS adalah versi khusus dari sebuah departemen atau perusahaan DBMS. Ini dirancang untuk digunakan dengan remote pengguna yang biasanya tidak terhubung ke jaringan. DBMS memungkinkan mobile akses database lokal dan modifikasi pada laptop atau perangkat genggam, seperti PDA atau PocketPC Palm. Selanjutnya, mobile DBMS menyediakan mekanisme untuk sinkronisasi perubahan basis data jauh terpusat, perusahaan atau departemen server database

b.      Manajemen Data Sisi Server
Manajemen Data yang terjadi pada sisi server dapat kita pahami pada versi DBMS dibawah ini.
·         MODBMS (Moving Object DBMS, adalah sebuah DBMS yang menyimpan dan mengelola informasi lokasi serta dinamis lainnya informasi tentang obyek bergerak. MODBMS memungkinkan seseorang untuk mewakili benda-benda bergerak dalam database dan untuk menanyakan pertanyaan tentang gerakan tersebut. Daerah MODBMS merupakan bidang yang belum dijelajahi relatif terhadap RDBMS atau DBMS Spasial di mana beberapa karya yang telah dilakukan dalam standarisasi dan komersialisasi. Ada beberapa penelitian prototipe untuk MODBMS seperti DOMINO tetapi hanya sedikit produk MODBMS komersial. Memindahkan objek dapat diklasifikasikan ke dalam bergerak poin dan bergerak daerah. Memindahkan objek hanya relevan tergantung waktu posisi dalam ruang. Mereka bisa mobil, truk, pesawat terbang, kapal atau ponsel pengguna. Pindah daerah objek bergerak dengan rupa seperti badai, hutan file, tumpahan minyak, wabah penyakit, dan sebagainya. Pindah daerah berubah posisi dan geometri objek dengan waktu sambil bergerak poin hanya berubah posisi benda. 
c.       Selain itu terdapat Manajemen Database Sistem Perangkat Bergerak yaitu komunikasi data bergerak, misalnya untuk akses internet. Pengenalan WAP (Wireless Application Protcol) telah menunjukan potensi sebagai layanan internet nirkabel atau WAP merupakan protocol global terbuka yang memungkinkan pengguna mengakses layanan online dari layar telepon genggam dengan menggunakan built-in browser.

Permasalahan atau isu yang muncul dalam Manajemen Data Telematika (dilihat dari sisi Client Server)
Berikut merupakan kelemahan penggunaan client server :
1.   Traffic congestion on the network, jika banyak client mengakses ke server secara simultan, maka server akan overload.
2.   Berbeda dengan P2P network, dimana bandwidthnya meningkat jika banyak client merequest. Karena bandwidth berasal dari semua komputer yang terkoneksi kepadanya.
3.   Pada client-server, ada kemungkinan server fail.
4.   Pada P2P networks, resources biasanya didistribusikan ke beberapa node sehingga masih ada node yang dapat meresponse request.

Beberapa manfaat dari Manajemen Data Telematika yang Baik
·         Mengatasi kerangkapan data
·         Menghindari terjadinya inkonsistensi data
·         Mengatasi kesulitan dalam akses data
·         Menyusun format standar sebuah data
·         Dapat digunakan oleh banyak pemakai
·         Melakukan perlindungan dan pengamanan data
·         Menyusun integritas dan independasi data


Referensi :

Antarmuka Telematika

TEMA 1 : ANTARMUKA TELEMATIKA
Definisi antarmuka ( interface) adalah salah satu layanan yang disediakan sistem operasi sebagai sarana interaksi antara pengguna dengan sistem operasi. Antarmuka (interface) merupakan komponen sistem operasi yang bersentuhan langsung dengan pengguna.
Terdapat dua jenis antarmuka, yaitu Command Line Interface (CLI) dan Graphical User Interface (GUI).
1.      Command Line Interface (CLI)
CLI merupakan tipe antarmuka dimana pengguna berinteraksi dengan sistem operasi melalui text-terminal. Pengguna menjalankan perintah dan program di sistem operasi tersebut dengan cara mengetikkan baris-baris tertentu. Meskipun konsepnya sama, tiap-tiap sistem operasi memiliki nama atau istilah yang berbeda untuk CLI-nya. UNIX memberi nama CLI-nya sebagai bash, ash, ksh, dan lain sebagainya. Microsoft Disk Operating System (MS-DOS) memberi nama command.com atau Command Prompt. Sedangkan pada Windows Vista, Microsoft menamakannya PowerShell. Pengguna Linux mengenal CLI pada Linux sebagai terminal, sedangkan pada Apple namanya adalah commandshell.
2.      Graphical User Interface (GUI)
GUI merupakan tipe antarmuka yang digunakan oleh pengguna untuk berinteraksi dengan sistem operasi melalui gambar-gambar grafik, ikon, menu, dan menggunakan perangkat penunjuk ( pointing device) seperti mouse atautrack ball. Elemen-elemen utama dari GUI bisa diringkas dalam konsep WIMP ( window, icon, menu, pointing device). Terdapat beberapa macam Fitur Teknologi yang terkait dengan antar muka telematika, diantaranya :
a.       Head Up Display (HUD)
Head Up Display (HUD) merupakan sebuah tampilan transparan yang menampilkan data tanpa mengharuskan penggunanya untuk melihat ke arah yang lain dari sudut pandang biasanya. Asal nama dari alat ini yaitu pengguna dapat melihat informasi dengan kepala yang terangkat (head up) dan melihat ke arah depan daripada melihat ke arah bawah bagian instrumen. HUD dibuat untuk kepentingan penerbangan militer, tetapi sekarang HUD telah digunakan pada penerbangan sipil, kendaraan dan diterapkan oleh industri otomotif di dunia, dan BMW menjadi pabrikan otomotif pertama yang meluncurkan produk massal dengan teknologi HUD di kaca depannya. Teknologi ini tak hanya memberi kenyamanan bagi pengemudi, melainkan juga keselamatan berkendara. Contoh Head Up Display (HUD) : Automobile


b.       Tangible User Interface
Tangible User Interface (TUI) adalah sebuah antarmuka pengguna di mana orang berinteraksi dengan informasi digital melalui lingkungan fisik. Nama awal Graspable User Interface, yang tidak lagi digunakan. Salah satu pelopor dalam antarmuka pengguna nyata adalah Hiroshi Ishii, seorang profesor di MIT Media Laboratory yang mengepalai Berwujud Media Group. Pada visi-Nya nyata UIS, disebut Berwujud Bits, adalah memberikan bentuk fisik ke informasi digital, membuat bit secara langsung dimanipulasi dan terlihat. Bit nyata mengejar seamless coupling antara dua dunia yang sangat berbeda dari bit dan atom. Contoh Tangible User Interface (TUI) :Mesin Penjawab Marmer dan Sistem Topobo.
 
c.        Computer Vision
Computer vision adalah ilmu dan teknologi mesin yang melihat, di mana lihat dalam hal ini berarti bahwa mesin mampu mengekstrak informasi dari gambar yang diperlukan untuk menyelesaikan tugas tertentu. Sebagai suatu disiplin ilmu, Computer vision berkaitan dengan teori di balik sistem buatan bahwa ekstrak informasi dari gambar. Data gambar dapat mengambil banyak bentuk, seperti urutan video, pandangan dari beberapa kamera, atau data multi-dimensi dari scanner medis. Contoh aplikasi dari computer vision : 
  •  Psychology, AI – exploring representation and computation in natural vision
  •  Optical Character Recognition – text reading
  •  Remote Sensing – land use and environmental monitoring
  •  Medical Image Analysis – measurement and interpretation of many types of images
  •  Industrial Inspection – measurement, fault checking, process control
  •  Robotic – navigation and control


  
d.      Browsing Audio Data
Browsing Audio Data merupakan metode browsing jaringan yang digunakan untuk browsing video / audio data yang ditangkap oleh sebuah IP kamera. Jaringan video / audio metode browsing mencakupi langkah-langkah sebagai berikut ; Menjalankan sebuah program aplikasi komputer lokal untuk mendapatkan kode identifikasi yang disimpan dalam kamera IP. Transmisi untuk mendaftarkan kode identifikasi ke DDNS ( Dynamic Domain Name Server) oleh program aplikasi. Mendapatkan kamera IP pribadi alamat dan alamat server pribadi sehingga pasangan IP kamera dan kontrol kamera IP melalui kamera IP pribadi alamat dan alamat server pribadi compile ke layanan server melalui alamat server pribadi sehingga untuk mendapatkan video / audio data yang ditangkap oleh kamera IP, dimana server layanan menangkap video / audio data melalui Internet. Contoh Browsing Audio Data:  informasi berupa teks (text/plain, text/html), image (image/gif, image/jpeg, image/png), video (video/mpeg, video/quicktime), audio (audio/basic, audio/wav) dan application (application/msword, application/octet-stream).


e.       Speech Recognition
 Dikenal juga dengan pengenal suara otomatis (automatic speech recognition) atau pengenal suara komputer (computer speech recognition). Merupakan salah satu fitur antarmuka telematika yang merubah suara menjadi tulisan. Istilah ‘voice recognition’ terkadang digunakan untuk menunjuk ke speech recognition dimana sistem pengenal dilatih untuk menjadi pembicara istimewa, seperti pada kasus perangkat lunak untuk komputer pribadi, oleh karena itu disana terdapat aspek dari pengenal pembicara, dimana digunakan untuk mengenali siapa orang yang berbicara, untuk mengenali lebih baik apa yang orang itu bicarakan. Speech recognition merupakan istilah masukan yang berarti dapat mengartikan pembicaraan siapa saja. Contoh Speech Recognition : Aplikasi perawatan kesehatan. dalam metode perawatan kesehatan domain, bahkan di bangunmeningkatkan teknologi pengenalan suara (transcriptionist medis (MTs) belum menjadi ibunya.


f.       Speech Synthesis
Speech synthesis adalah sebuah kemampuan bicara manusia yang dibuat oleh manusia (artificial). Sebuah sistem komputer digunakan untuk tujuan ini yang disebut sebagai speech synthesizer, dan dapat diimplementasikan ke dalam software atau hardware.Synthesized speech dapat diciptakan dengan menggabungkan beberapa potongan-potongan dari pembicaraan atau pidato yang sudah direkam dalam sebuah basis data. Kualitas dari sebuah speech synthesizer dilihat dari kemiripannya dengan suara manusia dan kemampuannya untuk bisa dipahami. Contoh Speech Synthesis : sebuah sistem text-to-speech (TTS) yang dapat mengkonversikan teks dengan bahasa biasa menjadi suara. Program TTS yang jelas dapat membantu orang dengan gangguan visual atau ketidakmampuan membaca, untuk mendengarkan pada pekerjaan yang tertulis dalam komputer. Banyak Sistem Operasi komputer yang telah dimasukkan speech synthesizer sejak tahun 1980-an.







Referensi :