IMPLEMENTASI RMI (REMOTE METHOD INVOCATION)
PADA APLIKASI KUISIONER FLEKSIBEL BERBABIS
DESKTOP DENGAN MENGGUNAKAN JARINGAN LAN
TUGAS AKHIR
Diajukan Untuk Memenuhi Persyaratan Akademik Studi Strata 1
Teknik Informatika Universitas Muhammadiyah Malang
Oleh:
PEGEL PANGESTU 09560072
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MALANG
2014
LEMBAR PERSETUJUAN
IMPLEMENTASI RMI (REMOTE METHOD
INVOCATION) PADA APLIKASI KUISIONER
FLEKSIBEL BERBASIS DESKTOP DENGAN
MENGGUKAN JARINGAN LAN
TUGAS AKHIR
Oleh :
Pegel Pangestu
09560072
Diajukan Untuk Memenuhi
Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Menyetujui, Dosen Pembimbing I Hariyady, S Kom, MT Dosen Pembimbing II Saifuddin, S.Kom i
LEMBAR PENGESAHAN
IMPLEMENTASI REMOTE METHOD INVOCATION
PADA APLIKASI KUISIONER FLEKSIBEL
BERBASIS DESKTOP DENGAN MENGGUKAN
JARINGAN LOCAL AREA NETWORK
TUGAS AKHIR
Diajukan Untuk MemenuhiPersyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Disusun Oleh : PEGEL PANGESTU
09560072
Tugas Akhir ini telah diuji dan dinyatakan lulus oleh tim penguji pada tanggal 16 Juli 2014
Menyetujui, Penguji I
Agus Eko Minarno, S.Kom
Penguji II
Ilyas Nuryasin, M.Kom
Mengtahui
Ketua Jurusan Teknik Informatika
Yuda Munarto, S.Kom, M.Sc
SURAT PERNYATAAN
Yang bertanda tangan dibawah ini: Nama : Pegel Pangestu
Tempat, Tgl Lahir : Jayapura, 05 Juni 1991 NIM : 09560072
Fakultas/Jurusan : Teknik/ Informatika
Menyatakan bahwa karya ilmiah/skripsi/tugas akhir saya yang berjudul ”IMPLEMENTASI RMI (REMOTE METHOD INVOCATION) PADA APLIKASI KUISIONER FLEKSIBEL BERBASIS DESKTOP DENGAN MENGGUNAKAN JARINGAN LAN” beserta seluruh isinya adalah karya saya sendiri dan bukan merupakan karya tulis orang lain, baik sebagian maupun keseluruhan, kecuali dalam bentuk kutipan yang telah saya sebutkan sumbernya. Demikian surat pernyataan ini saya buat dengan sebenar-benarnya dan apabila pernyataan ini tidak benar, saya siap menanggung segala bentuk resiko/sanksi yang berlaku.
Malang, 27 Juni 2014 Yang Membuat Pernyataan
Pegel Pangestu Mengetahui, Dosen Pembimbing I Hariyady, S Kom, MT Dosen Pembimbing II Saifuddin , S.Kom iii
LEMBAR PERSEMBAHAN
Ucapan syukur dan terimakasih kepada Allah SWT yang tak henti-hentinya saya panjatkan atas rahmat dan petunjuk serta kelancaran yang diberikan kepadaku dalam menyelesaikan tugas akhis ini. Tak lupa shalawat serta salam senantiasa tercurahkan kepada bimbingan kita Nabi Besar Rasullulah Muhammad SAW.
Dengan ini ku persembahkan karya sederhana ini kepada orang-orang yang ku kasihi dan ku sayangi , Kepada Ayahanda dan Ibunda tercinta yang tak henti-hentinya memberi kasih sayang, dukungan, pengorbanan, kesabaran dan motivasi kepadaku agar menjadi orang yang sukses dan lebih baik dan menjadi orang yang bermanfaat bagi keluarga dan lingkungan sekitar. Kepada kekasih ku tercinta Ambar Pratiwi yang telah dengan sabarnya memberikan support kepada ku dalam proses pengerjaan tugas akhir dan memoivasiku agar cepat-cepat lulus kuliah. Kepada para Dosen Pembimbing yang telah dengan sabar membimbing ku dalam proses pengerjaan tugas akhir ini.
Tak lupa kepada segenap teman-teaman seperjuanganku Romzi Fadach, Deddy Saputra, Revana Mendra, Akbaruna, dan Agus Bastian serta tentunya untuk seluruh teman-teman kelas B informatika angkatan 2009 yang telah senantiasa memberikan support dan menjadi sahabat seperjungan, saya ucapkan banyak terimakasih dan semoga sukses selalu.
DAFTAR ISI
LEMBAR PERSETUJUAN... i
LEMBAR PENGESAHAN ... ii
LEMBAR PERNYATAAN ... iii
ABSTRAK ... iv
ABSTRACT ... v
LEMBAR PERSEMBAHAN ... vi
KATA PENGANTAR ... vii
DAFTAR ISI ... viii
DAFTAR GAMBAR ... xii
DAFTAR TABEL ... xv BAB I PENDAHULUAN 1.1 Latar Belakang ... 1 1.2 Rumusan Masalah ... 2 1.3 Batasan Masalah... 2 1.4 Tujuan ... 3 1.5 Metodologi ... 3 1.6 Sistematika Penulisan ... 5
BAB II LANDASAN TEORI 2.1 Kuisioner ... 6
2.2 Sistem Client Server ... 9
2.2.1 Komponen Dasar Client Server ... 9
2.2.2 Karakteristik Clinet Server ... 10
2.2.3 Ciri-ciri Client Server ... 11
2.3 Database ... 12
2.3.1 Pengertia Database ... 12
2.3.2 Tipe dan Komponen Database ... 13
2.3.3 DBMS (Data Base Management System) ... 15
2.4 Java ... 16
2.4.1 J2EE (Java 2 Enterprise Edition) ... 17
2.4.2 J2SE (Java 2 Standard Edition) ... 18
2.4.3 J2ME (Java 2 Micro Edition) ... 19
2.4.4 GUI (Graphical User Interface) ... 20
2.5 Java RMI (Remote Method Invocation) ... 22
2.5.1 Pengertian Java RMI (Remote Method Invocation) ... 22
2.5.2 Komponen dalam Java RMI (Remote Method Invocation) ... 24
2.5.3 Java RMI Layer ... 26
BAB III ANALISA DAN PERANCANGAN SISTEM 3.1 Analisa Sistem ... 28
3.1.1 Deskripsi Sistem ... 28
3.1.2 Analisa Kebutuhan Fungsional ... 29
3.1.3 Analisa Kebutuhan Non Fungsional ... 30
3.1.4 Flowchart system ... 30 3.1.5 Use case ... 34 3.2 Perancangan Sistem ... 36 3.2.1 Activity Diagram ... 36 3.2.2 Sequence Diagram ... 42 3.2.3 Class Diagram ... 50 3.2.4 Relasi Tabel ... 54 3.2.4.1 Desain tabel ... 55 3.2.5 Interface ... 60
3.2.5.1 Interface aplikasi RMI server ... 60
3.2.5.2 Interafce login... 60
3.2.5.3 Interface new admin ... 61
3.2.5.4 Interface new user ... 61
3.2.5.5 Interface aplikasi server ... 62
3.2.5.5.1 Interface main menu ... 62
3.2.5.5.2 Interface input soal kuisioner tipe esay ... 62
3.2.5.5.3 Interface input soal kuisioner tipe pilihan ... 63
3.2.5.5.4 Interface manage akun admin ... 64
3.2.5.5.5 Interface lihat jawaban kuisioner ... 64
3.2.5.6 Interface aplikasi user ... 65
3.2.5.6.1 Interface main menu ... 65
3.2.5.6.2 Interface input jawaban kuisioner tipe esay ... 65
3.2.5.6.3 Interface input jawaban kuisioner tipe pilihan ... 66
BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Implementasi sistem ... 67
4.1.1 Implementasi pengembangan perangkat keras ... 67
4.1.2 Implementasi pengembangan perangkat lunak ... 68
4.2 Implementasi kode program ... 69
4.2.1 Membuat API ... 69
4.2.2 Meregisterykan services dan menampilkan RMI Server ... 71
4.2.2.1 Membuat remote object pada aplikasi RMI Server ... 72
4.2.2.2 Minimize aplikasi Server ... 73
4.2.3 Melakukan registery lookup dan menampilkan menu awal aplikasi Admin/Client ... 74
4.2.3.1 Menampilkan form login ... 77
4.2.3.2 Menampilkan form registrasi akun baru ... 78
4.2.3.3 Menampilkan dan melakukan proses penginputan soal kusioner .. 79
4.2.3.3.1 Soal kuisioner pilihan ... 79
4.2.3.3.2 Soal kuisioner essay ... 81
4.2.3.4 Menampilkan data jawaban kusioner ... 82
4.2.3.5 Menampilkan pengaturan akun ... 85
4.2.4 Menampilkan form input jawaban soal kusioner aplikasi client ... 86
4.2.4.1 Jawaban soal kuisioner pilihan ... 86
4.2.4.2 Jawaban soal kuisioner essay ... 88
4.3 Pengujian ... 89
4.3.1 Pengujian Fungsional ... 90 4.3.2 Pengujian menggunakan black box ... 97
BAB V PENUTUP 5.1 Kesimpulan ... 103 5.2 Saran ... 103 DAFTAR PUSTAKA LAMPIRAN-LAMPIRAN xi
DAFTAR PUSTAKA
[1] Hendri Jhon, 2009, "Riset Pemasaran", Universitas Gunadarma
[2] Riski Ramadhani, Cara Membuat Kuisioner, 2012,
(http://www.scribd.com/doc/217007964/Cara-Membuat-Kuisionerbaru.html) , di akses pada 4 April 2013
[3] Khannedy Kuriawan Eko, 2011, "Membangun APlikasi Client-Server
Mengunakan Java", StripBandunk
[4] Toromorphosis Mind's, Teori Dasar Basis Data, 2010,
(http://toromorphosist.wordpress.com/2010/02/06/teori-dasar-basis-data.html), di akses pada 4 April 2013
[5] Ahmad Syarief, Teori Java, 2010,
(http://ml.scribd.com/doc/231534404/jbptunikompp-gdl-robbymukhl-29401-9-unikom-r-i.html) , di akses pada 3 April 2013
[6] Breg Fabian dan Gannon Dennis, 2004, "A Customizable Implementation
of RMI for High Performance Computing", Department of Computer
Science, Indiana University
[7] Rose India, RMI Client And RMI Server Implementation, 2009,
(http://www.roseindia.net/java/network/rmi-client-and-rmi-server-implementation.shtml) , di akses pada 4 April 2013
[8] Oracle, Implementing a Remote Interface, 1995-2013,
(http://docs.oracle.com/javase/tutorial/rmi/implementing.html), di akses pada 2 April 2013
[9] Krishnaswamy Vijaykumar, Walther Dan, Bhola Dummer, BommaiahmEthendranath, Riley George, Topol Barad, dan Ahamad Mustaque, 1998, "Efficient Implementation of Java Remote Method
Invocation (RMI)", USENIX Conference on Object-Oriented
Technologies and Systems (COOTS)
[10] Lestari Sri, Somantri Maman, dan Isnonanto Rizal.R, 2011, "Implementasi Java RMI pada Rancang Bangun Tes Toefl Online
Berbasis Web", Universitas Diponogoro
[11] Muchallil Sayed, 2006, "Remote Method Invocation Pada Bahasa
Pemrograman Java Sebagai Alternatif Pemrograman Clinet Server",
Universitas Syiah Kuala Banda Aceh