View
8
Download
0
Category
Preview:
Citation preview
vii
RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI
INSTITUT BISNIS DAN INFORMATIKA STIKOM SURABAYA
DENGAN MENGGUNAKAN ALGORITMA GENETIKA
TUGAS AKHIR
Program Studi
S1 Sistem Informasi
Oleh:
ALVIAN DEFFA K.
09.41010.0134
FAKULTAS TEKNOLOGI DAN INFORMATIKA
INSTITUT BISNIS DAN INFORMATIKA STIKOM SURABAYA
2017
viii
RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI
INSTITUT BISNIS DAN INFORMATIKA STIKOM SURABAYA
DENGAN MENGGUNAKAN ALGORITMA GENETIKA
TUGAS AKHIR
Diajukan sebagai salah satu syarat untuk menyelesaikan
Program Sarjana
Oleh:
Nama : Alvian Deffa K.
NIM : 09.41010.0134
Program : S1 (Strata Satu)
Jurusan : Sistem Informasi
FAKULTAS TEKNOLOGI DAN INFORMATIKA
INSTITUT BISNIS DAN INFORMATIKA STIKOM SURABAYA
2017
ix
“Masalah adalah ujian pendewasaan
Tak ada alasan menyalahkan orang lain, benahi diri sendiri
Dan jadilah pribadi yang dewasa
x
KUPERSEMBAHKAN KEPADA:
Ibu, Bapak, Keluarga serta Sahabat-sahabat yang telah memberikan
semangat, motivasi serta dukungan moral berupa doa
Teman-teman Mahasiswa Institut Bisnis dan Informatika Stikom Surabaya
yang saling memotivasi dan membantu untuk menuju keberhasilan
xi
xii
vii
ABSTRAK
Salah satu kegiatan akademik yang dilakukan oleh Institut Bisnis dan
Informatika Stikom Surabaya adalah kegiatan penjadwalan ujian. Fakta yang
terjadi dalam penyusunan jadwal ujian saat ini membutuhkan proses dan waktu
yang cukup lama. Hal ini terjadi karena harus mengelompokkan dan mengurutkan
data yang ditulis menggunakan media kertas dan menyusun jadwal dengan
bantuan Microsoft Excel. Kesulitan yang dihadapi saat menyusun jadwal ujian
adalah jadwal harus disesuaikan dengan syarat dan kebijakan yang telah
ditentukan dengan cara mencocokkan satu per satu.
Berdasarkan permasalahan tersebut, dibuat suatu aplikasi penjadwalan
ujian dengan menggunakan Algoritma Genetika. Aplikasi penjadwalan ujian
disusun dengan memperhatikan karyawan yang akan dijadikan menjadi penjaga
ujian, data mata kuliah yang akan diselenggarakan, dan data ruang kelas.
Hasil penelitian menunjukkan bahwa aplikasi penjadwalan ujian ini telah
dapat menghasilkan jadwal ujian dalam 1 periode waktu UTS yang sesuai dengan
syarat dan kebijakan yang ada. Hasil pengujian untuk penjadwalan ujian sebanyak
40 kelas diperoleh parameter terbaik yaitu nilai kromosom 30, jumlah generasi 30,
probabilitas pindah silang 70, dan probabilitas mutasi 30. Dengan menggunakan
parameter terbaik hasil pengujian tersebut dihasilkan jadwal ujian dengan tingkat
keberhasilan rata-rata sebesar 73% untuk 30 kali uji coba dan menghasilkan
jadwal ujian dengan jumlah tabrakan 6 dengan tingkat keberhasilan 85%
Kata Kunci : Aplikasi, Penjadwalan Ujian, Algoritma Genetika.
viii
KATA PENGANTAR
Pertama-tama penulis panjatkan puji syukur kehadirat Allah S.W.T
karena atas berkat dan rahmat-Nya akhirnya penulis dapat menyelesaikan laporan
tugas akhir ini dengan sebaik-baiknya. Penulis membuat laporan tugas akhir yang
berjudul “Rancang Bangun Aplikasi Penjadwalan Ujian di Institut Bisnis dan
Informatika Stikom Surabaya dengan Menggunakan Algoritma Genetika“ ini
sebagai wujud tugas akhir penulis.
Dalam pembuatan tugas akhir ini, penulis mendapatkan bantuan dari
berbagai pihak. Oleh karena itu, penulis ingin mengucapkan terima kasih kepada:
1. Orang tua penulis yang selalu memberikan dukungannya, baik secara material
maupun spiritual kepada penulis.
2. Bapak Tutut Wurijanto, M.Kom. selaku Dosen Pembimbing I dan Ibu A.B.
Tjandrarini, S.Si., M.Kom selaku Dosen Pembimbing II yang telah bersedia
membimbing, membantu, dan mengarahkan penulis sehingga dapat
menyelesaikan tugas akhir ini.
3. Bapak Erwin Sutomo, S.Kom., M.Eng. dan Ibu Vivine Nurcahyawati,
M.Kom. selaku Dosen Penguji I dan Dosen Penguji II yang telah memberikan
arahan untuk perbaikan buku tugas akhir ini.
4. Teman-teman angkatan 2009 Stikom Surabaya dan teman-teman lainnya yang
selalu setia baik dalam suka maupun duka dan membantu berbagi ilmu dalam
pembuatan Tugas Akhir ini.
5. Bapak/Ibu Dosen Institut Bisnis dan Informatika Stikom Surabaya dan teman-
teman yang tidak dapat penulis sebutkan satu per satu yang telah banyak
ix
membantu dan memberikan dukungan serta saran dalam penyelesaian tugas
akhir ini, baik secara langsung maupun secara tidak langsung.
Penulis menyadari bahwa dalam tugas akhir ini masih banyak terdapat
kekurangan. Oleh karena itu, penulis memohon saran dan kritik yang bersifat
membangun dari semua pihak untuk perbaikan penulis di masa mendatang.
Penulis juga memohon maaf yang sebesar-besarnya jika ada kata-kata yang
menyinggung atau menyakiti hati para pembaca. Akhir kata, penulis
mengucapkan terima kasih atas perhatiannya. Semoga laporan tugas akhir ini
dapat bermanfaat bagi para pembaca.
Surabaya, Maret 2017
Penulis
x
DAFTAR ISI
Halaman
ABSTRAK ............................................................................................................ vii
KATA PENGANTAR ......................................................................................... viii
DAFTAR ISI ........................................................................................................... x
DAFTAR TABEL ................................................................................................ xiii
DAFTAR GAMBAR ........................................................................................... xvi
DAFTAR LAMPIRAN ......................................................................................... xx
BAB I PENDAHULUAN ....................................................................................... 1
1.1 Latar Belakang ........................................................................................... 1
1.2 Perumusan Masalah ................................................................................... 3
1.3 Pembatasan Masalah .................................................................................. 4
1.4 Tujuan Penelitian ....................................................................................... 4
1.5 Manfaat Penelitian ..................................................................................... 4
1.6 Sistematika Penulisan ................................................................................ 5
BAB II LANDASAN TEORI ................................................................................. 7
2.1 Penjadwalan ............................................................................................... 7
2.2 Penjadwalan Ujian ..................................................................................... 8
2.3 Aplikasi ...................................................................................................... 8
2.4 Aplikasi Web ............................................................................................. 9
2.5 Algoritma Genetika ................................................................................. 10
2.5.1 Teknik Pengodean ........................................................................... 14
2.5.2 Membangkitkan Populasi awal ....................................................... 15
xi
2.5.3 Seleksi ............................................................................................. 15
2.5.4 Pindah Silang (Crossover) ............................................................... 17
2.5.5 Mutasi .............................................................................................. 17
2.6 Software Development Life Cycle (SDLC) .............................................. 18
2.6.1 Incremental ...................................................................................... 19
2.6.2 Analisis Sistem ................................................................................ 21
2.6.3 Perancangan Sistem ......................................................................... 22
2.6.4 Pemodelan Proses ............................................................................ 22
2.6.5 Pemodelan Data ............................................................................... 23
2.6.6 Database .......................................................................................... 24
2.7 Testing dan Implemetasi .......................................................................... 25
BAB III ANALISIS DAN PERANCANGAN SISTEM ...................................... 27
3.1 Analisis Sistem ................................................................................... 27
3.1.1 Tahapan Komunikasi ....................................................................... 27
3.1.2 Perencanaan Kebutuhan Sistem ...................................................... 43
3.2 Perancangan Sistem (Modelling) ............................................................ 44
3.2.1 Sitemap ............................................................................................ 44
3.2.2 Data Flow Diagram ........................................................................ 45
3.2.3 Context Diagram ............................................................................. 46
3.2.4 Diagram Jenjang .............................................................................. 46
3.2.5 Entity Relationship Diagram ........................................................... 74
3.2.6 Struktur Tabel .................................................................................. 78
3.2.7 Perancangan Interface ..................................................................... 87
3.2.8 Perancangan Pengujian dan Evaluasi Aplikasi ............................... 94
xii
BAB IV IMPLEMENTASI DAN EVALUASI SISTEM ................................... 101
4.1 Implementasi Sistem (Konstruksi Sistem) ............................................ 101
4.1.1 Kebutuhan Sistem .......................................................................... 101
4.1.2 Penjelasan Implementasi Sistem .................................................. 103
4.2 Evaluasi Sistem ...................................................................................... 111
4.2.2 Analisis Hasil Uji Coba ................................................................. 129
BAB V PENUTUP .............................................................................................. 136
DAFTAR PUSTAKA ......................................................................................... 137
xiii
DAFTAR TABEL
Halaman
Tabel 3.1 Kebutuhan Pengguna Kepala Bagian AAK .......................................... 31
Tabel 3.2 Kebutuhan Pengguna Wakil Rektor 1 ................................................... 32
Tabel 3.3 Software Requirement Login ................................................................ 33
Tabel 3.4 Software Requirement Mengelola Data Master Waktu......................... 34
Tabel 3.5 Software Requirement Menentukan Ruang yang digunakan ................ 35
Tabel 3.6 Software Requirement Menentukan Sebaran Waktu ............................ 36
Tabel 3.7 Software Requirement Menentukan Penjaga ........................................ 37
Tabel 3.8 Software Requirement Menentukan Matakuliah ................................... 38
Tabel 3.9 Software Requirement Menentukan ruangan ........................................ 39
Tabel 3.10 Software Requirement Proses Penjadwalan ........................................ 40
Tabel 3.11 Software Requirement Membuat Laporan .......................................... 41
Tabel 3.12 Software Requirement Otorisasi Penjaga ............................................ 42
Tabel 3.13 Kebutuhan Aplikasi ............................................................................ 43
Tabel 3.14 Mata Kuliah dan Kelas ........................................................................ 62
Tabel 3.15 Sebaran waktu yang tersedia ............................................................... 62
Tabel 3.16 Ruangan yang digunakan .................................................................... 63
Tabel 3.17 Penanggung Jawab yang digunakan ................................................... 63
Tabel 3.18 Pengawas yang digunakan .................................................................. 63
Tabel 3.19 Aturan yang digunakan ....................................................................... 65
Tabel 3.20 Probabilitas setiap kromosom ............................................................. 66
Tabel 3.21 Struktur Tabel V_KARYAWAN ........................................................ 78
xiv
Tabel 3.22 Struktur Tabel V_FAKUL .................................................................. 79
Tabel 3.23 Struktur Tabel V_FAKULTAS ........................................................... 80
Tabel 3.24 Struktur Tabel V_MSTMK ................................................................. 80
Tabel 3.25 Struktur Tabel V_KUR ....................................................................... 81
Tabel 3.26 Struktur Tabel V_DEPARTMENT1 ................................................... 81
Tabel 3.27 Struktur Tabel V_RNG ....................................................................... 82
Tabel 3.28 Struktur Tabel MK_DIGUNAKAN.................................................... 82
Tabel 3.29 Struktur Tabel RUANG_DIGUNAKAN ............................................ 83
Tabel 3.30 Struktur Tabel DATA_HARI .............................................................. 83
Tabel 3.31 Struktur Tabel DATA_WAKTU ........................................................ 83
Tabel 3.32 Struktur Tabel DATA_SLOT_WAKTU ............................................ 84
Tabel 3.33 Struktur Tabel KULIAH ..................................................................... 84
Tabel 3.34 Struktur Tabel JADWAL .................................................................... 84
Tabel 3.35 Struktur Tabel PENJAGA ................................................................... 85
Tabel 3.36 Struktur Tabel V_MHS ....................................................................... 85
Tabel 3.37 Perancangan Uji Coba Halaman Mengecek Login Pengguna ............ 95
Tabel 3.38 Perancangan Uji Coba Halaman Penjaga yang Digunakan ................ 95
Tabel 3.39 Perancangan Uji Coba Tampilan Tambah Penjaga Diselenggarakan . 96
Tabel 3.40 Perancangan Uji Coba Tampilan Tambah Penjaga Diselenggarakan . 97
Tabel 3.41 Perancangan Uji Coba Halaman Tambah MK Diselenggarakan ........ 97
Tabel 3.42 Perancangan Uji Coba Halaman Hasil Jadwal .................................... 98
Tabel 3.43 Perancangan Uji Coba Halaman Ruangan yang Digunakan ............... 98
Tabel 3.44 Perancangan Uji Coba Halaman Sebaran Waktu ................................ 99
Tabel 3.45 Perancangan Uji Coba Halaman Proses Penjadwalan ........................ 99
xv
Tabel 3.46 Perancangan Uji Coba Halaman Otorisasi penjaga .......................... 100
Tabel 4.1 Hasil Uji Coba Halaman Mengecek Login Pengguna ........................ 112
Tabel 4.2 Hasil Uji Coba Halaman Menentukan MK yang Digunakan ............. 114
Tabel 4.3 Hasil Uji Coba Tampilan Tambah MK Diselenggarakan ................... 116
Tabel 4.4 Hasil Uji Coba Halaman Penjaga yang Digunakan ............................ 118
Tabel 4.5 Hasil Uji Coba Tampilan Tambah Penjaga Diselenggarakan ............. 120
Tabel 4.6 Perancangan Uji Coba Halaman Ruangan yang Digunakan ............... 123
Tabel 4.7 Hasil Uji Coba Halaman Sebaran Waktu ............................................ 124
Tabel 4.8 Hasil Uji Coba Halaman Proses Penjadwalan .................................... 125
Tabel 4.9 Hasil Uji Coba Halaman Proses Penjadwalan .................................... 127
Tabel 4.10 Hasil Uji Coba Halaman Proses Penjadwalan .................................. 128
xvi
DAFTAR GAMBAR
Halaman
Gambar 2.1 Ilustrasi representasi penyelesaian permasalahan dalam Algoritma
Genetika ................................................................................................................ 12
Gambar 2.2 Flowchart Algoritma Genetika secara umum ................................... 13
Gambar 2.3 Model Incremental ............................................................................ 19
Gambar 2.4 Elemen-elemen DFD dan Simbol (Fatta, 2007) ................................ 23
Gambar 2.5 Elemen-elemen ERD (Fatta, 2007) ................................................... 24
Gambar 3.1 Document flow proses membuat jadwal ............................................ 30
Gambar 3.2 Sitemap Aplikasi Penjadwalan Ujian ................................................ 45
Gambar 3.3 Contex Diagram Aplikasi Penjadwalan Ujian .................................. 46
Gambar 3.4 Diagram Jenjang Aplikasi Penjadwalan Ujian .................................. 47
Gambar 3.5 DFD Level 0 (Lanjutan) .................................................................... 49
Gambar 3.6 DFD Level 1 Melakukan Login untuk Pengguna .............................. 50
Gambar 3.7 DFD Level 1 Mengelola Data Hari dan Waktu ................................. 51
Gambar 3.8 DFD Level 1 Menentukan Sebaran Waktu ........................................ 52
Gambar 3.9 DFD Level 1 Menentukan Penjaga yang Digunakan. ....................... 53
Gambar 3.10 DFD Level 1 Otorisasi Penjaga ....................................................... 54
Gambar 3.11 DFD Level 1 Menentukan Mata Kuliah yang Digunakan ............... 55
Gambar 3.12 DFD Level 1 Menentukan Ruangan ................................................ 55
Gambar 3.13 DFD Level 1 Melakukan Penjadwalan. ........................................... 56
Gambar 3.14 DFD Level 2 Generate Penjadwalan. .............................................. 58
Gambar 3.15 DFD Level 2 Mengelola Data Waktu .............................................. 59
xvii
Gambar 3.16 DFD Level 2 Mengelola Hari .......................................................... 59
Gambar 3.17 Flowchart program .......................................................................... 60
Gambar 3.18 Flowchart Pengodean pembentukan kromosom ............................ 61
Gambar 3.19 Flowchart Seleksi ........................................................................... 68
Gambar 3.20 Flowchart Pindah Silang ................................................................ 69
Gambar 3.21 Flowchart Mutasi ........................................................................... 72
Gambar 3.22 CDM Aplikasi Penjadwalan Ujian .................................................. 76
Gambar 3.23 PDM Aplikasi Penjadwalan Ujian .................................................. 77
Gambar 3.24 Rancangan Halaman Login Wakil Rektor 1 .................................... 87
Gambar 3.25 Rancangan Halaman Menentukan MK yang Digunakan ................ 88
Gambar 3.26 Rancangan Halaman Login AAK .................................................... 88
Gambar 3.27 Rancangan Halaman Ruangan yang Digunakan ............................. 89
Gambar 3.28 Rancangan Tampilan Tambah Ruangan yang Digunakan .............. 89
Gambar 3.29 Rancangan Halaman Sesi Jam......................................................... 90
Gambar 3.30 Rancangan Halaman Sebaran Waktu .............................................. 90
Gambar 3.31 Rancangan Halaman Mata Kuliah yang Digunakan ....................... 91
Gambar 3.32 Rancangan Tampilan Tambah Mata Kuliah yang Digunakan ........ 92
Gambar 3.33 Rancangan Halaman Penjaga yang Digunakan ............................... 92
Gambar 3.34 Rancangan Tampilan Tambah Penjaga yang Digunakan ................ 93
Gambar 3.35 Rancangan Halaman Proses Penjadwalan ....................................... 94
Gambar 4.1 Halaman Login pengguna ............................................................... 104
Gambar 4.2 Halaman Utama Penjadwalan Ujian .............................................. 104
Gambar 4.3 Halaman Data Matakuliah yang Diselenggarakan. ........................ 105
Gambar 4.4 Tampilan Tambah Matakuliah Diselenggarakan. .......................... 105
xviii
Gambar 4.5 Halaman Menentukan Penanggung Jawab ..................................... 106
Gambar 4.6 Halaman Menentukan Pengawas ................................................... 106
Gambar 4.7 Tampilan Tambah Jumlah Jaga ...................................................... 107
Gambar 4.8 Halaman Ruangan yang Digunakan ............................................... 107
Gambar 4.9 Tampilan Tambah Ruangan yang Digunakan ................................. 108
Gambar 4.10 Halaman Sebaran Waktu ............................................................... 108
Gambar 4.11 Halaman Sebaran Waktu ............................................................... 109
Gambar 4.12 Halaman Proses Penjadwalan ...................................................... 110
Gambar 4.13 Halaman Hasil Jadwal ujian .......................................................... 111
Gambar 4.14 Halaman Otorisasi penjaga............................................................ 111
Gambar 4.15 Halaman Login pengguna ............................................................. 113
Gambar 4.16 Tampilan AAK ............................................................................. 113
Gambar 4.17 Tampilan Halaman Wakil Rektor 1 ............................................. 113
Gambar 4.18 Informasi “User atau Password Salah” ........................................ 114
Gambar 4.19 Halaman informasi data mata kuliah dipilih ................................ 115
Gambar 4.20 Halaman informasi data mata kuliah dipilih ................................ 115
Gambar 4.21 Halaman informasi data mahasiswa ............................................. 116
Gambar 4.22 Halaman informasi data mata kuliah yang tersedia ..................... 117
Gambar 4.23 Halaman informasi data mata kuliah yang tersedia ..................... 118
Gambar 4.24 Informasi data berhasil disimpan ................................................. 118
Gambar 4.25 Halaman informasi penanggung jawab dipilih ............................. 119
Gambar 4.26 Halaman informasi data pengawas dipilih ................................... 120
Gambar 4.27 Halaman informasi data penjaga yang tersedia ............................ 121
Gambar 4.28 Halaman informasi data penjaga yang tersedia ............................ 122
xix
Gambar 4.29 Informasi data berhasil disimpan ................................................. 122
Gambar 4.30 Tampilan halaman ruangan yang tersedia .................................... 123
Gambar 4.31 Informasi data berhasil disimpan ................................................. 124
Gambar 4.32 Tampilan halaman form yang sebaran waktu ................................ 125
Gambar 4.33 Tampilan informasi data berhasil disimpan ................................. 125
Gambar 4.34 adalah Tampilan halaman proses penjadwalan ............................. 126
Gambar 4.35 Tampilan informasi data berhasil diproses dan disimpan ............. 126
Gambar 4.36 Tampilan halaman proses penjadwalan ......................................... 128
Gambar 4.37 Tampilan informasi data berhasil diproses dan disimpan ............. 128
Gambar 4.38 Tampilan halaman hasil jadwal ujian ............................................ 129
Gambar 4.39 Tampilan informasi data hasil jadwal ujian excel ......................... 129
Gambar 4.40 Hasil uji coba pengujian kromosom .............................................. 130
Gambar 4.41 Hasil uji coba pengujian generasi.................................................. 131
Gambar 4.42 Hasil uji coba probabilitas pindah silang dan probabilitas mutasi 133
Gambar 4.43 Hasil uji coba dengan parameter sama .......................................... 134
Gambar 4.44 Hasil jadwal ujian .......................................................................... 135
xx
DAFTAR LAMPIRAN
Halaman
Lampiran 1 Uji coba dengan paramater ............................................................. 139
Lampiran 2 Parameter untuk uji coba proses penjadwalan ujian ....................... 140
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Perguruan tinggi merupakan institusi yang memiliki peran dan posisi
strategis dalam pencapaian tujuan pendidikan secara makro yang perlu melakukan
upaya perbaikan secara terus menerus untuk mewujudkan sumber daya manusia
yang berkualitas. Perguruan tinggi terdiri dari sejumlah fakultas/jurusan yang
menyelenggarakan pendidikan ilmiah/profesional dalam sejumlah ketentuan yang
telah ditetapkan. Keberadaan manusia sebagai sumber daya sangat penting dalam
suatu perguruan tinggi karena sumber daya manusia menunjang melalui karya,
bakat, kreativitas, dorongan, dan peran nyata. Tanpa adanya unsur manusia dalam
perguruan tinggi, tidak mungkin perguruan tinggi tersebut dapat bergerak dan
menuju yang diinginkan.
Perguruan tinggi memiliki berbagai macam kegiatan untuk menunjang
proses pendidikan, salah satunya adalah proses penjadwalan. Jadwal merupakan
pembagian waktu berdasarkan rencana pengaturan urutan kerja, daftar atau
rencana kegiatan dengan pembagian waktu pelaksanaan yang terperinci. Oleh
karena itu penjadwalan dapat diartikan sebagai proses, cara, perbuatan
menjadwalkan atau memasukkan dalam jadwal (Lee, 2000). Penjadwalan
berhubungan dengan penempatan jadwal yang tepat antara sumber daya dan
waktu untuk mencapai tujuan organisasi.
Institut Bisnis dan Informatika Stikom Surabaya merupakan perguruan
tinggi yang bergerak di bidang manajemen dan informatika atau yang disebut
2
dengan Stikom Surabaya. Stikom Surabaya mempunyai beberapa bagian yang
mengelola kegiatan pendidikan, salah satunya adalah Bagian Administrasi
Akademik dan Kemahasiswaan (AAK). Bagian AAK memiliki tanggung jawab
yaitu mengatur penjadwalan ujian dan penjadwalan ujian Institut Bisnis dan
Informatika Stikom Surabaya. Proses penjadwalan ujian dimulai dari proses
melihat mata kuliah yang terselenggara pada semester tersebut. Setelah itu
mengecek kapasitas ruangan, jumlah mahasiswa yang mengikuti ujian, serta sifat
dari ujian tersebut. Jika proses tersebut telah selesai dilakukan maka bagian AAK
melanjutkan ke proses penjadwalan. Selama ini bagian AAK memiliki
permasalahan dalam proses penjadwalan ujian. Bagian AAK kesulitan dalam
proses pengecekan ketersediaan ruangan terhadap jadwal ujian yang telah
dijadwalkan. Hal ini dikarenakan aplikasi yang ada tidak dapat melakukan proses
pengecekan ketersediaan ruangan terhadap jadwal ujian yang telah dijadwalkan.
Selain itu bagian AAK kesulitan dalam menjadwalkan pengawas ujian serta
mahasiswa yang mengikuti ujian. Hal ini dikarenakan setiap pengawas ujian
memiliki beban jaga ujian yang berbeda dan mahasiswa memiliki jatah jadwal
ujian maksimal dalam satu hari yaitu dua kali. Oleh karena itu bagian AAK harus
menyusun kembali jadwal ujian dengan cara mengecek kapasitas kelas dan jumlah
mahasiswa yang mengikuti ujian untuk dipindahkan agar jumlah kapasitas kelas
terpenuhi serta menyesuaikan beban jaga dosen dengan jadwal ujian yang sudah
dijadwalkan dengan menggunakan aplikasi Microsoft Excel. Dampak dari
kendala-kendala tersebut membuat bagian AAK membutuhkan waktu yang lama
untuk menyusun jadwal ujian.
3
Masalah-masalah penjadwalan yang terjadi di Institus Bisnis dan
Informatika Stikom Surabaya dapat diminimalkan dengan perhitungan
penjadwalan yang tepat dan mempertimbangkan seluruh aspek yang berkaitan
dengan kegiatan penjadwalan ujian. Dengan adanya masalah penjadwalan ujian
yang sudah dijelaskan di atas, maka akan dibahas bagaimana memecahkan
masalah yang ada dalam penjadwalan dengan menggunakan suatu metode
algoritma yaitu Algoritma Genetika, karena algoritma genetika ini dapat dipakai
untuk mendapatkan solusi yang tepat untuk masalah memberikan hasil akhir dari
satu variabel atau multi variabel. Algoritma genetika merupakan algoritma
pencarian yang berdasarkan pada mekanisme seleksi alami dan genetik alami,
keunikannya adalah mengikuti pola evolusi makhluk hidup dan sering
menggunakan bilangan-bilangan yang dihasilkan secara acak. Dari bilangan-
bilangan yang dihasilkan acak, tetapi sesuai aturan-aturan yang ada, dapat
dihasilkan suatu solusi yang sama atau mendekati target yang ingin dicapai
(Kusumadewi, 2003). Algoritma Genetika dapat digunakan untuk kebutuhan-
kebutuhan penyusunan jadwal yang memenuhi kondisi syarat-syarat dan batasan-
batasan yang telah ditentukan
1.2 Perumusan Masalah
Berdasarkan latar belakang yang telah diuraikan, maka diperoleh suatu
rumusan masalah yakni bagaimana merancang dan membangun aplikasi
penjadwalan ujian dengan menggunakan metode Algoritma Genetika pada Institut
Bisnis dan Informatika Stikom Surabaya
4
1.3 Pembatasan Masalah
Agar pembahasan dalam penelitian ini nantinya terfokus dan tidak
terlalu meluas, maka diperlukan batasan-batasan mengenai permasalahan di atas,
yakni:
1. Aplikasi yang dibangun berbasis web
2. Semua dosen dan staf karyawan bersedia menjadi penanggung jawab dan
pengawas kapan saja dan di ruang mana pun
3. Jumlah dosen dan staf karyawan untuk menjaga ujian ditentukan oleh AAK
4. Maksimal jumlah jadwal penanggung jawab dan pengawas ditentukan oleh
AAK
5. Ujian yang dijadwalkan hanya ujian yang tertulis
1.4 Tujuan Penelitian
Sesuai dengan permasalahan yang telah dipaparkan maka tujuan yang
ingin dicapai adalah merancang dan membangun aplikasi penjadwalan ujian
dengan menggunakan metode Algoritma Genetika pada Institus Bisnis dan
Informatika Stikom Surabaya
1.5 Manfaat Penelitian
Adapun manfaat dari aplikasi yang akan dibangun nantinya adalah dapat
membantu dan mempermudah dalam penyusunan penjadwalan ujian yang disusun
oleh bagian AAK Surabaya.
5
1.6 Sistematika Penulisan
Sistematika penulisan laporan penelitian ini digunakan untuk
menjelaskan penulisan laporan per bab. Di dalam penulisan laporan penelitian ini
secara sistematika diatur dan disusun dalam lima bab, yaitu pendahuluan,
landasan teori, analisis dan perancangan sistem, implementasi dan evaluasi sistem,
dan penutup. Sistematika penulisan penelitian dapat dijelaskan pada alinea di
bawah ini.
Pada bab pertama pendahuluan membahas tentang latar belakang
masalah dan penjelasan permasalahan secara umum, perumusan masalah serta
batasan masalah yang dibuat, tujuan dari pembuatan laporan penelitian, dan
sistematika penulisan laporan ini. Berdasarkan rumusan masalah dan batasan
masalah disusun tujuan dari penelitian yaitu merancang dan membangun aplikasi
penjadwalan ujian menggunakan algoritma genetika. Selain itu bab ini juga
menjelaskan manfaat yang dapat diberikan dari pembuatan aplikasi. Pada akhir
bab dijelaskan tentang sistematika penulisan laporan penelitian.
Pada bab kedua landasan teori membahas mengenai teori-teori yang
berkaitan dalam menyelesaikan laporan penelitian ini. Teori-teori yang digunakan
dalam menyelesaikan laporan ini yaitu konsep tentang penjadwalan, sistem,
aplikasi, algoritma genetika untuk memecahkan masalah yang ada dalam
penjadwalan, analisis dan perancangan sistem, siklus hidup pengembangan
sistem, model waterfall, web, dan metode pengujian sistem.
Pada bab ketiga analisis dan perancangan sistem, menjelaskan tentang
cara menganalisis dan merancang sistem. Bab ini berisi penjelasan tentang tahap-
tahap yang dikerjakan dalam penyelesaian Tugas Akhir yang terdiri dari tahap
6
awal dan sebagian tahap pengembangan. Pada tahap awal terdapat langkah
wawancara, observasi, identifikasi dan analisis permasalahan, dan studi pustaka.
Perancangan sistem pada penelitian ini menggunakan perancangan sistem secara
terstruktur. Komponen dari perancangan sistem secara terstruktur yaitu diagram
konteks, diagram jenjang proses, data flow diagram, entity relationship diagram
terdiri dari conceptual data model dan physical data model, interface design,
desain input dan output.
Pada bab keempat implementasi dan evaluasi sistem dijelaskan tahapan
dari sistem yang dibuat. Pada bab ini berisikan kebutuhan sistem, kebutuhan
perangkat lunak, penjelasan proses dan hasil evaluasi dari sistem yang dibuat.
Pada bab kelima kesimpulan dan saran berisi kesimpulan penelitian dan
saran. Kesimpulan menjelaskan hasil dari evaluasi sistem, sedangkan saran
menjelaskan tentang masukan terhadap sistem untuk proses pengembangan yang
lebih lanjut.
7
7
BAB II
LANDASAN TEORI
2.1 Penjadwalan
Penjadwalan (scheduling) merupakan salah satu kegiatan penting dalam
perusahaan. Penjadwalan adalah pengaturan waktu dari suatu kegiatan operasi,
yang mencakup kegiatan mengalokasikan fasilitas, peralatan maupun tenaga kerja,
dan menentukan urutan pelaksanaan bagi suatu kegiatan operasi (Herjanto, 2007),
Sasaran utama penjadwalan adalah:
1. Adil, tidak ada proses yang tidak kebagian layanan
2. Efisien, pemroses dijaga tetap bekerja agar tidak ada waktu yang terbuang sia-
sia
3. Waktu tanggap, termasuk didalamnya sistem waktu interaktif dan sistem waktu
nyata
4. Turn around time, waktu yang diperlukan untuk serangkaian satu proses
5. Throughput jumlah kerja yang dapat dilakukan dalam satu satuan waktu
Dalam penjadwalan mempunyai tiga macam penjadwalan dan strategi
penjadwalan yang nanti fungsinya mengetahui termasuk dalam golongan mana
penjadwalan ujian tersebut. Adapun tiga macam penjadwalan dan strategi
penjadwalan, yaitu:
1. Penjadwalan jangka pendek, sasaran utama untuk memaksimalkan kinerja
untuk memenuhi satu kumpulan kriteria yang diharapkan
2. Penjadwalan jangka menengah, penanganan terhadap proses swapping.
3. Penjadwalan jangka panjang, biasanya menangani proses bitch.
8
4. Penjadwalan nonpreemptive, begitu proses diberi jatah waktu maka pemroses
tidak dapat diambil alih oleh proses lain sampai proses itu selesai.
5. Penjadwalan preemptive, proses diberi jatah waktu tetapi pemroses dapat
disela oleh proses lain
2.2 Penjadwalan Ujian
Masalah penjadwalan dapat diklasifikasikan ke dalam dua kategori
utama, yaitu masalah penjadwalan ujian dan masalah penjadwalan ujian
(Gunawan, Ong dan Ng, 2004). Penjadwalan ujian merupakan proses penentuan
ujian dan berapa jadwal yang diselenggarakan pada sesmester yang bersangkutan.
Biasanya penjadwalan ujian ini dilaksanakan setelah adanya kuliah yang
berlangsung. Tujuan utama dari penjadwalan ujian adalah untuk menentukan dan
mengatur jadwal ujian yang akan diselenggarakan pada saat Ujian Tengah
Semester (UTS) dan Ujian Akhir Semester (UAS). Penjadwalan ujian salah satu
kegiatan yang sangat penting untuk dapat terlaksananya sebuah proses ujian yang
baik di perguruan tinggi.
2.3 Aplikasi
Definisi aplikasi adalah penggunaan atau penerapan suatu konsep yang
menjadi suatu pokok pembahasan. Aplikasi dapat diartikan juga sebagai program
komnputer yang dibuat untuk menolong manusia dalam melaksanakan tugas
tertentu (Noviansyah, 2008). Jadi aplikasi bisa diartikan sebagai program
komputer yang ditulis dalam suatu bahasa pemrograman dan dipergunakan untuk
menyelesaikan masalah tertentu. Aplikasi software yang dirancang untuk suatu
tugas khusus dapat dibedakan menjadi dua jenis, yaitu :
9
1. Aplikasi software spesialis, program dengan dokumentasi tergabung yang
dirancang untuk menjalankan tugas tertentu.
2. Aplikasi software paket, suatu program dengan dokumentasi tergabung yang
dirancang untuk jenis masalah tertentu.
2.4 Aplikasi Web
Menurut Simamarta (2010), aplikasi web adalah sebuah sistem informasi
yang mendukung interaksi pengguna melalui antarmuka berbasis web. Jadi
aplikasi web adalah suatu aplikasi yang diakses dan berjalan di atas platform
browser dengan melalui internet atau intranet. Aplikasi web juga merupakan suatu
aplikasi perangkat lunak komputer yang dikodekan dalam bahasa yang di dukung
oleh browser yaitu seperti HTML, JavaScript, AJAX, Java, dan lain-lain. Aplikasi
web memiliki beberapa kemudahan dan keuntungan antara lain yaitu:
a. Bisa diakses dari mana saja. Karena aplikasi terpasang di server, maka aplikasi
tersebut bisa diakses dari mana saja dan dengan komputer apa saja.
b. Bisa digunakan pada sistem operasi apa pun (Multi platform). Karena berbasis
internet/intranet dan diakses melalui browser, maka aplikasi tersebut bisa
diakses dengan sistem operasi apa pun.
c. Aplikasi yang diperlukan hanyalah browser (Mozilla Firefox, Internet Explorer
maupun browser lainnya), sehingga tidak perlu memasang program lain untuk
menggunakan aplikasi web ini.
d. Selalu mendapatkan versi terbaru dari aplikasi. Karena aplikasi tersebut
terpasang di server intranet/internet, perusahaan pembuat aplikasi bisa
memperbarui aplikasinya terus-menerus. Saat mengakses aplikasi pasti yang
didapatkan adalah aplikasi versi terbaru. Tidak perlu lagi melakukan upgrade.
10
2.5 Algoritma Genetika
Algoritma Genetika merupakan metode heuristic adaptif yang memiliki
dasar pemikiran atau gagasan untuk proses seleksi alam dan genetika berdasarkan
penelitian Charles Darwin. Dengan kata lain pencarian solusi suatu masalah
dengan Algoritma Genetika akan terus berevolusi (Kusumadewi dan Purnomo,
2005). Algoritma ini didasarkan pada proses genetika yang ada dalam makhluk
hidup yaitu perkembangan generasi dalam sebuah populasi yang alami, secara
lambat laun mengikuti prinsip seleksi alam (siapa yang kuat, dia yang bertahan).
Dengan meniru teori evolusi ini, Algoritma Genetika dapat digunakan untuk
mencari solusi permasalahan-permasalahan yang ada dalam dunia nyata.
Algoritma Genetika pertama kali ditemukan dan mulai dirintis pada
tahun 1960 oleh John Holland dari University of Michigan. Setiap masalah yang
berbentuk adaptasi (alam maupun buatan) dapat diformulasikan dalam teknologi
genetika. Keuntungan penggunaan Algoritma Genetika sangat jelas terlihat dari
kemudahan implementasi dan kemampuannya untuk menentukan solusi seperti:
a. Ruang masalah sangat besar, kompleks, dan sulit dipahami.
b. Kurang atau bahkan tidak ada pengetahuan yang menandai untuk
mempresentasikan masalah ke dalam ruang pencarian yang lebih sempit.
c. Tidak tersedianya analisis matematika yang memadai
d. Ketika metode-metode konvensional sudah tidak mampu menyelesaikan
masalah yang dihadapi.
e. Solusi yang diharapkan tidak harus paling optimal, tetapi cukup bisa diterima.
f. Terdapat batasan waktu.
11
Beberapa definisi penting yang perlu diperhatikan dalam mendefinisikan
individu untk membangun penyelesaian permasalahan dengan algoritma adalah
sebagai berikut :
a. Genotype (Gen), merupakan sebuah nilai yang menyatakan satuan dasar yang
membentuk suatu arti tertentu dalam satu kesatuan gen yang dinamakan
kromosom. Dalam Algoritma Genetika, gen ini bisa berupa nilai biner, float,
integer maupun karakter, atau kombinatorial.
b. Allele, merupakan nilai yang berada dalam gen.
c. Kromosom, merupakan gabungan dari gen-gen yang membentuk nilai
tertentu.
d. Individu, menyatakan satu nilai atau keadaan yang menyatakan salah satu
solusi yang mungkin dari permasalahan yang diangkat.
e. Populasi, merupakan sekumpulan individu yang akan diproses bersama
dalam satu siklus proses evolusi.
f. Generasi, menyatakan satu siklus proses evolusi atau satu iterasi di dalam
Algoritma Genetika.
g. Seleksi, merupakan proses untuk mendapatkan calon individu yang baik.
h. Crossover, merupakan proses pertukaran atau kawin silang gen-gen dari
induk tertentu.
Untuk lebih jelasnya diilustrasikan perbedaan istilah-istilah di atas pada gambar
2.1. Sebelum memanfaatkan Algoritma Genetika, hal yang harus dilakukan
adalah menyandikan solusi dari masalah yang diberikan ke dalam kromosom pada
Algoritma Genetika dan membandingkan nilai fitness-nya. Sebuah representasi
Algoritma Genetika yang efektif dan nilai fitness yang bermakna adalah kunci
12
keberhasilan dalam aplikasi genetika. Algoritma Genetika bekerja dengan
menggunakan pendekatan random, dan nilai-nilai yang dihasilkan adalah nilai
random. Pada kasus penjadwalan ini dengan model genetika ditujukan untuk
mendapatkan kombinasi yang tepat antara variabel dosen, waktu, dan ruang.
Populasi
Gambar 2.1 Ilustrasi representasi penyelesaian permasalahan dalam Algoritma
Genetika
Individu
Individu .
.
.
Individu
Allele
Gen Kromosom
1
Allele
Gen Kromosom
1
Allele
Gen Kromosom
1
13
Semakin banyak iterasi yang dilakukan, maka waktu yang dibutuhkan
akan semakin lama. Beberapa hal yang harus dilakukan dalam Algoritma
Genetika adalah sebagai berikut:
a. Mendefinisikan individu, dimana individu menyatakan salah satu solusi
(penyelesaian) yang mungkin dari permasalahan yang diangkat.
Mulai
Input Data
Pengkodean
Prosedur Inisialisasi
Evaluasi Fitness
Seleksi
Fitness Terbaik ?
Crossover
Mutasi
tidak
Kromosom terbaik
ya
Hasil
Selesai
Gambar 2.2 Flowchart Algoritma Genetika secara umum
14
b. Mendefinisikan nilai fitness, yang merupakan ukuran baik atau tidaknya
sebuah individu.
c. Menentukan proses pembangkitan populasi awal, hal ini biasanya dilakukan
dengan menggunakan pembangkitan secara acak.
d. Menentukan proses seleksi yang akan digunakan.
e. Menentukan proses perkawinan silang dan mutasi gen yang akan digunakan.
Untuk lebih jelasnya dapat dilihat pada gambar flowchart algoritma genetika
secara umum yaitu pada gambar 2.2.
Komponen-komponen utama Algoritma Genetika yaitu:
1. Teknik Pengodean
2. Membangkitkan Populasi Awal
3. Seleksi
4. Pindah Silang (Crossover)
5. Mutasi
2.5.1 Teknik Pengodean
Teknik pengodean adalah bagaimana mengodekan gen dari kromosom,
dimana gen merupakan bagian dari kromosom dan satu gen biasanya akan
mewakili satu variabel. Gen dapat direpresentasikan dalam bentuk bit, bilangan
real, daftar aturan, elemen program dan represesntasi lainnya yang dapat
diimplementasikan untuk operator genetika. Dengan demikian kromosom dapat
direpresentaikan dengan menggunakan :
a. String bit : 100110 dst.
b. Array bilangan real : 65.65,-67.99,76.44 dst.
c. Elemen permutasi : E2, E6, E5 dst.
15
d. Elemen program : pemrograman genetika
e. Struktur lainnya
2.5.2 Membangkitkan Populasi awal
Populasi awal dibangun secara acak, sedangkan populasi berikutnya
merupakan hasil evolusi kromosom-kromosom melalui iterasi yang disebut
dengan generasi (Hendarto, 2002). Membangkitkan populasi awal adalah proses
membangkitkan sejumlah individu secara acak melalui prosedur tertentu. Ukuran
untuk populasi tergantung pada masalah yang akan diselesaikan dan jenis operator
genetika yang akan diimplementasikan. Setelah ukuran populasi ditentukan
kemudian dilakukan pembangkitan populasi awal.
2.5.3 Seleksi
Seleksi digunakan untuk memilih individu-individu mana saja yang akan
dipilih untuk proses kawin silang dan mutasi. Seleksi juga digunakan untuk
mendapatkan calon induk yang baik. Induk yang baik akan menghasilkan
keturunan yang baik. Semakin tinggi nilai fitness suatu individu semakin besar
kemungkinan untuk terpilih. Nilai fitness diperoleh dari fungsi fitness yang
ditentukan oleh nilai penalty. Penalty tersebut menunjukkan jumlah pelanggaran
kendala pada suatu kromosom. Semakin tinggi nilai fitness akan semakin besar
kemungkinan kromosom tersebut terpilih ke generasi berikutnya. Jadi nilai
penalty berbanding terbalik dengan nilai fitness, semakin kecil nilai penalty
(jumlah pelanggaran) semakin besar nilai fitness nya. Berikut fungsi fitness secara
umum.
16
(2.1)
Nilai fitness ini yang nantinnya akan digunakan pada tahap-tahap seleksi
berikutnya. Terdapat beberapa metode seleksi, disini hanya dibahas dua metode
yaitu mesin roullete, dan turnamen.
a. Seleksi dengan mesin roulette
Metode seleksi mesin roulette ini merupakan metode yang paling sederhana
dan sering juga dikenal dengan nama stochastic sampling with replacement.
Cara kerja metode ini adalah sebagai berikut :
1. Dihitung nilai fitness dari masing-masing individu (fi, dimana I adalah
individu ke-1 s/d ke-n)
2. Dihitung total fitness semua individu
3. Dihitung probabilitas masing-masing individu
4. Dari probabilitas tersebut, dihitung jatah masing-masing individu pada
angka 1 sampai 100
5. Dibangkitkan bilangan random antara 1-100
6. Dari bilangan random yang dihasilkan, ditentukan individu mana yang
terpilih dalam proses seleksi
b. Seleksi dengan turnamen
Pada metode seleksi turnamen, ditetapkan suatu nilai tour untuk individu-
individu yang dipilih secara random dari suatu populasi. Individu-individu
yang terbaik dalam kelompok ini akan diseleksi sebagai induk. Parameter yang
digunakan pada metode ini adalah ukuran yang bernilai antara 2 sampai N
(jumlah individu dalam suatu populasi).
17
2.5.4 Pindah Silang (Crossover)
Pindah silang (crossover) adalah operator dari Algoritma Genetika yang
melibatkan dua induk untuk membentuk kromosom baru. Pindah silang
menghasilkan titik baru dalam ruang pencarian yang siap untuk diuji. Operasi ini
tidak selalu dilakuan pada semua individu yang ada. Individu dipilih secara acak
untuk dilakukan crossing. Jika pindah silang tidak dilakukan, maka nilai dari
induk akan diturunkan kepada keturunan. Prinsip dari pindah silang ini adalah
melakukan operasi (pertukaran, aritmatika) pada gen-gen yang bersesuaian dari
dua induk untuk menghasilkan individu baru. Proses crossover dilakukan pada
setiap individu dengan probabilitas crossover yang ditentukan.
a. One point crossover
Sebuah titik crossover dipilih, selanjutnya string biner mulai dari awal
kromosom sampai dengan titik tersebut disalin dari salah satu orang tua ke
keturunannya, kemudian sisa bit keturunan disalin dari orangtua yang kedua.
Contoh : 11001011 + 11011111 = 11001111
b. Two point crossover
Dua titik crossover dipilih, selanjutnya string biner mulai dari awal kromosom
sampai dengan titik crossover pertama disalin dari salah satu orangtua ke
keturunannya kemudian mulai dari titik crossover pertama sampai dengan titik
kedua disalin dari orangtua kedua. Sisanya disalin dari orangtua pertama.
Contoh : 11001011 + 11011111 = 11011111
2.5.5 Mutasi
Pada Algoritma Genetika, operator berikutnya adalah mutasi gen.
Operator ini berperan unutk menggantikan gen yang hilang dari populasi akibat
18
proses seleksi yang memungkinkan munculnya kembali gen yang tidak muncul
pada inisialisasi populasi. Kromosom anak dimutasi dengan menambahkan nilai
random yang sangat kecil (ukuran langkah mutasi), dengan probabilitas yang
rendah. Peluang mutasi (pm) didefinisikan sebagai presentasi dari jumlah total gen
pada populasi yang mengalami mutasi. Jika peluang mutasi terlalu kecil, banyak
gen yang mungkin berguna tidak pernah dievaluasi. Tetapi bila peluang mutasi ini
terlalu besar, maka akan terlalu banyak gangguan acak, sehingga anak akan
kehilangan kemiripan dengan induknya. Kromosom hasil mutasi harus diperiksa,
apakah masih berada pada domain solusi, dan bila perlu bisa dilakukan perbaikan.
Cara sederhana untuk mendapatkan mutasi biner adalah dengan
mengganti satu atau beberapa nilai gen dari kromosom. Langkah-langkahnya
adalah sebagai berikut :
1. Hitung jumlah gen pada populasi (panjang kromosom dikalikan dengan ukuran
populasi)
2. Pilih secara acak gen yang akan dimutasi
3. Tentukan kromosom dari gen terpilih untuk dimutasi
4. Ganti nilai gen(0 ke 1,atau 1 ke 0) dari kromosom yang akan dimutasi tersebut
Contoh : 1001101 1101101
2.6 Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC) merupakan sebuah rangkaian
proses hidup dari sebuah perangkat lunak, mulai dari analisis hingga sebuah
perangkat lunak tidak terpakai lagi. Perangkat lunak tersebut dinyatakan hidup
kembali dalam sebuah revisi atau pengembangan baru. Bentuk SDLC yang
digunakan adalah model incremental.
19
Increment # 1
Delivery of 1st
increment
Communication
Planning
Modelling (analysis, design)
Construction (code, test)
Deployment (delivery, feedback)
Increment # 2
Increment # n
Delivery of 2nd
increment
Delivery of nth
increment
S
oft
wa
re
Fu
nct
ion
alit
y
an
d
Fe
atu
res
Project Calender
Time
2.6.1 Incremental
Model incremental (model penambahan sedikit demi sedikit) merupakan
suatu model proses yang dirancang untuk menghasilkan perangkat lunak dengan
teknik sedikit demi sedikit. Gambar 2.3 menunjukkan tahapan umum dari model
Incremental. Model ini disebut dengan incremental karena hasil pertama
seringkali berupa produk inti (core product), yaitu bahwa spesifikasi kebutuhan
dasar perangkat lunak telah ada, tetapi fitur-fitur tambahan tetap belum
terselesaikan (Pressman, 2015).
Gambar 2.3 Model Incremental
Model incremental melakukan pendekatan secara sistematis dan urut
mulai dari level kebutuhan sistem perangkat lunak yaitu tahap communication,
20
planning, modeling, construction dan deployment Berikut ini adalah penjelasan
dari tahap-tahap yang dilakukan di dalam model incremental (Pressman, 2015) :
1. Communication (komunikasi)
Langkah ini merupakan analisis terhadap kebutuhan software, dan tahap untuk
mengadakan pengumpulan data dengan melakukan pertemuan dengan
customer, maupun mengumpulkan data-data tambahan baik yang ada di jurnal,
artikel, maupun dari internet.
2. Planning (perencanaan)
Proses planning merupakan lanjutan dari proses communication (analysis
requirement). Tahapan ini menggambarkan tugas-tugas teknis yang dilakukan,
sumber daya yang dibutuhkan, produk yang harus dihasilkan, dan jadwal-
jadwal kerja termasuk rencana yang akan dilakukan.
3. Modeling (pemodelan)
Proses modeling ini akan menerjemahkan syarat kebutuhan-kebutuhan menjadi
sebuah perancangan software yang dapat diperkirakan sebelum dibuat coding.
Proses ini berfokus pada rancangan struktural data, arsitektur software,
representasi interface, dan detail (algoritma) prosedural.
4. Construction (konstruksi)
Construction merupakan proses membuat kode. Coding atau pengkodean
merupakan penerjemahan desain dalam bahasa yang bisa dikenali oleh
komputer. Programmer akan menerjemahkan transaksi yang diminta oleh user.
Tahapan inilah yang merupakan tahapan secara nyata dalam mengerjakan suatu
software, artinya penggunaan komputer akan dimaksimalkan dalam tahapan
ini. Setelah pengkodean selesai maka akan dilakukan testing terhadap
21
perangkat lunak yang telah dibuat tadi. Tujuan testing adalah menemukan
kesalahan-kesalahan terhadap perangkat lunak tersebut untuk kemudian bisa
diperbaiki.
5. Deplyoment (pengoperasian)
Tahapan ini bisa dikatakan akhir dalam pembuatan sebuah software atau
sistem. Setelah melakukan analisis, desain dan pengkodean maka sistem
perangkat lunak yang sudah jadi akan digunakan oleh user. Kemudian software
yang telah dibuat harus dilakukan pemeliharaan secara berkala.
2.6.2 Analisis Sistem
Definisi analisis sistem menurut Fatta (2007), adalah bagaimana
memahami dan menspesifikasi dengan detail apa yang harus dilakukan oleh
sistem. Menurut Hartono (2005), analisis sistem didefinisikan sebagai penguraian
dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponennya
dengan maksud untuk mengidentifikasikan dan mengevaluasi permasalahan-
permasalahan, kesempatan-kesempatan, hambatan-hambatan yang terjadi dan
kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-
perbaikannya. Tahap ini merupakan tahap yang kritis dan sangat penting, karena
kesalahan dalam tahap ini menyebabkan kesalahan pada tahap selanjutnya. Tugas
utama dari menganalisis sistem meliputi:
1. Memberikan pelayanan kebutuhan informasi kepada fungsi manajerial di
dalam pengendalian pelaksanaan kegiatan operasional perusahaan.
2. Membantu para pemngambil keputusan.
3. Mengevaluasi sistem yang telah ada.
22
4. Merumuskan tujuan yang ingin dicapai berupa pengolahan data maupun
pembuatan laporan baru.
5. Menyusun suatu tahap rencana pengembangan sistem.
2.6.3 Perancangan Sistem
Definisi perancangan sistem menurut Fatta (2007), adalah spesifikasi
umum dan terinci dari pemecahan masalah berbasis komputer yang telah dipilih
selama tahap analisis. Menurut Hartono (2005), desain sistem adalah
penggambaran, perencanaan dan pembuatan sketsa atau pengaturan dari beberapa
elemen yang terpisah dari suatu kesatuan yang utuh dan berfungsi. Berdasarkan
dua definisi perancangan di atas maka dapat disimpulkan bahwa perancangan
adalah penggambaran, perencanaan dan pembuatan sketsa yang kemudian
diterjemahkan ke dalam sebuah konsep rancangan sebagai pemecahan masalah
berbasis komputer yang telah dipilih selama tahap analisis.
2.6.4 Pemodelan Proses
Menurut Fatta (2007), pemodelan proses menggambarkan aktivitas yang
dilakukan dan data dapat berpindah di antara aktivitas-aktivitas itu. Cara yang
populer untuk merepresentasikan proses model adalah dengan menggunakan data
flow diagram (DFD). Ada empat elemen yang menyusun suatu DFD, yaitu proses,
data flow, data store dan external entity. Masing-masing elemen akan diberi
simbol tertentu untuk membedakan satu dengan yang lainnya. Ada beberapa
metode untuk menggambarkan elemen-elemen tersebut, untuk lebih jelas dapat
dilihat pada Gambar 2.4.
23
Gambar 2.4 Elemen-elemen DFD dan Simbol (Fatta, 2007)
2.6.5 Pemodelan Data
Menurut Fatta (2007), model data adalah cara formal untuk
menggambarkan data yang digunakan dan diciptakan dalam suatu sistem bisnis.
Model data terbagi atas model data logika dan model data fisik. Model data logika
menunjukkan pengaturan data tanpa mengindikasikan data tersebut disimpan,
dibuat dan dimanipulasi, sedangkan data fisik menunjukkan data sebenarnya
disimpan dalam database atau file. Salah satu cara pemodelan data adalah dengan
entity relationship diagram (ERD). ERD adalah gambar atau diagram yang
menunjukkan informasi dibuat, disimpan dan digunakan dalam sistem. ERD
digunakan untuk menunjukkan aturan-aturan bisnis yang ada pada sistem
informasi. ERD juga menggunakan simbol-simbol khusus untuk menggambarkan
elemen-elemen ERD. Simbol-simbol yang digunakan dalam ERD dapat dilihat
pada Gambar 2.5 di atas.
24
Gambar 2.5 Elemen-elemen ERD (Fatta, 2007)
2.6.6 Database
Menurut Raharjo (2011), database adalah sebagai kumpulan data yang
terintegrasi dan diatur sedemikian rupa sehingga data tersebut dapat dimanipulasi,
diambil, dan dicari secara cepat. Selain berisi data, database juga berisi metadata.
Metadata adalah data yang menjelaskan tentang struktur dari data itu sendiri.
Database memiliki beberapa model, diantaranya adalah model relasional. Dalam
model relasional, tabel-tabel yang terdapat dalam suatu database idealnya harus
saling berelasi. Tabel merupakan suatu entitas yang tersusun atas kolom dan baris.
Dalam dunia database, kolom disebut field dan baris disebut record.
25
2.7 Testing dan Implemetasi
Testing dan implementasi yaitu tahap mendemonstrasikan dan
menjalankan sistem perangkat lunak yang telah selesai dibuat, apakah sudah
sesuai dengan kebutuhan yang telah dispesifikasikan. Tahapan ini tertuang dalam
suatu dokumen Test Plan, yang dimulai dari membuat Software Testing
fundamentals yang berisi tentang penjelasan penting mengenai terminology
testing. Selanjutnya merancang Test Levels yang terbagi antara target pengetesan
dan objektif dari pengetesan. Pada tahap berikutnya adalah mendefinisikan Test
Techniques, yaitu tentang bagaimana teknik yang digunakan termasuk dasar-dasar
pengetesan berdasarkan intuisi dan pengalaman serta teknik pengetesan secara
teknik coding, teknik kesalahan, teknik penggunaan, dan teknik terkait lainnya.
Tahap selanjutnya adalah mendefinisikan Test – Related Measures, yaitu ukuran-
ukuran pencapaian testing yang telah dilakukan untuk kemudian dievaluasi
kembali. Tahap terakhir adalah mendefinisikan test Process yang berisi tentang
aktivitas testing. (Bertolino and Marchetti, 2004).
Menurut Fatta (2007), pengujian unit digunakan untuk menguji setiap
modul untuk menjamin setiap modul menjalankan fungsinya dengan baik. Ada 2
metode untuk melakukan unit testing, yaitu:
1. Black Box Testing
Terfokus pada unit program yang memenuhi kebutuhan (requirement) yang
disebutkan dalam spessifikasi. Pada black box testing, cara pengujian hanya
dilakukan dengan menjalankan atau mengeksekusi unit atau modul, kemudian
diamati apakah hasil dari unit itu sesuai dengan proses bisnis yang diinginkan.
2. White Box Testing
26
White box testing adalah cara pengujian dengan melihat ke dalam modul untuk
meneliti kode-kode program yang ada, dan menganalisis terdapat kesalahan
atau tidak.
27
BAB III
ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini dijelaskan tentang analisis dan perancangan dari aplikasi
yang akan dibuat, yaitu Rancang Bangun Aplikasi Penjadwalan Ujian di Institut
Bisnis dan Informatika Stikom Surabaya dengan Menggunakan Algoritma
Genetika.
3.1 Analisis Sistem
Tahap analisis sistem ini terdiri dari beberapa proses, yaitu proses
identifikasi dan analisis permasalahan, serta penentuan kebutuhan dari perangkat
lunak. Kumpulan proses tersebut merupakan langkah awal untuk membuat sebuah
rancangan dasar dari sebuah aplikasi atau perangkat lunak yang tepat guna.
3.1.1 Tahapan Komunikasi
Pada tahap komunikasi, dilakukan proses observasi dan wawancara.
Dalam penelitian ini dibutuhkan data dan informasi dari beberapa narasumber
terpercaya, oleh karena itu dibutuhkan tahapan wawancara untuk mendapatkan
data dan informasi yang valid untuk menunjang penelitian ini. Kepala bagian
Administrasi Akademik dan Kemahasiswaan (AAK) di Institut Bisnis dan
Informatika Stikom Surabaya dipilih karena bagian tersebut yang mengelola
proses akademik. Pada proses wawancara dilakukan dengan cara melakukan
proses tanya jawab kepada Kepala bagian AAK yang berfungsi untuk
mencocokkan data dan informasi dari hasil observasi. Selain itu proses wawancara
juga berfungsi untuk menanyakan beberapa hal yang tidak didapat dari hasil
28
observasi. Setelah melakukan identifikasi dan analisis permasalahan yang telah
dilakukan, maka dapat disusun analisis bisnis, analisis kebutuhan pengguna dan
analisis kebutuhan fungsional.
A Analisis Bisnis
Setelah dilakukan tahap komunikasi, selanjutnya dilakukan analisis
bisnis meliputi identifikasi masalah, identifikasi pengguna identifikasi data,
identifikasi fungsi.
1. Identifikasi Masalah
Setelah melakukan observasi dan wawancara langsung dengan bagian
Administrasi Akademik dan Kemahasiswaan (AAK) di Institut Bisnis dan
Informatika Stikom Surabaya, terdapat beberapa permasalahan yang ada maka
penelitian mengangkat satu permasalahan yaitu mengenai penjadwalan ujian.
Mengacu pada hasil wawancara yang telah dilakukan, dapat diketahui beberapa
proses. Proses ini dimulai dari pihak staff akademik melihat daftar mata kuliah
yang berlangsung, kemudian mencari daftar penjaga yang sudah di
rekomendasikan. Pihak akademik membuat daftar penjaga untuk meminta
persetujuan dari wakil rektor 1, kemudian dari wakil rektor 1 memberikan
persetujuan atau tidak. Data persetujuan tersebut nantinya untuk menentukan
penjaga ujian, apabila mendapat persetujuan daftar penjaga tersebut
dikembalikan lagi kepada pihak akademik. Pihak akademik melihat melihat
daftar ruang kelas yang sudah di rekomendasikan untuk menjadi jadwal ujian.
Data ruang kelas sudah ditentukan pihak akademik mulai menyusun jadwal
ujian dan menentukan beban jaga dosen disesuaikan dengan jumlah jadwal
ujian. Hal tersebut dilakukan dikarenakan sering kali dalam pengawas ujian
29
tidak sesuai dengan beban jaga dosen sehingga mengakibatkan dalam
pengawasan ujian ada yang penjaga ujian lebih dari dua atau bahkan tidak ada
pengawas ujian & seringnya bagian akademik kesulitan dalam ketersediaan
kelas, sehingga bagian akademik sulit menjadwalkan pengawas ujian serta
mahasiswa yang mengikuti ujian. Hal tersebut membuat tidak efektifnya
dalam hal meminimalis kelas ujian. Berikut adalah permasalahan yang
dimaksud yang digambarkan dalam dokumen flow pada gambar 3.1.
2. Identifikasi Pengguna
Berdasarkan hasil wawancara dengan bagian Akademik. Pada proses
penjadwalan ujian, user yang ada yaitu Bagian Administrasi Akademik dan
Kemahasiswaan (AAK), Wakil Rektor 1.
3. Identifikasi Data
Setelah dilakukan proses identifikasi permasalahan, pengguna dan data, maka
dapat diidentifkasi fungsi dari proses penjadwalan ujian sebagai berikut:
menentukan matakuliah, menentukan penjaga, menentukan ruangan, menyusun
halaman waktu, melakukan otorisasi penjaga, melakukan proses penjadwalan,
dan menghasilkan laporan penjadwalan.
4. Identifikasi Fungsi
Setelah dilakukan proses identifikasi permasalahan, pengguna dan data, maka
dapat diidentifkasi fungsi dari proses penjadwalan ujian sebagai berikut:
menentukan matakuliah, menentukan penjaga, menentukan ruangan, menyusun
halaman waktu, melakukan otorisasi penjaga, melakukan proses penjadwalan,
dan menghasilkan laporan penjadwalan.
30
Wakil Rektor 1Staff Akademik
Phas
e
Mulai
Mencari petugas penjaga
Karyawan
Membuat daftar penjaga
Melihat daftar mata kuliah berlangsung
Kuliah
Memberikan persetujuan
ACC ?
Memilih ruang kelas
Daftar penjaga
Daftar Kelas
Jadwal ujian
ya
tidak
Menyusun jadwal ujian menyesuikan beban jaga
dosen dengan jumlah jadwal ujian
Membuat jadwal ujian
Selesai
Penuh ?
ya
tidak
Gambar 3.1 Document flow proses membuat jadwal
31
B Analisis Kebutuhan Pengguna
Berdasarkan hasil wawancara dengan bagian AAK khususnya dengan
pengguna yang bersangkutan dengan sistem, maka dapat dibuat kebutuhan
pengguna. Analisis kebutuhan pengguna berfungsi untuk mengetahui kebutuhan
dari masing-masing pengguna yang berhubungan langsung dengan sistem yang
dibuat dapat sesuai dengan apa yang diminta oleh pengguna yang bersangkutan
dengan sistem. Pengguna tersebut terbagi menjadi role yang berbeda, yaitu
sebagai admin (Kabag AAK dan Staff AAK) dan sebagai otorisasi (Penjaga). Dari
role yang berbeda tersebut maka memiliki fungsi yang berbeda sehingga
kebutuhan data dan informasi yang dihasilkan pada setiap user. Untuk penerapan
sistem pada aplikasi Berikut adalah dapat dilihat kebutuhan pengguna dalam
penjadwalan ujian sebagai berikut:
1. Kepala Bagian AAK
Tabel 3.1 Kebutuhan Pengguna Kepala Bagian AAK
Kebutuhan Fungsi Kebutuhan Data Kebutuhan Informasi
Login Data karyawan Karyawan yang
mempunyai hak akses
untuk masuk ke dalam
halaman login
Mengelola data waktu Data waktu Mengelola data waktu
yang dipakai untuk
proses penjadwalan
Mengelola data sebaran
waktu
1. Data waktu
2. Data hari
Waktu dan hari yang
sudah digabungkan untuk
dipilih
Mengelola data penjaga 1. Data karyawan &
dosen
2. Data penjaga
Karyawan mana saja
yang akan menjaga ujian
32
Kebutuhan Fungsi Kebutuhan Data Kebutuhan Informasi
Pemilihan mata kuliah 1. Data matakuliah
2. Data semester
3. Data kelas
4. Data sks
Halaman matakuliah
yang sudah berisi data
apa saja yang dibutuhkan
Pemilihan ruangan Data ruangan Ruangan mana saja yang
dipakai untuk ujian
Proses Penjadwalan 1. Data matakuliah
2. Data penjaga
3. Data ruangan
4. Data sebaran waktu
Halaman proses
penjadwalan yang berisi
data yang dibutuhkan
untuk diproses menjadi
penjadwalan ujian
Laporan Penjadwalan 1. Data hasil jadwal
2. Data penjaga
Laporan hasil dari proses
penjadwalan
2. Wakil Rektor 1
Tabel 3.2 Kebutuhan Pengguna Wakil Rektor 1
Kebutuhan Fungsi Kebutuhan Data Kebutuhan Informasi
Pengisian halaman
otorisasi penjaga
Data penjaga Halaman otorisasi
penjaga yang disetujui
C Analisis Kebutuhan Fungsional
Pada tahap kebutuhan fungsional digunakan untuk mengimplementasikan
seluruh fungsi yang didapatkan dari hasil analisis kebutuhan pengguna yang
terjadi saat ini. Fungsi- fungsi tersebut dapat dibagi menjadi 8 fungsi yang
meliputi sebagai berikut :
33
1. Fungsi Login
Tabel 3.3 Software Requirement Login
Nama Fungsi Fungsi Login
Stakeholder Kepala Bagian AAK dan Staff AAK
Deskripsi Fungsi ini merupakan kegiatan yang dilakukan untuk masuk ke
dalam sistem aplikasi
Kondisi Awal Data Karyawan
Alur Normal
Aksi Stakeholder Respon Sistem
Otentifikasi Login Stakeholder
Pengguna memasukkan
username dan password
a. Sistem akan melakukan
pengecekan username dan
password Kepala Bagian AAK
dan Staff AAK
b. Jika username dan password tidak
sesuai, maka sistem akan
menampilkan informasi berupa
“Username/Password Anda
Salah”
c. Sistem akan menampilkan “login
berhasil” jika username dan
password yang di inputkan benar.
d. Jika Kepala Bagian AAK dan
Staff AAK berhasil login, maka
sistem akan memberikan hak
akses login dan menu sebagai
Kepala Bagian AAK dan Staff
AAK
Aksi Stakeholder Respon Sistem
Login
1. Pengguna
memasukkan data
login yang sudah
benar
Sistem akan menampilkan halaman
utama penjadwalan berdasarkan hak
akses yang diberikan.
2. Pengguna logout Sistem akan keluar dari halaman
utama.
Kondisi Akhir Fungsi ini untuk autotentikasi login kepada pengguna yang
memakai sistem tersebut
34
2. Fungsi mengelola data master waktu
Tabel 3.4 Software Requirement Mengelola Data Master Waktu
Nama Fungsi Fungsi Mengelola Data Master Waktu
Stakeholder Kepala Bagian AAK dan Staff AAK
Deskripsi Fungsi ini merupakan kegiatan yang dilakukan untuk
menambah waktu yang akan dipergunakan untuk penjadwalan
Kondisi Awal Data Waktu
Alur Normal
Aksi Stakeholder Respon Sistem
Otentifikasi Login Stakeholder
Pengguna memasukkan
username dan password
a. Sistem akan melakukan
pengecekan username dan
password Kepala Bagian AAK dan
Staff AAK
b. Jika username dan password
tidak sesuai, maka sistem akan
menampilkan informasi berupa
“Username/Password Anda Salah”
c. Sistem akan menampilkan “login
berhasil” jika username dan
password yang di inputkan benar.
d. Jika Kepala Bagian AAK dan
Staff AAK berhasil login, maka
sistem akan memberikan hak akses
login dan menu sebagai Kepala
Bagian AAK dan Staff AAK
Aksi Stakeholder Respon Sistem
Mengelola Waktu
1. Pengguna memilih
menu waktu
Sistem akan menampilkan halaman
waktu
2. Pengguna memilih
menambah waktu
Sistem akan menampilkan halaman
tambah waktu sesuai kebutuhan
3. Pengguna meng-klik
tombol simpan.
a. Sistem menyimpan data tersebut
dan jika kolom yang diisikan sesuai
dan benar, maka sistem akan
menampilkan “Data waktu berhasil
disimpan”.
b. Sistem menyimpan data pada
database waktu
c. Sistem menampilkan data yang
sudah disimpan
Kondisi Akhir Fungsi ini mengelola data waktu yang disediakan
35
3. Fungsi menentukan ruang yang digunakan
Tabel 3.5 Software Requirement Menentukan Ruang yang digunakan
Nama Fungsi Fungsi Mengelola Data Master Hari
Stakeholder Kepala Bagian AAK dan Staff AAK
Deskripsi Fungsi ini merupakan kegiatan yang dilakukan untuk
menambah waktu yang akan dipergunakan untuk penjadwalan
Kondisi Awal Data Hari
Alur Normal
Aksi Stakeholder Respon Sistem
Otentifikasi Login Stakeholder
Pengguna memasukkan
username dan password
a. Sistem akan melakukan pengecekan
username dan password Kepala
Bagian AAK dan Staff AAK
b. Jika username dan password
tidak sesuai, maka sistem akan
menampilkan informasi berupa
“Username/Password Anda Salah”
c. Sistem akan menampilkan “login
berhasil” jika username dan
password yang di inputkan benar.
d. Jika Kepala Bagian AAK dan
Staff AAK
berhasil login, maka sistem akan
memberikan hak akses login dan
menu sebagai Kepala Bagian AAK
dan Staff AAK
Aksi Stakeholder Respon Sistem
Mengelola Hari
1. Pengguna memilih
menu hari
Sistem akan menampilkan halaman
hari
2. Pengguna memilih
menambah hari
Sistem akan menampilkan halaman
tambah hari sesuai kebutuhan
3. Pengguna meng-klik
tombol simpan.
a. Sistem menyimpan data tersebut
dan jika kolom yang diisikan sesuai
dan benar, maka sistem akan
menampilkan “Data waktu berhasil
disimpan”.
b. Sistem menyimpan data pada
database waktu
c. Sistem menampilkan data yang
sudah disimpan
Kondisi Akhir Fungsi ini mengelola data hari yang disediakan
36
4. Fungsi menentukan sebaran waktu
Tabel 3.6 Software Requirement Menentukan Sebaran Waktu
Nama Fungsi Fungsi Mengelola Data Sebaran Waktu
Stakeholder Kepala Bagian AAK dan Staff AAK
Deskripsi Fungsi ini merupakan kegiatan yang dilakukan untuk memilih
hari dan waktu yang akan digunakan untuk proses penjadwalan
Kondisi Awal 1. Data Waktu
2. Data Hari
Alur Normal
Aksi Stakeholder Respon Sistem
Otentifikasi Login Stakeholder
Pengguna memasukkan
username dan password
a. Sistem akan melakukan
pengecekan username dan
password Kepala Bagian AAK dan
Staff AAK
b. Jika username dan password tidak
sesuai, maka sistem akan
menampilkan informasi berupa
“Username/Password Anda Salah”
c. Sistem akan menampilkan “login
berhasil” jika username dan
password yang di inputkan benar.
d. Jika Kepala Bagian AAK dan Staff
AAK berhasil login, maka sistem
akan memberikan hak akses login
dan menu sebagai Kepala Bagian
AAK dan Staff AAK
Aksi Stakeholder Respon Sistem
Mengelola Data Sebaran Waktu
1. Pengguna memilih
menu sebaran waktu
Sistem akan menampilkan halaman
sebaran waktu
2. Pengguna memilih
data sebaran waktu
Sistem akan menampilkan data
sebaran waktu yang untuk dipilih
3. Pengguna meng-klik
tombol simpan.
a. Sistem menyimpan data tersebut
dan jika kolom yang diisikan
sesuai dan benar, maka sistem
akan menampilkan “Data sebaran
waktu berhasil disimpan”.
b. Sistem menyimpan data pada
database sebaran waktu
c. Sistem menampilkan data yang
sudah disimpan
Kondisi Akhir Fungsi ini mengelola data sebaran waktu yang disediakan
37
5. Fungsi halaman penjaga
Tabel 3.7 Software Requirement Menentukan Penjaga
Nama Fungsi Fungsi Menentukan Penjaga
Stakeholder Kepala Bagian AAK dan Staff AAK
Deskripsi Fungsi ini merupakan kegiatan yang dilakukan untuk
menentukan matakuliah yang akan diputar untuk dijadikan
jadwal oleh Kabag AAK.
Kondisi Awal 1. Data dosen & karyawan
2. Data beban jaga
Alur Normal
Aksi Stakeholder Respon Sistem
Otentifikasi Login Stakeholder
Pengguna memasukkan
username dan password
a. Sistem akan melakukan
pengecekan username dan
password Kepala Bagian AAK dan
Staff AAK
b. Jika username dan password tidak
sesuai, maka sistem akan
menampilkan informasi berupa
“Username/Password Anda Salah”
c. Sistem akan menampilkan “login
berhasil” jika username dan
password yang di inputkan benar.
d. Jika Kepala Bagian AAK dan Staff
AAK berhasil login, maka sistem
akan memberikan hak akses login
dan menu sebagai Kepala Bagian
AAK dan Staff AAK
Aksi Stakeholder Respon Sistem
Menentukan Penjaga
1. Pengguna memilih
menu penjaga
Sistem akan menampilkan halaman
penjaga
2. Pengguna mencari
data karyawan dan
memilih karyawan
yang dijadikan
penjaga
Sistem akan menampilkan data
karyawan
3. Pengguna meng-klik
tombol simpan.
Sistem menyimpan data tersebut dan
jika kolom yang diisikan sesuai dan
benar, maka sistem akan
menampilkan “Data penjaga berhasil
disimpan”.
Kondisi Akhir Fungsi ini menentukan penjaga yang akan dijadwalkan
38
6. Fungsi menentukan matakuliah
Tabel 3.8 Software Requirement Menentukan Matakuliah
Nama Fungsi Fungsi Menentukan Matakuliah
Stakeholder Kepala Bagian AAK dan Staff AAK
Deskripsi Fungsi ini merupakan kegiatan yang dilakukan untuk
menentukan matakuliah yang akan diputar untuk dijadikan
jadwal oleh Kabag AAK.
Kondisi Awal 1. Data matakuliah
2. Data semester
3. Data sks
4. Data kelas
Alur Normal
Aksi
Stakeholder
Respon Sistem
Otentifikasi Login Stakeholder
Pengguna memasukkan
username dan password
a. Sistem akan melakukan
pengecekan username dan
password Kepala Bagian AAK dan
Staff AAK
b. Jika username dan password tidak
sesuai, maka sistem akan
menampilkan informasi berupa
“Username/Password Anda Salah”
c. Sistem akan menampilkan “login
berhasil” jika username dan
password yang di inputkan benar.
d. Jika Kepala Bagian AAK dan Staff
AAK berhasil login, maka sistem
akan memberikan hak akses login
dan menu sebagai Kepala Bagian
AAK dan Staff AAK
Aksi Stakeholder Respon Sistem
Menentukan Matakuliah
1. Pengguna memilih
menu matakuliah
Sistem akan menampilkan halaman
matakuliah
2. Pengguna memilih
data matakuliah yang
akan diputar
Sistem akan menampilkan data
matakuliah
3. Pengguna meng-klik
tombol simpan.
Sistem menyimpan data tersebut dan
jika kolom yang diisikan sesuai dan
benar, maka sistem akan
menampilkan “Data matakuliah
berhasil disimpan”.
Kondisi Akhir Fungsi ini menentukan matakuliah yang akan dijadwalkan
39
7. Fungsi menentukan halaman ruangan
Tabel 3.9 Software Requirement Menentukan ruangan
Nama Fungsi Fungsi Menentukan Ruangan
Stakeholder Kepala Bagian AAK dan Staff AAK
Deskripsi Fungsi ini merupakan kegiatan yang dilakukan untuk
menentukan ruangan yang akan dipakai untuk dijadikan jadwal
oleh Kabag AAK.
Kondisi Awal Data ruangan
Alur Normal
Aksi
Stakeholder
Respon Sistem
Otentifikasi Login Stakeholder
Pengguna memasukkan
username dan password
a. Sistem akan melakukan
pengecekan username dan
password Kepala Bagian AAK dan
Staff AAK
b. Jika username dan password tidak
sesuai, maka sistem akan
menampilkan informasi berupa
“Username/Password Anda Salah”
c. Sistem akan menampilkan “login
berhasil” jika username dan
password yang di inputkan benar.
d. Jika Kepala Bagian AAK dan Staff
AAK berhasil login, maka sistem
akan memberikan hak akses login
dan menu sebagai Kepala Bagian
AAK dan Staff AAK
Aksi Stakeholder Respon Sistem
Menentukan Ruangan
1. Pengguna memilih
menu ruangan
Sistem akan menampilkan halaman
ruangan
2. Pengguna memilih
ruangan yang
tersedia
Sistem menampilkan data ruangan
3. Pengguna meng-klik
tombol simpan.
Sistem menyimpan data tersebut dan
jika kolom yang diisikan sesuai dan
benar, maka sistem akan
menampilkan “Data ruangan
berhasil disimpan”.
Kondisi Akhir Fungsi ini menentukan ruangan yang akan dijadwalkan
40
8. Fungsi proses penjadwalan
Tabel 3.10 Software Requirement Proses Penjadwalan
Nama Fungsi Fungsi Proses Penjadwalan
Stakeholder Kepala Bagian AAK dan Staff AAK
Deskripsi Fungsi ini merupakan kegiatan yang dilakukan untuk proses
penjadwalan yang akan diputar untuk dijadikan jadwal oleh
Kabag AAK.
Kondisi Awal 1. Data Matakuliah
2. Data Ruangan
3. Data Sebaran Waktu
4. Data Penjaga
Alur Normal
Aksi Stakeholder Respon Sistem
Otentifikasi Login Stakeholder
Pengguna memasukkan
username dan password
a. Sistem akan melakukan
pengecekan username dan
password Kepala Bagian AAK
dan Staff AAK
b. Jika username dan password tidak
sesuai, maka sistem akan
menampilkan informasi berupa
“Username/Password Anda
Salah”
c. Sistem akan menampilkan “login
berhasil” jika username dan
password yang di inputkan benar.
d. Jika Kepala Bagian AAK dan
Staff AAK berhasil login, maka
sistem akan memberikan hak
akses login dan menu sebagai
Kepala Bagian AAK dan Staff
AAK
Aksi Stakeholder Respon Sistem
Proses Penjadwalan
1. Pengguna memilih
menu proses
penjadwalan
Sistem akan menampilkan halaman
proses penjadwalan
2. Pengguna meng-klik
tombol proses
Sistem memproses data apa saja
yang diproses
Sistem akan membentuk susunan
jadwal secara acak
Sistem akan menentukan jadwal
terbaik
Sistem akan menyeleksi kombinasi
jadwal
41
Sistem akan mengacak kombinasi
jadwal
Sistem menampilkan kombinasi
jadwal terbaik
Sistem menyimpan jadwal ujian
terbaik
Kondisi Akhir Fungsi ini proses penjadwalan
9. Fungsi membuat laporan
Tabel 3.11 Software Requirement Membuat Laporan
Nama Fungsi Fungsi Membuat Laporan
Stakeholder Kepala Bagian AAK dan Staff AAK
Deskripsi Fungsi ini merupakan kegiatan yang dilakukan untuk membuat
laporan yang akan diputar untuk dijadikan jadwal oleh Kabag
AAK.
Kondisi Awal 1. Data Matakuliah
2. Data Ruangan
3. Data Waktu
4. Data Penjaga
Alur Normal
Aksi Stakeholder Respon Sistem
Otentifikasi Login Stakeholder
Pengguna memasukkan
username dan password
a. Sistem akan melakukan
pengecekan username dan
password Kepala Bagian AAK dan
Staff AAK
b. Jika username dan password tidak
sesuai, maka sistem akan
menampilkan informasi berupa
“Username/Password Anda Salah”
c. Sistem akan menampilkan “login
berhasil” jika username dan
password yang di inputkan benar.
d. Jika Kepala Bagian AAK dan Staff
AAK berhasil login, maka sistem
akan memberikan hak akses login
dan menu sebagai Kepala Bagian
AAK dan Staff AAK
Aksi Stakeholder Respon Sistem
Membuat Laporan
1. Pengguna memilih
menu laporan
Sistem akan menampilkan halaman
laporan.
42
2. Pengguna mencari
data penjaga
Sistem akan menampilkan jadwal
ujian berdasarkan nama penjaga
3. Pengguna mencetak
laporan
Sistem menampilkan hasil
penjadwalan dan di export ke excel
untuk dicetak
Kondisi Akhir Fungsi ini membuat laporan
10. Fungsi membuat Otorisasi Penjaga
Tabel 3.12 Software Requirement Otorisasi Penjaga
Nama Fungsi Fungsi Membuat Laporan
Stakeholder Wakil rektor 1
Deskripsi Fungsi ini merupakan kegiatan yang dilakukan untuk Otorisasi
penjaga yang akan diputar untuk dijadikan jadwal oleh Wakil
rektor 1
Kondisi Awal Data Penjaga
Alur Normal
Aksi Stakeholder Respon Sistem
Otentifikasi Login Stakeholder
Pengguna memasukkan
username dan
password
a. Sistem akan melakukan pengecekan
username dan password Wakil
Rektor 1
b. Jika username dan password tidak
sesuai, maka sistem akan
menampilkan informasi berupa
“Username/Password Anda Salah”
c. Sistem akan menampilkan “login
berhasil” jika username dan
password yang di inputkan benar.
d. Jika Kepala Bagian AAK dan Staff
AAK berhasil login, maka sistem
akan memberikan hak akses login
dan menu sebagai Wakil Rektor 1
Aksi Stakeholder Respon Sistem
Menyusun Waktu
1. Pengguna memilih
menu otorisasi
penjaga
Sistem akan menampilkan halaman
otorisasi penjaga
2. Pengguna meng-
klik simpan
Sistem menampilkan data penjaga
yang disetujui, dan jika kolom yang
43
otorisasi penjaga diisikan sesuai dan benar, maka
sistem akan menampilkan “Data
penjaga berhasil disimpan”.
Kondisi Akhir Fungsi ini otorisasi penjaga
3.1.2 Perencanaan Kebutuhan Sistem
Perangkat pendukung meliputi perangkat keras dan lunak, yang masing-
masing memiliki kebutuhan spesifikasi untuk dapat mendukung aplikasi yang
akan dibuat supaya dapat berjalan dengan baik. Kebutuhan perangkat keras dan
lunak yang disarankan terdapat pada Tabel 3.13.
Tabel 3.13 Kebutuhan Aplikasi
No Analisis
Kebutuhan Perangkat yang dibutuhkan
1. Kebutuhan
Perangkat
Lunak
Kebutuhan untuk server
- Sistem Operasi server
(Windows server)
- XAMPP
( Apache)
- Web Browser
(Mozilla Firefox, Google Chrome)
- Database
(Oracle XE)
- Microsoft Office Excel
Kebutuhan untuk client
- Sistem operasi
(windows 7 )
- Web Browser
(Mozilla Firefox, Google Chrome)
2. Kebutuhan
Perangkat
Keras
- Personal Computer (PC) untuk server dengan
minimum requirement Pentium Dual Core 2.2 GHz
dan dilengkapi dengan Local Area Network (LAN)
card.
- Modem penghubung internet yang dihubungkan ke
komputer admin atau router, sehingga dapat
dihubungkan ke komputer client.
- Untuk penghubung dari komputer ke komputer
44
No Analisis
Kebutuhan Perangkat yang dibutuhkan
dibutuhkan kabel jaringan atau kabel UTP yang telah
terpasang RJ-45.
- Untuk komputer client dapat menggunakan notebook
ataupun personal computer (PC) dengan minimum
requirement Pentium Dual Core 2.2 GHz dan
dilengkapi dengan hub Local Area Network (LAN)
yang aktif
Dari hasil analisis diatas maka dapat diketahui kebutuhan aplikasi yang
mendukung adalah sebagai berikut :
1. Perangkat lunak berbasis web
2. Database menggunakan Oracle
3. Perangkat lunak mampu melakukan proses penginputan, pengeditan,
penyimpanan, pencarian, dan pencetakan data
4. Memiliki interface yang user friendly
5. Menjamin keamanan data yang tersimpan
3.2 Perancangan Sistem (Modelling)
Berdasarkan analisis sistem dari permasalahan yang ada, selanjutnya
akan dibuatkan desain dari sistem tersebut. Tujuan dari desain sistem ini adalah
untuk membuat kerangka dasar dalam melakukan implementasi ke sistem yang
akan dibuat.
3.2.1 Sitemap
Sitemap adalah salah satu alat bantu untuk mempermudah dalam
pengenalan peta situs pada sebuah website. Sitemap akan membantu
45
mempermudah menjelaskan aplikasi penjadwalan ujian berbasis web pada
penelitian ini. Sitemap apilkasi penjadwalan ujian dapat dilihat pada Gambar 3.2.
Gambar 3.2 Sitemap Aplikasi Penjadwalan Ujian
3.2.2 Data Flow Diagram
Data Flow Diagram (DFD) merupakan alat yang digunakan pada
metodologi pengembangan sistem yang terstruktur (structured analysis and
design). DFD sering digunakan untuk menggambarkan suatu sistem yang telah
ada atau sistem baru yang akan dikembangkan secara logika tanpa
mempertimbangkan lingkungan fisik dimana data tersebut mengalir. Pada DFD,
akan dijelaskan mengenai aliran data yang terdapat dalam sistem. Semua
masukkan dan keluaran dari sistem akan digambarkan dengan jelas. Pada DFD
aplikasi penjadwalan ujian ini terdapat delapan proses yaitu melakukan login
46
untuk pengguna, mengelola master waktu dan waktu, menentukan mata kuliah
yang digunakan, menentukan penjaga, menentukan ruang digunakan, menentukan
sebaran waktu, melakukan penjadwalan, dan menampilkan hasil jadwal.
3.2.3 Context Diagram
Data jadwal ujian
Pilih hasil jadwal
Penjag a yang diotorisasi
Halaman dekan
Otorisasi penjag a
Data penjag a
NIK dan PIN
Penjag a
Hasil jadwal ujian
Jadwal ujian
Sesi hari
Data sesi hari
Data sesi waktu
Sesi waktu
Data karyawan
Data Ruang dipil ih
Data matakuliah diujikan
Sebaran Waktu
Ruang an
Halaman AAK
Matakuliah yang dipilih
Data karyawan terpilih
Data sebaran waktu
Data ruang an
NIK dan PIN
0
Rancang Bang un
Aplikasi Penjadwalan
Ujian STIKOM Surabaya
+
AAK Wakil
Rektor1
Gambar 3.3 Contex Diagram Aplikasi Penjadwalan Ujian
Context diagram adalah gambaran menyeluruh dari DFD. Di dalam
Context Diagram terdapat dua External Entity, yang terdiri atas Bagian Wakil
Rektor 1, dan Bagian AAK. Untuk lebih jelasnya dapat melihat Gambar 3.3.
3.2.4 Diagram Jenjang
Diagram jenjang adalah sebuah bagan yang menggambarkan proses-
proses yang ada dan mendukung suatu aplikasi. Diagram jenjang dari aplikasi
penjadwalan ujian terdapat delapan proses besar. Gambar 3.4 menggambarkan
diagram jenjang proses aplikasi penjadwalan ujian
47
Gambar 3.4 Diagram Jenjang Aplikasi Penjadwalan Ujian
adwala
0
Ranc
ang
Bang
un A
plik
asi P
enja
dwal
an U
jian
STIK
OM
Sur
abay
a
1
Men
entu
kan
logi
n un
tuk
peng
guna
1.1
Men
gece
k va
lidas
i Nik
da
n pa
ssw
ord
1.1.
1
Men
ampi
lkan
hal
aman
pe
nggu
na
6
Men
entu
kan
mat
akul
iah
6.1
Men
yim
pan
mat
akul
iah
yang
dip
ilih
6.2
Men
ampi
lkan
m
atak
ulia
h ya
ng
ters
edia
7
Mem
ilih
ruan
gan
7.1
Men
yim
pan
ruan
gan
yang
dip
ilih
7.2
Men
ampi
lkan
ruan
gan
yang
ters
edia
2
Men
gelo
la d
ata
mas
ter
2.1
Men
gelo
la d
ata
wak
tu
2.2
Men
gelo
la d
ata
hari
4
Men
entu
kan
penj
aga
2.1.
1
Men
amba
h da
ta w
aktu
2.1.
2
Men
ampi
lkan
dat
a w
aktu
yan
g su
dah
di
simpa
n
2.2.
1
Men
amba
h da
ta h
ari
2.2.
2
Men
ampi
lkan
dat
a ha
ri ya
ng su
dah
di si
mpa
n
3
Men
entu
kan
seba
ran
wak
tu
3.1
Men
yim
pan
data
har
i da
n w
aktu
3.2
Men
ampi
lkan
dat
a se
bara
n w
aktu
4.1
Men
yim
pan
data
pe
njag
a uj
ian
4.2
Men
ampi
lkan
dat
a ka
ryaw
an
8
Pros
es P
enja
dwal
an
8.2.
2
Men
yele
ksi k
ombi
nasi
jadw
al
8.2.
3
Mem
inda
h sil
ang
kom
bina
si ja
dwal
8.2.
4
Mem
utas
i Kom
bina
si ja
dwal
9
Men
ampi
lkan
has
il ja
dwal
5
Oto
risas
i pen
jaga
5.1
Men
ampi
lkan
pen
jaga
ya
ng te
rsed
ia
5.2
Oto
risas
i pen
jaga
yan
g te
lah
dipi
lih
5.3
Men
yim
pan
data
pe
njag
a ya
ng su
dah
diot
orisa
si
8.2.
1
Mem
bent
uk su
suna
n ja
dwal
seca
ra a
cak
8.2
Mel
akuk
an G
ener
ate
Jadw
al
8.1
Mel
akuk
an G
ener
ate
Jadw
al
48
Mengecek hak akses login, mengelola data master waktu, menentukan
matakuliah yang diselenggarakan, menentukan penjaga, menentukan ruangan
yang digunakan, menentukan sebaran waktu, memproses jadwal, dan
menghasilkan laporan jadwal ujian UTS atau UAS.Diagram jenjang ini digunakan
sebagai pedoman dalam pembuatan Data Flow Diagram.
A DFD Level 0
Pada DFD level 0 aplikasi penjadwalan ujian terdapat delapan proses
yaitu melakukan login untuk pengguna, mengelola data master, menentukan
sebaran waktu , menentukan mata kuliah yang digunakan, menentukan penjaga,
menetukan ruang digunakan, otorisasi penjaga, melakukan penjadwalan, dan
menampilkan hasil jadwal.
NIK dan PIN (AAK)
NIK dan PIN (AAK)
Data sebaran waktu dis impan
Data hari dibaca
Data waktu dibaca
Data hari tersimpan
Data waktu tersimpan
Data hari dibaca
Data waktu dibaca
Data bagian dibaca
Data karyawan dibaca
[Sebaran Waktu]
[Data sebaran waktu]
[Sesi waktu]
[Data sesi waktu]
[Sesi hari]
[Data sesi hari]
[Halaman wakil rektor1]
[Halaman AAK]
[NIK dan PIN]
[NIK dan PIN]AAKAAKAAKAAKAAKAAKAAKAAK
Wakil
Rektor1
Wakil
Rektor11
Melakukan Log in Untuk
Peng g una
+
2
Meng elola Data Master
+
3
Menentukan Sebaran Waktu
+
1 Karyawan
2 Bag ian
3 Waktu
4 Hari
6 Sebaran Waktu
3 Waktu
4 Hari
Gambar 3.5 DFD Level 0
49
Data matakuliah dis impan
[Data ruangan]
Data penjag a dibaca
Data penjag a disimpan
Data ruang an dig unakan disimpan
Data ruang an dibaca
NIK dan PIN (AAK)
NIK dan PIN (AAK)
NIK dan PIN (AAK)
Data krs dibaca
Data matakuliah dibaca
NIK dan PIN (Wakil Rektor1)
[Penjag a yang diotorisasi]
[Otorisasi penjaga]
[Data penjaga]
[Penjag a]
[Data karyawan]
[Data karyawan terpilih]
Data penjag a disimpan
Data karyawan dibaca
[Ruangan]
[Data Ruang dipil ih]
[Data matakuliah diujikan]
[Matakuliah yang dipil ih]
AAK
AAKAAK
AAKAAKAAKAAKAAK
Wakil
Rektor1
Wakil
Rektor1
Wakil
Rektor1
5 Matakuliah
4
Menentukan penjag a
+
1
Melakukan
Login Untuk
Peng g una+
5
Otorisasi Penjag a
+
6
Menentukan matakuliah
+
7 Penjag a
1 Karyawan
7
Menentukan ruang an
+
8 KRS
1
Melakukan
Login Untuk
Peng g una+
9 Ruang an
10Ruang
dig unakan
7 Penjag a
13Matakuliah
dig unakan
Jadwal ujian dis impan
Data KRS
Data penjag a dibaca
Data krs dibaca
Data matakuliah dibaca
Data ruang an dibaca
Data penjag a dibaca
Data sebaran waktu dibaca
Jadwal ujian dibaca
Data penjag a
[Data jadwal ujian]
[Jadwal ujian]
[Pil ih hasil jadwal]
[Hasil jadwal ujian]
NIK dan PIN (AAK)
Data Sebaran Waktu
Matakuliah yang dipilih
Data ruang an dig unakan
NIK dan PIN (AAK)
AAKAAKAAKAAK
8
Melakukan Penjadwalan
+
1
Melakukan Log in Untuk
Peng g una
+
9
Menampilkan ujian
+
11 Jadwal Ujian
7 Penjag a
10Ruang
dig unakan
6 Sebaran Waktu
5 Matakuliah
8 KRS
Gambar 3.5 DFD Level 0 (Lanjutan)
50
Tabel yang terlihat pada DFD level 0 adalah karyawan, bagian, waktu,
hari, sebaran waktu, mata kuliah, krs, ruangan, ruang digunakan, penjaga, dan
jadwal ujian. Gambar 3.5 menampilkan DFD level 0 aplikasi penjadwalan ujian.
B DFD Level 1 Melakukakn Login untuk Pengguna
Pada DFD level 1 melakukan login untuk pengguna merupakan hasil
decompose dari DFD level 0. DFD level 1 melakukan login untuk pengguna
terdapat dua sub proses yaitu mengecek validasi nik dan pin, dan menampilkan
halaman pengguna.
[NIK dan PIN (AAK)]
[NIK dan PIN (AAK)]
[NIK dan PIN (AAK)]
[NIK dan PIN (AAK)]
[NIK dan PIN (AAK)]
[NIK dan PIN (Wakil Rektor1)]
[NIK dan PIN (AAK)]
[NIK dan PIN (AAK)]
[Data bag ian dibaca]
[Data karyawan dibaca]
NIK dan PIN
[Halaman AAK]
[NIK dan PIN]
[NIK dan PIN]
AAK
Wakil
Rektor1
AAK
Wakil
Rektor1
1 Karyawan
2 Bag ian
Meng elola Data Master
Menentukan Sebaran Waktu
Otorisasi Penjag a
Menentukan ruang an
Menentukan penjag a
Menentukan matakuliah
Melakukan Penjadwalan
Menampilkan ujian
1.1
Meng ecek Validasi NIK
dan PIN
1.2
Menampilkan Halaman
Peng g una
Gambar 3.6 DFD Level 1 Melakukan Login untuk Pengguna
51
Sub proses mengecek validasi nik dan pin berfungsi untuk mengecek
login setiap pengguna yang menggunakan aplikasi penjadwalan ujian. Sub proses
menampilkan halaman pengguna berfungsi untuk menampilkan halaman sesuai
dengan login pengguna. Gambar 3.6 menggambarkan DFD level 1 Melakukan
Login untuk Pengguna.
C DFD Level 1 Mengelola Data Hari dan Waktu
Pada DFD level 1 mengelola data merupakan hasil decompose dari DFD
level 0. DFD level 1 mengelola data master waktu terdapat dua sub proses yaitu
mengelola data waktu, dan mengelola data hari. Sub proses mengelola data waktu
berfungsi untuk digunakan aplikasi penjadwalan ujian. Sub proses mengelola data
hari berfungsi untuk digunakan untuk aplikasi penjadwalan ujian. Gambar 3.7
menggambarkan DFD Level 1 Mengelola Data Hari dan Waktu
[NIK dan PIN (AAK)]
[Data hari tersimpan]
[Data waktu tersimpan]
[Data hari dibaca]
[Data waktu dibaca]
[Data sesi hari]
[Sesi hari]
[Data sesi waktu]
[Sesi waktu]
AAKAAKAAKAAK
3 Waktu
4 Hari
3 Waktu
4 Hari
Melakukan Log in Untuk Pengg una
2.1
Meng elola Data Waktu
+
2.2
Meng elola Data Hari
+
Gambar 3.7 DFD Level 1 Mengelola Data Hari dan Waktu
52
D DFD Level 1 Menentukan Sebaran Waktu
Pada DFD level 1 menentukan sebaran waktu merupakan hasil
decompose dari DFD level 0. DFD level 1 menentukan sebaran waktu terdapat
dua sub proses yaitu menampilkan data hari dan waktu, dan menyimpan data
sebaran waktu. Sub proses menampilkan data hari dan waktu berfungsi untuk
menampilkan semua data hari dan sesi waktu yang tersedia untuk selanjutnya
ditentukan menjadi sebaran waktu yang akan digunakan untuk penjadwalan ujian.
Sub proses menyimpan sebaran waktu berfungsi untuk menyimpan data sebaran
waktu yang digunakan dalam penjadwalan ujian. Gambar 3.8 menggambarkan
DFD Level 1 Menentukan Sebaran Waktu.
Data hari dan waktu
[Data waktu dibaca]
[Data hari dibaca]
[Data sebaran waktu disimpan]
[NIK dan PIN (AAK)]
[Data sebaran waktu]
[Sebaran Waktu]
AAKAAK
3 Waktu
4 Hari
6 Sebaran Waktu
Melakukan Log in Untuk Pengg una
3.1
Menyimpan data hari
dan waktu
3.2
Menampilkan data
sebaran waktu
Gambar 3.8 DFD Level 1 Menentukan Sebaran Waktu
E DFD Level 1 Menentukan Penjaga
Pada DFD level 1 menentukan penjaga merupakan hasil decompose dari
DFD level 0. DFD level 1 menentukan penjaga yang digunakan terdapat dua sub
53
proses yaitu menampilkan data karyawan yang tersedia, dan menyimpan data
penjaga yang digunakan. Sub proses menampilkan data karyawan yang tersedia
berfungsi untuk menampilkan semua data karyawan yang tersedia. Sub proses
menyimpan data karyawan yang digunakan berfungsi untuk menyimpan data
karyawan yang telah dipilih untuk digunakan dalam penjadwalan ujian. Gambar
3.9 menggambarkan DFD Level 1 Menentukan Penjaga.
[Data penjaga dis impan]
Data penjag a
[Penjag a]
[Data karyawan terpilih]
[NIK dan PIN (AAK)]
[Data karyawan]
[Data karyawan dibaca]1 Karyawan
7 Penjag aAAKAAKAAK
Melakukan Log in Untuk Pengg una
4.1
Menyimpan data
penjag a
4.2
Menampilkan data
penjag a
Gambar 3.9 DFD Level 1 Menentukan Penjaga yang Digunakan.
F DFD Level 1 Otorisasi Penjaga
Pada DFD level 1 menentukan penjaga merupakan hasil decompose dari
DFD level 0. DFD level 1 menentukan penjaga terdapat dua sub proses yaitu
menampilkan data penjaga, otorisasi penjaga, dan menyimpan data penjaga. Sub
proses menampilkan data penjaga berfungsi untuk menampilkan semua data
penjaga yang tersedia untuk selanjutnya ditentukan menjadi penjaga yang akan
digunakan untuk penjadwalan ujian. Sub proses otorisasi penjaga berfungsi untuk
54
mengotorisasi data penjaga yang digunakan dalam penjadwalan ujian. Sub proses
menyimpan penjaga berfungsi untuk menyimpan data penjaga yang digunakan
dalam penjadwalan ujian. Gambar 3.10 menggambarkan DFD Level 1
Menentukan Penjaga.
Data penjag a otorisasi
Data penjag a otorisasi
[Data penjaga dis impan]
[Data penjaga dibaca]
[Data penjaga]
[Penjag a yang diotorisasi]
[Otorisasi penjaga]
[NIK dan PIN (Wakil Rektor1)]
Wakil Rektor1Wakil Rektor1Wakil Rektor1
Melakukan Log in Untuk Pengg una
7 Penjag a7 Penjag a
5.1
Menampilkan penjag a
yang tersedia
5.2
Otorisasi penjag a yang
telah dipil ih
5.3
Menyimpan data
penjag a yang sudah
diotorisasi
Gambar 3.10 DFD Level 1 Otorisasi Penjaga
G DFD Level 1 Menentukan Mata Kuliah yang Digunakan
Pada DFD level 1 menentukan mata kuliah yang digunakan merupakan
hasil decompose dari DFD level 0. DFD level 1 menentukan mata kuliah yang
digunakan terdapat dua sub proses yaitu menampilkan data mata kuliah, dan
menyimpan data mata kuliah yang digunakan. Sub proses menampilkan data mata
kuliah berfungsi untuk menampilkan semua data mata kuliah yang sudah ada. Sub
proses menyimpan data mata kuliah yang digunakan berfungsi untuk menyimpan
55
data mata kuliah yang telah dipilih untuk digunakan dalam penjadwalan ujian.
Gambar 3.11 menggambarkan DFD Level 1 Menentukan Mata Kuliah yang
Digunakan.
[Data matakuliah disimpan]
Data matakuliah
[Data krs dibaca]
[Data matakuliah dibaca]
[Matakuliah yang dipilih]
[NIK dan PIN (AAK)]
[Data matakuliah diujikan]
AAKAAK
5 Matakuliah
8 KRS
Melakukan Log in Untuk Pengg una
6.1
Menyimpan
matakuliah yang dipilih
6.2
Menampilkan
matakuliah yang
tersedia
13Matakuliah
dig unakan
Gambar 3.11 DFD Level 1 Menentukan Mata Kuliah yang Digunakan
H DFD Level 1 Menentukan ruangan
Data ruang an tersedia
[Data ruangan digunakan disimpan]
[Data ruangan dibaca]
[Data Ruang dipil ih]
[Data ruangan]
[Ruangan]
[NIK dan PIN (AAK)]
AAKAAK
Melakukan Log in Untuk Pengg una
9 Ruang an
10Ruang
dig unakan
AAK
7.1
Menyimpan ruang an
yg dipil ih
7.2
Menampilkan
ruang an yang
tersedia
Gambar 3.12 DFD Level 1 Menentukan Ruangan
56
Pada DFD level 1 menentukan ruangan merupakan hasil decompose dari
DFD level 0. DFD level 1 menentukan ruangan yang digunakan terdapat dua sub
proses yaitu menampilkan data ruangan yang tersedia, dan menyimpan data
ruangan yang digunakan.
I DFD Level 1 Melakukan Penjadwalan
[Jadwal ujian disimpan]
Jadwal ujian
[Data jadwal ujian]
Data matakuliah dibaca[Data ruangan digunakan]
[Data Sebaran Waktu]
[Jadwal ujian]
[Data penjaga]
[Data matakuliah dibaca]
[Data ruangan dibaca]
[Data penjaga dibaca]
[Data sebaran waktu dibaca]
[Data krs dibaca]
[NIK dan PIN (AAK)]
[Data KRS]
[Matakuliah yang dipil ih]
Melakukan Log in Untuk Pengg una
AAKAAKAAKAAKAAKAAK
6 Sebaran Waktu
7 Penjag a
10Ruang
dig unakan
5 Matakuliah
8 KRS8.1
Melakukan g enerate
kelas
8.2
Melakukan g enerate
jadwal
+
AAK
11 Jadwal Ujian
Gambar 3.13 DFD Level 1 Melakukan Penjadwalan.
Pada DFD level 1 melakukan penjadwalan merupakan hasil decompose
dari DFD level 0. DFD level 1 melakukan penjadwalan terdapat dua sub proses
yaitu melakukan generate kelas, dan melakukan generate jadwal, Sub proses
melakukan generate kelas berfungsi untuk memecah menjadi beberapa kelas
berdasarkan jumlah mahasiswa yang digunakan untuk penjadwalan. Sub proses
57
melakukan generate jadwal berfungsi untuk membuat jadwal ujian dengan
berdasarkan data-data yang sudah ditentukan oleh proses-proses sebelumnya.
Gambar 3.13 menggambarkan DFD Level 1 Melakukan Penjadwalan.
J DFD Level 2 Melakukan Generate Jadwal
Pada DFD level 2 melakukan generate jadwal merupakan hasil
decompose dari DFD level 1 melakukan penjadwalan. DFD level 2 melakukan
generate jadwal terdapat lima sub proses yaitu membentuk susunan jadwal secara
acak, menyeleksi kombinasi jadwal, mengacak kombinasi jadwal, dan menyimpan
kombinasi jadwal. Sub proses membentuk susunan jadwal secara acak berfungsi
untuk membentuk susunan kromosom dari data-data yang telah ada yang akan
digunakan sebagai dasar untuk metode algoritma genetika. Sub proses menyeleksi
kombinasi jadwal berfungsi menyeleksi kromosom yang sudah dibuat sebelumnya
untuk mencari kromosom dengan nilai yang memenuhi. Sub proses memindah
silang kombinasi jadwal berfungsi untuk melanjutkan dari proses seleksi ketika
nilai fitness kromosom masih belum terpenuhi dengan cara menukar beberapa
gen-gen yang bersesuaian dari dua induk untuk menhasilkan individu baru. Sub
proses memutasi kombinasi jadwal berfungsi untuk melanjutkan dari proses
seleksi dan pindah silang apabila nilai fitness kromosom masih belum juga
terpenuhi dengan cara mengganti satu atau beberapa nilai gen dari kromosom.
Sehingga menhasilkan susunan kromosom baru. Jika kondisi telah memenuhi,
maka algoritma genetika akan menghentikan proses pencariannya, tetapi jika
belum terpenuhi maka algoritma genetika akan kembali ke membentuk susunan
jadwal secara acak. Gambar 3.14 menggambarkan DFD Level 2 Melakukan
Generate Penjadwalan.
58
[Data penjaga dibaca]
Nilai kromosom terpenuhi
Kromosom belum terpenuhi
Data kromosom ke n
[Jadwal ujian disimpan]
Data kromosom ke n
Data kromosom
[Data jadwal ujian]
[Jadwal ujian]
[Data ruangan digunakan]
[Data Sebaran Waktu]
[Data penjaga]
[Data matakuliah dibaca]
[Data ruangan dibaca]
[Data sebaran waktu dibaca]
[Jadwal ujian]
6 Sebaran Waktu
7 Penjag a
10Ruang
dig unakan
AAKAAKAAKAAK
5 Matakuliah
AAK
Melakukan g enerate kelas
8.2.1
Membentuk susunan
jadwal secara acak
8.2.2
Menyeleksi kombinasi
jadwal
8.2.3
Memindah silang
kombinasi jadwal
8.2.4
Memutasi kombinasi
jadwal11 Jadwal Ujian
Gambar 3.14 DFD Level 2 Generate Penjadwalan.
K DFD Level 2 Mengelola Data Waktu dan Hari
Pada DFD level 2 mengelola data waktu dan hari merupakan hasil
decompose dari DFD level 1. DFD level 2 mengelola waktu dan hari yang
digunakan terdapat dua sub proses yaitu menampilkan data waktu dan hari yang
tersedia, dan menyimpan data waktu dan hari yang digunakan. Sub proses
menampilkan data waktu dan hari yang tersedia berfungsi untuk menampilkan
semua data waktu dan hari yang tersedia. Sub proses menyimpan data waktu dan
59
hari yang digunakan berfungsi untuk menyimpan data waktu dan hari yang telah
dipilih untuk digunakan dalam penjadwalan ujian. Gambar 3.15 dan Gambar 3.16
menggambarkan DFD Level 2 Mengelola Data Waktu dan Hari
[Data waktu dibaca]
[Data waktu tersimpan]
[NIK dan PIN (AAK)]
[Sesi waktu]
[Data sesi waktu]
AAKAAK 3 Waktu3 Waktu
Melakukan Login Untuk Pengguna
2.1.1
Menambah data
waktu
2.1.2
Menampilkan
data waktu
Gambar 3.15 DFD Level 2 Mengelola Data Waktu
[Data sesi hari]
[Data hari dibaca]
[Data hari tersimpan]
[Sesi hari]
AAKAAK
4 Hari4 Hari
2.2.1
Menambah data hari
2.2.2
Menampilkan data hari
yang sudah disimpan
Gambar 3.16 DFD Level 2 Mengelola Hari
L Penerapan Algoritma Genetika
Penerapan Algoritma Genetika pada penjadwalan ujian digambarkan pada
flowchart program yang dapat dilihat pada gambar 3.17 flowchart program.
Adapun istilah yang digunakan dalam penerapan Algoritma Genetika yaitu:
60
1. Allele, sebuah nilai yang ada dalam satu susunan kombinasi jadwal
2. Crossover (pindah silang), proses menukar kombinas jadwal dengan
kombinasi jadwal yang lain (antar susunan jadwal atau individu).
Mulai
Kromosom terbaik
Hasil
Selesai
C = kuliah, TF=Total Fitness, Ru = ruang ,P = Probabilitas W= waktu, K =kromosom, F = Fitnes tiap K, R = Bil. Acak, KP=Kumulatif Prob.,p = pinalti, In= Induk, Kb= Kromosom baru, G = jumlah iterasi, Tk=Jumlah K, Pmut = Prob mutasi, Pc= Crossover prob, Kc= Kromosom cross, Km= Kromosom mut
Pengkodean
Seleksi
Pindah Silang
Mutasi
Input : C, W, Ru, Tk, G, Pc, Pmut
F = 1
tidak
ya
Gambar 3.17 Flowchart program
3. Fitness, suatu nilai yang dihasilkan dari jumlah tumpang tindih jadwal
4. Generasi, satu siklus proses atau satu iterasi dalam Algoritma Genetika.
5. Genotype (Gen), sebuah nilai sebagai dasar susunan kombinasi jadwal.
61
6. Individu, merupakan satu solusi atau susunan jadwal.
7. Kromosom, satu kesatuan nilai yang membentuk satu kombinasi jadwal.
8. Mutasi, merupakan proses menggantikan gen yang hilang dari sekumpulan
susunan jadwal akibat proses seleksi.
9. Populasi, sekumpulan susunan jadwal yang yang akan diproses dan diseleksi
untuk dipilih jadwal yang terbaik.
10. Seleksi, proses menyeleksi nilai fitness terbaik untuk mendapatkan calon
jadwal yang terbaik.
Proses yang harus dilakukan dalam Algoritma Genetika adalah sebagai berikut:
a. Pengodean
Sebelum memanfaatkan Algoritma Genetika dalam aplikasi penjadwalan ujian,
hal yang harus dilakukan adalah menyandikan solusi dari masalah yang
diberikan ke dalam kromosom pada Algoritma Genetika.
Mulai
n = jumlah K
K = (C, W, R)
Selesai
Keluaran : K
ya
Baca : C, W, Ru
i = 1 to n
tidak
For i = 1 to n
Gambar 3.18 Flowchart Pengodean pembentukan kromosom
62
Teknik Pengodean atau membentuk Kromosom dari populasi
(membentuk susunan jadwal secara acak). Teknik pengodean adalah
bagaimana mengodekan gen dari kromosom, dimana gen merupakan bagian
dari kromosom dan satu gen biasanya akan mewakili satu variabel. Untuk lebih
jelasnya dapat dilihat pada gambar 3.18.
Sebagai contoh untuk inisilaisasi pembentukan kromosom, misalkan ada
data mata kuliah pada tabel 3.14, sebaran waktu yang telah disediakan pada
tabel 3.15, data ruangan yang digunakan pada tabel 3.16 dan tabel penanggung
jawab dan pengawas pada tavel 3.17 dan 3.18.
Tabel 3.14 Mata Kuliah dan Kelas
Kode MK Kelas
0 Bahasa Inggris Q1
1 Akutansi P1
2 Data Warehouse P1
3 Data Warehouse O1
4 Manajemen Proyek Q1
5 Testing dan Implementasi Sistem O1
6 Testing dan Implementasi Sistem Q1
7 Tata Kelola Teknologi Informasi P2
8 Jaringan Komputer dan Keamanan Data P1
9 Jaringan Komputer dan Keamanan Data Q1
10 Etika Profesi P1
11 Etika Profesi Q1
Tabel 3.15 Sebaran waktu yang tersedia
Kode Hari Mulai Akhir
0 Hari 1 08.00 10.00
1 Hari 1 11.00 13.00
2 Hari 1 14.00 16.00
3 Hari 2 08.00 10.00
4 Hari 2 11.00 13.00
5 Hari 2 14.00 16.00
6 Hari 3 08.00 10.00
63
Kode Hari Mulai Akhir
7 Hari 3 11.00 13.00
8 Hari 3 14.00 16.00
9 Hari 4 08.00 10.00
10 Hari 4 11.00 13.00
11 Hari 4 14.00 16.00
Tabel 3.16 Ruangan yang digunakan
Kode Nama Ruang
0 M301
1 M302
2 M303
3 M304
4 B401
5 B402
6 B403
7 B405
8 B301
Tabel 3.17 Penanggung Jawab yang digunakan
Kode Nama Penanggung Jawab Inisial
0 Abdullah Khoir Riqqoh Abl
1 Harianto Haa
2 Pauladie Susanto Pau
3 Karsam Kar
4 Vivine Nurcahyawati Viv
Tabel 3.18 Pengawas yang digunakan
Kode Nama Pengawas Inisial
0 Ira Puspasari Ira
1 Tony Soebijono Toy
2 Sri Hariani Yan
3 Thomas Hanandry Tho
4 Tegus Susanto Teg
5 Tan Amelia Mel
6 Darwin Yuwono Dar
7 Ignatius Adrian Ign
64
Pembentukan kromosom yang digunakan dalam penelitian ini direpresentasi-
kan dalam susunan gen yang terdiri atas lima nilai atau allele, susunan gen
tersebut akan di jelaskan sebagai berikut :
1. Nilai pertama adalah kode kuliah yang akan dijadwalkan.
2. Nilai kedua adalah kode ruangan yang akan digunakan.
3. Nilai ketiga adalah kode penanggung jawab yang akan digunakan
4. Nilai keempat adalah kode pengawas yang akan digunakan
5. Nilai kelima adalah kode sebaran waktu yang akan digunakan
Diasumsikan dalam satu populasi yang terbentuk dari kromosom berjumlah
sesuai dengan jumlah kuliah yang akan dijadwalkan dan masing masing
kromosom memiliki gen yang telah ditentukan. Penempatan kode pada setiap
gen dilakukan berdasarkan suatu bilangan yang dibangkitkan secara acak.
Kromosom[0]: ([0-7-3-0-11],[1-1-0-7-0],[2-5-1-7-0],[3-2-0-6-4],[4-3-1-7-8],[5-
1-2-6-7],[6-0-0-6-8],[7-6-1-4-6],[8-0-2-3-10],[9-5-0-7-11],[10-2-1-3-9],[11-5-
3-5-7])
Kromosom[1]: ([0-4-1-5-3],[1-5-4-2-2],[2-4-1-6-1],[3-1-0-6-5],[4-0-3-5-0],[5-
0-2-7-2],[6-6-3-7-10],[7-0-3-2-2],[8-3-3-2-2],[9-7-2-5-1],[10-7-3-5-10],[11-3-
1-7-9])
Kromosom[2]: ([0-7-1-5-8],[1-2-1-5-10],[2-0-2-1-3],[3-2-0-6-2],[4-2-2-6-6],[5-
1-1-7-6],[6-1-3-0-7],[7-7-4-3-8],[8-3-3-5-5],[9-4-2-7-4],[10-3-1-3-10],[11-2-3-
0-9])
Kromosom[3]: ([0-2-0-1-9],[1-1-1-3-11],[2-0-2-4-10],[3-6-2-5-6],[4-0-2-0-
0],[5-2-2-7-5],[6-2-1-0-6],[7-2-2-4-2],[8-0-2-1-3],[9-3-2-4-5],[10-4-1-4-
11],[11-6-2-6-3])
65
Kromosom[4]: ([0-7-2-1-5],[1-6-1-7-2],[2-4-3-0-3],[3-5-3-7-7],[4-0-3-2-7],[5-
7-3-2-11],[6-1-4-1-7],[7-6-4-0-3],[8-6-1-2-0],[9-1-4-7-4],[10-6-4-2-6],[11-5-2-
4-0])
Kromosom[5]:([0-6-3-1-0],[1-1-1-7-11],[2-5-0-3-1],[3-2-1-5-11],[4-0-4-7-
7],[5-7-1-3-8],[6-5-4-1-7],[7-5-0-7-5],[8-6-4-6-3],[9-3-2-3-11],[10-4-2-7-
8],[11-1-0-7-1])
Menghitung nilai fitness Nilai fitness ini yang nantinnya akan digunakan pada
tahap-tahap seleksi berikutnya. Nilai yang dihasilkan oleh fungsi fitness
mempresentasikan seberapa banyak jumlah persyaratan yang dilanggar, untuk
menghitung nilai fitness menggunakan persamaan 2.1
Tabel 3.19 Aturan yang digunakan
Aturan Pinalti
Kelas kuliah tidak boleh ada dalam jam yang sama dan ada
dalam ruangan yang berbeda
4
Penjaga tidak boleh ada dalam jam yang sama dan ada dalam
ruangan yang berbeda
1
Penanggung jawab ujian dan pengawas mempunyai batas
beban jaga yang sudah ditentukan
2
Batas maksimal mahasiswa ujian dalam satu hari adalah 2 kali 1
Fitness[0]: 1/ (1 + 0 * 2 + 4 * 2 + 4 * 2 + 4 * 2 + 8 * 1) = 0.03030303030303
Fitness [1]: 1/ (1 + 1 * 2 + 8 * 2 + 8 * 2 + 8 * 2 + 8 * 1) = 0.016949152542373
Fitness [2]: 1/ (1 + 1 * 2 + 3 * 2 + 3 * 2 + 3 * 2 + 8 * 1) = 0.03448275862069
Fitness [3]: 1/ (1 + 0 * 2 + 4 * 2 + 4 * 2 + 4 * 2 + 8 * 1) = 0.03030303030303
Fitness [4]: 1/ (1 + 0 * 2 + 5 * 2 + 5 * 2 + 5 * 2 + 6 * 1) = 0.027027027027027
Fitness [5]: 1/ (1 + 0 * 2 + 6 * 2 + 6 * 2 + 6 * 2 + 8 * 1) = 0.022222222222222
Total Fitness: 0.24972320443386
66
b. Seleksi
Melakukan proses seleksi, seleksi digunakan untuk memilih individu-individu
mana saja yang akan dipilih untuk proses kawin silang dan mutasi. Metode
selesksi yang akan digunakan disini yaitu seleksi dengan mesin roulette.
Metode seleksi mesin roulette ini merupakan metode yang paling sederhana
dan sering juga dikenal dengan nama stochastic sampling with replacement.
Untuk lebih jelasnya dapat dilihat pada gambar 3.19. Langkah pertama dalam
proses seleksi ini adalah dengan menghitung total nilai fitness semua
kromosom dengan menggunakan persamaan 2.1.
Langkah selanjutnya adalah menghitung probabilitas setiap kromosom yaitu
dengan cara membagi nilai fitness setiap kromosom dengan total nilai fitness,
seperti pda tabel 3.20.
Tabel 3.20 Probabilitas setiap kromosom
Kromosom Probabilitas
0 0.03/1.21 = 0.02
1 0.01/1.21 = 0.008
2 0.03/1.21 = 0.02
3 0.03/1.21 = 0.02
4 0.027/1.21 = 0.022
5 0.02/1.21 = 0.165
Total Probabilitas 0.255
Maka susunan kromosom populasi baru hasil seleksi adalah :
Kromosom[0]: ([0-6-3-1-0],[1-1-1-7-11],[2-5-0-3-1],[3-2-1-5-11],[4-0-4-7-7],
[5-7-1-3-8],[6-5-4-1-7],[7-5-0-7-5],[8-6-4-6-3],[9-3-2-3-11],[10-4-2-7-8],[11-
1-0-7-1])
67
Kromosom[1]: ([0-5-2-4-5],[1-7-4-2-5],[2-0-3-2-5],[3-1-2-1-11],[4-3-1-7-3],[5-
6-4-2-2],[6-4-2-1-10],[7-3-2-3-0],[8-0-0-7-10],[9-7-1-2-1],[10-5-2-5-0],[11-0-
4-6-4])
Kromosom[2]: ([0-3-1-4-5],[1-1-0-5-0],[2-0-0-5-5],[3-1-3-4-2],[4-2-4-1-6],[5-
6-1-6-5],[6-6-4-1-1],[7-5-0-3-5],[8-4-3-7-7],[9-2-1-0-9],[10-6-2-0-1],[11-1-1-
7-0])
Kromosom[3]: ([0-7-1-5-8],[1-2-1-5-10],[2-0-2-1-3],[3-2-0-6-2],[4-2-2-6-6],[5-
1-1-7-6],[6-1-3-0-7],[7-7-4-3-8],[8-3-3-5-5],[9-4-2-7-4],[10-3-1-3-10],[11-2-3-
0-9])
Kromosom[4]: ([0-2-4-1-8],[1-6-2-7-8],[2-0-1-0-4],[3-0-2-0-0],[4-1-2-4-10],[5-
7-3-0-1],[6-2-2-3-11],[7-0-2-6-8],[8-0-0-2-5],[9-0-4-0-6],[10-1-0-7-7],[11-4-1-
4-5])
Kromosom[5]: ([0-3-3-1-6],[1-1-2-6-5],[2-6-4-0-8],[3-1-4-5-5],[4-4-1-3-5],[5-
5-3-5-4],[6-4-3-0-8],[7-4-3-0-4],[8-7-3-2-0],[9-2-2-1-10],[10-7-0-6-4],[11-4-3-
5-8])
Fitness[0]: 1/ (1 + 0 * 2 + 4 * 2 + 4 * 2 + 4 * 2 + 8 * 1) = 0.03030303030303
Fitness [1]: 1/ (1 + 0 * 2 + 4 * 2 + 4 * 2 + 4 * 2 + 8 * 1) = 0.03030303030303
Fitness [2]: 1/ (1 + 0 * 2 + 4 * 2 + 4 * 2 + 4 * 2 + 8 * 1) = 0.03030303030303
Fitness [3]: 1/ (1 + 0 * 2 + 4 * 2 + 4 * 2 + 4 * 2 + 8 * 1) = 0.03030303030303
Fitness [4]: 1/ (1 + 0 * 2 + 4 * 2 + 4 * 2 + 4 * 2 + 8 * 1) = 0.03030303030303
Fitness [5]: 1/ (1 + 0 * 2 + 4 * 2 + 4 * 2 + 4 * 2 + 8 * 1) = 0.03030303030303
Total Fitness: 0.0303
68
Mulai
TF = F1+F2+...Fn
Baca : F, K, Tk
P[i] = F[i]/TF
KP [i] = P[i]+KP[i-1]
R ( 0-1 )
R[i] <=KP[i]
ya
tidak
R[i] <= C[i+1]yaKeluaran : Kb
Selesai
tidak
For i = 1 to N
i = 1 to N
ya
tidak
n = Tk
For i = 1 to N
Gambar 3.19 Flowchart Seleksi
c. Pindah Silang
Apabila kondisi nilai fitness masih belum terpenuhi selanjutnya adalah
Melakukan pindah silang (crossover). Pindah silang disini adalah melakukan
operasi (pertukaran, aritmatika) pada gen-gen yang bersesuaian dari dua induk
69
untuk menghasilkan individu baru. Proses pindah silang dilakukan pada setiap
individu dengan probabilitas crossover yang ditentukan. Pindah silang bisa
dilakukan hanya jika suatu bilangan acak yang dibangkitkan untuk kromosom
kurang dari probabilitas pindah silang yang ditentukan. Probabilitas pindah
silang umumnya ditentukan mendekati nilai 1 (Suyanto, 2005), misalnya
probabilitas pindah silang dalam perhitungan ini ditentukan sebesar 0,5.
Mulai
Baca : Pc, Kb
R (0-1)
In = R
i = 1 to N
tidak
ya
R (1 – panjang kromosom-1)
Of = In(j) pindah silang in(j-1)
Keluaran : Kc
tidak
Selesai
j = 1 to M
ya
For i = 1 to N
For j = 1 to M
Gambar 3.20 Flowchart Pindah Silang
Metode pindah silang yang digunakan adalah pindah silang satu titik potong
(one-point crossover). Suatu titip potong dipilih secara acak, kemudian bagian
70
pertama kromosom induk 1 digabungkan dengan bagian kedua dari kromosom
induk 2. Bilangan acak yang dibangkitkan untuk menentukan posisi titik
potong adalah [1-N] dimana N adalah banyaknya jumlah gen dalam satu
kromosom. Bilangan acak dibangkitkan sebanyak kromosom yang mengalami
pindah silang.
Hasil pindah silang antar kromosom tersebut adalah :
Induk1 [0] : Induk2 [0]
Induk1 [1] : Induk2 [2]
Induk1 [2] : Induk2 [3]
Induk1 [3] : Induk2 [4]
Induk1 [4] : Induk2 [5]
Kromosom[0]:([0-6-3-1-0],[1-1-1-7-11],[2-5-0-3-1],[3-2-1-5-11],[4-2-4-1-
6],[5-6-1-6-5],[6-6-4-1-1],[7-5-0-3-5],[8-4-3-7-7],[9-2-1-0-9],[10-6-2-0-1],[11-
1-1-7-0])
Kromosom[1]: ([0-5-2-4-5],[1-7-4-2-5],[2-0-3-2-5],[3-1-2-1-11],[4-3-1-7-3],[5-
6-4-2-2],[6-4-2-1-10],[7-3-2-3-0],[8-0-0-7-10],[9-7-1-2-1],[10-5-2-5-0],[11-0-
4-6-4])
Kromosom[2]: ([0-3-1-4-5],[1-1-0-5-0],[2-0-0-5-5],[3-1-3-4-2],[4-2-4-1-6],[5-
6-1-6-5],[6-1-3-0-7],[7-7-4-3-8],[8-3-3-5-5],[9-4-2-7-4],[10-3-1-3-10],[11-2-3-
0-9])
Kromosom[3]: ([0-7-1-5-8],[1-2-1-5-10],[2-0-2-1-3],[3-2-0-6-2],[4-2-2-6-6],[5-
5-3-5-4],[6-4-3-0-8],[7-4-3-0-4],[8-7-3-2-0],[9-2-2-1-10],[10-7-0-6-4],[11-4-3-
5-8])
71
Kromosom[4]: ([0-2-4-1-8],[1-6-2-7-8],[2-0-1-0-4],[3-0-2-0-0],[4-1-2-4-10],[5-
7-3-0-1],[6-2-2-3-11],[7-0-2-6-8],[8-0-0-2-5],[9-0-4-0-6],[10-1-0-7-7],[11-4-1-
4-5])
Kromosom[5]: ([0-3-3-1-6],[1-1-2-6-5],[2-6-4-0-8],[3-1-4-5-5],[4-4-1-3-5],[5-
1-2-6-7],[6-0-0-6-8],[7-6-1-4-6],[8-0-2-3-10],[9-5-0-7-11],[10-2-1-3-9],[11-5-
3-5-7])
Fitness[0]: 1/ (1 + 1 * 2 + 6 * 2 + 6 * 2 + 6 * 2 + 8 * 1) = 0.021276595744681
Fitness [1]: 1/ (1 + 0 * 2 + 4 * 2 + 4 * 2 + 4 * 2 + 8 * 1) = 0.03030303030303
Fitness [2]: 1/ (1 + 1 * 2 + 6 * 2 + 6 * 2 + 6 * 2 + 8 * 1) = 0.021276595744681
Fitness [3]: 1/ (1 + 2 * 2 + 7 * 2 + 7 * 2 + 7 * 2 + 6 * 1) = 0.018867924528302
Fitness [4]: 1/ (1 + 0 * 2 + 4 * 2 + 4 * 2 + 4 * 2 + 8 * 1) = 0.03030303030303
Fitness [5]: 1/ (1 + 1 * 2 + 6 * 2 + 6 * 2 + 6 * 2 + 8 * 1) = 0.021276595744681
Total Fitness: 0.27
d. Mutasi
Melakukan proses mutasi gen, operator ini berperan unutk menggantikan gen
yang hilang dari populasi akibat proses seleksi yang memungkinkan
munculnya kembali gen yang tidak muncul pada inisialisasi populasi.
Kromosom anak dimutasi dengan menambahkan nilai random yang sangat
kecil (ukuran langkah mutasi), dengan probabilitas yang rendah.
Total gen = jumlah gen dalam satu kromosom X jumlah kromosom yang ada.
Total gen = 13 x 6 = 78
Probabilitas mutasi ditetapkan 0,1 maka mutasi yang terjadi adalah :
Mutasi = 0,1 x 78 = 7,8 = 8
72
Mulai
Total G = jumlah G x jumlah K
R (0-1)
R tiap gen
R(i) < Pmut
Pilih dan ubah Gen
Selesai
ya
tidak
tidak
Baca : Kc, Pmut
For i = 1 to total G
i = 1 to total G
Keluaran : Km
ya
Gambar 3.21 Flowchart Mutasi
Tetapi bila probabilitas mutasi ini terlalu besar, maka akan terlalu banyak
gangguan acak, sehingga anak akan kehilangan kemiripan dengan induknya.
Untuk mendapatkan posisi gen yang akan dimutasi maka perlu dihitung jumlah
total gen dalam satu populasi yaitu. Bangkitkan bilangan acak sebanyak 8.
Yaitu 1 - 78 untuk menentukan posisi gen yang akan dimutasi. Sehingga akan
menghasilkan susunan kromosom baru sebagai berikut :
73
Kromosom[0]: ([0-6-3-1-0],[1-1-1-7-11],[2-5-0-3-1],[3-0-1-5-6],[4-2-4-1-6],[5-
6-1-6-5],[6-6-4-1-1],[7-5-0-3-5],[8-4-3-7-7],[9-2-1-0-9],[10-2-2-0-0],[11-1-1-
7-0])
Kromosom[1]: ([0-7-2-4-4],[1-7-4-2-5],[2-0-3-2-5],[3-1-2-1-11],[4-3-1-7-
10],[5-6-4-2-2],[6-5-2-1-9],[7-0-2-3-6],[8-0-0-7-10],[9-7-1-2-1],[10-5-2-5-
0],[11-0-4-6-4])
Kromosom[2]: ([0-4-1-4-10],[1-3-0-5-6],[2-0-0-5-5],[3-1-3-4-2],[4-2-4-1-6],[5-
6-1-6-5],[6-1-3-0-7],[7-7-4-3-8],[8-3-3-5-5],[9-4-2-7-4],[10-3-1-3-10],[11-6-3-
0-10])
Kromosom[3]: ([0-7-1-5-8],[1-2-1-5-10],[2-0-2-1-3],[3-2-0-6-2],[4-2-2-6-6],[5-
5-3-5-4],[6-4-3-0-8],[7-5-3-0-3],[8-7-3-2-0],[9-2-2-1-10],[10-7-0-6-4],[11-4-3-
5-8])
Kromosom[4]: ([0-2-4-1-8],[1-6-2-7-8],[2-0-1-0-4],[3-0-2-0-0],[4-4-2-4-4],[5-
7-3-0-1],[6-2-2-3-11],[7-0-2-6-8],[8-0-0-2-5],[9-0-4-0-6],[10-4-0-7-8],[11-4-1-
4-5])
Kromosom[5]: ([0-3-3-1-6],[1-1-2-6-5],[2-6-4-0-8],[3-2-4-5-7],[4-4-1-3-5],[5-
1-2-6-7],[6-0-0-6-8],[7-3-1-4-7],[8-6-2-3-0],[9-5-0-7-11],[10-4-1-3-1],[11-5-3-
5-7])
Fitness[0]: 1/ (1 + 0 * 2 + 6 * 2 + 6 * 2 + 6 * 2 + 8 * 1) = 0.022222222222222
Fitness [1]: 1/ (1 + 0 * 2 + 3 * 2 + 3 * 2 + 3 * 2 + 8 * 1) = 0.037037037037037
Fitness [2]: 1/ (1 + 0 * 2 + 7 * 2 + 7 * 2 + 7 * 2 + 8 * 1) = 0.019607843137255
Fitness [3]: 1/ (1 + 2 * 2 + 6 * 2 + 6 * 2 + 6 * 2 + 6 * 1) = 0.021276595744681
Fitness [4]: 1/ (1 + 0 * 2 + 8 * 2 + 8 * 2 + 8 * 2 + 7 * 1) = 0.017857142857143
Fitness [5]: 1/ (1 + 0 * 2 + 8 * 2 + 8 * 2 + 8 * 2 + 8 * 1) = 0.017543859649123
74
Total Fitness: 0.2695
Jika kondisi telah memenuhi, maka algoritma genetika akan menghentikan
proses pencariannya, tetapi jika belum terpenuhi maka algoritma genetika akan
kembali ke proses seleksi. Dalam kondisi diatas kondisi masih belum
terpenuhi. Nilai fitness terpenuhi apabila mencapai nilai 1. Untuk lebih jelasnya
dapat dilihat pada gambar 3.19. Dalam aplikasi penjadwalan yang dibuat
disediakan inputan untuk memasukkan jumlah iterasi sebanyak yang
diinginkan. Apabila kondisi sebelum sebanyak iterasi yang diinginkan dan
sudah menemukan kondisi yang terpenuhi, maka proses akan berhenti dan
menampilkan hasil kromosom yang sudah memenuhi tersebut. Tetapi apabila
kondisi nilai fitness belum memenuhi, maka proses pencarian akan berhenti
sebanyak iterasi yang diinginkan dan akan menampilkan hasil yang paling
terbaik. Semakin besar nilai fitness maka semakin sedikit jumlah jadwal yang
tumpang tindih. Begitu juga dengan sebaliknya semakin kecil nilai fitness
semakin banyak jumlah jadwal yang tumpang tindih
3.2.5 Entity Relationship Diagram
Perancangan basis data atau yang lebih dikenal dengan entity relationship
diagram (ERD) merupakan representasi model basis data yang berasal dari
gambaran rancangan DFD. ERD terbagi menjadi dua bagian, yaitu Conceptual
Data Model (CDM) dan Physical Data Model (PDM). Adapun kedua jenis basis
data tersebut akan dijelaskan sebagai berikut:
75
A Conceptual Data Model
Conceptual Data Model dari aplikasi penjadwalan ujian ini terdapat
16 tabel, yang terdiri atas tabel V_KARYAWAN, tabel V_FAKULTAS, tabel
V_FAKUL, tabel V_MSTMK, tabel V_KUR, tabel V_DEPARTMENT1,
V_MHS, tabel V_RNG, tabel MK_DIGUNAKAN, tabel KULIAH, tabel
JADWAL, tabel RUANG_DIGUNAKAN, tabel DATA_WAKTU, tabel
DATA_HARI, dan tabel DATA_SLOT_WAKTU, tabel DATA_PENJAGA.
CDM aplikasi penjadwalan ujian dapat dilihat pada Gambar 3.22.
B Physical Data Model
Physical data model dari aplikasi penjadwalan ujian terdapat 16
tabel, yang terdiri atas tabel V_KARYAWAN, tabel V_FAKULTAS, tabel
V_FAKUL, tabel V_MSTMK, tabel V_KUR, tabel V_DEPARTMENT1,
V_MHS, tabel V_RNG, tabel MK_DIGUNAKAN, tabel KULIAH, tabel
JADWAL, tabel RUANG_DIGUNAKAN, tabel DATA_WAKTU, tabel
DATA_HARI, dan tabel DATA_SLOT_WAKTU, tabel DATA_PENJAGA.
PDM aplikasi penjadwalan ujian dapat dilihat pada Gambar 3.23.
76
Reference_1
Reference_2
Reference_3
0,n
Reference_4
Reference_5
0,n
Reference_7
Reference_8
Reference_10
Reference_13
Reference_14
Reference_16
Reference_15
Reference_17
Reference_18
Reference_19
Reference_20
DATA_SLOT_WAKTU
ID_SLOT_WAKTU <pi> Variable characters (2) <M>
ID_SLOT_WAKTU <pi>
DATA_WAKTU
ID_WAKTU
MULAI
SELESAI
<pi> Variable characters (2)
Date
Date
<M>
ID_WAKTU <pi>
DATA_HARI
ID_HARI
NAMA_HARI
<pi> Variable characters (2)
Variable characters (20)
<M>
ID_HARI <pi>
V_RNG
ID
KAP
BARIS
KOLOM
SISA
LANTAI
MAC_ADDRESS
<pi> Variable characters (5)
Number (3)
Variable characters (30)
Number (2)
Number (3)
Variable characters (30)
Variable characters (50)
<M>
Key_1 <pi>
V_MSTMK
ID
NAMA
NAMA_ING
SKS
STATUS_MK_AKTIF
<pi> Variable characters (10)
Variable characters (50)
Variable characters (75)
Number (1)
Variable characters (1)
<M>
Key_1 <pi>
V_KUR
SEMESTER
PRASYARAT
SINONIM
STATUS
JENIS
...
Variable characters (1)
Variable characters (100)
Variable characters (40)
Number
Number
...
V_KARYAWAN
NIK
KARY_TYPE
NAMA
ALAMAT
KOT_ID
SEX
STS_MARITAL
WN
AGAMA
KOTA_LAHIR
TGL_LAHIR
SHIFT
NIP
TELP
STATUS
BAGIAN
ALAMAT_2
KOT_ID_2
TELP_2
ABSENSI
PIN
STS_PIN
MANAGER_ID
GOL_DARAH
MULAI_KERJA
TGL_KELUAR
KELOMPOK
INISIAL
KODE_SIE
ADM
DOSEN
GELAR_DEPAN
GELAR_BELAKANG
PIN_B
KTP
KK
BPJSKESEHATAN
BPJSTENAGAKERJA
<pi> Variable characters (5)
Variable characters (2)
Variable characters (50)
Variable characters (100)
Variable characters (4)
Variable characters (1)
Number (1)
Number (1)
Number (1)
Variable characters (4)
Date
Variable characters (1)
Variable characters (15)
Variable characters (50)
Characters (1)
Number (2)
Variable characters (50)
Variable characters (4)
Variable characters (50)
Number (1)
Variable characters (6)
Variable characters (1)
Variable characters (6)
Variable characters (2)
Date
Date
Variable characters (15)
Variable characters (3)
Number (2)
Number (1)
Number (1)
Variable characters (20)
Variable characters (80)
Variable characters (50)
Variable characters (30)
Variable characters (30)
Variable characters (30)
Variable characters (30)
<M>
Key_1 <pi>
V_FAKULTAS
ID
NAMA
STATUS
JURUSAN
PRODI_ING
JURUSAN_ING
MNGR_ID
ALIAS
SKS_TEMPUH
SKS_AKTIF
ID_FAKULTAS
<pi> Variable characters (5)
Variable characters (50)
Variable characters (1)
Variable characters (50)
Variable characters (50)
Variable characters (50)
Variable characters (6)
Variable characters (10)
Integer
Variable characters (1)
Number
<M>
ID_PRODI <pi>
V_DEPARTEMEN1
KODE
NAMA
MANAGER_ID
PUKET
<pi> Variable characters (2)
Variable characters (35)
Variable characters (6)
Variable characters (6)
<M>
ID_BAGIAN <pi>
V_MHS
NIM
NIRM
NAMA
ALAMAT
STS_RUMAH
SEX
GOL_DARAH
STS_MARITAL
WN
KOTA_LAHIR
STS_PRESENSI
TGL_LAHIR
JALUR_MASUK
KELAS
PIN
KOT_ID
DOSEN_WL
AGAMA
STS_PIN
NAMA2
TLP
KODEPOS
THN_MASUK
NO_TEST
HP
STS_KHUSUS
TGL_REG
PIN_ORTU
PIN_B
PIN_B_ORTU
NIK_KTP
JALAN
RT
RW
DUSUN
KELURAHAN
KECAMATAN
PENERIMA_KPS
NO_KPS
KEBUTUHAN_KHUSUS
<pi> Variable characters (11)
Variable characters (20)
Variable characters (80)
Variable characters (200)
Number (1)
Number (1)
Number (1)
Number (1)
Number (1)
Variable characters (4)
Variable characters (1)
Date
Number (1)
Number (1)
Variable characters (6)
Variable characters (4)
Variable characters (6)
Number (4)
Variable characters (1)
Variable characters (200)
Variable characters (50)
Variable characters (5)
Number
Variable characters (10)
Variable characters (100)
Variable characters (1)
Date
Variable characters (6)
Variable characters (50)
Variable characters (50)
Variable characters (16)
Variable characters (80)
Number (2)
Number (2)
Variable characters (40)
Variable characters (40)
Variable characters (8)
Number (1)
Variable characters (40)
Number (32)
<M>
NIM <pi>
V_KRSP
JKUL_KELAS
STS_UJIAN
<pi> Variable characters (2)
Variable characters (1)
<M>
ID_KELAS <pi>
DATA_PENJAGA
KD_UJIAN
SEMESTER
POSISI
JML_JAGA
STATUS
Number
Variable characters (5)
Number
Number
Variable characters (1)
V_JDWUP
NIM_AKHIR
STS_UJIAN
JMHS
Variable characters (11)
Number (1)
Number (5)
RUANG_DIGUNAKAN
KAPASITAS
LANTAI
Number (3)
Variable characters (30)
V_FAKUL
ID
NAMA
NAMA_ING
ALIAS
MNGR_ID
WKL_MNGR_ID
STS_AKTIF
<pi> Number
Variable characters (200)
Variable characters (200)
Variable characters (10)
Variable characters (6)
Variable characters (6)
Variable characters (1)
<M>
Key_1 <pi>
MK_DIGUNAKAN
STS_UJIAN Variable characters (1)
Gambar 3.22 CDM Aplikasi Penjadwalan Ujian
77
FK_DATA_SLO_REFERENCE_DATA_HAR
FK_DATA_SLO_REFERENCE_DATA_WAK
FK_V_KUR_REFERENCE_V_FAKULTReference_3
FK_V_DEPART_REFERENCE_V_KARYAW
FK_V_KUR_REFERENCE_V_MSTMKReference_5
FK_V_KRSP_REFERENCE_V_MHS
FK_V_KRSP_REFERENCE_V_MSTMK
FK_DATA_PEN_REFERENCE_V_KARYAW
FK_V_JDWUP_REFERENCE_DATA_SLO
FK_V_KRSP_REFERENCE_DATA_PEN
FK_V_KARYAW_REFERENCE_V_FAKULT
FK_V_JDWUP_REFERENCE_V_KRSP
FK_RUANG_DI_REFERENCE_V_RNG
FK_V_JDWUP_REFERENCE_RUANG_DI
FK_MK_DIGUN_REFERENCE_V_KRSP
FK_V_FAKULT_REFERENCE_V_FAKUL
DATA_SLOT_WAKTU
ID_SLOT_WAKTU
ID_HARI
ID_WAKTU
VARCHAR2(2)
VARCHAR2(2)
VARCHAR2(2)
<pk>
<fk1>
<fk2>
DATA_WAKTU
ID_WAKTU
MULAI
SELESAI
VARCHAR2(2)
DATE
DATE
<pk>
DATA_HARI
ID_HARI
NAMA_HARI
VARCHAR2(2)
VARCHAR2(20)
<pk>
V_RNG
ID
KAP
BARIS
KOLOM
SISA
LANTAI
MAC_ADDRESS
VARCHAR2(5)
NUMBER(3)
VARCHAR2(30)
NUMBER(2)
NUMBER(3)
VARCHAR2(30)
VARCHAR2(50)
<pk>
V_MSTMK
ID
NAMA
NAMA_ING
SKS
STATUS_MK_AKTIF
VARCHAR2(10)
VARCHAR2(50)
VARCHAR2(75)
NUMBER(1)
VARCHAR2(1)
<pk>
V_KUR
V_F_ID
ID
SEMESTER
PRASYARAT
SINONIM
STATUS
JENIS
TAHUN
STS_SERTIFIKASI
PRIORITAS
STS_PRA
MIN_NILAI
KOMPETENSI
JENIS WAJIB
VARCHAR2(5)
VARCHAR2(10)
VARCHAR2(1)
VARCHAR2(100)
VARCHAR2(40)
NUMBER
NUMBER
VARCHAR2(4)
NUMBER(1)
NUMBER(2)
VARCHAR2(1)
VARCHAR2(2)
VARCHAR2(2)
VARCHAR2(2)
<pk,fk1>
<pk,fk2>
V_KARYAWAN
NIK
ID
KARY_TYPE
NAMA
ALAMAT
KOT_ID
SEX
STS_MARITAL
WN
AGAMA
KOTA_LAHIR
TGL_LAHIR
SHIFT
NIP
TELP
STATUS
BAGIAN
ALAMAT_2
KOT_ID_2
TELP_2
ABSENSI
PIN
STS_PIN
MANAGER_ID
GOL_DARAH
MULAI_KERJA
TGL_KELUAR
KELOMPOK
INISIAL
KODE_SIE
ADM
DOSEN
GELAR_DEPAN
GELAR_BELAKANG
PIN_B
KTP
KK
BPJSKESEHATAN
BPJSTENAGAKERJA
VARCHAR2(5)
VARCHAR2(5)
VARCHAR2(2)
VARCHAR2(50)
VARCHAR2(100)
VARCHAR2(4)
VARCHAR2(1)
NUMBER(1)
NUMBER(1)
NUMBER(1)
VARCHAR2(4)
DATE
VARCHAR2(1)
VARCHAR2(15)
VARCHAR2(50)
CHAR(1)
NUMBER(2)
VARCHAR2(50)
VARCHAR2(4)
VARCHAR2(50)
NUMBER(1)
VARCHAR2(6)
VARCHAR2(1)
VARCHAR2(6)
VARCHAR2(2)
DATE
DATE
VARCHAR2(15)
VARCHAR2(3)
NUMBER(2)
NUMBER(1)
NUMBER(1)
VARCHAR2(20)
VARCHAR2(80)
VARCHAR2(50)
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(30)
<pk>
<fk>
V_FAKULTAS
ID
V_F_ID
NAMA
STATUS
JURUSAN
PRODI_ING
JURUSAN_ING
MNGR_ID
ALIAS
SKS_TEMPUH
SKS_AKTIF
ID_FAKULTAS
VARCHAR2(5)
NUMBER
VARCHAR2(50)
VARCHAR2(1)
VARCHAR2(50)
VARCHAR2(50)
VARCHAR2(50)
VARCHAR2(6)
VARCHAR2(10)
INTEGER
VARCHAR2(1)
NUMBER
<pk>
<fk>
V_DEPARTEMEN1
KODE
NIK
NAMA
MANAGER_ID
PUKET
VARCHAR2(2)
VARCHAR2(5)
VARCHAR2(35)
VARCHAR2(6)
VARCHAR2(6)
<pk>
<fk>
V_MHS
NIM
NIRM
NAMA
ALAMAT
STS_RUMAH
SEX
GOL_DARAH
STS_MARITAL
WN
KOTA_LAHIR
STS_PRESENSI
TGL_LAHIR
JALUR_MASUK
KELAS
PIN
KOT_ID
DOSEN_WL
AGAMA
STS_PIN
NAMA2
TLP
KODEPOS
THN_MASUK
NO_TEST
HP
STS_KHUSUS
TGL_REG
PIN_ORTU
PIN_B
PIN_B_ORTU
NIK_KTP
JALAN
RT
RW
DUSUN
KELURAHAN
KECAMATAN
PENERIMA_KPS
NO_KPS
KEBUTUHAN_KHUSUS
VARCHAR2(11)
VARCHAR2(20)
VARCHAR2(80)
VARCHAR2(200)
NUMBER(1)
NUMBER(1)
NUMBER(1)
NUMBER(1)
NUMBER(1)
VARCHAR2(4)
VARCHAR2(1)
DATE
NUMBER(1)
NUMBER(1)
VARCHAR2(6)
VARCHAR2(4)
VARCHAR2(6)
NUMBER(4)
VARCHAR2(1)
VARCHAR2(200)
VARCHAR2(50)
VARCHAR2(5)
NUMBER
VARCHAR2(10)
VARCHAR2(100)
VARCHAR2(1)
DATE
VARCHAR2(6)
VARCHAR2(50)
VARCHAR2(50)
VARCHAR2(16)
VARCHAR2(80)
NUMBER(2)
NUMBER(2)
VARCHAR2(40)
VARCHAR2(40)
VARCHAR2(8)
NUMBER(1)
VARCHAR2(40)
NUMBER(32)
<pk>
V_KRSP
NIK
NIM
ID
JKUL_KELAS
STS_UJIAN
VARCHAR2(5)
VARCHAR2(11)
VARCHAR2(10)
VARCHAR2(2)
VARCHAR2(1)
<pk,fk3>
<pk,fk1>
<pk,fk2>
<pk>
DATA_PENJAGA
NIK
KD_UJIAN
SEMESTER
POSISI
JML_JAGA
STATUS
VARCHAR2(5)
NUMBER
VARCHAR2(5)
NUMBER
NUMBER
VARCHAR2(1)
<pk,fk>
V_JDWUP
ID
ID_SLOT_WAKTU
NIK
NIM
V_K_ID
JKUL_KELAS
NIM_AKHIR
STS_UJIAN
JMHS
VARCHAR2(5)
VARCHAR2(2)
VARCHAR2(5)
VARCHAR2(11)
VARCHAR2(10)
VARCHAR2(2)
VARCHAR2(11)
NUMBER(1)
NUMBER(5)
<pk,fk3>
<fk1>
<fk2>
<fk2>
<fk2>
<fk2>
RUANG_DIGUNAKAN
ID
KAPASITAS
LANTAI
VARCHAR2(5)
NUMBER(3)
VARCHAR2(30)
<pk,fk>
V_FAKUL
ID
NAMA
NAMA_ING
ALIAS
MNGR_ID
WKL_MNGR_ID
STS_AKTIF
NUMBER
VARCHAR(200)
VARCHAR(200)
VARCHAR(10)
VARCHAR(6)
VARCHAR(6)
VARCHAR(1)
<pk>
MK_DIGUNAKAN
KARY_NIK
MHS_NIM
JKUL_KLKL_ID
JKUL_KELAS
STS_UJIAN
VARCHAR2(5)
VARCHAR2(11)
VARCHAR2(10)
VARCHAR(2)
VARCHAR(1)
<pk,fk>
<pk,fk>
<pk,fk>
<pk,fk>
Gambar 3.23 PDM Aplikasi Penjadwalan Ujian
78
3.2.6 Struktur Tabel
Berdasarkan Physical Data Model (PDM) yang telah dirancang
sebelumnya, pada aplikasi penjadwalan ujian ini terdapat 16 tabel. Struktur tabel
pada aplikasi penjadwalan ujian ini adalah sebagai berikut :
a. Tabel V_KARYAWAN
Primary Key : NIK
Foreign Key : -
Fungsi : Membaca data karyawan atau dosen
Tabel 3.21 Struktur Tabel V_KARYAWAN
No. Field Type Data Length Keterangan
1 NIK Varchar 6 Primary Key
2 KARY_TYPE Varchar 2
3 NAMA Varchar 50
4 ALAMAT Varchar 100
5 KOT_ID Varchar 4
6 SEX Number 1
7 STS_MARITAL Number 1
8 WN Number 1
9 AGAMA Number 1
10 KOTA_LAHIR Varchar 4
11 TGL_LAHIR Date
12 SHIFT Varchar 1
13 FAKUL_ID Varchar 5
14 NIP Varchar 15
15 TELP Varchar 50
16 STATUS Char 1
17 BAGIAN Number 2
18 ALAMAT_2 Varchar 50
19 KOT_ID_2 Varchar 4
20 TELP_2 Varchar 50
21 ABSENSI Number 1
22 PIN Varchar 6
23 STS_PIN Varchar 1
24 MANAGER_ID Varchar 6
79
No. Field Type Data Length Keterangan
25 GOL_DARAH Varchar 2
26 MULAI_KERJA Date
27 TGL_KELUAR Date
28 KELOMPOK Varchar 15
29 INISIAL Varchar 3
30 KODE_SIE Number 2
31 ADM Number 1
32 DOSEN Number 1
33 GELAR_DEPAN Varchar 20
34 GELAR_BELAKANG Varchar 80
35 PIN_B Varchar 50
36 KTP Varchar 30
37 KK Varchar 30
38 BPJSKESEHATAN Varchar 30
39 BPJSTENAGAKERJA Varchar 30
b. Tabel V_FAKUL
Primary Key : ID
Foreign Key : -
Fungsi : membaca data fakultas
Tabel 3.22 Struktur Tabel V_FAKUL
No. Field Type Data Length
1 ID Number
2 NAMA Varchar 200
3 NAMA_ING Varchar 200
4 ALIAS Varchar 10
5 MNGR_ID Varchar 6
6 WKL_MNGR_ID Varchar 6
7 STS_AKTIF Varchar 1
c. Tabel V_FAKULTAS
Primary Key : ID
Foreign Key : MNGR_ID dan ID_FAKULTAS
80
Fungsi : membaca data program studi
Tabel 3.23 Struktur Tabel V_FAKULTAS
No. Field Type Data Length
1 ID Varchar 5
2 NAMA Varchar 50
3 STATUS Varchar 1
4 JURUSAN Varchar 50
5 PRODI_ING Varchar 50
6 JURUSAN_ING Varchar 50
7 MNGR_ID Varchar 6
8 ALIAS Varchar 10
9 SKS_TEMPUH Integer
10 STS_AKTIF Varchar 1
11 ID_FAKULTAS Number
d. Tabel V_MSTMK
Primary Key : ID
Foreign Key : -
Fungsi : membaca data mata kuliah
Tabel 3.24 Struktur Tabel V_MSTMK
Field Type Data Length Keterangan
ID Varchar 10
Primary
Key
NAMA Varchar 50
NAMA_ING Varchar 75
SKS Number 1
STATUS_MK_AKTIF Varchar 1
e. Tabel V_KUR
Primary Key : PRODI dan ID
Foreign Key : PRODI dan ID
81
Fungsi : membaca data detail mata kuliah
Tabel 3.25 Struktur Tabel V_KUR
No. Field Type Data Length Keterangan
1 PRODI Varchar 5 Primary key, Foreign key
2 ID Varchar 10 Primary key, Foreign key
3 SEMESTER Varchar 1
4 PRASYARAT Varchar 100
5 SINONIM Varchar 40
6 STATUS Number
7 JENIS Number
8 TAHUN Varchar 4
9 STS_SERTIFIKASI Number 1
10 PRIORITAS Number 2
11 STS_PRA Varchar 1
12 MIN_NILAI Varchar 2
13 KOMPETENSI Varchar 2
14 JENIS_WAJIB Varchar 2
f. Tabel V_DEPARTMENT1
Primary Key : KODE
Foreign Key : -
Fungsi : membaca data bagian
Tabel 3.26 Struktur Tabel V_DEPARTMENT1
Field Type Data Length Keterangan
KODE Number 2 Primary Key
NICK Varchar 8
NAMA Varchar 35
MANAGER_ID Varchar 6
PUKET Varchar 6
g. Tabel V_RNG
Primary Key : ID
82
Foreign Key : -
Fungsi : membaca tabel ruang
Tabel 3.27 Struktur Tabel V_RNG
No. Field Type Data Length Keterangan
1 ID Varchar 5 Primary Key
2 KAP Number 3
3 BARIS Number 2
4 KOLOM Number 2
5 SISA Number 3
6 LANTAI Varchar 30
7 MAC_ADDRESS Varchar 50
h. Tabel MK_DIGUNAKAN
Primary Key : ID_PRODI dan ID_MATAKULIAH
Foreign Key : ID_PRODI dan ID_MATAKULIAH
Fungsi : menyimpan data mata kuliah yanga akan digunakan
Tabel 3.28 Struktur Tabel MK_DIGUNAKAN
No. Field Type Data Length Keterangan
1 ID_PRODI Varchar 5 Primary key, Foreign key
2 ID_MATAKULIAH Varchar 10 Primary key, Foreign key
3 SEMESTER Varchar 1
i. Tabel RUANG_DIGUNAKAN
Primary Key : ID_RUANG
Foreign Key : ID_RUANG
Fungsi : menyimpan data ruangan yang akan digunakan
83
Tabel 3.29 Struktur Tabel RUANG_DIGUNAKAN
No. Field Type Data Length Keterangan
1 ID_RUANG Varchar 5 Primary key, Foreign key
2 KAPASITAS Number 3
3 LANTAI Varchar 30
j. Tabel DATA_HARI
Primary Key : ID_HARI
Foreign Key : -
Fungsi : membaca data hari
Tabel 3.30 Struktur Tabel DATA_HARI
No. Field Type Data Length Keterangan
1 ID_HARI Varchar 2 Primary Key
2 NAMA_HARI Varchar 20
k. Tabel DATA_WAKTU
Primary Key : ID_WAKTU
Foreign Key : -
Fungsi : menyimpan data sesi waktu
Tabel 3.31 Struktur Tabel DATA_WAKTU
No. Field Type Data Length Keterangan
1 ID_WAKTU Varchar 2 Primary Key
2 MULAI Date
3 SELESAI Date
l. Tabel DATA_SLOT_WAKTU
Primary Key : ID_SLOT_WAKTU
Foreign Key : ID_HARI dan ID_WAKTU
84
Fungsi : menyimpan data waktu yang digunakan untuk penjadwalan
Tabel 3.32 Struktur Tabel DATA_SLOT_WAKTU
No. Field Type Data Length Keterangan
1 ID_SLOT_WAKTU Varchar 2 Primary Key
2 ID_HARI Varchar 2 Foreign key
3 ID_WAKTU Varchar 2 Foreign key
m. Tabel V_KRSP
Primary Key : JKUL_KELAS
Foreign Key : MHS_NIM, JKUL_KLKL_ID, KARY_NIK, STS_UJIAN
Fungsi : membaca data krs
Tabel 3.33 Struktur Tabel KULIAH
No. Field Type Data Length Keterangan
1 JKUL_KELAS Varchar 2 Primary Key
2 MHS_NIM Varchar 11 Foreign key
3 JKUL_KLKL_ID Varchar 10 Foreign key
4 KARY_NIK Integer 5 Foreign key
5 STS_UJIAN Varchar 1
n. Tabel V_JDWUP
Primary Key : RUA_ID
Foreign Key : KLKL_ID, KARY_NIK, ID_SLOT_WAKTU, KELAS, NIM
AWAL
Fungsi : menyimpan data jadwal ujian
Tabel 3.34 Struktur Tabel JADWAL
No. Field Type Data Length Keterangan
1 RUA_ID Varchar 10 Primary Key
2 KLKL_ID Varchar 5 Foreign key
85
No. Field Type Data Length Keterangan
3 KARY_NIK Varchar 2 Foreign key
4 ID_SLOT_WAKTU Varchar 4 Foreign key
5 KELAS Varchar 2 Foreign key
6 NIM_AWAL Varchar 11 Foreign key
7 NIM_AKHIR Varchar 11
8 STS_UJIAN Number
9 JMHS Number
o. Tabel PENJAGA
Primary Key : NIK
Foreign Key : NIK
Fungsi : menyimpan data jadwal ujian
Tabel 3.35 Struktur Tabel PENJAGA
No. Field Type Data Length Keterangan
1 KD_UJIAN Number 10
2 SEMESTER Varchar 25
3 POSISI Number 2
4 NIK Varchar 5 Primary Key
5 JML_JAGA Number
6 STATUS Varchar 1
p. Tabel V_MHS
Primary Key : NIM
Foreign Key : -
Fungsi : membaca data mahasiswa
Tabel 3.36 Struktur Tabel V_MHS
No. Field Type Data Length Keterangan
1 NIM Number 11 Primary Key
2 NIRM Varchar 20
3 NAMA Number 80
86
No. Field Type Data Length Keterangan
4 ALAMAT Varchar 200
5 STS_RUMAH Number 1
6 SEX Number 1
7 GOL_DARAH Number 1
8 STS_MARITAL Number 1
9 WN Number 1
10 KOTA_LAHIR Varchar 4
11 STS_PRESENSI Varchar 1
12 TGL_LAHIR Date
13 JALUR_MASUK Number 1
14 KELAS Number 1
15 PIN Varchar 6
16 KOT_ID Varchar 4
17 DOSEN_WL Varchar 6
18 AGAMA Number 4
19 STS_PIN Number 1
20 NAMA2 Varchar 200
21 TLP Varchar 50
22 KODE_POS Varchar 5
23 THN_MASUK Number
24 NO_TEST Varchar 10
25 HP Varchar 100
26 STS_KHUSUS Varchar 1
27 TGL_REG Date
28 PIN_ORTU Varchar 6
29 PIN_B_ORTU Varchar 50
30 NIK_KTP Varchar 16
31 JALAN Varchar 80
32 RT Number 2
33 RW Number 2
34 DUSUN Varchar 40
35 KELURAHAN Varchar 40
36 KECAMATAN Varchar 40
37 PENERIMA_KPS Number 1
38 NO_KPS Varchar 40
39 KEBUTUHAN_KHUSUS Number 32
87
3.2.7 Perancangan Interface
Rancangan interface digunakan untuk memberikan gambaran antarmuka
sistem yang akan dibuat. Berikut ini adalah rancangan antarmuka dari aplikasi
penjadwalan ujian di Institut Bisnis dan Informatika Stikom Surabaya dengan
menggunakan algoritma genetika.
a. Rancangan Halaman Login Wakil Rektor 1
Halaman login prodi berfungsi mengecek setiap admin wakil rektor 1 yang
akan menggunakan aplikasi penjadwalan ujian ini. Jika tidak memiliki
kepentingan atau hak untuk menggunakan aplikasi ini, maka tidak akan dapat
menggunakan aplikasi ini karena tidak memiliki username dan password yang
valid. Gambar 3.24 menggambarkan tampilan login wakil rektor 1.
Gambar 3.24 Rancangan Halaman Login Wakil Rektor 1
b. Rancangan Halaman Otorisasi penjaga
Halaman penjaga menampilkan informasi data penjaga yang sudah
ditentukan. Wakil Rektor 1 harus memvalidasi setiap penjaga yang disetujui.
Gambar 3.25 menggambarkan halaman penjaga.
88
Gambar 3.25 Rancangan Halaman Menentukan MK yang Digunakan
c. Rancangan halaman Login AAK
Halaman login AAK berfungsi mengecek setiap admin AAK yang akan
menggunakan aplikasi penjadwalan ujian ini. Jika tidak memiliki kepentingan
atau hak untuk menggunakan aplikasi ini, maka tidak akan dapat
menggunakan aplikasi ini karena tidak memiliki username dan password yang
valid. Gambar 3.26 menggambarkan tampilan login AAK.
Gambar 3.26 Rancangan Halaman Login AAK
d. Rancangan Halaman Ruangan yang Digunakan
Halaman ruangan yang digunakan berfungsi untuk melihat data ruangan mana
saja yang akan digunaka. Pengguna halaman ini adalah Kepala Bagian AAK.
Pada halaman ini akan muncul tombol tambah, yang berfungsi untuk
89
menampilkan data ruangan yang tersedia. Dan kemudian akan menampilkan
semua daftar ruangan yang tersedia. Gambar 3.27 menggambarkan Rancangan
Halaman Ruangan yang Digunakan.
Gambar 3.27 Rancangan Halaman Ruangan yang Digunakan
Dalam halaman ruangan digunakan terdapat tampilan tambah ruangan yang
berfungsi untuk menambah ruangna yang akan digunakan dengan cara
mencentang ruangan yang dipilih kemudian klik simpan. Gambar 3.19
menggambarkan Rancangan Tampilan Tambah Ruangan yang Digunakan.
Gambar 3.28 Rancangan Tampilan Tambah Ruangan yang Digunakan
e. Rancangan Halaman Sesi Jam
Halaman sesi jam berfungsi untuk menyimpan dan menampilkan data
pembagian sesi jam yang ada dalam satu hari. Pengguna halaman ini adalah
90
Kepala Bagian AAK. Gambar 3.29 menggambarkan Rancangan Halaman Sesi
Jam.
Gambar 3.29 Rancangan Halaman Sesi Jam
f. Rancangan Halaman Sebaran Waktu
Halaman sebaran waktu berfungsi untuk menyimpan dan menampilkan data
pembagian sebaran waktu yang akan digunakan untuk penjadwalan. Pengguna
halaman ini adalah Kepala Bagian AAK. Gambar 3.30 menggambarkan
Rancangan Halaman Sebaran Waktu.
Gambar 3.30 Rancangan Halaman Sebaran Waktu
91
g. Rancangan Halaman Mata Kuliah yang Digunakan
Halaman matakuliah yang digunakan berfungsi untuk melihat data matakuliah
mana saja yang akan diujikan. Pengguna halaman ini adalah Kepala Bagian
AAK. Pada halaman ini akan muncul tombol tambah, yang berfungsi untuk
menampilkan data matakuliah yang tersedia. Dan kemudian akan
menampilkan semua daftar matakuliah yang tersedia. Gambar 3.31
menggambarkan Rancangan Halaman Mata Kuliah yang Digunakan Dalam
halaman mata kuliah digunakan terdapat tampilan tambah mata kuliah yang
berfungsi untuk menambah mata kuliah yang akan digunakan dengan cara
mencentang mata kuliah yang dipilih kemudian klik simpan. Gambar 3.32
menggambarkan Rancangan Tampilan Tambah Mata Kuliah yang Digunakan.
Gambar 3.31 Rancangan Halaman Mata Kuliah yang Digunakan
92
Gambar 3.32 Rancangan Tampilan Tambah Mata Kuliah yang Digunakan
h. Rancangan Halaman Pengawas yang Digunakan
Halaman matakuliah yang digunakan berfungsi untuk melihat data pengawas
mana saja yang ada. Pengguna halaman ini adalah Kepala Bagian AAK. Pada
halaman ini akan muncul tombol tambah, yang berfungsi untuk menampilkan
data penanggung jawab dan pengawas yang tersedia.
Gambar 3.33 Rancangan Halaman Penjaga yang Digunakan
93
Dan kemudian akan menampilkan semua daftar pengawas yang tersedia.
Gambar 3.33 menggambarkan Rancangan Halaman Penanggung jawab dan
Pengawas yang Digunakan. Dalam halaman penjaga digunakan terdapat
tampilan tambah penjaga yang berfungsi untuk menambah penjaga yang akan
digunakan dengan cara mencentang mata kuliah yang dipilih kemudian klik
simpan. Gambar 3.34 menggambarkan Rancangan Tampilan Tambah Penjaga
yang Digunakan.
Gambar 3.34 Rancangan Tampilan Tambah Penjaga yang Digunakan
i. Rancangan Fungsi Proses Penjadwalan
Halaman proses penjadwalan berfungsi untuk memproses generate jadwal
dengan masukan jumlah kromosom yang dibangkitkan dan masukan maksimal
generasi. Tombol generate jadwal berfungsi untuk memproses jadwal dalam
satu semester berdasarkan masukan dan data yang sebelumnya sudah
ditentukan. Pengguna halaman ini adalah Kepala Bagian AAK. Gambar 3.35
menggambarkan Rancangan Proses Penjadwalan.
94
Gambar 3.35 Rancangan Halaman Proses Penjadwalan
3.2.8 Perancangan Pengujian dan Evaluasi Aplikasi
Setelah melakukan perancangan dan desain aplikasi penjadwalan ujian,
maka tahap selanjutnya adalah melakukan perencanaan uji coba aplikasi yang
akan dilakukan setelah aplikasi selesai dibangun. Pengujian sistem dilakukan
dengan cara melakukan berbagai percobaan terhadap beberapa menu utama
aplikasi penjadwalan ujian di Institut Bisnis dan Informatika Stikom Surabaya.
Fungsi dari pengujian sistem adalah membuktikan bahwa aplikasi telah berjalan
sesuai dengan tujuan. Pengujian sistem ini menggunakan metode Black Box
Testing. Berikut ini adalah perancangan uji coba pada aplikasi penjadwalan ujian.
a. Rancangan Uji Coba Halaman Mengecek Login pengguna
Rancangan uji coba halaman mengecek login pengguna berfungsi untuk
mengetahui kesesuaian fungsi terhadap keluaran yang dihasilkan halaman login
pengguna. Rancangan uji coba halaman mengecek login pengguna dapat dilihat
pada tabel 3.37.
95
Tabel 3.37 Perancangan Uji Coba Halaman Mengecek Login Pengguna
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
1 Mengetahui respon aplikasi
setelah proses memilih menu
login
Klik menu login Tampilan halaman
login pengguna
2 Mengetahui respon halaman
login jika username dan
password valid
Username dan
password
Tampilan pengguna
berdasarkan dengan
bagian masing-
masing
3 Mengetahui respon halaman
login jika username dan
password tidak valid
Username dan
password
Informasi data
pengguna tidak
benar
b. Rancangan Uji Coba Halaman Menentukan Penjaga yang
Digunakan
Rancangan uji coba halaman menentukan penjaga yang digunakan berfungsi
untuk mengetahui kesesuaian fungsi terhadap keluaran yang dihasilkan
halaman mata kuliah yang digunakan. Rancangan uji coba halaman
menetukan penjaga yang digunakan dapat dilihat pada tabel 3.38.
Tabel 3.38 Perancangan Uji Coba Halaman Penjaga yang Digunakan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
1 Mengetahui respon aplikasi
setelah proses memilih menu
penjaga
Klik menu
penjaga
Tampilan halaman
pilih penanggung
jawab atau
pengawas
2 Mengetahui respon aplikasi
tidak memilih penanggung
jawab atau pengawas
Data penjaga Tampilan halaman
data mata kuliah
berdasarkan
penanggung jawab
atau pengawas yang
dipilih
96
c. Rancangan Uji Coba Tampilan Tambah Penjaga
Diselenggarakan
Rancangan uji coba tampilan menambah penjaga diselenggarakan berfungsi
untuk menambah data penjaga yang diselenggarakan. Rancangan uji coba
tampilan menambah penjaga diselenggarakan dapat dilihat pada Tabel 3.39.
Tabel 3.39 Perancangan Uji Coba Tampilan Tambah Penjaga Diselenggarakan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
1 Mengetahui respon aplikasi
setelah proses memilih
tambah penanggung jawab
atau pengawas
Klik tambah
penanggung
jawab atau
pengawas
Tampilan halaman
dosen atau karyawan
yang tersedia
2 Mengetahui respon halaman
saat memilih penanggung
jawab atau pengawas
ditambahkan
Pilih penjaga Tampilan informasi
penjaga yang terpilih
3 Mengetahui respon halaman
saat memilih data
penanggung jawab atau
pengawas ditambahkan
Pilih simpan Tampilan informasi
data berhasil
disimpan
d. Rancangan Uji Coba Halaman Menentukan MK yang
Digunakan
Rancangan uji coba halaman menentukan mata kuliah yang digunakan
berfungsi untuk mengetahui kesesuaian fungsi terhadap keluaran yang
dihasilkan halaman mata kuliah yang digunakan. Rancangan uji coba halaman
menetukan mata kuliah yang digunakan dapat dilihat pada tabel 3.40.
97
Tabel 3.40 Perancangan Uji Coba Tampilan Tambah Penjaga Diselenggarakan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
1 Mengetahui respon aplikasi
setelah proses memilih menu
mata kuliah
Klik menu mata
kuliah
Tampilan halaman
pilih matakuliah
2 Mengetahui respon aplikasi
tidak memilih matakuliah
yang dijadwalkan
Data matakuliah Tampilan halaman
data mata kuliah
berdasarkan yang
dipilih
3 Mengetahui respon halaman
setelah memilih detail
matakuliah
Klik detail
matakuliah
Tampilan informasi
data mahasiswa tiap
mata kuliah
e. Rancangan Uji Coba Tampilan Tambah MK
Diselenggarakan
Rancangan uji coba tampilan menambah mata kuliah diselenggarakan
berfungsi untuk menambah data mata kuliah yang diselenggarakan diluar
semester yang bersangkutan. Rancangan uji coba tampilan menambah mata
kuliah diselenggarakan dapat dilihat pada Tabel 3.41.
Tabel 3.41 Perancangan Uji Coba Halaman Tambah MK Diselenggarakan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
1 Mengetahui respon aplikasi
setelah proses memilih menu
matakuliah
Klik menu
tambah
Tampilan informasi
data mata kuliah
2 Mengetahui respon halaman
setelah memilih detail
matakuliah
Klik detail
matakuliah
Tampilan informasi
detail kelas tiap
mata kuliah
3 Mengetahui respon halaman
jika data mata kuliah
disimpan
Data matakuliah Tampilan informasi
data berhasil
disimpan
98
f. Rancangan Uji Coba Halaman Hasil Jadwal
Rancangan uji coba Halaman Hasil Jadwal berfungsi untuk melihat hasil
jadwal yang sudah jadi. Rancangan uji coba halaman hasil jadwal dapat dilihat
pada Tabel 3.42.
Tabel 3.42 Perancangan Uji Coba Halaman Hasil Jadwal
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
1 Mengetahui respon aplikasi
setelah proses memilih menu
lihat jadwal
Klik menu lihat
jadwal
Tampilan halaman
jadwal ujian yang
sudah jadi
2 Mengetahui respon aplikasi
setelah proses memilih menu
excel
Klik menu excel Informasi jadwal
excel
g. Rancangan Uji Coba Halaman Ruangan yang Digunakan
Rancangan uji coba halaman ruangan yang digunakan berfungsi untuk
menentukan ruangan yang akan digunakan. Rancangan uji coba Halaman
Ruangan yang Digunakan dapat dilihat pada Tabel 3.43.
Tabel 3.43 Perancangan Uji Coba Halaman Ruangan yang Digunakan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
1 Mengetahui respon aplikasi
setelah proses memilih menu
ruang
Klik menu ruang Tampilan halaman
ruangan yang
tersedia
2 Mengetahui respon halaman
jika data ruangan disimpan
Data ruangan Tampilan informasi
data berhasil
disimpan
h. Rancangan Uji Coba Halaman Sebaran Waktu
99
Rancangan uji coba halaman ruangan yang digunakan berfungsi untuk
menentukan ruangan yang akan digunakan. Rancangan uji coba Halaman
Sebaran Waktu dapat dilihat pada Tabel 3.44.
Tabel 3.44 Perancangan Uji Coba Halaman Sebaran Waktu
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
1 Mengetahui respon aplikasi
setelah proses memilih menu
sebaran waktu
Klik menu
sebaran waktu
Tampilan halaman
form yang sebaran
waktu
3 Mengetahui respon halaman
jika data sebaran waktu
disimpan
Data sebaran
waktu
Tampilan informasi
data berhasil
disimpan
i. Rancangan Uji Coba Halaman Proses Penjadwalan
Rancangan uji coba halaman proses penjadwalan berfungsi untuk memproses
jadwal untuk satu semester berdasarkan dengan data data yang sudah ada
sebelumnya. Rancangan uji coba Halaman Proses Penjadwalan dapat dilihat
pada Tabel 3.45.
Tabel 3.45 Perancangan Uji Coba Halaman Proses Penjadwalan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
1 Mengetahui respon aplikasi
setelah proses memilih menu
proses penjadwalan
Klik menu Proses
Penjadwalan
Tampilan halaman
proses penjadwalan
2 Mengetahui respon halaman
jika menekan tombol
generate jadwal
Klik tombol
generate jadwal
Tampilan informasi
data berhasil diproses
dan disimpan
j. Rancangan Uji Coba Halaman Otorisasi penjaga
100
Rancangan uji coba halaman proses otorisasi penjaga berfungsi untuk
memproses data penjaga yang akan di validasi. Rancangan uji coba Halaman
Proses Otorisasi penjaga dapat dilihat pada Tabel 3.46.
Tabel 3.46 Perancangan Uji Coba Halaman Otorisasi penjaga
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
1 Mengetahui respon aplikasi
setelah proses memilih menu
proses otorisasi penjaga
Klik menu Proses
otorisasi penjaga
Tampilan halaman
proses proses penjaga
2 Mengetahui respon halaman
jika mencentang tombol
validasi jadwal
Klik centang
penjaga
Tampilan informasi
data berhasil diproses
dan disimpan
101
BAB IV
IMPLEMENTASI DAN EVALUASI SISTEM
4.1 Implementasi Sistem (Konstruksi Sistem)
Berdasarkan hasil analisis dan perancangan sistem pada bab sebelumnya,
maka dibuat aplikasi penjadwalan ujian. Implementasi bertujuan untuk
menerapkan sistem yang dibangun agar dapat mengatasi permasalahan yang telah
diangkat pada penelitian ini. Tahap-tahap yang dilakukan pada implementasi ini
adalah mengindentifikasi kebutuhan sistem baik perangkat keras maupun
perangkat lunak serta menerapkan rancangan dan mengevaluasi sistem yang
dibangun.
4.1.1 Kebutuhan Sistem
Dalam merancang dan membangun aplikasi penjadwalan ujian terdapat
beberapa perangkat keras dan perangkat lunak yang akan mendukung dalam
implementasi sistem ini. Pada proses implementasi aplikasi aplikasi penjadwalan
ujian terdapat beberapa spesifikasi perangkat keras dan perangkat lunak yang
dibutuhkan.
A Kebutuhan Perangkat Keras
Perangkat keras adalah komponen fisik atau peralatan yang berbentuk
fisik yang membentuk komputer, serta peralatan lain yang mendukung perangkat
lunak dalam menjalankan tugas-tugasnya. Sifat umum dari perangkat keras adalah
dapat dilihat dan dipegang dalam bentuk fisik. Perangkat keras yang digunakan
102
adalah komputer atau laptop. Spesifikasi minimun komputer yang digunakan
untuk menjalankan aplikasi penjadwalan ujian ini dapat dilihat di bawah ini.
Bagi developer yaitu menggunakan:
1. Prosesor Intel Core i5 2.30 Ghz
2. RAM 4096 MB
3. VGA NVIDIA GeForce GT 720M 2140 MB
4. Harddisk 500 GB
5. Modem Internet
Bagi user/pengguna sistem minimal menggunakan:
1. Prosesor Intel Core i3 1.80 Ghz
2. RAM 2000 MB
3. VGA Card 256 MB
4. Harddisk 250 GB
5. Modem Internet
B Kebutuhan Perangkat Lunak
Perangkat lunak memiliki sifat yang bertolak belakang dengan perangkat
keras. Perangkat lunak tidak berbentuk fisik dan tidak dapat dipegang. Perangkat
lunak memiliki peran dalam menghubungkan antara pengguna dengan perangkat
keras melalui user interface yang dimengerti oleh pengguna. Perangkat lunak
mencakup sistem operasi hingga aplikasi yang terdapat pada sistem operasi.
Spesifikasi minimum perangkat lunak yang digunakan untuk menjalankan aplikasi
penjadwalan ujian dapat di bawah ini.
Bagi developer yaitu menggunakan:
a. Sistem operasi (windows 8.1 )
103
b. XAMPP (Apache)
c. Database (Oracel XE 11g)
d. Text Editor (Sublime Text)
e. Web Browser (Mozilla Firefox v.20)
f. Perancangan Sistem (Microsoft Visio 2007, Power Designer 6, Power
Designer 15)
Bagi user/pengguna sistem minimal menggunakan:
1. Sistem operasi (windows 7 )
2. Web Browser pada komputer (Mozilla Firefox v.20, Google Chrome)
4.1.2 Penjelasan Implementasi Sistem
Penjelasan tentang implementasi sistem yaitu aplikasi penjadwalan ujian
berfungsi untuk menjelaskan cara kerja aplikasi ini ketika diimplementasikan.
Fungsi lain dari penjelasan implementasi sistem adalah mengenalkan pengguna
cara kerja atau alur dari aplikasi penjadwalan ujian. Halaman yang ada di dalam
aplikasi penjadwalan akan dijelaskan sebagai berikut:
a. Halaman Mengecek Login pengguna
Halaman mengecek login pengguna adalah sebuah halaman yang berfungsi
untuk mengecek akun pengguna yang akan menggunakan aplikasi
penjadwalan ujian. Jika pengguna tidak memiliki hak untuk mengakses
aplikasi ini atau salah memasukkan username dan password maka aplikasi
tidak akan memberikan akses untuk masuk dan menggunakan aplikasi
penjadwalan ujian. Halaman mengecek login pengguna digunakan oleh dua
jenis pengguna yaitu kepala bagian wakil rektor 1 dan kepala bagian AAK.
Tampilan halaman mengecek login pengguna dapat dilihat pada Gambar 4.1.
104
Gambar 4.1 Halaman Login pengguna
b. Halaman utama aplikasi penjadwalan ujian
Halaman utama ujian yang digunakan berfungsi untuk ada menu apa saja yang
ada dalam proses penjadwalan. Pengguna halaman ini adalah Kepala Bagian
AAK. Pada halaman ini akan muncul beberapa menu diantaranya penjaga,
matakuliah, ruang, waktu, proses penjadwalan, lihat jadwal. Gambar 4.2
menggambarkan Halaman utama penjadwalan ujian
Gambar 4.2 Halaman Utama Penjadwalan Ujian
c. Fungsi Menentukan Matakuliah yang Diujikan
Halaman menentukan mata kuliah yang diselenggarakan berfungsi untuk
menentukan mata kuliah apa saja yang akan dijadwalkan. Pengguna halaman
105
ini adalah Kepala Bagian AAK. Pada halaman ini akan menampilkan semua
daftar mata kuliah yang ada sesuai dengan KRS. Gambar 4.3 menggambarkan
Halaman Menentukan MK yang Diujikan.
Gambar 4.3 Halaman Data Matakuliah yang Diselenggarakan.
Gambar 4.4 Tampilan Tambah Matakuliah Diselenggarakan.
Pada tampilan tambah mk diselenggarakan berfungsi untuk menambah data
mk yang lainnya untuk diselenggarakan. Pengguna halaman ini adalah Ketua
AAK. Untuk memilihnya dengan cara mencentang nama mata kuliah yang
akan ditambahkan. Gambar 4.4 menggambarkan Tampilan Tambah MK
Diselenggarakan.
106
c. Fungsi Menentukan Penjaga
Halaman menentukan penjaga berfungsi untuk menentukan penjaga
berdasarkan karyawan yang ada. Pengguna halaman ini adalah Kepala AAK.
Untuk menentukan penjaga dengan memilih penanggung jawab dan
pengawas, dan dilanjutkan dengan memilih tambah penjaga. Gambar 4.5 dan
Gambar 4.6 menggambarkan Halaman Menentukan Penjaga
Gambar 4.5 Halaman Menentukan Penanggung Jawab
Gambar 4.6 Halaman Menentukan Pengawas
Melalui halaman menentukan penjaga, pengguna dapat menambahkan jumlah
jaga setiap karyawan yang tersedia. tampilan tambah jumlah jaga
digambarkan pada gambar 4.7.
107
Gambar 4.7 Tampilan Tambah Jumlah Jaga
d. Fungsi Menentukan Ruangan yang Digunakan
Pada fungsi ruangan yang digunakan berfungsi untuk melihat data ruangan
mana saja yang akan digunakan. Pengguna halaman ini adalah Kepala Bagian
AAK. Pada halaman ini akan muncul tombol tambah, yang berfungsi untuk
menampilkan data ruangan yang tersedia. Dan kemudian akan menampilkan
semua daftar ruangan yang tersedia. Gambar 4.8 menggambarkan Halaman
Ruangan yang Digunakan.
Gambar 4.8 Halaman Ruangan yang Digunakan
Dalam halaman ruangan digunakan terdapat tampilan tambah ruangan yang
berfungsi untuk menambah ruangan yang akan digunakan dengan cara
mencentang ruangan yang dipilih kemudian klik simpan. Gambar 4.9
menggambarkan Tampilan Tambah Ruangan yang Digunakan.
108
Gambar 4.9 Tampilan Tambah Ruangan yang Digunakan
e. Fungsi Menentukan Waktu
Fungsi menentukan waktu berfungsi untuk menyimpan dan menampilkan data
pembagian waktu yang akan digunakan untuk penjadwalan. Pengguna
halaman ini adalah Kepala Bagian AAK. Gambar 4.10 menggambarkan
Halaman Waktu.
Gambar 4.10 Halaman Sebaran Waktu
109
f. Fungsi Menentukan Sebaran Waktu
Fungsi menentukan sebaran waktu berfungsi untuk menyimpan dan
menampilkan data pembagian sebaran waktu yang akan digunakan untuk
penjadwalan. Pengguna halaman ini adalah Kepala Bagian AAK. Gambar
4.11 menggambarkan Halaman Sebaran Waktu.
Gambar 4.11 Halaman Sebaran Waktu
g. Fungsi Memproses Jadwal ujian
Pada fungsi memproses jadwal ujian berfungsi untuk memproses generate
jadwal dengan masukan jumlah kromosom yang dibangkitkan, masukan
maksimal generasi, masukan probabilitas pindah silang, dan masukan
probabilitas mutasi.
110
Gambar 4.12 Halaman Proses Penjadwalan
Tombol generate jadwal berfungsi untuk memproses jadwal dalam satu
semester berdasarkan masukan dan data yang sebelumnya sudah ditentukan.
Untuk menampilkan proses algoritma genetika yaitu dengan mencentang pada
kotak ”Tampilkan proses algoritma”. Pengguna halaman ini adalah Kepala
Bagian AAK. Gambar 4.12 menggambarkan Proses Penjadwalan.
h. Fungsi Hasil Jadwal ujian
Fungsi hasil jadwal ujian berfungsi untuk menampilkan hasil jadwal yang
sudah diproses dengan mengginakan algoritma genetika, yang selanjutnya
akan ditampilkan dalam sebuah tabel daftar jadwal ujian dalam satu minggu.
Pengguna halaman ini adalah Kepala Bagian AAK. Gambar 4.13
menggambarkan Halaman Hasil Jadwal Ujian.
111
Gambar 4.13 Halaman Hasil Jadwal ujian
i. Fungsi Otorisasi penjaga
Fungsi otorisasi penjaga berfungsi untuk menampilkan penjaga yang sudah
dipilih oleh bagian AAK, yang selanjutnya akan ditampilkan dalam halaman
validasi. Pengguna halaman ini adalah wakil rektor 1. Gambar 4.14
menggambarkan Halaman Otorisasi penjaga.
Gambar 4.14 Halaman Otorisasi penjaga
4.2 Evaluasi Sistem
Pada proses evaluasi sistem memiliki fungsi untuk mengetahui dan
memastikan bahwa aplikasi telah dibuat dengan benar dan sesuai dengan
kebutuhan yang diharapkan. Menguji dan mempertahankan sistem dilakukan
112
untuk menguji kembali semua tahapan yang sudah dilakukan selama pengujian
berlangsung Uji coba dilakukan dalam beberapa tahapan uji coba (test case) yang
telah disiapkan sebelumnya. Proses pengujian sistem informasi pemanfaatan
tanaman obat tradisional Indonesia berbasis web menggunakan black box testing.
Pengujian black box testing berfungsi untuk membuktikan bahwa sistem yang
sudah dibuat telah sesuai dengan tujuan.
a. Hasil uji Coba Halaman Mengecek Login pengguna
Hasil uji coba halaman mengecek login pengguna berfungsi untuk mengetahui
kesesuaian fungsi terhadap keluaran yang dihasilkan halaman login pengguna.
Hasil uji coba halaman mengecek login pengguna dapat dilihat pada tabel 4.1.
Tabel 4.1 Hasil Uji Coba Halaman Mengecek Login Pengguna
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
1 Mengetahui
respon aplikasi
setelah proses
memilih menu
login
Klik menu
login
Tampilan
halaman
login
pengguna
Hasil
Keluaran
ditunjukkan
Gambar
4.15
Sukses
2 Mengetahui
respon halaman
login jika
username dan
password valid
Username
dan
password
Tampilan
pengguna
berdasarkan
dengan
bagian
masing-
masing
Hasil
Keluaran
ditunjukkan
Gambar
4.16, 4.17
Sukses
3 Mengetahui
respon halaman
login jika
username dan
password tidak
valid
Username
dan
password
Informasi
data
pengguna
tidak benar
Hasil
Keluaran
ditunjukkan
Gambar
4.18
Sukses
113
Pada Gambar 4.15 adalah tampilan login pengguna, Gambar 4.16, 4.17 adalah
tampilan halaman AAK dan tampilan halaman AAK. Gambar 4.18 adalah
menginformasikan data pengguna tidak benar.
Gambar 4.15 Halaman Login pengguna
Gambar 4.16 Tampilan AAK
Gambar 4.17 Tampilan Halaman Wakil Rektor 1
114
Gambar 4.18 Informasi “User atau Password Salah”
b. Hasil Uji Coba Halaman Menentukan MK yang Digunakan
Hasil uji coba halaman menentukan mata kuliah yang digunakan berfungsi
untuk mengetahui kesesuaian fungsi terhadap keluaran yang dihasilkan
halaman mata kuliah yang digunakan. Hasil uji coba halaman menetukan mta
kuliah yang digunakan dapat dilihat pada tabel 4.2.
Tabel 4.2 Hasil Uji Coba Halaman Menentukan MK yang Digunakan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
1 Mengetahui
respon aplikasi
setelah proses
memilih menu
mata kuliah
Klik menu
mata
kuliah
Tampilan
halaman
pilih UTS
atau UAS
Hasil
Keluaran
ditunjukkan
Gambar
4.19
Sukses
2 Mengetahui
respon aplikasi
memilih
matakuliah yang
UTS atau UAS
Data
matakuliah
Tampilan
halaman
data mata
kuliah
berdasarkan
UTS atau
UAS yang
dipilih
Hasil
Keluaran
ditunjukkan
Gambar
4.20
Sukses
3 Mengetahui
respon halaman
setelah memilih
detail
Klik detail
matakuliah
Tampilan
informasi
data
mahasiswa
Hasil
Keluaran
ditunjukkan
Gambar
Sukses
115
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
matakuliah tiap mata
kuliah
4.21
Pada Gambar 4.19 adalah tampilan gambar memilih ujian yang dipilih. Dan
pada gambar 4.20 adalah tampilan data mata kuliah dengan ujian yang dipilih.
Gambar 4.19 Halaman informasi data mata kuliah dipilih
Gambar 4.20 Halaman informasi data mata kuliah dipilih
116
Gambar 4.21 Halaman informasi data mahasiswa
c. Hasil Uji Coba Tampilan Tambah MK Diselenggarakan
Hasil uji coba tampilan menambah mata kuliah diselenggarakan berfungsi
untuk menambah data mata kuliah yang diselenggarakan diluar semester yang
bersangkutan. Hasil uji coba tampilan menambah mata kuliah diselenggarakan
dapat dilihat pada Tabel 4.3.
Tabel 4.3 Hasil Uji Coba Tampilan Tambah MK Diselenggarakan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
117
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
1 Mengetahui
respon aplikasi
setelah proses
memilih menu
matakuliah
Klik menu
tambah
Tampilan
informasi
data mata
kuliah
Hasil
Keluaran
ditunjukkan
Gambar
4.22
Sukses
2 Mengetahui
respon halaman
setelah
memilih detail
matakuliah
Klik detail
matakuliah
Tampilan
informasi
detail kelas
tiap mata
kuliah
Hasil
Keluaran
ditunjukkan
Gambar
4.23
Sukses
3 Mengetahui
respon halaman
jika data mata
kuliah
disimpan
Pilih
simpan
Tampilan
informasi
data berhasil
disimpan
Hasil
Keluaran
ditunjukkan
Gambar
4.24
Sukses
Pada Gambar 4.22 adalah Halaman informasi data mata kuliah yang tersedia.
Pada Gambar 4.23 adalah Halaman informasi data mata kuliah yang terpilih
Dan pada gambar 4.24 adalah Informasi data berhasil disimpan.
Gambar 4.22 Halaman informasi data mata kuliah yang tersedia
118
Gambar 4.23 Halaman informasi data mata kuliah yang tersedia
Gambar 4.24 Informasi data berhasil disimpan
d. Hasil Uji Coba Halaman Penjaga yang digunakan
Hasil uji coba halaman menentukan penjaga yang digunakan berfungsi untuk
mengetahui kesesuaian fungsi terhadap keluaran yang dihasilkan halaman
penjaga yang digunakan. Hasil uji coba halaman menentukan penjaga yang
digunakan dapat dilihat pada tabel 4.4.
Tabel 4.4 Hasil Uji Coba Halaman Penjaga yang Digunakan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
1 Mengetahui
respon aplikasi
setelah proses
memilih menu
penjaga
Klik menu
penjaga
Tampilan
halaman
pilih
penanggung
jawab atau
Hasil
Keluaran
ditunjukkan
Gambar
4.25
Sukses
119
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
pengawas
2 Mengetahui
respon aplikasi
memilih
penanggung
jawab atau
pengawas
Data
penjaga
Tampilan
halaman
penjaga
berdasarkan
penanggung
jawab atau
pengawas
yang dipilih
Hasil
Keluaran
ditunjukkan
Gambar
4.26
Sukses
Pada Gambar 4.25 adalah tampilan gambar memilih penanggung jawab atau
pengawas. Dan pada gambar 4.26 adalah tampilan penanggung jawab atau
pengawas yang dipilih.
Gambar 4.25 Halaman informasi penanggung jawab dipilih
120
Gambar 4.26 Halaman informasi data pengawas dipilih
e. Hasil Uji Coba Tampilan Tambah Penjaga Diselenggarakan
Hasil uji coba tampilan menambah penjaga diselenggarakan berfungsi untuk
menambah data penjaga yang diselenggarakan diluar semester yang
bersangkutan. Hasil uji coba tampilan menambah penjaga diselenggarakan
dapat dilihat pada Tabel 4.5.
Tabel 4.5 Hasil Uji Coba Tampilan Tambah Penjaga Diselenggarakan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
1 Mengetahui
respon aplikasi
setelah
memilih
tambah
penanggung
jawab atau
pengawas
Klik menu
tambah
penanggung
jawab atau
pengawas
Tampilan
halaman
dosen atau
karyawan
yang tersedia
Hasil
Keluaran
ditunjukkan
Gambar
4.27
Sukses
2 Mengetahui
respon saat
penanggung
jawab atau
pengawas
ditambahkan
Pilih
penjaga
Tampilan
informasi
penjaga yang
terpilih
Hasil
Keluaran
ditunjukkan
Gambar
4.28
Sukses
121
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
3 Mengetahui
respon
halaman saat
memilih data
penanggung
jawab atau
pengawas
ditambahkan
Pilih
simpan
Tampilan
informasi
data berhasil
disimpan
Hasil
Keluaran
ditunjukkan
Gambar
4.29
Sukses
Gambar 4.27 Halaman informasi data penjaga yang tersedia
122
Gambar 4.28 Halaman informasi data penjaga yang tersedia
Pada Gambar 4.27 adalah Halaman informasi data penjaga yang tersedia. Pada
Gambar 4.28 adalah Halaman informasi data penjaga yang terpilih Dan pada
gambar 4.29 adalah Informasi data berhasil disimpan.
Gambar 4.29 Informasi data berhasil disimpan
123
f. Hasil Uji Coba Halaman Ruangan yang Digunakan
Hasil uji coba halaman ruangan yang digunakan berfungsi untuk menentukan
ruangan yang akan digunakan. Hasil uji coba Halaman Ruangan yang
Digunakan dapat dilihat pada Tabel 4.6.
Tabel 4.6 Perancangan Uji Coba Halaman Ruangan yang Digunakan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
1 Mengetahui
respon aplikasi
setelah proses
memilih menu
ruang
Klik
menu
ruang
Tampilan
halaman
ruangan yang
tersedia
Hasil
Keluaran
ditunjukkan
Gambar 4.30
Sukses
2 Mengetahui
respon halaman
jika data ruangan
disimpan
Data
ruangan
Tampilan
informasi
data berhasil
disimpan
Hasil
Keluaran
ditunjukkan
Gambar 4.31
Sukses
Pada Gambar 4.30 adalah Tampilan halaman ruangan yang tersedia. Dan pada
gambar 4.31 adalah Tampilan informasi data berhasil disimpan.
Gambar 4.30 Tampilan halaman ruangan yang tersedia
124
Gambar 4.31 Informasi data berhasil disimpan
g. Hasil Uji Coba Halaman Sebaran Waktu
Hasil uji coba halaman ruangan yang digunakan berfungsi untuk menentukan
ruangan yang akan digunakan. Hasil uji coba Halaman Sebaran Waktu dapat
dilihat pada Tabel 4.7.
Tabel 4.7 Hasil Uji Coba Halaman Sebaran Waktu
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
1 Mengetahui
respon aplikasi
setelah proses
memilih menu
sebaran waktu
Klik menu
sebaran
waktu
Tampilan
halaman
form yang
sebaran
waktu
Hasil
Keluaran
ditunjukkan
Gambar
4.32
Sukses
2 Mengetahui
respon halaman
jika data
sebaran waktu
disimpan
Data
sebaran
waktu
Tampilan
informasi
data
berhasil
disimpan
Hasil
Keluaran
ditunjukkan
Gambar
4.33
Sukses
Pada Gambar 4.32 adalah Tampilan halaman form yang sebaran waktu. Dan
pada gambar 4.33 adalah Tampilan informasi data berhasil disimpan.
125
Gambar 4.32 Tampilan halaman form yang sebaran waktu
Gambar 4.33 Tampilan informasi data berhasil disimpan
h. Hasil Uji Coba Halaman Proses Penjadwalan
Hasil uji coba halaman proses penjadwalan berfungsi untuk memproses jadwal
untuk satu semester berdasarkan denga data data yang sudah ada sebelumnya.
Hasil uji coba Halaman Proses Penjadwalan dapat dilihat pada Tabel 4.8.
Tabel 4.8 Hasil Uji Coba Halaman Proses Penjadwalan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
1 Mengetahui
respon
aplikasi
setelah proses
memilih menu
Klik menu
Proses
Penjadwalan
Tampilan
halaman
proses
penjadwalan
Hasil
Keluaran
ditunjukkan
Gambar
4.34
Sukses
126
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
proses
penjadwalan
2 Mengetahui
respon
halaman jika
menekan
tombol
generate
jadwal
Klik tombol
generate
jadwal
Tampilan
informasi
data
berhasil
diproses dan
disimpan
Hasil
Keluaran
ditunjukkan
Gambar
4.35
Sukses
Gambar 4.34 adalah Tampilan halaman proses penjadwalan
Gambar 4.35 Tampilan informasi data berhasil diproses dan disimpan
127
Pada Gambar 4.34 adalah Tampilan halaman proses penjadwalan. Dan pada
gambar 4.35 adalah Tampilan informasi data berhasil diproses dan disimpan.
i. Hasil Uji Coba Halaman Otorisasi penjaga
Hasil uji coba halaman proses otorisasi penjaga untuk memproses data
penjaga yang akan di validasi. Hasil uji coba Halaman Proses Penjadwalan
dapat dilihat pada Tabel 4.9.
Tabel 4.9 Hasil Uji Coba Halaman Proses Penjadwalan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
1 Mengetahui
respon
aplikasi
setelah
proses
memilih
menu
otorisasi
penjaga
Klik menu
Proses
validasi
penjaga
Tampilan
halaman
proses
validasi
penjaga
Hasil
Keluaran
ditunjukkan
Gambar
4.36
Sukses
2 Mengetahui
respon
halaman
jika
mencentang
tombol
otorisasi
penjaga
Klik tombol
otorisasi
penjaga
Tampilan
informasi
data
berhasil
diproses dan
disimpan
Hasil
Keluaran
ditunjukkan
Gambar
4.37
Sukses
Pada Gambar 4.36 adalah Tampilan halaman proses penjadwalan. Dan pada
gambar 4.37 adalah Tampilan informasi data berhasil diproses dan disimpan.
128
Gambar 4.36 Tampilan halaman proses penjadwalan
Gambar 4.37 Tampilan informasi data berhasil diproses dan disimpan
j. Hasil Uji Coba Halaman Hasil Jadwal
Hasil uji coba halaman proses hasil jadwal untuk memproses data penjaga
yang akan di validasi. Hasil uji coba Halaman Proses Penjadwalan dapat
dilihat pada Tabel 4.10.
Tabel 4.10 Hasil Uji Coba Halaman Proses Penjadwalan
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
1 Mengetahui
respon
aplikasi
setelah proses
memilih menu
lihat jadwal
Klik menu
Proses
validasi
penjaga
Tampilan
halaman
proses
validasi
penjaga
Hasil
Keluaran
ditunjukkan
Gambar
4.38
Sukses
129
No Tujuan Skenario
Pengujian
Hasil Yang
Diharapkan
Keluaran Status
2 Mengetahui
respon
halaman jika
proses
memilih excel
Klik tombol
excell
Tampilan
informasi
data hasil
jadwal
Hasil
Keluaran
ditunjukkan
Gambar
4.39
Sukses
Pada Gambar 4.38 adalah Tampilan halaman hasil jadwal. Dan pada gambar
4.39 adalah Tampilan informasi data hasil excel.
Gambar 4.38 Tampilan halaman hasil jadwal ujian
Gambar 4.39 Tampilan informasi data hasil jadwal ujian excel
4.2.2 Analisis Hasil Uji Coba
Setelah melakukan pengujian terhadap fungsi-fungsi dari aplikasi
penjadwalan ujian, uji coba akan dilanjutkan dengan uji coba menggunakan
130
masukkan beberapa parameter untuk mengetahui hasil akhir yang akan dihasilkan
oleh sistem sudah sesuai dengan yang diharapkan. Pengujian serta analisis ini
bertujuan untuk mengetahui kemampuan algoritma genetika dalam mencari solusi
terbaik. Untuk menghasilkan solusi terbaik yaitu dengan mencari nilai yang paling
optimal dalam setiap proses algoritma genetika. Pada uji coba yang dilakukan
dengan menggunakan 40 kelas kuliah, 6 ruang yang digunakan, 25 sebaran waktu
dan 20 karyawan yang disediakan. Berikut adalah analisis hasil uji coba dengan
beberapa masukkan parameter.
a. Analisis dan hasil uji coba kromosom
Ukuran kromosom yang diujikan adalah kelipatan 10 dengan rentang nilai
antara 10 sampai 100. Probabilitas pindah silang dan probabilitas mutasi yang
digunakan masing-masing adalah 50, generasi yang digunakan adalah 10. Hasil
pengujian dapat dilihat pada gambar 4.40.
Gambar 4.40 Hasil uji coba pengujian kromosom
Pada Gambar 4.40, jumlah keberhasilan yang dihasilkan dari ukuran kromosom
10 sampai ukuran kromosom 100 titik paling optimum dalam uji coba ini
131
adalah pada nilai 10 dan 30. Kemudian pada ukuran kromosom 80 jumlah
keberhasilannya mengalami penurunan. Pada umumnya, dengan penambahan
ukuran kromosom akan meningkatkan jumlah keberhasilan karena akan
menghasilkan keragaman individu yang lebih banyak, sehingga akan lebih
membuka peluang untuk menghasilkan individu yang memiliki nilai fitness
yang besar. Namun dengan ukuran kromosom yang besar tersebut waktu untuk
komputasi atau proses menemukan solusi akan lebih lama. Sebaliknya, jika
ukuran kromosom kecil, maka semakin rendah peluang untuk menemukan
individu dengan nilai fitness yang besar, tetapi waktu untuk menemukan solusi
akan lebih cepat. Pada pengujian ini, didapatkan parameter ukuran kromosom
yang optimal adalah 10 dan 30 dengan tingkat keberhasilan 85,00%. Sehingga
pada pengujian selanjutnya akan menggunakan salah satu ukuran kromosom
yang optimum yaitu dengan nilai ukuran kromosom 30.
b. Analisis dan hasil uji coba generasi
Gambar 4.41 Hasil uji coba pengujian generasi
Banyak generasi yang digunakan adalah kelipatan 10. Banyak kromosom yang
digunakan yaitu 30. Nilai ini diambil dari hasil uji coba sebelumnya yang
132
merupakan salah satu nilai optimum. Sedangkan kombinasi probabilitas pindah
silang dan probabilitas mutasi yang digunakan adalah 50 dan 50. Pengujian
dilakukan masing-masing 10 kali. Hasil uji coba dapat dilihat pada gambar
4.41. Hasil uji coba pengujian ukuran Generasi Pada Gambar 4.41 jumlah
keberhasilan yang dihasilkan dari ukuran generasi 10 hingga ukuran generasi
100 terdapat 4 nilai optimum yang didapatkan yaitu pada ukuran generasi 30,
40,60 dan 70. Pada ukuran generasi 50 jumlah keberhasilan mengalami
penurunan. Semakin banyak jumlah generasi berpengaruh terhadap
meningkatnya kemampuan algoritma genetika dalam mencari solusi terbaik.
Pada penelitian ini tingginya jumlah generasi belum tentu menghasilkan nilai
yang optimal. Selain itu hal tersebut akan membutuhkan waktu lama untuk
prosesnya. Pada generasi 30, 40, 60 dan 70 merupakan titik optimum karena
tidak terjadi lagi kenaikan jumlah keberhasilan yang signifikan selain ukuran
generasi tersebut. Pada pengujian ini, didapatkan parameter ukuran generasi
yang optimal adalah 30, 40, 60 dan 70 yaitu dengan tingkat keberhasilan
sebanyak 86,67%. Sehingga pada pengujian berikutnya akan menggunakan
ukuran kromosom sebesar 30 dan ukuran generasi 30. Nilai ukuran generasi
diambil dari salah satu ukuran generasi yang paling optimal pada uji coba ini.
c. Analisis dan hasil uji coba probabilitas pindah silang dan probabilitas mutasi
Banyak kromosom dan generasi yang digunakan adalah kromosom dan
generasi terbaik pada uji coba kromosom dan generasi yaitu ukuran kromosom
30 dan generasi 30. Sedangkan kombinasi yang digunakan yaitu nilai 0 hingga
100. Nilai dari kombinasi probabilitas pindah silang dan probabilitas mutasi
yang digunakan pada pengujian ini yaitu 100:0, 90:10, 80:20, 70:30, 60:40,
133
50:50, 40:60, 30:70, 20:80, 10:90, dan 0:100. Perbandingan kombinasi tersebut
akan menghasilkan jumlah anak yang sama dari masing-masing parameter,
sehingga proses perbandingan dari masing-masing parameter seimbang.
Pada Gambar 4.42 dapat dilihat jumlah keberhasilan terbaik dan optimal pada
uji coba ini adalah 85% yaitu pada kombinasi probabilitas pindah silang 70 dan
probabilitas mutasi 30. Kombinasi terburuk yaitu pada kombinasi probabilitas
pindah silang 30 dan probabilitas mutasi 70 dengan jumlah keberhasilan
sebanyak 60%. Maka dapat disimpulkan kombinasi probabilitas pindah silang
: probabilitas mutasi terbaik adalah 70:30.
Gambar 4.42 Hasil uji coba probabilitas pindah silang dan probabilitas mutasi
d. Analisis dan hasil uji coba dengan parameter dari hasil yang terbaik
Uji coba yang dilakukan menggunakan parameter yang telah dipilih dari uji
coba sebelumnya. Banyak kromosom dan generasi yang digunakan adalah
kromosom dan generasi terbaik pada uji coba kromosom dan generasi yaitu
134
ukuran kromosom 30 dan generasi 30. Sedangkan kombinasi yang digunakan
yaitu kombinasi probabilitas pindah silang dan probabilitas yang menghasilkan
tingkat keberhasilan terbaik dalam uji coba yang dilakukan yaitu 70 : 30.
Pengujian denga parameter yang sama dilakukan sebanyak 30 kali. Hasil uji
coba dapat dilihat pada gambar 4.43.
Gambar 4.43 Hasil uji coba dengan parameter sama
Pada Gambar 4.43 dapat dilihat jumlah keberhasilan terbaik dan optimal pada
uji coba ini adalah 85.00% yang terjadi pada uji coba yang ke-23 dan uji coba
yang ke-28. Uji coba terburuk dengan hasil jumlah keberhasilan 60,00 yaitu uji
coba ke-27. Maka dapat disimpulkan bahwa dengan masukan parameter yang
sama dan jumlah data juga sama, hasil jumlah keberhasilan yang didapat tidak
selalu sama. Hal ini disebabkan pada saat pembentukan kromosom
menggunakan bilangan secara acak yang tidak akan sama setiap kali prosesnya.
Pengujian yang dilakukan sebanyak 30 kali menghasilkan rata-rata
keberhasilan yang didapat yaitu 73%.
135
Aplikasi ini dikatakan baik apabila mengalami sedikit konflik dalam memenuhi
syarat dan kebijakan penjadwalan ujian, Hal ini dibuktikan pada hasil uji coba
yang dilakukan dengan menggunakan 40 kelas kuliah, 6 ruang yang digunakan,
25 sebaran waktu dan 20 karyawan yang disediakan, dengan percobaan
sebanyak 30 kali menghasilkan rata-rata keberhasilan yang didapat adalah
73%. Jumlah keberhasilan terbaik sebanyak 34 kelas dan yang mengalami
kegagalan sebanyak 6 kelas. Hasil dari uji coba prosentase uji coba ini sebagai
berikut :
S tot =
Aplikasi ini dapat menyelesaikan permasalahan sesuai dengan syarat dan
kebijakan tertentu, diantaranya kelas kuliah dan penjaga tidak ada ada dalam
jam yang sama dan ada dalam ruangan yang berbeda, batas penjaga yang sudah
ditentukan dan batas maksimal mahasiswa melakukan ujian. Selain itu aplikasi
ini berjalan sesuai dengan algoritma yang diterapkan pada algoritma genetika
seperti banyak jadwal yang dibangkitkan, iterasi yang dilakukan, probabilitas
menukar kombinasi jadwal dan probabilitas mutasi. Dengan ini aplikasi dapat
membantu bagian akademik dapat pembuatan proses penjadwalan ujian. Dapat
dilihat pada gambar 4.44
Gambar 4.44 Hasil jadwal ujian
136
BAB V
PENUTUP
5.1 Kesimpulan
Setelah melakukan rancang bangun aplikasi penjadwalan ujian di Institut
Bisnis dan Informatika Stikom Surabaya dengan menggunakan algoritma
genetika, dapat disimpulkan beberapa hal sebagai berikut:
1. Hasil penelitian menunjukkan bahwa aplikasi penjadwalan ujian ini telah
dapat menghasilkan jadwal ujian UTS atau UAS yang sesuai dengan syarat
dan kebijakan yang ada
2. Hasil pengujian untuk penjadwalan ujian UTS sebanyak 40 kelas diperoleh
parameter terbaik yaitu nilai kromosom 30, jumlah generasi 30, probabilitas
pindah silang 70 dan probabilitas mutasi 30. Dengan menggunakan parameter
terbaik hasil pengujian tersebut dihasilkan jadwal ujian dengan tingkat
keberhasilan rata-rata sebesar 73% untuk 30 kali uji coba dan menghasilkan
jadwal ujian dengan jumlah tabrakan 6 dengan tingkat keberhasilan 85%.
5.2 Saran
Saran yang dapat diberikan untuk penelitian lebih lanjut tentang
kombinasi kedua algoritma ini adalah dengan melakukan pengujian pada data
yang berbeda dengan jumlah data yang lebih besar, dan membandingkannya
dengan metode atau algoritma yang lain. Mengaplikasikan algoritma genetika
dengan menggunakan bahasa pemrograman lain yang mampu melakukan proses
komputasi lebih cepat, serta dapat mengaplikasikan metode pindah silang, mutasi
atau seleksi lainnya.
137
DAFTAR PUSTAKA
Al Fatta, Hanif. 2007. Analisis dan Perancangan Sistem Informasi. Andi.
Yogyakarta.
Bertolino, Antonia dan Marchetti, Eda. 2004. IEEE. Guide to the Software
Engineering Body of Knowledge 2004 Version. SWEBOK A Project of the
IEEE Computer Society. John Wiley and Sons. England.
Gunawan, Aldy., Ong, Hoon Liong dan Ng, Kien Ming. 2004. Applying
Metaheuristics For The Course Scheduling Problem. Proceedings of the
Fifth Asia Pacific Industrial Engineering and Management Systems
Conference 2004.
Hartono, Jogiyanto. 2005. Analisis & Desain Sistem Informasi Pendekatan
Tersturktur Teori dan Praktek Aplikasi Bisnis. Andi. Yogyakarta.
Hendarto, Joneo. 2002. Modul Pengantar Analisis Algoritma, Jurnal Ilmu
Komputer. UGM. Yogyakarta.
Herjanto, Eddy. 2007. Manajemen Operasi. Grasindo. Jakarta.
Kusumadewi, S. dan Purnomo, Hari. 2005. Penyelesaian Masalah Optimasi
dengan Teknik-Teknik Heuristik. Graha Ilmu. Yogyakarta.
Lee, H.S.C. 2000. Timetabling Highly Constrained System Via Genetic Algorithm
(tesis). Department of Mathematics. College of Science. University of the
Philippines. Diliman. Quezon City.
Noviansyah, Eka. 2008. Aplikasi Website Museum Nasional Menggunakan
Macromedia Dreamweaver MX. STIK. Jakarta.
Pressman, R.S. 2015. Software Engineering : a practitioner’s approach.
McGraw-Hill. New York.
Raharjo, Budi. 2011. Membuat Database Menggunakan MySql. Informatika.
Bandung.
Simamarta, J. 2010. Rekayasa Web. Andi Offset. Yogyakarta.
138
BIODATA PENULIS
Nama : Alvian Deffa Kristyanto
Alamat : Perum Bluru Permai Blok Q-12
Tempat/Tgl Lahir : Surabaya/ 17 Desember 1990
E-mail : alviandeffa@gmail.com
Telepon : 081353566311
Riwayat Pendidikan: 1997 - 2003 : SDN Pucang IV Sidoarjo
2003 - 2006 : SMPN 3 Sidoarjo
2006 - 2009 : SMAN 3 Sidoarjo
2009 - 2017 : Institut Bisnis dan Informatika
Stikom Surabaya
139
Lampiran 1 Uji coba dengan paramater
140
Lampiran 2 Parameter untuk uji coba proses penjadwalan ujian
a. Uji coba input parameter pertama dengan menggunakan ukuran kromosom 10
sampai 100 dengan kelipatan 10.
No
Uji coba Waktu (detik)
Jumlah Tabrakan
Jumlah Keberhasilan
Jumlah Keberhasilan
(%) Kromosom Generasi
Prob. Pindah Silang
Prob. Mutasi
1 10 10 50 50 4.16 8 32 80.00
2 20 10 50 50 6.75 12 28 70.00
3 30 10 50 50 9.67 8 32 80.00
4 40 10 50 50 12.56 14 26 65.00
5 50 10 50 50 15.21 12 28 70.00
6 60 10 50 50 17.38 9 31 77.50
7 70 10 50 50 20.13 12 28 70.00
8 80 10 50 50 23.15 16 24 60.00
9 90 10 50 50 25.27 12 28 70.00
10 100 10 50 50 27.66 14 26 65.00
b. Uji coba input parameter kedua dengan menggunakan nilai generasi dari 10
sampai 100 dengan kelipatan 10. Dan menggunakan salah satu nilai kromosom
yang menghasilkan jumlah keberhasilan yaitu 30.
No
Uji coba Waktu (detik)
Jumlah Tabrakan
Jumlah Keberhasilan
Jumlah Keberhasilan
(%) Kromosom Generasi
Prob. Pindah Silang
Prob. Mutasi
1 30 10 50 50 9.43 12 28 70.00
2 30 20 50 50 17.4 16 24 60.00
3 30 30 50 50 25.55 10 30 75.00
4 30 40 50 50 32.83 10 30 75.00
5 30 50 50 50 40.85 18 22 55.00
6 30 60 50 50 48.27 10 30 75.00
7 30 70 50 50 56.41 10 30 75.00
8 30 80 50 50 64 12 28 70.00
9 30 90 50 50 72 11 29 72.50
10 30 100 50 50 81 14 26 65.00
141
c. Uji coba input parameter ketiga dengan menggunakan kombinasi probabilitas
pindah silang dan probabilitas mutasi. Untuk kromosom dan generasi
menggunakan hasil dari uji coba sebelumnya diambil yang terbaik salah satu
yaitu dengan kromosom 30 dan generasi 30.
No
Uji coba
Waktu (detik)
Jumlah Tabrakan
Jumlah Keberhasilan
Jumlah Keberhasilan
(%) Kromosom Generasi Prob.
Pindah Silang
Prob. Mutasi
1 30 30 100 0 32.61 8 32 80.00
2 30 30 90 10 31.08 12 28 70.00
3 30 30 80 20 29.61 10 30 75.00
4 30 30 70 30 27.84 6 34 85.00
5 30 30 60 40 28.3 6 34 85.00
6 30 30 50 50 25.01 12 28 70.00
7 30 30 40 60 23.73 8 32 80.00
8 30 30 30 70 22.69 19 21 52.50
9 30 30 20 80 21.56 12 28 70.00
10 30 30 10 90 19.22 16 24 60.00
11 30 30 0 100 17.75 15 25 62.50
d. Uji coba input parameter keempat dengan menggunakan parameter terbaik
yang telah dilakukan pada rangkaian uji coba sebelumnya. Parameter yang
digunakan yaitu dengan kromosom 30, generasi 30, probabilitas pindah silang
70, dan probabilitas mutasi 30.
No
Uji coba
Waktu (detik)
Jumlah Tabrakan
Jumlah Keberhasilan
Jumlah Keberhasilan
(%) Kromosom Generasi Prob.
Pindah Silang
Prob. Mutasi
1 30 30 70 30 36.42 8 32 80
2 30 30 70 30 30.04 12 28 70
3 30 30 70 30 38.28 12 28 70
4 30 30 70 30 37.55 12 28 70
5 30 30 70 30 28.55 10 30 75
6 30 30 70 30 30.79 8 32 80
7 30 30 70 30 28.08 14 26 65
8 30 30 70 30 27.38 8 32 80
142
No
Uji coba
Waktu (detik)
Jumlah Tabrakan
Jumlah Keberhasilan
Jumlah Keberhasilan
(%) Kromosom Generasi Prob.
Pindah Silang
Prob. Mutasi
9 30 30 70 30 33.69 10 30 75
10 30 30 70 30 28.04 10 30 75
11 30 30 70 30 29.35 11 29 72.5
12 30 30 70 30 30.81 12 28 70
13 30 30 70 30 27.81 11 29 72.5
14 30 30 70 30 29.38 10 30 75
15 30 30 70 30 32.39 12 28 70
16 30 30 70 30 29.49 13 27 67.5
17 30 30 70 30 28.77 10 30 75
18 30 30 70 30 28.36 12 28 70
19 30 30 70 30 28.05 8 32 80
20 30 30 70 30 28.62 14 26 65
21 30 30 70 30 28.35 8 32 80
22 30 30 70 30 28.59 9 31 77.5
23 30 30 70 30 29.42 6 34 85
24 30 30 70 30 29.14 10 30 75
25 30 30 70 30 28.82 12 28 70
26 30 30 70 30 28.33 11 29 72.5
27 30 30 70 30 27.82 16 24 60
28 30 30 70 30 28.2 6 34 85
29 30 30 70 30 28.95 10 30 75
30 30 30 70 30 28.06 11 29 72.5
Jumlah 2210.00
Rata-rata 73.66667
Recommended