Selasa, 18 Maret 2014

Konsep Objek Terdistribusi dan Object Interface



Sistem komputer terdistribusi adalah sebuah sistem yang memungkinkan aplikasi komputer beroperasi secara terintegrasi pada lebih dari satu lingkungan yang terpisah secara fisis. Ciri khas sistem komputer terdistribusi adalah heterogenitas dalam berbagai hal: perangkat keras, sistem operasi, dan bahasa pemrograman. Adalah tidak mungkin untuk mengembangkan sistem terdistribusi yang homogen secara paksaan, karena secara alamiah sistem komputer terdistribusi tumbuh dari lingkungan yang heterogen. Kata kunci dalam menjembatani perbedaan-perbedaan yang muncul adalah interoperabilitas (interoperability).

Interoperabilitas adalah kemampuan saling bekerjasama antar sistem komputer. Dalam konteks sistem komputer terdistribusi, meskipun komponen-komponen aplikasi dibuat dengan bahasa pemrograman yang berbeda, menggunakan development tools yang berbeda, dan beroperasi di lingkungan yang beragam, mereka tetap harus dapat saling bekerjasama.



CORBA


Common Object Request Broker Architecture (CORBA) merupakan standar yang dikeluarkan oleh Object Management Group (OMG). Spesifikasi CORBA ini berisi sebuah spesifikasi  infrastruktur yang disebut Object Request Broker (ORB) yang memungkinkan aplikasi klien untuk dapat berkomunikasi dengan obyek secara remote. Spesifikasi ini meliputi antarmuka program, protokol komunikasi dan model obyek atau layanan yang memungkinkan aplikasi yang ditulis dengan berbagai macam bahasa pemrograman.
CORBA membungkus kode program yang dibuat dengan bahasa pemrograman tertentu menjadi sebuah obyek yang ditambah dengan informasi mengenai kemampuan kode program dan cara mengaksesnya. Obyek tersebut dapat dipanggil oleh program lain melalui jaringan. CORBA menggunakan interface definition languange (IDL) untuk menunjukkan interface atau antarmuka yang dapat digunakan oleh program atau obyek lain. Dari IDL tersebut CORBA akan memetakannya ke implementasi yang lebih spesifik dari masing-masing bahasa pemrograman.

COM

Component Object Model (COM) adalah teknologi yang diciptakan oleh Microsoft untuk memungkinkan komunikasi antaraplikasi. Teknologi ini sudah  disediakan untuk beberapa platform tetapi kebanyakan digunakan untuk platform Windows. Teknologi ini sudah diperkenalkan oleh microsoft pada tahun 1993 tetapi baru populer pada tahun 1997. Perkembangan teknologi COM ini bermula dari teknologi OLE (Object Linking and Embedding) yang dibuat untuk memungkinkan aplikasi dapat saling bertukar data.
DCOM
Pada tahun 1996 diperkenalkan Distributed Component Object Model (DCOM) sebagai jawaban Microsoft atas CORBA. DCOM dibandingkan dengan COM memiliki  kelebihan mampu untuk terdistribusi dan berkomunikasi antarkomponen melalui jaringan. DCOM dan CORBA saling berkompetisi untuk menjadi standar dalam distribusi komponen melalui internet. Namun dibalik kesulitan dalam hal keamanan, sebuah browser yang berjalan menggunakan teknologi http sudah dapat menggantikan teknologi tsb.

RMI

Remote Method Invocation (RMI) adalah sebuah teknik pemanggilan method remote yang lebih secara umum lebih baik daripada RPC. RMI menggunakan paradigma pemrograman berorientasi obyek (Object Oriented Programming). RMI memungkinkan kita untuk mengirim obyek sebagai parameter dari remote method. Dengan dibolehkannya program Java memanggil method pada remote obyek, RMI membuat pengguna dapat mengembangkan aplikasi Java yang terdistribusi pada jaringan.
RMI menyediakan mekanisme dimana server dan client berkomunikasi dan memberikan informasi secara timbal balik. Aplikasi semacam ini seringkali disebut aplikasi objek terdistribusi
Langkah-Langkah Pembuatan Program dengan RMI
Dalam RMI, semua informasi tentang satu pelayanan server disediakan dalam suatu definisi remote interface. Dengan melihat pada definisi interface, seorang pemrogram dapat memberitahukan method apa yang dapat dikerjakan oleh server, meliputi data apa yang diterima dan data apa yang akan dikirim sebagai tanggapan.
Definisi yang ada pada remote interface menentukan karakteristik methods yang disediakan server yang dapat dilihat oleh client. Client programmer harus dapat mengetahui methods apa yang disediakan server dan bagaimana memanggilnya langsung dengan melihat ke remote interface. Client mendapatkan referensi ke remote object melalui RMI registry.
Membangun suatu aplikasi terdistribusi menggunakan RMI meliputi 6 langkah. Keenam langkah tersebut adalah:
1. Mendefinisikan remote interface
2. Implementasi remote interface dan server
3. Pengembangan client (atau applet) yang menggunakan remote interface
4. Mengkompilasi source files dan mem-buat stub and skeletons
5. Memulai (start) RMI registry
6. Menjalankan server dan client

