Selasa, 04 Januari 2011

Open Service Gateway Initiative (OSGI)


OSGI (Open Service Gateway Initiative) adalah sebuah rencana industri untuk cara standar untuk menghubungkan perangkat seperti perangkat rumah tangga dan sistem keamanan ke Internet. OSGI berencana 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. Program java pada umumnya dapat berjalan pada platform sistem operasi komputer. 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.
Mengetahui bagaimana spesifikasi dari OSGI
Inti bagian dari spesifikasi 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. OSGI Alliance yang memiliki program kepatuhan yang hanya terbuka untuk anggota. Pada Oktober 2009, daftar bersertifikat OSGI implementasi berisi lima entri.
Spesifikasi OSGI yang sekarang digunakan dalam aplikasi mulai dari ponsel ke open source Eclipse IDE. Wilayah aplikasi lain meliputi mobil, otomasi industri, otomatisasi bangunan, PDA, komputasi grid, hiburan (misalnya iPronto), armada manajemen dan aplikasi server. Adapun spesifikasi yang lain dimana OSGI akan dirancang untuk melengkapi standar perumahan yang ada, seperti orang – orang LonWorks (lihat kontrol jaringan), CAL, CEBus, HAVi, dan lain-lain.
Mengetahui bagaimana arsitektur dari OSGI
Ada kerangka OSGI yang 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 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 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.
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. ModulLapisan yang mendefinisikan enkapsulasi dan deklarasi dependensi (bagaimana sebuah bungkusan dapat mengimpor dan mengekspor kode).
6. KeamananLayer 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

MANAJEMEN DATA TELEMATIKA


PENGERTIAN CLIENT-SERVER
Client/Server dapat diartikan sebagai kemampuan komputer untuk meminta layanan request data kepada komputer lain. Setiap instancedari komputer yang meminta layanan disebut sebagai client, sedangkan setiap instance yang menyediakan layanan disebut sebagai server. Data yang diminta oleh client dapat diambil dari database pada sisi server yang sering disebut database server, seperi misalnya MySQL, PostgreSQL, Oracle, atau SQL Server. KARAKTERISTIK CLIENT-SERVER
Client dan Server merupakan item proses (logika) terpisah yang bekerja sama pada suatu jaringan komputer untuk mengerjakan suatu tugas sebagai berikut:
• 
Service : Menyediakan layanan terpisah yang berbeda
• 
Shared resource : Server dapat melayani beberapa client pada saat yang sama dan mengatur pengaksesan resource .
• 
Asymmetrical Protocol : antara client dan server merupakan hubungan one-to-many. Client memulai komunikasi dengan mengirim request ke server. Server menunggu permintaan dari client. Kondisi tersebut juga memungkinkan komunikasi callback.
• 
Transparency Location : proses server dapat ditempatkan pada mesin yang sama atau terpisah dengan proses client. Client/server akan menyembunyikan lokasi server dari client.
• 
Mix-and-match : tidak tergantung pada platform
• 
Message-based-exchange : antara client dan server berkomunikasi dengan mekanisme pertukaran message.
• 
Encapsulation of service : message memberitahu server apa yang akan dikerjakan.
• 
Scalability : sistem C/S dapat dimekarkan baik vertical maupun horisontal
• 
Integrity : kode dan data server diatur secara terpusat, sedangkan pada client tetap pada komputer tersendiri.
• 
Characteristics of a client
– Initiates requests
– Waits for and receives replies
– Usually connects to a small number of servers at one time
– Typically interacts directly with end-users using a graphical user interface
• 
Characteristics of a server
– Passive (slave)
– Waits for requests from clients
–Upon receipt of requests, processes them and then serves replies
– Usually accepts connections from a large number of clients
– Typically does not interact directly with end-users
KEUNTUNGAN CLIENT-SERVER
• Client-server mampu menciptakan aturan dan kewajiban komputasi secara terdistribusi.
• Mudah dalam maintenance. Memungkinkan untuk mengganti, memperbaiki server tanpa mengganggu client.
• Semua data disimpan di server Server dapat mengkontrol akses terhadap resources, hanya yang memiliki autorisasi saja.
• Tempat penyimpanan terpusat, update data mudah. Pada peer-to-peer, update data sulit.
• Mendukung banyak clients berbeda dan kemampuan yang berbeda pula.
KELEMAHAN CLIENT-SERVER
• Traffic congestion on the network, jika banyak client mengakses ke server secara simultan, maka server akan overload.
– Berbeda dengan P2P network, dimana bandwidthnya meningkat jika banyak client merequest. Karena bandwidth berasal dari semua komputer yang terkoneksi kepadanya.
• Pada client-server, ada kemungkinan server fail.
– Pada P2P networks, resources biasanya didistribusikan ke beberapa node sehingga masih ada node yang dapat meresponse request.
ARSITEKTUR CLIENT/SERVER
=> Menggunakan LAN untuk mendukung jaringan PC
=> Masing-masing PC memiliki penyimpan tersendiri
=> Berbagi hardware atau software

