Implementasi Algoritma Welch Powell, Partialcol, dan Steepest Ascent Hill Climbing dalam Penjadwalan Petugas Ibadah (Studi Kasus : Gereja Isa Almasih).

(1)

ABSTRAK

Saat ini penjadwalan pelayan di Seksi Pemuda Gereja Isa Almasih (SPGIA) masih dilakukan secara manual. Jadwal pelayanan di SPGIA terdiri dari beberapa komponen yaitu: tanggal, jenis pelayanan, dan pelayan. Selanjutnya, tiga hal dapat yang menyebabkan bentrok antar jadwal pelayanan adalah jadwal pribadi pelayan, banyaknya jumlah pelayan dan kurangnya koordinasi koordinator bidang. Saat jadwal yang telah dibuat diterapkan, seringkali terjadi pertukaran jadwal disebabkan oleh alasan tertentu. Dua masalah inilah yang memotivasi pembangunan sistem penjadwalan berbasis web. Tujuan sistem adalah mempermudah proses penjadwalan dan penyebaran informasi dari jadwal yang telah dibuat. Masalah penjadwalan dapat dianalogikan dengan masalah pewarnaan graf. Dalam studi ini dua algoritma pewarnaan graf Welch Powell dan PartialCol digunakan untuk membangun sistem penjadwalan berbasis web. Keunggulan algoritma Welch Powell adalah melakukan penjadwalan dimulai dari yang paling membutuhkan, sedangkan PartialCol adalah melakukan penjadwalan tanpa menghasilkan bentrok. Data dari database adalah input dalam kasus ini, kemudian mengubah data-data tersebut menjadi sebuah graf. Proses pewarnaan graf akan dimulai dengan algoritma Welch Powell, kemudian hasil dari algoritma Welch Powell akan diproses dengan menggunakan algoritma PartialCol. Hasil penelitian ini sebuah aplikasi website yang dapat digunakan untuk pengolahan data jemaat, proses pembuatan jadwal, dan penyebaran jadwal di SPGIA. Jadwal yang dihasilkan kedua algoritma adalah jadwal yang optimal dengan tidak ada bentrok antar pelayan dan juga dengan jadwal pribadi pelayan.

Kata kunci: algoritma PartialCol, algoritma penjadwalan, algoritma Welch Powell, jadwal pelayanan pelayan, pewarnaan Graf


(2)

ABSTRACT

Servant scheduling in the Youth Section of the Gereja Isa Almasih is still done manually. A servant schedule consists of several components, such as: the date, type of service, and the servant. Servant personal schedules, large number of servants, and lack of coordination can lead to field coordinator clash between servant schedules. Then when the timetable that has been made is applied, often exchanging schedule for some reason. By using the graph coloring Welch Powell algorithm and PartialCol algorithm, built a web-based scheduling system in order to facilitate the process of scheduling and dissemination of information on the schedule that has been made. The excellence of Welch Powell algorithm is to schedule the beginning of the neediest, while PartialCol is scheduling without generating conflict.In this case, the data from database is the input, then converts the data into a graph. The process will begin with a graph coloring Welch Powell algorithm, then the result of the algorithm Welch Powell will be processed using PartialCol algorithms. Results from this study is a website application that can be used for data processing congregations, assisting with the scheduling and deployment schedules in the Youth Section of the Gereja Isa Almasih. The resulting schedule from two algorithm is the optimal schedule with no clashes between servants and servant personal schedules.

Keywords: Graph Coloring, PartialCol Algorithm, Scheduling Algorithm, Servant Scheduling, Welch Powell Algorithm


(3)

DAFTAR ISI

PRAKATA ... i

ABSTRAK ... ii

ABSTRACT ... iii

DAFTAR ISI ... iv

DAFTAR GAMBAR ... x

DAFTAR TABEL ... xx

DAFTAR NOTASI/ LAMBANG ... xxiii

DAFTAR SINGKATAN ... xxv

BAB 1 PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Rumusan Masalah ... 3

1.3 Tujuan Pembahasan ... 3

1.4 Ruang Lingkup ... 3

1.5 Sumber Data ... 4

1.6 Sistematika Penyajian ... 4

BAB 2 KAJIAN TEORI ... 6

2.1 Tinjauan Pustaka ... 6

2.2 Graf ... 8

2.2.1 Terminologi Dasar Graf ... 8

2.2.2 Pewarnaan Graf ... 8

2.2.3 Pewarnaan Simpul pada Graf ... 8

2.2.4 Metode Dasar dalam Pewarnaan Graf... 9

2.2.5 Space of Partial, Proper Colouring ... 9

2.3 Algoritma Welch Powell ... 9


(4)

2.5 Algoritma Welch Powell & PartialCol ... 16

2.6 Algoritma Steepest Ascent Hill Climbing ... 20

BAB 3 ANALISIS DAN RANCANGAN SISTEM ... 23

3.1 Analisis ... 23

3.2 Pseudocode ... 35

3.2.1 Pseudocode Pembuatan Graf ... 35

3.2.2 Pseudocode Algoritma Welch Powell ... 37

3.2.3 Pseudocode Algoritma PartialCol ... 38

3.2.4 Pseudocode Algoritma Welch Powell & PartialCol ... 39

3.2.5 Pseudocode Algoritma Steepest Ascent Hill Climbing ... 40

3.3 Gambaran Keseluruhan ... 42

3.3.1 Persyaratan Antarmuka Eksternal ... 42

3.3.2 Antarmuka Dengan Pengguna... 42

3.3.3 Antarmuka Perangkat Keras ... 43

3.3.4 Antarmuka Perangkat Lunak ... 43

3.3.5 Fitur-fitur Produk Perangkat Lunak ... 44

3.4 Desain Perangkat Lunak ... 68

3.4.1 Pemodelan Perangkat Lunak ... 68

3.4.2 Desain Penyimpanan Data ... 101

3.4.3 Disain Perangkat Lunak ... 105

BAB 4 IMPLEMENTASI ... 131

4.1 Implementasi Class ... 131

4.1.1 Implementasi Class Graph ... 131

4.1.2 Implementasi Class Vertex ... 131

4.1.3 Implementasi Class Jadwal ... 132


(5)

4.1.5 Implementasi Class DetailKebaktian ... 133

4.1.6 Implementasi Class Jemaat ... 134

4.1.7 Implementasi Class JenisPelayanan ... 135

4.1.8 Implementasi Class Pelayanan ... 136

4.1.9 Implementasi Class RequestJadwal ... 137

4.1.10 Implementasi Class Role ... 137

4.1.11 Implementasi Class JemaatRole ... 137

4.1.12 Implementasi Class Rancangan ... 138

4.1.13 Implementasi Class Peraturan ... 138

4.1.14 Implementasi Class Network ... 139

4.1.15 Implementasi Class Pengumuman ... 139

4.1.16 Implementasi Class JadwalDao ... 140

4.1.17 Implementasi Class KebaktianDao ... 140

4.1.18 Implementasi Class DetailKebaktianDao ... 141

4.1.19 Implementasi Class JemaatDao ... 141

4.1.20 Implementasi Class JenisPelayananDao ... 141

4.1.21 Implementasi Class PelayananDao ... 142

4.1.22 Implementasi Class RequestJadwalDao ... 142

4.1.23 Implementasi Class RoleDao ... 143

4.1.24 Implementasi Class JemaatRoleDao ... 143

4.1.25 Implementasi Class RancanganJadwalDao... 143

4.1.26 Implementasi Class PeraturanDao ... 144

4.1.27 Implementasi Class NetworkDao ... 144

4.1.28 Implementasi Class PengumumanDao ... 145

4.2 Implementasi Penyimpanan Data ... 145


(6)

4.3.1 Implementasi Algoritma Pembuatan Graf ... 146

4.3.2 Implementasi Algoritma Welch Powell ... 147

4.3.3 Implementasi Algoritma PartialCol ... 148

4.3.4 Implementasi Algoritma Welch Powell & PartialCol ... 149