Sumber :
Konsep Object Terdistribusi
Object Interface

Link Kelompok :
Budi Widianto
Arya Guruh Saputra
Riswan Siregar
Suhendi



Rabu, 12 Maret 2014

Perkembangan Teori Komputasi serta Penerapannya

Komputasi bisa diartikan sebagai proses perhitungan atau pemecahan masalah menggunakan algoritma komputer. Asal muasal lahirnya proses komputasi berasal dari kegiatan hitung menghitung yang dilakukan manusia sejak berabad-abad silam. Manusia mulai mengenal angka dan cara menghitung, misalnya menghitung barang hasil barter, sistem kalender dan rasi bintang. Alat-alat yang digunakan pada masa itu juga masih sangat sederhana seperti pena, kertas dan batu.
Pada awalnya perkembangan komputasi modern digagas oleh John von Neumann (1903-1957), Beliau adalah ilmuan yang meletakkan dasar-dasar komputer modern. Von Neumann menjadi salah ilmuwan terbesar pada zaman nya. Von Neumann memberikan berbagai sumbangsih dalam bidang matematika, teori kuantum, game theory, fisika nuklir, dan ilmu komputer yang di salurkan melalui karya-karyanya. Berkat teori-teori nya itulah pada saat itu computer mengalami perkembangan dan kemajuan pesat terlihat saat dia menjadi seorang konsultan pada pengembangan komputer ENIAC. karena jasa-jasa nya John von Neumann di sebut bapak komputasi modern. Dia juga dia merancang konsep arsitektur komputer yang masih dipakai sampai sekarang. Arsitektur Von Nuemann adalah seperangkat komputer dengan program yang tersimpan (program dan data disimpan pada memori) dengan pengendali pusat, I/O, dan memori.
Adapun yang menjadi perhitungan dari komputasi modern adalah :
1. Akurasi (big, Floating point)
Akurasi tentu merupakan masalah yang paling penting dalam memecahkan masalah. Karena itu pada komputasi modern dilakukan perhitungan bagaimana bisa menghasilkan suatu jawaban yang akurat dari sebuah masalah. Tentu kita pernah mendengar tipe data floating point yang biasa digunakan untuk menyimpan data numerik dalam bentuk pecahan. Tipe data tersebut memiliki range penyimpanan numerik yang besar, sehingga dapat digunakan oleh komputer untuk melakukan komputasi yang akurat.
2. Kecepatan (dalam satuan Hz)
Manusia pasti menginginkan masalah dapat diselesaikan dengan cepta. Karena itu perhitungan masalah kecepeatan adalah suatu hal yang penting. Komputasi harus dapat dilakukan dalam waktu yang cepat ketika mengolah suatu data. Sehingga perlu metode kecepatan untuk mengolah perhitungan dalam waktu singkat.
3. Problem Volume Besar (Down Sizzing atau paralel)
Data yang besar tentu membutuhkan suatu cara penyelesaian yang khusus. Karena data yang besar dapat menjadi masalah jika ada yang terlewatkan. Oleh karena itu digunakan metode Down Sizzing atau paralel pada komputasi modern untuk menangani masalah volume yang besar. Dengan metode ini data yang besar diparalelkan dalam pengolahannya sehigga dapat diorganisir dengan baik.
4. Modeling (NN & GA)
Modeling merupakan suatu hal yang penting dalam melakukan suatu perhitungan yang rumit. Bayangkan saja jika kita dihadapi dalam suatu masalah perhitungan yang banyak dan kompleks, tetapi tidak ada model matematika yang kita miliki. Perhitungan akan berjalan berantakan dan tidak akan mendapatkan hasil yang akurat. Maka dari itu komputasi modern membutuhkan modeling sebelum melakukan perhitungan.
5. Kompleksitas (Menggunakan Teori big O)
Komputasi modern dirancang untuk menangani masalah yang kompleks, sehingga diterapkan pada komputer. Dengan menggunakan teori Big O, maka komputasi modern dapat melakukan perhitungan untuk memecahkan masalah kompleksitas yang kerap dihadapi.



Penerapannya di masing-masing bidang:

