SKRIPSI
Oleh :
SYAFII
NIM. 05550003
SKRIPSI
Diajukan Kepada :
Jurusan Teknik Informatika Universitas Islam Negeri (UIN)
Maulana Malik Ibrahim Malang
Sebagai Salah Satu Persyaratan Untuk Memperoleh
Gelar Sarjana Komputer Strata Satu (S-1)
Oleh :
SYAFII
NIM. 05550003
LEMBAR PERSETUJUAN
Telah Disetujui,
05 Agustus 2009
Pembimbing I
Pembimbing II
Munirul Abidin,
NIP.150 321 634
Mengetahui,
Ketua JurusanTeknik Informatika
Fakultas Sains dan Teknologi
Universitas Islam Negeri (UIN) Maulana Malik IbrahimMalang
HALAMAN PENGESAHAN
Tanda Tangan
1. Penguji Utama
2. Ketua
3. Sekretaris
4. Anggota
SURAT PERNYATAAN
ORISINALITAS PENELITIAN
: Syafii
NIM
: 0555003
Fakultas / Jurusan
Judul Skripsi
dengan
sebenar-benarnya
bahwa
hasil
Syafii
NIM. 05550003
MOTTO
PERSEMBAHAN
KARYA INI PENULIS PERSEMBAHKAN KEPADA :
Allah SWT, yang selalu menerima curhatan dari semua masalah, menjadi harapan di ujung lelah, dan
puncak kebenaran yang menjadi sebuah tujuan
.....
Rosullullah Muhammad SAW, sebagai tauladan kesempurnaan, penuntun hati yang buta, penentram
jiwa yang dahaga. Jejak rekam Mu menjadi relikui yang tak tenilai sepanjang masa, menjadi jalan
bagi mereka yang tersesat, Engkaulah sang inspirator yang tak lekang oleh waktu
.
Abi Ku H.Abdul Mukhid AlmBi..Anakmu sing ragil iki, sampun sarjana..Semoga Abi
mendengarnya di alam sana, Doa kami bersamamu, dan juga Emak ku TerrrCiinTaa
Hj.Mutammimah, Dialah sang Super Hero sejati. Kasih sayangnya tak terhingga sepanjang
masa,.Doa nya ibarat samudra yang luas dan dalam.Cinta nya ibarat ujung kuku yang selalu
tumbuh sesering apapun aku memotongnya. eMaak Terimakasih Untuk SeMuA
..
Semua saudara-saudaraku : Mb Sofi, Kang Rosidi, Kang Latif, Kang Rondli, Mbk. Istianah, Mbk
Roudloh, Mbk Ida, Mbk Umy. Dan Juga Kakak Ipar Q : Ms Arifin, Mb. Lutfi, Kak Doel, Dan
Smua Keponakan QTsuraya, Amelia, Gina dan Topandan Laen2 smuanya
.
Kuabeh poro Dosen (P. Suhartono, Bu,Ri2n, P. Amin, P. Syahid, Bu, Ro2, Bu Honey, P.Agus, P.
Yakin, P. Zainal, P. Totok, P.Fatur, P.Faishol, P. Sauqi, P. Satria, P.Gun, P. Wawan, P.Deni, P.
Barizi, P. Munir, P. Nasichuddin, Bu. Umi salamah, P. Sulis, P. Syakirin, Ustadzah Laily, ustadzah
zakia dll), Pejabat (P.Eka, Bu. Retno, Bu. Ulfa, P.Basid, P. Sutiman, P. Tur, P. Muji, P. Imam
Suprayogo). Ustad Ngaji (De Kh. Fatoni, Lek, Suud, Mb. Niroh dkk), TK(Bu. Srimun, Bu.Ndiyah),
SD (Bu. Lastri, Surti, Tutik, P. Tain P. Ichwan Dkk ), SMP (P. Sigid, P. Suwelo Dll), SMK(P.
Gatoet, P. Darto, P. Imron, P. Rusmaji, Dkk), Kursus (P. Joe dkk), Kabehke mawun, nyuwun
pandonganipun Mugo2 Kulo sageto Netepi Cito2 Engkang Luhur Kang saget Ndadosaken Ngamalan
engkang Sae.. Dumateng Kulo lan Keluarga
Untuk semua lembaga2 yang pernah saya singgahi : Mahad (P. Khamzawi dkk) LKQS (P.Lutfi dkk),
JDFI Div. Kitobah (Kang Burhan Fisika), KOPMA (Iyung Brutus, dll), HMI (Ms. Mikidi,
Ms.Wildan, P.Ketum dan smuanya), HMJ (2005 : Kakanda Hantan (Buaya), Udin (Munyuk) (20072008 : Semua Pengurusku : Yuda, Apip, Mahjonk, Uus, Ms. Gin,Fais 0706, Mbahe, Dani celeng,
niam, Kuro, Gobel, Fuadi, Musanef, Dili, Arik, Aziz, Aan, Dcy (Cayang Q) kunam, Faristin, Rona,
kang Kosim, Hamdan, Wahyudi, mohon maaf bwt yg blum kusebut..pokoke smuanya thanks 4 all)
dan semua adik2 dan kakak2 Keluarga Besar Anggota HMJ-TI UIN MMI Malang(Ngak Lupa Bem
F2007( Ms. Ali Dkk) D-PMF2007(Abi, Anas Dkk)(Bem U 2007(Asad Dkk) dan Smua OMIK,
FORKOMTIF, KEMAHASISWAAN (P. Jaiz K, P. Roibin, P. Bahar, P. Aziz Dkk) Perpus (P.
Imron) BAK (B. Endah, P. Andik)Paska (P. Agus, P.Fatah,) Terimakasih Semuanya)
Tidak lupa pada Bu Kos Sekeluarga, Tmen2 Ku (Catur, Suryani, Son, Mb. Ivana, Ajeng, Ainatol,
Indah uli, Fikri,, Koiron, Reog, Din haq, Shofin, Miftah, Martina, Hanik, Uswatun khasanah, intan,
Sofi, Nobita, rojak, P. Bro (N Family), Armawi, Inul, huda, Tomo, Ms, Afif, Ms. Ito, Susi, Heni,
Dwik, Diaz, Sublab, Habibi, Dan Semua Tmen2 yang telah membantu, memberikan sumbangsi
pemikiran dan meluangkan waktunya, sehingga penulis mampu menyelesaikan karya ini
..
THANKS 4 ALL
KATA PENGANTAR
Tiada kata yang pantas terucap selain Alhamdulillah sebagai wujud rasa
syukur kepada Allah SWT, yang mana hanya dengan rahmat, taufik, hidayah, dan
inayah-Nya penulis dapat menyelesaikan laporan skripsi ini dengan semaksimal
mungkin, walaupun masih jauh dari kesempurnaan. semoga dari apa yang penulis
upayakan ini dapat bermanfaat bagi kita semua.
Shalawat serta salam kami haturkan pada junjungan besar kita, Nabi besar
Muhammad SAW yang karenaNya kita mendapat pencerahan menuju jalan yang
lurus, jalan yang diridhoi dan bukan jalan orang sesat yang dimurkai. Semoga
Allah melimpahkan atas mereka, rahmat yang sesuai dengan keutamaan mereka
sebagai pahala atas amal perbuatan mereka.
Penulis menyadari keterbatasan pengetahuan yang penulis miliki, karena
itu tanpa keterlibatan dan sumbangsih dari berbagai pihak, sulit bagi penulis untuk
menyelesaikan laporan skripsi ini. Maka dari itu dengan segenap kerendahan hati
patutlah penulis ucapkan terima kasih kepada:
1. Bapak dan Ibu tercinta sebagai Orang tua serta Saudara-saudara kami yang
selalu memberi motivasi kepada kami. Perjuangan dan keikhlasan kalian
membuat kami malu untuk tidak berprestasi dan berkarya.
2. Bapak Prof. Dr. H. Imam Soprayogo, selaku Rektor Universitas Islam Negeri
(UIN) Malang.
3. Bapak Prof. Dr. Sutiman Bambang Sumitro, SU., Dsc, selaku Dekan fakultas
Sains dan Teknologi UIN Malang
4. Bapak Suhartono, S.Si, M.Kom., selaku Ketua jurusan Teknik Informatika
fakultas Sains dan Teknologi UIN Malang
5. Bapak M. Amin Hariyadi, M.T, selaku dosen pembimbing jurusan yang telah
meluangkan waktu untuk membimbing, memotivasi, mengarahkan dan
memberi masukan dalam pembuatan skripsi ini.
6. Bapak Munirul Abidin, M.Ag, selaku dosen pmbimbing integrasi sains dan
islam, yang selalu memberikan masukan, nasehat serta petunjuk dalam
penyusunan laporan skripsi ini.
7. Segenap Dosen Teknik Informatika UIN Malang yang telah memberikan
secerca sinar keilmuannya, serta kenangan-kenangan indah selama proses
belajar dikampus yang selalu menjadi kenangan unik bagi penulis.
8. Semua teman-teman civitas akademika UIN Malang angkatan 2005 pada
umumnya dan anak-anak Jurusan Teknik Informatika UIN Malang angkatan
2004-2008 pada khususnya, yang memberikan dukungan sehingga laporan
skripsi ini mampu penulis rampungkan.
Akhirnya atas segala kekurangan dari laporan skripsi ini, sangat
diharapkan saran dan kritik yang bersifat konstruktif dari semua pembaca yang
bisa dikirimkan ke pinguin192@plasa.com. Semoga laporan penelitian ini dapat
memberi konstibusi positif serta bermanfaat bagi kita semua, Amin
Penulis
DAFTAR ISI
10
11
12
13
2.6 Flowchart............................................................................................ 97
BAB III ANALISIS PERANCANGAN SISTEM ..................................... 100
3.1 Deskripsi Program .............................................................................. 100
3.2 Desain Sistem ..................................................................................... 100
3.2.1 Pembangunan Program Terstruktur ........................................... 100
3.2.2 Overview Diagram ..................................................................... 102
3.2.3 System Development Live Cycle ................................................ 103
3.2.4 Pembuatan Alogaritma Program................................................ 104
3.3 Desain Basis Data............................................................................... 106
3.3.1 Tabel Ujian Online..................................................................... 106
3.3.2 ERD (Entity Relationship Diagram).......................................... 109
3.4 Analisis Sistem ................................................................................... 110
3.4.1 Use Case Diagram ..................................................................... 110
3.4.2 Aktifity Diagram........................................................................ 112
3.4.3 Squence Diagram....................................................................... 117
3.4.4 Collaboration Diagram .............................................................. 123
3.4.5 Class Diagram............................................................................ 127
BAB IV HASIL DAN PEMBAHASAN ..................................................... 129
4.1 Lingkungan Uji Coba ......................................................................... 129
4.2 Implementasi Program............................................................................................... 130
4.2.1 Generate Code............................................................................ 130
4.2.1.1 Login.java ......................................................................... 130
4.2.1.2 Pendaftaran.java ................................................................ 131
14
15
16
DAFTAR TABEL
17
DAFTAR GAMBAR
18
19
20
Gambar 4.10 Edit Kategori Soal dan Input Kategori Soal............................... 145
Gambar 4.11 Soal Ujian................................................................................... 145
Gambar 4.12 Input Soal Ujian ......................................................................... 146
Gambar 4.13 Edit Soal Ujian ........................................................................... 146
Gambar 4.14 Cetak Soal Ujian......................................................................... 146
Gambar 4.15 Edit Jawaban Soal ...................................................................... 147
Gambar 4.16 Jawaban Soal .............................................................................. 148
Gambar 4.17 Data Soal Kepribadian ............................................................... 148
Gambar 4.18 Edit Soal Kepribadian ................................................................ 149
Gambar 4.19 Cetak Soal Kepribadian.............................................................. 149
Gambar 4.20 Daftar Peserta ............................................................................. 151
Gambar 4.21 Daftar Pegawai ........................................................................... 152
Gambar 4.22 Hasil Ujian.................................................................................. 153
Gambar 4.23 Halaman Oprator ........................................................................ 158
Gambar 4.24 Halaman Peserta......................................................................... 159
Gambar 4.25 Profile Peserta ............................................................................ 159
Gambar 4.26 Soal Ujian................................................................................... 160
Gambar 4.27 Hasil Ujian.................................................................................. 161
Gambar 4.28 Ganti User Name & Password ................................................... 161
21
DAFTAR LAMPIRAN
22
ABSTRAK
Syafii. Rancang Bangun Aplikasi Online Untuk Ujian Masuk Jalur Reguler Di
UIN Maulana Malik Ibrahim Malang. Skripsi. Jurusan Teknik
Informatika, Fakultas Sains dan Teknologi, Universitas Islam Negeri
(UIN) Maulana Malik Ibrahim Malang. M. Amin Hariyadi, M.T
Kata kunci : Aplikasi, Java, JSP, MySql, Software, Macromedia Dramweafer,
Sistem, Rationalrose, Microsoft Visio, Webserver, Tomcat, Client
Proses berjalannya pendidikan di Indonesia selama 64 tahun pasca
kemerdekaan, ternyata masih menyisakan berbagai permasalahan yang sangat
dilematis. Dalam hal ujian misalnya, disatu sisi pemerintah menjadikan ujian
sebagai standart baku dalam menentukan kualitas lembaga pendidikan namun
disisi lain, tidak di imbangi dengan adanya pemerataan sarana dan prasarana, baik
berupa fasislitas, tenaga pendidik professional, dan sebagainya. Hal ini akhirnya
menimbulkan kesenjangan antar lembaga pendidikan, yang berujung pada
munculnya persaingan yang tidak sehat, sehingga memicu praktek-praktek
kecurangan untamanya dalam pelaksanaan ujian. Secara tidak langsung para
pengajar, orang tua, dan anak didik akan memiliki paradigma menghalalkan
segala cara untuk mencapai target dalam ujian, misalnya dalam mengikuti proses
seleksi masuk perguruan tinggi, tidak jarang para orang tua menggunakan cara
suap, anak menyewa joki, dan sebagainya sehingga sudah melenceng jauh dari
tujuan diadakannya ujian tersebut.
Adanya Aplikasi ujian online, menjadi salah satu alternatif untuk
mengurangi kecurangan dalam proses pelaksanaan ujian, khususnya ujian masuk
perguruan tinggi jalur reguler (mandiri) di UIN Maulana Malik Ibrahim Malang.
Selain itu aplikasi ujian online juga dapat menghemat waktu, biaya, dan tenaga,
dengan hasil ujian yang sangat objektif. Dalam proses pembuatannya, aplikasi
ujian online ini menggunakan bahasa pemrograman java (JSP) dengan MySql
sebagai database nya. Untuk memberikan tampilan yang menarik pada aplikasi
ujian online, maka digunakan software bantu seperti photoshop dan macromedia
dreamweafer. Sedangkan untuk perancangan sistemnya menggunakan software
bantu rationalrose dan microsoft visio.
Aplikasi ujian online yang telah dirancang akan diimplementasikan
dengan webserver lokal menggunakan tomcat, yang di letakkan pada komputer
server, kemudian akan diakses oleh komputer client yang terkoneksi dalam satu
ruangan saja. Aplikasi ini memiliki kemampuan acak soal, psikotes, dan
pengkoreksian secara langsung, sehingga nilai bisa langsung dilihat tentunya
dengan paparan benar dan salahnya. Selain itu dilengkapi juga dengan dukungan
keputusan yang memungkinkan adanya pergantian siswa dengan kesepakatan
dewan pelaksana ujian mandiri, yang didasarkan pada 3 poin pokok yakni : Quota
per jurusan, nilai ujian normatif, serta nilai ujian wawancara.
23
BAB I
PENDAHULUAN
1.1
Latar Belakang
Dunia pendidikan khususnya dinegara tercinta Indonesia, nampaknya
sedang mengalami berbagai macam problematika yang cukup akut, dalam hal ini
sudah mengarah kepada penurunan kualitas anak didik yang mampu dihasilkan
oleh lembaga-lembaga pendidikan yang ada saat ini, utamanya pada lembaga
pendidikan formal. Disadari maupun tidak saat ini, Indonesia sedang mengalami
sebuah degradasi sistem pendidikan yang berpijak pada kebudayaan sendiri.
Pada penetapan kurikulum misalnya, para penyusun harus dikarantina dulu
ke negeri Paman Sam, atau harus mengadakan studi banding ke Malaysia untuk
bisa menghasilkan sistem pendidikan yang berkualitas. Namun kenyataan yang
terjadi sistem pendidikan menjadi gado-gado, dan semakin tidak stabil, terbukti
dengan seringnya pergantian model kurikulum seiring dengan pergantian menteri
pendidikan, padahal sejarah telah mencatat bahwa Indonesia pada zaman orde
lama menjadi kiblat bagi negara-negara lain khususnya ditingkatan Asia.
Persaingan antar perguruan tinggi yang semakin ketat dan tuntutan untuk
meningkatkan kualitas lulusan PTAIN, yang sering dianggap sebelah mata oleh
beberapa kalangan dengan membandingkan lulusan dari non PTAIN, pada
akhirnya berpengaruh terhadap minimnya peminat untuk masuk ke PTAIN, maka
perlu adanya keberanian untuk melakukan sebuah perubahan yang sangat
mendasar, dalam hal ini ada pada tataran proses seleksi, sehingga pembuatan
aplikasi ujian masuk UIN Maliki online menjadi sebuah kebutuhan yang sangat
24
utama untuk bisa meningkatkan kualitas calon mahasiswa di UIN Maliki Malang.
Calon mahasiswa yang nantinya lolos seleksi merupakan hasil terbaik dari sekian
pendaftar yang gugur. Calon mahasiswa ini lah yang nantinya siap menjadi
professional-prosional muda yang tidak hanya intelek namun memiliki keagungan
akhlak yang luhur.
Sesuai dengan Visi UIN Maliki Malang yakni mencetak generasi intelek,
professional yang ulama yang berpijak pada Al-Quran Surat Ali Imran Ayat
(190-191) yang berbunyi :
t%!$# =t69F{$# <'T[{ ;MtU $p]9$#u 9$# #n=Fz$#u F{$#u Nuy9$# ,=yz )
$t $u/u F{$#u Nuu9$# ,=yz t6xtGtu /_ 4n?tu #Y%u $Vu% !$# t.t
$9$# z>#xt $o)s y7oys6 Wt/ #xy |M)n=yz
Artinya :
Sesungguhnya dalam penciptaan langit dan bumi, dan silih bergantinya
malam dan siang terdapat tanda-tanda bagi orang-orang yang berakal, (yaitu)
orang-orang yang mengingat Allah sambil berdiri atau duduk atau dalam keadan
berbaring dan mereka memikirkan tentang penciptaan langit dan bumi (seraya
berkata): "Ya Tuhan kami, tiadalah Engkau menciptakan Ini dengan sia-sia,
Maha Suci Engkau, Maka peliharalah kami dari siksa neraka.
(QS. Ali Imran : 190-191)
Maka dalam mendukung hal ini, seyogyanya kita sebagai insan akademis
pencipta dan pengabdi, harus mampu menawarkan solusi cerdas sebagai jawaban
berbagai macam problematika bangsa khususnya dibidang pendidikan. Hal ini
25
26
diberikan. Dalam dunia pendidikan, ujian juga menjadi media evalusi yang sangat
penting dan masih relevan sampai saat ini untuk mencari orang-orang yang
berkualitas, dalam bahasa Al-Quran sering disebut orang yang akan ditingkatkan
derajatnya dari sebagian manusia-manusia yang lain.
Ujian tidak hanya sekedar menjadi tolok ukur kualitas saja, namun juga
berfungsi sebagai sarana perpindahan jenjang, dari jenjang satu ke jenjang yang
lebih tinggi, mulai SD, SMP, SMA, Perguruan Tinggi dan seterusnya, tentunya
dengan kesulitan yang terus meningkat yang akan dilakukan secara tahap demi
tahap. Sehingga dapat diperoleh orang yang terbaik dari sebagian yan lainnya.
Hal ini tidak akan berjalan tanpa adanya aktualisasi konkrit yang bisa kita
sumbangkan, maka senada dengan Instruksi Presiden Republik Indonesia Nomor
6 tahun 2001 tentang Pengembangan dan Pendayagunaan Telematika di
Indonesia, maka munculah ide untuk membuat konsep penerapan komputerisasi
dalam bentuk pembuatan aplikasi (software) yang bisa digunakan untuk
menseleksi calon mahasiswa dari jalur reguler (mandiri), sehingga mampu
menoptimalkan jalannya proses seleksi calon mahasiswa secara lebih cepat,
sekaligus sebagai pijakan awal untuk peningkatan kualitas civitas akademika
dalam menjawab tantangan global. Mudah-mudahan kontribusi kecil ini mampu
menyadarkan kita akan potensi anak bangsa yang seharusnya kita kembangkan
tanpa harus kehilangan karakter sebagai Bangsa Indonesia yang mencintai hasil
karyanya.
Adanya program UMJR (Ujian Masuk Jalur Reguler (mandiri)) Online
juga akan mempermudah proses seleksi dan menambah minat para pendaftar di
27
UIN Maliki Malang, karena prosesnya yang cukup mudah dengan penilaian yang
sangat objektif. Dengan begitu jalannya proses seleksi calon mahasiswa akan
lebih kompetitif dan selektif, yang nantinya siap tumbuh dan berproses di UIN
Maliki Malang, untuk menghadapi persaingan dunia kerja di kemudian hari.
1.2
Rumusan Masalah
Dari latar belakang yang ada maka dapat dibuat rumusan masalah yang
nantinya akan dibahas dalam penelitian ini, yakni bagaimana merancang dan
membangun sebuah aplikasi yang nantinya digunakan untuk seleksi ujian masuk
jalur reguler (mandiri) secara online di UIN Maliki Malang.
1.3
Tujuan Penelitian
Dari rumusan masalah yang ada maka yang menjadi tujuan dari penelitian
ini adalah untuk merancang dan membangun sebuah aplikasi yang nantinya
digunakan untuk seleksi ujian masuk jalur reguler (mandiri) secara online di UIN
Maliki Malang.
1.4
Manfaat Penelitian
Dari tujuan penelitian yang ada maka ada beberapa manfaat yang bisa
28
1.5
Batasan Masalah
Dari rumusan masalah yang ada maka dapat dibuat beberapa batasan
Metode Penelitian
Metode yang digunakan dalam penelitian tentanng pembuatan aplikasi
29
sebagai berikut :
A. Bab 1 Pendahuluan
30
Pendahuluan adalah bab pertama dari tugas akhir yang memuat tentang
berbagai alasan tentang pentingnya dilakukan penelitian ini, untuk apa penelitian
tersebut dan mengapa penelitian itu harus dilakukan. Oleh karena itu, bab
pendahuluan terdiri atas : Latar belakang masalah, tujuan penelitian, manfaat
penelitian, rumusan masalah, batasan masalah, metode penelitian dan sistematika
penyusunan skripsi.
B. Bab 2 Tinjauan Pustaka
Bab dua berisi tentang argumentasi ilmiah yang dipakai sebagai referensi.
Bahan pustaka yang digunakan diperoleh dari berbagai sumber seperti : Jurnal
penelitian, laporan penelitian, buku teks, diskusi ilmiah, maupun temuan-temuan
hasil browsing di internet. Berikutnya mengkaji hasil temuan pustaka yang
berhubungan dengan konsep-konsep yang dipermasalahkan dan akan dipakai
dalam analisis, termasuk mengkaji tentang teori-teori keislaman yang berkaitan
dengan penelitian ini.
C. Bab 3 Analisis dan Perancangan
Bab tiga berisi analisa dan desain sistem secara terstruktur, yang
dilengkapi dengan beberapa diagram dan pseudocode algoritma. Selain itu akan
dilakukan pembuatan aplikasi yang dibangun sesuai dengan permasalahan dan
batasannya yang telah dijabarkan pada bab pertama.
D. Bab 4 Hasil dan Pembahasan
Bab empat membahas tentang implementasi dari aplikasi yang dibuat
secara keseluruhan. Serta melakukan pengujian terhadap aplikasi yang dibuat
untuk mengetahui apakah aplikasi tersebut telah berjalan sesuai dengan yang
31
32
BAB II
TINJAUAN PUSTAKA
2.1
meningkat sampai enam kali lipat, dari 13 juta pada tahun 1960 menjadi 82 juta
pada tahun 1995. Namun pada waktu yang sama, terdapat jurang yang semakin
lebar di antara negara industri maju dengan negara kurang maju dalam hal akses
dan sumber daya untuk pendidikan tinggi dan penelitian.
Hal ini pun terjadi di Indonesia. Pada awal tahun 1950-an, jumlah
mahasiswa di Indonesia sangat kecil. Perguruan tinggi juga sangat sedikit. Namun
pada saat itu keperluan akan tenaga sarjana terus meningkat sebagai akibat
hengkangnya tenaga ahli Belanda sehubungan dengan perjuangan Irian Barat.
Kelangkaan tenaga sarjana ini memicu keinginan para lulusan SMA untuk
memasuki perguruan tinggi. Jumlah mahasiswa terus meningkat dari tahun ke
tahun.
Awal tahun 1950-an, misi perguruan tinggi sangat sederhana. Misi
perguruan tinggi pada waktu itu adalah menghasilkan sarjana yang diperlukan
untuk mengisi lowongan tenaga sarjana di birokrasi pemerintah dan perusahaan
swasta. Misi ini juga dianut oleh berbagai perguruan tinggi swasta sehingga
rekrutmen dosen di perguruan tinggi swasta mengandalkan tenaga sarjana yang
ada di berbagai instansi.
33
34
masyarakat, ketika lowongan pekerjaan itu ditinggalkan oleh tenaga ahli Belanda.
Dari tahun ke tahun, jumlah lulusan terus bertambah. Dalam waktu beberapa
dasawarsa terjadi kejenuhan sehingga banyak sarjana yang menganggur. Tahapan
pertama ini berlangsung dari awal tahun 1950-an sampai tahun 1990-an. Tahapan
pertama ini telah dilewati.
Tahapan kedua adalah penjaminan mutu. Sarjana yang diluluskan
diharapkan memiliki mutu yang tinggi. Karena itu mutu lembaga pendidikan juga
perlu ditinggikan. Selain pengendalian mutu internal perguruan tinggi dibentuk
juga lembaga pengendalian mutu eksternal. Pada saat ini lembaga pengendalian
mutu eksternal adalah Badan Akreditasi Nasional Perguruan Tinggi. Tahapan
kedua ini dimulai pada tahun 1990-an dan kini masih terus berlangsung. Saat ini
perguruan tinggi di Indonesia masih berada pada tahapan kedua.
Tahapan ketiga adalah penghasil ilmu dan teknologi. Temuan ilmiah
dilakukan melalui penelitian serta invensi teknologi dilakukan melalui rekacipta.
Universitas yang mampu melaksanakan misi ini sering dinamakan universitas
penelitian (research university). Pada tahapan ini, perguruan tinggi tidak saja
menyerap ilmu temuan dari luar negeri atau teknologi invensi dari luar negeri
melainkan juga memberi sumbangan kepada ilmu dan teknologi. Pada saat ini
masih belum dapat dilakukan estimasi kapan tahapan ini dapat dimulai. Dimana
waktu mulai itu sangat bergantung kepada keberhasilan tahapan kedua.
Karena pada saat ini, perguruan tinggi masih pada tahapan kedua, maka
ada baiknya kalau bahasan ini dibatasi pada tahapan kedua, yakni lebih kepada
usaha penjaminan mutu perguruan tinggi. Dalam rangka inilah pertanyaan yang
35
kemudian menjadi relevan adalah, kalau peningkatan mutu ini dilakukan secara
bertahap, maka tahapan mana yang pokok dalam usaha penjaminan mutu
perguruan tinggi ?
Terkait pertanyaan diatas artikel majalah Forwas dengan judul : Menyoal
Efektifitas Pengawasan Ujian Nasional (Masrul Latif, 2007:25) menarik untuk
diperhatian. Alasan pertama yang muncul setelah membaca artikel tersebut adalah
adanya beberapa hal yang mungkin disepakati seluruh pihak yakni, uijan sampai
saat ini masih dianggap sebagai tolok ukur prestasi atau mutu dari suatu lembaga
pendidikan negeri maupun swasta, termasuk dalam usaha penjaringan calon
mahasiswa baru.
2.2
36
(seleksi) maka akan diperoleh orang-orang yang berakal, sesuai dengan Firman
Allah dalam Al-Quran Surat Azzumar 39 Ayat 9 :
tGo y % 3 n/u suqu (#_tu ntzF$# xts $V!$s%u #Y`$y 9$# u!$t#u Ms% u r&
=t79F{$# (#9'& .xtGt $y) 3 tn=t t%!$#u ts>t t%!$#
Artinya :
(apakah kamu Hai orang musyrik yang lebih beruntung) ataukah orang
yang beribadat di waktu-waktu malam dengan sujud dan berdiri, sedang ia takut
kepada (azab) akhirat dan mengharapkan rahmat Tuhannya? Katakanlah:
"Adakah sama orang-orang yang mengetahui dengan orang-orang yang tidak
mengetahui?" Sesungguhnya orang yang berakallah yang dapat menerima
pelajaran.
(QS. Azzumar 39 : 9)
Al-Quran pada ayat yang lain mengatakan bahwa, apapun yang deterima
oleh manusia, berupa pangkat, jabatan dan sebagainya adalah sebagai ujian bagi
manusia tetang bagaimana dia bersikap dalam menerima apa yang telah diberikan
Allah SWT kepadanya. Tentu akan ada konsekuensi berupa pahala atau siksaan
yang amat pedih. Sesuai dengan Firman Allah SWT :
37
Tuhanmu amat cepat siksaan-Nya dan Sesungguhnya dia Maha Pengampun lagi
Maha Penyayang.
(QS. Al Anam 6 : 165)
t%!$# $tFs s)s9u ttF u $t#u (#9)t r& (#.u I r& $9$# |=ymr&
t/s39$# yn=us9u (#%y| %!$# !$# yn=un=s ( =6s%
Artinya :
Apakah manusia itu mengira bahwa mereka dibiarkan (saja)
mengatakan: "Kami Telah beriman", sedang mereka tidak diuji lagi? Dan
Sesungguhnya kami Telah menguji orang-orang yang sebelum mereka, Maka
Sesungguhnya Allah mengetahui orang-orang yang benar dan Sesungguhnya dia
mengetahui orang-orang yang dusta.
(QS. Al Ankabuut 29 : 2-3)
Rosullulloh SAW Bersabda : Besarnya pahala sesuai dengan besarnya
ujian dan cobaan. Sesungguhnya Allah 'Azza wajalla bila menyenangi suatu kaum
Allah
menguji
mereka.
Barangsiapa
bersabar
maka
baginya
38
manfaat
39
% #s)u ( 3s9 !$# x|t (#s|$$s =yfy9$# (#sxs? 3s9 % #s) (#t#u t%!$# $pr't
07yz t=ys? $y/ !$#u 4 ;My_uy z=9$# (#?& t%!$#u 3 (#t#u t%!$# !$# st (#$$s (#$#
Artinya :
Hai orang-orang beriman apabila dikatakan kepadamu: "Berlapanglapanglah dalam majlis", Maka lapangkanlah niscaya Allah akan memberi
kelapangan untukmu. dan apabila dikatakan: "Berdirilah kamu", Maka
berdirilah, niscaya Allah akan meninggikan orang-orang yang beriman di
antaramu dan orang-orang yang diberi ilmu pengetahuan beberapa derajat. dan
Allah Maha mengetahui apa yang kamu kerjakan. (QS. Al Mujadalah 58: 11)
2.3
40
yang telah diberikan?, berikut beberapa cara penerapan sistem ujian tersebut
berserta keuntungan dan kerugiannya :
Tabel 2.1 Keuntungan dan Kerugian Sistem Ujian Online
Uian Online
- Jawaban akan dikoreksi
oleh program yang sudah
diterapkan dalam
komputer masing-masing
pelajar
Keuntungan
- Jawaban dapat dengan
cepat dikoreksi.
- Hasil koreksi sangat
objektif.
Kerugian
- Pengajar tidak dapat
memantau kemajuan
pelajar
- Tidak dapat membuat
soal essay
- Kunci jawaban dapat
lebih mudah diketahui
oleh pelajar
2.3.1
dikerjakan, sehingga dengan hasil itu dapat diukur kemampuan dan penerapan
strategi baru untuk pembelajaran selanjutnya, dalam konsep sistem ujian ada
beberapa jenis feedback hasil penilaian yang dapat diterapkan, antara lain :
- Feedback yang diberikan sehabis setiap pertanyaan
Hasil penilaian dan jawaban yang diberikan setelah setiap pertanyaan akan
membuat ujian seperti sebuah permainan sehingga akan mengurangi kebosanan
dalam mengerjakan soal-soal, bagi beberapa peserta hasil ujian yang telah
didapatkan sebelumnya akan menjadi pemicu motivasi untuk mengerjakan soalsoal selanjutnya, tetapi mungkin bagi sebagaian peserta lainnya mungkin itu akan
membuat konsentrasinya berkurang apalagi jika hasil yang didapatkan kurang
memuaskan.
41
Keuntungan lain dari jenis ini adalah pengajar dapat membuat soal-soal
yang berkaitan dari satu nomor ke nomor lainnya, karena peserta ujian akan
mengetahui penyelesaian soal sebelumnya, sehingga arah soal tersebut dapat
ditentukan dengan benar.
Sedangkan kerugian lain dari jenis ini adalah karena hasil dari penilaian
diproses langsung oleh komputer maka soal-soal yang dibuat hanya terbatas pada
soal yang membutuhkan jawaban pasti, seperti pilihan ganda ataupun jawaban
benar-salah, dan bagi peserta sistem ujian, feedback jenis ini akan memaksa para
siswa untuk menjawab secara langsung, tidak dapat memperbaiki jawabanjawaban yang telah dikirim sebelumnya, hal ini sangat merugikan bagi siswa yang
kurang konsentrasi pada soal-soal terdahulu.
Soal
no 1
Jawaban &
Penilaian
Soal
no 2
Jawaban &
Penilaian
Hasil
total
42
Kerugian dari sistem ini adalah soal yang dibuat juga terbatas pada soalsoal yang membutuhkan jawaban pasti dan juga soal-soal yang dibuat diharapkan
tidak berhubungan antara satu nomor dengan nomor lainnya, karena dengan
kesalahan satu soal saja kemungkinan besar juga akan mempengaruhi jawaban
pada soal yang lain.
Soal no
1
Soal no
2
Soal no
3
Soal no
4
Hasil
total
43
Sedang kerugian dari jenis feedback ini adalah penilaian bisa saja menjadi
tidak adil sesuai dengan situasi serta kondisi pengajar, hal lain yang menjadi
pertimbangan adalah adanya tenggang waktu yang tidak pasti antara waktu ujian
dan pengumuman hasil ujian.
Pengiriman
jawaban secara
keseluruhan
Pelajar
Baca Soal
secara
keseluruhan
Pengajar
Baca jawaban
secara
keseluruhan
Koreksi
jawaban
secara
keseluruhan
Jawab soal
secara
keseluruhan
Hasil Ujian
Gambar 2.3 Arsitektur feedback yang dikoreksi oleh pengajar
2.3.2
digunakan. Pembuatan soal-soal itu sendiri disesuaikan dengan jenis dari metode
pengerjaan dan feedbacknya, berikut beberapa contoh tipe soal tersebut
- Soal benar/salah
Soal-soal jenis ini dapat digunakan untuk berbagai jenis pertanyaan seperti
berikut : Apakah pernyataan ini benar atau salah?, Apakah prosedur ini benar atau
salah?, Apakah prosedur ini dapat dikerjakan atau tidak?, Apakah harus
44
menyetujui atau menolak proposal ini?, Alternatif mana yang akan dipilih dari dua
alternatif ini?, dan beberapa jenis pertanyaan lain.
Jenis soal ini dapat dikoreksi secara langsung oleh komputer pengguna
ataupun komputer pusat, tetapi tidak dapat digunakan untuk jenis pertanyaan yang
kompleks dan membutuhkan toleransi dalam pengkoreksian jawaban.
Kelemahan dari soal ini adalah memungkinkan peserta ujian untuk lebih
kearah menebak jawaban daripada mengerjakan solusi dari permasalahan.
- Soal pilihan ganda
Soal dengan jenis pilihan ganda hampir mirip dengan jenis soal
benar/salah hanya saja penyelesaian dari soal ini lebih mengarah kepada jawaban
yang lebih spesifik daripada jawaban yang dibutuhkan pada metode soal
sebelumnya, disamping itu persentase kesalahan juga akan lebih besar bergantung
dari banyaknya pilihan yang disediakan oleh pembuat soal.
Sama seperti pada metode soal benar/salah keuntungan dari soal ini adalah
jawaban akan dikoreksi secara otomatis sehingga tidak dapat digunakan untuk
pembuatan soal yang kompleks, serta dimungkinkannya juga peserta untuk
menebak jawaban daripada mengerjakan solusi dari permasalahan.
- Soal essay
Metode ini digunakan untuk pembuatan soal yang kompleks dan
bervariasi, dengan artian soal bisa berupa pertanyaan dengan jawaban yang
berbeda antara satu peserta dengan peserta lainnya, ataupun soal yang
mengharuskan peserta untuk membuat sebuah makalah yang penilaiannya lebih
kearah cara berpikir peserta ujian daripada jawaban yang pasti.
45
Seperti
telah
diterangkan
sebelumnya,
soal
dengan
jenis
ini
Bobot-bobot Soal
Untuk memilah-milah tingkat kesulitan soal yang terbuat, dibutuhkan
penilaian yang berbeda pula untuk masing-masing soal, hal itu akan memudahkan
peserta ujian dalam memilih soal yang memungkinkan untuk tercapainya nilai
paling maksimal menurut kemampuannya, bobot penilaian soal ditentukan
sebelumnya oleh pengajar pada waktu soal itu terbuat, berikut beberapa contoh
jenis bobot-bobot soal yang dapat digunakan
- Bobot penilaian soal dengan jawaban kosong-salah-benar
Bobot jenis ini biasanya digunakan untuk jenis soal benar/salah maupun
soal pilihan ganda yang mempunyai jawaban pasti untuk benar atau salahnya,
sehingga memungkinkan bagi sistem untuk menentukan secara otomatis bahwa
jawaban itu benar atau salah, penilaian jawaban biasanya bernilai negatif untuk
jawaban yang salah, nol untuk jawaban kosong dan positif untuk jawaban yang
benar.
- Bobot penilaian soal dengan jawaban kosong-terisi
46
Soal dengan bobot ini biasanya adalah tipe essay yang membutuhkan
toleransi dalam penilaiannya, karena benar atau salahnya jawaban ini adalah
relatif tergantung dari situasi dan kondisi pengkoreksi, jawaban tidak bisa
dikategorikan murni benar ataupun murni salah, sehingga penilaian jawaban akan
bernilai nol untuk jawaban kosong dan akan bernilai positif (1-nilai maksimal)
untuk jawaban yang terisi.
2.3.4
inginkan, terdapat banyak jenis kecurangan yang mungkin dilakukan pada ujian
tersebut, dan banyak pula jenis pencegahan yang juga dapat dilakukan, yang perlu
ditekankan untuk pertama kalinya adalah perlunya mengetahui alasan-alasan
mengapa para siswa melakukan kecurangan tersebut, beberapa alasan yang
memungkinkan antara lain :
- Hasil penilaian ujian yang akan mempengaruhi status pendidikan para
siswa.
- Rasa malu terhadap rendahnya hasil ujian yang telah diperoleh
- Kesenangan / hobi dalam melakukan kecurangan
- Kebudayaan yang menganggap kecurangan bukanlah suatu kesalahan
Dalam sistem ujian online persentase kecurangan yang terjadi diperkirakan
lebih besar daripada sistem ujian konvensional, hal tersebut disebabkan oleh tidak
adanya sistem pengawasan yang layaknya diterapkan pada sistem ujian
konvensional. Kemudahan-kemudahan (dalam hal ini belum bisa dikategorikan
47
sebagai kecurangan, tergantung dari peraturan yang berlaku) yang mungkin saja
terjadi dalam sistem ujian ini antara lain :
- Kemudahan untuk mengakses referensi ataupun bahan teori
- Kemudahan untuk bekerjasama dengan peserta ujian lainnya
Metode pencegahan dalam sistem konvensional yang memungkinkan
diterapkan dalam sistem ujian online adalah digunakannya metode acak soal
sehingga semua setiap peserta menerima soal yang berbeda-beda tentunya juga
dengan jawaban yang berbeda, sehingga mengurangi kerjasama antar peserta
ujian.
Terdapat beberapa metode lain yang lebih memungkinkan diterapkan
dalam sistem ujian ini, diantaranya adalah :
- Batasan waktu
Diharapkan waktu ujian yang tersedia sesuai dengan perkiraan waktu yang
dibutuhkan dalam mengerjakan soal, sehingga peserta tidak mempunyai waktu
lebih untuk saling berhubungan dengan peserta lain, ataupun untuk mengakses
bahan-bahan ujian yang mungkin saja tersedia ditempat lain.
- Pendekatan secara kepercayaan
Dalam pendekatan ini pengawas diharuskan untuk selalu memotivasi
peserta ujian untuk tidak melakukan kecurangan, inti dari pendekatan ini adalah
meyakinkan peserta ujian untuk percaya diri dengan kemampuan sendiri, percaya
diri atas semua yang telah dipelajari, serta meyakinkan pada siswa bahwa hasil
ujian ini justru akan membantu pengembangan arah pendidikan para siswa
selanjutnya.
48
sistem ujian online ini minimal diperlukan web server, bahasa pemrograman web,
dan program database server, perangkat-perangkat lunak yang digunakan untuk
memenuhi kebutuhan tersebut antara lain adalah Apache Tomcat web server, JSP,
49
Server. Skrip ASP memerlukan IIS sebagai web server, PHP memerlukan IIS
atau Apache sedangkan JSP bisa menggunakan Apache Tomcat sebagai salah satu
web server yang mendukungnya.
2.4.1.1 Installasi Apache Tomcat
Paket yang diperlukan untuk proses installasi adalah :
install J2SDK
Setelah melewati tahapan installasi di atas maka untuk mencoba maka tahapan
yang dilakukan adalah :
50
2.4.1.2 Konfigurasi
File konfigurasi Apache Tomcat ada 3 yaitu :
default
direktori
HOME>/webapps/ROOT.
kerja
utama"
adalah
<TOMCAT-
menjadi :
<!-- Tomcat Root Context -->
<Context path="" docBase="D:\Dokumen\Web\JSP" debug="0"/>
51
Apabila menginginkan
Untuk mengetahui user apa yang bisa mengakses direktori manager dan
password dari user tersebut bisa dilihat daftar user pada file users.xml atau
tomcat-users.xml. Sebagai contoh isi file tersebut adalah:
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
52
Pada baris berikut dapat diketahui bahwa user admin dengan password admin
dapat mengakses manager.
<user username="admin" password="admin" roles="admin,manager"/>
53
54
55
Start Application
Mengaktifkan aplikasi yang terinstall (path=nama_aplikasi).
URL: http://localhost:8080/manager/html/start?path=/jsp-examples
Stop Application
Mengaktifkan aplikasi yang terinstall (path=nama_aplikasi).
URL: http://localhost:8080/manager/html/stop?path=/jsp-examples
Reload Application
Meload kembali aplikasi yang sudah running.
URL: http://localhost:8080/manager/html/reload?path=/jsp-examples
Undeploy Application
Menghapus aplikasi dari server (path=nama_aplikasi).
URL: http://localhost:8080/manager/html/undeploy?path=/jsp-examples
Deploy Application
Ada 2 cara yang bisa dilakukan untuk menginstall aplikasi ke dalam web
server
1. Menginstall aplikasi (file WAR atau direktori) yang sudah berada di
server Cara ini sangat efektif dilakukan ketika bekerja di computer server
(dalam pembuatan aplikasi). File-file aplikasi yang dibuat sudah berada di
server sehingga untuk mengaksesnya cukup dengan mendaftarkannya ke
server. Caranya dengan memberitahu Tomcat server dimana direktori
aplikasi berada. URL: http://localhost:
8080/manager/html/deploy?path=/testServlet
56
Jika proses deploy/ instalasi berhasil, aplikasi akan muncul dalam List
Applications.
2.4.1.5.2 Tomcat Administration Tool
Tomcat Administration Tool berfugsi untuk mengelola server resources,
data source, Mail Session, Environment Entries, User Databases, Users dan
groups, Roles dan beberapa konfigurasi yang diperlukan oleh aplikasi dan tomcat
server.
Administration
Tool
dapat
diakses
melalui
URL:
57
2.4.2
Java
Java merupakan bahasa yang dikembakan oleh Sun Microsystems.
(servlet). Dengan ketertarkan yan gbesar terhadap java, ada kemiripan dengan C
dan C++ dan dukungan industri, banyak organisasi memakai Java. Java sangat
sederhana, orinetasi objek, terdistribusi, ibnterpreted,robust,secure architecture
neutral, portable, high performance, multi threaded dan bahasa yang dinamik
58
secara umum dapat dianggap sebagai 3-tier karena hanya terdistribusi melalui tiga
lokasi yang berbeda, yaitu komputer klien, komputer J2EE server, dan komputer
database atau legacy di backend.
Komponen di J2EE adalah sebuah unit program yang dirakit ke aplikasi
J2EE sesuai dengan kelas (class) dan filenya yang berkomunikasi dengan
komponen lainnya. Spesifikasi J2EE mendefinisikan komponen-komponennya
sebagai berikut :
1. Aplikasi klien dan applet ialah komponen yang berjalan di sisi klien. Klien
J2EE dapat berupa klien web atau aplikasi web yang terdiri dua bagian yaitu
web page dinamis yang berisi berbagai tipe bahasa markup (HTML, DHMTL,
XML, dan lainnya) yang dibuat oleh komponen web yang berjalan di web tier,
59
dan bagian kedua adalah web browser serta header halaman yang diterima dari
respon server yang berjalan pada sisi klien,
2. Komponen teknologi Java Servlet dan Java Server Pages (JSP) adalah
komponen web yang berjalan di sisi server,
3. Komponen Enterprise Java Beans (EJB) adalah komponen bisnis yang
berjalan di sisi server. Komponen ini mengatur aliran data di antara aplikasi
klien dan komponen yang berjalan di server J2EE atau di antara komponen
server dan database komponen Java Beans yang mempunyai variabel instance
dan method get dan set untuk mengakses data di variabel instance.
Komponen web J2EE dapat berupa Servlet atau JSP. Servlet adalah kelaskelas bahasa pemrograman Java yang secara dinamis memproses permintaai
(requenst) dan membangkitkan respon. Dalam membangkitkan (generate) respon,
servlet menggenerasi dokumen HTML yang kemudian dikirim ke browser klien
untuk ditampilkan. JSP ialah dokumen berbasis teks yang dieksekusi sebagai
servlet tetapi mengizinkan pendekatan lebih alami untuk membuat isi (content)
statis web. JSP berfungsi membuat web berinteraksi dengan web server lebih
dinamis.
Klien berkomunikasi dengan tier bisnis yang berjalan di server J2EE dapat
secara langsung, atau dalam hal klien berjalan di browser melalui halaman JSP
atau Servlet yang berjalan di tier Web.
60
J2EE Server
Browser
Servlet
JSP Page
Web Container
Application
Client
Application
Client
Container
Database
Enterprise
Bean
Enterprise
Bean
EJB Container
Client
2.4.2.2 Servlet
Servlet adalah sebuah class dalam bahasa pemgrograman Java yang
digunakan untuk meningkatkan kapabilitas dari server sebagai host dari aplikasi
yang diakses melalui request-response programming model(Diadaptasi dari
tutorial J2EE). Servlet adalah sebuah class java yang meng-implement interface
Servlet dan menerima request yang berasal dari class Java, web client, atau servlet
lain yang membangkitkan response.
61
Teknologi Servlet adalah jawaban utama yang terdapat pada Java untuk
menambahkan fungsi ke server yang digunakan untuk merespon permintaan dari
model. Servlet mempunyai kemampuan untuk membaca kumpulan data yang
diminta oleh server dan menghasilkan response yang dinamis yang berdasarkan
pada data tersebut, servlet tidak terbatas pada kondisi HTTP; seperti dinyatakan
sebelumnya, sehingga dapat diterapkan untuk scenario manapun yang menuntut
request dari object model. Kondisi HTTP pada saat ini adalah yang digunakan
pertama
kali,
jadi
Java
menyediakan
versi
spesifikasi
HTTP
yang
memahami
pemrograman
servlet
dalam
penggunaan
javax.servlet.Servlet serta siklus internal dari servlet, ada tiga proses internal
dalam Servlet yaitu : init, service, dan destroy. Sebenarnya ketiga proses ini
62
Method init()
Method ini dipanggil setelah servlet container menginstansiasi class
servlet. Pemanggilan method init hanya dilakukan sekali saja selama program
servlet dieksekusi. Setelah pemanggilan method ini berarti servlet siap melayani
request.
Method ini tidak harus melakukan sesuatu, berarti tidak ada kode yang
diletakkan dalam implementasi method init() ini. Method ini sangat berguna untuk
melakukan inisialisasi, seperti memanggil driver database dan inisialisasi nilai
yang dilakukan hanya sekali. Method ini memiliki sintaks seperti berikut :
Public void init(ServletConfig config) throws ServletException
Method ini juga penting karena servlet container mempass obyek
ServletConfig dari file konfigurasi web.xml. Jika method init menghasilkan
ServletException, maka servlet container tidak dapat menempatkan servlet ke
service.
Method service()
Method service dipanggil oleh servlet container setelah method init untuk
63
Dua obyek ini penting karena memberikan fasilitas untuk untuk menulis
kode yang menentukan bagaimana servlet menangani request. Pada method ini
servlet container secara internal akan mengirimkan obyek ServletRequest dan
ServletResponse yang merupakan obyek yang memiliki request klien dan
response terhadap klien. Method service ini akan menghasilkan dua jenis
exception, yaitu ServletException dan java.io.Exception jika terjadi error pada
operasi servlet maupun proses input-output pada saat menangani request dan
menghasilkan response.
Method destroy()
Pada serlvet container pemanggilan method destroy dilakukan sebelum
menghilangkan instance servlet dari service. Hal ini terjadi biasanya pada saat
servlet container (sebagai contoh Tomcat) di-shutdown atau dimatikan ataupun
apabila servlet container perlu melepaskan memori yang dipakai. Dengan method
ini, servlet memberikan fasilitas untuk membersihkan atau melepaskan sumber
daya yang terpakai seperti pembacaan file, koneksi database, dan sumber daya
lainnya. Sintaks method destroy() adalah sebagai berikut :
Public void destroy()
Pada method init(), service(), getServletConfig(), getServletInfo() dan destroy(),
kelima method diimplementasikan pada program servlet karena untuk interface
servlet.
2.4.2.2.2 Gambaran Arsitektur Servlet
Sebelum Servlet, salah satu dari beberapa cara yang umum digunakan
untuk menambahkan sebuah fungsi kedalam web server adalah melalui Common
64
65
66
HttpServlet, class ini akan meng-inherit method yang akan secara otomatis akan
dipanggil oleh server tergantung pada kondisi-kondisi tertentu (akan dibicarakan
kemudian). Dengan meng-override method ini, dapat membuat servlet memiliki
fungsi-fungsi yang di inginkan.
Pada kasus ini, method yang diturunkan dari HTTPServlet dan akan
dioverride adalah method doGet. Untuk menyederhanakan, ia adalah sebuah
method yang akan dipanggil oleh servlet container kapanpun pada saat Get
request dipanggil pada servlet tertentu. Ingatlah, pada bab sebelumnya mengenai
site navigation, document retrieval, dan page viewing adalah contoh-contoh dari
GET request. Oleh karena itu, kapan saja user ingin untuk melihat output dari
servlet, sebuah GET request pasti dipanggil.
Apabila terlihat pada listing code, maka akan dapat dilihat bahwa doGet
method akan menerima dua parameter yaitu: HttpServletRequest object dan
HttpServletResponse object. Darimana object ini berasal, tidak perlu diperhatikan
lagi oleh developer. Sehingga akan diciptakan dan di-maintain oleh servlet
container dan bekerja sederhana pada saat container memanggil method doGet.
Pada kasus ini, method doGet(dan method-method lain yang akan ditemukan
kemudian) hampir sama dengan method public static void main (String[] args)
yang digunakan pada program java berbasis command line. Nantinya tidak akan
dibuat String array untuk diberikan kepada method; hal itu telah disiapkan oleh
runtime environment.
Object dari HttpServletRequest dan HttpServletResponse telah menyiapkan
fungsi-fungsi yang berguna bagi developer:
67
68
2.4.2.3 Containers
Pusat dari konsep aplikasi J2EE adalah container, semua komponen J2EE,
mencakup komponen web (servlet,JSPs) bersandar pada keberadaan suatu
Container; tanpa container yang sesuai, maka J2EE tidak akan dapat dijalankan.
Barangkali cara untuk menjelaskan hal ini adalah untuk berpikir tentang ragam
pelaksanaan program Java secara normal. Program Java, untuk dijalankan, harus
memiliki cara utama yang menggambarkan ; menandai start ini pada pelaksanaan
program dan menjalankan method ketika program diexecute dari command line.
Servlet tidak banyak memiliki kelemahan, ketika ditemukan desain
program yang buruk, hal itu tidak menandai saat menjalankan eksekusi
program,ketika seorang user membuat permintaan HTTP untuk sebuah servlet,
69
metode yang digunakan tidak dipanggil secara langsung. Sebagai gantinya, server
tidak menyampaikan permintaan tadi kepada servlet, melainkan kepada container
dimana servlet dikembangkan, kemudian container bertanggung jawab atas
pemanggilan metode yang sesuai didalam servlet, tergantung pada jenis
permintaan user.
2.4.2.4 JSP (Java Server Pages)
Java Server Pages (JSP) adalah bahasa scripting untuk web programming
yang bersifat server side seperti halnya PHP dan ASP.
gabungan antara baris HTML dan fungsi-fungsi dari JSP itu sendiri. Berbeda
dengan Servlet yang harus dikompilasi oleh USER menjadi class sebelum
dijalankan, JSP tidak perlu dikompilasi oleh USER tapi SERVER yang akan
melakukan tugas tersebut. Makanya pada saat user membuat pertama kali atau
melakukan modifikasi halaman dan mengeksekusinya pada web browser akan
memakan sedikit waktu sebelum ditampilkan.
Seperti tipe aplikasi java lainnya (Servlet, Applet, Midlet dll), JSP juga
bertipe Strong Type artinya penggunaan variable pada halaman tersebut harus
dideklarasikan terlebih dahulu. Misalnya pada sintaks pengulangan berikut :
int i;
for (i=1; i<13; i++)
{
// statement
}
70
Atau
for (int i=1; i<13; i++)
{
// statement
}
Hal ini harap diperhatikan bagi para developer yang terbiasa dengan PHP
yang tidak memerlukan deklarasi variable yang akan digunakan. Dan berikut
adalah tampilan dari URL http://localhost:8080/manger/html
Pada gambar di atas bisa dilihat direktori kerja yang telah dibuat, serta
fasilitas untuk Stop, Reload dan Remove. Perintah Reload biasanya digunakan
untuk me-refresh Servlet yang baru dimodifikasi, karana untuk melihat perubahan
dari modifikasi sebuah Servlet tidak bisa dilakukan dengan cara me-refresh web
browser.
Java Server Pages (JSP) juga diartikan sebagai suatu server berbasis
pembrograman Java yang mengijinkan statik HTML digabungakna dengan
dinamin HTML. HTML dapat mengembangkan halaman Web dengan
menggunakan tool (contoh, Microsoft Frontpage atau Macromedia Dreamweaver)
dan memodifikasi file HTML dan embed konten dinamik dengan spesial tags.
71
JSP bekerja pada Web server termasuk Apache HTTP Server dan
microsoft Internet Information Server ( dengan plug-ins dari IBM WebSphere,
LiveSoftware Jrun, atau New Atlanta ServletExec). JSP mengcompile kedalam
Java servlet dan proses yang mendukung Java pada Web server. Terdapat time
utama dalam membuat JSP yang dapat embedded pada halaman:
Skriping
element
(skriplets),
yang
mengijinkan
kode
Java
untuk
Directives, yang dapat dilewati oleh JSP untuk mengendalikan struktur dari
servlet.
Action (tag), yang mengijinkan komponen yang ada (seperti JavaBean) untuk
digunakan.
melalui JSP XML tag. Yang termasuk dalama JSPserpti standar tag seperti
jsp:bean (dengan deklarasi usera komponen JavaBean), jsp:setProperty ( untuk
menetapkan nilai dari property pada Bean) dan jsp:property ( untuk
mendapatkan nilai dari property pada Bean, diconvert kedalam string dan
diletakkan pada objek).
JSP merubah halaman JSP, kode Java dan statik HTML menjadi kode
Java, yang secara otomatis diatur oleh JSP kedalam Java servlet, setelah itu secara
otomatis dicompiled kedalam kodebyte Java. Sejak servlet dicompiled, kode JSP
tidak diperlukan diterjemahkan
merubah servlet hanya sekali setelah kode terkahir, sesudah itu servlet
dicomplied. Saat JSP dan JSP developer, digenerasi dan compile servlet secara
72
otomatis, JSP membrikan efisiensi performa dan fleksibilitas yang cepat dalam
pengembangan dengan tidak memerlukan mengcompile kode secara manual.
Kelemahan dalam penggunaan servlet yaitu pada proses generate sebuah
respon dari klien yang berformat HTML akan dikirim kembali. Sejak servlet
berupa class bahasa pemograman Java, sehingga dapat menghasilkan keluaran
dengan cara lain pada pemograman Java seperti : mencetak karakter String ketika
mengeluarkan output, dalam hal ini HTTP-response, bagaimanapun, HTML
sangat complex dan sangat sulit untuk melakukan proses encode HTML melalui
penggunaan String literal. Juga, melibatkan jasa suatu perancang gafis dan
perancang halaman web untuk membantu didalam bagian halaman statis akan
sulit atau mungkin mustahil : Nantinya akan diharapkan untuk mempunyai sedikit
pengetahuan tentang Java.
Inilah dimana teknologi JavaServerPage masuk. JSP terlihat hanya seperti
HTML. Hanya dapat mengakses kepada semua hal yang dynamic dari servlet
dengan menggunakan script dan bahasa expression. Karena terlihat seperti
HTML, designer berkonsentrasi pada desain sederhana HTML dan hanya
meninggalkan sisa ruang kode untuk developer untuk mengisi dengan content
dynamic.
Pada pembahasan sebelumnya telah diketahui bagaimana menghasilkan
dynamic content untuk user dengan menggunakan teknologi Java melalui
penggunaan servlets. Bagaimanapun juga, ketika pengembang Java dapat
membuat sites dengan semacam dynamic content hanya dengan menggunakan
servlet, ada beberapa kerugian dengan menggunakannya.
73
74
JSP lebih dikenal oleh semua orang dengan pengetahuan dari HTML,
hanya dengan mempelajari markup dynamic. Hal ini membuatnya mungkin untuk
para desainer site untuk membuat template HTML dari sebuah site, dengan para
pengembang memprosesnya suatu saat nanti untuk memasukkan tags yang
menghasilkan dynamic content. Hal ini juga memudahkan dalam pengembangan
web page.
JSP memiliki built-in yang mendukung untuk penggunaan komponen
software yang dapat digunakan kembali(JavaBeans). Hal ini tidak hanya
membiarkan para pengembang menghindari kemungkinan menemukan kembali
inti/kemudi dari tiap aplikasi, mempunyai software pendukung untuk memisahkan
komponen software untuk menghandle logic promotes separation dari presentasi
dan business logic.
JSP, merupakan bagian solusi dari Java untuk pengembang aplikasi web,
merupakan multi-platform yang tak terpisahkan dan dapat dijalankan pada
berbagai container servlet yang compatible, dengan mengabaikan vendor atau
sistem operasinya.
Dalam kaitannya dengan cara kerja JSP tidak membutuhkan kompilasi dari
para pengembang. Kompilasi ini telah ada pada kontainer servlet. Modifikasi JSP
dideteksi secara otomatis. Hal ini secara relatif membuatnya mudah untuk
dibangun.
2.4.2.4.2 Contoh JSP
75
Gambar diatas adalah file JSP yang simple yang melakukan penyambutan untuk
site user sebagai penginformasian tanggal dan waktu saat ini untuk user.
Dari contoh diatas, dapat dilihat bahwa file JSP merupakan sebagian besar
dari HTML. Hanya pada bagian ini yang beda :
<%= new java.util.Date()%>
Hal ini merupakan bagian dari kode Java untuk menampilkan hari dan tanggal
pada saat itu juga. Hal ini mempermudah unutk membuat objek baru untuk
membuat objek Date dan menampilkannya sebagai String. Dibawah ini
merupakan hasil output dari file JSP tersebut diatas.
76
Meskipun JSP berbasis Java, dan dikendalikan sebagai kode Java oleh
servlet, memperbolehkan pengembang untuk menggunakan syntax yang berbeda
pada spesifikasi Java 2.0 dan sebagai gantinya menggunakan aturan spesifikasi
JSP. Bagian berikut ini menggambarkan syntax JSP dengan lebih detail.
2.4.2.4.4 Element-element dan Data Template
Semua komponen Java Server Pages dapat dibagi menjadi dua kategori
umum: elements dan templates data. Element merupakan dynamically yang
menghasilkan informasi. Data template merupakan informasi static yang
memperhatikan
presentasi.
Pada
hello.jsp,
ekspresi
JSP,
<%=
new
77
78
Contoh diatas merupakan ilustrasi yang mudah tentang kode Java didalam
JSP. Kode diatas menghasilkan output text, jadi, kedalam web browser.
Contoh: For-Loop pada scriptlet
LoopScriptlet.jsp
79
80
Expressi java yang laindisimpan diantara <%= dan %> yang dievaluasi
pada saat run-time, yang dikonversi kedalam string, dan dimasukkan kedalam
page. Expressi selalu mengirim string text ke client, tetapi object yang dihasilkan
sebagai hasil dari expressi yang tidak memerlukan nilai instan object sebagai
string. Semua yang bukan object string secara instan dikonversi melalui method
toString(). Jika hasilnya primitive, kemudian string primitive akan ditampilkan.
Hal tersebut akan dijelaskan terlebih dulu bahwa pada saat run-time(ketika
ada request page), hal ini akan memberikan expressi akses penuh untuk informasi
tentang request. Sebuah nomer dari variabel yang telah dikenali sebenarnya telah
tersedia untuk author JSP untuk expressi yang mudah.
Variable yang telah dikenali ini disebut implicit objects dan berikut ini
akan dibahas secara detail. Untuk tujuan dari expression, yang terpenting
adalah:
o response, HttpServletResponse;
o request, HttpServletRequest;
81
82
83
AccessCountDeclaration_jsp.java
dan
isinya.
Ingatlah
bahwa
84
sebagai
anggota
variable.
Hal
ini
membuat
accessCount
diperbolehkan tidak hanya untuk method _jspservice() tetapi untu method yang
lain digambarkan dalam JSP. Menguji kode terdahulu dapat menunjukkan tentang
penempatan yang tepat sebuah deklarasi, scriptlets dan expressi pada kode source
Java yang ditranslasi dari page HTML.
Akhirnya, ingatlah bahwa syntax the XML-compatible syntax untuk <%!
JavaCode %> adalah
<jsp:declaration> Java Code; </jsp:declaration>
85
Template Text
o Gunakan <\% untuk menghasilkan <% pada output
o <%-- JSP Comment --%>
o <!-- HTML Comment -->
o Seluruh text di luar JSP ditampilkan pada halaman.
2.4.2.4.7 Variable-variable yang telah Dikenal
Pada diskusi tentang tag expressi ditemukan object yang tersembunyi.
Pembahasan ini menggambarkan object tersebut secara detail. Object-object JSP
yang tersembunyi secara otomatis dideklarasikan oleh container JSP dan selalu
tersedia dalam penggunaan expressi dan scriptlets (tetapi tidak didalam deklarasi).
Berikut ini merupakan daftar object-object yang tersembunyi (implicit objects) :
request:
Kejadian
dari
object
javax.servlet.http.HttpServletRequest
Object
PageContext
dihubungkan
dengan
halaman
sebelumnya.
out: Referensi object javax.servlet.jsp.JspWriter dapat digunakan untuk
menulis action dan data template dalam page JSP, sama dengan hal tersebut dari
object PrintWriter yang digunakan pada saat mendiskusikan servlet. Variable
tersembunyi (implicit variable) out secara otomatis diinialisasi dengan
menggunakan method pada object PageContext.
86
Object
ServletContext
is
an
instance
of
the
Whitespaces
setelah
<%@
dan
sebelum
%>
merupakan
pilihan/opsional.
Directive tidak menampilkan berbagai hasil output ketika ada permintaan
pada page tetapi dapat merubah cara JSP engina dalam memproses page tersebut.
Sebagai contohnya, dalam pembuatan session data yang tidak tersedia pada page
87
dengan mengeset directive page (session) bernilai false. JSP directive akan
memberikan informasi yang spesial tentang page kepada JSP Engine. Directive
dapat menjadi satu dalam page, yaitu include atau taglib. Masing-masing
directives tersebut memiliki setting atributnya sendiri-sendiri.
2.4.2.4.8.1 Page Directive
Page directive menggambarkan proses informasi untuk sebuah page. Hal
tersebut akan memperbolehkan import class, customize superclass servlet.
Directive memiliki pilihan atribut seperti dibawah ini yang menyediakan JSP
Engine dengan proses informasi yang spesial. Ingatlah bahwa dibawah ini adalah
daftar atribut yang bersifat cesa-sensitive:
Tabel 2.3 Daftar Atribut Pada Directive
88
89
90
Satu dari dua elemen JSP yang akan dipelajari dalam bab ini adalah JSP
Expression Language(EL).Expression Language ini diperkenalkan dengan
spesifikasi JSP 2.0 dan disediakan sebuah syntax sederhana dan jelas untuk
menulis expression yang melakukan logika sederhana atau mengakses lingkup
nilai. Kegunaan JSP EL lebih baik dijelaskan dalam sebuah contoh sederhana.
Menggunakan method yang dibahas dalam bab sebelumnya, jika ingin mengakses
property dari sebuah JavaBean, atau juga bisa menggunakan :
<% String name = user.getLastName(); %> atau
<jsp:getProperty name="user" property="lastname"/>
Menggunakan method yang pertama, pengembang diarahkan ke konsep
pemrograman Java : untuk mengakses properti dari sebuah bean, pengembang
diharapkan telah membuat method getter dari sebuah bean. Pengembang juga
perlu memahami property dari tipe Java. Method yang kedua lebih cenderung ke
pemrograman yang netral : akses ke property sebuah bean dikerjakan oleh tag-tag
yang secara konsep hampir sama dengan tag-tag HTML. Bagaimanapun juga,
method mengakses property bean ini panjang dan susah. Dan juga, method ini
hanya dapat digunakan untuk output langsung kepada user.
Menggunakan EL, property bean dapat diakses sebagai :
${user.lastName}
Konsep diatas adalah pemrograman netral : pengembang tidak harus
mengetahui jenis Java atau syntax. Konsep tersebut juga pendek dan langsung ke
titik permasalahan : konsep hanya berisi variabel yang terjangkau dan property
untuk diakses, dengan penambahan sedikit character. Dan juga, dapat digunakan
91
92
93
94
digunakan huruf kecil atau atau huruf kapital (huruf besar) secara konsisten, untuk
menghindari masalah case sensitive.
Ada banyak hal yang dapat menimbulakan kesalahan-kesalahan tak
terduga. Kesalahan-kesalahan ini dapat mempengaruhi kompabilitas keseluruhan
data. Misalnya pada saat melakukan migrasi database dari MySQL ke software
database lain atau dari suatu tipe database ke tipe database lain, selain itu
keselahan pada penggunaan tanda |, /, maupun tanda titik (.) juga sering terjadi.
2.4.2.4.11.2 Perintah perintah dalam Lingkungan Database
Select
95
96
yang akan ditambahkan kedalam tabel. Jika seperti ini dimana hanya tabel yang
ditetapkan, sql akan memasukkan nilai yang diberikan pada pernyataan dengan
field didalam database berdasarkan nilai yang dipesan dan field yang ditentukan
pada tabel database.
Jika, sebagai contoh, mempunyai tabel dengan nama users, dengan field
userid, nama, alamat(pada pemesanan), pada baris berikut ini akan menambahkan
data yang baru ke tabel:
insert into users values(199700651, 'jeni master', 'up ayala technopark');
Penting untuk diingat bahwa semua panggilan untuk insert harus diikuti aturan
integritas pada tabel data. Oleh karena itu, jika sebuah field pada database
ditetapkan non-null, berbagai usaha untuk memasukkan ni;ai-null kedalam field
tersebut akan menyebabkan error pada database.
Update
Pernyataan update akan mengupdate baris yang dipilih pada tabel, sebagai
lawan dari pernyataan insert yang menambahkan baris data baru. Format dasar
pernyataan update adalah:
update nama-tabel set nilai-kolom where kondisi
Dimana nama-tabel adalah nama dari tabel yang berisi baris yang akan diupdate,
dan nilai-kolom adalah daftar data dari nama kolom dan nilainya. Secara bebas,
daftar data dari kondisi dapat ditambahkan secara spesifik dengan baris yang akan
dimodofikasi pada tabel. Jika tidak diber kondisi, maka update data akan
dilakukan pada tiap-tiap baris didalam tabel yang ditentukan.
97
98
99
Saat ini merupakan cara yang valid dari meretrieve sebuah Connection
object, method ini menganjurkan para pengembang untuk tetap mengikuti method
tersebut dari seperti detail sebagai driver class name, URL dianjurkan untuk akses
ke database, sedangkan username dan password tepat untuk penggunaan database.
Detail-detail ini paling banyak dipakai pada berbagai aplikasi. Dan juga, mengatur
URL dan driver name pada kode membuatnya lebih sulit untuk aplikasi dalam
menukar implementasi database, jika hal itu diperlukan.
2.4.2.4.11.5 Javax.sql. Data Source
DataSource merupakan interface yang digambarkan pada JDBC API sejak
versi 2 dari spesifikasinya. Sekarang saatnya direkomendasikan untuk para
pengembang dalam mendapatkan Connection object. Retrieval dari Connection
object
terjadi
secara
langsung
cara
sederhana
memanggil
method
100
101
Klik next, kemudian jika diminta untuk nama class prompted, masukkan:
org.postgresql.jdbc3.Jdbc3PoolingDataSource. klik next. Pada layar berikutnya,
scroll kebawah sampai terlihat properti yang akan diasosiasikan dengan
connection pool ini:
102
PortNumber
DatabaseName
User
Setelah menyediakan nilai dari semua parameter diatas, klik Finish. P
2.4.2.4.11.8 Mendaftarkan Data Source
Untuk mendaftarkan datasource, klik pada link JDBC yang ditemukan pda
pane sebelah kiri, lalu klik pada JDBC Resources. Pada layar berikutnya klik pada
New... Field harus diisi dengan ketentuan sebagai berikut :
JNDI Name masukkan logical name yang mana aplikasi akan me-retrieve
DataSource. Direkomendasikan bahwa namanya memiliki jdbc/ sebagai prefixnya, agar lebih mudah bagi server administrators pada masa selanjutnya dalam
mengidentifikasi element inisebagai JDBC resource.
Pool name pilih nama dari connection pool yang telah dibuat terlebih dahulu.
Description Masukkan text yang menjelaskan tentang DataSource (bebas) klik
pada OK untuk mengakhiri.
2.4.2.4.11.9 Retrieving Data Source
Retrieving merupakan sebuah instance DataSource dari sebuah aplikasi
server yang sederhana dan dapat dipenuhi hanya dengan menggunakan beberapa
baris dari kode menggunakan bagian dari JNDI API. Java Naming Directory
Interface (JNDI) adalah standard Java API untuk mengakses directories. Sebuah
direktori merupakan lokasi pusat dimana aplikasi Java dapat retrieve external
resources menggunakan logical name.
103
104
Berikut adalah bagian dari contoh kode outlining prosedur, bersama dengan
beberapa error yang sangat dasar dalam menangani prosedur.
2.4.3
Dream Weafer
Dreamweaver merupakan salah satu software pembuat website yang
105
Ada dua pilihan model layout kerja, yaitu model dreamweaver mx, atau model
dreamweaver 4. Pada model dreamweaver 4, setiap jendela kerja berdiri sendirisendiri. Dalam tutorial ini digunakan layout kerja standart dreamweaver mx
karena
model
layout
kerja
ini
dirasa
paling
optimal.
Checkbox
106
Gambar 2.29 Document toolbar. Bisa digunakan untuk mengatur tampilan kerja. Dalam tampilan
script saja, tampilan script dan desain, ataukan hanya desain saja.
107
Document toolbar
Insert bar
menus
panels
Property inspector
Design & code view
Gambar 2.30 Bagian-bagian Utama Tempat Kerja Dreamweaver
Design view bekerja layaknya kanvas bagi pelukis. Bagian ini merupakan tempat bekerja
dalam membentuk sebuah halaman situs. Disini, dengan menggunakan document toolbar
bisa menampilkan code saja, desain saja atau kedua-duanya.
Insert bar dapat digunakan untuk memasukkan berbagai berbagai elemenelemen pembentuk halaman web, seperti gambar, script php, simbol-simbol,
108
109
110
bagi
target
audience.
Untuk
mempermudah,
Model ini biasanya dipakai untuk situs-situs training online atau buku
multimedia. Dengan model seperti ini dapat dikontrol langkah-langkah
yang harus dilalui audience.
2. model Hirarki
111
112
113
2.5.2
Konsep DSS
Masalah Terstruktur, merupakan suatu masalah yang memiliki struktur
masalah pada 3 tahap pertama, yaitu intelijen, rancangan dan pilihan.
114
Tujuan-tujuan tsb mengacu pada tiga prinsip dasar dari system pendukung
keputusan, yaitu :
1. Struktur masalah: untuk masalah terstruktur, penyelesaian dapat
dilakukan dengan menggunakan rumus2 yang sesuai, sedangkan untuk
masalah tak terstruktur tidak dapat dikomputerisasi. Sementara system
pendukung keputusan dikembangkan khususnya untuk masalah yang
semi-terstruktur.
2. Dukungan keputusan: SPK tidak dimaksudkan untuk menggantikan
manajer, karena komputer berada di bagian terstruktur, sementara manajer
berada di bagian tak terstruktur untuk memberi penilaian dan melakukan
115
analisis. Manajer dan komputer bekerja sama sebagai sebuah tim pemecah
masalah semi terstruktur
3. Evektifitas keputusan: tujuan utama dari SPK bukan mempersingkat
waktu pengambilan keputusan, tapi agar keputusan yg dihasilkan dapat
lebih baik.
STRUCTURED
(Computer
solution)
SEMI TERSTRUKTUR
(Computer+Manajer Solution)
UN
STRUCTURED
(Manajer Solution)
2.5.5
116
2.5.6
117
PEMECAH
MASALAH
PERORANGAN
PARA ANGGOTA
KELOMPOK
YANG LAIN
PERANGKAT LUNAK
PENULISAN
LAPORAN
MODEL
MATEMATIKA
PERANGKAT
LUNAK GDSS
D
A
T
A
B
A
S
E
118
terduga dan berbentuk database query oleh pemakai yang menggunakan query
language dari DBMS atau bahasa pemrograman generasi keempat.
2. Model Matematika, menghasilkan informasi sebagai hasil dari simulasi yang
melibatkan satu atau beberapa komponen dari sistem fisik perusahaan. Dapat
ditulis dalam bahasa pemrograman apaun.
3. Perangkat Lunak GDSS, memungkinkan beberapa pemecah masalah, bekerja
sama sebagai satu kelompok, mencapai solusi. Mungkin pemecah masalah itu
mewakili satu komite atau tim proyek.
2.5.8
Konsep GDSS
Sistem Pendukung Keputusan Berkelompok (Group Decision Support
Lingkungan GDSS
Pada tiap keadaan para anggota bertemu pada waktu yang sama atau pada
waktu yang berlainan. Jika anggota bertemu pada waktu yang sama disebut
Synchronus Exchange. Co.: rapat komite. Jika para anggota bertemu pada waktu
yang berlainan disebut Asynchronus Exchange. Co.: komunikasi melalu e-mail.
1. Ruang Keputusan, merupakan pengaturan untuk rapat kelompok kecil secara
tatap muka.
119
120
pendapat mengenai suatu topik, seperti :Sasaran apa yang perlu dimiliki oleh
perusahaan untuk tahun depan?
Program ini menyediakan komunikasi paralel maupun anonimitas.
komunikasi paralel adalah saat semua peserta menulis pendapat pada saat yang
bersamaan. Anonimitas adalah saat tak seorang pun mengetahui siapa yang
menulis pendapat tertentu. Anonimitas memungkinkan setiap peserta menuliskan
apa yang benar-benar dipikirkannya tanpa khawatir diejek oleh anggota kelompok
yang lain. Setelah sekitar setengah jam menuliskan berbagai pendapat mengenai
topik utama, para anggota kelompok mengumpulkan pendapat-pendapat itu
kedalam beberapa kategori dengan menggunakan program yang disebut Idea
Organizer.
Akhirnya para anggota kelompok menggunakan program Vote untuk
memberi peringkat para daftar kategori yang diikhtisarkan oleh Idea Organizer,
menurut kriteria tertentu. Tiap anggota menciptakan daftarnya sendiri dan tidak
dipengaruhi oleh peringkat orang lain. Ikhtisar dan daftar peringkat ini kemudian
ditampilkan pada layar umum untuk memberikan gambaran pada kelompok
mengenai konsensus pada topik pertemuan.
2.5.10 Peran DSS dalam Pemecahan Masalah
DSS dapat memperluas dukungan manajer dalam pemecahan masalah,
karena DSS disesuaikan dengan kebutuhan-kebutuhan khusus manajer. Yang
nantinya mampu memberikan pertimbangan logis, sebagi bentuk dukungan dalam
membantu seorang pimpinan (pengabil keputusan) untuk menentukan keputusan
yang akan diambil.
121
2.6
Flowchart
Flowchart adalah suatu diagram alur yang menggambarkan logika atau
urut-urutan instruksi program dari suatu permasalahan. Pada diagram alur, dapat
dilihat secara jelas arus pengendalian algoritma, yakni bagaimana rangkaian
pelaksanaan kegiatan program tersebut. Suatu diagram alur akan memberi
gambaran dua dimensi berupa symbol-simbol yang masing-masing symbol
tersebut telah ditetapkan lebih dahulu fungsi dan artinya.
Berikut ini seperangkat symbol diagram alur beserta fungsi dan
manfaatnya yang digunakan dalam pembautan langkah algoritma pemrograman,
yaitu:
Process/Proses, satu atau beberapa himpunan penugasan yang
akan dilaksanakan secara berurutan
Input, data yang akan dibaca dan dimasukkan ke dalam memori
computer dari suatu alat input atau data dan harus melewati
memori untuk dikeluarkan dari alat-alat output
Terminal, berfungsi sebagai awal (berisi Start) dan juga sebagai
akhir (berisi End) dari suatu proses alur
Decission, atau kotak keputusan berfungsi untuk memutuskan arah
atau percabangan yang diambil sesuai dengan kondisi yang
dipenuhi, yakni benar atau salah
Output/Print, berfungsi untuk mencetak (dan/atau menyimpan)
hasil output/keluaran
122
123
BAB III
ANALISIS PERANCANGAN SISTEM
Bab ini akan membahas tentang perancangan aplikasi ujian masuk jalur
reguler (mandiri) akan dibuat, meliputi pembangunan program terstruktur,
overview diagram, SDLC (system development live cycle) dan alogoratma
pemrogramannya, serta bagaimana implementasi perancangan dan analisis
program pada use case, activity diagram, squence diagram, colaboration
diagram, serta class diagram.
3.1 Deskripsi Program
Program yang telah dirancang adalah aplikasi online untuk ujian masuk
jalur reguler (mandiri) di UIN Maliki malang yang disingkat (UMJR), dilihat dari
namanya maka jelas bahwa aplikasi ini nantinya akan digunakan sebagai sarana
dalam menseleks calon mahasiswa baru dari jalur reguler (mandiri), secara online.
Sehingga diharapkan dengan adanya aplikasi ini bisa menghemat waktu, biaya,
serta menghasilkan calon mahasiswa yang berkualitas.
3.2 Desain Sistem
3.2.1 Pembangunan Program Terstruktur
Pembangunan program terstruktur digunakan untuk mempermudah dalam
pemahaman alur pembuatan program dari awal sampai akhir, dalam bentuk
penyajian secara text, hal ini menjadi penting mengingat pembaca nantinya
memiliki kapasitas yang berbeda-beda, ada yang memiliki background teknik
yang cenderung bisa memahami penyajian dalam bentuk diagram. Namun ada
124
pula yang memiliki background non teknik sehingga lebih menyukai penyajian
dalam bentuk teks. Berikut adalah langkah-langkah pembuatan program UMJR
secara terstruktur.
Dalam pembuatan software ini langkah pertama yang dilakukan adalah
pencarian ide yang kemudian diaktualisasikan dalam bentuk proposal, selanjutnya
proposal tersebut diajukan kepada dewan penguji yang nantinya akan
diseminarkan, sebagai syarat diterima atau tidaknya judul yang diajukan.
Langkah kedua adalah mengumpulkan berbagai macam literatur yang
terkait dengan penelitian ini, baik berupa sumber langsung, (konsultasi ke dosen
atau teman), maupun melalui buku-buku dan media internet.
Langkah ketiga adalah pembuatan program terstruktur, yang bertujuan
memudahkan dalam melihat alur pembuatan program secara garis besar. Selain itu
juga memudahkan dalam pemahaman alur program untuk orang yang non-it.
Selanjutnya adalah pembuatan overview diagram, yakni pembuatan alur program
dalam bentuk diagram untuk mengetahui input proses dan output dari pembuatan
program sampai penggunaannya.
Langkah ke-empat adalah pembuatan system development live cycle,
SDLC ini digunakan untuk pembuatan alur program yang didasarkan pada input,
penyampaian, dan kriteria penyelesaian yang nantinya akan memudahkan dalam
pembuatan program.
Langkah kelima adalah pembuatan algoritma pemrograman, untuk
memudahkan programmer dalam membuat program yang telah dirancang, yang
125
dilanjutkan dengan pembuatan source code program yang akan dibuat, diteruskan
dengan uji coba program yang telah dibuat yang terkoneksi dalam satu jaringan.
Langkah ke-enam adalah perancangan desain ruang yang nantinya
digunakan untuk seleksi, ruangan ini di desain dengan koneksi jaringan lokal.
Langkah ke-tujuh adalah melakukan presentasi program kepada dewan
penguji untuk mendapatkan gelar sarjana komputer di jurusan teknik informatika
UIN Maliki Malang, yang dilanjutkan dengan pembuatan laporan hasil penelitian.
3.2.2 Overview Diagram
Tabel 3.1 Overview Diagram
0
INPUT
PROSES
OUTPUT
Programer
mencari
ide
yang
3 Dokumen proposal.
dilanjutkan
3 data
diajukan
ke
jurusan
teknik
3 dok
Programer
Dokumen
literatur
mendukung penelitian.
untuk
data
Programer
Programer
1.
Membuat
source
code
pemrograman
dengan
acuan
dokumen algoritma yang telah
dibuat, kemudian melakuakn
konsultasi
dengan
dosen
pembimbing untuk pemantapan
hasil program yang dibuat.
2. Melakukan pencekan
perbaikan program.
dan
126
3 dok
1 dok
3 dok
pembimbing
untuk perbaikan.
Selanjutnya
memperbaiki
tampilan interface program yang
telah dibuat.
INPUT
Programer
5 Dok
PROSES
OUTPUT
1. Mendistribusikan dokumentasi
file program dan laporan untuktiga
lembaga yakni : Jurusan Teknik
Informatika, fakultas Saintek,
Perpustakaan UIN Maliki Malang,
Organisasi, dan untuk arsip
pribadi.
2. Setelah didistribusikan ke
berbagai lembaga maka akan
dapat kritik dan saran yang akan
diproses untuk kemudian bisa
dilakukan perbaikan dikedian hari.
UIN
Proses
Programer
PENYAMPAIAN
KRITERIA PENYELESAIAN
Programer
2.
Menecek
kembali
alur
algoritma yang telah dibuat untuk
diproses lebih lanjut.
Programer
1.
Membuat
source
code
pemrograman
dengan
acuan
dokumen algoritma yang telah
dibuat, kemudian melakuakn
konsultasi
dengan
dosen
pembimbing untuk pemantapan
hasil program yang dibuat.
2. Melakukan pencekan
perbaikan program.
dan
127
pembimbing
untuk perbaikan.
Selanjutnya dilakukan perbaikan
tampilan interface program yang
telah dibuat.
INPUT
Programer
PENYAMPAIAN
1. Mendistribusikan dokumentasi
file program dan laporan untuktiga
lembaga yakni : Jurusan Teknik
Informatika, fakultas Saintek,
Perpustakaan UIN Maliki Malang,
Organisasi, dan untuk arsip
pribadi.
2. Setelah didistribusikan ke
berbagai lembaga maka akan
didapatkan kritik dan saran yang
akan diproses untuk kemudian
bisa dilakukan perbaikan dikedian
hari.
KRITERIA PENYELESAIAN
2. Mengumpulkan,
menulis
dan
mengarsip kritik, saran dan komentar
dari pembaca, telah dilakukan.
128
129
130
3.3
memuat table-tabel, kemudian dari table-tabel akan terbentuk field dan record
dengan tipe data yang berbeda-beda. Aplikasi ujian online ini menggunakan satu
buah database dengan nama ujian_online dan terdidri dari tuju buah tabel
diantaranya adalah sebagai berikut :
3.3.1
131
NAMA FIELD
nip
TIPE DATA
varchar (12)
NAMA FIELD
nama
alamat
telepon
kelamin
TIPE DATA
varchar (45)
varchar (50)
varchar (12)
varchar (1)
tahun_masuk
varchar (4)
jabatan
varchar (40)
status
varchar (40)
username
password
varchar (20)
varchar (20)
KETERANGAN
Menyimpan
nomor
induk
pegawai sebagai primary key.
KETERANGAN
Menyimpan nama pegawai
Menyimpan alamat pegawai
Menyimpan no telp. pegawai
Jenis kelamin pegawai
Menyimpan Tahun masuk
pgawai
Menyimpan jabatan pegawai
Menyimpan status pegawai
(oprator atau admin)
Menyimpan username pegawai
Menyimpan password pegawai
nip
NAMA FIELD
TIPE DATA
varchar (12)
nama
alamat
sekolah_asal
tahun_lulus
kelamin
telepon
varchar (45)
varchar (45)
varchar (45)
varchar (12)
varchar (1)
varchar (12)
kode_jurusan
varchar (20)
nama_wali
alamat_wali
telepon_wali
username
password
nilai
varchar (45)
varchar (45)
varchar (12)
varchar (20)
varchar (20)
varchar (12)
status
varchar (12)
wawancara
varchar (50)
132
KETERANGAN
Menyimpan
nomor
induk
peserta ujian masuk jalur
reguler (mandiri), sebagai
primary key.
Menyimpan nama peserta
Menyimpan alamat peserta
Asal sekolah peserta
Menyimpan tahun lulus peserta
Jenis kelamin peserta
Menyimpan no telp. peserta
Menyimpan kode jurusan
peserta (primary)
Menyimpan nama wali peserta
Menyimpan alamat wali
Menyimpan nomor telepon wali
Menyimpan username peserta
Menyimpan password peserta
Menyimpan nilai peserta
Menyimpan status peserta
(default : belum ujian)
Menyimpan nilai wawancara
NAMA FIELD
kode
TIPE DATA
varchar (12)
nama
quota
varchar (25)
varchar (10)
KETERANGAN
Menyimpan kode jurusan
sebagai (primary)
Menyimpan nama jurusan
Menyimpan quota jurusan
NAMA FIELD
kode
TIPE DATA
int (12)
kategori
varchar (35)
KETERANGAN
Menyimpan kode kategori
(primary)
Menyimpan nama kategori soal
NAMA FIELD
kode
kode_kategori
TIPE DATA
varchar (12)
varchar (35)
soal
text
kode_jawaban
int (5)
KETERANGAN
Menyimpan kode soal (primary)
Menyimpan kode kategori soal
ujian online
Menyimpan soal ujian
Menyimpan jawaban peserta
ujian
NAMA FIELD
kode
Soal
TIPE DATA
varchar (5)
text
KETERANGAN
Menyimpan kode soal (primary)
Menyimpan soal kepribadian
TIPE DATA
KETERANGAN
Menyimpan kode jawaban
peserta (primary)
Menyimpan jawaban peserta
Menyimpan kode soal ujian
sebagai (foreigen key) antara
tabel soal dengan jawaban.
Menyimpan status peserta
NAMA FIELD
kode_jawaban
int (5)
Jawaban
text
kode_soal
varchar (12)
status
varchar (12)
133
NAMA FIELD
kode_soal
kode_peserta
jawaban
TIPE DATA
varchar (12)
varchar (12)
varchar (150)
KETERANGAN
Menyimpan kode soal (primary)
Menyimpan nilai peserta
Menyimpan status peserta
TIPE DATA
KETERANGAN
Menyimpan kode soal (primary)
Menyimpan nilai peserta
Menyimpan status peserta
NAMA FIELD
kode
nilai
status
int (12)
varchar (12)
varchar (20)
NAMA FIELD
kode
TIPE DATA
varchar (1)
status
varchar (100)
3.3.2
KETERANGAN
Menyimpan
kode
status
(primary)
Menyimpan status kelulusan
peserta
dari perangkat lunak case, yang digunakan untuk memodelkan struktur antara
penyimpanan (dalam data dan hubungan antar data. dengan entity relationship
diagram), sehingga model dapat diuji dengan mengabaikan proses yang dilakukan.
134
(1:1) kode_jawaban
Tabel Peserta
Tabel Jurusan
nip
nama
...
kode_jurusan
...
kode
nama
quota
(1:1) kode_jurusan
(1:1) kode_peserta
(1:M) kode_jawaban
Tabel Soal
kode
kode_kategori
soal
kode_jawaban
kode
kategori
kode_soal
kode_peserta
jawaban
(1:M) kode_kategori
Tabel Jawaban
kode_jawaban
jawaban
kode_soal
status
kode
kode_kategori
soal
kode_jawaban
kode
nilai
status
(1:M) kode_kategori
(1:M) kode_soal
Tabel Status Ujian
kode
status
(1:1) kode_status
(1:1) kode_peserta
3.4
Analisis Sistem
3.4.1
dilihat dari sudut pandang orang yang berada di luar system (aktor). Digunakan
untuk menangkap requirement system dan untuk memahami bagaimana system
seharusnya bekerja (wahyuni, indah hal:5). Sedangkan menurut pemahaman yang
lain, use case adalah diagram yang mengambarkan kemampuan sebuah sistem
yang nantinya akan dijalankan oleh aktor, atau dengan kata lain aktifitas
(pekerjaan) yang nantinya akan dilakukan oleh aktor yang mampu difasilitasi oleh
sistem dan digambarkan dalam bentuk diagram. Berikut ini adalah esain use case
pada perancangan aplikasi UMJR (ujian masuk jalur reguler (mandiri))
135
C a lo n M a h a s is w a
M e n d a p a t K a rt u _ ID
M e n g e d it D a t a
M e n g ik u t i T e s
M e l a k u k a n L o g in
O p ra to r
M e n c e k M a n u a l P e s e rt a T e s
A d m in
SAR
M e n g in p u t D a t a P e n d a ft a r
M e n c e t a k K e t e t a p a n K e lu lu s a n
P e s e rt a T e s
Gambar 3.1.1 memperlihatkan ada empat aktor yang memiliki use case
berbeda beda, namun ada satu use case yang sama yaitu login. Hal ini karena
masing-masing aktor memiliki hak akses pada sistem sendiri-sendiri, pada aktor
calon mahasiswa maka dia berhak untuk mengakses soal, sedangkan pada sar
berhak akses pada form pendaftaran dan operator berhak atas akses pada
pengawasan dan hasil tes, tentu berbeda dengan admin yang bisa mengakses
semua data. Penjelasan dari masing-masing use case adalah sebagai berikut.
Pertamakali pekerjaan atau aktifitas (use case) yang dilakukan adalah
mendaftar yang dilakukan oleh calon mahasiswa, pada proses mendaftar yang
menjalankan sistem (aplikasi) adalah sar, maka sar melakukan aktifitas login
terlebih dahulu kemudian akan dilakukan aktifitas kedua yaitu input data
pendaftar sesuai dengan data pada calon mahasiswa. Selanjutnya adalah
136
mencetak_kartu id, pada proses ini ada kata-kata extend, yang berarti bergantung
pada atifitas sebelumnya, atau dengan bahasa lain tidak akan ada aktifitas
mencetak_kartu apabila tidak ada aktifitas mendaftar dari calon mahasiswa.
Aktifitas selanjutnya adalah pengecekan manual peserta, pada aktifitas ini
yang berperan adalah operator, nantinya operator adalah karyawan yang ditunjuk
oleh instansi untuk mengawasi jalannya ujian. Dalam hal ini tidak memerlukan
orang banyak cukup satu orang per satu lokasi ujian, karena dalam fungsi
pengawan kecurangan peserta sudah mampu difasilitasi oleh aplikasi UMJR
melalui fungsi random soal, inilah letak efesiensi penggunakan model ujian online
bila dibandingkan secara manual. Namun bukan berarti tanpa celah, kenapa disini
ada aktifitas pengecekan manual ? tidak lain tidak bukan karena sistem belum
mampu mencek keaslian peserta ujian, maka masih dibutuhkan pencekan secara
manual untuk memastikan bahwa peserta benar-benar asli (bukan joki).
Idealnya memang use case adalah aktifitas yang hanya mampu difasilitasi
oleh sistem, namun ada referensi yang membolehkan penulisan use case
walaupun tidak masuk pada sistem yang dibuat, ini semata-mata untuk
memperjelas runtutan proses yang dijalankan mulai dari awal sampai akhir, untuk
lebih mempermudah pemahaman pembaca.
Aktifitas berikutnya adalah calon mahasiswa melakukan login untuk
mengikuti tes, sistem akan menilai berdarkan kebenaran jawaban dan kecepatan
dalam menjawab, kemudian dilakukan fungsi sorting untuk menentukan peringkat
yang dilakukan oleh operator. Selanjutnya operator melakukan aktifitas mencetak
ketetapan calon mahasiswa yang diterima tentu berdasarkan quota yang ditetapkan
137
In p u t S t a t u s
L o g in
Y es
If < = 3 x
In p u t U s e r _ N a m e
& P a s s w o rd
V a li d a s i
P engguna
Hubungi
A d m in
No
Y es
F o rm
P engguna
Pada gambar 3.3.2 memperlihatkan aktifitas login, yang dimulai dari memilih
status (Admin, Calon_Mahasiswa, dan Operator) kemudian memasukkan user
name dan password sampai sistem bisa memunculkan form pengguna.
138
M em bayar
A d m in is t ra s i
M e n g is i F o r m
P e n d a ft a r a n
M e le n g k a p i B e rk a s
P e rs y a ra ta n
ve ri fi k a s i
p e rs y a r a t a n
T id a k
Y a
M e n e rim a
K a r t u _ ID
139
M e m a n g g il C a lo n
M a b a S e s u a i N o U ru t
C a lo n M a b a M a s u k
R uang Tes 1 P er 1
C e k K a r t u ID +
F o t o P e s e rt a
( va lid a s i )
If D a t a ID = D a t a
A s li
T id a k
M e la p o r K e
BAK
Ya
M e n g ik u t i T e s
140
L o g in
Ok
V a li d a s i
P engguna
If < = 3 x
No
Ok
No
M e n e r im a S o a l
M enghubungi
P e tug a s
In p u t J a w a b a n
M e n e r im a
H a s il t e s
L o g in
V a lid a s i
P engguna No
Ok
if< = 3 x
No
Ok
S o r t in g N il a i
P e s e rt a
M enghubungi
A d m in
D i a m b il T e rb a i k S e s u a i
Q u o t a P e r J u ru s a n
C e t a k D a ft a r M a h a s is w a
B a r u p e r J u ru s a n
141
Selanjutnya adalah aktifitas admin dalam mengubah data, pada aktifitas ini
admin berfungsi sebagai kontrol untuk antisipasi permasalahan yang nantinya
dihawatirkan muncul misalnya, terkait validasi operator, maupun peserta. Untuk
lebih jelasnya perhatikan gambar 3.9 sebagai berikut.
L o g in
No
Y es
F o rm A d m in
E d it D a ta
Tentu tidak semua use case digambarkan aktifitasnya hal ini karena mengingat
fungsi diagram aktifitas hanya sebagai pelengkap untuk mempermudah
pemahaman sistem, dan tidak berpengaruh terhadap hasil generate code nantinya.
3.4.3 Squence Diagram
Sequence Diagram menjelaskan interaksi objek yang disusun dalam satu
urutan waktu. Sequence diagram memperlihatkan tahap demi tahap apa yang
seharusnya terjadi untuk menghasilkan sesuatu di dalam use case. Tipe diagram
ini menekankan pada urutan kejadian atau dengan kata lain menggambarkan alur
142
dari sebuah kejadian (aktifitas). Dengan kata lain dengan melihat squene diagram
pembaca akan memahami alur bekerjanya program, mulai dari aktifitas yang
pertama hingga yang terakhir secara sistematis.
Pertama adalah alur melakukan login, karena semua aktor didesain untuk
melakukan login maka dalam hal ini semua aktor terlibat dalam proses melakukan
login, yang dimulai oleh admin, sar, calon mahasiswa dan oprator, masing-masing
dari mereka memiliki user name dan password sendiri-sendiri tentunya dengan
hak akses yang berbeda untuk setiap aktor. Untuk lebih jelasnya mari perhatikan
gambar 3.10 berikut ini.
143
: A d m in
: SAR
: C a lo n M a h a s is w a
: O p ra t o r
: L o g in
: A d m in i s t ra t o r
: D B _P egaw ai
: P e n d a ft a ra n
: D B _ P e s e rta
: S oal
: O p e ra t o r
V i e w _ J e n is _ P e n g g u n a ( )
S e le c t _ J e n is _ P e n g g u n a ( )
In p u t _ U s e r _ N a m e A n d P a s s w o rd ( )
G e t _ D a t a _ P e g a w a i( )
V a lid a s i_ D a t a _ P e n g g u n a ( )
V ie w _ D a t a _ P e n g g u n a ( )
V ie w _ F o rm _ P e n g g u n a ( )
V i e w _ J e n is _ P e n g g u n a ( )
S e le c t _ J e n is _ P e n g g u n a ( )
In p u t _ U s e r _ N a m e A n d P a s s w o rd ( )
G e t _ D a t a _ P e g a w a i( )
V a lid a s i _ D a t a _ P e n g g u n a ( )
V ie w _ D a t a _ P e n g g u n a ( )
V ie w _ F o r m _ P e n g g u n a ( )
V i e w _ J e n is _ P e n g g u n a ( )
S e le c t _ J e n is _ P e n g g u n a ( )
In p u t _ U s e r _ N a m e A n d P a s s w o rd ( )
G e t _ D a t a _ P e s e rt a ( )
V a li d a s i _ D a t a _ P e n g g u n a ( )
V ie w _ D a t a _ P e n g g u n a ( )
V ie w _ F o r m _ P e n g g u n a ( )
V i e w _ J e n is _ P e n g g u n a ( )
S e le c t _ J e n is _ P e n g g u n a ( )
In p u t _ U s e r _ N a m e A n d P a s s w o rd ( )
G e t _ D a t a _ P e g a w a i( )
V a li d a s i _ D a t a _ P e n g g u n a ( )
V ie w _ D a t a _ P e n g g u n a ( )
V ie w _ F o r m _ P e n g g u n a ( )
144
: SAR
: D B _P egaw ai
: L o g in
: P e n d a ft a ra n
: D B _ P e s e rta
V i e w _ J e n is _ P e n g g u n a ( )
S e le c t _ J e n is _ P e n g g u n a ( )
In p u t _ U s e r _ N a m e A n d P a s s w o rd ( )
G e t _ D a t a _ P e g a w a i( )
V a li d a s i _ D a t a _ P e n g g u n a ( )
V ie w _ D a t a _ P e n g g u n a ( )
V ie w _ F o rm _ P e n g g u n a ( )
S e le c t _ J u r u s a n ( )
S e le c t _ Q u o t a P e n d a ft a n ( )
In p u t _ B io d a t a ( )
C e k _ K e le n g k a p a n ( )
S a ve _ D a t a P e n d a ft a r ( )
S a ve _ D a t a ( )
P r in t _ K a r t u ID ( )
Alur yang ke tiga adalah mengikuti tes, yang dilakukan oleh calon
mahasiswa dengan melibatkan tiga form, antara lain : Login, soal, dan hasil tes
(menampilkan benar = ; dan salah = ;). Dan tiga data base yaitu, peserta, jawaban
dan nilai. Alur yang dilakukan oleh mahasiswa dalam kegiatan ini adalah,
melakukan login, kemudian mengerjakan soal (input jawaban), dan terakhir
melihat hasil tes yang telah dilakukan. Untuk lebih memahami tentang alur
mengikuti tes, perhatikan gambar 3.12 berikut ini.
145
S : C a lo n
M a h a s is w a
: L o g in
: D B _ P e s e rt a
: S oal
: D B _ Ja w ab a n
: H a s i lT e s
: D B _ N il a i
V i e w _ J e n is _ P e n g g u n a ( )
S e le c t _ J e n i s _ P e n g g u n a ( )
In p u t _ U s e r _ N a m e A n d P a s s w o rd ( )
G e t _ D a t a _ P e s e rt a ( )
V a lid a s i_ D a t a _ P e n g g u n a ( )
V ie w _ D a t a _ P e n g g u n a ( )
V ie w _ F o rm _ P e n g g u n a ( )
V ie w _ S o a l( )
In p u t _ J a w a b a n ( )
S a ve _ J a w a b a n ( )
E d it _ J a w a b a n ( )
V ie w _ J a w a b a n ( )
S a ve _ J a w a b a n ( )
U p d a te _ Ja w a b a n ( )
K o re k s i( )
S a ve _ N ila i ( )
V ie w _ N ila i_ P e s e r t a ( )
G e t _ n i la i( )
V i e w _ N ila i _ P e s e r t a ( )
C e t a k _ U r u t a n R a n g k in g S e m e n t a ra ( )
S o r t in g N i la i( )
Selanjutnya adalah alur untuk penetapan hasil ujian, pada aktifitas ini yang
berperan adalah operator, dengan membuka form hasil tes kemudian menunggu
hingga semua peserta menselesaikan semua soal, sehingga semua peserta telah
memiliki nilai pada data base nilai, berikutnya sistem melakukan sorting untuk
menentukan rangking, yang kemudian akan ditetapkan nama-nama peserta yang
146
berhasil lolos seleksi tentusaja juga mengacu pada kebutuhan kuota pada lembaga,
untuk lebih jelasnya mari perhatikan gambar 3.13 berikut ini.
: O p ra t o r
: L o g in
: DB _P egawai
: H a s i lT e s
: D B _ P e s e rt a
: D B _ N il a i
S e le c t _ J e n i s _ P e n g g u n a ( )
In p u t _ U s e r _ N a m e A n d P a s s w o r d ( )
G e t _ D a t a _ P e g a w a i( )
V a li d a s i_ D a t a _ P e n g g u n a ( )
V ie w _ D a ta _ P e n g g u n a ( )
V ie w _ F o rm _ P e n g g u n a ( )
V i e w _ A llK o d e P e s e r t a ( )
G e t _ D a t a _ P e s e rt a ( )
V i e w _ N ila i _ P e s e r t a ( )
G e t _ n i la i ( )
S o r t in g N i la i( )
K e p u t u s a n K e lu l u s a n ( )
C e t a k _ H a s i l_ K e p u t u s a n ( )
Terakhir adalah alur tambahan yakni alur pada aktifitas edit data, yang
dilakukan oleh admin, untuk mengedit data apabila terdapat kesalahan pada sistem
yang diluar prosedur, mungkin karena aktifitas yang padat atau karena hal yang
lain, maka perlu adanya antisipasi salah satunya dengan memberika ruang akses
pada admin untuk mengedit data, yang bisa diedit oleh admin nantinya adalah
semua data selain nilai dari jawaban peserta. Tentusaja yang pertamakali
dilakukan adalah login yang kemudian dilajutkan dengan aktifitas edit data, yang
akan disajikan oleh sistem melalui form administrator, untuk lebih jelasnya
perhatikan pada gambar 3.14.
147
: A d m in i s t ra t o r
: O p e ra t o r
: P e n d a ft a ra n
V i e w A llD a t a O p ra t o r( )
E d it O p r a t o r( )
S a ve _ D a t a ( )
V i e w _ A llD a t a _ P e n d a ft a r ( )
E d it _ D a t a P e n d a ft a r( )
S a ve _ D a t a P e n d a ft a r ( )
A d d _ N e w P e s e rt a ( )
S a ve _ D a t a P e n d a ft a r ( )
V ie w _ S o a l( )
E d it _ S o a l( )
S a ve _ D a t a ( )
A d d _ N e w P e s e rt a ( )
S a ve _ D a t a P e n d a ft a r ( )
V ie w _ S o a l( )
A c a k _ S o a l( )
S a ve _ D a t a ( )
148
: S oal
Jadi nantinya admin akan mengakses form yang lain untuk kebutuhan edit
data (selain nilai). Tentu saja tidak semua aktifitas (use case) digambar alurnya,
hal ini disebabkan karena melihat prioritas yang nantinya akan mampu difasilitasi
oleh sistem untuk bisa dijalankan, seperti missal pada use case
cek peserta
149
mahasiswa tersebut disimpan dalam data base peserta. Perhatikan gambar 3.16
yang memperlihatkan interaksi antar form.
: SAR
: P e n d a ft a ra n
: A d m in
: D B _P egaw ai
: A d m in i s t ra t o r
8 : V ie w _ J e n is _ P e n g g u n a ( )
9 : S e le c t _ J e n is _ P e n g g u n a ( )
1 0 : In p u t _ U s e r _ N a m e A n d P a s s w o r d ( )
1 3 : V ie w _ D a t a _ P e n g g u n a ( )
1 4 : V ie w _ F o r m _ P e n g g u n a ( )
6 : V ie w _ D a t a _ P e n g g u n a ( )
7 : V ie w _ F o r m _ P e n g g u n a ( )
4 : G e t_ D a ta _ P e g a w a i( )
1 1 : G e t_ D a t a _ P e g a w a i( )
2 5 : G e t_ D a t a _ P e g a w a i( )
1 : V ie w _ J e n is _ P e n g g u n a ( )
2 : S e le c t _ J e n is _ P e n g g u n a ( )
3 : In p u t _ U s e r _ N a m e A n d P a s s w o rd ( )
5 : V a li d a s i _ D a t a _ P e n g g u n a ( )
1 2 : V a li d a s i _ D a t a _ P e n g g u n a ( )
1 9 : V a li d a s i _ D a t a _ P e n g g u n a ( )
2 6 : V a li d a s i _ D a t a _ P e n g g u n a ( )
1 5 : V ie w _ J e n is _ P e n g g u n a ( )
1 6 : S e le c t _ J e n is _ P e n g g u n a ( )
1 7 : In p u t _ U s e r _ N a m e A n d P a s s w o r d ( )
: C a lo n
M a h a s is w a
2 2 : V ie w _ J e n is _ P e n g g u n a ( )
2 3 : S e le c t _ J e n is _ P e n g g u n a ( )
2 4 : In p u t _ U s e r _ N a m e A n d P a s s w o r d ( )
: L o g in
1 8 : G e t_ D a t a _ P e s e rta ( )
2 7 : V ie w _ D a t a _ P e n g g u n a ( )
2 8 : V ie w _ F o r m _ P e n g g u n a ( )
: O p ra t o r
2 0 : V ie w _ D a t a _ P e n g g u n a ( )
2 1 : V ie w _ F o r m _ P e n g g u n a ( )
: D B _ P e s e rta
: S oal
: O p e ra t o r
: SAR
8 : S e le c t _ J u r u s a n ( )
9 : S e le c t _ Q u o t a P e n d a ft a n ( )
1 0 : In p u t _ B i o d a t a ( )
1 2 : S a ve _ D a t a P e n d a ft a r ( )
1 4 : P ri n t _ K a r t u ID ( )
4 : G e t _ D a t a _ P e g a w a i( )
: L o g in
6 : V ie w _ D a t a _ P e n g g u n a ( )
7 : V ie w _ F o r m _ P e n g g u n a ( )
1 1 : C e k _ K e le n g k a p a n ( )
1 3 : S a ve _ D a t a ( )
: D B _ P e s e rta
: P e n d a ft a ra n
150
: D B _P egaw ai
6 : V ie w _ D a t a _ P e n g g u n a ( )
7 : V ie w _ F o r m _ P e n g g u n a ( )
: S oal
4 : G e t _ D a ta _ P e s e rta ( )
: L o g in
: D B _ P e s e rta
1 : V ie w _ J e n is _ P e n g g u n a ( )
2 : S e le c t _ J e n is _ P e n g g u n a ( )
3 : In p u t _ U s e r _ N a m e A n d P a s s w o r d ( )
: D B _ N il a i
8 : V ie w _ S o a l ( )
9 : In p u t _ J a w a b a n ( )
1 1 : E d it _ J a w a b a n ( )
1 3 : S a ve _ J a w a b a n ( )
1 6 : S a ve _ N i la i( )
1 12 0: :V Sieawve_ _J Ja awwa ab ba an n( () )
1 4 : U p d a te _ Ja w a b a n ( )
1 8 : G e t _ n i la i( )
1 9 : V ie w _ N i la i_ P e s e rt a ( )
S : C a lo n
M a h a s is w a
1 7 : V ie w _ N i la i_ P e s e rt a ( )
2 0 : C e t a k _ U r u t a n R a n g k i n g S e m e n t a ra ( )
2 1 : S o rt in g N il a i( )
1 5 : K o re k s i( )
: D B _ Ja w a b a n
: H a s i lT e s
151
form hasil tes, kemudian setelah semua peserta memperoleh nilai sistem akan
mensorting untuk menentukan peringkat, selanjutnya diambil yang terbaik sesuai
quota, selajutnya hasil penetapan masiswa baru siap di cetak dan diedarkan. Untuk
lebih jelasnya perhatikan gambar 3.18 berikut ini.
1 1 : S o rt in g N i la i( )
1 0 : G e t _ n i la i( )
: O p ra t o r
7 : V ie w _ A llK o d e P e s e rt a ( )
9 : V ie w _ N ila i _ P e s e r t a ( )
1 2 : K e p u t u s a n K e lu lu s a n ( )
1 3 : C e t a k _ H a s il _ K e p u t u s a n ( )
1 : S e le c t _ J e n is _ P e n g g u n a ( )
2 : In p u t _ U s e r _ N a m e A n d P a s s w o rd ( )
4 : V a li d a s i _ D a t a _ P e n g g u n a ( )
5 : V ie w _ D a t a _ P e n g g u n a ( )
6 : V ie w _ F o r m _ P e n g g u n a ( )
: H a s i lT e s
: D B _ N il a i
8 : G e t _ D a t a _ P e s e rt a ( )
3 : G e t _ D a t a _ P e g a w a i( )
: L o g in
: DB _P egawai
: D B _ P e s e rt a
152
1 : V ie w A llD a t a O p ra t o r ( )
2 : E d it O p r a t o r ( )
3 : S a ve _ D a t a ( )
: A d m in i s t r a t o r
: O p e ra t o r
4 : V i e w _ A l l D a t a _ P e n d a ft a r ( )
9 : V ie w _ S o a l( )
5 : E d it _ D a t a P e n d a ft a r ( )
1 0 : E d it _ S o a l( )
6 : S a v e _ D a t a P e n d a ft a r ( )
1 1 : S a ve _ D a t a ( )
7 : A d d _ N e w P e s e rta ( )
8 : S a v e _ D a t a P e n d a ft a r ( )
1 4 : V ie w _ S o a l ( )
1 5 : A c a k _ S o a l( )
1 6 : S a ve _ D a t a ( )
1 2 : A d d _ N e w P e s e rt a ( )
1 3 : S a v e _ D a t a P e n d a ft a r ( )
: S oal
: P e n d a ft a r a n
153
ja va
sun
S e le c t _ J u r u s a n ( )
S e le c t _ Q u o t a P e n d a ft a n ( )
In p u t _ B io d a t a ( )
C e k _ K e le n g k a p a n ( )
S a ve _ D a t a P e n d a ft a r ()
E d it _ D a t a P e n d a ft a r( )
G e t _ D a t a P e n d a ft a r( )
V ie w _ A llD a t a _ P e n d a ft a r ()
A d d _ N e w P e s e rt a ()
P r in t _ K a r t u ID ()
Tabel
Com boB ox
Label
T e x t F ie ld
T e x t F ie ld _ P a s s w o rd
B u t to n
G e t _ D a t a _ P e s e rt a ()
V ie w _ A ll_ N ila iP e s e r t a ( )
S a ve _ D a t a ()
V ie w _ U s e r n a m e A n d P a s s w o rd ( )
V ie w A llD a t a O p r a t o r( )
E d it O p r a t o r( )
DB _P egawai
Nam a
A la m a t
JK
N o _ T e lp
P i lih a n _ J u ru s a n
S ta tu s _ P e n g g u n a
U s e rn a m e
P a s s w o rd
K o d e _ P e s e rt a
N a m a _ W a li
A l a m a t _ W a li
N o _ T e lp _ W a l i
N i la i
H a s ilT e s
E d it _ A ll D a t a ( )
S a ve _ A llD a t a ()
D B _ P e s e rta
DB _S oal
N o m o r_ S o a l
J e n is _ S o a l
K ode_S oal
K u n c i_ J a w a b a n
V i e w _ A llK o d e P e s e r t a ()
V i e w _ N ila i_ P e s e r t a ( )
S o r t in g N i la i( )
K e p u t u s a n K e lu l u s a n ( )
C e t a k _ H a s i l_ K e p u t u s a n ()
K o r e k s i()
C e t a k _ U r u t a n R a n g k in g S e m e n t a ra ( )
D B _Jaw aban
N o_Jaw aban
J a w a b a n _ P e s e rta
K o d e _ P e s e rt a
S a ve _ J a w a b a n ()
U p d a t e _ J a w a b a n ()
G e t _ D a t a _ P e g a w a i( )
G e t _ D a t a _ P e s e rt a ()
S a ve _ D a t a ()
154
D B _ N i la i
N a m a _ P e s e rta
K o d e _ P e s e rt a
N ila i_ P e s e rt a
K e p u t u s a n _ K e lu lu s a n
S a ve _ N ila i ()
G e t _ n ila i ()
BAB IV
HASIL DAN PEMBAHASAN
Bab ini akan membahas tentang hasil program yang telah dibangun dengan
lingkungan uji coba yang telah di tentukan, hasil program berupa aplikasi ujian
online, yang akan dijalankan pada server local menggunakan apache tomcat
kemudian akan di exekusi dengan program browser (internet explorer, mozila,
opera). Selanjutnya akan dibahas fitur pada program serta cara pembuatannya.
4.1
perangkat lunak dan perangkat keras yang digunakan. Spesifikasi perangkat keras
dan perangkat lunak yang digunakan dalam uji coba antara lain adalah :
Tabel 4.1 Lingkungan Uji Coba
Perangkat
Keras
Prosesor
Memori
Piranti Masukan
Sistem Operasi
Perangkat
Lunak
Pada tabel 4.1 dapat dilihat bahwa program dibuat menggunakan bahasa
pemrograman java dengan dreamweafer dan netbeans sebagai editornya,
kemudian software yang telah dibuat dijalankan pada server local menggunakan
apache tomcat pada program browser (Internet Explorer).
4.2
Implementasi Program
155
Proses implementasi program yang akan dibahas sub bab ini dibagi dalam
bebarapa tahapan diantaranya, yang pertama adalah halaman utama, kemudian
login, dministrator, oprator (karyawan), dan calon mahasiswa (peserta ujian).
4.2.1 Generate Code
Generate code adalah proses penterjemahan dari suatu perancangan sistem
kedalam bentuk bahasa pemrogrman tertentu, dalam hal ini rancangan yang telah
didesain akan di generate (aplikasi ujian online) kedalam bahasa pemrograman
java
karena
dalam pembuatan
aplikasinya
nanti menggunakan
bahasa
pemrograman java, yang lebih tepatnya JSP (java server page) yang berjalan pada
server lokal menggunakan tomcat, berikut adalah hasil generate dari masingmasing form.
4.2.1.1 Login.java
//Source file: E:\BAB 3\Login.java
public class Login
{
private int ComboBox_JenisPengguna;
private int Label_Nama;
private int Label_Password;
private int TextField_Nama;
protected int TextField_Password;
private int Button;
public Login()
{
}
/**
@roseuid 4A494893008C
*/
public void View_Jenis_Pengguna()
{
}
//lanjutan
*/
public void Get_Data_Pengguna()
{
}
/**
@roseuid 4A4961A90109
*/
public void View_Data_Pengguna()
{
}
/**
@roseuid 4A4961B9033C
*/
public void View_Form_Pengguna()
{
}
/**
@roseuid 4A494B5A03C8
*/
public void Select_Jenis_Pengguna()
{
}
/**
@roseuid 4A494B7700DA
156
*/
public void Input_User_NameAndPassword()
{
}
/**
@roseuid 4A494B9A007D
*/
public void Validasi_Data_Pengguna()
{
}
/**
@roseuid 4A4952BE02BF
//lanjutan
4.2.1.2 Pendaftaran.java
/**
@roseuid 4A494D9D01C5
*/
public void Edit_DataPendaftar()
{
}
/**
@roseuid 4A494D8F038A
*/
public void Get_DataPendaftar()
{
}
/**
@roseuid 4A4975FD0290
*/
public void View_AllData_Pendaftar()
{
}
/**
@roseuid 4A497B9F0213
*/
public void Add_NewPeserta()
{
}
/**
@roseuid 4A49711C01D4
*/
public void Print_KartuID()
{
}
}
157
4.2.1.3 Soal.java
//Source file: E:\BAB 3\Soal.java
public class Soal
{
private int ComboBox;
private int Label;
private int TextField;
protected int TextField_Password;
private int Tabel;
private int Button;
public Soal()
public void Edit_Jawaban()
{
}
/**
@roseuid 4A49539C03B9
*/
public void Save_Jawaban()
{
}
/**
@roseuid 4A497AEA02FD
*/
public void View_Kode_Peserta()
{
}
/**
@roseuid 4A49532502EE
*/
public void View_Hasil_Tes()
{
}
/**
@roseuid 4A49535B0119
//lanjutan
*/
public void Cetak_Hasil_Tes()
{
}
/**
@roseuid 4A4975B7009C
*/
public void Edit_Soal()
{
}
/**
@roseuid 4A4975C0033C
*/
public void Save_Data()
{
}
/**
@roseuid 4A4982260196
*/
public void View_Jawaban()
{
}
}
4.2.1.4 Operator.java
//Source file: E:\BAB 3\Operator.java
public class Operator
{
private int ComboBox;
private int Label;
private int TextField;
protected int TextField_Password;
private int Button;
private int Tabel;
public Operator()
{
}
//lanjutan
/**
@roseuid 4A49531F01E4
*/
public void Input_Jawaban()
{
}
/**
@roseuid 4A49540000FA
*/
158
/**
@roseuid 4A49553D038A
*/
public void Get_Data_Peserta()
{
}
/**
@roseuid 4A495555029F
*/
public void View_All_NilaiPeserta()
{
}
/**
@roseuid 4A49573B00EA
*/
public void Save_Data()
{
}
//lanjutan
/**
@roseuid 4A4956EA0138
*/
public void View_UsernameAndPassword()
{
}
/**
@roseuid 4A49754D0399
*/
public void ViewAllDataOprator()
{
}
/**
@roseuid 4A497565001F
*/
public void EditOprator()
{
}
}
4.2.1.5 HasilTes.java
//Source file: E:\BAB 3\HasilTes.java
public class HasilTes
{
private int Tabel;
private int ComboBox;
private int Label;
private int TextField;
private int TextField_Password;
private int Button;
public HasilTes()
{
}
/**
@roseuid 4A49777101F4
*/
public void View_AllKodePeserta()
{
}
/**
@roseuid 4A49787B003E
*/
public void View_Nilai_Peserta()
{
}
/**
@roseuid 4A49788E005D
*/
public void SortingNilai() {
//lanjutan
159
/**
@roseuid 4A4978CF00CB
*/
public void KeputusanKelulusan()
{
}
/**
@roseuid 4A4978DC0242
*/
public void Cetak_Hasil_Keputusan()
{
}
/**
@roseuid 4A498309000F
*/
public void Koreksi()
{
}
/**
@roseuid 4A4984DB01D4
*/
public void
Cetak_UrutanRangkingSementara()
{
4.2.1.6 Administrator.java
//Source file: E:\BAB 3\Administrator.java
public class Administrator
{
private int ComboBox;
private int Label;
private int TextField;
protected int TextField_Password;
private int Button;
private int Tabel;
public Administrator()
{
} /** @roseuid 4A4957F802EE*/
4.2.2
Halaman Utama
Halaman utama dari program ujian online terdiri dari tiga menu,
diantaranya : home, profile kampus, dan login. Pada menu home akan dijelaskan
tentang petunjuk pengerjaan ujian, selain itu dipapaparkan juga tentang rule
penilaian pada masing-masing soal, yang mencerminkan objektifitas dalam
pelaksaan ujian ini nantinya. Harapannya para siswa akan mampu menerapkan
setrategi pengerjaan soal yang benar, dengan nilai sebagai konsekuensi atas apa
yang telah dikerjakan.
160
Selanjutnya adalah menu profile kampus, pada halaman ini akan dapat
dilihat sejarah perkembnagan UIN Malang, Mulai dari IAIN yang kemudian
berubah menjadi STAIN, sampai pada akhirnya terbentuklah nama UIN Malang,
dalam hal ini mengambil referensi dari buku pedoman pendidikan yang disusun
oleh Fakultas Sains dan Teknologi UIN Malang tahun 2007. untuk lebih jelasnya
perhatikan gambar 4.2 sebagai berikut.
161
Berikutnya adalah adalah menu login yang akan dibahas pada sub bab 4.2.2.
selanjutnya.
4.2.3
Login
Pada halaman login, semua pengguna akan menginputkan user name dan
password yang akan divalidasi oleh sistem sesuai dengan perancangan pada
sistem, yang nantinya akan ditampilkan menu form pengguna yang berbeda sesuai
dengan status pada pengguna. Jika statusnya admin maka akan ditampilkan form
admin jika statusnya operator maka akan ditampilkan form operator perhatikan
gambar 4.3 sebagai berikut.
162
163
out.println("<meta httpequiv=\"refresh\"content=0;url=index2.jsp?nip="+theResult.getString("nip")+"&nama="+theResult.getStrin
g("nama")+">"); }
else {
out.println("Password dan nama yang anda masukkan salah");
out.println("</br>Klik Login Lagi untuk ulangi kembali : </br><a href=index.jsp?page=login>Login
Lagi</a>");
} } theResult.close(); tatement.close();
%>
4.2.4
Administrator
Sub bab ini akan membahas tentang segala aktifitas admin yang mampu
dikerjakan oleh sistem, admin memiliki hak akses tertinggi yang memungkinkan
melakukan editing pada semua menu selain nilai hasil ujian, tentunya tidak semua
menu dalam admin akan dibahas (hanya beberapa) yang dianggap penting serta
dapat merepresentasikan seluruh kemampuan yang ada pada admin, termasuk
bagaimana cara pembuatannya. Untuk lebih jelasnya perhatikan gambar 4.4
sebagai berikut.
4.2.4.1 Home
Menu home berisi ucapan selamat datang pada pengguna, yang
menampilkan nama pengguna dan gambar animasi. Pada nama pengguna
164
diambilkan dari database pada tabel pengguna yang disesuaikan dengan user
name dan password pada saat melakukan login.
4.2.4.2 Jurusan
Pada menu ini akan ditampilkan kode jurusan, nama jurusan kemudian
quota dari masing-masing jurusan, keunggulan dari aplikasi ini adalah bisa
melakukan editing pada jurusan secara GUI (grafik user interface) sehingga lebih
memudahkan pengguna. Perhatikan gambar 4.5 dan 4.6 sebagai berikut.
Sourcecode dari menu edit jurusan, update, hapus jurusan, dan tambah
jurusan adalah sebagai berikut :
//form_editjurusan.jsp
<%@ include file="koneksiDB.jsp" %>
<html>
<head>
<title>DAFTAR JURUSAN</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
165
Pada intinya adalah menampilkan daftar jurusan yang diambil dari tabel jurusan,
selanjutnya admin akan melakukan perubahan pada data yang kemudian akan di
update kode pemrogramannya adalah sebagai berikut :
//update_jurusan.jsp
<%@ include file="koneksiDB.jsp" %>
<%
String nama=null;
String kode=null;
String quota=null;
nama=request.getParameter("nama");
kode=request.getParameter("kode");
quota=request.getParameter("quota");
if(nama!=null)
{
try
{
String sql="update jurusan set nama='"+nama+"',quota='"+quota+"'where kode='"+kode+"'";
statement.executeUpdate(sql);
if(statement!=null)
{
out.println("<meta http-equiv=\"refresh\"content=0;url=admin.jsp?page=jurusan>");
166
}
}
catch(Exception ee)
{
out.println("Data dengan tersebut sudah ada"+ee);
out.println("</br><TD><a href='admin.jsp?page=editjurusan&kode="+kode+"'>Ulangi</a></TD>");
}
}
else
{
out.println("Data harus anda isi..!");
out.println("</br><TD><a href='admin.jsp?page=editjurusan&kode=kode'>Ulangi</a></TD>");
}
%>
Untuk menghapus jurusan cukup menklik tanda silang pada gambar 4.5,
sedangkan kode programnya adalah sebagai berikut :
//hapus_jurusan.jsp
<%@ include file="koneksiDB.jsp" %>
<%
String kode=null;
kode=request.getParameter("kode");
try
{
String sql="delete from jurusan where kode='"+kode+"'";
statement.executeUpdate(sql);
if(statement!=null)
{
out.println("<meta http-equiv=\"refresh\"content=0;url=admin.jsp?page=jurusan>");
}
}
catch(Exception ee)
{
out.println("Erorr"+ee);
}
%>
Terakhir adalah penambahan jurusan, menu ini dibuat sebagai antisipasi apabila
universitas membuka jurusan baru, kode programnya adalah sebagai berikut :
<%@ include file="koneksiDB.jsp" %>
<%
String kode=request.getParameter("kode");
String nama=request.getParameter("nama");
String quota=request.getParameter("quota");
if(kode!=null&&nama!=null)
{
try
{
String sql="INSERT INTO jurusan(kode,nama,quota)values('"+kode+"','"+nama+"','"+quota+"');";
statement.executeUpdate(sql);
167
if(statement!=null)
{
out.println("<meta http-equiv=\"refresh\"content=0;url=admin.jsp?page=jurusan>");
}
}
catch(Exception ee)
{
out.println("Data dengan tersebut sudah ada"+ee);
out.println("</br><TD><a href=admin.jsp?page=formjurusan>Ulangi</a></TD>");
}
}
else
{
out.println("Semua data harus anda isi..!");
out.println("</br><TD><a href=admin.jsp?page=formjurusan>Ulangi</a></TD>");
}
%>
168
Untuk kode pemrogramannya hanya dicantumkan untuk yang input nilai saja
sebagai contoh, yaitu sebagai berikut :
//input_nilai.jsp
<%
String status=null;
String nilai=null;
nilai=request.getParameter("nilai");
status=request.getParameter("status");
if(nilai!=null&&status!=null)
{
try
{
String sql="INSERT INTO nilai(nilai,status) VALUES('"+nilai+"','"+status+"');";
statement.executeUpdate(sql);
if(statement!=null)
{
out.println("<meta http-equiv=\"refresh\"content=0;url=admin.jsp?page=nilai>");
}} catch(Exception ee)
{
out.println("Data dengan tersebut sudah ada"+ee);
out.println("</br><TD><a href='admin.jsp?page=formnilai'>Ulangi</a></TD>");
}}else {
out.println("Data harus anda isi..!");
out.println("</br><TD><a href='admin.jsp?page=formnilai'>Ulangi</a></TD>");
}
%>
169
170
Kode program pada bahasan ini, memuat tentang perintah catak soal saja, karena
untuk perintah yang lain hampir sama dan telah dibahas pada sub bab soal ujian.
Kode program untuk perintah cetak adalah sebagai berikut :
//cetak_data_soal.jsp
<%@ include file="koneksiDB.jsp" %>
<html><head><title>Untitled Document</title>
</head> <body>
int i=1;
String kosong="kosong";
TheResult2 = statement2.executeQuery("SELECT * FROM kategori_soal order by kode asc");
while (theResult2.next()) {
String kode=theResult2.getString("kode");
String kategori=theResult2.getString("kategori");
%> <tr> <td width="100"><strong>Kategori_Soal </strong></td>
<td width="7"><strong>:</strong></td>
<td width="427"><strong><%= kategori %></strong></td>
171
172
173
174
var a=document.form.jml.value;
var kd_soal="";
var jawaban="";
var vjawaban="";
// mengambil nilai soal
for (i=1;i<a;i++)
{
var vkode=document.getElementById(""+i).value;
kd_soal+="kode_soal"+i+"="+vkode;
if(i<a-1) {
kd_soal+="&";
}
// mengambil nilai jawaban
vjawaban=document.getElementById(""+vkode).value;
jawaban+=vkode+"="+vjawaban;
if(i<a-1)
{
jawaban+="&";
}
}
var nip=document.form.nip.value;
var namax=document.form.namax.value;
var jumlah_soal=document.form.jml.value;
alert('Saudara '+document.form.namax.value +' Waktu anda habis, \n Jawaban anda akan
langsung dikoreksi');
self.location.href = "index2.jsp?page=koreksi_jawaban_kepribadian&nip="+
nip+"&namax="+namax+"&jml="+jumlah_soal+"&"+kd_soal+"&"+jawaban+"";
}
</SCRIPT>
// mengganti waktu
<body onLoad="setTimeout('Move()',5000);"> <% // mengganti waktu %>
<div align="center">
<strong>
Waktu Anda 20 Menit , dari Jam
<SCRIPT LANGUAGE="JavaScript">
var Digital=new Date()
var hours=Digital.getHours()
var minutes=Digital.getMinutes()
var seconds=Digital.getSeconds()
var dn="AM"
if (hours>12) { dn="PM"
hours=hours-12 } if (hours==0) hours=12 if (minutes<=9)
minutes="0"+minutes
var ctime="<b><font face='Verdana' color='#8000FF'>"+hours+":"+minutes+"</font></b>"
document.write(ctime);
</script>
175
Daftar peserta digunakan untuk melihat jumlah peserta, edit peserta yang
dibuat untuk antisipasi jika ada peserta yang mengalami masalah saat login,
kemudian cetak tanda peserta dan tambah peserta baru. Khusus pada menu daftar
peserta pengguna dengan status admin maupun oprator memiliki hak akses yang
sama. Untuk lebih jelasnya perhatikan gambar 4.19 berikut ini :
Khusus pada proses cetak tanda peserta, langsung diadakan penempelan pas photo
secara manual sekaligus dilakukan penandaan (stempel) untuk menghindari
pemalsuan peserta pada saat pelaksanaan ujian nantinya.
176
177
baca tulis Al-Quran=0;. Hal ini dibuat untuk bisa merepresentasikan substansi
dari tes wawancara secara manual.
Nama-nama peserta yang dapat rekomendasi untuk dipertimbangkan,
kemudian dirapatkan oleh panitia penyelenggara ujian, yang selanjutnya akan
diambil keputusan, apakah dipertahankan atau di eliminasi yang dapat dilakukan
melaui menu ini oleh admin maupun oprator.
178
penilaian sampai pada proses cetak hasil penilaian setelah seluruh peserta
melakukan ujian.
//koreksi_jawaban.jsp
<%@ include file="admin/koneksiDB.jsp" %>
<% theResult = statement.executeQuery("SELECT * FROM peserta where
nip='"+request.getParameter("nip")+"' and status='belum ujian'");
if(theResult.next()) { %>
<html> <head><title>UJIAN ONLINE</title>
int skor=0;
Int salah=-1;
int benar=2;
int golput=0;
int nilai_wawancara=0;
if(jumlah!=0)
{ try
{
Int dipilih=1;
int dipilih2=1;
int dipilih_lagi=1;
String kodesoal=null;
for (int i=0; i<=jumlah; i++)
{
if(i>=35)
{
benar=5;
}
//pengambilan kode soal
String kode_soal=request.getParameter("kode_soal"+i);
theResult = statement.executeQuery("SELECT * FROM soal where kode='"+kode_soal+"'");
if(theResult.next())
{
String kds=theResult.getString("kode");
ResultSet theResult4 = statement4.executeQuery("SELECT * FROM jawaban where
kode_soal='"+kds+"'order by kode_jawaban asc");
while (theResult4.next())
{
String kdj=theResult4.getString("kode_jawaban");
String nama_jawaban=theResult4.getString("jawaban");
String status_jawaban=theResult4.getString("status");
String jawaban=request.getParameter(kds);
if(jawaban!="kosong"&&kodesoal!=kds)// ketika jawaban ada yang dipilih
{
if(status_jawaban.equals("Benar")&&jawaban.equals(status_jawaban))
{
skor+=benar;
if(i>35&&status_jawaban.equals("Benar"))
{
nilai_wawancara+=5;
%> <tr><td width="53" valign="top"><%= i %>.</td>
<td width="454" valign="top">Status Jawaban :<font color="#009900">
<%= jawaban %></font><br>
Jawaban Benar : <%=nama_jawaban%></td>
</tr><%}else if(jawaban.equals("-")&&dipilih==1)
179
{
dipilih++;
kodesoal=kds;
skor+=salah;
jawaban="Salah"; %><tr>
<td width="53" valign="top"><%= i %>.</td>
<td width="454" valign="top">Status Jawaban :<font color="#FF0000"><%= jawaban %></font>
<br>Jawaban Benar :
<%theResult2 = statement.executeQuery("SELECT * FROM jawaban
where kode_soal='"+kds+"'and status='Benar'");
if(theResult2.next())
{
out.println(theResult2.getString("jawaban"));
}%></td></tr>
<%
}
if(dipilih>1&&kodesoal!=kds)
{
dipilih=1;
}
}
if(jawaban.equals("kosong")&&dipilih2==1)
{kodesoal=kds; dipilih2++; %> <tr>
theResult2 = statement.executeQuery("SELECT * FROM jawaban where kode_soal='"+kds+"'and
status='Benar'");
if(theResult2.next())
{ out.println(theResult2.getString("jawaban"));
}%></td> </tr><%
}
if(dipilih2>1&&kodesoal!=kds)
{
dipilih2=1;
}
}
}
} %>
<tr bgcolor="#FFCC33">
<td><strong> Skor </strong></td>
<td><strong><%=skor%></strong></td>
</tr>
<%
String sql="update peserta set nilai='"+skor+"',status='Telah Ujian',wawancara='"+nilai_wawancara+"' where
nip='"+request.getParameter("nip")+"'";
statement.executeUpdate(sql);
%> <%
}
catch(Exception ee)
{
out.println("Erorr"+ee);
}
}%></table></body></html><%
}else
{
out.print("ANDA SUDAH IKUT UJIAN.. DAN TELAH DI KOREKSI <br>");
out.print("Silahkan Klik <a href='index2.jsp?page=nilai&nip="+request.getParameter("nip")+"'>Lihat Nilai
</a>"); }
180
%>
//penanganan wawancara dan hasil cetak penilaian
while (theResult.next())
{wawancara=theResult.getString("wawancara");
int nilai_wawancara=Integer.parseInt(wawancara);
if(wawancara.equals("-"))
{
wawancara="";
}
int nilai_angka=Integer.parseInt(nilai);
theResult2 = statement2.executeQuery("SELECT * FROM nilai");
while(theResult2.next())
{
for(int h=0;h<theResult2.getString("nilai").length();h++)
{
mzi=theResult2.getString("nilai").charAt(h);
mz+=mzi;
}
pattern = Pattern.compile("-");
hasile = pattern.split(mz.trim());
mz="";
if(hasile.length==2)
{
data1 =Integer.parseInt(hasile[0].trim().toString());
data2 =Integer.parseInt(hasile[1].trim().toString());
}
if(nilai_angka>=data1&&nilai_angka<=data2)
{
kelolosan=theResult2.getString("status");
}
else if(nilai_angka<data1)
{
kelolosan=theResult2.getString("status");
}
if(jumlah_peserta<=jumlah_quota)
{
kelolosan="Diterima";
}
}
if(nilai_wawancara==0)
{
saran="Sebaiknya dipertimbangkan";
}
%>
<tr class="kk">
<td valign="top"><%= nipx %></td>
<td valign="top"><%= nama %></td>
<td valign="top"><%= nilai %></td>
<td valign="top"><%= kelolosan %></td>
<td valign="top">Wawancara <%=nilai_wawancara%><br><font
color="#FF9900"><%=saran%></font></td>
</tr>
<% if(kelolosan.equals("Diterima"))
{ dtrma++;
} if(kelolosan.equals("Tidak Diterima"))
181
{
dtlak++;
} if(kelolosan.equals("Cadangan"))
{ cadnagn++;
}
}
4.2.5
Oprator
Fungsi oprator adalah sebagai petugas pendaftaran yang melakukan input
data calon mahasiswa (peserta ujian). Selain itu juga sebagai pengawas pada
waktu ujian. Oprerator memiliki hak akses yang sama dengan admin pada menu
daftar peserta dan hasil ujian, hal ini dimaksudkan agar penanganan seputar
permasalahan peserta bisa diselesaikan pada tingkatan operator. Sedangkan pada
menu yang lain oprator memiliki hak akses yang terbatas (hanya bisa melihat).
4.2.6
Calon Mahasiswa
Calon mahasiswa (peserta ujian) memiliki beberapa hak diantaranya :
mendapat kartu tanda peserta pada karu ini tertera username dan password yang
nantinya digunakan untuk mengakses soal. kemudian mahasiswa melihat
pengumuman tanggal ujian (secara manual). Selanjutnya peserta akan mengikuti
proses ujian, tentunya dengan melakukan login terlebih dahulu sehingga halaman
pengguna (peserta) bisa ditampilkan.
182
4.2.6.1 Home
Pada menu home ini peserta dapat membaca petunjuk pengerjaan soal,
selain itu juga ada saran-saran agar agar peserta mampu mengikuti proses
pelaksanaan ujian ini dengan baik. Pada halaman ini sama dengan halaman utama
pada saat pertamakali diakses (index.jsp).
183
184
185
4.2.6.6 Logout
Logout adalah menu yang ada pada semua status (admin, oprator, dan
peserta) berfungsi sebagai akses untuk keluar dari form pengguna atau berpindah
dari status pengguna yang satu ke yang lain (hanya admin).Berikut adalah daftar
kode program pada menu logout :
<%
session.removeAttribute("user");
session.invalidate();
out.println("<meta http-equiv=\"refresh\"content=0;url=index.jsp>");
%>
Pada prinsipnya logout akan menghapus pengguna (user) yang kemudian akan
memanggil halaman utama pada index.jsp. Pembahasan pada logout mengakhiri
bab empat pada penulisan laporan ini.
4.3
186
sebuah keberanian dan usaha yang nyata untuk mewujudkan sebuah perubahan
yang lebih baik dalam dunia perguruan tinggi. Senada dengan hal tersebut, Allah
SWT telah berfirman dalam Al-Quran Surat Arradu 13 Ayat 11 yang berbunyi :
r'/ $t (# i0t 4Lym Bs)/ $t i0t !$# )
Artinya :
Sesungguhnya Allah tidak mengubah keadaan sesuatu kaum sehingga mereka
mengubah keadaan[768] yang ada pada diri mereka sendiri.
[768]
187
188
BAB V
KESIMPULAN DAN SARAN
5.1
Kesimpulan
Dari penelitian yang telah dilakukan, baik penelitian literatur maupun
wawancara tentang ujian masuk jalur reguler (mandiri) di UIN Maulana Malik
Ibrahim Malang, dapat disimpulkan bahwa aplikasi ujian online memiliki
beberapa keunggulan dibandingkan dengan ujian secara konvensional, selain bisa
mengurangi kecurangan dalam ujian, aplikasi ujian online juga dapat mengurangi
resiko kesalahan dalam pengkoreksian jawaban. Sehingga dapat meningkatkan
kepercaayaan masyarakat terhadap universitas terkait hasil ujian (tes).
5.2
Saran
Aplikasi ujian online ini masih memiliki beberapa kekurangan yang
189
DAFTAR PUSTAKA
Abidin, Zainal. dkk. 1996. Hadits Telaah Imam Khomeini atas Hadits-Hadits
Mistis dan Akhlak. Bandung : Mizan.
A Partanto, Pius. dan Dahlan Al Barry, M. 1994. Kamus Ilmiah Populer.
Surabaya: Arkola.
Avestro, Joice. 2007. Pemrograman Web. Java Education Network Indonesia :
JARDIKNAS.
Bahiah Ahmad, Nur. Dkk. 2005. Struktur Data dan Algoritma Menggunakan
C++. Johor : UTM Press.
Dwi Prasetyo, Didik. 2004. Tip dan Trik Pemrograman Java 2. Jakarta: Elex
Media Komputindo.
Faiz Almath, Muhammad. 2001. 1100 Hadits Terpilih. Gema Insani Press.
Software HaditsWeb 2.0.
Fatchurrochman. dan Basuki, Achmad. 2007. Pemrograman Visual Java.
Yogyakarta: Graha Ilmu.
Hariwijaya, M. dan Triton. 2007. Pedoman Penulisan Imiah proposal dan Skripsi.
Yogyakarta: Tugu Publisher.
Hariyanto, Bambang. 2007. Esensi-Esensi Bahasa Pemrograman Java. Bandung:
Informatika.
Hartati, Sri. dkk. 2007. Pemrograman GUI Swing Java dengan Netbeans 5.
Yogyakarta: Andi Offset.
Hartati Wijono, Sri. dkk. 2007. Java Servlet dan JSP dengan NetBeans.
Yogyakarta: Andi Offset.
Kadir, Abdul. 2004. Dasar Pemrograman Web Dinmis dengan JSP (Java Server
Pages). Yogyakarta: Andi Offset.
Latif, Masrul. 2007. Menyoal Efektifitas Pengawasan Ujian Nasional: Forwas.
hal. 25.
MADCOMS. 2005. Mendesain Website dengan Photoshop, Frontpage, dan
Pemrograman PHP-MySQL. Yogyakarta: Andi Offset
190
Mic,
191
: Syafii
NIM/Jurusan
NO
TANGGAL
KETERANGAN
1.
TANDA TANGAN
1.
2.
2.
3.
3.
4.
4.
5.
5.
6.
6.
7.
7.
8.
8.
9.
9.
10.
10.
Mengetahui,
Pembimbing Jurusan,
Pembimbing Agama
192
193
.
Tentukan bentuk mufrad dari setiap kata yang bergaris bawah!
2.
.
.
.
.
3.
.
.
.
.
4.
.
.
.
.
6.
.
.
.
.
Bidang study Ilmu Pengetahuan Sosial
1. Meningkatkan kriminalitas di masyarakat merupakan sebagian akibat dari
ketimpangan penghasilan antar individu dalam kelompok masyarakat.
Faktor yang mendasari peningkatan kriminalitas tersebut adalah
factor
a. Psikologis
c. Sosial ekonomi
e. Biologis
b. Sosiokultur
d. Historis
2. Nilai perolehan sebuah bangunan rp. 48.000.000; disusutkan
menggunakan angka tahun. Bila nilai risidu Rp. 40.000.000; dan umur
pakai bangunan sepuluh tahun, maka besarnya penyusutan pada tahun
ketiga adalah..
a. Rp. 2.400.000;
c. Rp. 6.400.000;
e. Rp. 8.000.000;
b. Rp. 4.400.000;
d. Rp. 7.200.000;
194
c. 2, 3 dan 4
e. 3, 4
d. 2, 3 dan 5
195
196
a. Ozotobacter
Nitrosomonas
b. Nitrobacter
c. Clostridium
e.
d. Rhizobium
197
1. Bila massa atom relative kecil H=1. O=16. Mg=24 dan Cl=35.5 jumlah
HCl yang diperlukan untuk cepat menetralkan 5.8 g Mg(OH)2
adalah
a. 3.65g
b. 4.21g
c. 7.30g
d. 7.50g
e. 9.15g
2. Konfigurasi system yang benar untuk in bromida 35 B adalah (nomor
atom Ar = 18).
a. (Ar) 4S2 4P5
b. (Ar) 3D10 4S2 4P6 5S1
c. (Ar) 3D10 4S2 4P5
d. (Ar) 3D10 4S2 4P6
e. (Ar) 3D10 4S2 4P4
3. Data percobaan suatu reaksi 2A + B2
2AB adalah sebagai berikut:
{A}
{B}
Kecepatan reaksi
Mol/L
Mol/L
mol / L
{
}
det ik
1 0.50
0.50
2 0.50
1.00
2 1.00
1.00
a. 0
b. 1
c. 2
d. 3
e. 4
4. Reaksi CO2 (g) + NO (g) + CO (g) dilakukan dalam wadah 5L, pada
keadaan awal terdapat 4.5 mol CO2 dan 4 mol NP; sesudah keseimbangan.
NO yang tersisa adalah 0.5 mol. Tetapan keseimbangan reaksi tersebut
adalah..
a. 11.25
b. 24.5
c. 35.5
d. 49.0
e. 60.0
5. Menurut Bronsted-Lowry pada reaksi manakah H2O bertindak sebagai
basa?
a. H2O + H2SO
H3O+ + OHb. H2O + CO3
HC3-+ + OH
c. H2O + CO2
H2CO3
d. H2O + NH3
NH4 + OHe. H2O + HSO4
OH- + H2SH4+
198
Kunci Jawaban
1. D 2.A 3.C 4.A 5.B 6.A 7.B 8.C 9.C 10.A 11.B 12.C 13.D 14.A 15.C
16.B 17.D 18.B 19.D 20.E 21.D 22.D 23.E 24.D 25.A 26.E 27.A 28.C
29.B 30.B 31.D 32.E 33.D 34.D 35.D
199
Baca-Tulis Al-Quran
5. Tentukan lawan kata dari kata yang bergaris dibawahnya!
.
.
.
.
Kunci Jawaban:
1.C
2.B
3.D
4.A 5.B
200
1. Tidak mudah bagi saya untuk segera memaafkan orang yang menyakiti
hati saya
a. Ya
b. Kadang-kadang
c. Tidak
2. Saya lebih suka belajar sendiri
a. Ya
b. Kadang-kadang
c. Tidak
3. Ketika menginginkan sesuatu saya merasa tidak nyaman sebelum
mendapatakannya
a. Ya
b. Kadang-kadang
c. Tidak
4. Saya merasa ingin membalas orang yang menghina saya
a. Ya
b. Kadang-kadang
c. Tidak
5. Saya akan sulit menerima ketika ada orang lain menyampaikan pendapat
yang berbeda dengan saya
a. Ya
b. Kadang-kadang
c. Tidak
6. Saya merasa susah untuk memperbaiki suatu kesalahan yang telah saya
lakukan
a. Ya
b. Kadang-kadang
c. Tidak
7. Ketika gagal dalam ujian, maka saya meratapinya dengan mengurung diri
di kamar
a. Ya
b. Kadang-kadang
c. Tidak
8. Ketika melihat orang yang telah saya kenal saya akan pura-pura tidak
melihat
a. Ya
b. Kadang-kadang
c. Tidak
9. Ketika bertemu dengan orang yang saya kenal saya akan menunggunya
untuk menghampiri saya lebih dahulu
a. Ya
b. Kadang-kadang
201
c. Tidak
10. Saya senang berkumpul dengan banyak orang seperti menghadiri
pertemuan-pertemuan atau jamuan-jamuan
a. Ya
b. Kadang-kadang
c. Tidak
11. Saya merasa bersemangat dalam mencapai cita-cita
a. Ya
b. Kadang-kadang
c. Tidak
12. Saya merasa cemas bila mengerjakan sesuatu yang belum pernah saya
lakukan
a. Ya
b. Kadang-kadang
c. Tidak
13. Saya mengerjakan tugas mendekati waktu pengumpulan yang ditentukan
a. Ya
b. Kadang-kadang
c. Tidak
14. Saya merasa tidak bias menjelaskan suatu emosi (marah, sedih, takut,
gembira) yang sedang saya rasakan
a. Ya
b. Kadang-kadang
c. Tidak
15. Saya tidak bias memahami apa penyebab orang tua saya marah
a. Ya
b. Kadang-kadang
c. Tidak
16. Membutuhkan waktu yang lama bagi saya untuk memaafkan orang yang
menyakiti saya
a. Ya
b. Kadang-kadang
c. Tidak
17. Saya pernah hamper pingsan ketika mengalami suatu rasa sakit yang
sangat
a. Ya
b. Kadang-kadang
c. Tidak
18. Saya senang membicarakan masalah-masalah setempat dengan orang lain
a. Ya
b. Kadang-kadang
c. Tidak
19. Saya harus menahan diri untuk tidak selalu banyak melibatkan diri/
mencampuri masalah-masalah orang lain
a. Ya
b. Kadang-kadang
202
c. Tidak
20. Saya merasa bahwa pembicaraan dari tetangga membosankan
a. Ya
b. Kadang-kadang
c. Tidak
21. saya lebih suka belajar dengan teman-teman
a. Ya
b. Kadang-kadang
c. Tidak
22. Ketika orang lain menghadapi masalah, maka saya tidak mau ikut
memikirkannya
a. Ya
b. Kadang-kadang
c. Tidak
23. Bila sedang sakit hati saya sulit mengendalikan emosi
a. Ya
b. Kadang-kadang
c. Tidak
24. Ketika mempunyai suatu keinginan saya tidak sabar untuk
mendapatkannya
a. Ya
b. Kadang-kadang
c. Tidak
25. Ketika mengambil keputusan saya merasa ragu-ragu
a. Ya
b. Kadang-kadang
c. Tidak
26. Saya bias menunggu dengan sabar sampai apa yang saya inginkan
terwujud
a. Ya
b. Kadang-kadang
c. Tidak
27. Saya adalah orang yang penuh keyakinan
a. Ya
b. Kadang-kadang
c. Tidak
28. Saya merasa orang lain tidak nyaman ketika bersama saya
a. Ya
b. Kadang-kadang
c. Tidak
29. Adalah tidak mudah bagi saya untuk mengakui suatu kesalahan yang saya
lakukan
a. Ya
b. Kadang-kadang
c. Tidak
30. Susah bagi saya untuk minta maaf pada orang yang telah saya sakiti
203
a. Ya
b. Kadang-kadang
c. Tidak
31. Ketika menghadapi kesulitan saya mudah patah semangat
a. Ya
b. Kadang-kadang
c. Tidak
32. Perhatian saya terhadap orang-orang lain tidaklah sebesar perhatuan
mereka terhadap saya
a. Ya
b. Kadang-kadang
c. Tidak
33. Saya agaknya bias menahan diri dalam mengutarakan perasaan saya
daripada orang-orang lain
a. Ya
b. Kadang-kadang
c. Tidak
34. Saya tidak mudah menyerah
a. Ya
b. Kadang-kadang
c. Tidak
35. Ketika orang lain menceritakan masalahnya saya rasa saya bukan
pendengar yang baik
a. Ya
b. Kadang-kadang
c. Tidak
36. Saya suka menyendiri
a. Ya
b. Kadang-kadang
c. Tidak
37. Saya menjadi tidak sabar dan gelisah bila orang-orang memperlambat saya
tidak pada tempatnya
a. Ya
b. Kadang-kadang
c. Tidak
38. Saya ini sangat pemalu dan hati-hati dalam berteman dengan orang-orang
baru
a. Ya
b. Kadang-kadang
c. Tidak
39. Tidak membutuhkan waktu yang lama bagi saya untuk melupakan
kesedihan
a. Ya
b. Kadang-kadang
c. Tidak
204
40. Saya curiga bahwa orang yang baik-baik di depan saya, di belakang saya
dapatmengkhianati saya
a. Ya
b. Kadang-kadang
c. Tidak
41. Bila saya tidak menyukai orang-orang, maka saya bias berpura-pura saja
menyukai mereka
a. Ya
b. Kadang-kadang
c. Tidak
42. Saya mudah tersinggung ketika dikritik orang lain
a. Ya
b. Kadang-kadang
c. Tidak
43. Bila saya merencanakan sesuatu, maka saya lebih senang mengerjakannya
sendiri tanpa bantuan orang lain
a. Ya
b. Kadang-kadang
c. Tidak
44. Saya adalah orang yang mudah curiga pada orang lain
a. Ya
b. Kadang-kadang
c. Tidak
45. Ketika bersedih saya bingung tentang apa yang harus saya lakukan untuk
mengurangi kesedihan saya
a. Ya
b. Kadang-kadang
c. Tidak
46. Ketika muncul keinginan untuk marah saya tidak mudah untuk
menahannya
a. Ya
b. Kadang-kadang
c. Tidak
47. Saya akan marah-marah ketika orang tua tidak dapat memenuhi
permintaan saya
a. Ya
b. Kadang-kadang
c. Tidak
48. Ketika ada orang yang menolak pendapat saya maka saya akan
membencinya
a. Ya
b. Kadang-kadang
c. Tidak
49. Saya membutuhkan waktu yang lama untuk keluar dari kesedihan
a. Ya
b. Kadang-kadang
205
c. Tidak
50. Saya sering merasa cemas tanpa tahu penyebabnya yang jelas
a. Ya
b. Kadang-kadang
c. Tidak
51. Bila sedang bersama banyak orang, maka saya merasa agak kaku dan
canggung
a. Ya
b. Kadang-kadang
c. Tidak
52. Ketika mengalami suatu kegagalan susah bagi saya untuk bangkit kembali
a. Ya
b. Kadang-kadang
c. Tidak
53. Ketika diminta mengerjakan sesuatu yang baru saya sering ragu akan
berhasil
a. Ya
b. Kadang-kadang
c. Tidak
54. Ketika dikritik orang lain saya mudah tersinggung
a. Ya
b. Kadang-kadang
c. Tidak
55. Kebanyakan orang yang saya temui merasa senang bertemu saya
a. Ya
b. Kadang-kadang
c. Tidak
56. Saya merasa canggung memulai percakapan dengan orang yang barui saya
kenal
a. Ya
b. Kadang-kadang
c. Tidak
57. Saya sulit bergaul lagi dengan orang yang telah menyakiti hati saya
a. Ya
b. Kadang-kadang
c. Tidak
58. Secara jujr saya merasa bahwa saya memiliki ambisi yang lebih besar
daripada orang lain
a. Ya
b. Kadang-kadang
c. Tidak
59. Saya aktif dalam mengorganisir perkumpulan social/kegiatan kelompok
a. Ya
b. Kadang-kadang
c. Tidak
60. Saya rasanya ingin membalas dendam bila seseorang menghina saya
206
a. Ya
b. Kadang-kadang
c. Tidak
61. Ketika melihat orang yang telah saya kenal saya akan menunggu dia
menyapa saya lebih dahulu
a. Ya
b. Kadang-kadang
c. Tidak
62. Saya merasa kurang yakin dapat menyelesaikan pekerjaan dengan baik
a. Ya
b. Kadang-kadang
c. Tidak
63. Halangan-halangan yang saya temui, bias membuat saya hamper menangis
a. Ya
b. Kadang-kadang
c. Tidak
64. Saya berusaha untuk tidak melibatkan diri dalam kegiatan-kegiatan social
a. Ya
b. Kadang-kadang
c. Tidak
65. Saya akan berpikir ulang untuk mencobanya lagi ketika tidak lulus dalam
suatu tes
a. Ya
b. Kadang-kadang
c. Tidak
66. Saya rasanya inhin menghardik orang-orang lain bila berbeda pendapat
dengan saya
a. Ya
b. Kadang-kadang
c. Tidak
67. Saya mengalami emosi yang kuat (seperti rasa takut, marah, gembira)
tanpa adanya suatu sabab yang berarti
a. Ya
b. Kadang-kadang
c. Tidak
68. Pada saat-saat tertentu saya tidak dapat berpikir dengan jernih
a. Ya
b. Kadang-kadang
c. Tidak
69. Saya orang yang susah memahami perasaan orang lain
a. Ya
b. Kadang-kadang
c. Tidak
70. Saya mempunyai banyak teman di setiap aktivitas
a. Ya
b. Kadang-kadang
207
c. Tidak
71. Saya meminta bantuan orang lain ketika mendapat suatu masalah
a. Ya
b. Kadang-kadang
c. Tidak
72. Saya mudah marah
a. Ya
b. Kadang-kadang
c. Tidak
73. Saya suka bertahan menghadapi suatu pekerjaan atau masalah sekalipun
tampaknya seolah-olah saya tidak akan berhasil
a. Ya
b. Kadang-kadang
c. Tidak
74. Saya merasa malu menceritakan masalah saya pada orang lain
a. Ya
b. Kadang-kadang
c. Tidak
75. Saya orang yang peka terhadap perasaan orang lain
a. Ya
b. Kadang-kadang
c. Tidak
208