4.3.5 Implementasi Algoritma Steepest Ascent Hill Climbing ... 151

4.4 Implementasi Antarmuka ... 153

4.4.1 Implementasi Halaman Home ... 153

4.4.2 Implementasi Halaman Services ... 153

4.4.3 Implementasi Halaman Networks ... 154

4.4.4 Implementasi Halaman About Us ... 154

4.4.5 Implementasi Halaman Contact Us ... 155

4.4.6 Implementasi Halaman Login ... 155

4.4.7 Implementasi Halaman Register ... 156

4.4.8 Implementasi Halaman Home Setelah Login ... 156

4.4.9 Implementasi Halaman Pelayanan ... 157

4.4.10 Implementasi Halaman Update Profile ... 157

4.4.11 Implementasi Halaman Change Password ... 158

4.4.12 Implementasi Halaman Buat Jadwal ... 159

4.4.13 Implementasi Halaman Jadwal Penuh ... 161

4.4.14 Implementasi Halaman Jadwal Pribadi ... 162

4.4.15 Implementasi Halaman Manage Jadwal... 162

4.4.16 Implementasi Halaman Manage Periode Jadwal ... 163

4.4.17 Implementasi Halaman Request Jadwal... 164

4.4.18 Implementasi Halaman Approval Request Jadwal ... 165

4.4.19 Implementasi Halaman Rancangan Jadwal ... 166


(7)

4.4.21 Implementasi Halaman Manage Role ... 167

4.4.22 Implementasi Halaman Activate Account ... 168

4.4.23 Implementasi Halaman Ulang Tahun... 169

4.4.24 Implementasi Halaman Manage Jenis Pelayanan ... 169

4.4.25 Implementasi Halaman Approval Jenis Pelayanan ... 170

4.4.26 Implementasi Halaman Manage Peraturan Pelayanan ... 171

4.4.27 Implementasi Halaman Manage Pengumuman ... 172

4.4.28 Implementasi Halaman Manage Network ... 173

BAB 5 PENGUJIAN ... 174

5.1 Rencana Pengujian ... 174

5.2 Pelaksanaan Pengujian ... 174

5.2.1 Pengujian Halaman Register ... 174

5.2.2 Pengujian Membuat Kritik dan Saran ... 175

5.2.3 Pengujian Login ... 176

5.2.4 Pengujian Update Profil ... 177

5.2.5 Pengujian Lihat Jadwal ... 178

5.2.6 Pengujian Tukar Jadwal ... 178

5.2.7 Pengujian Mengelola Periode Jadwal ... 179

5.2.8 Pengujian Request Jadwal ... 180

5.2.9 Pengujian Approval Request Jadwal ... 181

5.2.10 Pengujian Rancangan Jadwal ... 181

5.2.11 Pengujian Manage Jemaat ... 182

5.2.12 Pengujian Manage Role Jemaat ... 182

5.2.13 Pengujian Activate Account... 183

5.2.14 Pengujian Mengelola Data Ulang Tahun ... 183


(8)

5.2.16 Pengujian Approval Jenis Pelayanan ... 185

5.2.17 Pengujian Mengelola Peraturan Pelayanan ... 186

5.2.18 Pengujian Mengelola Pengumuman ... 187

5.2.19 Pengujian Mengelola Network ... 188

5.3 Pengujian Algoritma ... 190

5.3.1 Jadwal Renggang ... 191

5.3.2 Jadwal Padat ... 200

5.3.3 Jadwal Sangat Padat ... 209

5.4 Analisis Pengujian Algoritma ... 218

5.4.1 Analisis Pengujian waktu ... 218

5.4.2 Analisis Pengujian Kesesuaian Jadwal ... 220

BAB 6 SIMPULAN DAN SARAN ... 223

6.1 Simpulan ... 223

6.2 Saran ... 224


(9)

DAFTAR GAMBAR

Gambar 2.1 Keadaan Graf Awal dengan Algoritma Welch Powell ... 10

Gambar 2.2 Graf dengan Algoritma Welch Powell Tahap 1 ... 10

Gambar 2.3 Graf dengan Algoritma Welch Powell Tahap 2 ... 11

Gambar 2.4 Graf dengan Algoritma Welch Powell Tahap 3 ... 11

Gambar 2.5 Graf dengan Algoritma Welch Powell Tahap 4 ... 11

Gambar 2.6 Keaadan Graf Awal dengan Algoritma PartialCol ... 12

Gambar 2.7 Graf dengan Algoritma PartialCol Tahap 1 ... 13

Gambar 2.8 Graf dengan Algoritma PartialCol Tahap 2 ... 13

Gambar 2.9 Graf dengan Algoritma PartialCol Tahap 3 ... 14

Gambar 2.10 Graf dengan Algoritma PartialCol Tahap 4 ... 14

Gambar 2.11 Graf dengan Algoritma PartialCol Tahap 5 ... 15

Gambar 2.12 Graf dengan Algoritma PartialCol Tahap 6 ... 15

Gambar 2.13 Graf dengan Algoritma PartialCol Tahap 7 ... 16

Gambar 2.14 Keadaan Graf Awal dengan Algoritma Welch Powell & PartialCol ... 16

Gambar 2.15 Graf dengan Algoritma Welch Powell & PartialCol Tahap 1 ... 17

Gambar 2.16 Graf dengan Algoritma Welch Powell & PartialCol Tahap 2 ... 17

Gambar 2.17 Graf dengan Algoritma Welch Powell & PartialCol Tahap 3 ... 18

Gambar 2.18 Graf dengan Algoritma Welch Powell & PartialCol Tahap 4 ... 18

Gambar 2.19 Graf dengan Algoritma Welch Powell & PartialCol Tahap 5 ... 19

Gambar 2.20 Graf dengan Algoritma Welch Powell & PartialCol Tahap 6 ... 19

Gambar 2.21 Graf dengan Algoritma Welch Powell & PartialCol Tahap 7 ... 20

Gambar 3.1 Tampilan Graf dari Data Simpul Contoh Kasus ... 25

Gambar 3.2 Contoh Penjadwalan dengan Algoritma Welch Powell Tahap 1 ... 26

Gambar 3.3 Contoh Penjadwalan denngan Algoritma Welch Powell Tahap 2 .... 27

Gambar 3.4 Contoh Penjadwalan dengan Algoritma PartialCol Tahap 1 ... 28

Gambar 3.5 Contoh Penjadwalan dengan Algoritma PartialCol Tahap 2 ... 28

Gambar 3.6 Contoh Penjadwalan dengan Algoritma PartialCol Tahap 3 ... 29

Gambar 3.7 Contoh Penjadwalan dengan Algoritma PartialCol Tahap 4 ... 29


(10)

Gambar 3.9 Contoh Penjadwalan dengan Algoritma Welch Powell & PartialCol

Tahap 1 ... 30

Gambar 3.10 Contoh Penjadwalan dengan Algoritma Welch Powell & PartialCol Tahap 2 ... 31

Gambar 3.11 Contoh Penjadwalan dengan Algoritma Welch Powell & PartialCol Tahap 3 ... 32

Gambar 3.12 Contoh Penjadwalan dengan Algoritma Welch Powell & PartialCol Tahap 4 ... 32

Gambar 3.13 Contoh Penjadwalan dengan Algoritma Welch Powell & PartialCol Tahap 5 ... 33

Gambar 3.14 Contoh Penjadwalan dengan Algoritma Welch Powell & PartialCol Tahap 6 ... 33

Gambar 3.15 Contoh Penjadwalan dengan Algoritma Welch Powell & PartialCol Tahap 7 ... 34

Gambar 3.16 Pseudocode Pembuatan Graf ... 36

Gambar 3.17 Pseudocode Algoritma Welch Powell ... 37

Gambar 3.18 Pseudocode Algoritma PartialCol ... 38

Gambar 3.19 Pseudocode Algoritma Welch Powell & PartialCol ... 40

Gambar 3.20 Pseudocode Algoritma Steepest Ascent Hill Climbing ... 41