- Matematika
Matematika, pada bidang ini tentunya lebih mengarah kepada pemecahan masalah pasti atau mendekati kepastian dalam perhitungan angka – angka. Metode numerik, scientific computing, metode elemen hingga, metode beda hingga, scientific data mining dan scientific process control. Pada bidang ini, biasanya masalah berupa dalam skala besar.
- Fisika
Fisika, menyelesaikan permasalahan medan magnet dengan menggunakan komputasi fisika, dalam hal ini menentukan besarnya medan magnet dan membandiangkan hubungan antara medan magnet dengan panjang kawat.
- Kimia
Kimia, algoritma komputer yang merupakan solusi dari sebuah masalah dalam hal ini dapat menggabungkan senyawa – senyawa kimia untuk mendapatkan suatu senyawa baru yang bila dilakukan secara manual sudah pasti menimbulkan resiko yang lebih besar jika dibandingkan dengan proses komputasi. Selain itu sifat dari atom dan molekul yang sangat kecil dapat dilakukan peramalan menggunakan komputasi.
- Geografi
Terdapat penggunaan komputasi yang diterapkan pada GIS (Geographic Information System) yang berguna untuk menyimpan, memanipulasi dan menganalisa informasi geografi.
- Geologi
Pada bidang geologi teori komputasi biasanya digunakan untuk pertambangan, sebuah sistem komputer digunakan untuk menganalisa bahan-bahan mineral dan barang tambang yang terdapat di dalam tanah.
- Ekonomi
Ekonomi, mempeljarai titik pertemuan antara ekonomi dan komputasi, meliputi agent-based computational modelling, computational econometrics dan statistika, komputasi keuangan, computational modelling of dynamic macroeconomic systems dan pengembangan alat bantu dalam pendidikan komputasi ekonomi.
- Sosiologi
Terdapat Computational Sosiology yaitu penggunaan metode komputasi dalam menganalisa fenomena sosial.
- Biologi
Terdapat Bioinformatics merupakan aplikasi dari teknologi informasi dan ilmu komputer dalam penelitian bidang biologi molekuler.


http://id.wikipedia.org/wiki/Komputasi
http://myblogisland.blogspot.com/2013/04/teori-komputasi-dan-implementasi-pada.html
http://cute-periidola.blogspot.com/2014/03/perkembangan-teori-komputasi-beserta.html
http://himamia.mipa.uns.ac.id/2012/09/07/perkembangan-kimia-komputasi/

Selasa, 11 Maret 2014

Definisi dan Contoh Sistem Distribusi

Pengertian Distribusi
Anda pasti pernah melihat seseorang yang memikul barang tertentu untuk ditawarkan kepada pembeli, contoh seperti tukang sayur, tukang bakso. Kegiatan yang dilakukan oleh orang-orang tersebut merupakan kegiatan distribusi.
Distribusi artinya proses yang menunjukkan penyaluran barang dari produsen sampai ke tangan masyarakat konsumen. Produsen artinya orang yang melakukan kegiatan produksi. Konsumen artinya orang yang menggunakan atau memakai barang/jasa dan orang yang melakukan kegiatan distribusi disebut distributor.
Distribusi merupakan kegiatan ekonomi yang menjembatani kegiatan produksi dan konsumsi. Berkat distribusi barang dan jasa dapat sampai ke tangan konsumen. Dengan demikian kegunaan dari barang dan jasa akan lebih meningkat setelah dapat dikonsumsi.
Dari apa yang baru saja diuraikan, tampaklah bahwa distribusi turut serta meningkatkan kegunaan menurut tempatnya (place utility) dan menurut waktunya (time utility).
a. Sistem distribusi jalan pendek atau langsung
Adalah sistem distribusi yang tidak menggunakan saluran distribusi. Contoh distribusi sistem ini adalah penyaluran hasil pertanian oleh petani ke pasar langsung.
Bagan sistem distribusi ini sebagai berikut.

b. Sistem distribusi jalan panjang atau tidak langsung
Adalah sistem distribusi yang menggunakan saluran distribusi dalam kegiatan distribusinya biasanya melalui agen. Contoh: motor, mobil, TV.
Bagan sistem distribusi tidak langsung. 



 http://www.dikmenum.go.id/



Definsi sistem terdistribusi adalah :
  • sebuah sistem dimana komponen hardware atau software-nya terletak dalam suatu jaringan komputer dan saling berkomunikasi dan berkoordinasi mengunakan message pasing.
  • sebuah sistem yang terdiri dari kumpulan dua atau lebih komputer dan memiliki koordinasi proses melalui pertukaran pesan synchronous atau asynchronous.
  • kumpulan komputer independent yang tampak oleh user sebagai satu sistem komputer
  • kumpulan komputer autonom yang dihubungkan oleh jaringan dengan software yang dirancang untuk menghasilkan fasilitas komputasi terintegrasi

dapat terlihat dari bebarapa pengertian diatas dapat di tarik kesimpulan bahwa sistem terdistribusi adalah sebuah sistem yang terdiri dari beberapa komponen software atau hardware yang independent yang berkomunikasi dan berkoordinasi melalui message parsing baek sinkron maupun asinkron yang telihat satu kesatuan dan dirancang untuk menghasilkan fasilitas komputasi terintegrasi.

contoh dari sistem terdistribusi adalah
  • Internet, global jaringan interkoneksi computer yang berkomunikasi melalui IP (Internet Protocol) Protocol.
  • Intranet, jaringan teradministrasi terpisah dengan batasan pada kebijakan keamanan local.
  • Mobile dan komputasi diberbagai tempat, laptops, PDA, mobile phone,printers, peraltan rumah, dll.
  • World Wide Web (www), sistem untuk publikasi dan akses sumber daya dan layanan melalui Internet.
  • workstation network.
  • automatic banking (mesin teler) system.
  • automotive system(sistem distribusi real-time).
 http://ahmadqusyairi.blogspot.com/2010/02/defini-dan-contoh-sistem-terdistribusi.html


 Link Kelompok: 
Arya Guruh Saputra
Budi Widianto 
Riswan Siregar 
Suhendi