Jumat, 25 Januari 2013

Open source Gateway Initiative (OSGI), Virtualization dan API

Open source Gateway Initiative (OSGI)
OSGi Alliance (sebelumnya dikenal sebagai Open Services Gateway inisiatif, sekarang nama kuno) adalah terbuka organisasi standar yang didirikan pada Maret 1999. Aliansi dan anggota-anggotanya telah ditentukan yang Java berbasis layanan platform yang dapat dikelola dari jarak jauhInti bagian dari spesifikasi adalah sebuah kerangka kerja yang mendefinisikan suatu manajemen siklus hidup aplikasi model, layanan registry, sebuah lingkungan Eksekusi dan Modul. Berdasarkan kerangka ini, sejumlah besar OSGi layers, API, dan Jasa telah ditetapkan.
OSGi teknologi adalah sistem modul dinamis untuk Java ™
OSGi teknologi menyediakan layanan berorientasi, komponen berbasis lingkungan untuk para pengembang dan menawarkan cara-cara standar untuk mengelola siklus hidup perangkat lunak. Kemampuan ini sangat meningkatkan nilai berbagai komputer dan perangkat yang menggunakan platform Java.
Pengadopsi teknologi OSGi manfaat dari peningkatan waktu ke pasar dan mengurangi biaya pengembangan karena teknologi OSGi menyediakan integrasi pra-dibangun dan pra-komponen subsistem diuji. Teknologi ini juga mengurangi biaya pemeliharaan dan kemajuan aftermarket baru peluang unik karena jaringan dapat dimanfaatkan untuk secara dinamis mengupdate atau memberikan layanan dan aplikasi di lapangan.
Spesifikasi:
OSGi spesifikasi yang dikembangkan oleh para anggota dalam proses terbuka dan tersedia untuk umum secara gratis di bawah Lisensi Spesifikasi OSGi. OSGi Alliance yang memiliki kepatuhan program yang hanya terbuka untuk anggota. Pada Oktober 2009, daftar bersertifikat OSGi implementasi berisi lima entri.
 

arsitektur

http://bluewarrior.files.wordpress.com/2009/12/osgi-arsitektur.jpg 

etiap 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 Jawa 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 CDC-1.1/Foundation-1.1
    •    OSGi/Minimum-1.0 OSGi/Minimum-1.0
    •    OSGi/Minimum-1.1 OSGi/Minimum-1.1
    •    JRE-1.1 JRE-1.1
    •    From J2SE-1.2 up to J2SE-1.6 Dari J2SE-1.2 hingga J2SE-1,6
    •    CDC-1.0/Foundation-1.0 CDC-1.0/Foundation-1.0

VIRTUALIZATION
Virtualization adalah salah satu teknologi yang dapat membagi satu server menjadi beberapa Operating System yang dapat berjalan secara bersama-sama.

Keuntungan dari Virtualization :
- irit ruang
- mengurangi biaya operasional
- mengurango coast invesment
- go green

Konsep Virtualiasasi
Walauun konsep virtualisasi ini sudah dikembangkan sejak akhir tahun 60-an, namun kenyataannya teknologi ini masih belum dikenal secara luas hingga saat ini. Hal ini mungkin karena masyarakat IT khususnya di Indonesia sudah merasa puas degan server yang mereka gunakan. Microsoft sendiri sejak tahun 2004 sudah mulai memperkenalkan Virtual PC dan Virtual Server ataupun VMWare. Walaupun konsep virtualisasi sangat berbeda dibandingkan dengan Virtual PC ataupun Virual Server.Virtualization sudah diperkenalkan sejak puluhan tahun lalu, yang waktu itu kalangan industri masih memanfaatkan komputer mainframe di akhir akhir tahun 60an. Ketika itu komputer masih memanfaatkan Punch card dan juga IBM 360 mainframe.
Sejalan dengan berkembangnya teknologi, perubahan pun berlanjut dan komputer semakin ramping dan bukan lagi merupakan barang mewah yang hanya dimiliki oleh perusahaan atau orang tertentu saja.Dengan pesatnya perkembangan teknologi dan semakin derasnya arus globalisasi, persaingan bisnis berbasis IT juga semakin ketat. Melihat kenyataan ini, raksasa software dunia, Microsoft menghadirkan teknologi server yang mendukung Virtualization. Fitur canggih ini ada dalam Windows Server 2008 64 bit yang kini sudah mulai banyak diimplementasikan. Konsep virtualisasi yang langsung terintegrasi dengan role server, yaitu Windows Server Virtualization atau lebih dikenal dengan Hyper-V. Hyper-V akan menjadi sebuah role dalam sistem operasi Window Server 2008 R2 dengan mengoptimalkan virtualisasi sistem operasi server. Seperti diketahui Hyper-V tersebut mendukung virtulisasi server baik untuk versi 64 bit.