Gambar 3.21 Usecase Diagram Sistem Penjadwalan Pelayan Tuhan Seksi Pemuda Gereja Isa Almasih ... 69

Gambar 3.22 Class Diagram Graf ... 83

Gambar 3.23 Class Diagram Entitas ... 84

Gambar 3.24 Class Diagram Data Access Object ... 85

Gambar 3.25 Activity Diagram Register ... 86

Gambar 3.26 Activity Diagram Membuat Kritik & Saran ... 87

Gambar 3.27 Activity Diagram Login ... 87

Gambar 3.28 Activity Diagram Daftar Pelayan ... 88

Gambar 3.29 Activity Diagram Update Profil ... 89

Gambar 3.30 Activity Diagram Melihat Ulang Tahun ... 89

Gambar 3.31 Activity Diagram Melihat Jadwal Pribadi ... 90


(11)

Gambar 3.33 Activity Diagram Menambah Request Jadwal ... 92

Gambar 3.34 Activity Diagram Tukar Jadwal ... 93

Gambar 3.35 Activity Diagram Membuat Jadwal ... 94

Gambar 3.36 Activity Diagram Mengelola Jenis Pelayanan ... 95

Gambar 3.37 Activity Diagram Mengelola User ... 96

Gambar 3.38 Activity Diagram Mengelola Peraturan Pelayanan ... 97

Gambar 3.39 Activity Diagram Mengubah Rancangan Jadwal ... 98

Gambar 3.40 Activity Diagram Mengelola Pengumuman ... 99

Gambar 3.41 Activity Diagram Mengelola Network... 100

Gambar 3.42 Activity Diagram Mengubah Role Pengguna ... 101

Gambar 3.43 Rancangan Entity Relation Diagram (ERD) ... 102

Gambar 3.44 Rancangan Halaman Home ... 106

Gambar 3.45 Rancangan Halaman Services ... 106

Gambar 3.46 Rancangan Halaman Networks... 107

Gambar 3.47 Rancangan Halaman About Us ... 107

Gambar 3.48 Rancangan Halaman Contact Us... 108

Gambar 3.49 Rancangan Halaman Login ... 109

Gambar 3.50 Rancangan Halaman Register ... 109

Gambar 3.51 Rancangan Halaman Home Setelah Login ... 110

Gambar 3.52 Rancangan Halaman Detail Pelayanan ... 110

Gambar 3.53 Rancangan Halaman Profile... 111

Gambar 3.54 Rancangan Update Profile ... 111

Gambar 3.55 Rancangan Halaman Change Password ... 112

Gambar 3.56 Rancangan Halaman Awal Buat Jadwal ... 112

Gambar 3.57 Rancangan Halaman Buat Jadwal Manual ... 113

Gambar 3.58 Rancangan Halaman Buat Jadwal dengan Algoritma ... 114

Gambar 3.59 Rancangan Halaman Hasil Buat Jadwal dengan Algoritma ... 114

Gambar 3.60 Rancangan Halaman Jadwal Penuh... 115

Gambar 3.61 Rancangan Halaman Hasil Jadwal Penuh ... 115

Gambar 3.62 Rancangan Halaman Jadwal Pribadi ... 116

Gambar 3.63 Rancangan Halaman Hasil Jadwal Pribadi... 116


(12)

Gambar 3.65 Rancangan Halaman Hasil Manage Jadwal ... 117

Gambar 3.66 Rancangan Halaman Manage Periode Jadwal ... 118

Gambar 3.67 Rancangan Halaman Tambah Atau Ubah Periode Jadwal ... 119

Gambar 3.68 Rancangan Halaman Request Jadwal ... 119

Gambar 3.69 Rancangan Halaman Tambah Atau Ubah Request Jadwal ... 120

Gambar 3.70 Rancangan Halaman Approval Request Jadwal ... 120

Gambar 3.71 Rancangan Halaman Rancang Jadwal... 121

Gambar 3.72 Rancangan Halaman Manage Jemaat ... 122

Gambar 3.73 Rancangan Halaman Tambah Atau Ubah Manage Jadwal ... 122

Gambar 3.74 Rancangan Halaman Manage Role ... 123

Gambar 3.75 Rancangan Halaman Edit Manage Role ... 124

Gambar 3.76 Rancangan Halaman Activate Account ... 124

Gambar 3.77 Rancangan Halaman Ulang Tahun ... 125

Gambar 3.78 Rancangan Halaman Manage Jenis Pelayanan ... 126

Gambar 3.79 Rancangan Halaman Tambah Atau Ubah Jenis Pelayanan ... 126

Gambar 3.80 Rancangan Halaman Approval Jenis Pelayanan ... 127

Gambar 3.81 Rancangan Halaman Manage Peraturan ... 128

Gambar 3.82 Rancangan Halaman Tambah Atau Ubah Peraturan ... 128

Gambar 3.83 Rancangan Halaman Manage Pengumuman... 129

Gambar 3.84 Rancangan Halaman Tambah Atau Ubah Pengumuman ... 129

Gambar 3.85 Rancangan Halaman Manage Network ... 130

Gambar 3.86 Rancangan Halaman Tambah Atau Ubah Network... 130

Gambar 4.1 Implementasi Class Graph ... 131

Gambar 4.2 Implementasi Class Vertex ... 132

Gambar 4.3 Implementasi Class Jadwal ... 132

Gambar 4.4 Implementasi Class Kebaktian ... 133

Gambar 4.5 Implementasi Class Detail Kebaktian ... 133

Gambar 4.6 Implementasi Class Jemaat 1 ... 134

Gambar 4.7 Implementasi Class Jemaat 2 ... 135

Gambar 4.8 Implementasi Class Jenis Pelayanan ... 136

Gambar 4.9 Implementasi Class Pelayanan ... 136


(13)

Gambar 4.11 Implementasi Class Role ... 137

Gambar 4.12 Implementasi Class Jemaat Role... 138

Gambar 4.13 Implementasi Class Rancangan ... 138

Gambar 4.14 Implementasi Class Peraturan ... 139

Gambar 4.15 Implementasi Class Network ... 139

Gambar 4.16 Implementasi Class Pengumuman ... 140

Gambar 4.17 Implementasi Class JadwalDao ... 140

Gambar 4.18 Implementasi Class PengumumanDao... 140

Gambar 4.19 Implementasi Class DetailKebaktianDao ... 141

Gambar 4.20 Implementasi Class JemaatDao ... 141

Gambar 4.21 Implementasi Class JenisPelayananDao ... 142

Gambar 4.22 Implementasi Class PelayananDao ... 142

Gambar 4.23 Implementasi Class RequestJadwalDao... 143

Gambar 4.24 Implementasi Class RoleDao ... 143

Gambar 4.25 Implementasi Class JemaatRoleDao ... 143

Gambar 4.26 Implementasi Class RancanganJadwalDao ... 144

Gambar 4.27 Implementasi Class Peraturan Dao ... 144

Gambar 4.28 Implementasi Class NetworkDao... 145

Gambar 4.29 Implementasi Class PengumumanDao... 145

Gambar 4.30 Implementasi Entity Relation Diagram (ERD) ... 145

Gambar 4.31 Implementasi Algoritma Pembuatan Graf & Vertex... 146

Gambar 4.32 Implementasi Algoritma Pembuatan Relasi Ketetanggan ... 147

Gambar 4.33 Implementasi Algoritma Welch Powell 1 ... 148

Gambar 4.34 Implementasi Algoritma Welch Powell 2 ... 148

Gambar 4.35 Implementasi Algoritma Welch Powell 3 ... 148

Gambar 4.36 Implementasi Algoritma PartialCol 1 ... 149

Gambar 4.37 Implementasi Algoritma PartialCol 2 ... 149

Gambar 4.38 Implementasi Algoritma Welch Powell & PartialCol 1 ... 150

Gambar 4.39 Implementasi Algoritma Welch Powell & PartialCol 2 ... 151

Gambar 4.40 Implementasi Algoritma Welch Powell & PartialCol 3 ... 151

