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 Dosen Pembimbing II Hariyady, S Kom, MT 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 Memenuhi Persyaratan 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 Penguji II Agus Eko Minarno, S.Kom Ilyas Nuryasin, M.Kom Mengtahui Ketua Jurusan Teknik Informatika Yuda Munarto, S.Kom, M.Sc ii
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 Dosen Pembimbing II Hariyady, S Kom, MT 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. vi
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 viii
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 ix
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 x
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-basisdata.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-serverimplementation.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 105
[11] Muchallil Sayed, 2006, "Remote Method Invocation Pada Bahasa Pemrograman Java Sebagai Alternatif Pemrograman Clinet Server", Universitas Syiah Kuala Banda Aceh 106