SKRIPSI
MASPIN SAHPUTRA
071402030
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Teknologi Informasi
MASPIN SAHPUTRA 071402030
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : METODE DEPTH FIRST SEARCH UNTUK PENCARIAN RUTE JADWAL PENERBANGAN Kategori : SKRIPSI
Nama : MASPIN SAHPUTRA Nomor Induk Mahasiswa : 071402030
Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI Departemen : TEKNOLOGI INFORMASI
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI (Fasilkom-TI) UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, 28 Juni 2012 Komisi pembimbing :
Pembimbing 2 Pembimbing 1
Drs. Sawaluddin M.IT M. Fadly Syahputra B.Sc.M.Sc.IT NIP 19591231 199802 1001 NIP 19830129 200912 1003
Diketahui/Disetujui oleh
Program Studi S1 Teknologi Informasi Ketua,
Prof. Dr. Opim Salim Sitompul, M.Sc NIP 19610817 198701 1001
PERNYATAAN
METODE DEPTH FIRST SEARCH UNTUK PENCARIAN RUTE JADWAL PENERBANGAN
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 28 Juni 2012
MASPIN SAHPUTRA 071402030
PENGHARGAAN
Namo buddhaya, puji dan syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa, karena atas berkah, rahmat, dan bimbingan-NYA penulis dapat menyelesaikan penyusunan skripsi ini.
Dalam penulisan skripsi ini, penulis banyak mendapat bantuan berupa dukungan dan dorongan dari pihak lain. Dengan segala kerendahan hati, penulis ingin mengucapkan terima kasih kepada :
1. Kedua orang tua penulis, yaitu ayahanda Ong Eng Liong dan Ibunda tercinta Ng Suk Min yang telah memberi banyak dukungan dan kasih sayang serta bimbingan kepada penulis sehingga bisa menyelesaikan skripsi ini sesuai harapan mereka. Serta saudara-saudara saya Novita S.Kom, Ongky Maspin Wiratama B.Com.Sci, Monika Ratu Permata Sari, Raja Maspin Winata, dan Caroline yang telah memberikan dukungan moril maupun materil kepada penulis selama ini, dan seluruh keluarga besar atas perhatian dan dukungannya kepada penulis.
2. Ketua Program Studi Teknologi Informasi, Bapak Prof. Dr. Opim Sitompul, M.Sc dan Sekretaris Program Studi Teknologi Informasi juga selaku dosen pembimbing Bapak Drs. Sawaluddin, M.IT, Dekan dan Pembantu Dekan Fakultas Ilmu Komputer Dan Teknologi Informasi Universitas Sumatera Utara, semua dosen pada Program Studi Teknologi Informasi dan pegawai di Teknologi Informasi Ibu Delima Harahap, Ibu Bamelia, Kak Maya Sofia, S.Kom, Kak Naumi Syah, Amd, Kak Wardah Chairani, S.E dan Bang Faisal. 3. Bapak M. Fadly Syahputra, B.Sc.M.Sc.IT selaku dosen pembimbing saya yang
telah meluangkan banyak waktu, tenaga, ide dan pikiran untuk menyelesaikan skripsi ini.
4. Bapak M. Anggia Muchtar, ST.MM.IT dan Bapak Dedy Arisandi, ST.M.Kom selaku dosen pembanding yang telah memberikan banyak saran dan masukkan serta petunjuk untuk menyelesaikan skripsi ini.
5. Teman-teman mahasiswa Teknologi Informasi Stambuk 2007 terutama Nurul Hayati, Tika Yunita dan Shifa Sihotang. Teman dan junior-junior saya baik di lingkungan atau di luar kampus serta Rekan kerja saya Willy Indrawan khususnya atas bantuan, masukkan, motivasi dan kerjasamanya.
Akhir kata penulis mengharapkan semoga skripsi ini dapat bermanfaat dan membantu semua pihak yang memerlukannya.
ABSTRAK
Bertambahnya jumlah penumpang dan kebutuhan penumpang dari tahun ke tahun telah mengakibatkan munculnya banyak operator maskapai penerbangan. Oleh karena itu penggunaan pesawat terbang sebagai alat transportasi semakin diminati. Namun terdapat kendala bagi seorang penumpang yaitu apabila penumpang tersebut harus ke kota tujuan tertentu dimana tidak ada satu operator maskapai saja yang melayani langsung ke rute tujuan sehingga penumpang harus menggunakan atau berganti maskapai lain. Pada skripsi ini akan dijelaskan bagaimana menganalisis dan mengaplikasikan algoritma Depth First Search (DFS) dalam menentukan rute penerbangan tercepat dengan biaya atau waktu terbaik. Skripsi ini menggunakan data jadwal penerbangan di Indonesia. DFS akan mencari keseluruhan kemungkinan rute yang dapat terjadi dari data yang tersedia kemudian hasil dari seluruh pencarian akan dibandingkan untuk mendapatkan hasil tercepat atau termurah. Hasil dari penelitian ini menghasilkan sistem pencarian jadwal penerbangan berbasis desktop menggunakan bahasa pemprograman visual basic yang dapat menampilkan jadwal penerbangan tercepat atau termurah.
DEPTH FIRST SEARCH METHODS FOR SEARCH FLIGHT ROUTE SCHEDULE
ABSTRACT
Increasing the number of passanger over the year resulted many avation company. That is why the use of aircraft most widely used. However there is an obstacle if the passanger had to go to the destination where there is no airlines serving the directly route to destination so that the passanger have to looking for other airlines. In this study explains about how to analyze the Dept First Search (DFS) algorithm to determine the fastest flight route with the best cost and time. The DFS algorithm will search all possible that may occur from the available data of flight route then the result of all searches will be compared to get the fastest flight route. This study uses data of Indonesian flight schedule. The result of this paper is a desktop-based to retrieval system of flight schedule using visual basic programming language that can display flight schedule with the best cost and time.
DAFTAR ISI Halaman Persetujuan ii Pernyataan iii Penghargaan iv Abstrak vi Abstract vii
Daftar isi viii
Daftar tabel x
Daftar gambar xiii
Bab 1 Pendahuluan 1 1.1 Latar Belakang 1 1.2 Rumusan Masalah 3 1.3 Batasan Masalah 3 1.4 Tujuan Penelitian 3 1.5 Manfaat Penelitian 4 1.6 Metode Penelitian 4 1.7 Sistematika Penulisan 5
Bab 2 Landasan Teori 7
2.1 Teori Graf 7
2.1.1 Definisi Graf 7
2.1.2 Jenis Graf 9
2.1.3 Walk dan Path 10
2.2.1 Metode Pencarian Blind/Un-Informed Search 11
2.2.2 Depth First Search 12
2.3 Unified Modeling Language (UML) 14
Bab 3 Analisis dan Perancangan Sistem 16
3.1 Analisis Sistem 16
3.1.1 Analisis Algoritma Depth First Search (DFS) 16
3.1.2 Hasil Analisis 71
3.2 Perancangan Sistem 71
3.2.1 Perancangan UML 71
3.2.2 Perancangan Tampilan 77
3.2.3 Flowchart Algoritma 80
Bab 4 Implementasi dan Pengujian Sistem 83
4.1 Implementasi Sistem 83
4.2 Pengujian Sistem 83
4.2.1 Form Menu Utama User 84
4.2.2 Form Cek Rute 84
4.2.3 Form Login Admin 85
4.2.4 Form Menu Utama Admin 85
4.2.5 Form Menu Rute Baru 86
4.2.6 Form Menu Kota Baru 87
4.3 Proses Pencarian Rute dengan Metode DFS 90
Bab 5 Kesimpulan dan Saran 98
5.1 Kesimpulan 98
5.2 Saran 98
Daftar Pustaka 99
DAFTAR TABEL
Halaman
Tabel 3.1 Tabel Penjelasan Gambar 3.1 18
Tabel 3.2 Penjelasan Gambar 3.2 18
Tabel 3.3 Penjelasan Gambar 3.4 19
Tabel 3.4 Penjelasan Gambar 3.5 20
Tabel 3.5 Penjelasan Gambar 3.6 21
Tabel 3.6 Penjelasan Gambar 3.7 21
Tabel 3.7 Penjelasan Gambar 3.8 22
Tabel 3.8 Penjelasan Gambar 3.10 23 Tabel 3.9 Penjelasan Gambar 3.11 24 Tabel 3.10 Penjelasan Gambar 3.13 25 Tabel 3.11 Penjelasan Gambar 3.14 26 Tabel 3.12 Penjelasan Gambar 3.15 27 Tabel 3.13 Penjelasan Gambar 3.16 28 Tabel 3.14 Penjelasan Gambar 3.17 29 Tabel 3.15 Penjelasan Gambar 3.18 30 Tabel 3.16 Penjelasan Gambar 3.19 31 Tabel 3.17 Penjelasan Gambar 3.20 32 Tabel 3.18 Penjelasan Gambar 3.21 32 Tabel 3.19 Penjelasan Gambar 3.22 33 Tabel 3.20 Penjelasan Gambar 3.23 34 Tabel 3.21 Penjelasan Gambar 3.24 34
Tabel 3.22 Penjelasan Gambar 3.25 35 Tabel 3.23 Penjelasan Gambar 3.26 36 Tabel 3.24 Penjelasan Gambar 3.27 36 Tabel 3.25 Penjelasan Gambar 3.29 37 Tabel 3.26 Penjelasan Gambar 3.30 38 Tabel 3.27 Penjelasan Gambar 3.31 39 Tabel 3.28 Penjelasan Gambar 3.32 39 Tabel 3.29 Penjelasan Gambar 3.33 40 Tabel 3.30 Penjelasan Gambar 3.34 41 Tabel 3.31 Penjelasan Gambar 3.35 41 Tabel 3.32 Penjelasan Gambar 3.36 42 Tabel 3.33 Penjelasan Gambar 3.37 42 Tabel 3.34 Penjelasan Gambar 3.39 43 Tabel 3.35 Penjelasan Gambar 3.40 44 Tabel 3.36 Penjelasan Gambar 3.41 44 Tabel 3.37 Penjelasan Gambar 3.42 45 Tabel 3.38 Penjelasan Gambar 3.44 46 Tabel 3.39 Penjelasan Gambar 3.45 46 Tabel 3.40 Penjelasan Gambar 3.46 47 Tabel 3.41 Penjelasan Gambar 3.48 48 Tabel 3.42 Penjelasan Gambar 3.49 49 Tabel 3.43 Penjelasan Gambar 3.50 49 Tabel 3.44 Penjelasan Gambar 3.51 50 Tabel 3.45 Penjelasan Gambar 3.52 51 Tabel 3.46 Penjelasan Gambar 3.53 51 Tabel 3.47 Penjelasan Gambar 3.55 52 Tabel 3.48 Penjelasan Gambar 3.56 53 Tabel 3.49 Penjelasan Gambar 3.57 54 Tabel 3.50 Penjelasan Gambar 3.59 55 Tabel 3.51 Penjelasan Gambar 3.60 55
Tabel 3.52 Penjelasan Gambar 3.61 56 Tabel 3.53 Penjelasan Gambar 3.63 57 Tabel 3.54 Penjelasan Gambar 3.64 58 Tabel 3.55 Penjelasan Gambar 3.65 59 Tabel 3.56 Penjelasan Gambar 3.66 60 Tabel 3.57 Penjelasan Gambar 3.67 60 Tabel 3.58 Penjelasan Gambar 3.68 61 Tabel 3.59 Penjelasan Gambar 3.69 62 Tabel 3.60 Penjelasan Gambar 3.70 62 Tabel 3.61 Penjelasan Gambar 3.71 63 Tabel 3.62 Penjelasan Gambar 3.72 64 Tabel 3.63 Penjelasan Gambar 3.73 65 Tabel 3.64 Penjelasan Gambar 3.74 66 Tabel 3.65 Penjelasan Gambar 3.75 66 Tabel 3.66 Penjelasan Gambar 3.76 67 Tabel 3.67 Penjelasan Gambar 3.77 68 Tabel 3.68 Penjelasan Gambar 3.78 68 Tabel 3.69 Penjelasan Gambar 3.79 69 Tabel 3.70 Penjelasan Gambar 3.80 70 Tabel 3.71 Penjelasan Gambar 3.81 71 Tabel 4.1 Hasil pengujian Black box 87
DAFTAR GAMBAR
Halaman
Gambar 2.1 Gambar graf dimana setiap titik mewakili kota-kota dan garis 7 mewakili jalan.
Gambar 2.2 Gambar graf sederhana (G) 8 Gambar 2.3 Gambar kiri merupakan graf (G), gambar kanan merupakan 8
adjacency lists.
Gambar 2.4 Gambar kiri merupakan graf (G), gambar kanan merupakan matriks 9 dari graf(G)
Gambar 2.5 Gambar graf (G) 10
Gambar 2.6 Proses algoritma DFS 13 Gambar 3.1 Proses Pencarian Secara Keseluruhan 17 Gambar 3.2 Pengecekan Rute Nomor Data 13 18 Gambar 3.3 Penyaringan Kota Tujuan dari Data 13 19 Gambar 3.4 Pengecekan Rute Nomor Data 13-7 19 Gambar 3.5 Pengecekan Rute Nomor Data 13-8 20 Gambar 3.6 Pengecekan Rute Nomor Data 13-9 20 Gambar 3.7 Pengecekan Rute Nomor Data 13-10 21 Gambar 3.8 Pengecekan Rute Nomor Data 13-11 22 Gambar 3.9 Penyaringan Kota Tujuan dari Data 13-11 22 Gambar 3.10 Pengecekan Rute Nomor Data 13-11-13 23 Gambar 3.11 Pengecekan Rute Nomor Data 13-11-14 23 Gambar 3.12 Penyaringan Kota Tujuan dari Data 13-11-14 24
Gambar 3.13 Pengecekan Rute Nomor Data 13-11-14-7 24 Gambar 3.14 Pengecekan Rute Nomor Data 13-11-14-8 25 Gambar 3.15 Pengecekan Rute Nomor Data 13-11-14-9 26 Gambar 3.16 Pengecekan Rute Nomor Data 13-11-14-10 27 Gambar 3.17 Pengecekan Rute Nomor Data 13-11-14-11 28 Gambar 3.18 Pengecekan Rute Nomor Data 13-11-14-12 29 Gambar 3.19 Pengecekan Rute Nomor Data 13-11-14-19 30 Gambar 3.20 Pengecekan Rute Nomor Data 13-11-14-25 31 Gambar 3.21 Pengecekan Rute Nomor Data 13-11-20 32 Gambar 3.22 Pengecekan Rute Nomor Data 13-11-21 33 Gambar 3.23 Pengecekan Rute Nomor Data 13-11-22 33 Gambar 3.24 Pengecekan Rute Nomor Data 13-12 34 Gambar 3.25 Pengecekan Rute Nomor Data 13-19 35 Gambar 3.26 Pengecekan Rute Nomor Data 13-25 35 Gambar 3.27 Pengecekan Rute Nomor Data 14 36 Gambar 3.28 Penyaringan Kota Tujuan dari Data 14 37 Gambar 3.29 Pengecekan Rute Nomor Data 14-7 37 Gambar 3.30 Pengecekan Rute Nomor Data 14-8 38 Gambar 3.31 Pengecekan Rute Nomor Data 14-9 38 Gambar 3.32 Pengecekan Rute Nomor Data 14-10 39 Gambar 3.33 Pengecekan Rute Nomor Data 14-11 40 Gambar 3.34 Pengecekan Rute Nomor Data 14-12 40 Gambar 3.35 Pengecekan Rute Nomor Data 14-19 41 Gambar 3.36 Pengecekan Rute Nomor Data 14-25 42 Gambar 3.37 Pengecekan Rute Nomor Data 20 42 Gambar 3.38 Penyaringan Kota Tujuan dari Data 20 43 Gambar 3.39 Pengecekan Rute Nomor Data 20-15 43 Gambar 3.40 Pengecekan Rute Nomor Data 20-16 43 Gambar 3.41 Pengecekan Rute Nomor Data 20-17 44 Gambar 3.42 Pengecekan Rute Nomor Data 21 45
Gambar 3.43 Penyaringan Kota Tujuan dari Data 21 45 Gambar 3.44 Pengecekan Rute Nomor Data 21-15 45 Gambar 3.45 Pengecekan Rute Nomor Data 21-16 46 Gambar 3.46 Pengecekan Rute Nomor Data 21-17 47 Gambar 3.47 Penyaringan Kota Tujuan dari Data 21-17 47 Gambar 3.48 Pengecekan Rute Nomor Data 21-17-13 48 Gambar 3.49 Pengecekan Rute Nomor Data 21-17-14 48 Gambar 3.50 Pengecekan Rute Nomor Data 21-17-20 49 Gambar 3.51 Pengecekan Rute Nomor Data 21-17-21 50 Gambar 3.52 Pengecekan Rute Nomor Data 21-17-22 50 Gambar 3.53 Pengecekan Rute Nomor Data 22 51 Gambar 3.54 Penyaringan Kota Tujuan dari Data 22 52 Gambar 3.55 Pengecekan Rute Nomor Data 22-23 52 Gambar 3.56 Pengecekan Rute Nomor Data 22-27 53 Gambar 3.57 Pengecekan Rute Nomor Data 22-28 53 Gambar 3.58 Penyaringan Kota Tujuan dari Data 22-28 54 Gambar 3.59 Pengecekan Rute Nomor Data 22-28-1 54 Gambar 3.60 Pengecekan Rute Nomor Data 22-28-2 55 Gambar 3.61 Pengecekan Rute Nomor Data 22-28-3 56 Gambar 3.62 Penyaringan Kota Tujuan dari Data 22-28-3 56 Gambar 3.63 Pengecekan Rute Nomor Data 22-28-3-23 57 Gambar 3.64 Pengecekan Rute Nomor Data 22-28-3-27 57 Gambar 3.65 Pengecekan Rute Nomor Data 22-28-3-28 58 Gambar 3.66 Pengecekan Rute Nomor Data 22-28-3-29 59 Gambar 3.67 Pengecekan Rute Nomor Data 22-28-3-30 60 Gambar 3.68 Pengecekan Rute Nomor Data 22-28-3-31 61 Gambar 3.69 Pengecekan Rute Nomor Data 22-28-3-32 61 Gambar 3.70 Pengecekan Rute Nomor Data 22-29 62 Gambar 3.71 Pengecekan Rute Nomor Data 22-30 63 Gambar 3.72 Penyaringan Kota Tujuan dari Data 22-30 63
Gambar 3.73 Pengecekan Rute Nomor Data 22-30-7 64 Gambar 3.74 Pengecekan Rute Nomor Data 22-30-8 64 Gambar 3.75 Pengecekan Rute Nomor Data 22-30-9 65 Gambar 3.76 Pengecekan Rute Nomor Data 22-30-10 66 Gambar 3.77 Pengecekan Rute Nomor Data 22-30-11 67 Gambar 3.78 Pengecekan Rute Nomor Data 22-30-12 67 Gambar 3.79 Pengecekan Rute Nomor Data 22-30-19 68 Gambar 3.80 Pengecekan Rute Nomor Data 22-30-25 69 Gambar 3.81 Pengecekan Rute Nomor Data 22-31 69 Gambar 3.82 Pengecekan Rute Nomor Data 22-32 70
Gambar 3.83 Diagram Use Case 72
Gambar 3.84 Diagram aktivitas cek rute 73 Gambar 3.85 Diagram aktivitas login 74 Gambar 3.86 Diagram aktivitas update rute 75 Gambar 3.87 Diagram aktivitas update kota 76 Gambar 3.88 Tampilan form utama user 77 Gambar 3.89 Tampilan form utama admin 77
Gambar 3.90 Tampilan form rute 78
Gambar 3.91 Tampilan form kota 78
Gambar 3.92 Tampilan form login 79
Gambar 3.93 Tampilan form pengecekan rute 79
Gambar 3.94 Flowchart algoritma 82
Gambar 4.1 Form menu utama user 84
Gambar 4.2 Form cek rute 84
Gambar 4.3 Form menu login 85
Gambar 4.4 Pesan kesalahan login 85
Gambar 4.5 Menu utama admin 85
Gambar 4.6 Form menu rute baru 86 Gambar 4.7 Pesan data rute berhasil disimpan 86
Gambar 4.9 Tampilan awal sistem dengan menginput kota asal, kota tujuan dan 90 tanggal tujuan
Gambar 4.10 Hasil filter data dengan kota asal medan 91 Gambar 4.11 Pencarian di data no 13-9 92 Gambar 4.12 Hasil pertama, rute yang dapat terjadi 93 Gambar 4.13 Pencarian di data no 13-25 93 Gambar 4.14 Hasil kedua, rute yang dapat terjadi 94 Gambar 4.15 Pencarian di data no 22-29 95 Gambar 4.16 Hasil ketiga, rute yang dapat terjadi 95
Gambar 4.17 Hasil rute tercepat 96