Gambar 4.41 Implementasi Algoritma Steepest Ascent Hill Climbing 1 ... 152


(14)

Gambar 4.43 Implementasi Algoritma Steepest Ascent Hill Climbing 3 ... 152

Gambar 4.44 Implementasi Halaman Home ... 153

Gambar 4.45 Implementasi Halaman Services ... 153

Gambar 4.46 Implementasi Halaman Networks ... 154

Gambar 4.47 Implementasi Halaman About Us ... 154

Gambar 4.48 Implementasi Halaman Contact Us ... 155

Gambar 4.49 Implementasi Halaman Login ... 155

Gambar 4.50 Implementasi Halaman Register ... 156

Gambar 4.51 Implementasi Halaman Home Setelah Login ... 156

Gambar 4.52 Implementasi Halaman Pelayanan ... 157

Gambar 4.53 Implementasi Halaman Profile ... 157

Gambar 4.54 Implementasi Halaman Update Profile ... 158

Gambar 4.55 Implementasi Halaman Change Password ... 158

Gambar 4.56 Implementasi Halaman Awal Buat Jadwal ... 159

Gambar 4.57 Implementasi Halaman Buat Jadwal Manual ... 159

Gambar 4.58 Implementasi Halaman Buat Jadwal dengan Algoritma ... 160

Gambar 4.59 Implementasi Halaman Hasil Jadwal dengan Algoritma ... 160

Gambar 4.60 Implementasi Halaman Jadwal Penuh... 161

Gambar 4.61 Contoh Print Jadwal ... 161

Gambar 4.62 Implementasi Halaman Jadwal Pribadi ... 162

Gambar 4.63 Implementasi Halaman Manage Jadwal ... 162

Gambar 4.64 Implementasi Halaman Hasil Manage Jadwal ... 163

Gambar 4.65 Implementasi Halaman Manage Periode Jadwal ... 163

Gambar 4.66 Implementasi Halaman Tambah Atau Ubah Periode Jadwal ... 164

Gambar 4.67 Implementasi Halaman Request Jadwal ... 164

Gambar 4.68 Implementasi Halaman Tambah Atau Ubah Request Jadwal ... 165

Gambar 4.69 Implementasi Halaman Approval Request Jadwal ... 165

Gambar 4.70 Implementasi Halaman Rancangan Jadwal ... 166

Gambar 4.71 Implementasi Halaman Manage Jemaat ... 166

Gambar 4.72 Implementasi Halaman Tambah Jemaat ... 167

Gambar 4.73 Implementasi Halaman Manage Role ... 167


(15)

Gambar 4.75 Implementasi Halaman Activate Account ... 168

Gambar 4.76 Implementasi Halaman Ulang Tahun ... 169

Gambar 4.77 Implementasi Halaman Manage Jenis Pelayanan ... 169

Gambar 4.78 Implementasi Halaman Tambah Atau Ubah Jenis Pelayanan ... 170

Gambar 4.79 Implementasi Halaman Approval Jenis Pelayanan ... 170

Gambar 4.80 Implementasi Halaman Manage Peraturan Pelayanan ... 171

Gambar 4.81 Implementasi Halaman Tambah Atau Ubah Jenis Pelayanan ... 171

Gambar 4.82 Implementasi Halaman Manage Pengumuman ... 172

Gambar 4.83 Implementasi Halaman Tambah Atau Ubah Pengumuman ... 172

Gambar 4.84 Implementasi Halaman Manage Network ... 173

Gambar 4.85 Implementasi Halaman Tambah Atau Ubah Network ... 173

Gambar 5.1 Hasil Pengujian Jadwal Renggang dengan Algoritma Welch Powell ... 192

Gambar 5.2 Hasil Pengujian Jadwal Renggang dengan Algoritma Welch Powell ... 192

Gambar 5.3 Hasil Pengujian Jadwal Renggang dengan Algoritma Welch Powell ... 193

Gambar 5.4 Hasil Pengujian Jadwal Renggang dengan Algoritma Welch Powell ... 193

Gambar 5.5 Hasil Pengujian Jadwal Renggang dengan Algoritma Welch Powell ... 193

Gambar 5.6 Hasil Pengujian Jadwal Renggang dengan Algoritma PartialCol ... 194

Gambar 5.7 Hasil Pengujian Jadwal Renggang dengan Algoritma PartialCol ... 194

Gambar 5.8 Hasil Pengujian Jadwal Renggang dengan Algoritma PartialCol ... 195

Gambar 5.9 Hasil Pengujian Jadwal Renggang dengan Algoritma PartialCol ... 195

Gambar 5.10 Hasil Pengujian Jadwal Renggang dengan Algoritma PartialCol . 195 Gambar 5.11 Hasil Pengujian Jadwal Renggang dengan Algoritma WelchPowell & PartialCol ... 196

Gambar 5.12 Hasil Pengujian Jadwal Renggang dengan Algoritma WelchPowell & PartialCol ... 196

Gambar 5.13 Hasil Pengujian Jadwal Renggang dengan Algoritma WelchPowell & PartialCol ... 197


(16)

Gambar 5.14 Hasil Pengujian Jadwal Renggang dengan Algoritma WelchPowell &

PartialCol ... 197

Gambar 5.15 Hasil Pengujian Jadwal Renggang dengan Algoritma WelchPowell & PartialCol ... 197

Gambar 5.16 Hasil Pengujian Jadwal Renggang dengan Algoritma Steepest Ascent Hill Climbing ... 198

Gambar 5.17 Hasil Pengujian Jadwal Renggang dengan Algoritma Steepest Ascent Hill Climbing ... 198

Gambar 5.18 Hasil Pengujian Jadwal Renggang dengan Algoritma Steepest Ascent Hill Climbing ... 199

Gambar 5.19 Hasil Pengujian Jadwal Renggang dengan Algoritma Steepest Ascent Hill Climbing ... 199

Gambar 5.20 Hasil Pengujian Jadwal Renggang dengan Algoritma Steepest Ascent Hill Climbing ... 199

Gambar 5.21 Hasil Pengujian Jadwal Padat dengan Algoritma Welch Powell .. 201

Gambar 5.22 Hasil Pengujian Jadwal Padat dengan Algoritma Welch Powell .. 201

Gambar 5.23 Hasil Pengujian Jadwal Padat dengan Algoritma Welch Powell .. 202

Gambar 5.24 Hasil Pengujian Jadwal Padat dengan Algoritma Welch Powell .. 202

Gambar 5.25 Hasil Pengujian Jadwal Padat dengan Algoritma Welch Powell .. 202

Gambar 5.26 Hasil Pengujian Jadwal Padat dengan Algoritma PartialCol ... 203

Gambar 5.27 Hasil Pengujian Jadwal Padat dengan Algoritma PartialCol ... 203

Gambar 5.28 Hasil Pengujian Jadwal Padat dengan Algoritma PartialCol ... 204

Gambar 5.29 Hasil Pengujian Jadwal Padat dengan Algoritma PartialCol ... 204

Gambar 5.30 Hasil Pengujian Jadwal Padat dengan Algoritma PartialCol ... 204

Gambar 5.31 Hasil Pengujian Jadwal Padat dengan Algoritma WelchPowell & PartialCol ... 205

Gambar 5.32 Hasil Pengujian Jadwal Padat dengan Algoritma WelchPowell & PartialCol ... 205

Gambar 5.33 Hasil Pengujian Jadwal Padat dengan Algoritma WelchPowell & PartialCol ... 206

Gambar 5.34 Hasil Pengujian Jadwal Padat dengan Algoritma WelchPowell & PartialCol ... 206


(17)