ARSITEKTUR FILE SERVER
=> Model pertama Client/Server
=> Semua pemrosesan dilakukan pada sisi workstation
=> Satu atau beberapa server terhubungkan dalam jaringan
=> Server bertindak sebagai file server
=> File server bertindak sebagai pengelola file dan memungkinkan klien mengakses file tersebut.
=> Setiap klien dilengkapi DBMS tersendiri
=> DBMS berinteraksi dengan data yang tersimpan dalam bentuk file pada server
=> Aktivitas pada klien:
=> Meminta data
=> Meminta penguncian data
=> Tanggapan dari klien :
-- Memberikan data
-- Mengunci data dan memberikan statusnya



BATASAN FILE SERVER
=> Beban jaringan tinggi karena tabel yang diminta akan diserahkan oleh file server ke klien melalui jaringan.
=> Setiap klien harus memasang DBMS sehingga mengurangi memori.
=> Klien harus mempunyai kemampuan proses tinggi untuk mendapatkan response time yang bagus.
=> Salinan DBMS pada setiap klien harus menjaga integritas databasse yang dipakai secara bersama-sama ð tanggung jawab diserahkan kepada programmer.
ARSITEKTUR DATABASE SERVER
=> Klien bertanggung jawab dalam mengelola antar muka pemakai (mencakup logika penyajian data, logika pemrosesan data, logika aturan bisnis).
=> Database server bertanggung jawab pada penyimpana, pengaksesan, dan pemrosesan database.
=> Database serverlah yang dituntut memiliki kemampuan pemrosesan yang tinggi
=> Beban jaringan menjadi berkurang.
=> Otentikasi pemakai, pemeriksaan integrasi, pemeliharaan data dictionary dilakukan pada database server.
=> Database server merupakan implementasi dari two-tier architecture.
APPLICATION ARCHITECTURES

- Two-tier architecture, Contoh : program klien menggunakan ODBC/JDBC untuk berkomunikasi dengan database.
- Three-tier architecture, Contoh : aplikasi berbasis Web.

Contoh Two-Tier Architecture :

Contoh Three-Tier Architecture :

Arsitektur Three-Tier
- Melibatkan lapisan server yang lain selain lapisan database server.


Beberapa Keuntungan Arsitektur Three-Tier :
=> Keluwesan teknologi
=> Mudah untuk mengubah DBMS engine
=> Memungkinkan pula middle tier ke platform yang berbeda
=> Biaya jangka panjang yang rendah
=> Perubahan-perubahan cukup dilakukan pada middle tier daripada pada aplikasi keseluruhan
=> Keunggulan kompetitif
=> Kekampuan untuk bereaksi thd perubahan bisnis dengan cepat, dengan cara mengubah modul kode daripada mengubah keseluruhan aplikasi
Aplikasi Web dapat dibagi menjadi 2 macam:
=> Web Statis
=> Web Dinamis
Teknologi Web
Teknologi untuk membentuk aplikasi Web yang dinamis :
1. Teknologi pada sisi klien (client-side technology)
2. Teknologi pada sisi server (server-side technology)
Teknologi pada sisi Klien :
1. Kontrol Active X
2. Java applet
3. Client-side script (JavaScript dan VBScript)
4. DHTML (CSS / Cascading Style Sheets)
Teknologi pada sisi Server :
=> CGI
=> FastCGI
=> Proprietary Web Server API (ISAPI dan NSAPI)
=> Active Server Pages (ASP)
=> Java Server Pages (JSP) dan Java Servlets
=> Server-side JavaScript
=> PHP

