BAB 4 Analisa dan Perancangan Sistem
4.1 Rancangan Sistem Menggunakan UML 4.1.1 Use Case Diagram Use Case Diagram memperlihatkan himpunan usecase dan aktor. Diagram ini penting untuk mengorganisasikan dan memodelkan perilaku dari suatu sistem yang dibutuhkan serta diharapkan oleh pengguna. Use case dari sistem yang akan dibuat, dapat dilihat dalam gambar dibawah ini.
Login <
>
Calon Mahasiswa
Pengerjaan Tes <>
<>
Menjalankan Tes
<> <>
Administrator
Sistem Tes Online PMB Cetak Hasil Tes
Lihat nilai
<> <>
Pengaturan pengguna <>
Pengelolaan Tes Hapus Pengguna
Tambah Pengguna
Pembuat Soal
<> <> <>
<>
Ubah Pengguna Tambah Tes
Ubah Tes
Hapus Tes
Gambar 4.1 Use Case Diagram Proses Tes Seleksi PMB Jalur Reguler
Pada gambar 4.1 dapat dijabarkan bahwa terdapat 3 aktor pada sistem test online, yaitu Administrator, Pembuat Soal, dan Calon Mahasiswa. Administrator bertugas untuk mengelola siapa saja 23
24
pengguna yang dapat menggunakan sistem, baik itu menambah pengguna,
mengubah
pengguna,
dan
menghapus
pengguna,
menjalankan tes, mencetak hasil tes. Pembuat Soal bertugas melakukan pengelolaan tes yaitu membuat tes, menghapus tes, dan menghapus tes. Calon Mahasiswa merupakan aktor yang melakukan pengerjaan tes, dan dapat melihat nilai. Ketiga aktor tersebut, sebelum dapat menggunakan Sistem Test Online PMB harus terlebih dahulu melakukan Login supaya pengguna-pengguna yang berhak saja yang dapat menggunakan sistem ini. 4.1.2 Activity Diagram Activity Diagram memperlihatkan aliran dari suatu aktivitas ke aktivitas
lainnya
dalam
suatu
sistem.
Activity
diagram
menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi.
Jalankan aplikasi
Tampilkan Form Login
Memasukkan username dan password
username & password tidak sesuai
sesuai
Tampilkan menu utama aplikasi
Gambar 4.2 Activity Diagram Login Sistem
25
Pada Gambar 4.2 dapat menggambarkan alur Login pada Sistem Test Online PMB. Proses login dilakukan dengan cara memasukkan username beserta password yang telah diatur oleh Administrator. Jika login sukses maka aplikasi utama akan ditampilkan. Calon Mahasisw a
Tes Serv er
Menjalankan aplikasi tes client tidak sesuai
Memasukkan nomor pendaftaran
Cek nomor dan password
Memasukkan password
Menampilk an form tes
sesuai
Gambar 4.3 Activity Diagram Login Tes
Gambar 4.3 menggambarkan proses login di mana Calon Mahasiswa memasukkan nomor pendaftaran sebagai username dan password yang diberikan saat melakukan pendaftaran. Server akan mememeriksa nomor pendaftaran dan password, jika sesuai maka form tes akan ditampilkan. Jika tidak sesuai, maka form login akan ditampilkan kembali.
26
Calon Mahasisw a
Meminta informasi tes Menampilkan daftar soal
Menampilkan nilai selesai mengerjakan tes belum selesai
Memilih soal
Mengirim jawaban
Menampilkan pertanyaan dan daftar jawaban
Memilih jawaban
Gambar 4.4 Activity Diagram Pengerjaan Tes dan Menampilkan Nilai
Pada Gambar 4.4 menjabarkan mengenai aktifitas pengerjaan tes oleh Calon Mahasiswa. Pertama Calon Mahasiswa meminta informasi tes, yaitu berupa jumlah tes dan durasi waktu yang diperlukan saat proses tes berlangsung. Kemudian Calon Mahasiswa meminta soal berdasarkan nomor soal yang kemudian akan menampilkan pertanyaan beserta daftar jawaban. Setelah mengetahui jawaban yang dianggap benar maka Calon Mahasiswa akan memilih jawaban dan selanjutnya akan mengirim jawaban tersebut. Aktivitas akan berulang apabila Calon Mahasiswa belum menyelesaikan tes. Jika tes telah selesai maka Calon Mahasiswa dapat melihat hasil tes beserta keputusan mengenai lulus tidaknya dalam tes PMB ini.
27
Pembuat soal
Membuat tes baru
Membuat pertanyaan
Memberikan batasan nilai tes
menambahkan pertanyaan baru
Membuat daftar jawaban selesai membuat tes Memberikan skor jawaban
Gambar 4.5 Activity Diagram Pembuatan Tes
Pada Gambar 4.5 menjabarkan aktivitas pembuatan tes yang dilakukan oleh Pembuat Soal. Tahapan yang dilakukan Pembuat Soal yaitu membuat tes baru, kemudian memberikan batasan nilai tes untuk penilai akhir. Setelah membuat tes maka proses selanjutnya membuat pertanyaan yang kemudian diikuti dengan membuat daftar jawaban pertanyaan. Lalu setiap jawaban akan diberikan skor nilai.
28
Administrator
Pilih menu pengaturan pengguna
tambah baru
ubah atau hapus pengguna Pilih pengguna
Pilih tombol tambah ubah Pilih pegawai
Tekan tombol ubah
Memberikan password Memilih hak akses
Ubah data pengguna
hapus Tekan tombol hapus
Konfirmasi penghapusan pengguna Data pengguna dihapus dari basis data
Simpan ke basis data
Gambar 4.6 Activity Diagram Pengaturan Pengguna Sistem
Penambahan pengguna sistem dilakukan dengan cara memilih menu pengaturan pengguna, username diisi dengan nomor pegawai dan password acak. Selain menambah pengguna, administrator dapat mengubah hak akses pengguna, serta mengubah pengguna yang dapat mengakses sistem, serta dapat menghapus pengguna yang sudah tidak lagi memiliki wewenang untuk mengakses sistem.
29
Administrator
Memilih tes
Menjalanka n server tes
Mencetak laporan nilai tes tes selesai
Menunggu request
belum selesai
Gambar 4.7 Activity Diagram Menjalankan Tes
Pada Gambar 4.7 merupakan aktivitas Administrator dalam menjalankan tes, yaitu sebelum proses tes dilakukan. Administrator menjalankan tes berdasarkan tes yang yang telah dipilih. Selanjutnya server akan menunggu dan merespon request Calon Mahasiswa. Jika tes telah usai maka Administrator dapat mencetak laporan hasil tes yang telah dilaksanakan. 4.1.3 Sequence Diagram Sequence
diagram
merupakan
sebuah
diagram
yang
menggambarkan interaksi antar objek di dalam sebuah system. Interaksi tersebut berupa pesan yang digambarkan berdasarkan waktu kejadian. Diagram ini juga menggambarkan urutan kejadian yang terjadi. dan lebih detail dalam menggambarkan aliran data, termasuk data yang dikirimkan atau diterima. Urutan kejadian yang pertama adalah login sistem. Login diperlukan agar hanya pengguna yang berhak atau diberikan wewenang untuk mengelola atau menggunakan sistem. Kejadian pada tahapan login ini ditunjukkan pada gambar 4.8.
30
: Pengguna
: Form Login
: Basis Data
: Form Utama
login( ) cekLoginAdmin( ) login valid
show( ) hide( )
Gambar 4.8 Sequence Diagram Login Sistem
Pengguna yang dimaksud termasuk Administrator maupun Pembuat Soal. Pada tahapan ini pengguna akan memasukkan username yang berupa nomor induk pegawai, password, dan tipe pengguna yang berupa Administrator atau Pembuat Soal. Selanjutnya Form Login memeriksa valid tidaknya pengguna tersebut. Jika login valid maka Form Utama akan dimunculkan, sedangkan Form Login akan disembunyikan.
: Form Tes
: Pembuat Soal
: Form Soal
: Basis Data
tesBaru ( ) setJudul( ) setDeskripsi( ) simpanTes( ) insertTes( ) tambahSoal( ) show( ) hide( )
setPertanyaan( ) setJawaban( ) setSkor( ) simpan( ) insertSoal( )
Gambar 4.9 Sequence Diagram Pembuatan Tes
31
Pada Gambar 4.9 merupakan sequence diagram pembuatan tes oleh aktor Pembuat Soal. Pembuatan tes diikuti dengan memberikan judul dan deskripsi tes. Setelah tes dibuat, hal yang dilakukan selanjutnya adalah menambahkan soal beserta jawaban soal berupa pilihan berganda beserta skor jawaban.
: FormTes
: Administrator
: Tes Server
: Basis Data
show() ambilDataTes( ) tampilkanDaftarTes( ) pilihTes( ) startTes( ) start( ) ambilDataTes( ) listen( )
Gambar 4.10 Sequence Diagram Memulai Test Online
Pada gambar 4.10 menunjukkan sequence diagram memulai test online yang dimulai dengan Administrator menampilkan Form Tes. Form Tes mengambil daftar tes yang ada pada basis data yang kemudian ditampilkan ke Administrator. Selanjutnya Administrator memilih tes yang akan digunakan untuk tes seleksi penerimaan mahasiswa baru. Tes Server merupakan kelas yang berfungsi untuk melayani permintaan dari client. Kelas ini menjebatani antara basis data dengan client sehingga client tidak mengakses basis data secara langsung. Saat method startTest() dieksekusi maka objek Tes Server memanggil
32
method start() yang akan mengambil informasi tes beserta daftar soal beserta jawaban. Terakhir objek Tes Server akan mengeksekusi method listen() untuk menerima permintaan dari client.
: Form Login Tes
: Calon Mahasiswa
: Form Peserta Tes
: Tes Client
: Tes Server
: Basis Data
login( ) login( ) login( ) cek_login_peserta( ) valid responseLogin( ) loginValid( ) show( ) ambilInfoTes( ) hide( ) ambilInfoTes( ) responseInfoTes( ) tampilkanInfoTes( )
mulaiTes( ) ambilDaftarSoalDanJawaban( ) ambilDaftarSoalDanJawaban( ) acakSoal( ) responseDaftarSoalDanJawaban( ) tampilkanSoalDanJawaban( ) pilihJawaban( ) next( ) finish( ) simpanDaftarJawaban( ) simpanDaftarJawaban( ) prosesNilai( ) simpanNilai( ) responseNilai( ) tampilkanNilai( ) tampilkanInfoLulus( )
Gambar 4.11 Sequence Diagram Pengerjaan Tes Seleksi PMB
Pada Gambar 4.11 menjabarkan mengenai interaksi berdasarkan watu kejadian setelah Administrator menjalankan Test Online. Pada urutan kejadian pengerjaan tes ini, pertama-tama Calon Mahasiswa
33
akan melakukan tahapan login. Permintaan login dilakukan melalui Tes Client. Tes Client merupakan kelas yang berfungsi untuk melakukan permintaan layanan ke server, yaitu Tes Server. Login Calon Mahasiswa ditangani langsung oleh Tes Server yang kemudian memeriksa valid tidaknya nomor pendaftaran dan password dengan cara membandingkan parameter tersebut melalui pengecekan pada basis data. Kemudian Tes Server merespon dengan mengirimkan respon login ke Form Login Tes. Jika login berhasil maka Form Peserta Tes ditampilkan. Form Peserta Tes meminta informasi tes ke Tes Server untuk mengetahui jumlah pertanyaan atau soal beserta durasi waktu yang dibutuhkan untuk menyelesaikan soal tes. Setelah tes dimulai, maka akan ditampilkan soal yang pertama beserta pilihan jawaban yang telah disediakan. Selanjutnya Calon Mahasiswa memilih jawaban yang dianggap paling benar dan melanjutkan ke soal yang berikutnya hingga semua soal telah terjawab atau waktu telah berakhir. Setelah tes usai, maka jawaban-jawaban dikirim ke Tes Server. Selanjutnya Tes server memproses jawaban-jawaban tersebut dan menghasilkan nilai akhir dari tes. Hasil tes ini dikembalikan ke Calon Pengguna yang ditampilkan pada Form Peserta Tes. 4.1.4 Class Diagram Class
Diagram adalah diagram
yang digunakan untuk
menampilkan beberapa kelas yang ada dalam sistem atau perangkat lunak yang dikembangkan. Pada diagram ini pula digambarkan relasirelasi tiap kelas. Class Diagram pada Sistem Tes Seleksi Penerimaan Mahasiswa Baru Jalur Reguler ditunjukkan pada Gambar 4.12.
34
Form Utama formTes : Form Tes tesServer : Tes Server formPengguna
Form Tes show() close()
Form Pengguna
tesServer : Tes Server formSoal : Form Soal
pengguna : Pengguna Tambah() Ubah() Hapus()
Form Login formUtama : Form Utama pengguna : Pengguna login() hide()
Pengguna nip password tipe_pengguna
Form Soal tes : Tes
Tambah() Ubah() Hapus()
Administrator
tesBaru() pilihTes() show() cetakNilaiTes() setJudul() tambahSoal() hide() setDeskripsi() ubahTes() editTes() ubahSoal() simpanTes() tambahSoal()
show() setSkor() simpan() close() setPertanyaan() setJawaban() pilihSoal()
Tes Server port : Integer mulai() hentikan() login() infoTes() soal() jawab() hasilTes() ambilDataTes() start() listen() login() ambilInfoTes() simpanDaftarJawaban() cekJawaban() acakSoal() stop()
Pembuat Soal
Soal
Tes
kode jawaban skor
kode pertanyaan tipe_soal
kode judul deskripsi tanggal_dibuat
Tambah() Ubah() Hapus()
Tambah() Ubah() Hapus()
Jawaban
Tambah() Ubah() Hapus()
Form Login Tes formPeserta : Form Peserta Tes calonMahasiswa : Calon Mahasiswa tesClient : Tes Client show() responLogin() login() loginValid() hide() close()
Form Peserta Tes Tes Client
tesClient : Tes Client
host : String port : Integer login() responseLogin() ambilInfoTes() responseInfoTes() getDaftarSoalDanJawaban() responseDaftarSoalDanJawaban() kirimJawaban() responseNilai()
show() tampilkanInfoTes() mulaiTes() tampilkanSoalDanJawaban() pilihJawaban() next() finish() tampilkanNilai() tampilkanInfoLulus()
Calon Mahasiswa no_peserta nama alamat password prodi_id kelamin tempat_lahir tanggal_lahir telpon alamat_asal kota_asal kode_pos_asal provinsi_asal alamat_semarang pendidikan_akhir agama kode_pos_semarang jurusan status golongan_darah asal_sekolah no_ijazah provinsi_sekolah Tambah() Ubah() Hapus()
Gambar 4.12 Class Diagram Sistem Test Online
Gambar 4.12 menunjukkan bahwa terdapat 16 kelas pada Sistem Test Online. Kelas-kelas tersebut adalah Form Utama, Form Pengguna, Form Tes, Form Login, Form Pengguna, Administrator,
35
Pembuat Soal, Form Soal, Tes Server, Jawaban, Soal, Tes, Form Login Tes, Calon Mahasiswa, Form Peserta Tes, dan Tes Client. Form Login merupakan kelas untuk antarmuka pengguna sistem yaitu Administrator dan Pembuat Soal. Tujuan dari kelas adalah untuk membatasi siapa saja yang dapat mengakses sistem. Kelas ini memiliki attribute formUtama yang merupakan kelas Form Utama, dan pengguna yang merupakan kelas Pengguna. Method login() pada kelas ini digunakan untuk memeriksa keabsahan nip dan password pengguna sistem. Jika nip dan password benar maka Form Utama ditampilkan ke Pengguna. Form Utama merupakan antarmuka utama dari aplikasi Sistem Test Online. Dari kelas ini Administrator dapat mengakses Form Tes untuk menjalankan tes seleksi dan mencetak hasil tes, dan Form Pengguna
untuk
mengelola
pengguna-pengguna
yang
dapat
mengakses sistem. Sedangkan dari sisi Pembuat Soal, kelas ini akan menampilkan opsi untuk menambah tes beserta soal, jawaban, dan skor jawaban. Form Tes merupakan antarmuka yang memiliki dua fungsi yang berbeda bergantung pada siapa yang menggunakannya. Seperti yang telah dijelaskan pada Form Utama. Kelas Pengguna adalah kelas yang menangani penggunapengguna yang mengakses sistem. Administrator dan Pembuat Soal merupakan kelas yang diturunkan dari kelas Pengguna. Di kelas ini terdapat fungsi-fungsi untuk menambah, mengubah, dan menghapus pengguna sistem.
36
Tes Server merupakan kelas yang paling penting, yaitu kelas yang berfungsi untuk menangani permintaan-permintaan dari client. Permintaan-permintaan tersebut adalah login Calon Mahasiswa, permintaan tes yang berupa soal-soal, dan jawaban-jawaban, mengacak urutan soal, dan memproses nilai serta mengirim nilai akhir dari tes kepada Calon Mahasiswa. Kelas Calon Mahasiswa, Tes, Soal, Jawaban merupakan merupakan kelas yang menampung informasi dari tabel yang terdapat pada basis data. Tujuannya adalah untuk mempermudah akses ke tabel yang dibutuhkan. Form Login Tes merupakan antarmuka yang digunakan untuk menangani login Calon Mahasiswa. Permintaan login dikirim melalui kelas Tes Client yang kemudian diterima oleh Tes Server. Tes Server melakukan validasi data dan mengembalikan status sukses ataupun tidak ke Tes Client. Jika login sukses maka Form Peserta Tes ditampilkan ke Calon Mahasiswa. Form Peserta Tes merupakan antarmuka bagi Calon Mahasiswa untuk melaksanakan proses tes. Soal-soal tes akan ditampilkan beserta pilihan jawaban yang ada. Calon Mahasiswa memilih jawaban yang dianggap benar, kemdian melanjutkan ke soal yang berikutnya. Selain itu, form ini juga menampilkan hasil tes setelah proses tes selesai. Tes Client bertindak sebagai client yang mengirim permintaanpermintaan ke server, yaitu Tes Server. Kelas ini terdapat methodmethod untuk melakukan proses login, mengambil informasi tes, mengambil daftar soal dan jawaban, mengirim jawaban.
37
4.2 Rancangan Basis Data Adapun tabel dalam perancangan basis data dalam membangun aplikasi test online adalah sebagai berikut: Tabel 4.1 user
Field
Tipe
Keterangan
Id
int(10)
id user sebagai primary key
Username
varchar(10)
Username berupa nomor induk pegawai
Password
varchar(20)
Password untuk login sistem
tipe_user_id
tinyint
Id tipe user
Pada Tabel 4.1 merupakan tabel user atau pengguna selain Calon Mahasiswa atau peserta tes dalam aplikasi test online PMB. Tabel ini memiliki empat (4) field yaitu id, username, password, dan tipe_user_id. Field id merupakan primary key dari tabel user . Field username merupakan foreign key dari tabel pegawai untuk menampung nomor induk pegawai, jadi username beriisi nomor pegawai. Field password merupakan digunakan untuk menyimpan kata kunci untuk bisa menjalankan aplikasi test online ini. Terakhir, field tipe_user_id merupakan foreign key dari tabel tipe_user yang mengindikasikan jenis pengguna sesuai dengan tugasnya masingmasing. Tabel 4.2 tipe_user
Field
Tipe
Keterangan
id
tinyint
id tipe user sebagai primary key
nama
varchar(30)
nama tipe user
38
Tabel 4.2 merupakan tabel untuk menampung tipe pengguna yang dapat mengakses aplikasi test online. Field id merupakan primary key dari tabel tipe_user, dan nama adalah nama tipe pengguna. Tabel 4.3 pegawai
Field
Tipe
Keterangan
nip
varchar(11)
Nomor induk pegawai sebagai primary key
nama
varchar(50)
nama tipe user
alamat
varchar(50)
telpon
varchar(25)
kelamin
char(1)
tahun_masuk
char(4)
jabatan
varchar(30)
Tabel 4.3 merupakan tabel yang menampung data-data pegawai STIFAR “Yayasan Pharmasi Semarang”. Tabel pegawai memiliki field nip sebagai primary key untuk menyimpan nomor induk pegawai, nama merupakan nama pegawai, alamat sebagai alamat pegawai, telpon sebagai nomor telpon pegawai, kelamin sebagai jenis kelamin pegawai yang diisi dengan nilai L(laki-laki) atau P (perempuan), tahun masuk sebagai tahun pegawai tersebut mulai bekerja, dan yang terakhir adalah jabatan pegawai. Tabel 4.4 peserta
Field
Tipe
Keterangan
no_peserta
varchar(10)
nomor peserta sebagai primary key
nama
varchar(50)
39
prodi_id
tinyint
id program studi pilihan
kelamin
char(1)
jenis kelamin dengan nilai L atau P
tempat_lahir
varchar(30)
tanggal_lahir
date
telpon
varchar(25)
alamat_asal
varchar(50)
kota_asal
varchar(30)
kode_pos_asal
varchar(10)
provinsi_asal
varchar(30)
alamat_semarang
alamat tinggal di semarang
kode_pos_semarang agama
varchar(10)
pendidikan_akhir
varchar(20)
jurusan status
Nikah atau Belum Nikah
golongan_darah
char(1)
asal_sekolah
varchar(45)
provinsi_sekolah
asal sekolah atau perguruan tinggi provinsi sekolah atau perguruan
varchar(45)
no_ijazah
varchar(45)
Password
varchar(20)
tinggi
Pada Tabel 4.4 merupakan tabel untuk menyimpan informasi mengenai calon mahasiwa. Field no_peserta digunakan untuk menyimpan nomor urut pendaftaran saat dilakukan pendaftaran mahasiswa baru. Field nama merupakan nama dari calon mahasiswa, prodi_id merupakan foreign key dari tabel prodi untuk menyimpan
40
program studi yang dipilih oleh calon mahasiswa. Field kelamin merupakan jenis kelamin dari calon mahasiswa yang diisi dengan nilai L atau P. Field tempat_lahir adalah kota di mana calon mahasiswa dilahirkan. Field tanggal_lahir
adalah tanggal calon mahasiswa
dilahirkan. Field telpon digunakan untuk menyimpan nomor telpon yang dapat digunakan untuk menghubungi calon mahasiswa. Field alamat_asal adalah alamat di mana calon mahasiswa tinggal di tempat asalnya. Field kota_asal adalah kota asal di mana calon mahasiswa tinggal. Field kode_pos_asal merupakan kode pos di kota asal calon mahasiswa tinggal. Field alamat_semarang merupakan alamat tempat tinggal di kota Semarang. Field kode_pos_semarang merupakan kode pos tempat tinggal di kota Semarang. Field agama berisi agama yang dianut oleh calon mahasiswa. Field pendidikan_akhir berisisi pendidikan terakhir calon mahasiswa saat melakukan pendaftaran. Jurusan merupakan jurusan yang diambil saat menempuh studi di SMA maupun saat menempuh perguruan tinggi sebelumnya. Field status berisi nilai Belum Nikah atau Nikah. Field golongan_darah untuk
menyimpan
golongan
darah
calon
mahasiswa.
Field
asal_sekolah berisi alamat lengkap sekolah atau perguruan tinggi calon mahasiswa baru sebelum melanjutkan pendidikan di STIFAR “Yayasan Pharmasi Semarang”. Field provinsi_sekolah adalah provinsi sekolah atau perguruan tinggi. Field no_ijazah berisi nomor ijazah calon mahasiswa. Terakhir adalah field password untuk bisa melakukan login saat tes berlangsung.
41
Tabel 4.5 tes
Field
Tipe
Keterangan
Id
int(10)
id tes sebagai primary key
Judul
varchar(50)
tanggal_dibuat
datetime
Keterangan
varchar(100)
Pada Tabel 4.5 adalah tabel untuk menyimpan informasi tes yang akan dibuat. Tabel tes terdiri dari empat (4) field yaitu id sebagai primary key, judul yang berisi nama tes yang akan dibuat, untuk mempermudah pemilihan tes, tanggal_dibuat merupakan tanggal dan waktu tes dibuat, dan yang terakhir field keterangan untuk memperjelas informasi tentang tes yang dibuat. Tabel 4.6 soal
Field
Tipe
Keterangan id pertanyaan sebagai primary
Id
int(10)
key
tes_id
int(10)
id tes
pertanyaan
text
tipe_pertanyaan_id
tinyint
Pada Tabel 4.6 merupakan tabel yang digunakan untuk menyimpan soal-soal tes. Tabel soal terdiri dari empat(4) field yaitu field id sebagai primary key, field tes_id sebagai foreign key ke tabel tes untuk mengaitkan pertanyaan ke tes yang dibuat. Field pertanyaan merupakan pertanyaan yang akan diajukan kepada peserta tes. Field tipe_pertanyaan id merupakan foreign key ke tabel tipe_pertanyaan
42
sebagai indikator untuk membedakan tipe pertanyaan yang akan dibuat. Tabel 4.7 keterangan_pertanyaan
Field
Tipe
Keterangan Id keterangan pertanyaan sebagai
Id
int(10)
perimary key
pertanyaan_id
int(10)
id jawaban
Keterangan
text
Pada Tabel 4.7 merupakan tabel yang berisi mengenai keterangan yang diperlukan dalam menjawab pertanyaan. Tabel keterangan_pertanyaan memiliki dua(3) field yaitu id sebagai primary key, field pertanyaan_id sebagai foreign key ke tabel pertanyaan untuk memastikan keterangan ditampilkan sesuai dengan pertanyaan yang diberikan, dan terakhir adalah field keterangan yang berisi keterangan yang diinginkan. Tabel 4.8 tipe_pertanyaan
Field
Tipe
Keterangan
Id
tinyint
id tipe pertanyaan primary key
Nama
varchar(35)
nama tipe pertanyaan
Pada Tabel 4.8 merupakan tabel yang berisi tipe pertanyaan yang terdiri dari dua(2) field yaitu id yang merupakan primary key, dan yang terakhir adalah field nama untuk tipe pertanyaan.
43
Tabel 4.9 jawaban
Field
Tipe
Keterangan
Id
int(10)
id jawaban sebagai primary key
Jawaban
text
pertanyaan_id
int(10)
Skor
tinyint
id pertanyaan
Pada Tabel 4.9 merupakan tabel yang berisi mengenai pilihanpilihan jawaban pada pertanyaan yang dibuat. Tabel jawaban terdiri dari empat(4) field yaitu id sebagai primary key, field jawaban berisi jawaban dari pertanyaan, field pertanyaan_id merupakan foreign key ke tabel pertanyaan untuk memperjelas bahwa jawaban X adalah untuk pertanyaan Y, dan yang terakhir adalah field skor, yaitu skor jawaban. Tabel 4.10 jawaban_peserta
Field
Tipe
Keterangan
no_peserta
varchar(10)
no peserta
jawaban_id
int(10)
id jawaban
Pada Ttabel 4.10 menunjukkan tabel yang berisi data jawaban yang dipilih oleh peserta tes. Tabel jawaban_peserta terdiri atas dua(2) field yaitu field no_peserta yang merupakan foreign key ke tabel peserta yang berisi nomor pendaftaran calon mahasiswa baru, dan field jawaban_id merupkan foreign key ke tabel jawaban yang berisi nomor id jawaban.
44
4.2.1 Relasi Antar Tabel Relasi basis data menggambarkan relasi antar tabel dalam basis data, pada Gambar 4.13 adalah gambar diagram untuk aplikasi test online PMB pada STIFAR “Yayasan Pharmasi Semarang” :
Gambar 4.13 Relasi Antar Tabel
Gambar 4.13 menunjukkan relasi-relasi antar tabel pada basis data sistem test online sebagai berikut: •
Tabel peserta dan prodi memiliki relasi many to one, yang mana banyak peserta dapat memilih prodi yang sama. Tabel
45
jawaban_peserta merupakan kelas bantu untuk menyimpan pilihan jawaban peserta sesuai dengan tes yang ditentukan. •
Tabel tes memiliki relasi one to many dengan tabel pertanyaan karena tiap tes memiliki banyak pertanyaan. Tabel tes memiliki relasi many to one dengan tabel opsi_tes karena tiap tes dapat memiliki opsi yang sama.
•
Tabel pertanyaan memiliki relasi one to many dengan tabel pertanyaan karena tiap soal dapat memiliki banyak pilihan jawaban. Tabel pertanyaan juga memiliki relasi zero or one to zero or one dengan tabel keterangan_pertanyaan karena pertanyaan dapat memiliki keterangan ataupun tidak. Tabel pertanyaan memiliki relasi many to one dengan tabel tipe_pertanyaan karena tipe pertanyaan bias bermacam-macam meskipun pada perancangan ini hanya dibuat satu tipe saja yaitu pilihan ganda. Alasannya adalah untuk pengembangan lebih lanjut dengan menambahkan tipe-tipe pertanyaan yang lain misalnya essay.
•
Tabel user memiliki relasi one to zero or one dengan tabel pegawai karena user dengan username admin tidak harus seorang pegawai. Tabel user dengan tabel tipe_user memiliki relasi one to one karena tiap user hanya boleh memiliki 1 tipe user.
46
4.3 Rancangan Antarmuka Rancangan
antarmuka
diperlukan
untuk
menggambarkan
bagaimana aplikasi yang nantinya akan dibuat dengan maksud pengguna akan menjadi lebih mudah memahami cara kerja aplikasi. 4.3.1 Rancangan Form Login Sistem
Gambar 4.14 Rancangan Form Login Sistem
Pada Gambar 4.14 dapat ditunjukkan rancangan Form Login Sistem yang digunakan oleh Administrator, dan Pembuat Soal untuk dapat masuk ke dalam aplikasi utama. NIP diisi dengan nomor induk pegawai atau admin, password diisi dengan password yang sesuai, dan Akses merupakan tipe penguna sistem yaitu Administrator dan Pembuat Soal.
47
4.3.2 Rancangan Form Login Peserta Tes
Gambar 4.15 Rancangan Form Login Peserta
Gambar 4.15 merupakan rancangan Form Login Peserta Tes meminta No. Untuk dapat membuka Form Tes Peserta maka Calon Mahasiswa harus memasukkan nomor pendaftaran beserta password yang telah diberikan saat melakukan pendaftaran. 4.3.3 Rancangan Form Utama Test Online
Gambar 4.16 Rancangan Form Utama Aplikasi Test Online
48
Gambar 4.16 merupakan form utama aplikasi test online penerimaan mahasiswa baru. Pada bagian atas merupakan Toolbar yang terdapat Action Pengguna, Tes, dan Keluar. Jika Action Pengguna ditekan maka akan menampilkan form pengaturan pengguna. Action akan menampilkan form yang berbeda sesuai dengan hak akses. Jika Administrator yang menekan tombol maka akan ditampilkan form untuk memulai tes, apabila Pembuat Soal yang menekan tombol maka akan ditampilkan form untuk pengelolaan tes. Terakhir adalah tombol Keluar yang digunakan untuk keluar dari aplikasi. 4.3.4 Rancangan Form Pengaturan Pengguna
Gambar 4.17 Rancangan Form Pengaturan Pengguna
Gambar 4.17 merupakan rancangan tampilan untuk pengaturan pengguna yang dijalankan oleh Administrator. Tombol tambah berfungsi untuk menambah pengguna baru, kemudian Administrator mengisi username dengan nomor induk pegawai, password, beserta menentukan tipe pengguna. Tombol Ubah digunakan untuk mengubah
49
pengguna. Sedangkan tombol hapus digunakan untuk menghapus pengguna. 4.3.5 Rancangan Form Pengelolaan Tes oleh Pembuat Soal
Gambar 4.18 Rancangan Form Pengelolaan Tes
Gambar 4.18 merupakan rancangan form pengelolaan tes yang dijalankan oleh Pembuat Soal. Bagian kiri merupakan daftar tes yang tersimpan dalam basis data. Tombol-tombol disebelah kanan atas digunakan untuk menambah, mengubah, dan menghapus tes, serta tombol untuk mengisi soal-soal dan jawaban-jawaban pada tes yang dipilih oleh Pembuat Soal.
50
4.3.6 Rancangan Form Tes oleh Adminstrator
Gambar 4.19 Rancangan Form Tes
Gambar 4.19 merupakan tampilan Form Tes jika yang menjalankan adalah Administrator. Pada bagian sebelah kiri merupakan daftar tes yang tersimpan pada basis data. Untuk memulai tes maka Administrator memilih salah satu daftar tes dan selanjutnya menekan tombol Jalankan Tes. Tombol Cetak Nilai berfungsi untuk mencetak hasil tes yang telah dijalankan sebelumnya.
51
4.3.7 Rancangan Form Tes Peserta
Gambar 4.20 Rancangan Form Tes Peserta
Pada Gambar 4.20 menunjukan rancangan Form yang digunakan calon mahasiswa untuk mengerjakan tes. Bagian paling atas merupakan nomor urut tes yang sedang dikerjakan beserta jumlah soal yang diberikan dan sisa waktu yang tersedia. Bagian tengah adalah soal atau pertanyaan beserta pilihan jawaban yang tersedia. Bagian bawah terdapat pilihan jawaban berupa Combo Box disertai dengan tombol untuk menyimpan jawaban, tombol untuk menampilkan soal yang selanjutnya, dan tombol untuk mengentikan tes. Apabila tombol tes ditekan maka jawaban akan dikirim ke server dan hasil tes akan ditampilkan.