Gambar 5.35 Hasil Pengujian Jadwal Padat dengan Algoritma WelchPowell & PartialCol ... 206 Gambar 5.36 Hasil Pengujian Jadwal Padat dengan Algoritma Steepest Ascent Hill Climbing ... 207 Gambar 5.37 Hasil Pengujian Jadwal Padat dengan Algoritma Steepest Ascent Hill Climbing ... 207 Gambar 5.38 Hasil Pengujian Jadwal Padat dengan Algoritma Steepest Ascent Hill Climbing ... 208 Gambar 5.39 Hasil Pengujian Jadwal Padat dengan Algoritma Steepest Ascent Hill Climbing ... 208 Gambar 5.40 Hasil Pengujian Jadwal Padat dengan Algoritma Steepest Ascent Hill Climbing ... 208 Gambar 5.41 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma Welch Powell ... 210 Gambar 5.42 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma Welch Powell ... 210 Gambar 5.43 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma Welch Powell ... 211 Gambar 5.44 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma Welch Powell ... 211 Gambar 5.45 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma Welch Powell ... 211 Gambar 5.46 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma PartialCol ... 212 Gambar 5.47 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma PartialCol ... 212 Gambar 5.48 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma PartialCol ... 213 Gambar 5.49 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma PartialCol ... 213 Gambar 5.50 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma PartialCol ... 213


(18)

Gambar 5.51 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma WelchPowell & PartialCol ... 214 Gambar 5.52 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma WelchPowell & PartialCol ... 214 Gambar 5.53 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma WelchPowell & PartialCol ... 215 Gambar 5.54 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma WelchPowell & PartialCol ... 215 Gambar 5.55 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma WelchPowell & PartialCol ... 215 Gambar 5.56 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma Steepest Ascent Hill Climbing ... 216 Gambar 5.57 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma Steepest Ascent Hill Climbing ... 216 Gambar 5.58 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma Steepest Ascent Hill Climbing ... 217 Gambar 5.59 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma Steepest Ascent Hill Climbing ... 217 Gambar 5.60 Hasil Pengujian Jadwal Sangat Padat dengan Algoritma Steepest Ascent Hill Climbing ... 217


(19)

DAFTAR TABEL

Tabel 2.1 Tabel Kemungkinan Solusi ... 21

Tabel 3.1 Data Kebutuhan Penjadwalan ... 24

Tabel 3.2 Data Pelayan ... 24

Tabel 3.3 Data Simpul Contoh Kasus ... 25

Tabel 3.4 Hasil Penjadwalan Contoh Kasus dengan Algoritma Welch Powell .... 27

Tabel 3.5 Hasil Penjadwalan Contoh Kasus dengan Algoritma PartialCol ... 30

Tabel 3.6 Hasil Penjadwalan Contoh Kasus dengan Algoritma Welch Powell & PartialCol ... 34

Tabel 3.7 Deskripsi use case diagram untuk register ... 69

Tabel 3.8 Deskripsi use case diagram untuk membuat kritik dan saran ... 70

Tabel 3.9 Deskripsi use case diagram untuk login ... 71

Tabel 3.10 Deskripsi use case diagram untuk daftar pelayan ... 71

Tabel 3.11 Deskripsi use case diagram untuk update profil ... 72

Tabel 3.12 Deskripsi use case diagram untuk melihat ulang tahun ... 72

Tabel 3.13 Deskripsi use case diagram untuk melihat jadwal pribadi ... 73

Tabel 3.14 Deskripsi use case diagram untuk melihat jadwal penuh ... 73

Tabel 3.15 Deskripsi use case diagram untuk cetak jadwal ... 74

Tabel 3.16 Deskripsi use case diagram untuk menambah request jadwal ... 74

Tabel 3.17 Deskripsi use case diagram untuk mengelola jadwal ... 75

Tabel 3.18 Deskripsi use case diagram untuk membuat jadwal ... 76

Tabel 3.19 Deskripsi use case diagram untuk mengelola jenis pelayanan ... 76

Tabel 3.20 Deskripsi use case diagram untuk mengelola user ... 77

Tabel 3.21 Deskripsi use case diagram untuk mengelola peraturan pelayanan ... 78

Tabel 3.22 Deskripsi use case diagram untuk mengubah rancangan jadwal ... 79

Tabel 3.23 Deskripsi use case diagram untuk mengelola pengumuman ... 80

Tabel 3.24 Deskripsi use case diagram untuk mengelola network ... 81

Tabel 3.25 Deskripsi use case diagram untuk mengubah role jemaat ... 82

Tabel 3.26 Tabel Jadwal ... 103

Tabel 3.27 Tabel Kebaktian ... 103


(20)

Tabel 3.29 Tabel Jenis Pelayanan ... 103

Tabel 3.30 Tabel Peraturan ... 104

Tabel 3.31 Tabel Pelayanan ... 104

Tabel 3.32 Tabel DetailKebaktian ... 104

Tabel 3.33 Tabel Role ... 104

Tabel 3.34 Tabel JemaatRole ... 104

Tabel 3.35 Tabel Request Jadwal ... 104

Tabel 3.36 Tabel Rancangan ... 105

Tabel 3.37 Tabel Pengumuman... 105

Tabel 3.38 Tabel Network... 105

Tabel 5.1 Test Case untuk halaman register ... 174

Tabel 5.2 Test case untuk membuat kritik dan saran ... 175

Tabel 5.3 Test case untuk login ... 176

Tabel 5.4 Test case untuk update profil ... 177

Tabel 5.5 Test Case untuk Lihat Jadwal ... 178

Tabel 5.6 Test Case untuk Tukar Jadwal ... 178

Tabel 5.7 Test Case untuk m Periode Jadwal ... 179

Tabel 5.8 Test Case untuk Request Jadwal ... 180

Tabel 5.9 Test Case untuk Approval Request Jadwal ... 181

Tabel 5.10 Test Case untuk rancangan jadwal ... 181

Tabel 5.11 Test Case untuk mengelola jemaat... 182

Tabel 5.12 Test Case Untuk Manage Role Jemaat ... 182

Tabel 5.13 Test Case Untuk Activate Account ... 183

Tabel 5.14 Test Case Untuk Mengelola Data Ulang Tahun ... 183

Tabel 5.15 Test Case Untuk Mengelola Jenis Pelayanan ... 184

Tabel 5.16 Test Case Untuk Approval Jenis Pelayanan ... 185

Tabel 5.17 Test Case Untuk Mengelola Peraturan Pelayanan... 186

Tabel 5.18 Test Case Untuk Mengelola Pengumuman ... 187

Tabel 5.19 Test Case Untuk Mengelola Network ... 188

Tabel 5.20 Data Jumlah Pelayan Gereja Isa Almasih ... 190

Tabel 5.21 Tabel Rancangan Jadwal Renggang ... 191


(21)

Tabel 5.23 Analisis Pengujian Waktu dengan Data Dua Kali Data Asli ... 218 Tabel 5.24 Analisis Pengujian Kesesuaian Jadwal ... 221 Tabel 5.25 Analisis Pengujian Kesesuaian Jadwal dengan Data Dua Kali Data Asli ... 222


(22)

DAFTAR NOTASI/ LAMBANG

Jenis Notasi/ Lambang Nama Arti

UML Actor

Menggambarkan aktor atau pengguna aplikasi.

UML Usecase Menggambarkan

proses atau aksi yang dapat dilakukan oleh aktor pada aplikasi.

UML System Menggambarkan

sistem tempat proses dijalankan

UML Start Menandakan

dimulainya aktivitas pada sebuah sistem.

UML Activity Menandakan aktivitas

apa yang akan

dilakukan oleh

pengguna aplikasi.

UML End

Menandakan akhir aliran proses sistem

UML Package

Menggambarkan

paket tempat

menyimpan sekumpulan kelas

UML Class

Menggambarkan sebuah kelas beserta atribut dan method-nya


(23)

UML Abstarct Class

Menggambarkan sebuah abstract class beserta atribut dan method-nya


(24)

DAFTAR SINGKATAN

ERD Entity Relationship Diagram

UML Unified Modelling Languange


(25)

BAB 1

PENDAHULUAN

1.1Latar Belakang