Arsitektur
Sebuah arsitektur akan sangat menentukan ketika sebuah konsep diimplementasikan. Demikian juga dengan arsitektur Windows Server Virtualization sangat berbeda dibandingkan dengan arsitektur Virtual PC, Virtual Server 2005, ataupun VMWare. Dalam hal ini konsep virtualisasi di Windows Server 2008 R2 memperkenalkan Hypervisor dan mengadopsi konsep microkernelized. Implementasi dari microkernelized memungkinkan sebuah instance virtual machine berperan sebagai partisi parent daninstance yang lain sebagai partisi child.

Semua instance virtual machine akan berjalan diatas hypervisor. Setiap partisi dapat memanfaatkan satu atau lebih prosesor, hal ini tentu saja jika menggunakan prosesor kelas dual core atau quad core.Partisi parentbertanggung jawab untuk mengorganisasi partisi child, dan manajemenvirtualization stack. Partisi parent juga bisa disebut sebagai partisi rootkarena partisi ini dibuat pertama kali saat inisialisasi hardware server. Partisiroot adalah pusat dari power management, organisasi hardware, dan manajemen hypervisor. Peran partisi parent sebagai virtualization stacksehingga software component berkerja diatas hypervisor dan berkerja bersama untuk mendukung virtual machine di system. Virtualization stackberkomunikasi dengan hypervisor dan melakukan semua fungsi virtualisasi. Partisi parent pun dianggap sebuah instance, sehingga IT Administrator dapat dengan mudah mengubah sebuah child menjadi parent jika dibutuhkan.

API

API atau Application Programming Interface adalah sebuah protokol yang digunakan sebagai antar muka oleh komponen software untuk berkomunikasi dengan yang lainnya.
Saat ini API banyak digunakan sebagai konten pembagi. Singkatnya, API dapat membolehkan para komunitas web untuk membuat sebuah API yang berguna untuk membagi konten dan data diantara para komunitas lainnya. Dalam hal ini, konten yang dibuat dalam suatu tempat secara dinamik dapat dipost dan diupdate pada lokasi yang berbeda-beda pada web.
COntohnya speerti:
  • Foto dapat dibagi dari website seperti flickr, photobucket ke sosial website seperti facebook dan myspace.
  • Konten dapat di embed, seperti embed dari slideShare pada profil LinkedIn.
  • Konten video dapat di embed pada website yang disediakan berlainan host.
  • Dan masih banyak lagi.
API yang dimaksudkan untuk digunakan oleh lebih dari satu bahasa tingkat tinggi pemrograman sering memberikan, atau ditambah dengan fasilitas yang secara otomatis memetakan API untuk fitur (sintaksis atau semantik) yang lebih alami dalam bahasanya. Hal ini dikenal sebagai language binding, dan API itu sendiri. Tujuannya adalah untuk merangkum sebagian besar fungsi yang diperlukan dari API, meninggalkan lapisan tipis yang tepat untuk setiap bahasa.


Jumat, 23 November 2012

