rancang bangun aplikasi penjadwalan ujian di …

163
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

Upload: others

Post on 04-Feb-2022

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 2: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 3: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

ix

“Masalah adalah ujian pendewasaan

Tak ada alasan menyalahkan orang lain, benahi diri sendiri

Dan jadilah pribadi yang dewasa

Page 4: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 5: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

xi

Page 6: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

xii

Page 7: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 8: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 9: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 10: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 11: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 12: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 13: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 14: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 15: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 16: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 17: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 18: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 19: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 20: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

xx

DAFTAR LAMPIRAN

Halaman

Lampiran 1 Uji coba dengan paramater ............................................................. 139

Lampiran 2 Parameter untuk uji coba proses penjadwalan ujian ....................... 140

Page 21: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 22: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 23: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 24: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 25: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 26: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 27: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

7

Page 28: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 29: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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 :

Page 30: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 31: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 32: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 33: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 34: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 35: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 36: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 37: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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).

Page 38: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 39: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 40: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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,

Page 41: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 42: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 43: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 44: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 45: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 46: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 47: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 48: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 49: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 50: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 51: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 52: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 53: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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 :

Page 54: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 55: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 56: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 57: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 58: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 59: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 60: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 61: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 62: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 63: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 64: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 65: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 66: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 67: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 68: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 69: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 70: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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)

Page 71: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 72: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 73: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 74: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 75: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 76: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 77: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 78: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 79: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 80: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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:

Page 81: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 82: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 83: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 84: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 85: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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])

Page 86: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 87: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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])

Page 88: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 89: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 90: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 91: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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])

Page 92: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 93: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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 :

Page 94: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 95: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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:

Page 96: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 97: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 98: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 99: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 100: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 101: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 102: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 103: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 104: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 105: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 106: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 107: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 108: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 109: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 110: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 111: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 112: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 113: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 114: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 115: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 116: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 117: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 118: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 119: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 120: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 121: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 122: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 123: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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 )

Page 124: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 125: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 126: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 127: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 128: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 129: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 130: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 131: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 132: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 133: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 134: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 135: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 136: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 137: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 138: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 139: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 140: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 141: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 142: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 143: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 144: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 145: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 146: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 147: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 148: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 149: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 150: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 151: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 152: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 153: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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,

Page 154: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 155: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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%.

Page 156: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 157: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 158: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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.

Page 159: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

138

BIODATA PENULIS

Nama : Alvian Deffa Kristyanto

Alamat : Perum Bluru Permai Blok Q-12

Tempat/Tgl Lahir : Surabaya/ 17 Desember 1990

E-mail : [email protected]

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

Page 160: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

139

Lampiran 1 Uji coba dengan paramater

Page 161: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 162: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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

Page 163: RANCANG BANGUN APLIKASI PENJADWALAN UJIAN DI …

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