Jadwal adalah hal yang sering ditemukan sehari-hari; contohnya adalah jadwal kegiatan dalam satu hari, jadwal kuliah, dan jadwal ujian. Adanya jadwal membuat kegiatan yang dilakukan menjadi tertata dengan baik tanpa adanya bentrok antar kegiatan. Begitu pula dengan adanya jadwal pelayanan dalam gereja; hal ini membuat kebaktian yang diadakan setiap minggunya dapat dilaksanakan dengan baik.

Penjadwalan pelayan pada bagian pemuda di Gereja Isa Almasih dilakukan setiap satu periode (tiga bulan) sekali, namun dalam pelaksanaan jadwalnya sering kali terdapat bentrok antar pelayanan, lupa bahwa jadwal telah ditukar, dan mendadak tidak dapat melayani karena ada urusan lain. Dalam penyusunan jadwal, seorang jemaat dapat memiliki lebih dari satu buah pelayanan, sedangkan penjadwalan pelayan ditentukan oleh koordinator bidang pelayanan masing-masing. Saat ini terdapat 6 koordinator bidang pelayanan, yaitu: musik pujian, penari, PIC (Person In Charge), multimedia, doa, dan usher. Terdapat 16 jenis pelayanan di bawah koordinasi dari 6 koordinator bidang yaitu: PIC, worship leader, singer, pemain drum, pemain keyboard, pemain gitar, pemain bass, pemain saxophone, tambourine, banner, dance, operator lcd, operator lighting, cameraman, usher, dan doa pagi. Tidak adanya koordinasi antar koordinator dapat membuat jadwal bentrok antara pelayanan yang satu dengan yang lainnya.

Selama satu periode pelayanan, terdapat kemungkinan seorang pelayan tidak dapat melayani dalam sebuah pelayanan sehingga pelayan tersebut harus bertukar jadwal dengan pelayan lainnya. Kemungkinan seperti ini dapat diperkecil apabila pelayan memberitahu jadwal atau rencana pribadinya dari awal kepada koordinator sehingga jadwal yang dibentuk sesuai dengan jadwal kegiatan atau rencana pribadi pelayan. Meskipun jadwal sudah diberitahukan kepada koordinator sejak awal, masih terdapat faktor lain seperti keadaan darurat yang dapat mempengaruhi jadwal.


(26)

2

Pertukaran jadwal antar pelayan sering kali dilakukan tanpa memberitahu koordinator yang bersangkutan. Jika terjadi pertukaran jadwal, terdapat kemungkinan seorang pelayan tersebut lupa bahwa jadwalnya sudah ditukar dan hal ini akan mengganggu jalannya latihan ibadah. Saat ini jadwal yang dibuat masih dicetak dan dibagikan kepada setiap pelayan. Penggunaan jadwal yang dicetak kurang praktis karena kertas jadwal dapat robek, hilang, kotor, dan dicoret-coret.

Dalam pembuatan jadwal terdapat beberapa faktor yang perlu diperhatikan, yaitu: seorang pelayan diusahakan tidak setiap minggu melayani, kompetensi seseorang dalam bidang pelayanan yang diambil, dan permintaan jadwal seorang pelayan. Jumlah pelayan setiap minggu belum tentu sama karena ada acara spesial atau kebaktian gabungan yang diselenggarakan.

Kemudian pada seksi pemuda ini terdapat kepengurusan yang dibagi menjadi lima bagian yaitu: bagian inti, bagian kejemaatan, bagian peribadatan, bagian pembinaan, dan bagian kreatif. Tugas bagian inti adalah mengadakan rapat pleno, mendukung keempat bidang lainnya, dan penghubung dengan majelis Gereja Isa Almasih. Tugas bagian kejemaatan adalah mengatur data jemaat dan pelawatan. Tugas bidang peribadatan adalah mengatur kebaktian yang dilakukan setiap minggunya agar berjalan dengan baik. Tugas dari bagian pembinaan adalah menyediakan wadah bagi jemaat untuk dapat bertumbuh di luar kebaktian setiap minggunya. Tugas dari bagian kreatif adalah membuat acara setiap periodenya agar kebaktian tidak membosankan.

Dari masalah-masalah tersebut, maka akan dibuat suatu aplikasi berbasis website yang akan membuat jadwal pelayan yang ideal dengan menggunakan algoritma pewarnaan graf. Aplikasi ini bermanfaat untuk mengurangi bentrok antar jadwal pelayanan dan mengingatkan pelayan melalui email. Web ini juga dapat digunakan sebagai wadah jemaat untuk saling berinteraksi. Jemaat juga dapat mendaftar pelayanan dan melihat jadwal pelayanannya. Dalam website ini juga akan ditampilkan informasi jadwal kebaktian dan kegiatan-kegiatan yang dilakukan oleh setiap bidang pelayanan maupun kegiatan secara global yang diadakan oleh pengurus. Website yang akan dibangun juga dapat melakukan management data jemaat, sehingga pengurus bagian kejemaatan dapat dengan mudah mendata jemaat. Jemaat juga dapat memberikan kritik dan saran yang dapat membangun


(27)

3

sistem maupun kegiatan dalam gereja. Pembuatan jadwal pelayanan dalam tugas akhir ini akan menggunakan algoritma Welch Powell dan algoritma PartialCol. 1.2Rumusan Masalah

1. Bagaimana merancang sistem pengelolaan jadwal pada seksi pemuda Gereja Isa Almasih?

2. Bagaimana sistem dapat membuat jadwal dengan menggunakan algoritma Welch Powell dan algoritma PartialCol?

3. Bagaimana hasil jadwal dari algoritma yang dipilih jika dibandingkan dengan hasil jadwal dari algoritma Steepest Ascent Hill Climbing?

1.3Tujuan Pembahasan

1. Merancang sistem pengelolaan jadwal pada seksi pemuda Gereja Isa Almasih.

2. Membuat jadwal pelayanan dengan menggunakan algoritma Welch Powell dan algoritma PartialCol

3. Mengetahui hasil jadwal dari algoritma yang dipilih jika dibandingkan dengan hasil jadwal dari metode algoritma Steepest Ascent Hill Climbing. 1.4Ruang Lingkup

Ruang lingkup penelitian dalam penelitian ini adalah 1. Sistem dapat membuat jadwal otomatis.

2. Sistem dapat mengelola jadwal yang telah dibuat. 3. Sistem dapat memberikan notifikasi kepada pelayan.

Adapun batasan masalah dalam penelitian ini adalah 1. Penjadwalan yang dibuat hanya pada seksi pemuda.

2. Atribut yang digunakan dalam pembuatan jadwal pelayanan meliputi, pelayan, jenis pelayanan, dan tanggal.

Algoritma yang akan dipakai dalam menyelesaikan permasalahan penjadwalan ini adalah algoritma Welch Powell dan algoritma PartialCol.


(28)

4

1.5Sumber Data

Sumber data primer yang dibutuhkan akan diambil dari data-data yang diberikan oleh Gereja Isa Almasih. Data-data yang diberikan dapat berupa tabel penjadwalan atau tabel data jemaat. Sedangkan sumber data sekunder akan diambil dari referensi sebagai berikut:

1. Buku-buku yang berhubungan dengan informasi yang dibutuhkan untuk pembuatan laporan dan perangkat lunak.

2. Pencarian informasi dari Internet. 1.6Sistematika Penyajian

Sistematika pembahasan dari penyusunan laporan tugas akhir ini direncanakan sebagai berikut:

BAB I PENDAHULUAN

Bab ini memuat tentang latar belakang, rumusan masalah, tujuan, ruang lingkup kajian, serta sistematika pembahasan dari tugas akhir ini.

BAB II LANDASAN TEORI

Bab ini membahas mengenai teori-teori yang berkaitan dalam penyelesaian proyek tugas akhir.

BAB III ANALISIS DAN DESAIN SISTEM

Bab ini membahas analisis dan desain sistem yang akan dibangun pada proyek tugas akhir.

BAB IV PENGEMBANGAN PERANGKAT LUNAK