Middleware Telematika


Dalam dunia teknologi informasi, terminologi middleware adalah istilah umum dalam pemrograman komputer yang digunakan untuk menyatukan, sebagai penghubung, ataupun untuk meningkatkan fungsi dari dua buah progaram/aplikasi yang telah ada.
Perangkat lunak middleware adalah perangkat lunak yang terletak diantara program aplikasi dan pelayanan-pelayanan yang ada di sistim operasi. Adapun fungsi dari middleware adalah:
  • Menyediakan lingkungan pemrograman aplilasi sederhana yang menyembunyikan penggunaan secara detail pelayanan-pelayanan yang ada pada sistem operasi .
  • Menyediakan lingkungan pemrograman aplikasi yang umum yang mencakup berbagai komputer dan sistim operasi.
  • Mengisi kekurangan yang terdapat antara sistem operasi dengan aplikasi, seperti dalam hal: networking, security, database, user interface, dan system administration.
Tujuan utama layanan middleware adalah untuk membantu memecahkan interkoneksi beberapa aplikasi dan masalah interoperabilitas.
Perkembangan middleware dari waktu ke waktu dapat dikatagorikan sebagai berikut:
  • On Line Transaction Processing (OLTP), merupakan perkembangan awal dari koneksi antar remote database. Pertama kali ditemukan tahun 1969 oleh seorang engineer di Ford, kemudian diadopsi oleh IBM hingga kini dikenal sebagai proses OLTP. DIGITAL ACMS merupakan contoh lainnya yang sukses pada tahun 70-an dan 80-an. UNIX OLTP lainnya seperti: Encina, Tuxedo pada era 80-an, serta DIGITAL CICS untuk UNIX yang memperkenalkan konsep dowsizing ke pasar.
  • Remote Procedure Call (RPC), menyediakan fasilitas jaringan secara transparan. Open Network Computing (ONC) merupakan prototipe pertama yang diperkenalkan awal tahun 70-an. Sun unggul dalam hal ini dengan mengeluarkan suatu standar untuk koneksi ke internet. Distributed Computing Environment (DCE) yang dikeluarkan oleh Open Systems Foundation (OSF) menyediakan fungsi-fungsi ONC yang cukup kompleks dan tidak mudah untuk sis administrasinya.
ommon Object Request Broker Architecture (CORBA), merupakan object-oriented middleware yang menggabungkan fungsi RPC, brokering, dan inheritance. DIGITAL ObjectBroker merupakan salah satu contohnya.
Database middleware adalah salah satu jenis middleware disampingmessage-oriented middlewareobject-oriented middleware, remoteprocedure call, dan transaction processing monitor. Pada prinsipnya, ada tiga tingkatan integrasi sistem komputer yaitu integrasi jaringan, integrasi data, dan integrasi applikasi. Database middleware menjawab tantangan integrasi data, sedangkan midleware-middleware yang lain menjawab tantangan integrasi applikasi dan jaringan.
Messaging Middleware :
  1. Menyimpan data dalam suatu antrian message jika mesin tujuan sedang mati atau overloaded
  2. Mungkin berisi business logic yang merutekan message ke ujuan sebenarnya dan memformat ulang data lebih tepat
  3. Sama seperti sistem messaging email, kecuali messaging middleware digunakan untuk mengirim data antar aplikasi

Teknologi Yang Terkait Antarmuka Telematika

Dalam teknologi yang terkait antarmuka telematika terdapat 6 fitur yang terkait dalam antarmuka telematika. Sebelum kita membahas tentang teknologi yang terkait dengan antar muka telematika, ada baiknya terlebih dahulu memahami apa yang dimaksud dengan antar muka (interface).Pengertian antarmuka ( interface) adalah salah satu layanan yang disediakan sistem operasi sebagai sarana interaksi antara pengguna dengan sistem operasi. Antarmuka (interface) adalah komponen sistem operasi yang bersentuhan langsung dengan pengguna.
Terdapat dua jenis antarmuka, yaitu Command Line Interface(CLI) danGraphical User Interface(GUI).
  • Command Line Interface(CLI)