User Interface Technologies (UIT)




          User Interface Technologies (UIT) semakin berkembang pesat, di sekitar teknologi interface muncul di masa depan yang mendukung Interaksi Manusia dan Komputer. Penelitian UIT berfokus pada teknologi yang memungkinkan komputer yang membantu mendengar (speech recognition, speaker recognition and verification), melihat (wajah, gerakan, tatapan & pengenalan tulisan tangan dan objek pelacakan), berbicara (pidato sintesis, sintesis wajah), dan rasa (mempengaruhi pengakuan, teknologi sensor), dan untuk memahami dan mengkombinasikan dengan cara multimodal.
        user interface merupakan bentuk tampilan grafis yang berhubungan langsung dengan pengguna (user). Interface pengguna berfungsi untuk menghubungkan antara pengguna dengan sistem operasi, sehingga komputer tersebut bisa digunakan.
Interface pengguna, dalam bidang desain industri interaksi manusia-mesin, adalah sebuah tempat di mana interaksi antara manusia dan mesin terjadi. Tujuan dari interaksi antara manusia dan mesin pada interface pengguna adalah pengoperasian dan kontrol mesin yang efektif, dan umpan balik dari mesin yang membantu operator dalam membuat keputusan operasional. Contoh-contoh dari konsep luas interface pengguna ini termasuk aspek-aspek interaktif dari sistem operasi komputer, alat-alat, kontrol operator mesin berat, dan kontrol proses. Pertimbangan desain berlaku ketika membuat interface pengguna yang berkaitan atau melibatkan disiplin-disiplin ilmu seperti ergonomi dan psikologi.
Sebuah interface pengguna adalah sistem di mana pengguna berinteraksi dengan mesin. Interface pengguna mencakup perangkat keras dan perangkat lunak. Interface pengguna hadir untuk berbagai sistem, dan menyediakan cara untuk:
  • Input, memungkinkan pengguna untuk memanipulasi sebuah sistem
  • Output, memungkinkan sistem untuk menunjukan efek dari manipulasi pengguna

Client Server

Client/Server adalah teknologi pendistribusian kerja aplikasi antara dua komputer atau lebih, yang dihubungkan oleh jaringan komunikasi, dimana yang satu akan bertindak sebagai Client atau peminta layanan, dan yang lainnya sebagai Server, atau pemberi layanan. Baik Client ataupun Server memiliki pemroses atau CPU sendiri, sedangkan jaringan yang digunakan bisa berupa jaringan lokal (LAN) ataupun jaringan yang lebih luas lagi (WAN).

Model konsep Client/Server
Sesuai dengan kebutuhan dan juga sarana penunjang yang dimiliki, pada dasarnya implementasi aplikasi Client/Server tergantung dari pendistribusian kebutuhan prosesnya. Oleh sebab itu, pada umumnya definisi implementasi Client/Server dibagi atas 5 model yaitu :
1.      Distributed Presentation
2.      Remote Presentation
3.      Distributed Logic
4.      Remote Data
5.      Distributed Data
 
Client-server adalah suatu bentuk arsitektur, dimana client adalah perangkat yang menerima yang akan menampilkan dan menjalankan aplikasi (software komputer) dan server adalah perangkat yang menyediakan dan bertindak sebagai pengelola aplikasi, data, dan keamanannya. Server biasanya terhubung dengan client melalui kabel UTP dan sebuah kartu jaringan (network card). Kartu jaringan ini biasanya berupa kartu PCI atau ISA.
 
Dalam teknologi informasi, client-server merujuk kepada cara mendistribusikan aplikasi ke pihak client dan pihak server. Dalam model client-server, sebuah aplikasi dibagi menjadi dua bagian yang terpisah (tetapi masih dalam sebuah kesatuan) yakni komponen client dan komponen server. Komponen client dijalankan pada sebuah workstation. Pemakai workstation memasukkan data dengan menggunakan teknologi pemrosesan tertentu, kemudian mengirimkannya ke komponen server, umumnya berupa permintaan layanan tertentu yang dimiliki oleh server. Komponen server akan menerima permintaan layanan tersebut dan langsung memprosesnya serta mengembalikan hasil pemrosesan kepada client. Client pun menerima informasi hasil pemrosesan data tadi dan menampilkannya kepada pemakai dengan menggunakan aplikasi yang digunakan oleh pemakai.
 
