Tuesday, January 4, 2011

Tugas Pemrosesan parallel [1] : UJIAN LAN(LOCAL AREA NETWORKING)

SAIFUL BAHRI
08030035
BAB I
PENDAHULUAN
1.1 Latar Belakang
Dengan berkembangnya teknologi informasi maupun alat pendukungnya, sekarang orang mudah untuk mendapatkan informasi, memberi informasi ataupun menyampaikan informasi. Begitu juga dalam dunia pendidikan, sekarang muncul berbagai konten-konten teknologi informoasi untuk memudahkan dan membantu para pelaksana pendidikan untuk lebih produktif dalam melaksanakan tugasnya. Seperti E-learning, E-library, E-book, Portal Sekolah, Portal Kampus. Yang dulunya kalau ingin membaca buku harus beli atau meminjam buku sekarang sudah tidak harus lagi meminjam atau membeli, namun tinggal mencari yang soft-copy atau E-book untuk pengganti buku dalam bentuk fisik. Dulu kalau ingin mencari buku diperpustakaan orang harus datang langsung keperpustakaan dan mencari buku rak demi rak, namun sekarang orang tidak harus keperpustakaan langsung untuk mencari buku. Lewat E-Library semua orang dapat mencari buku yang terdapat pada perpustakaan tersebut. Bila sudah dapat dan tersedia baru datang ke perpustakaan. Ada juga yang menyediakan option donwload buku yang dicari di E-library tersebut. Dan didalam pelaksanaan ujian atau test didalam kelas biasanya kita menggunakan kertas, seorang dosen memberikan soal dan mahasiswa menjawab dalam kertas dan dikumpulkan secara manual setelah itu dicek satu persatu secara manual juga. Dan objektifitas nilai juga tidak maksimal dikarenakan tulisan mahasiswa tidak semua sama, ada yang mudah dibaca ada juga yang sulit dibaca. Untuk itulah saya mempunyai gagasan untuk memindahkan proses ujian didalam kelas yang dulunya menggunakan kertas sekarang menggunakan aplikasi yang lebih memudahkan dalam proses pembelian soal, menjawab soal, mengumpulkan jawaban, dan penilaian.
1.2 Rumusan Masalah
Berdasarkan latar belakang diatas, bahwa teknologi komputer dapat menggantikan proses manual dalam bidang pendidikan, maka dapat dibuat suatu rumusan masalah “Bagaimana proses ujian yang dulunya masih menggunakan kertas sekarang digantikan menggunakan aplikasi yang lebih simpel dalam proses ujian, mulai dari membuat soal oleh dosen sampai menilai memberi nilai dosen kepada mahasiswanya? ”.
1.3 Batasan Masalah
Untuk menghindari penyimpangan dari judul dan tujuan yang sebenarnya serta keterbatasan pengetahuan yang dimiliki penulis, maka penulis membuat batasan masalah yaitu:
a. Input soal oleh dosen, pilihan ganda dan uraian.
b. Cara mahasiswa menerima soal dari dosen.
c. Input jawaban oleh mahasiswa.
d. Pemberian nilai atas ujian yang dilaksanakan.
1.4 Tujuan Laporan
Tujuan dari laporan ini adalah untuk memenuhi tugas matakuliah Pemrosesan parallel serta menerapkan konsep Pemrosesan Parallel kedalam sebuah aplikasi yang dapat menggambarkan bagaimana Pemrosean parallel diimplentasikan dalam proses ujian yang dilaksanakan oleh dosen dan mahasiswa.
1.5 Metode Pengumpulan Data
Adapun metode dalam membangun aplikasi Ujian LAN ini adalah :
1. Studi Literatur
Tahapan untuk memperdalam teori dan mencari referensi-referensi yang berkaitan dengan tema tugas ini. Tahapan ini sangat penting karena digunakan untuk menunjang tahapan-tahapan berikutnya dalam pembuatan tugas ini.
2. Analisis
Menganalisis kebutuhan yang berfokus pada domain sistem informasi, tingkah laku dan antar muka. Aktivitas analisis kebutuhan akan diproleh dari studi kelayakan dan kerangka kebutuhan. Wawancara dilakukan terhadap mahasiswa, admin, dosen yang memakai sistem. Menganalisis masalah yang ada pada pengisian KRS yang kurang akurat.
3. Perancangan Sistem
Merancang algoritma program yang akan diimplementasikan ke dalam program komputer.
4. Implementasi sistem / Coding
Mengimplementasikan ke dalam bentuk program komputer. Program yang akan dibangun menggunakan bahasa Pemrograman java, juga mendukung jenis basis data , serta disini saya menggunakan MYSQL.
5. Pengujian Program
Menguji program komputer yang dibuat berdasarkan pemrosesan parallel.
6. Pembuatan Laporan
Pembuatan laporan ini bertujuan dijadikan dokumentasi hasil tugas pemrosesan paraller dan hal hal yang memerlukannya.
1.6 Sistematika Penulisan
Agar penulisan skripsi ini merupakan karya tulis ilmiah, maka susunan penulisan yang digunakan adalah sebagai berikut:
BAB I PENDAHULUAN
Berisi latar belakang masalah, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian dan sistematika penulisan.
BAB II LANDASAN TEORI
Berisi tentang konsep dan dasar pemikiran yang diperlukan untuk memecahkan masalah penelitian.
BAB III ANALISIS DAN PERANCANGAN SISTEM
Berisi tentang tahapan analisis dan pemecahan masalah serta perancangan sistem yang digunakan oleh penulis.
BAB IV IMPLEMENTASI DAN PEMBAHASAN
Berisi tentang hasil dari analisa dari data yang diperoleh dari penelitian dan pembahasan mengenai penyelesaian masalah.
BAB V KESIMPULAN DAN SARAN
Sebagai masukan atau ide-ide baru terhadap aplikasi sistem database terdistribusi dibidang komunikasi.
BAB II
LANDASAN TEORI
Pada landasan teori akan diterangkan teori-teori yang berhubungan dengan judul penulisan ini.
2.1 Pengenalan Pemrosesan parallel
Komputasi paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan. Ini umumnya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar (di industri keuangan, bioinformatika, dll) ataupun karena tuntutan proses komputasi yang banyak. Kasus kedua umum ditemui di kalkulasi numerik untuk menyelesaikan persamaan matematis di bidang fisika (fisika komputasi), kimia (kimia komputasi) dll
2.2 Pengenalan Jaringan Komputer
Jaringan komputer (computer network) adalah hubungan dua buah simpul (umumnya berupa komputer) atau lebih ditujukan untuk melakukan pertukarandata atau untuk melakukan bagi pakai perangkat lunak, perangkat keras dan bahkan berbagai kekuatan proses.
Berikut merupakan manfaat penggunaan jaringan komputer :
1. Berbagi perangkat keras.
Perangkat keras dapat digunakan oleh sejumlah komputer tanpa perlu melepas dan memasang kembali, cukup dipasang ke komputer atau dihubungkan ke suatu peralatan khusus dan semua komputer dapat mengaksesnya.
2. Berbagi program atau data.
Program atau data dimungkinkan untuk disimpan pada sebuah komputer yang bertindak sebagai server. Cara ini memungkinkan perusahaan membeli sebuah perangkat lunak dan dipasang di server, kemudian orang yang memerlukannya dapat mengakses program tersebut.
3. Mendukung kecepatan berkomunikasi.
Dengan adanya dukungan jaringan komputer, komunikasi dapat dilakukan lebih cepat. Misalnya saja rapat lewat telekonferensi.
4. Memudahkan pengaksesan informasi.
Jaringan komputer memudahkan pengaksesan informasi. Seseorang dapat bepergian ke mana saja dan tetap mengakses data yang terdapat pada server ketikas ia membutuhkannya.
2.3 Pengertian RMI (Remote Method Invocation)
Remote Method Invocation (RMI) adalah sebuah teknik pemanggilan method remote yang lebih secara umum lebih baik daripada RPC (Remote Procedure Calls). 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. Aplikasi RMI seringkali terdiri dari dua program terpisah yaitu server dan client. Aplikasi server semacam ini biasanya membuat beberapa objek remote, menyediakan referensi terhadap objek-objek tersebut sehingga dapat diakses, serta menunggu client menginvoke/memanggil method dari objek-objek remote tersebut. Aplikasi client mendapatkan referensi remote ke satu atau lebih objek remote di server dan menjalankan method dari objek tersebut. RMI menyediakan mekanisme dimana server dan client berkomunikasi dan memberikan informasi secara timbal balik. Aplikasi semacam ini seringkali disebut aplikasi objek terdistribusi.
BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Dalam pembangunan aplikasi KRS Mahasiswa berbasis desktop dengan Java dan MySQL, terdapat beberapa perangkat lunak dan perangkat keras yang digunakan untuk mendukung proses pembuatan aplikasi, yaitu:
3.1.1 Analisis Kebutuhan Hardware
Hardware yang digunakan dalam pembuatan aplikasi ini yaitu menggunakan laptop dengan spesifikasi sebagai berikut :
1. Intel Core 2 Duo T5870
2. RAM (Memori) 2 GB
3. Hard Disk 160 GB
4. LCD beresolusi 1366x768 pixels, Mouse, Keyboard
3.1.2 Analisis Kebutuhan Software
Software yang diperlukan dalam pembuatan aplikasi ini adalah sebagai berikut :
1. Editor : IDE Netbeans 6.8
2. XAMPP : APACHE, MYSQL, PHP MYADMIN
3.JAVA : JDK 1.6 UPDATE 10
3.2 Perancangan Sistem
3.2.1 Context Diagram (CD)
Context Diagram merupakan diagram alir dari dan ke dalam sistem, yang menggambarkan hubungan antara user yang terlibat langsung dengan sistem.