Bab ini berisi kumpulan screenshot dari proyek yang dibuat beserta deskripsi dari tiap fitur yang dibuat.

BAB V TESTING DAN EVALUASI SISTEM


(29)

5

BAB VI KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan dan saran dari pembahasan pada perancangan serta analisa pengujian aplikasi yang dibuat untuk perkembangan aplikasi ke depannya.


(30)

BAB 6

SIMPULAN DAN SARAN

6.1Simpulan

Dari hasil pembahasan yang telah dilakukan, dapat ditarik beberapa kesimpulan, yaitu :

1. Sistem dapat membantu pengguna dalam mengelola jadwal pelayanan. 2. Algoritma pewarnaan graf Welch Powell dan PartialCol dapat

digunakan dalam membuat jadwal otomatis, dan memberikan hasil jadwal yang memiliki bentrok sedikit atau tingkat kesesuaian jadwal diatas 98% seperti pada Tabel 5.24 dan Tabel 5.25.

3. Dari Tabel 5.22 dan Tabel 5.23 dapat ditarik kesimpulan bahwa kompleksitas algoritma Welch Powell dan PartialCol lebih tinggi jika dibandingkan algoritma Steepest Ascent Hill Climbing. Hal tersebut dapat dilihat dari waktu yang digunakan algoritma Welch Powell dan PartialCol lebih dari 2 kali waktu awal ketika diuji dengan menggunakan 2 kali data awal, sedangkan Steepest Ascent Hill Climbing tidak sampai 2 kali waktu awal.

4. Algoritma Welch Powell dan PartialCol memberikan hasil kesesuaian jadwal yang lebih baik pada Tabel 5.25, dibandingkan algoritma Steepest Ascent Hill Climbing.

5. Pada Tabel 5.25, hasil yang diberikan algoritma pewarnaan graf lebih baik dikarenakan dalam proses penjadwalan algoritma ini memiliki banyak pilihan pelayan yang diurutkan dari yang paling membutuhkan, sedangkan algoritma Steepest Ascent Hill Climbing hanya melakukan random jadwal, sehingga akan sulit mencari pilihan pelayan dalam penjadwalan.


(31)

224

6.2Saran

Berdasarkan hal-hal yang telah dicapai dalam implementasi, diperoleh beberapa saran, yaitu :

1. Masukan setiap constraint yang dibutuhkan dalam proses pembuatan relasi ketetanggan.

2. Membuat sistem berbasis android dalam memberikan notifikasi pengingat jadwal pelayanan dan untuk mengelola jadwal.

3. Membuat pengecekan jika terjadi bentrok dalam penjadwalan manual atau perubahan jadwal.


(32)

IMPLEMENTASI ALGORITMA WELCH

POWELL, PARTIALCOL, DAN STEEPEST

ASCENT HILL CLIMBING DALAM

PENJADWALAN PETUGAS IBADAH

(STUDI KASUS : GEREJA ISA ALMASIH)

TUGAS AKHIR

Diajukan untuk Memenuhi Persyaratan Akademik dalam

Menyelesaikan Pendidikan pada Program Studi

S1 Teknik Informatika Universitas Kristen Maranatha

Oleh

Yosef Oktavianus Gunawan

1372004

PROGRAM STUDI S1 TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INFORMASI

UNIVERSITAS KRISTEN MARANATHA

BANDUNG

2016


(33)

PRAKATA

Dengan selesainya penelitian saya yang berjudul : “Implementasi Algoritma Welch Powell, PartialCol, dan Steepest Ascent Hill Climbing dalam Penjadwalan Petugas Pelayan (Studi Kasus : Gereja Isa Almasih) “, penulis ingin mengucapkan terima kasih kepada pihak-pihak yang telah berkontribusi dan membantu penulis dalam penyelesaian penelitian ini, yaitu sebagai berikut:

1. Ucapan syukur kepada Tuhan Yang Maha Esa.

2. Ucapan terima kasih kepada Bapak Hendra Bunyamin selaku pembimbing utama.

3. Ucapan terima kasih kepada Ibu Meliana Christianti J. sebagai koordinator TA.

4. Ucapan terima kasih kepada Bapak Dr. Hapnes Toba, M. Sc., selaku Dekan Fakultas Teknologi Informasi.

5. Ucapan terima kasih kepada Bapak Robby Tan, S.T., M. Kom., selaku Ketua Jurusan S1 Teknik Informatika

6. Ucapan terima kasih kepada seluruh civitas akademika Fakultas IT Universitas Kristen Maranatha.

7. Ucapan terima kasih kepada orang tua dan keluarga yang telah memberi dukungan moril maupun materiil.

8. Staf Lab FIT, dan teman-teman yang sudah membantu dan memberi dukungan.

Dalam penelitian ini masih terdapat ketidaksempurnaan. Oleh karena itu, dengan hati lapang dan sikap terbuka penulis bersedia menerima kritik dan saran dari pembaca. Penulis juga berharap hasil penelitian ini dapat dijadikan panduan bagi penelitian-penelitian selanjutnya

Bandung, 15 Desember 2016 Yang menyatakan,


(34)

DAFTAR PUSTAKA

[1] Meliana Christianti J., Robby Tan, Oscar Karnalim, Egie Imandha,Tendy

Cahyadi, “Analisis dan Perancangan Aplikasi Penyusunan Jadwal Mengajar

Sesuai Jadwal Kesediaan Mengajar Dosen Di Fakultas Teknologi Informasi

(Studi Kasus : Jurusan Teknik Informatika),” Jurnal Teknik Informatika dan Sistem Informasi , 2015.

[2] T. Hidayatulloh, “Perancangan Sistem Penjadwalan Pembelajaran

Menggunakan Graph Coloring,” Informatika, vol. 2, 2015.

[3] C. Wijaya, “Perancangan dan Implementasi Aplikasi Penjadwalan Petugas Ibadah Gereja Menggunakan Algoritma Steepest Ascent Hill Climbing (Studi

Kasus : Gereja Mawar Sharon Kemah Kemenangan Salatiga),” 2013.

[4] R. Lewis, J. Thompson, C. Mumford dan J. Gillard, “A wide-ranging Computational Comparison of High Performance Graph Colouring

Algorithm,” Computers & Operations Research, 2012.

[5] S. Astuti, “Penyusunan Jadwal Ujian Mata Kuliah dengan Algoritma

Pewarnaan Graf Welch Powell,” Jurnal Dian, 2011.

[6] R. Munir, Matematika Diskrit Revisi Kelima, Bandung: Informatika, 2012. [7] A. Trisnawati , I. B. Sangadji dan S. Karmila, “Implementasi Metode Tabu

Search Untuk Penjadwalan Kelas,” dalam SEMINAR NASIONAL TEKNOLOGI INFORMASI, Jakarta, 2011.

[8] D. R. Anamisa, “Implementasi Alokasi Jadwal Mata Pelajaran SMU

Menggunakan Algoritma Koloni Semut (AKS),” Jurnal Ilmiah NERO, vol. 1, 2014.

[9] F. R. Nugroho dan M. Ayub, “Penerapan Algoritma Artificial Bee Colony dalam Aplikasi Penjadwalan Pelajaran untuk Sekolah Menengah Pertama,” Jurnal Teknik Informatika dan Sistem Informasi, vol. 9, 2013.

[10] M. T. Prahasto dan F. , “Particle Swarm Optimization Untuk Sistem


(35)

[11] W. . A. Puspaningrum, A. Djunaidy dan R. A. Vinarti , “Penjadwalan Mata

Kuliah Menggunakan Algoritma Genetika di Jurusan Sistem Informasi ITS,”

JURNAL TEKNIK POMITS, vol. 2, 2013.

[12] H. Himawan dan D. Setyawan, “Prototipe Implementasi Algoritma Hill Climbing Untuk Membuat Jadwal Produksi Garment Di PT”XX”,” dalam Seminar Nasional Teknologi Informasi dan Multimedia, Yogyakarta, 2014. [13] J. Rumbaugh, I. Jacobson dan G. Booch, The Unified Modeling Language