Sebuah contoh dari aplikasi client-server sederhana adalah aplikasi web yang didesain dengan menggunakan Active Server Pages (ASP). Skrip ASP akan dijalankan di dalam web server (Apache atau Internet Information Services), sementara skrip yang berjalan di pihak client akan dijalankan oleh web browser pada komputer client (workstation). Client-server merupakan penyelesaian masalah pada software yang menggunakan database sehingga setiap komputer tidak perlu diinstall database. Dengan metode client-server database dapat diinstal pada komputer server dan aplikasinya diinstal pada client.

Senin, 05 November 2012

GPS (Global Positioning System)

Sistem Pemosisi Global atau Global Positioning System (GPS) adalah sistem untuk menentukan letak di permukaan bumi dengan bantuan penyelarasan (synchronization) sinyal satelit. Sistem ini menggunakan 24 satelit yang mengirimkan sinyal gelombang mikro ke Bumi. Sinyal ini diterima oleh alat penerima di permukaan, dan digunakan untuk menentukan letak, kecepatan, arah, dan waktu. Sistem yang serupa dengan GPS antara lain GLONASS Rusia, Galileo Uni Eropa, IRNSS India.
Sistem ini dikembangkan oleh Departemen Pertahanan Amerika Serikat, dengan nama lengkapnya adalah NAVSTAR GPS (kesalahan umum adalah bahwa NAVSTAR adalah sebuah singkatan, ini adalah salah, NAVSTAR adalah nama yang diberikan oleh John Walsh, seorang penentu kebijakan penting dalam program GPS) Kumpulan satelit ini diurus oleh 50th Space Wing Angkatan Udara Amerika Serikat. Biaya perawatan sistem ini sekitar US$750 juta per tahun, termasuk penggantian satelit lama, serta riset dan pengembangan.
GPS Tracker atau sering disebut dengan GPS Tracking adalah teknologi AVL (Automated Vehicle Locater) yang memungkinkan pengguna untuk melacak posisi kendaraan, armada ataupun mobil dalam keadaan Real-Time. GPS Tracking memanfaatkan kombinasi teknologi GSM dan GPS untuk menentukan koordinat sebuah obyek, lalu menerjemahkannya dalam bentuk peta digital.

Contoh Aplikasi dan Perangkat GPS :

  • Acer e300 series
  • Clarion
  • Garmin
  • Gizmondo
  • Hertz Neverlost
  • iGo
  • Kenwood DNX-5120
  • Magellan
  • Mio Technology
  • Navigon
  • NDrive
  • Navman iCN series
  • Ovi Maps
  • Pioneer
  • Teletype Software
  • TomTom
  • VDO Dayton
  • Sygic Mobile Maps
  • Wayfinder Navigator
  • Waze


E-News

E-News merupakan kependekan dari Elektronik News adalah salah satu fasilitas yang terdapat di internet untuk mengakses berita-berita Elektronik, Fasilitas E-News ini mempermudah kita untuk melihat berita-berita terkini dengan cepat dan mudah melalui internet. Penyedia fasiliat E-News adalah perusahaan-perusahaan yang bergerak dibidang surat kabar. E-News memliki kelebihan yaitu lebih cepat dan mudah dibandingkan dengan membeli surat kabar (koran atau majalah). Informasi yang diberilan oleh penyedia sangat cepat dan mudah karena penyedia selalu up to date berita secara online.

Seiring berkembangnya Tekhnologi Informasi di era globalisasi ini menuntut penyedia layanan media cetak tidak hanya mengandalkan edisi fisik saja kepada para pembaca, tetapi harus melakukan inovasi terbaru untuk memberikan sajian yang cepat dan mudah kepada pembaca yaitu dengan menyediakannya layanan E-News. E-News mencakup semua berita-berita yang tertera di surat kabar diantaranya berita bisnis, kriminal, politik, olahraga dll.

Contoh penyedia layanan E-News diantaranya :
www.inilah.com
www.kompas.com
www.goal.com
www.detik.com
www.tempo.co.id
dll