1. Dosen mengirim soal.
2. Mahasiswa mengambil soal.
3. Dosen melihat jawaban.
4. Mahasiswa mengirim jawaban.
3.2.3 Rancangan Basis Data
Rancangan basis data merupakan langkah untuk menentukan basis data yang diharapkan dapat mewakili seluruh kebutuhan pengguna aplikasi ini. Basis data yang akan dirancang berisi tabel-tabel sebagai berikut :
Tabel Mahasiswa.
Field
Type
Keterangan
nim
varchar(8)
Primary Key
nama
varchar(50)
-
password
varchar(20)
-
jurusan
varchar(2)
-
Tabel Dosen.
Field
Type
Keterangan
nip
varchar(10)
Primary Key
nama
varchar(50)
-
password
varchar(20)
-
Tabel Soal
Field
Type
Keterangan
Kodesoal
Varchar(8)
Primary Key
Namasoal
Varchar(20)
-
Iddosen
Varchar(8)
-
Jenissoal
Varchar(20)
-
Tanggalsoal
Date
-
Soalsatu
text
-
Soaldua
Text
-
Soaltiga
Text
-
Soalempat
Text
-
Soallima
Text
-
Soalenam
Text
-
Soaltujuh
Text
-
Soaldelapan
Text
-
Soalsembilan
Text
-
Soalsepuluh
Text
-
Jawaban1
Text
-
Jawaban2
Text
-
Jawaban3
Text
-
Jawaban4
Text
-
Jawaban5
Text
-
Jawaban6
Text
-
Jawaban7
Text
-
Jawaban8
Text
-
Jawaban9
Text
-
Jawaban10
text
-
Tabel jawaban
Field
Type
Keterangan
Nim
Varchar(8)
Primary Key
Nama
Varchar(50)
-
Kodesoa
Varchar(8)
-
Namasoal
Varchar(20)
-
Iddosen
Varchar(10)
-
Jenissoal
Varchar(20)
-
Jawaban1
Text
-
Jawaban2
Text
-
Jawaban3
Text
-
Jawaban4
Text
-
Jawaban5
Text
-
Jawaban6
Text
-
Jawaban7
Text
-
Jawaban8
text
-
Jawaban9
Text
-
Jawaban10
text
-
nilai
Float
-
BAB IV
IMPLEMENTASI DAN PEMBAHASAN
1.1 Pembuatan databases.
Database aplikasi diberi nama ujianlan, dengan query sebagai berikut :
CREATE TABLE `dosen` (
`nip` varchar(10) NOT NULL,
`nama` varchar(50) NOT NULL,
`password` varchar(20) NOT NULL,
PRIMARY KEY (`nip`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE `jawaban` (
`nim` varchar(8) NOT NULL,
`nama` varchar(50) NOT NULL,
`kodesoal` varchar(8) NOT NULL,
`namasoal` varchar(30) NOT NULL,
`iddosen` varchar(10) NOT NULL,
`jenissoal` varchar(20) NOT NULL,
`jawaban1` text NOT NULL,
`jawaban2` text NOT NULL,
`jawaban3` text NOT NULL,
`jawaban4` text NOT NULL,
`jawaban5` text NOT NULL,
`jawaban6` text NOT NULL,
`jawaban7` text,
`jawaban8` text NOT NULL,
`jawaban9` text NOT NULL,
`jawaban10` text NOT NULL,
`nilai` float DEFAULT NULL,
PRIMARY KEY (`nim`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE `mahasiswa` (
`nim` varchar(8) NOT NULL,
`nama` varchar(50) NOT NULL,
`password` varchar(20) NOT NULL,
`jurusan` varchar(2) NOT NULL,
PRIMARY KEY (`nim`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE `soal` (
`kodesoal` varchar(8) NOT NULL,
`namasoal` varchar(20) NOT NULL,
`iddosen` varchar(8) NOT NULL,
`jenissoal` varchar(20) NOT NULL,
`tanggalsoal` date NOT NULL,
`soalsatu` text NOT NULL,
`soaldua` text NOT NULL,
`soaltiga` text NOT NULL,
`soalempat` text NOT NULL,
`soallima` text NOT NULL,
`soalenam` text NOT NULL,
`soaltujuh` text NOT NULL,
`soaldelapan` text NOT NULL,
`soalsembilan` text NOT NULL,
`soalsepuluh` text NOT NULL,
`jawaban1` text NOT NULL,
`jawaban2` text NOT NULL,
`jawaban3` text NOT NULL,
`jawaban4` text NOT NULL,
`jawaban5` text NOT NULL,
`jawaban6` text NOT NULL,
`jawaban7` text NOT NULL,
`jawaban8` text NOT NULL,
`jawaban9` text NOT NULL,
`jawaban10` text NOT NULL,
PRIMARY KEY (`kodesoal`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
1.2 Konsep RMI (Remote Method Invocation)
Disisi server terdapat deklarasi sebagai berikut.
public static void main(String[] args) throws RemoteException {
// TODO code application logic here
Registry server=LocateRegistry.createRegistry(1213);
DosenInterface dosenService=new DosenImplemet();
JawabanInterface jawabanService=new JawabanImplement();
MahasiswaInterface mahasiswaService=new MahasiswaImplement();
SoalInterface soalService=new SoalImplement();
server.rebind("dosenService", dosenService);
server.rebind("jawabanService", jawabanService);
server.rebind("mahasiswaService", mahasiswaService);
server.rebind("soalService", soalService);
}
Disisi klient sebagai berikut.
Registry registry=LocateRegistry.getRegistry("192.168.0.32",1213);
final SoalInterface soalInterface=(SoalInterface) registry.lookup("soalService");
final DosenInterface dosenInterface=(DosenInterface) registry.lookup("dosenService");
final JawabanInterface jawabanInterface=(JawabanInterface) registry.lookup("jawabanService");
try {
UIManager.setLookAndFeel(new NimbusLookAndFeel());
} catch (UnsupportedLookAndFeelException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
SwingUtilities.invokeLater(new Runnable() {
public void run() {
MainFrame mf=new MainFrame(soalInterface,dosenInterface,jawabanInterface);
mf.setLocationRelativeTo(null);
// mf.setExtendedState(JFrame.MAXIMIZED_BOTH);
mf.setVisible(true);
}
});
}
Konsepnya server membuka registry 1213 dan klient pertama mencari registry 1213 yang terbuka dan mengambil objek yang di keluarkan, dimasukkan ke dalam objek yang ada di klient.
Jadi semua query sql berada di server, sedangkan client Cuma berisi objek yang merepresentasikan perintah yang sudah ada diserver. Sehingga di client sama sekali tidak ada code untuk query sehingga aplikasi ini keamanannya lebih tinggi.
1.3 Gambar tampilan aplikasi


















BAB V
PENUTUP
5.1 Kesimpulan
Adapun kesimpulan yang dapat diambil dari Tugas ini adalah sebagai berikut :
1. Dengan teknologi yang semakin berkembang segala permasalah bisa diselesaikan dengan cepat.
2. Proses ujian matakuliah dikampus dapat dimasukkan kedalam sebuah aplikasi dalam pelaksanaannya.
3. Untuk menyelesaikan masalah ujian matakuliah dapat menggunakan pemroseasn parallel dalam aplikasi.
4. Pemrosesan parallel mempercepat dalam penyelesaian masalah yang lebih kompleks.
5. Aplikasi bisa dipecah pecah walaupun database Cuma dalam satu komputer, sedangkan aplikasi berada di kompter yang berbeda beda.
6. Aplikasi pemrosesan parallel dapat dibagung menggukan java RMI (remote metode invocation).
5.2 Saran
Adapun saran yang dapat diberikan adalah sebagai berikut :
1. Lebih baik lagi bila aplikasi ini bisa online, jadi tidak hanya untuk LAN (local area networking) sehingga dapat melakukan ujian walaupun tidak dalam sebuah local area.
2. Aplikasi dikembangankan supaya dalam jumlah soal bisa dibuat flesibel tidak harus sepuluh.
3. Di buat untuk multi-database untuk antisipasi salah satu database rusak permanen.
4. Butuh tambahan source supaya dalam menjawab dapat melakukan proses penggambaran untuk soal-soal yang membutuhkan gambar.


No comments:

Post a Comment

Note: Only a member of this blog may post a comment.