(1)

223

Universitas Kristen Maranatha

BAB 6

SIMPULAN DAN SARAN

6.1Simpulan

Dari hasil pembahasan yang telah dilakukan, dapat ditarik beberapa kesimpulan, yaitu :

1. Sistem dapat membantu pengguna dalam mengelola jadwal pelayanan. 2. Algoritma pewarnaan graf Welch Powell dan PartialCol dapat

digunakan dalam membuat jadwal otomatis, dan memberikan hasil jadwal yang memiliki bentrok sedikit atau tingkat kesesuaian jadwal diatas 98% seperti pada Tabel 5.24 dan Tabel 5.25.

3. Dari Tabel 5.22 dan Tabel 5.23 dapat ditarik kesimpulan bahwa kompleksitas algoritma Welch Powell dan PartialCol lebih tinggi jika dibandingkan algoritma Steepest Ascent Hill Climbing. Hal tersebut dapat dilihat dari waktu yang digunakan algoritma Welch Powell dan PartialCol lebih dari 2 kali waktu awal ketika diuji dengan menggunakan 2 kali data awal, sedangkan Steepest Ascent Hill Climbing tidak sampai 2 kali waktu awal.

4. Algoritma Welch Powell dan PartialCol memberikan hasil kesesuaian jadwal yang lebih baik pada Tabel 5.25, dibandingkan algoritma

Steepest Ascent Hill Climbing.

5. Pada Tabel 5.25, hasil yang diberikan algoritma pewarnaan graf lebih baik dikarenakan dalam proses penjadwalan algoritma ini memiliki banyak pilihan pelayan yang diurutkan dari yang paling membutuhkan, sedangkan algoritma Steepest Ascent Hill Climbing hanya melakukan random jadwal, sehingga akan sulit mencari pilihan pelayan dalam penjadwalan.


(2)

224

Universitas Kristen Maranatha

6.2Saran

Berdasarkan hal-hal yang telah dicapai dalam implementasi, diperoleh beberapa saran, yaitu :

1. Masukan setiap constraint yang dibutuhkan dalam proses pembuatan relasi ketetanggan.

2. Membuat sistem berbasis android dalam memberikan notifikasi pengingat jadwal pelayanan dan untuk mengelola jadwal.

3. Membuat pengecekan jika terjadi bentrok dalam penjadwalan manual atau perubahan jadwal.


(3)

IMPLEMENTASI ALGORITMA WELCH

POWELL, PARTIALCOL, DAN STEEPEST

ASCENT HILL CLIMBING DALAM

PENJADWALAN PETUGAS IBADAH

(STUDI KASUS : GEREJA ISA ALMASIH)

TUGAS AKHIR

Diajukan untuk Memenuhi Persyaratan Akademik dalam

Menyelesaikan Pendidikan pada Program Studi

S1 Teknik Informatika Universitas Kristen Maranatha

Oleh

Yosef Oktavianus Gunawan

1372004

PROGRAM STUDI S1 TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INFORMASI

UNIVERSITAS KRISTEN MARANATHA

BANDUNG

2016


(4)

i

Universitas Kristen Maranatha

PRAKATA

Dengan selesainya penelitian saya yang berjudul : “Implementasi Algoritma Welch Powell, PartialCol, dan Steepest Ascent Hill Climbing dalam Penjadwalan Petugas Pelayan (Studi Kasus : Gereja Isa Almasih) “, penulis ingin mengucapkan terima kasih kepada pihak-pihak yang telah berkontribusi dan membantu penulis dalam penyelesaian penelitian ini, yaitu sebagai berikut:

1. Ucapan syukur kepada Tuhan Yang Maha Esa.

2. Ucapan terima kasih kepada Bapak Hendra Bunyamin selaku pembimbing utama.

3. Ucapan terima kasih kepada Ibu Meliana Christianti J. sebagai koordinator TA.

4. Ucapan terima kasih kepada Bapak Dr. Hapnes Toba, M. Sc., selaku Dekan Fakultas Teknologi Informasi.

5. Ucapan terima kasih kepada Bapak Robby Tan, S.T., M. Kom., selaku Ketua Jurusan S1 Teknik Informatika

6. Ucapan terima kasih kepada seluruh civitas akademika Fakultas IT Universitas Kristen Maranatha.

7. Ucapan terima kasih kepada orang tua dan keluarga yang telah memberi dukungan moril maupun materiil.

8. Staf Lab FIT, dan teman-teman yang sudah membantu dan memberi dukungan.

Dalam penelitian ini masih terdapat ketidaksempurnaan. Oleh karena itu, dengan hati lapang dan sikap terbuka penulis bersedia menerima kritik dan saran dari pembaca. Penulis juga berharap hasil penelitian ini dapat dijadikan panduan bagi penelitian-penelitian selanjutnya

Bandung, 15 Desember 2016

Yang menyatakan,


(5)

225

Universitas Kristen Maranatha

DAFTAR PUSTAKA

[1] Meliana Christianti J., Robby Tan, Oscar Karnalim, Egie Imandha,Tendy

Cahyadi, “Analisis dan Perancangan Aplikasi Penyusunan Jadwal Mengajar

Sesuai Jadwal Kesediaan Mengajar Dosen Di Fakultas Teknologi Informasi

(Studi Kasus : Jurusan Teknik Informatika),” Jurnal Teknik Informatika dan Sistem Informasi , 2015.

[2] T. Hidayatulloh, “Perancangan Sistem Penjadwalan Pembelajaran

Menggunakan Graph Coloring,” Informatika, vol. 2, 2015.

[3] C. Wijaya, “Perancangan dan Implementasi Aplikasi Penjadwalan Petugas Ibadah Gereja Menggunakan Algoritma Steepest Ascent Hill Climbing (Studi

Kasus : Gereja Mawar Sharon Kemah Kemenangan Salatiga),” 2013.

[4] R. Lewis, J. Thompson, C. Mumford dan J. Gillard, “A wide-ranging Computational Comparison of High Performance Graph Colouring

Algorithm,” Computers & Operations Research, 2012.

[5] S. Astuti, “Penyusunan Jadwal Ujian Mata Kuliah dengan Algoritma

Pewarnaan Graf Welch Powell,” Jurnal Dian, 2011.

[6] R. Munir, Matematika Diskrit Revisi Kelima, Bandung: Informatika, 2012. [7] A. Trisnawati , I. B. Sangadji dan S. Karmila, “Implementasi Metode Tabu

Search Untuk Penjadwalan Kelas,” dalam SEMINAR NASIONAL TEKNOLOGI INFORMASI, Jakarta, 2011.

[8] D. R. Anamisa, “Implementasi Alokasi Jadwal Mata Pelajaran SMU

Menggunakan Algoritma Koloni Semut (AKS),” Jurnal Ilmiah NERO, vol. 1,

2014.

[9] F. R. Nugroho dan M. Ayub, “Penerapan Algoritma Artificial Bee Colony dalam Aplikasi Penjadwalan Pelajaran untuk Sekolah Menengah Pertama,”

Jurnal Teknik Informatika dan Sistem Informasi, vol. 9, 2013.

[10] M. T. Prahasto dan F. , “Particle Swarm Optimization Untuk Sistem


(6)

226

Universitas Kristen Maranatha [11] W. . A. Puspaningrum, A. Djunaidy dan R. A. Vinarti , “Penjadwalan Mata

Kuliah Menggunakan Algoritma Genetika di Jurusan Sistem Informasi ITS,”

JURNAL TEKNIK POMITS, vol. 2, 2013.

[12] H. Himawan dan D. Setyawan, “Prototipe Implementasi Algoritma Hill Climbing Untuk Membuat Jadwal Produksi Garment Di PT”XX”,” dalam

Seminar Nasional Teknologi Informasi dan Multimedia, Yogyakarta, 2014.

[13] J. Rumbaugh, I. Jacobson dan G. Booch, The Unified Modeling Language Reference Manual, Massachusetts: Addison Wesley Longman, Inc, 1999.