CLI adalah 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.
  • Graphical User Interface(GUI)
GUI adalah tipe antarmuka yang digunakan oleh pengguna untuk berinteraksi dengan sistem operasi melalui gambar-gambar grafik, ikon, menu, dan menggunakan perangkat penunjuk ( pointing device) sepertimouse atau track ball. Elemen-elemen utama dari GUI bisa diringkas dalam konsep WIMP ( window, icon, menu, pointing device).
Terdapat 6 macam fitur Teknologi yang terkait antar muka telematika.Fitur-fitur itu antara lain:
1. 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. Walaupun HUD dibuat untuk kepentingan penerbangan militer, sekarang HUD telah digunakan pada penerbangan sipil, kendaraang bermotor dan aplikasi lainnya.
2. Tangible User Interface
Tangible User Interface, yang disingkat TUI, adalah antarmuka dimana seseorang dapat berinteraksi dengan informasi digital lewat lingkungan fisik. Nama inisial Graspable User Interface, sudah tidak lagi digunakan. Salah satu perintis TUI ialah Hiroshi Ishii, seorang profesor di Laboratorium Media MIT yang memimpin Tangible Media Group. Pandangan istimewanya untuk tangible UI disebut tangible bits, yaitu memberikan bentuk fisik kepada informasi digital sehingga membuat bit dapat dimanipulasi dan diamati secara langsung.
Sebuah contoh nyata adalah Marmer UI Answering Machine oleh Durrell Uskup (1992). Sebuah kelereng mewakili satu pesan yang ditinggalkan di mesin penjawab. Menjatuhkan marmer ke piring diputar kembali pesan atau panggilan terkait kembali pemanggil.
Contoh lain adalah sistem Topobo. Balok-balok dalam LEGO Topobo seperti blok yang dapat bentak bersama, tetapi juga dapat bergerak sendiri menggunakan komponen bermotor. Seseorang bisa mendorong, menarik, dan memutar blok tersebut, dan blok dapat menghapal gerakan-gerakan ini dan diulang mereka.
3. Computer Vision
Computer Vision (komputer visi) merupakan ilmu pengetahuan dan teknologi dari mesin yang melihat. Dalam aturan pengetahuan, komputer visi berhubungan dengan teori yang digunakan untuk membangun sistem kecerdasan buatan yang membutuhkan informasi dari citra (gambar). Data citranya dapat dalam berbagai bentuk, misalnya urutan video, pandangan deri beberapa kamera, data multi dimensi yang di dapat dari hasil pemindaian medis.
Sebagai disiplin teknologi, Computer Vision berusaha untuk menerapkan teori dan model untuk pembangunan sistem visi komputer.Contoh aplikasi dari visi komputer mencakup sistem untuk:
  • Pengendalian proses (misalnya, sebuah robot industri atau kendaraan otomatis).
  • Mendeteksi peristiwa (misalnya, untuk pengawasan visual atau menghitung orang).
  • Mengorganisir informasi (misalnya, untuk pengindeksan database foto dan gambar urutan).
  • Modeling benda atau lingkungan (misalnya, inspeksi industri, analisis citra medis atau model  topografi).
  • Interaksi (misalnya, sebagai input ke perangkat untuk interaksi manusia komputer).
4. Browsing Audio Data
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 pribadicompile 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.
5. 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.
6. Speech Synthesis
Speech synthesis merupakan hasil kecerdasan buatan dari pembicaraan manusia. Komputer yang digunakan untuk tujuan ini disebut speech syhthesizer dan dapat diterapkan pada perangkat lunak dan perangkat keras. Sebuah sistem text to speech (TTS) merubah bahasa normal menjadi pembicaraan.


sumber: http://www.blogger.com/post-edit.g?blogID=3607265079409867695&postID=782932938263051369