161
BAB 4 IMPLEMENTASI DAN PENGUJIAN
Pada bab ini akan dilakukan implementasi dan pengujian terhadap sistem tryout yang telah dibangun. Tahap implementasi dan pengujian dilakukan setelah
tahap analisis dan perancangan sistem selesai dilakukan dan selanjutnya akan diimplementasikan ke dalam suatu bahasa pemograman. Setelah implementasi
selesai dilakukan maka tahap selanjutnya dilakukan pengujian terhadap sistem yang batu dan akan dilihat beberapa kekurangan pada aplikasi yang baru untuk
pengembangan selanjutnya.
4.1 Implementasi sistem
Setelah sistem dianalisis dan di desain secara rinci, maka tahap selanjutnya adalah tahap implementasi. Tujuan implementasi adalah untuk mengkonfirmasi
modul program perancangan pada pengguna sistem sehingga pengguna dapat memberikan masukan kepada pembangun sistem terhadap sistem yang dibangun.
4.1.1 Implementasi Perangkat Keras
Perangkat keras yang diperlukan untuk mengimplementasikan perangkat lunak yang akan dibangun yaitu sistem evaluasi penilaian hasil tryout di SMA
Negeri 2 Bandung dapat dilihat pada Tabel 4.1 dan Tabel 4.2 dibawah ini.
Tabel 4.1 Implementasi perangkat keras
Perangkat Keras Spesifikasi
Prosesor Dual Core 2.3 Ghz
RAM 2 Gb
Hardisk 120-320 Gb
VGA 128 Mb64 bit
Monitor CRT Flat 14 Inc
4.1.2 Implementasi Perangakat Lunak
Berikut ini adalah spesifikasi dari perangkat lunak untuk membangun sistem evaluasi penilaian hasil tryout di SMA Negeri 2 Bandung yaitu dapat dilihat pada
Tabel 4.2 dibawah ini.
Tabel 4.2 Implementasi Perangkat Lunak
Perangkat Lunak Keterangan
Sistem Operasi MS Windows 7 Professional 32-bit
Bahasa Pemograman PHP, javascript, Css, Html
Web Server Xampp Server
Database Server Mysql
Web Browser Google Chrome, Spark Browser, Internet
Explorer.
4.1.3 Implementasi Basis Data
Pembuatan database dilakukan dengan menggunakan aplikasi DBMS MySQL, implementasi database dalam membangun Sistem evaluasi penilaian hasil
tryout di SMA Negeri 2 Bandung adalah sebagai berikut : 1. Pembuatan Database
Berikut adalah sintak SQL untuk membuat database Sistem evaluasi penilaian hasil tryout di SMA Negeri 2 Bandung.
1 CREATE DATABASE db_sma2bdg
2. Pembuatan Tabel Sistem ini merupakan sistem pengembangan dari sistem sebelumnya yaitu
Learning Management System, karena sistem ini merupakan pengembangan maka sudah tersedia tabel pada sistem yang sebelumnya, tabel yang sudah tersedia pada
sistem sebelumnya diantaranya tabel Admin, tabel Guru, tabel Siswai, tabel detail_siswai, tabel pelajaran, tabel materi, tabel file, tabel ujian, tabel detail_ujian,
tabel mengajar, tabel detail_mengajar, tabel kelas, tabel pengumuman, tabel forum,
tabel tahun_ajaran, tabel soal, tabel detail_siswai, tabel detail_tugas, tabel pengguna dan tabel histori_soal. Berikut adalah daftar tabel untuk Sistem evaluasi
penilaian hasil tryout di SMA Negeri 2 Bandung yang ditulis dalam format .sql
Tabel 4.3 Tabel database
No Nama Tabel
Nama File
1 Admin
Admin.sql 2
Detail_mengajar Detail_mengajar.sql
3 Detail_siswa
Detail_siswa 4
Detail_tugas Detail_tugas.sql
5 Detail_ujian
Detail_ujian.sql 6
File File.sql
7 Forum
Forum.sql 8
Guru Guru
9 Histori_soal
Histori_soal.sql 10
Kelas Kelas.sql
11 Materi
Materi.sql 12
Mengajar Mengajar.sql
13 Pelajaran
Pelajaran.sql 14
Pengguna Pengguna.sql
15 Pengumuman
Pengumuman.sql 16
Siswa Siswa.sql
17 Soal
Soal.sql 18
Tahun_ajaran Tahun_ajaran.sql
19 Tryout_tim_penyusun
Tryout_tim_penyusun.sql 20
Tugas Tugas.sql
21 Ujian
Ujian.sql
3. Sintaks SQL pada Tabel Berdasarkan pada Tabel 4.3 dapat diimplementasikan kendala sebuah sintak
SQL. Berikut adalah beberapa sintak dalam pembuatan tabel. a. Sintak SQL tabel Admin.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 CREATE TABLE `admin`
`id_admin` int11 NOT NULL AUTO_INCREMENT, `username` varchar30 NOT NULL,
`password` varchar50 NOT NULL, `nama` varchar50 NOT NULL,
`telp` varchar15 DEFAULT NULL, `email` varchar50 NOT NULL,
`foto` varchar250 DEFAULT NULL, `status` enumadmin,superadmin DEFAULT
admin, PRIMARY KEY `id_admin`,
UNIQUE KEY `u_email` `email` ENGINE=InnoDB
b. Sintak SQL tabel Detail_mengajar.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 CREATE TABLE `detail_mengajar`
`id_detail_mengajar` int11 NOT NULL AUTO_INCREMENT,
`id_mengajar` int11 NOT NULL, `id_kelas` varchar15 NOT NULL,
PRIMARY KEY `id_detail_mengajar`, CONSTRAINT `FK_detail_mengajar` FOREIGN KEY
`id_kelas` REFERENCES `kelas` `id_kelas` ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `FK_detail_mengajar3` FOREIGN KEY `id_mengajar` REFERENCES `mengajar`
`id_mengajar` ON DELETE CASCADE ON UPDATE CASCADE ENGINE=InnoDB
c. Sintak SQL tabel Detail_siswa.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
CREATE TABLE `detail_siswa` `id_detail_siswa` int11 NOT NULL AUTO_INCREMENT,
`id_kelas` varchar15 NOT NULL, `nis` int11 NOT NULL,
`id_ta` int11 NOT NULL, `status` enumtinggal kelas,naik kelas NOT
NULL DEFAULT tinggal kelas, PRIMARY KEY `id_detail_siswa`,
ADD CONSTRAINT `FK_detail_siswa` FOREIGN KEY `id_kelas` REFERENCES `kelas` `id_kelas` ON
DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `FK_detail_siswa1` FOREIGN KEY `nis`
REFERENCES `siswa` `nis` ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `FK_detail_siswa2` FOREIGN KEY `id_ta` REFERENCES `tahun_ajaran` `id_ta` ON
UPDATE CASCADE ENGINE=InnoDB
d. Sintak SQL tabel Detail_tugas.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 CREATE TABLE `detail_tugas`
`id_detail_tugas` int11 NOT NULL AUTO_INCREMENT, `file_tugas` text,
`ukuran` varchar10 DEFAULT NULL, `tanggal_posting` datetime NOT NULL,
`nilai` int11 DEFAULT NULL, `keterlambatan` enumtepat waktu,terlambat
DEFAULT tepat waktu, `keterangan` enumditerima,ditolak DEFAULT
diterima, `id_tugas` int11 NOT NULL,
`nis` int11 NOT NULL, PRIMARY KEY `id_detail_tugas`,
CONSTRAINT `FK_detail_tugas` FOREIGN KEY `nis` REFERENCES `siswa` `nis` ON UPDATE CASCADE,
CONSTRAINT `FK_detail_tugas1` FOREIGN KEY `id_tugas` REFERENCES `tugas` `id_tugas` ON
UPDATE CASCADE ENGINE=InnoDB
e. Sintak SQL tabel Detail_ujian.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
CREATE TABLE detail_ujian id_detail_ujian int11 NOT NULL AUTO_INCREMENT,
nilai int11 DEFAULT NULL,
keterangan text, temporari_soal text NOT NULL,
temporary_nilai text NOT NULL, status
setlulus,gagal,belum DEFAULT belum,
nis int11 NOT NULL,
id_ujian int11 NOT NULL,
PRIMARY KEYid_detail_ujian, CONSTRAINT fk_ujian_has_siswa_siswa1
FOREIGN KEYnis REFERENCES siswanis,
CONSTRAINT fk_ujian_has_siswa_ujian1 FOREIGN KEYid_ujian
REFERENCES ujianid_ujian ENGINE=InnoDB;
f. Sintak SQL tabel File.sql
1 2
3 4
CREATE TABLE `file` `id_file` int11 NOT NULL AUTO_INCREMENT,
`nama_file` text NOT NULL, `ukuran` varchar300 DEFAULT NULL,
5 6
7 8
9 10
11 12
13 14
`tanggal_upload` date DEFAULT NULL, `deskripsi` varchar150 DEFAULT NULL,
`jml_download` int10 unsigned NOT NULL DEFAULT 0,
`id_materi` int11 NOT NULL, PRIMARY KEY `id_file`,
CONSTRAINT `FK_file` FOREIGN KEY `id_materi` REFERENCES `materi` `id_materi` ON DELETE CASCADE
ON UPDATE CASCADE ENGINE=InnoDB
g. Sintak SQL tabel Forum.sql
1 2
3 4
5 6
7 8
9 10
11 CREATE TABLE `forum`
`id_forum` int11 NOT NULL AUTO_INCREMENT, `topik` varchar30 NOT NULL,
`isi` varchar300 DEFAULT NULL, `tanggal_posting` datetime DEFAULT NULL,
`id_reply` int11 NOT NULL DEFAULT 0, `id_pengguna` varchar25 NOT NULL,
PRIMARY KEY `id_forum`,
CONSTRAINT `FK_forum` FOREIGN KEY `id_pengguna` REFERENCES `pengguna` `id_pengguna`
ENGINE=InnoDB
h. Sintak SQL tabel Guru.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
21 CREATE TABLE `guru`
`nip` varchar25 NOT NULL, `nama` varchar30 NOT NULL,
`username` varchar30 DEFAULT NULL, `password` varchar50 DEFAULT NULL,
`jk` char2 NOT NULL, `tempat_lahir` varchar30 DEFAULT NULL,
`tanggal_lahir` date DEFAULT NULL, `agama` varchar30 DEFAULT NULL,
`jabatan` varchar30 NOT NULL, `alamat` varchar50 DEFAULT NULL,
`telepon` varchar15 NOT NULL, `email` varchar50 NOT NULL,
`foto` varchar250 NOT NULL DEFAULT fotoblank.jpg,
`id_pengguna` varchar25 NOT NULL, PRIMARY KEY `nip`,
CONSTRAINT `FK_guru` FOREIGN KEY `id_pengguna` REFERENCES `pengguna` `id_pengguna` ON DELETE
CASCADE ON UPDATE CASCADE
ENGINE=InnoDB
i. Sintak SQL tabel Histori_soal.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
21 CREATE TABLE histori_soal
id_hs varchar6 NOT NULL,
tgl_buat date NOT NULL,
gambar text,
pertanyaan text NOT NULL, tipe_jawab enumtext,image,ti NOT NULL
DEFAULT text, pil_a
text NOT NULL, pil_b
text NOT NULL, pil_c
text NOT NULL, pil_d
text NOT NULL, pil_e
text NOT NULL, jawaban
text, id_materi int11 NOT NULL,
stat enumrevisi, baik, diganti,
diperbaiki DEFAULT NULL, PRIMARY KEY id_hs,
CONSTRAINT fk_histori_soal_materi1 FOREIGN KEYid_materi
REFERENCES materiid_materi, ENGINE=InnoDB;
j. Sintak SQL tabel Kelas.sql
1 2
3 4
5 6
7 8
CREATE TABLE `kelas` `id_kelas` varchar15 NOT NULL,
`kelas` setX,XI,XII NOT NULL, `jurusan` setIPA,IPS,BAHASA,Umum
DEFAULT NULL, `sub_kelas` varchar3 NOT NULL,
PRIMARY KEY `id_kelas` ENGINE=InnoDB
k. Sintak SQL tabel Materi.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 14
CREATE TABLE materi id_materi int11 NOT NULL AUTO_INCREMENT,
judul varchar50 NOT NULL,
kelas enumX,XI,XII NOT NULL,
kopetensi text, kode_mp
varchar15 NOT NULL, id_ta
int11 NOT NULL, PRIMARY KEYid_materi,
CONSTRAINT fk_materi_pelajaran FOREIGN KEYkode_mp
REFERENCES pelajarankode_mp, CONSTRAINT fk_materi_ta
FOREIGN KEYid_ta REFERENCES tahun_ajaranid_ta
15 ENGINE=InnoDB;
l. Sintak SQL tabel Mengajar.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
CREATE TABLE `mengajar` `id_mengajar` int11 NOT NULL AUTO_INCREMENT,
`nip` varchar25 NOT NULL, `kode_mp` varchar5 NOT NULL,
`id_ta` int11 NOT NULL, PRIMARY KEY `id_mengajar`,
CONSTRAINT `FK_mengajar` FOREIGN KEY `nip` REFERENCES `guru` `nip` ON DELETE CASCADE ON
UPDATE CASCADE, CONSTRAINT `FK_mengajar2` FOREIGN KEY `kode_mp`
REFERENCES `pelajaran` `kode_mp` ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `FK_mengajar3` FOREIGN KEY `id_ta` REFERENCES `tahun_ajaran` `id_ta` ON
DELETE NO ACTION ON UPDATE NO ACTION ENGINE=InnoDB
m. Sintak SQL tabel Pelajaran.sql
1 2
3 4
5 6
7 8
9 10
11 CREATE TABLE `pelajaran`
`kode_mp` varchar5 NOT NULL, `mata_pelajaran` varchar30 NOT NULL,
`kategori_kelas` varchar15 NOT NULL DEFAULT Umum,
`kkm` int3 NOT NULL, `pelajaran_tryout` enumya,bukan NOT NULL
DEFAULT bukan, `Jurusan` enumIPA,IPS,IPAIPS NOT NULL,
PRIMARY KEY `kode_mp` ENGINE=InnoDB
n. Sintak SQL tabel Pengguna.sql
1 2
3 4
5 CREATE TABLE `pengguna`
`id_pengguna` varchar25 NOT NULL, `jenis_pengguna` enumsiswa,guru NOT NULL,
PRIMARY KEY `id_pengguna` ENGINE=InnoDB
o. Sintak SQL tabel Pengumuman.sql
1 2
3 4
CREATE TABLE `pengumuman` `id_pengumuman` int11 NOT NULL AUTO_INCREMENT,
`judul` varchar30 NOT NULL, `isi` varchar250 NOT NULL,
5 6
7 8
9 10
11 12
`tanggal_posting` date DEFAULT NULL, `untuk_kelas` varchar15 NOT NULL,
`nip` varchar25 NOT NULL, PRIMARY KEY `id_pengumuman`,
CONSTRAINT `FK_pengumuman` FOREIGN KEY `nip` REFERENCES `guru` `nip`
ENGINE=InnoDB
p. Sintak SQL tabel Siswa.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
CREATE TABLE `siswa` `nis` int11 NOT NULL,
`nama` varchar30 NOT NULL, `username` varchar30 NOT NULL,
`password` varchar50 NOT NULL, `jk` char2 NOT NULL,
`tempat_lahir` varchar30 DEFAULT NULL, `tanggal_lahir` date DEFAULT NULL,
`agama` varchar30 DEFAULT NULL, `alamat` varchar50 DEFAULT NULL,
`telepon` varchar15 NOT NULL, `email` varchar50 NOT NULL,
`foto` varchar250 DEFAULT fotoblank.jpg, `status` enumbelum lulus,lulus DEFAULT
belum lulus, `id_pengguna` varchar25 NOT NULL,
PRIMARY KEY `nis`, CONSTRAINT `FK_siswa` FOREIGN KEY `id_pengguna`
REFERENCES `pengguna` `id_pengguna` ENGINE=InnoDB
q. Sintak SQL tabel Soal.sql
1 2
3 4
5 6
7 8
9 10
11 12
CREATE TABLE `soal` `id_soal` int11 NOT NULL AUTO_INCREMENT,
`id_hs` varchar6 NOT NULL, `id_ujian` int11 NOT NULL,
PRIMARY KEY `id_soal`, CONSTRAINT `FK_histori_soal` FOREIGN KEY
`id_hs` REFERENCES `histori_soal` `id_hs` ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `FK_soal?ujian` FOREIGN KEY `id_ujian` REFERENCES `ujian` `id_ujian` ON
DELETE CASCADE ON UPDATE CASCADE ENGINE=InnoDB
r. Sintak SQL tabel Tahun_ajaran.sql
1 CREATE TABLE `tahun_ajaran`
2 3
4 5
6 7
8 9
`id_ta` int11 NOT NULL, `ta_awal` varchar15 NOT NULL,
`ta_akhir` varchar15 NOT NULL, `semester` varchar15 NOT NULL,
`status` enumaktif,nonaktif NOT NULL DEFAULT nonaktif,
PRIMARY KEY `id_ta` ENGINE=InnoDB
s. Sintak SQL tabel Tryout_tim_penyusun.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 14
CREATE TABLE tryout_tim_penyusun kode_tim_penyusun
varchar6 NOT NULL, nip
varchar20 NOT NULL, kode_mp
varchar15 NOT NULL, status
enumketua,anggota NOT NULL,
PRIMARY KEY kode_tim_penyusun, CONSTRAINT fk_tim_guru
FOREIGN KEYnip REFERENCES gurunip,
CONSTRAINT fk_tim_pelajaran FOREIGN KEYkode_mp
REFERENCES pelajarankode_mp ENGINE=InnoDB;
t. Sintak SQL tabel Tugas.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 CREATE TABLE `tugas`
`id_tugas` int11 NOT NULL AUTO_INCREMENT, `judul` varchar30 NOT NULL,
`file_tugas` text, `ukuran` varchar10 DEFAULT NULL,
`deskripsi` text NOT NULL, `batas_waktu` datetime NOT NULL,
`id_kelas` varchar15 NOT NULL, `id_materi` int11 NOT NULL,
PRIMARY KEY `id_tugas`, KEY `fk_tugas_materi1` `id_materi`,
KEY `FK_tugas1` `id_kelas` ENGINE=InnoDB
u. Sintak SQL tabel Ujian.sql
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
21 22
23 24
25 26
27 28
29 30
CREATE TABLE ujian id_ujian int11 NOT NULL,
judul varchar100 NOT NULL, tgl_ujian date,
durasi int4, jam_aktif time,
id_kelas varchar15, id_detail_mengajar int11,
status setbelum, sedang, sudah, jenis enumtryout, ulangan NOT NULL,
kode_mp varchar15 NOT NULL, gelombang char1,
max_soal int2, sesi int1,
ruangan enumLabkom1, Labkom2, Labkom3, id_ta int11,
PRIMARY KEYid_ujian, CONSTRAINT fk_ujian_detail_mengajar1
FOREIGN KEYid_detail_mengajar REFERENCES mengajarid_detail_mengajar,
CONSTRAINT fk_ujian1 FOREIGN KEYid_kelas
REFERENCES kelasid_kelas, CONSTRAINT fk_kode_mp1
FOREIGN KEYkode_mp REFERENCES pelajarankode_mp,
CONSTRAINT fk_id_ta1 FOREIGN KEYid_ta
REFERENCES tahun_ajaranid_ta ENGINE=InnoDB;
4.1.4 Implementasi Antarmuka