PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
IMPLEMENTASI ALGORITMA DEPTH FIRST SEARCH(DFS) PADA RUTE BUS AKAP AKDP BERBASIS ANDROID Halaman Judul Skripsi
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer Program Studi Teknik Informatika
Oleh: Fransisca Endar Subagyo 08 5314 037
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2013 i
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
THE ANDROID-BASED IMPLEMENTATION OF DEPTH FIRST SEARCH (DFS) ALGORITHM ON AKAP AKDP BUS ROUTES
A Thesis
Presented as Partial Fulfillment of the Requirements to Obtain the Sarjana Komputer Degree in Informatics Engineering
By Fransisca Endar Subagyo 08 5314 037
DEPARTMENT OF INFORMATICS ENGINEERING FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY YOGYAKARTA 2013 ii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PERSEMBAHAN
Skripsi ini saya persembahkan untuk Tuhan Yesus Kristus, Keluarga, Sahabat, dan Teman –Teman
Terima Kasih Untuk Semuanya
v
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian dari karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.
Yogyakarta, 22 Februari 2013 Penulis
Fransisca Endar Subagyo
vi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
IMPLEMENTASI ALGORITMA DEPTH FIRST SEARCH(DFS) PADA RUTE BUS AKAP AKDP BERBASIS ANDROID
ABSTRAK Bus umum merupakan salah satu alat transportasi darat yang masih banyak digunakan oleh masyarakat. Bus umum memiliki jalur atau rute tertentu dalam mencapai suatu tempat. Masalah yang dihadapi oleh penumpang adalah bagaimana menentukan rute yang singkat dan murah. Penumpang bus perlu mempertimbangkan jalur yang dilalui oleh bus, untuk mencari jarak terpendek dalam mencapai suatu tempat. Pemilihan jalur yang tepat dapat meringankan biaya transportasi. Skripsi ini menyediakan informasi tentang rekomendasi rute / jalur beserta harga yang diperlukan. Sistem ini dikembangkan berbasis mobile dan berbasis web. Aplikasi mobile ditujukan untuk penumpang bus yang akan mencari jalur yang ada dari suatu terminal ke terminal lain Dalam pencarian semua kemungkinan jalur yang ada, digunakan algoritma Depth First Search (DFS). DFS merupakan salah satu algoritma yang dapat digunakan untuk memilih semua kemungkinan jalur. Kelebihan algoritma ini dapat menampilkan berbagai alternatif jalur yang ada, saat tersedia banyak kemungkinan. Data yang dipergunakan adalah data yang diperoleh dari Dinas Hubkominfo (Dinas Perhubungan, Komunikasi dan Informatika). Hasil perhitungan DFS dapat divisualisasikan dalam peta yang terintegrasi dengan Google Map. Rekomendasi yang diberikan sistem disusun berdasar jumlah terminal yang dilalui oleh suatu bus tertentu berdasar jalur yang ada. Semakin sedikit jumlah terminal yang dilalui maka akan berada pada puncak rekomendasi. Jumlah rekomendasi berbanding lurus dengan waktu yang diperlukan sistem dalam mendapatkan semua kemungkinan jalur yang ada dari suatu terminal ke terminal lain. Proses pengujian sistem adalah dengan mencocokan hasil perhitungan manual dengan hasil yang ditampilkan oleh sistem. Berdasarkan pengujian tersebut jalur yang ditemukan oleh sistem sama dengan hasil perhitungan manual. Kata kunci : Depth First Search(DFS), rute bus, aplikasi mobile, web vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
THE ANDROID-BASED IMPLEMENTATION OF DEPTH FIRST SEARCH (DFS) ALGORITHM ON AKAP AKDP BUS ROUTES
ABSTRACT A public bus is one of road transportations, which is still widely used by the societies. A public bus has certain traffic lanes or routes to reach a destination. The problem faced by the passengers is how to determine the brief and cheap route. They need to consider the traffic lanes passed by the bus and to look for the shortest distance in order to reach a destination. Choosing the proper traffic lane can diminish the transportation cost. This research provides some information about the recommendation of bus routes/traffic lanes and the costs needed. The system was developed based on mobile and web. Mobile application is targeted to the bus passengers who will look for the traffic lanes from one bus station to another. In searching for all the possible traffic lanes, the Depth First Search (DFS) algorithm is used. DFS is one of algorithms that can be used to choose the shortest route among all the possible traffic lanes. The strength of this algorithm is the ability to present various route alternatives where there are many possibilities of routes. The data used is the one obtained from Dinas Hubkominfo (Dinas Perhubungan, Komunikasi, dan Informatika). The calculation result of DFS can be visualized on a map that is integrated with Google Map. The recommendation given by the system is arranged based on the numbers of stations passed by certain buses according to the traffic lanes. The lower the numbers of the bus stations that are passed, the higher the possibility to reach the top of recommendation. The numbers of recommendation are proportional to the time needed by the system in obtaining all possible routes from one station to another. The system examination process was conducted by comparing the result of the manual calculation to the result presented by the system. Based on the examination, the routes found by the system matched those in manual calculation. Key Words: Depth First Search (DFS), bus routes, mobile application, web
viii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma: Nama : Fransisca Endar Subagyo NIM
: 08 5314 037
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul: Implementasi Algoritma Depth First Search(DFS) Pada Rute Bus AKAP AKDP Berbasis Android Dengan demikian saya memberikan kepada Universitas Sanata Dharma hak untuk menyiapkan, mengalihkan dalam bentuk media lain, mengelola dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikan di internet atau media lain untuk kepentingan akademis tanpa perlu meminta izin dari saya maupun memberi royalty kepada saya selama tetap mencantumkan nama saya sebagai penulis. Demikian pernyataan ini saya buat dengan sebenarnya. Dibuat di Yogyakarta Pada Tanggal: 22 Februari 2013 Yang menyatakan,
(Fransisca Endar Subagyo) ix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa, karena hanya dengan berkat dan karunia-Nya, serta campur tangan-Nya, penulis dapat menyelesaikan skripsi yang berjudul “Implementasi Algoritma Depth First Search(DFS) Pada Bus AKAP AKDP Berbasis Android” dengan baik. Pada kesempatan ini penulis juga ingin mengucapkan rasa terima kasih kepada: 1. Bapak Puspaningtyas Sanjoyo Adi S.T., M.T., selaku dosen pembimbing yang sudah meluangkan waktu dan dengan sabar membimbing penulis, sehingga skripsi ini dapat diselesaikan dengan baik. 2. Ibu Ridowati Gunawan S.Kom., M.T. selaku ketua program studi Teknik Informatika 3. Pihak sekretariat dan laboran Fakultas Sains dan Teknologi yang turut membantu penulis dalam menyelesaikan tugas akhir ini. 4. Kepada kedua orang tua, Bapak Anton Subagyo dan Ibu M. Andaryati S.Pd., yang selalu memberikan kasih sayang, semangat, dukungan serta doa yang melimpah kepada penulis. 5. Segenap saudara, terutama Kak Yasinta Endar Subagyo, dan Dik Jonathan Ongky Subagyo yang selalu memberi semangat, motivasi, serta memberikan hiburan ketika penulis merasa bosan dan putus asa.
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6. Teman – teman kuliah Putri, Petra, Ita, Angga, Reza, Endro, Surya, Bebeth, Tista, Wulan, Ocak, Ndul, Esy, Devi, Gadis, Carla, Widya, Ancel, Ika, serta teman – teman TI 08 lainnya atas kebersamaan dan dukungan yang selalu diberikan kepada penulis. 7. Teman- teman kost 202B Sari, Winas, Evi, Ken, Ela,
yang senatiasa
menemani dan memberikan dukungan serta menjadi motivasi bagi penulis dalam menyelesaikan tugas akhir ini. 8. Semua pihak yang tidak dapat disebutkan satu persatu, yang telah membantu sehingga penulis dapat menyelesaikan skripsi ini. Akhirnya penulis berharap semoga skripsi ini dapat berguna bagi para pembaca.
Penulis,
Fransisca Endar Subagyo
xi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR ISI
HALAMAN JUDUL ........................................................................................................................ i HALAMAN PERSETUJUAN ....................................................................................................... iii HALAMAN PENGESAHAN ........................................................................................................ iv HALAMAN PERSEMBAHAN ...................................................................................................... v PERNYATAAN KEASLIAN KARYA ......................................................................................... vi ABSTRAK..................................................................................................................................... vii ABSTRACT ................................................................................................................................. viii LEMBAR PERNYATAAN ........................................................................................................... ix KATA PENGANTAR ..................................................................................................................... x DAFTAR ISI ................................................................................................................................. xii DAFTAR GAMBAR ................................................................................................................. xviiii DAFTAR TABEL ........................................................................................................................ xix BAB I PENDAHULUAN ............................................................................................................... 1 1.1
Latar Belakang .................................................................................................................. 1
1.2
Rumusan Masalah ............................................................................................................. 3
1.3
Tujuan ............................................................................................................................... 4
1.4
Batasan Masalah ............................................................................................................... 4
1.5
Metodologi Penelitian ....................................................................................................... 5
1.6
Sistematika Penulisan ....................................................................................................... 6
BAB II LANDASAN TEORI.......................................................................................................... 7 2.1
Graf ................................................................................................................................... 7
2.2
Graf Tak-Berarah (Undirected Graph) ............................................................................. 8
2.3
Graf Berarah (Digraph) .................................................................................................... 9
2.4
Lintasan (Path) dan Rangkaian (Circuit) ........................................................................ 10
2.4.1
Lintasan (Path) ......................................................................................................... 10
2.4.2
Rangkaian (Circuit) ................................................................................................. 11
2.5
Algoritma DFS ................................................................................................................ 12
2.6
Contoh Perhitungan DFS ................................................................................................ 13 xii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.7
Android ........................................................................................................................... 14
2.7.1
Arsitektur Android ................................................................................................... 15
2.7.2
Komponen Dasar ..................................................................................................... 17
2.7.3
Daur Hidup Activity ................................................................................................. 18
2.7.4
Daur Hidup Service ................................................................................................. 20
2.8
Location Based Service (LBS) dan Google Maps .......................................................... 21
2.9
Sistem Infromasi ............................................................................................................. 23
2.10
Sistem Informasi Geografis ............................................................................................ 24
2.10.1
Definisi Sistem Informasi Geografis ....................................................................... 24
2.10.2
Manfaat Sistem Informasi Geografis ....................................................................... 24
2.10.3
Cara Kerja Sistem Informasi Geografis................................................................... 25
BAB III ANALISIS DAN PERANCANGAN SISTEM ............................................................... 26 3.1
Analisa Sistem ................................................................................................................ 26
3.2
Sumber Data.................................................................................................................... 27
3.3
Perhitungan DFS ............................................................................................................. 28
3.4
Arsitektur Sistem ............................................................................................................ 30
3.4.1 Arsitektur Sistem berbasis mobile ................................................................................. 30 3.4.2 Arsitektur Sistem berbasis Web..................................................................................... 34 3.5
Gambaran Umum Sistem ................................................................................................ 36
3.5.1
Use Case .................................................................................................................. 36
3.5.1.1.Use Case Berbasis Mobile ....................................................................................... 36 3.5.1.1
Use Case Berbasis Web ....................................................................................... 37
3.5.2 Narasi Use Case ............................................................................................................ 39 3.5.3. Diagram Aktifitas ......................................................................................................... 39 3.5.4. Model Analisis ............................................................................................................. 39 3.5.5
Diagram Kelas ......................................................................................................... 40
3.5.6
Desain Basis Data .................................................................................................... 41
3.5.7
Perancangan Basis Data........................................................................................... 42
3.6
Model Desain .................................................................................................................. 44
3.7
Model Pengujian ............................................................................................................. 44
BAB IV IMPLEMENTASI DAN ANALISIS SISTEM ............................................................... 45 xiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4.1
Tahap Implementasi ........................................................................................................ 45
4.1.1
Spesifikasi Perangkat Keras dan Perangkat Lunak ................................................. 45
4.1.2
Implementasi Diagram Kelas .................................................................................. 45
4.2
Pengujian......................................................................................................................... 46
4.2.1
Penyelesaian Rumusan Masalah .............................................................................. 46
4.2.2
Pengukuran Kinerja Sistem ..................................................................................... 75
4.2.3
Kelebihan dan Kekurangan Sistem.......................................................................... 77
BAB V PENUTUP ........................................................................................................................ 78 5.1
Kesimpulan ..................................................................................................................... 78
5.2
Saran ............................................................................................................................... 79
DAFTAR PUSTAKA .................................................................................................................... 80 LAMPIRAN 1 ............................................................................................................................... 81 1.1
Travice web server .......................................................................................................... 81
1.1.1
Login ........................................................................................................................ 81
1.1.2
Tambah Data Terminal ............................................................................................ 82
1.1.3
Ubah Data Terminal ................................................................................................ 83
1.1.4
Hapus Data Terminal ............................................................................................... 84
1.1.5
Tambah Data Jalur ................................................................................................... 84
1.1.6
Ubah Data Jalur ....................................................................................................... 85
1.1.7
Hapus Data Jalur ...................................................................................................... 82
1.1.8
Tambah Data Trayek ............................................................................................... 86
1.1.9
Ubah Data Trayek .................................................................................................... 87
1.1.10
Hapus Data Trayek .................................................................................................. 88
1.1.11
Logout ...................................................................................................................... 89
1.2
Travice mobile ................................................................................................................ 89
1.2.1
Login ........................................................................................................................ 89
1.2.2
Tambah Data Terminal ............................................................................................ 90
1.2.3
Ubah Data Terminal ................................................................................................ 91
1.2.4
Hapus Data Terminal ............................................................................................... 92
1.2.5
Logout ...................................................................................................................... 93
1.2.6
Cari Jalur.................................................................................................................. 93 xiv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN 2 ............................................................................................................................... 95 2.1
Travice web server .......................................................................................................... 95
2.1.1
Login ........................................................................................................................ 95
2.1.2
Tambah Data Terminal ............................................................................................ 96
2.1.3
Ubah Data Terminal ................................................................................................ 97
2.1.4
Hapus Data Terminal ............................................................................................... 98
2.1.5
Tambah Data Jalur ................................................................................................... 99
2.1.6
Ubah Data Jalur ..................................................................................................... 100
2.1.7
Hapus Data Jalur .................................................................................................... 101
2.1.8
Tambah Data Trayek ............................................................................................. 102
2.1.9
Ubah Data Trayek .................................................................................................. 103
2.1.10
Hapus Data Trayek ................................................................................................ 104
2.1.11
Logout .................................................................................................................... 104
2.2
Travice mobile .............................................................................................................. 105
2.2.1
Login ...................................................................................................................... 105
2.2.2
Tambah Data Terminal .......................................................................................... 106
2.2.3
Ubah Data Terminal .............................................................................................. 107
2.2.4
Hapus Data Terminal ............................................................................................. 108
2.2.5
Logout .................................................................................................................... 108
2.2.6
Cari Jalur................................................................................................................ 109
LAMPIRAN 3 ............................................................................................................................. 110 3.1
Travice web server ........................................................................................................ 110
3.1.1
Login ...................................................................................................................... 110
3.1.2
Tambah Data Terminal .......................................................................................... 111
3.1.3
Ubah Data Terminal .............................................................................................. 113
3.1.4
Hapus Data Terminal ............................................................................................. 114
3.1.5
Tambah Data Jalur ................................................................................................. 115
3.1.6
Ubah Data Jalur ..................................................................................................... 117
3.1.7
Hapus Data Jalur .................................................................................................... 119
3.1.8
Tambah Data Trayek ............................................................................................. 120
3.1.9
Ubah Data Trayek .................................................................................................. 122 xv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.1.10
Hapus Data Trayek ................................................................................................ 123
3.1.11
Logout .................................................................................................................... 124
3.2
Travice mobile .............................................................................................................. 126
3.2.1
Login ...................................................................................................................... 126
3.2.2
Tambah Terminal .................................................................................................. 128
3.2.3
Ubah Terminal ....................................................................................................... 129
3.2.4
Hapus Terminal ..................................................................................................... 131
3.2.5
Logout .................................................................................................................... 132
3.2.6
Cari Jalur................................................................................................................ 133
LAMPIRAN 4 ............................................................................................................................. 135 4.1
Travice web server ........................................................................................................ 135
4.1.1
Login ...................................................................................................................... 135
4.1.2
Tambah Data Terminal .......................................................................................... 136
4.1.3
Ubah Data Terminal .............................................................................................. 136
4.1.4
Hapus Data Terminal ............................................................................................. 137
4.1.5
Tambah Data Jalur ................................................................................................. 137
4.1.6
Ubah Data Jalur ..................................................................................................... 138
4.1.7
Hapus Data Jalur .................................................................................................... 138
4.1.8
Tambah Data Trayek ............................................................................................. 138
4.1.9
Ubah Data Trayek .................................................................................................. 139
4.1.10
Hapus Data Trayek ................................................................................................ 140
4.1.11
Logout .................................................................................................................... 140
4.2
Travice mobile .............................................................................................................. 140
4.2.1
Login ...................................................................................................................... 140
4.2.2
Tambah Terminal .................................................................................................. 140
4.2.3
Ubah Terminal ....................................................................................................... 141
4.2.4
Hapus Terminal ..................................................................................................... 142
4.2.5
Logout .................................................................................................................... 142
4.2.6
Cari Jalur................................................................................................................ 142
LAMPIRAN 5 ............................................................................................................................. 143 5.1
Travice web server ........................................................................................................ 143 xvi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5.1.1
Login ...................................................................................................................... 143
5.1.2
Tambah Data Terminal .......................................................................................... 144
5.1.3
Ubah Data Terminal .............................................................................................. 147
5.1.4
Hapus Data Terminal ............................................................................................. 147
5.1.5
Tambah Data Jalur ................................................................................................. 148
5.1.6
Ubah Data Jalur ..................................................................................................... 149
5.1.7
Hapus Data Jalur .................................................................................................... 150
5.1.8
Tambah Data Trayek ............................................................................................. 150
5.1.9
Ubah Data Trayek .................................................................................................. 151
5.1.10
Hapus Data Trayek ................................................................................................ 152
5.1.11
Logout .................................................................................................................... 153
5.2
Travice mobile .............................................................................................................. 153
5.2.1
Login ...................................................................................................................... 154
5.2.2
Tambah Terminal .................................................................................................. 155
5.2.3
Ubah Terminal ....................................................................................................... 155
5.2.4
Hapus Terminal ..................................................................................................... 156
5.2.5
Logout .................................................................................................................... 156
5.2.6
Cari Jalur................................................................................................................ 157
LAMPIRAN 6 ............................................................................................................................. 158 6.1
Travice web server ........................................................................................................ 158
6.2
Travice mobile .............................................................................................................. 166
xvii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR GAMBAR
Gambar 2.1 Graf sederhana ........................................................................................................... 8 Gambar 2.2 Graf ganda .................................................................................................................. 9 Gambar 2.3 Graf semu ................................................................................................................... 9 Gambar 2.4 Directed Graph ........................................................................................................ 10 Gambar 2.5 Graf G dengan empat titik dan empat sisi ............................................................... 11 Gambar 2.6 Graf G dan sirkuitnya .............................................................................................. 12 Gambar 2.7 Graf .......................................................................................................................... 13 Gambar 2.8 Arsitektur Android ................................................................................................... 15 Gambar 3.1 Gambar Graf............................................................................................................. 28 Gambar 3.2 Arsitektur Sistem berbasis mobile ............................................................................ 30 Gambar 3.3 Arsitektur Aplikasi Sistem untuk User .................................................................... 32 Gambar 3.4 Arsitektur Aplikasi Sistem untuk Admin ................................................................. 33 Gambar 3.5 Arsitektur Sistem berbasis Web ............................................................................... 34 Gambar 3.6 Arsitektur Aplikasi Sistem untuk Admin ................................................................. 35 Gambar 3.7 Use Case Diagram.................................................................................................... 36 Gambar 3.8 Package Kelola Data untuk Admin .......................................................................... 37 Gambar 3.9 Use Case Diagram.................................................................................................... 38 Gambar 3.10 Package Kelola Data untuk Admin ........................................................................ 38 Gambar 3.11 Diagram kelas Travice web server ......................................................................... 40 Gambar 3.12 Diagram kelas Travice mobile ............................................................................... 40 Gambar 3.13 ERD Sistem ............................................................................................................ 42
xviii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR TABEL
Tabel 2.1 Isi Stack dalam DFS ..................................................................................................... 13 Tabel 3.1 Matrik ketetanggaan ..................................................................................................... 28 Tabel 3.2 Isi Stack dalam DFS : ................................................................................................... 29 Tabel 3.3 Struktur tabel terminal .................................................................................................. 42 Tabel 3.4 Struktur tabel Jalur ........................................................................................................ 43 Tabel 3.5 Struktur tabel PO_Bus .................................................................................................. 43 Tabel 3.6 Struktur tabel Trayek .................................................................................................... 43
xix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I PENDAHULUAN 1 1.1
Bab I Pendahuluan Latar Belakang Transportasi adalah pemindahan manusia atau barang dari satu tempat ke tempat lainnya dengan menggunakan sebuah kendaraan yang digerakkan oleh manusia atau mesin. Transportasi digunakan untuk memudahkan manusia dalam melakukan aktivitas sehari-hari. Alat transportasi ada bermacam-macam. Bus umum merupakan salah satu alat transportasi darat yang masih banyak digunakan oleh masyarakat. Bus umum memiliki jalur atau rute tertentu dalam mencapai suatu tempat. Jalur atau rute ini, merupakan daftar tempat yang dilalui oleh bus tersebut. Penumpang bus bisa mendapatkan informasi mengenai jalur bus dari teman, keluarga, ataupun dari website. Informasi ini memudahkan penumpang bus dalam memilih rute yang akan digunakan. Penumpang bus harus memilih bus yang tepat dalam bertransportasi. Penumpang bus perlu mempertimbangkan jalur yang dilalui oleh bus, untuk mencari jarak terpendek dalam mencapai suatu tempat. Semakin singkat jarak untuk mencapai tujuan yang diinginkan, maka biaya transportasi yang perlu dikeluarkan juga semakin kecil. Pemilihan jalur yang tepat dapat meringankan biaya transportasi. Calon penumpang bus perlu dibantu dengan memberikan informasi dalam sebuah aplikasi. Spesifikasi aplikasi tersebut meliputi :
1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 2
a. memberikan informasi seperti biaya yang diperlukan, jalur bus yang dilalui b. menampilkan visualisasi jalur yang disediakan c. dapat diakses dimana dan kapan saja d. pengaksesan informasi dapat dengan cepat dilakukan e. aplikasi selalu dibawa oleh pengguna Berdasarkan spesifikasi tersebut maka aplikasi berbasis mobile adalah aplikasi yang sesuai untuk menyelesaikan masalah pemilihan jalur terpendek. Kelebihan dari aplikasi berbasis mobile tentu dalam hal kepraktisan. Aplikasi berbasis mobile dapat digunakan dimana saja dan kapan saja. Berbeda dengan aplikasi berbasis dekstop, saat ingin menggunakan aplikasi tersebut kita harus datang ke tempat dimana aplikasi tersebut berada, sehingga tidak dapat digunakan kapan saja. Pengaksesan informasi yang cepat, dapat diakses kapan saja dan dimana saja, membuat aplikasi mobile tepat diterapkan dalam menyelesaikan masalah pemilihan jalur transportasi untuk mendapatkan jalur terpendek. Dengan adanya kemajuan teknologi, aplikasi Google Map dapat membantu dalam memvisualisasikan jalur transportasi terpendek yang akan digunakan oleh penumpang bus umum. Salah satu misi dari Dinas Hubkominfo (Dinas Perhubungan, Komunikasi dan Informatika) mendukung peningkatan efisiensi dan efektivitas tata kelola pemerintahan di Dinas Hubkominfo yang berbasis good governance
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 3
dengan memanfaatkan teknologi informasi secata optimal. Dengan adanya aplikasi yang membantu calon penumpang bis umum dalam memilih rute transportasi, akan memudahkan Dinas Hubkominfo memberikan data mengenai rute transportasi yang ada. Selain itu calon penumpang juga akan mudah dalam mengakses data tersebut. Variabel
yang
akan
diperhitungkan
adalah
biaya.
Dalam
bertransportasi, jarak tentu akan sangat berpengaruh pada biaya yang perlu dikeluarkan. Alasan pemilihan variabel biaya karena variabel biaya adalah variabel yang penting dalam bertransportasi. Pengaturan jalur bus dari pemerintah tentu mempertimbangkan keramaian jalanan. Semakin ramai jalan tersebut tentu harapannya semakin banyak penumpang yang didapatkan oleh angkutan umum tersebut. Sehingga variabel seperti tingginya traffic jalan(kemacetan), bisa diabaikan karena dalam angkutan umum semakin ramai suatu tempat harapannya semakin banyak penumpang bus yang didapat. Algoritma Depth First Search(DFS) merupakan salah satu algoritma yang dapat digunakan untuk memilih rute terpendek dari suatu jalur yang ada. Kelebihan algoritma ini dapat menampilkan berbagai alternatif jalur yang ada, saat tersedia banyak kemungkinan.
1.2
Rumusan Masalah Permasalahan yang dapat dirumuskan dari penelitian ini adalah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 4
1. Bagaimana algoritma DFS mampu memberikan solusi dalam pemilihan jalur transportasi terpendek yang akan digunakan calon penumpang bus umum? 2. Bagaimana hasil perhitungan algoritma DFS dapat divisualisasikan dalam program berbasis mobile?
1.3
Tujuan Tujuan dari penelitian yang dilakukan adalah 1. Menerapkan algoritma DFS untuk memberikan solusi jalur transportasi pada bus umum dengan mengakomodasi pergantian kendaraan
2. Memvisualisasikan jalur trasportasi bus umum yang memungkinkan untuk mencapai suatu tempat yang ada di Yogyakarta, Semarang, Surakarta
1.4
Batasan Masalah Penelitian ini akan dibatasi pada hal-hal berikut: 1. Obyek yang diteliti adalah jalur transportasi bus umum yang ada di Yogyakarta, Semarang, Surakarta, untuk bus Antar Kota Dalam Provinsi(AKDP), dan Antar Kota Antar Propinsi(AKAP) 2. Terminal yang diperhitungkan sesuai dengan data yang ada di Dinas Perhubungan Komunikasi dan Informatika Provinsi Yogyakarta dan Jawa Tengah hingga tahun 2012 3. Algoritma yang digunakan adalah algoritma DFS
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 5
4. Solusi jalur disusun berdasar jumlah terminal yang dilalui. Semakin sedikit terminal yang dilalui maka akan berada pad puncak rekomendasi. 5. Pencarian jalur berdasar pada suatu terminal ke terminal yang lainnya. Aplikasi tidak mengamodasi pencarian terminal terdekat dari posisi handphone/smart phone. 1.5
Metodologi Penelitian Pada pelaksanaan pembuatan tugas akhir hingga pembuatan sistem dan penyusunan laporan, penulis menggunakan metode yaitu : a. Metode pengumpulan data Penulis melakukan studi pustaka untuk mengumpulkan informasi. Studi pustaka dilakukan dengan mempelajari teori-teori serta literatur yang mendukung penelitian ini terutama yang berhubungan dengan algoritma DFS serta perangkat lunak yang digunakan untuk membangun sistem. Selain itu penulis juga mengumpulkan data seperti data terminal serta jalur bus umum yang ada di Yogyakarta, Semarang, dan Surakarta yang digunakan untuk penelitian ini. b. Metode pengembangan sistem Metode yang dipakai untuk mengembangkan sistem yang dipakai adalah pendekatan algoritma DFS c. Metode evaluasi sistem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 6
Metode evaluasi dilakukan dengan menguji sistem berdasar beberapa masukan(inputan).
1.6
Sistematika Penulisan Bab I. Pendahuluan Bab ini membahas mengenai latar belakang, rumusan masalah, batasan masalah, tujuan, metodologi, dan sistematika penulisan. Bab II. Landasan Teori Bab ini membahas mengenai pengetahuan yang menjadi dasar teori untuk mengimplementasikan algoritma DFS dalam memberikan solusi pemilihan jalur terpendek transportasi bus. Bab III. Analisis dan Perancangan Sistem Dalam bab ini akan diidentifikasikan masalah yang akan diselesaikan serta tahap tahap penyelesaian masalah tersebut dengan menggunakan algoritma DFS. Bab IV. Analisa Hasil dan Pembahasan Bab ini berisi analisa hasil program dan pembahasan masalah berdasarkan hasil yang telah didapat secara keseluruhan. Bab V. Kesimpulan dan Saran Bab ini berisi kesimpulan dan saran dari hasil analisis serta pembahasan masalah berdasarkan hasil yang telah didapat.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB II LANDASAN TEORI
2 2.1
Bab II landasan Teori Graf Graf G didefinisikan sebagai pasangan himpunan (V, E) ditulis dengan notasi G=(V,E) yang dalam hal ini V adalah himpunan tidak kosong dari simpul-simpul (vertices/node) dan E adalah himpunan sisi (edges/arcs) yang menghubungkan sepasang simpul [1]. Suatu graf seperti suatu peta dan jalan-jalannya. Kota-kota sebagai vertices-nya. Jalan dari satu kota ke kota lainnya sebagai edges-nya. Simpangan atau cabang di dalam suatu jalan dapat dipandang sebagai vertex juga. Jika simpangan/cabang tidak ingin dihitung sebagai vertex, maka suatu jalan dapat menghubungkan lebih dari dua kota. Maka pada hakekatnya terdapat hyperedges di dalam suatu hypergraph. Jika diasumsikan lebih dari satu jalan antar masing-masing pasangan kota, maka dapat disebut sebagai multigraph. Semua itu tergantung pada bagaimana batasan yang diberikan. Cara lain untuk berpikir tentang suatu graf adalah sebagai seikat/berkas titik yang dihubungkan oleh garis-garis. Titik di dalam suatu grafik disebut vertex, dan garis yang menghubungkan titik-titik itu disebut edges. Hal yang penting adalah vertex dan edges yang merupakan titik dan koneksi antara titik.
7
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 8
2.2
Graf Tak-Berarah (Undirected Graph) Graf yang sisinya tidak mempunyai orientasi arah disebut graf tak berarah. Pada graf tak-berarah urutan pasangan simpul yang dihubungkan oleh sisi tidak diperhatikan. Jadi, (u,v) = (v,u) adalah sisi yang sama [1]. Graf tak-berarah ini terdiri dari beberapa macam, yaitu [1] : 1. Graf sederhana, adalah graf yang tidak mengandung gelang maupun sisi ganda. Pada graf sederhana sisi adalah pasangan tak terurut (unordered pairs). Jadi, menuliskan sisi (u,v) = (v,u). 1
2
3
4
Gambar 2.1 Graf sederhana 2. Graf tak sederhana, adalah graf yang mengandung sisi ganda atau gelang. Ada 2 macam graf tak sederhana yaitu graf ganda (multigraph) dan grap semu (pseudograph). a.
Graf ganda, adalah graf yang mengandung sisi ganda. Sisi ganda yang menghubungkan sepasang simpul bisa lebih dari dua buah. Sisi ganda dapat diasosiasikan sebagai pasangan tak terurut yang sama.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 9
1 e4
e1 e3
e2
2
3
e6
e5
e7 4
Gambar 2.2 Graf ganda b. Graf Semu, adalah graf yang mengandung gelang (loop). 1 e4
e1 e3
e2
2
3 e5
e6
e8
3 e7
4
Gambar 2.3 Graf semu 2.3
Graf Berarah (Digraph) Suatu graf berarah G terdiri dari himpunan titik-titik V(G) : {v 1 , v 2 , ...}, himpunan garis-garis E(G) : {e 1 , e 2 , ...}, dan suatu fungsi ψ yang mengawankan setiap garis dalam E(G) ke suatu pasangan berurutan titik (v i , v j ). Jika e k = (v i , v j ) adalah suatu garis dalam G, maka v i disebut titik awal e k dan v j disebut titik akhir e k . Arah garis adalah dari v i ke v j. Jumlah garis yang keluar dari titik v i disebut derajat keluar (out degree) titik v i (simbol d+(v i )),
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 10
sedangkan jumlah garis yang menuju ke titik v i , disebut derajat masuk (in degree) titik v i , yang disimbolkan sebagai d-(v i ). Titik terasing adalah titik dalam G dimana derajat keluar dan derajat masuknya adalah 0. Titik pendan adalah titik dalam G dimana derajat keluar dan derajat masuknya 1. Dua garis berarah dikatakan paralel jika keduanya mempunyai titik awal dan titik akhir yang sama [2].
v2 e1 v1
e5
e4
v3 e3 e2 v4
e6 e8 e9
e7
v6
v5
Gambar 2.4 Directed Graph 2.4
Lintasan (Path) dan Rangkaian (Circuit)
2.4.1 Lintasan (Path) Misalkan u dan v adalah adalah titik – titik pada graf G. Sebuah jalan (walk) u – v pada graf G adalah barisan selang – seling antar titik dan sisi, u = u0, e1, u1, e2, ......, un-1, en, un= v dimulai dengan titik u dan diakhiri dengan titik v, dimana ei = (ui-1ui) untuk i = 1, 2, 3, ....,n. Bilangan n disini menunjukkan panjangnya jalan. Sebuah jalan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 11
trivial tidak mempunyai sisi, n = 0. Perlu diperhatikan bahwa pada jalan ada kemungkinan pengulangan sisi dan titik. Sebuah trail u – v adalah sebuah jalan u – v yang tidak terdapat pengulangan sisi, sedangkan sebuah jalan u – v yang tidak terdapat pengulangan titik dan sisi adalah lintasan u – v. Oleh sebab itu setiap lintasan pasti merupakan trail [3]. Contoh:
Gambar 2.5 Graf G dengan empat titik dan empat sisi Contoh jalan pada graf G di atas adalah jalan v1-v4, yaitu v1, e1, v2, e2, v3, e3, v1, e1, v2, e4, v4. Contoh trail pada graf G di atas adalah trail v2-v4, yaitu v2, e2, v3, e3, v1, e1, v2, e4, v4. Contoh lintasan pada graf G di atas adalah lintasan v3-v4, yaitu v3, e3, v1, e1, v2, e4, v4.
2.4.2 Rangkaian (Circuit) Suatu trail tertutup dan tak trivial di graf G disebut sebagai suatu sirkuit pada graf G [3]. Contoh:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 12
Gambar 2.6 Graf G dan sirkuitnya Salah satu sirkuit pada graf G di atas adalah trail dari v3 ke v3, yaitu v3, e3, v1, e1, v2, e2, v3. 2.5
Algoritma DFS Aturan-aturan untuk DFS tersebut adalah [4] : 1. Jika mungkin lakukan pada simpul-simpul(vertex) pendamping yang belum pernah dikunjungi, tandai masukan ke Stack. 2. Jika saat kita melakukan aturan tersebut mengalami kesulitan kita keluarkan simpul (vertex) dari Stack. Mengikuti aturan ini, jika kita mengeluarkan suatu simpul dari Stack, kita akan sampai lagi pada simpul bawahnya. Jika simpul di bawahnya bukan merupakan simpul pendamping, yang belum dikunjungi kita keluarkan lagi. Demikian selanjutnya hingga kita tidak bisa melakukannya lagi dan kita harus masuk ke aturan 3 berikut ini. 3. Jika kita tidak bisa lagi mengikuti aturan 1 atau aturan 2 di atas, berarti kita telah menyelesaikan algoritma DFS.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 13
2.6
Contoh Perhitungan DFS Gambar 2.7 menyatakan graf berarah berlabel :
Bandara
Giwangan
St. Tugu
Malioboro
Tirtonadi
Salatiga
Ambarawa
Klaten
Term. Concat
Gambar 2.7 Graf
Tabel 2.1 Isi Stack dalam DFS Event
Isi Stack
Visit Giwangan
Giwangan
Visit Bandara
Giwangan, Bandara
Visit St. Tugu
Giwangan, Bandara, St. Tugu
Visit Malioboro
Giwangan, Bandara, St. Tugu, Malioboro
Pop Malioboro
Giwangan, Bandara, St. Tugu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 14
Pop St. Tugu
Giwangan, Bandara
Pop Bandara
Giwangan
Visit Ambarawa
Giwangan, Ambarawa
Pop Ambarawa
Giwangan
Visit Klaten
Giwangan, Klaten
Visit Tirtonadi
Giwangan, Klaten, Tirtonadi
Visit Salatiga
Giwangan, Klaten, Tirtonadi, Salatiga
Pop Salatiga
Giwangan, Klaten, Tirtonadi
Pop Tirtonadi
Giwangan, Klaten
Pop Klaten
Giwangan
Visit Term.Concat
Giwangan, Term.Concat
Pop term. Concat
Giwangan
Pop Giwangan
-
Algoritma DFS akan menghasilkan urutan kunjungan Giwangan, Bandara, St.Tugu, Malioboro, Ambarawa,Klaten, Tirtonadi, Salatiga, terminal Concat. 2.7
Android Android merupakan sistem operasi yang dikembangkan untuk perangkat mobile berbasis Linux.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 15
2.7.1
Arsitektur Android Sistem operasi Android dibangun berdasarkan kernel Linux dan memiliki arsitektur seperti gambar berikut [5]:
Gambar 2.8 Arsitektur Android
a. Application Lapisan ini adalah lapisan aplikasi, serangkaian aplikasi akan terdapat pada perangkat mobile. Aplikasi inti yang telah terdapat pada Android termasuk kalender, kontak, SMS, dan lain sebagainya. Aplikasi-aplikasi ini ditulis dengan bahasa pemrograman Java. b. Application Framework Pengembangan aplikasi memiliki akses penuh ke Android sama dengan aplikasi inti yang telah tersedia. Pengembang dapat dengan mudah mengakses
informasi
lokasi,
mengatur
alarm,
menambahkan
pemberitahuan ke status bar dan lain sebagainya. Arsitektur aplikasi ini
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 16
dirancang untuk menyederhanakan penggunaan kembali komponen, aplikasi apa pun dapat memubikasikan kemampuan dan aplikasi lain dapat menggunakan kemampuan mereka sesuai batasan keamanan. Dasar dari aplikasi adalah seperangkat layanan dan sistem, yaitu berbagai View yang digunakan untuk membangun UI, Content Provider yang memungkinkan aplikasi berbagi data, ResourceManager menyediakan akses bukan kode sperti grafik, string, dan layout NotificationManager yang akan membuat aplikasi dapat menampilkan tanda pada status bar dan ActivityManager yang berguna mengatur daur hidup dari aplikasi. c. Libraries Satu set libraries dalam bahasa C/C++ yang digunakan oleh berbagai komponen pada sistem Android. d. Android Runtime Satu set libraries inti yang menyediakan sebagian besar fungsi yang tersedia di libraries inti dari bahasa pemrograman Java. Setiap aplikasi akan berjalan sebagai proses sendiri pada Dalvik Virtual Machine (VM). e. Linux Kernel Android bergantung pada Linux versi 2.6 untuk layanan system inti seperti keamanan, manajemen memori, manajemen proses, network stack, dan model driver. Kernel juga bertindak sebagai lapisan antara hardware dan seluruh software.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 17
2.7.2
Komponen Dasar Aplikasi Android ditulis dalam bahasa pemrograman Java. Java mengompilasi kode bersama dengan data resource dan file yang dibutuhkan oleh aplikasi dibundel ke dalam paket Android, file arsip ditandai dengan .apk. Komponen aplikasi pada Android terdiri dari 4 komponen utama, yaitu [5]: a. Activities Activities merupakan potongan kode executable yang menyajikan UI secara visual dimulai oleh pengguna maupun sistem operasi dan berjalan selama diperlukan. Activities biasanya sesuai dengan tampilan layar : masing-masing Activities menunjukkan satu layar untuk pengguna. Activities yang tidak aktif dijalankan dapat dimatikan oleh sistem operasi untuk menghemat memori. b. Service Service tidak memiliki visual UI, melainkan berjalan di latar belakang untuk waktu yang tidak terbatas. Contoh dari service adalah MP3 player yang akan terus memainkan file MP3 sesuai urutan file, walaupun pengguna menggunakan aplikasi lain. c. Broadcast Receiver Broadcast Receiver merupakan komponen yang menerima dan bereaksi untuk menyiarkan pengumuman. Banyak siaran berasal dalam kode
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 18
sistem, misalnya pengumuman bahwa zona waktu telah berubah, baterai rendah, bahwa gambar telah diambil, atau bahwa pengguna mengubah preferensi bahasa. Aplikasi juga dapat melakukan siaran misalnya untuk membiarkan aplikasi lain tahu bahwa beberapa data teah di-download ke perangkat dan tersedia sehingga dapat digunakan. d. Content Provider Content Provider diciptakan untuk berbagi data dengan Activities lain atau Service. Sebuah Content Provider menggunakan antar muka standar dalam bentuk URI untuk memenuhi permintaan data dari aplikasi lain.
2.7.3
Daur Hidup Activity Activity memiliki tiga status dasar yaitu [5] : 1.
Active atau Running Status ini ketika Activity berjalan di foreground (di bagian atas stack untuk task ini). Activity yang berkaitan aktif dengan pengguna.
2.
Pause Jika Activity telah kehilangan fokus tetapi masih dapat dilihat oleh pengguna yang berarti ada Activity lain yang berjalan di atas Activity ini, sebuah Activity yang transparan atau tidak menutupi layar penuh sehingga Activity dalam status pause dapat terlihat. Sebuah Activity dalam status pause tetap hidup, yaitu Android tetap mempertahankan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 19
semua informasi dan tetap melekat pada Windows Manager hingga akhirnya dapat dimatikan oleh sistem ketika memori sangat rendah. 3.
Stop Activity benar-benar dihentikan karena ada Activity lain yang memenuhi layar. Semua informasi dipertahankan tetapi tidak dapat dilihat oleh pengguna sehingga jendela tersembunyi dan dapat dimatikan oleh sistem ketika memori dibutuhkan.
Metode yang terdapat pada Activity : 1.
onCreate() Dipanggil ketika Activity pertama kali dibuat. Biasanya merupakan metode di mana View yang ingin ditampilkan dibuat, membuka data file, maupun menginisialisasi Activity. Saat memanggil OnCreate, kerangka Android melewati sebuah bundel objek yang mengandung state activity yang disimpan ketika Activity pertama berjalan.
2.
onStart() Dipanggil sebelum Activity terlihat pada layar. Ketika Activity dapat menjadi Activity foreground, maka akan dipanggil method OnResume() sedangkan jika tidak maka akan dipanggil method OnStop().
3.
onResume() Dipanggil setelah OnStart() apabila Activity dapat menjadi foreground. Saat ini, Activity dapat bereaksi dengan pengguna. OnResume() juga akan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 20
dipanggil ketika Activity ini tidak menjadi foreground karena ada Activity lain lalu Activity lain akhirnya selesai dan Activity kembali menjadi foreground. 4.
onPause() Dipanggil ketika Activity lain dibawa ke foreground. Pada status ini Activity tidak memiliki akses ke layar.
5.
onStop() Dipanggil ketika Activity tidak lagi terlihat karena adanya Activity lain yang dibawa ke foreground atau Activity ini dimatikan.
6.
OnDestroy() Dipanggil
terakhir
sebelum
Activity
dimatikan
ketika
Android
membutuhkan resources yang digunakan oleh Activity.
2.7.4
Daur Hidup Service Daur hidup Service hampir sama dengan Activity tetapi memiliki beberapa perbedaan untuk detailnya. [5] 1.
OnCreate() dan OnStart() Dipanggil
apabila
seseorang
klien
memanggil
Context.startService(Intent). Jika service belum berjalan maka Android akan membuatnya dan memanggil OnCreate() diikuti method OnStart().
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 21
Apabila service telah berjalan, Android hanya akan memanggil OnStart(). 2.
OnBind() Ketika klien membutuhkan koneksi ke service maka akan dipanggil Context.bind. Pemanggilan ini akan mengakibatkan pembuatan service apabila service tidak sedang berjalan tanpa memanggil OnStart().
3.
OnDestroy() Sama dengan Activity, method ini akan dipanggil ketika service akan dimatikan. Android akan mematikan service apabila telah tidak ada lagi klien yang memulai atau bind ke service ini.
2.8
Location Based Service (LBS) dan Google Maps Salah satu fitur yang mendefinisikan ponsel adalah mudah dibawa, sehingga tidak mengherankan bahwa beberapa fitur Android paling menarik adalah
layanan
yang
memungkinkan
untuk
menemukan,
mengkontekstualisasikan, dan lokasi peta secara fisik. Dengan menggunakan Google Maps, pengguna dapat membuat peta berbasis Aktivitas sebagai elemen User Interface. Pengguna memiliki akses penuh ke peta, yang memungkinkan untuk mengontrol pengaturan tampilan, mengubah tingkat zoom, dan memindahkan lokasi terpusat. Dengan menggunakan Overlay, pengguna dapat menambahkan keterangan peta dan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 22
menangani masukan pengguna untuk memberikan informasi dan fungsi dari map-contextualized. Layanan berbasis lokasi (LBS) - layanan yang memungkinkan pengguna menemukan lokasi perangkat. Termasuk teknologi seperti GPS dan teknologi Google berbasis sel lokasi. Pengguna dapat menentukan teknologi lokasisensing menggunakan eksplisit dengan nama, atau secara implisit dengan mendefinisikan seperangkat kriteria dalam hal akurasi, biaya, dan persyaratan lainnya. Peta dan layanan berbasis lokasi menggunakan garis lintang dan bujur untuk menentukan lokasi geografis, namun pengguna lebih cenderung untuk berpikir
menggunakan
alamat.
Android
menyediakan
geocoder
yang
mendukung perubahan geocoding. Menggunakan geocoder, pengguna dapat mengkonversi bolak-balik antara lintang / bujur nilai-nilai dan alamat dunia nyata. Pemetaan, geocoding, dan layanan berbasis lokasi digunakan bersamasama menyediakan menyediakan perangkat canggihuntuk menggabungkan mobilitas ponsel ke dalam aplikasi mobile pengguna. Location Based Service (LBS) merupakan istilah umum yang digunakan untuk menggambarkan berbagai teknologi yang digunakan untuk menemukan lokasi perangkat saat ini. Ada dua elemen LBS yaitu [6]: a.
Location Manager : menyediakan pengait ke Location Based Service. Fungsi dari Location Manager yaitu mendapatkan lokasi saat ini, melacak
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 23
perpindahan dan mengatur tanda kedekatan untuk mendeteksi gerakan masuk dan keluar dari area tertentu. b.
Location Providers : masing-masing mewakili teknologi lokasi-temuan yang berbeda yang digunakan untuk menentukan lokasi perangkat.
2.9
Sistem Infromasi Menurut Aji Supriyanto dalam Pengantar Teknologi Informasi (2005) mendefinisikan sistem informasi sebagai suatu sistem di dalam suatu organisasi, yang mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi, bersifat manajerial dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan. Data sebagai bahan baku informasi adalah gambaran kejadian yang berwujud karakter, angka, atau simbol tertentu yang memiliki arti. Data bagi suatu tingkat organisasi mungkin berupa informasi bagi tingkat yang lainnya. Data diolah melalui suatu model menjadi informasi, penerima kemudian menerima informasi tersebut, membuat suatu keputusan dan melakukan tindakan, yang berarti menghasilkan tindakan lain yang akan membuat sejumlah data kembali. Data yang di tangkap di anggap sebagai input, diproses kembali melalui model, dan begitu seterusnya membentuk suatu siklus.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 24
2.10 Sistem Informasi Geografis
2.10.1 Definisi Sistem Informasi Geografis Istilah geography digunakan karena SIG dibangun berdasarkan pada geografi atau spasial. Objek ini mengarah pada spesifikasi lkasi dalam suatu space. Geographic Information System (GIS) merupakan sistem komputer yang berbasis pada sistem informasi yang digunakan untuk memberikan bentuk digital dan analisis terhadap permukaan geografi bumi. Geografi adalah informasi mengenal permukaan bumi dan semua obyek yang berada diatasnya, sedangkan sistem informasi geografis(SIG) atau dalam bahasa inggris disebut Geographic Information System (GIS) adalah sistem informasi khusus yang mengelola data yang memiliki informasi spasial (bereferensi keruangan). Sistem informasi geografis adalah bentuk sistem informasi yang menyajikan informasi dalam bentuk grafis dengan menggunakan peta sebagai antar muka. SIG tersusun atas konsep beberapa lapisan (layer) dan relasi [8].
2.10.2 Manfaat Sistem Informasi Geografis Fungsi SIG adalah meningkatkan kemampuan menganalisis informasi spasial secara terpadu untuk perencanaan dan pengambilan keputusan. SIG dapat memberikan informasi kepada pengambil keputusan untuk analisis dan penerapan database keruangan [8].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 25
SIG mampu memberikan kemudahan-kemudahan yang diinginkan. Dengan SIG akan dimudahkan dalam melihat fenomena kebumian dengan perspektif yang lebih baik. SIG mampu mengakomodasi penyimpanan, pemrosesan, dan penayangan data spasial digital bahkan integrasi data yang beragam, mulai dari citra satelit, foto udara, peta bahkan data statistik. SIG juga mengakomodasi dinamika data, pemutakhiran data yang akan menjadi lebih mudah.
2.10.3 Cara Kerja Sistem Informasi Geografis SIG dapat menyajikan real world (dunia nyata) pada monitor sebagaimana lembaran peta dapat merepresentasikan dunia nyata diatas kertas. Tetapi, SIG memiliki kekuatan lebih dan fleksibilitas dari pada lembaran pada kertas. Peta merupakan representasi grafis dari dunia nyata, obyek-obyek yang dipresentasikan di atas peta disebut unsur peta atau map features ( contohnya adalah sungai, taman, kebun, jalan dan lain-lain). Karena peta mengorganisasikan unsur-unsur berdasrkan lokasi-lokasinya. SIG menyimpan semua informasi deksriptif unsur-unsurnya sebagai atribut-atribut di dalam basis data. Kemudian, SIG membentuk dan menyimpannya di dalam tabel-tabel (relasional) dengan demikian, atribut-atribut ini dapat diakses melalui lokasi-lokasi unsur-unsur peta dan sebaliknya, unsur-unsur peta juga dapat diakses melaluiatribut-atributnya [9].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB III ANALISIS DAN PERANCANGAN SISTEM 3 3.1
NALISIS DAN PERANCANGAN Analisa Sistem Sistem yang akan dikembangkan adalah sistem pencarian jalur terpendek jalur transportasi bus umum yang ada di Yogyakarta untuk bus AKDP dan AKAP. Akan terdapat 2 sistem dalam pengimplementasiannya. Sistem pertama berbasis mobile. Dalam sistem berbasis mobile ini menggunakan algoritma DFS dalam pengimplementasiannya. Algoritma DFS tepat digunakan karena pada algoritma ini dapat menampilkan beberapa alternatif jalur yang dapat dipilih. Visualisasi peta yang akan digunakan terintegrasi dengan Google Map. Jalan yang diperhitungkan minimal jalan kabupaten (jalan desa tidak diperhitungkan). Spesifikasi sistem meliputi : a.
memberikan informasi seperti biaya yang diperlukan, jalur bus yang dilalui
b.
menampilkan visualisasi jalur yang disediakan
c.
dapat diakses dimana dan kapan saja
d.
pengaksesan informasi dapat dengan cepat dilakukan
e.
aplikasi selalu dibawa oleh pengguna
Berdasarkan spesifikasi tersebut maka aplikasi berbasis mobile adalah aplikasi yang sesuai untuk menyelesaikan masalah pemilihan jalur terpendek. Sistem 26
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 27
kedua berbasis web. Sistem kedua akan mempermudah admin dalam mengelola data terminal, jalur dan trayek yang ada. Untuk penyimpanan data-data terminal yang ada di Yogyakarta, Semarang, Surakarta dan jalan-jalan yang menghubungkan terminal-terminal tersebut digunakan database My SQL, sehingga dapat dilakukan pengeditan. Sistem mobile mempunyai 2 level pengguna, yaitu pengguna sistem dan admin yang bertugas mengupdate data. Pengguna tersebut mempunyai hak untuk mendapatkan informasi jalur terpendek yang ditampilkan oleh sistem. Sedangkan untuk sistem berbasis web memiliki 1 level penguna saja, yaitu admin yang berfungsi merubah, menambah, dan menghapus data yang ada dengan lebih fleksibel.
3.2
Sumber Data Sumber data yang digunakan merupakan peta Yogyakarta, Semarang, Surakarta. Peta tersebut terintegrasi dengan Google Map. Jalur yang menghubungkan tempat-tempat dalam wilayah kota adalah minimal jalan kabupaten. Peta kota ini dapat merepresentasikan sebuah bentuk graf yang dapat disajikan berikut ini : a.
terminal merepresentasikan vertexs graf
b.
jalur merepresentasikan edges graf
c.
trayek merepresentasikan jalur pada masing-masing bus
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 28
3.3
Perhitungan DFS
Bandara
Giwangan
St. Tugu
Malioboro
Tirtonadi
Salatiga
Ambarawa
Klaten
Term. Concat
Gambar 3.1 Gambar Graf Tabel 3.1 Matrik ketetanggaan
A B C D E F G H I
A 0 1 1 1 1 0 0 0 0
B 1 0 0 0 0 1 0 0 0
C 1 0 0 0 0 0 0 0 0
D 1 0 0 0 0 0 1 0 0
E 1 0 0 0 0 0 0 0 0
F 0 1 0 0 0 0 0 1 0
G 0 0 0 1 0 0 0 0 1
H 0 0 0 0 0 1 0 0 0
I 0 0 0 0 0 0 1 0 0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 29
Keterangan : A : Giwangan B : Bandara C : Ambarawa D : Klaten E : Terminal Condong Catur F : St.Tugu G : Tirtonadi H : Malioboro I : Salatiga
Tabel 3.2 Isi Stack dalam DFS : Event
Isi Stack
Visit Giwangan
Giwangan
Visit Bandara
Giwangan, Bandara
Visit St. Tugu
Giwangan, Bandara, St. Tugu
Visit Malioboro
Giwangan, Bandara, St. Tugu, Malioboro
Pop Malioboro
Giwangan, Bandara, St. Tugu
Pop St. Tugu
Giwangan, Bandara
Pop Bandara
Giwangan
Visit Ambarawa
Giwangan, Ambarawa
Pop Ambarawa
Giwangan
Visit Klaten
Giwangan, Klaten
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 30
Visit Tirtonadi
Giwangan, Klaten, Tirtonadi
Visit Salatiga
Giwangan, Klaten, Tirtonadi, Salatiga
Pop Salatiga
Giwangan, Klaten, Tirtonadi
Pop Tirtonadi
Giwangan, Klaten
Pop Klaten
Giwangan
Visit Term.Concat
Giwangan, Term.Concat
Pop term. Concat
Giwangan
Pop Giwangan
-
Algoritma DFS akan menghasilkan urutan kunjungan Giwangan, Bandara, St.Tugu, Malioboro, Ambarawa,Klaten, Tirtonadi, Salatiga, terminal Concat
3.4
Arsitektur Sistem
3.4.1 Arsitektur Sistem berbasis mobile
Travice Mobile
internet
user / admin
Travice web server
Gambar 3.2 Arsitektur Sistem berbasis mobile
Database Server
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 31
Gambar 3.2 merupakan arsitektur system yang akan dibangun. Dalam Arsitektur tersebut user / admin menggunakan Travice untuk dapat mengakses data yang ada di web server. Dalam mengakses data yang ada di web server diperlukan koneksi internet. Web server ini berfungsi menyimpan data terminal, jalur, trayek. Data terminal terdapat di database server. User menggunakan Travice mobile untuk mencari jalur yang ada dari sutau terminal ke termnal lain. User juga akan mendapatkan visualisasi jalur saat jalur yang dicari oleh user ditampilkan oleh sistem. Admin menggunakan Travice mobile untuk mengelola data terminal.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 32
User
Database Kota, Terminal, Line
Input terminal asal, tujuan
Hitung semua kemungkinan jalur dengan Algoritma DFS
Visualisasi di Google Map
Gambar 3.3 Arsitektur Aplikasi Travice mobile untuk User
Gambar 3.3 merupakan arsitektur aplikasi Travice mobile untuk user yang akan dibangun. Dalam Arsitektur tersebut user memasukan data terminal asal dan terminal tujuan yang ingin dia capai. Sistem akan menampilkan kemungkinan-kemungkinan jalur yang ditemukan. Kemudian hasil dari
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 33
perhitungan system akan di visualisasikan berdasarkan integrasi dengan google map.
Admin
Data Terminal, yang ada
Perubahan Database
Data Terminal yang telah berubah
Gambar 3.4 Arsitektur Aplikasi Travice mobile untuk Admin
Gambar 3.4 merupakan arsitektur aplikasi Travice mobile untuk Admin yang akan dibangun. Dalam Arsitektur tersebut admin akan memasukan data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 34
kota, terminal dan line yang ada. Saat ada perubahan yang dilakukan oleh admin maka data yang baru akan disimpan di database.
3.4.2 Arsitektur Sistem Travice Web Server
Travice web Server
internet
Admin
Database server
Gambar 3.5 Arsitektur Sistem Travice Web Server
Gambar 3.5 merupakan arsitektur system yang akan dibangun. Dalam Arsitektur tersebut admin menggunakan Travice untuk dapat mengakses data yang ada di web server. Dalam mengakses data yang ada di web server diperlukan koneksi internet. Web server ini berfungsi menyimpan data terminal, jalur dan trayek. Data terminal terdapat di database server.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 35
Admin Data Terminal, Jalur, Trayek yang ada
Perubahan Database
Data Terminal, Jalur, Trayek yang telah berubah
Gambar 3.6 Arsitektur Aplikasi Travice Web Server untuk Admin
Gambar 3.6 merupakan arsitektur aplikasi Travice web server untuk Admin yang akan dibangun. Dalam Arsitektur tersebut admin akan memasukan data terminal, jalur, dan trayek yang ada. Saat ada perubahan yang dilakukan oleh admin maka data yang baru akan disimpan di database.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 36
3.5
Gambaran Umum Sistem Pada subbab ini akan dijelaskan gambaran dari sistem yang akan dibangun, berupa diagram use case, narasi use case, diagram aktifitas, diagram kelas, dan desain basis data.
3.5.1
Use Case
3.5.1.1.Use Case Travice Mobile
Login depends on
Pencarian Jalur Kelola Data User Admin Logout
Gambar 3.7 Use Case Diagram
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 37
Kelola Data
tambah data terminal Depends on
ubah data terminal
Depends on
hapus data terminal
Gambar 3.8 Package Kelola Data untuk Admin Gambar 3.7 merupakan diagram use case dari User dan Admin. User memiliki hal akses untuk mencari informasi mengenai jalur dari suatu terminal ke terminal lain. Admin memiliki hak akses untuk menambah, mengubah, dan menghapus data terminal. 3.5.1.1 Use Case Travice Web Server
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 38
Login depends on
Kelola Data
Admin Logout
Gambar 3.9 Use Case Diagram Kelola Data
tambah data terminal
tambah data trayek
Depends on
Depends on
ubah data terminal
ubah data trayek
Depends on
Depends on
hapus data terminal
hapus data trayek
Depends on
tambah data jalur
Depends on
ubah data jalur
Depends on
hapus data jalur
Gambar 3.10 Package Kelola Data untuk Admin
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 39
Gambar 3.10 merupakan diagram use case Admin. Admin memiliki hak akses untuk menambah, mengubah, dan menghapus data terminal,jalur mapupun trayek yang ada. 3.5.2 Narasi Use Case Setiap use case pada diagram use case gambar 3.7(untuk sistem berbasis mobile) dan 3.9(untuk sistem berbasis Web), akan dirinci dalam sebuah narasi use case yang akan mendeskripsikan secara tertulis aktivitas yang ada pada use case, adapun skenario use case dari gambar diagram use case gambar 3.7 dan 3.9 terdapat pada lampiran 1 halaman 81. 3.5.3. Diagram Aktifitas Merupakan diagram yang menjelaskan aktivitas antara user atau admin dengan sistem. Secara lebih rinci tahap activity diagram dapat dilihat pada lampiran 2 halaman 95. 3.5.4. Model Analisis Merupakan suatu proses untuk menterjemahkan skenario use case menjadi kelas analisis. Dalam kelas analisis terdapat tiga jenis, yaitu form/boundary, controller, dan entity. 1. Relasi use case
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 40
Analisis kelas dilakukan pada setiap use case. Setiap use case dicari kelas analisisnya sehingga dapat menentukan kebutuhan kelas. Hasil analisis kelas dapat dilihat pada lampiran 3 halaman 110. 3.5.5
Diagram Kelas Gambar 3.11 dan 3.12 adalah diagram kelas dari sistem yang akan dibangun. Antara masing – masing kelas memiliki hubungan asosiasi dengan kelas yang lain. Relasi antar kelas ditunjukan dalam Gambar 3.11 maupun 3.12. Gambar 3.11 merupakan diagram kelas Travice Web Server. Sedangkan Gambar 3.12 merupakan diagram kelas Travice mobile.
<<Entity>> Admin
<
> Form_Login
<> Form_Edit_Termin al
<> Form_Terminal
<> Edit_Jalur_control er
<> Simpan_Terminal _control
1
*
<> Hapus_Terminal_ controler
1 *
*
1
<> Form_Jalur
<> Form_Edit_Jalur
* 1
<> Simpan_Jalur_con trol
<> Edit_Jalur_control er
*
<> Hapus_Jalur_cont roler
<> Simpan_Terminal _control
<> Edit_Jalur_control er 1
* 1
<<Entity>> Terminal
<> Form_Edit_Trayek
<> Form_Trayek
1
*
1*
1 <<Entity>> Trayek
* 1 <<Entity>> Jalur
Gambar 3.11 Diagram kelas Travice Web Server
<> Hapus_Terminal_ controler
*
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 41
Kelas-kelas Android <<Entity>> DFS
<<Entity>> ClientToServer
<<Entity>> Graph
<<Entity>> Edge 1
1*
*
*
1
1
<> Main_Ku
*1
<<Entity>> Rute
<<Entity>> * Vertex
<<Entity>> Stack
1 <> Menu_Utama
<> PhpLogin
Kelas- kelas PHP
* <> User <> Form_admin
<<Entity>> Sorting <> Tambah_terminal <> MapActivity
<> MapOverlay
1
<> Logindb <> AksesServerActivit y
<> Ubah_terminal
<> servis <<Entityr>> terminal
Gambar 3.12 Diagram kelas Travice mobile 3.5.6
Desain Basis Data Perancangan diagram E-R menggambarkan relasi antar entitas (entity) yang digunakan untuk sistem.
*
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 42
Gambar 3.13 ERD Sistem 3.5.7
Perancangan Basis Data Dari tabel – tabel yang terbentuk selanjutnya penulis akan merancang struktur
data dari masing – masing tabel : 1.
Tabel Terminal Tabel 3.3 Struktur tabel terminal
Nama Field
2.
Tipe
Ukuran
id_terminal(PK) int
11
nama_terminal
varchar
50
lattitude
Double
-
longtitude
Double
-
kota
int
Struktur tabel Jalur
11
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 43
Tabel 3.4 Struktur tabel Jalur Nama Field
Tipe
Ukuran
id_jalur (PK)
int
11
terminal_awal
int
11
terminal_akir
int
11
double
-
jarak
3. Struktur tabel PO_Bus Tabel 3.5 Struktur tabel PO_Bus Nama Field
Tipe
Ukuran
id_PO (PK)
int
11
Nama_PO
varchar
100
4. Struktur tabel Trayek Tabel 3.6 Struktur tabel Trayek Nama Field
Tipe
Ukuran
id_trayek (PK)
int
11
Id_jalur
int
11
Id_PO
int
11
varchar
100
Nama_trayek
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 44
Harga_km Jenis
Double Enum(‘1’,’2’ ,’3’,’4’)
3.6
Jam_brkt
Varchar
50
Jam_tiba
Varchar
50
Model Desain Pada desain antarmuka sistem ini akan ditampilkan desain dari tiap form yang akan dibentuk. Desain antarmuka akan dijelaskan lebih lengkap di lampiran 4 halaman 135. Sedangkan antarmuka implementasi usecase lampiran 5 hal 143.
3.7
Model Pengujian Pada bagian pengujian akan memperlihatkan jalur yang terdapat dalam suatun trayek. Jalur – jalur yang ada akan meberikan informasi mengenai rute yang dapat di pilih oleh user dalam berkendara dengan mempertimbangkan biaya, kendaraan, dan jumlah perhentian (terminal – terminal yang dilewati).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB IV IMPLEMENTASI DAN ANALISIS SISTEM
4.1
Tahap Implementasi Penelitian ini telah di implemetasikan untuk menjadi sebuah aplikasi dengan tahap-tahap seperti berikut :
4.1.1 Spesifikasi Perangkat Keras dan Perangkat Lunak Perangkat keras yang dipakai untuk membangun sistem adalah sebagai berikut: Processor
: Centrino 2GHz
Memori
: 3GB
Hard Disk
: 250 GB
Perangkat lunak yang dipakai untuk membangun sistem adalah sebagai berikut: Editor program
: Eclipse Helios dan Netbeans 6.5
DBMS
: MySql 5.0
4.1.2 Implementasi Diagram Kelas Program dibangun dengan berbasis orientasi objek, sehingga dalam implementasinya dibutuhkan kelas-kelas untuk mendefinisikan objek-objek
45
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 46
yang akan dipakai. Adapun kelas-kelas yang telah terbentuk akan dijelaskan di lampiran 6 halaman 158.
4.2
Pengujian Tahap akhir dari penelitian ini adalah pengujian sistem. Sistem ini dibangun memanfaatkan Eclipse maupun Netbeans 6.5. Sistem ini dapat diakses secara langsung apabila terdapat koneksi internet. Analisis sistem akan dibagi ke dalam beberapa bagian, yaitu penyelesaian rumusan masalah, pengukuran kinerja sistem, kelebihan, serta kekurangan sistem yang telah dibangun. Pengujian ini berdasar pada jumlah terminal yang ada, jumlah jalur, dan jumlah PO. Jumlah terminal yang diperhitungkan pada skripsi ini adalah 11 terminal. Jumlah jalur yang diperhitungkan pada skripsi ini adalah 33 jalur. Jumlah PO bus yang diperhitungakan pada skripsi ini adalah 12.
4.2.1 Penyelesaian Rumusan Masalah Gambaran graph yang terbentuk :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 47
Terminal Penggung (Klaten)
Terminal Prambanan Antar Jaya, Langsung Jaya 40KM (Rp. 4800)
Trans Jogja (Rp. 3000 tiap kali naik)
Bandara Adi Sucipto
Trans Jogja (Rp. 3000 tiap kali naik)
Antar Jaya, Langsung Jaya 25KM (Rp.3000)
Terminal Tirtonadi (SOLO) Patas(EKA, MIRA) (Rp. 12000)
Sumber Kencono 52KM AKAP (Rp. 6240)
Trans Jogja Terminal Tingkir (SALATIGA) Trans Jogja Malioboro 3A (Rp. 3000 tiap kali naik)
Trans3AJogja (Rp. 300010KM tiap kali naik)
Terminal Condong-Catur
Trans Jogja (Rp. 3000 tiap kali naik)
Sumber Kencono 57KM AKAP (Rp 6840)
Terminal Giwangan
Patas(Nusantara, Ramayana (Rp. 35.000) Trans Jogja (Rp. 3000 tiap kali naik)
Trans Jogja (Rp. 3000 tiap kali naik)
Nusantara, Ramayana 62KM (Rp.7440)
Terminal Terboyo (SEMARANG)
Nusantara, Ramayana 76KM (Rp. 9120)
Terminal Tidar (Magelang) Trans Jogja 2A (Rp. 3000 tiap kali naik)
Terminal Jombor
Pada bagian ini akan diambil 3 contoh kasus yaitu dari Malioboro menuju Terminal Giwangan (AKDP), Terminal Giwangan menuju Tirtonadi(AKAP), dan Malioboro menuju Terminal Tirtonadi(AKDP dilanjutkan AKAP).
PATAS(Safari, Eksekutif Rajawali Rp. 20000)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 48
Pada graph yang terbentuk terdapat beberapa asumsi dasar tentang penentuan harga. Untuk harga bus AKAP kelas Ekonomi per km dihitung sebesar Rp.120 (menggunakan harga rata-rata dari pemerintah yaitu batas atas Rp.139 dan batas bawah Rp.86). Untuk harga Trans Jogja sekali menggunakan Trans biayanya flat Rp.3000. Untuk bus Patas tergantung dari PO Bus tersebut, tapi pada skripsi ini menggunakan harga rata-rata dari tiap-tiap PO. Untuk penghitungan biaya yang diperlukan adalah merupakan hasil dari jarak dikalikan dengan harga per/Km(untuk AKAP Ekonomi). Untuk Trans tiap kali naik sebesar 3000(jauh dekat sama saja). Untuk AKAP Patas dihitung berdasar terminal ke terminal. Dalam sistem menggunakan kode jenis yang bertipe enum untuk kode trans 2, AKAP ekonomi 1, AKAP Patas 4. Kode ini digunkan untuk penghitungan biaya total. Daftar Terminal yang ada : id 1 2 3 4 6 17 18 19 22 23 24
nama_terminal Jombor Terminal Giwangan Terminal Condong Catur Shelter Prambanan Malioboro Terminal Tirtonadi Terminal Terboyo Terminal Tidar Terminal Tingkir Bandara Adi Sucipto Terminal Penggung
nama_kota Yogyakarta Yogyakarta Yogyakarta Yogyakarta Yogyakarta Solo Semarang Magelang Salatiga Yogyakarta Klaten
longitude 110,36 110,39
latitude -7,74 -7,83
110,39 110,48 110,36 110,82 110,39 110,21 110,5 110,42 110,66
-7,73 -7,75 -7,79 -7,55 -6,95 -7,43 -7,31 -7,79 -7,62
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 49
Daftar Jalur yang ada : id_jalur 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
jarak 11 11 9 9 10 12 12 10 10 6 6 7 7 17 40 40 25 25 109 109 65 65 138 138 62 62 76 76 57 57 52 52 10
terminal_awal Shelter Prambanan Bandara Adi Sucipto Bandara Adi Sucipto Malioboro Bandara Adi Sucipto Bandara Adi Sucipto Terminal Condong Catur Terminal Condong Catur Malioboro Jombor Terminal Condong Catur Jombor Malioboro Terminal Giwangan Terminal Giwangan Terminal Penggung Terminal Penggung Terminal Tirtonadi Terminal Tirtonadi Terminal Terboyo Terminal Giwangan Terminal Tirtonadi Terminal Giwangan Terminal Terboyo Terminal Giwangan Terminal Tidar Terminal Terboyo Terminal Tidar Terminal Terboyo Terminal Tingkir Terminal Tingkir Terminal Tirtonadi Terminal Giwangan
terminal_akir Bandara Adi Sucipto Shelter Prambanan Malioboro Bandara Adi Sucipto Terminal Giwangan Terminal Condong Catur Bandara Adi Sucipto Malioboro Terminal Condong Catur Terminal Condong Catur Jombor Malioboro Terminal Giwangan Terminal Condong Catur Terminal Penggung Terminal Giwangan Terminal Tirtonadi Terminal Penggung Terminal Terboyo Terminal Tirtonadi Terminal Tirtonadi Terminal Giwangan Terminal Terboyo Terminal Giwangan Terminal Tidar Terminal Giwangan Terminal Tidar Terminal Terboyo Terminal Tingkir Terminal Terboyo Terminal Tirtonadi Terminal Tingkir Bandara Adi Sucipto
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Daftar trayek yang ada : id_trayek 6 7 9 10 11 12 13 14
terminal_awal Bandara Adi Sucipto Shelter Prambanan Bandara Adi Sucipto Malioboro Terminal Condong Catur Bandara Adi Sucipto Terminal Condong Catur
15
Malioboro Terminal Condong Catur
16 17 18 19
Jombor Bandara Adi Sucipto Terminal Giwangan Malioboro
20 21 59 61 62 63 65 66 67 69 70
Terminal Giwangan Jombor Terminal Giwangan Terminal Giwangan Terminal Penggung Terminal Penggung Terminal Penggung Terminal Tirtonadi Terminal Tirtonadi Terminal Penggung Terminal Giwangan
terminal_akir Shelter Prambanan Bandara Adi Sucipto Malioboro Bandara Adi Sucipto
nama_PO Trans Trans Trans Trans
id_jalur 70 69 71 72
id_PO 4 4 4 4
nama_trayek Trans Trans Trans Trans
harga_km 3000 3000 3000 3000
jenis 2 2 2 2
Bandara Adi Sucipto Terminal Condong Catur
Trans
75
4
Trans
3000
2
Trans
74
4
Trans
3000
2
Malioboro Terminal Condong Catur
Trans
76
4
Trans
3000
2
Trans
77
4
Trans
3000
2
Jombor Terminal Condong Catur Terminal Giwangan Bandara Adi Sucipto Terminal Giwangan Terminal Condong Catur Malioboro Terminal Penggung Terminal Penggung Terminal Giwangan Terminal Giwangan Terminal Tirtonadi Terminal Penggung Terminal Penggung Terminal Tirtonadi Terminal Tirtonadi
Trans
79
4
Trans
3000
2
Trans Trans Trans Trans
78 73 101 81
4 4 4 4
Trans Trans Trans Trans
3000 3000 3000 3000
2 2 2 2
Trans Trans Antar Jaya Langsung Jaya Langsung Jaya Antar Jaya Antar Jaya Antar Jaya Langsung Jaya Langsung Jaya Eka (Patas)
82 80 83 83 84 84 85 86 86 85 89
4 4 11 12 12 11 11 11 12 12 1
Trans Trans AKAP AKAP AKAP AKAP AKAP AKAP AKAP AKAP AKAP
3000 3000 120 120 120 120 120 120 120 120 12000
2 2 1 1 1 1 1 1 1 1 4
50
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 51
71 72 73
Terminal Giwangan Terminal Tirtonadi Terminal Tirtonadi
Terminal Tirtonadi Terminal Giwangan Terminal Giwangan
74
Terminal Tirtonadi
Terminal Tingkir
75
Terminal Tingkir
Terminal Tirtonadi
76
Terminal Tingkir
Terminal Terboyo
77 78 79
Terminal Terboyo Terminal Tirtonadi Terminal Terboyo
Terminal Tingkir Terminal Terboyo Terminal Tirtonadi
80
Terminal Tirtonadi
Terminal Terboyo
81
Terminal Terboyo
Terminal Tirtonadi
82
Terminal Giwangan
Terminal Terboyo
83
Terminal Terboyo
Terminal Giwangan
84
Terminal Terboyo
Terminal Giwangan
85 86 87 88 89 90 91 92 93
Terminal Giwangan Terminal Terboyo Terminal Tidar Terminal Terboyo Terminal Tidar Terminal Giwangan Terminal Tidar Terminal Giwangan Terminal Tidar
Terminal Terboyo Terminal Tidar Terminal Terboyo Terminal Tidar Terminal Terboyo Terminal Tidar Terminal Giwangan Terminal Tidar Terminal Giwangan
Mira (Patas) Eka (Patas) Mira (Patas) Sumber Kencono Sumber Kencono Sumber Kencono Sumber Kencono Safari (Patas) Safari (Patas) Rajawali (Patas) Rajawali (Patas) Nusantara (Patas) Nusantara (Patas) Ramayana (Patas) Ramayana (Patas) Nusantara Nusantara Ramayana Ramayana Nusantara Nusantara Ramayana Ramayana
89 90 90
5 1 5
AKAP AKAP AKAP
12000 12000 12000
4 4 4
100
13
AKAP
120
1
99
13
AKAP
120
1
98
13
AKAP
120
1
97 87 88
13 9 9
AKAP AKAP AKAP
120 20000 20000
1 4 4
87
10
AKAP
20000
4
88
10
AKAP
20000
4
91
8
AKAP
35000
4
92
8
AKAP
35000
4
92
2
AKAP
35000
4
91 95 96 95 96 93 94 93 94
2 7 7 6 6 7 7 6 6
AKAP AKAP AKAP AKAP AKAP AKAP AKAP AKAP AKAP
35000 120 120 120 120 120 120 120 120
4 1 1 1 1 1 1 1 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 52
Hasil pencocokan perhitungan sistem maupun perhitungan manual sebagai berikut :
No.
Terminal Awal –
Hasil Sistem
Hasil Perhitungan manual
Terminal Tujuan 1.
Sesuai/ Tidak Sesuai
Malioboro –
1. Malioboro - Terminal Giwangan dengan
Penelusuran dilakukan
Rute yang
Teminal Giwangan
menggunakan Trans (berangkat 08.00 – tiba
menggunakn teknik preorder :
ditemukan
09.00 atau berangkat 08.15 – tiba 09.15)
sehingga diperoleh kemungkinan –
sesuai.
seharga 3000 dengan total harga terendah
kemungkinan sebagai berikut :
Rekomendasi
3000
1. Malioboro – Bandara Adi
pada sistem
2. Malioboro – Bandara Adisucipto – Terminal Giwangan dengan menggunakan
Sucipto – Terminal Giwangan 2. Malioboro - Terminal Condong
berdasar jumlah
Trans(berangkat 08.00 – tiba 09.00 atau
Catur – Bandara Adi Sucipto –
terminal yang
berangkat 08.15 –tiba 09.15) seharga 3000
Terminal Giwangan
dikunjungi.
dengan total harga terendah 3000 3. Malioboro – Terminal Condong Catur –
3. Malioboro – Terminal Giwangan
Semakin sedikit
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 53
Bandara Adisucipto –Terminal Giwangan
Penelusuran secara preorder
terminal yang
dengan menggunakan Trans(Berangkat 07.30
berdasarkan pada index node,
dikunjungi,
– tiba 09.00 atau berangkat 07.45 – tiba
dalam skripsi ini id jalur. Terdapat
semakin
09.15) seharga 3000 dengan total harga
perbedaan urutan antara hasil
berada pada
terendah 3000
perhitungan manual. Untuk
puncak
perhitungan manual rute pertama
rekomendasi.
yang ditemukan adalah urutan pertama. Sedangkan pada sistem urutan pertama rekomendasi berdasar pada jumlah terminal yang dikunjungi. Semakin sedikit terminal yang dilalui semakin rute tersebut berada pada puncak rekomendasi. 2.
Terminal
1. Terminal Giwangan – Terminal Terboyo
Penelusuran dilakukan
Rute yang
Giwangan –
dengan menggunakan Nusantara (Patas)
menggunakn teknik preorder :
ditemukan
Terminal Terboyo
(Berangkat 09.15 – tiba 12.15 atau
sehingga diperoleh kemungkinan –
sesuai.
Berangkat 09.45 – tiba 12.45) seharga
kemungkinan sebagai berikut :
Rekomendasi
35000 atau Ramayana (Patas) (Berangkat
1. Terminal Giwangan –
pada sistem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 54
09.15 – tiba 12.15 atau Berangkat 09.45 –
Terminal Penggung –
berdasar
tiba 12.45) seharga 35000 dengan total
Terminal Tirtonadi dengan
jumlah
harga terendah.
menggunakan Antar Jaya
terminal yang
2. Terminal Giwangan – Terminal Tirtonadi
seharga 7800 atau Langsung dikunjungi.
dengan menggunakan Eka(Patas)
Jaya seharga 7800 dan harus Semakin
(Berangkat 09.15 –Tiba 10.45 atau
berganti PO diterminal ini
sedikit
Berangkat 09.45 – Tiba 11.15) seharga
untuk menuju – Terminal
terminal yang
12000 atau Mira(Patas) (Berangkat 09.15
Terboyo dengan
dikunjungi,
–Tiba 10.45 atau Berangkat 09.45 – Tiba
menggunakan Safari(Patas)
semakin
11.15) seharga 12000 dan harus berganti
seharga 20000 atau
berada pada
PO diterminal ini untuk menuju -
Rajawali(Patas) seharga
puncak
Terminal Terboyo dengan menggunakan
20000 dengan harga total
rekomendasi.
Safari(Patas) (Berangkat 10.45 – Tiba
terendah adalah 27800
12.15 atau Berangkat 11.15 – Tiba
2. Terminal Giwangan –
12.45)seharga 20000 atau
Terminal Penggung –
Rajawali(Patas)(Berangkat 10.45 – Tiba
Terminal Tirtonadi dengan
12.15 atau Berangkat 11.15 – Tiba 12.45)
menggunakan Antar Jaya
seharga 20000 dengan total harga
seharga 7800 atau Langsung
terendah 32000
Jaya seharga 7800 dan harus
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 55
3. Terminal Giwangan – Terminal Tidar –
berganti PO diterminal ini
Terminal Terboyo dengan menggunakan
untuk menuju – Terminal
Nusantara (Berangkat 09.15 – Tiba 12.15
Tingkir - Terminal Terboyo
atau Berangkat 09.45 – Tiba 12.45)
dengan menggunakan
seharga 16560 atau Ramayana
Smber Kencono seharga
(Berangkat 09.15 – Tiba 12.15 atau
13080 dengan total harga
Berangkat 09.45 – Tiba 12.45) seharga
terendah 20880
16560 dengan total harga 16560 4. Terminal Giwangan – Terminal Tirtonadi
3. Terminal Giwangan – Terminal Tirtonadi dengan
dengan menggunakan Eka(Patas)
menggunakan Eka(Patas)
(Berangkat 09.15 – tiba 10.45 atau
seharga 12000 atau
Berangkat 09.45 – tiba11.15) seharga
Mira(Patas) seharga 12000
12000 atau Mira(Patas) (Berangkat 09.15
dan harus berganti PO
– tiba 10.45 atau Berangkat 09.45 –
diterminal ini untuk menuju
tiba11.15) seharga 12000 dan berganti
- Terminal Terboyo dengan
PO diterminal ini untuk menuju –
menggunakan Safari(Patas)
Terminal Tingkir – Terminal Terboyo
seharga 20000 atau
dengan menggunakan Sumber Kencono
Rajawali(Patas) seharga
(Berangkat 10.45 – tiba 12.15 atau
20000 dengan total harga
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 56
Berangkat 11.15 – tiba 12.45) seharga 13080 dengan total harga terendah 25080 5. Terminal Giwangan – Terminal
terendah 32000 4. Terminal Giwangan – Terminal Tirtonadi dengan
Penggung – Terminal Tirtonadi dengan
menggunakan Eka(Patas)
menggunakan Antar Jaya(Berangkat
seharga 12000 atau
09.15 – Tiba 10.45 atau Berangkat 09.45
Mira(Patas) seharga 12000
–Tiba 11.15) seharga 7800 atau
dan berganti PO diterminal
Langsung Jaya(Berangkat 09.15 – Tiba
ini untuk menuju –
10.45 atau Berangkat 09.45 –Tiba 11.15)
Terminal Tingkir –
seharga 7800 dan harus berganti PO
Terminal Terboyo dengan
diterminal ini untuk menuju – Terminal
menggunakan Sumber
Terboyo dengan menggunakan
Kencono seharga 13080
Safari(Patas) (Berangkat 10.45 – Tiba
dengan total harga terendah
12.15 atau berangkat 11.15 – Tiba 12.45)
25080
seharga 20000 atau Rajawali(Patas)
5. Terminal Giwangan –
(Berangkat 10.45 – Tiba 12.15 atau
Terminal Terboyo dengan
berangkat 11.15 – Tiba 12.45) seharga
menggunakan Nusantara
20000 dengan harga total terendah adalah
(Patas) seharga 35000 atau
27800
Ramayana (Patas) seharga
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 57
6. Terminal Giwangan – Terminal Penggung – Terminal Tirtonadi dengan menggunakan Antar Jaya(Berangkat
35000 dengan total harga terendah. 6. Terminal Giwangan –
09.15 – Tiba 10.45 atau Berangkat 09.45
Terminal Tidar – Terminal
–Tiba 11.15) seharga 7800 atau
Terboyo dengan
Langsung Jaya (Berangkat 09.15 – Tiba
menggunakan Nusantara
10.45 atau Berangkat 09.45 –Tiba 11.15)
seharga 16560 atau
seharga 7800 dan harus berganti PO
Ramayana seharga 16560
diterminal ini untuk menuju – Terminal
dengan total harga 16560
Tingkir - Terminal Terboyo dengan
Penelusuran secara preorder
menggunakan Smber Kencono(Berangkat
berdasarkan pada index node,
10.45 – Tiba 12.15 atau berangkat 11.15
dalam skripsi ini id jalur.
– Tiba 12.45) seharga 13080 dengan
Terdapat perbedaan urutan
total harga terendah 20880
antara hasil perhitungan manual. Perbedaan tersebut dikarenakan untuk penyusunan rekomendasinya berdasar jumlah terminal yang dikunjungi. Semakin sedikit
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 58
terminal yang dikunjungi maka sistem akan menampilkannya lebih dulu. 3.
Malioboro – Terminal Terboyo
1. Malioboro - Terminal Giwangan dengan
Penelusuran dilakukan
Rute yang
menggunakan Trans (Berangkat 08.00 –
menggunakn teknik preorder :
ditemukan
tiba 09.00 atau Berangkat 08.15 – tiba
sehingga diperoleh kemungkinan –
sesuai.
09.15) seharga 3000 dan harus berganti
kemungkinan sebagai berikut :
Rekomendasi
PO diterminal ini untuk menuju –
1. Malioboro - Terminal
pada sistem
Terminal Terboyo dengan menggunakan
Giwangan dengan
Nusantara(Patas) (Berangkat 09.15 –
menggunakan Trans seharga jumlah
Tiba 12.15 atau berangkat 09.45 – tiba
3000 dan harus berganti PO
terminal yang
12.45) seharga 35000 atau
diterminal ini untuk menuju
dikunjungi.
Ramayana(Patas) (Berangkat 09.15 –
– Terminal Penggung –
Semakin
Tiba 12.15 atau berangkat 09.45 – tiba
Terminal Tirtonadi dengan
sedikit
12.45) seharga 35000 dengan total harga
menggunakan Antar Jaya
terminal yang
terendah 38000
seharga 7800 atau Langsung dikunjungi,
2. Malioboro - Terminal Giwangan dengan
berdasar
Jaya seharga 7800 dan harus semakin
menggunakan Trans(Berangkat 08.00 –
berganti PO diterminal ini
berada pada
tiba 09.00 atau bernagkat 08.15 – tiba
untuk menuju– Terminal
puncak
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 59
09.15) seharga 3000 dan harus berganti
Tingkir - Terminal Terboyo
PO diterminal ini untuk menuju –
dengan menggunakan
Terminal Tirtonadi dengan Eka
Sumber Kencono seharga
(Patas)(Berangkat 09.15 – tiba 10.45 atau
13080 dengan total terndah
Berangkat 09.45 – Tiba 11.15) seharga
23880.
12000 atau Mira(Patas) (Berangkat 09.15
2. Malioboro – Bandara
– tiba 10.45 atau Berangkat 09.45 – Tiba
Adisucipto - Terminal
11.15) seharga 12000 harus berganti PO
Giwangan dengan
diterminal ini untuk menuju – Terminal
menggunakan Trans seharga
Terboyo menggunakan Safari(Patas)
3000 dan harus berganti PO
(Berangkat 10.45 – tiba 12.15 atau
diterminal ini untuk menuju
Berangkat 11.15 – tiba 12.45) seharga
– Terminal Penggung –
20000 atau Rajawali(Patas) (Berangkat
Terminal Tirtonadi dengan
10.45 – tiba 12.15 atau Berangkat 11.15 –
menggunakan Antar Jaya
tiba 12.45) seharga 20000 dengan total
7800 atau Langsung Jaya
harga terendah 35000
seharga 7800 dan harus
3. Malioboro – Bandara Adisucipto -
berganti PO diterminal ini
Terminal Giwangan dengan
untuk menuju – Terminal
menggunakan Trans (Berangkat 08.00 –
Terboyo dengan
rekomendasi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 60
tiba 09.00 atau Berangkat 08.15 – tiba
menggunakan Safari(Patas)
09.15) seharga 3000 dan harus berganti
seharga 20000 atau
PO diterminal ini untuk menuju –
Rajawali(Patas) seharga
Terminal Terboyo dengan menggunakan
20000 dengan total harga
Nusantara (Patas)(Berangkat 09.15 –
terendah adalah 30800
Tiba 12.15 atau Berangkat 09.45 – tiba
3. Malioboro - Terminal
12.45) seharga 35000 atau Ramayana
Giwangan – dengan
(Patas)(Berangkat 09.15 – Tiba 12.15
menggunakan Trans seharga
atau Berangkat 09.45 – tiba 12.45)
3000 dan harus berganti PO
seharga 35000 dengan total harga
diterminal ini untuk menuju
terendah 38000
Terminal Tirtonadi dengan
4. Malioboro - Terminal Giwangan dengan
menggunakan Eka(Patas)
menggunakan Trans(Berangkat 08.00 –
seharga 12000 atau
tiba 09.00 atau berangkat 08.15 – tiba
Mira(Patas) seharga 12000
09.15) seharga 3000 dan harus berganti
dan harus berganti PO di
PO diterminal ini untuk menuju –
terminal ini untuk menuju
Terminal Tidar – Terminal Terboyo
Terminal Tingkir –
dengan menggunakan
Terminal Terboyo dengan
Nusantara(Berangkat 09.15 – Tiba 12.15
menggunakan Sumber
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 61
atau berangkat 09.45 –tiba 12.45)
Kencono seharga 13080
seharga 16560 atau Ramayana(Berangkat
dengan total harga terendah
09.15 – Tiba 12.15 atau berangkat 09.45
28080
–tiba 12.45) seharga 16560 dengan total harga terendah 19560 5. Malioboro – Bandara Adisucipto -
4. Malioboro – Terminal Condong catur – Bandara Adisucipto - Terminal
Terminal Giwangan menggunakan Trans
Giwangan dengan
(Berangkat 08.00 – tiba 09.00 atau
menggunakan Trans seharga
berangkat 08.15 – Tiba 09.15) seharga
3000 dan harus berganti PO
3000 dan harus berganti PO diterminal
diterminal ini untuk menuju
ini untuk menuju – Terminal Tidar –
– Terminal Tirtonadi
Terminal Terboyo dengan menggunakan
dengan menggunakan
Nusantara (Berangkat 09.15 – tiba tiba
Eka(Patas) seharga 12000
12.15 atau 09.45 – tiba 12.45) seharga
atau Mira(Patas) seharga
16560 atau Ramayana(Berangkat 09.15 –
12000 dan harus berganti
tiba tiba 12.15 atau 09.45 – tiba 12.45)
PO diterminal ini untuk
seharga 16560 dengan total harga 19560
menuju – Terminal
6. Malioboro – Terminal Condong catur – Bandara Adisucipto - Terminal
Terboyo dengan menggunakan Safari(Patas)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 62
Giwangan dengan menggunakan Trans
seharga 20000 atau
(Berangkat 07.30 – tiba 09.00 atau
Rajawali(Patas) 20000
berangkat 07.45 – tiba 09.15) seharga
dengan total harga terendah
3000 dan harus berganti PO diterminal
adalah 35000
ini untuk menuju – Terminal Terboyo
5. Malioboro - Terminal
dengan menggunakan Nusantara(Patas)
Giwangan dengan
(Berangkat 09.15 – tiba tiba 12.15 atau
menggunaka Trans seharga
09.45 – tiba 12.45) seharga 35000 atau
3000 dan harus berganti PO
Ramayana (Patas) (Berangkat 09.15 –
diterminal ini untuk menuju
tiba tiba 12.15 atau 09.45 – tiba 12.45)
– Terminal Penggung –
seharga 35000 dengan total harga
Terminal Tirtonadi dengan
terendah adalah 38000
menggunakan Antar Jaya
7. Malioboro - Terminal Giwangan dengan
seharga 7800 atau Langsung
menggunaka Trans (Berangkat 08.00 –
Jaya seharga 7800 dan harus
tiba 09.00 atau berangkat 08.15 – tiba
beganti PO diterminal ini
09.15) seharga 3000 dan harus berganti
untuk menuju – Terminal
PO diterminal ini untuk menuju –
Terboyo dengan
Terminal Penggung – Terminal Tirtonadi
menggunakan Safari(Patas)
dengan menggunakan Antar Jaya
seharga 20000 atau
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 63
(Berangkat 09.15 – tiba 10.45 atau
Rajawali(Patas) seharga
berangkat 09.45 – tiba 11.15) seharga
20000 dengan total harga
7800 atau Langsung Jaya (Berangkat
30800
09.15 – tiba 10.45 atau berangkat 09.45 –
6. Malioboro – Bandara
tiba 11.15) seharga 7800 dan harus
Adisucipto - Terminal
beganti PO diterminal ini untuk menuju –
Giwangan dengan
Terminal Terboyo dengan menggunakan
menggunakan Trans seharga
Safari(Patas) (Berangkat 10.45 – tiba
3000 dan harus berganti PO
12.15 atau Berangkat 11.15 – tiba 12.45)
diterminal ini untuk menuju
seharga 20000 atau Rajawali(Patas)
– Terminal Tirtonadi
(Berangkat 10.45 – tiba 12.15 atau
dengan menggunakan
Berangkat 11.15 – tiba 12.45) seharga
Eka(Patas) seharga 12000
20000 dengan total harga 30800
atau Mira(Patas) seharga
8. Malioboro - Terminal Giwangan –
12000 dan harus berganti
dengan menggunakan Trans(Berangkat
PO diterminal ini untuk
08.00 – Tiba 09.00 atau Berangkat 08.15
menuju – Terminal Terboyo
– tiba 09.15) seharga 3000 dan harus
dengan menggunakan
berganti PO diterminal ini untuk menuju
Safari(Patas) seharga 20000
Terminal Tirtonadi dengan menggunakan
atau Rajawali(Patas)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 64
Eka(Patas)(Berangkat 09.15 – tiba 10.45
seharga 20000 dengan total
atau berangkat 09.45 – tiba 11.15)
harga terendah adalah
seharga 12000 atau Mira(Patas)
35000
(Berangkat 09.15 – tiba 10.45 atau
7. Malioboro– Terminal
berangkat 09.45 – tiba 11.15) seharga
Condong catur – Bandara
12000 dan harus berganti PO di terminal
Adisucipto - Terminal
ini untuk menuju Terminal Tingkir –
Giwangan dengan
Terminal Terboyo dengan menggunakan
menggunakan Trans seharga
Sumber Kencono (Berangkat 10.45 – tiba
3000 dan harus berganti PO
12.15 atau berangkat 11.15 - tiba 12.45)
diterminal ini untuk menuju
seharga 13080 dengan total harga
– Terminal Tirtonadi
terendah 28080
dengan menggunakan
9. Malioboro – Bandara Adisucipto -
Eka(Patas) seharga 12000
Terminal Giwangan dengan (Berangkat
atau Mira(Patas) seharga
08.00 – tiba 09.00 atau berangkat 08.15 –
12000 dan harus berganti
tiba 09.15) menggunakan Trans seharga
PO di terminal ini untuk
3000 dan harus berganti PO diterminal
menuju – Terminal Tingkir
ini untuk menuju – Terminal Tirtonadi
– Terminal Terboyo dengan
dengan menggunakan Eka(Patas)
menggunakan Sumber
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 65
(Berangkat 09.15 – tiba 10.45 atau
Kencono seharga 13080
berangkat 09.45 tiba 11.15) seharga
dengan total harga terndah
12000 atau Mira(Patas)(Berangkat 09.15
28080
– tiba 10.45 atau berangkat 09.45 tiba
8. Malioboro – Terminal
11.15)seharga 12000 dan harus berganti
Condong catur – Bandara
PO diterminal ini untuk menuju –
Adisucipto - Terminal
Terminal Terboyo dengan menggunakan
Giwangan dengan
Safari(Patas) (Berangkat 10.45 – tiba
menggunakan Trans seharga
12.15 atau berangkat 11.15 tiba 12.45)
3000 dan harus berganti PO
seharga 20000 atau Rajawali(Patas)
diterminal ini untuk menuju
(Berangkat 10.45 – tiba 12.15 atau
– Terminal Penggung –
berangkat 11.15 tiba 12.45) seharga
Terminal Tirtonadi dengan
20000 dengan total harga terendah adalah
menggunakan Antar Jaya
35000
seharga 7800 atau Langsung
10. Malioboro – Terminal Condong catur –
Jaya seharga 7800 dan harus
Bandara Adisucipto - Terminal
berganti PO diterminal ini
Giwangan dengan menggunakan
untuk menuju – Terminal
Trans(Berangkat 07.30 – tiba 09.00 atau
Tingkir - Terminal Terboyo
berangkat 07.45 – tiba 09.15) seharga
dengan menggunakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 66
3000 dan harus berganti PO diterminal
sumber Kencono seharga
ini untuk menuju – Terminal Tirtonadi
13080 dengan dengan total
dengan menggunakan Eka(Patas)
harga terendah adalah
(Berangkat 09.15 – tiba 10.45 atau
23880
Berangkat 09.45 – tiba 11.15) seharga
9. Malioboro – Bandara
12000 atau Mira(Patas) (Berangkat 09.15
Adisucipto - Terminal
– tiba 10.45 atau Berangkat 09.45 – tiba
Giwangan dengan
11.15) seharga 12000 dan harus berganti
menggunakan Trans seharga
PO diterminal ini untuk menuju –
3000 dan harus berganti PO
Terminal Terboyo dengan menggunakan
diterminal ini untuk menuju
Safari(Patas)(Berangkat 10.45 – tiba
– Terminal Tirtonadi
12.15 atau berangkat 11.15-tiba 12.45)
dengan menggunakan
seharga 20000 atau
Eka(Patas) seharga 12000
Rajawali(Patas)(Berangkat 10.45 – tiba
dan harus berganti PO
12.15 atau berangkat 11.15-tiba 12.45)
diterminal ini untuk menuju
20000 dengan total harga terendah adalah
– Terminal Tingkir –
35000
Terminal Terboyo dengan
11. Malioboro - Terminal Giwangan dengan menggunakan Trans (Berangkat 08.00 –
menggunakan Sumber Kencono seharga 13080
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 67
tiba 09.00 atau berangkat 08.15 – 09.15)
dengan total harga terendah
seharga 3000 dan harus berganti PO
28080
diterminal ini untuk menuju – Terminal
10. Malioboro– Terminal
Penggung – Terminal Tirtonadi dengan
Condong catur – Bandara
menggunakan Antar Jaya (Berangkat
Adisucipto - Terminal
09.15 – tiba 10.45 atau Berangkat 09.45 –
Giwangan dengan
tiba 11.15) seharga 7800 atau Langsung
menggunakan Trans seharga
Jaya (Berangkat 09.15 – tiba 10.45 atau
3000 dan harus berganti PO
Berangkat 09.45 – tiba 11.15) seharga
diterminal ini untuk menuju
7800 dan harus berganti PO diterminal
– Terminal Penggung –
ini untuk menuju– Terminal Tingkir -
Terminal Tirtonadi dengan
Terminal Terboyo dengan menggunakan
menggunakan Antar Jaya
Sumber Kencono(Berangkat 10.45 – tiba
seharga 7800 atau Langsung
12.15 atau berangkat 11.15 – tiba 12.45)
Jaya seharga 7800 dan harus
seharga 13080 dengan total terndah
berganti PO diterminal ini
23880.
untuk menuju – Terminal
12. Malioboro – Bandara Adisucipto -
Terboyo dengan
Terminal Giwangan dengan
menggunakan Safari(Patas)
menggunakan Trans (Berangkat 08.00 –
seharga 20000 atau
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 68
tiba 09.00 atau berangkat 08.15 – 09.15)
Rajawali(Patas) seharga
seharga 3000 dan harus berganti PO
20000 dengan total harga
diterminal ini untuk menuju – Terminal
terendah 30800
Penggung – Terminal Tirtonadi dengan
11. Malioboro– Terminal
menggunakan Antar Jaya(Berangkat
Condong catur – Bandara
09.15 – tiba 10.45 atau berangkat 09.45 –
Adisucipto - Terminal
tiba 11.15)seharga 7800 atau Langsung
Giwangan dengan
Jaya(Berangkat 09.15 – tiba 10.45 atau
menggunakan Trans seharga
berangkat 09.45 – tiba 11.15) seharga
3000 dan harus berganti PO
7800 dan harus berganti PO diterminal
diterminal ini untuk menuju
ini untuk menuju – Terminal Terboyo
– Terminal Tidar –
dengan menggunakan Safari(Patas)
Terminal Terboyo dengan
(Berangkat 10.45 – tiba 12.15 atau
menggunakan Nusantara
berangkat 11.15 – tiba 12.45) seharga
seharga 16560 atau
20000 atau Rajawali(Patas) (Berangkat
Ramayana seharga 16560
10.45 – tiba 12.15 atau berangkat 11.15 –
dengan total harga 19560
tiba 12.45) seharga 20000 dengan total harga terendah adalah 30800 13. Malioboro– Terminal Condong catur –
12. Malioboro – Bandara Adisucipto - Terminal Giwangan dengan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 69
Bandara Adisucipto - Terminal
menggunakan Trans seharga
Giwangan dengan menggunakan
3000 dan harus berganti PO
Trans(Berangkat 07.30 – tiba 09.00 atau
diterminal ini untuk menuju
berangkat 07.45 – tiba 09.15) seharga
– Terminal Penggung –
3000 dan harus berganti PO diterminal
Terminal Tirtonadi dengan
ini untuk menuju – Terminal Tidar –
menggunakan Antar Jaya
Terminal Terboyo dengan menggunakan
seharga 7800 atau Langsung
Nusantara (Berangkat 09.15 – tiba 12.15
Jaya seharga 7800 dan harus
atau berangkat 09.45 –tiba 12.45) seharga
berganti PO diterminal ini
16560 atau Ramayana(Berangkat 09.15 –
unutk menuju – Terminal
tiba 12.15 atau berangkat 09.45 –tiba
Tingkir - Terminal Terboyo
12.45) seharga 16560 dengan total harga
dengan menggunakan
19560
Sumber Kencono seharga
14. Malioboro – Bandara Adisucipto Terminal Giwangan dengan menggunakan Trans(Berangkat 08.00 –
13080 dengan total terendah 23880. 13. Malioboro – Bandara
tiba 09.00 atau berangkat 08.15 – 09.15)
Adisucipto - Terminal
seharga 3000 dan harus berganti PO
Giwangan menggunakan
diterminal ini untuk menuju – Terminal
Trans seharga 3000 dan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 70
Tirtonadi dengan menggunakan
harus berganti PO
Eka(Patas) (Berangkat 09.15 – tiba 10.45
diterminal ini untuk menuju
atau berangkat 09.45 – tiba 11.45)seharga
– Terminal Tidar –
12000 dan harus berganti PO diterminal
Terminal Terboyo dengan
ini untuk menuju – Terminal Tingkir –
menggunakan Nusantara
Terminal Terboyo dengan menggunakan
seharga 16560 atau
Sumber Kencono(Berangkat 10.45 – tiba
Ramayana seharga 16560
12.15 atau berangkat 11.15 – tiba 12.45)
dengan total harga 19560
seharga 13080 dengan total harga terendah 28080 15. Malioboro – Bandara Adisucipto -
14. Malioboro – Terminal Condong catur – Bandara Adisucipto - Terminal
Terminal Giwangan dengan
Giwangan dengan
menggunakan Trans (Berangkat 08.00 –
menggunakan Trans seharga
tiba 09.00 atau berangkat 08.15 – 09.15)
3000 dan harus berganti PO
seharga 3000 dan harus berganti PO
diterminal ini untuk menuju
diterminal ini untuk menuju – Terminal
– Terminal Terboyo dengan
Penggung – Terminal Tirtonadi dengan
menggunakan
menggunakan Antar Jaya(Berangkat
Nusantara(Patas) seharga
09.15 – tiba 10.45 atau Berangkat 09.45 –
35000 atau Ramayana
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 71
tiba 11.15) seharga 7800 atau Langsung
(Patas) seharga 35000
Jaya(Berangkat 09.15 – tiba 10.45 atau
dengan total harga terendah
Berangkat 09.45 – tiba 11.15) seharga
adalah 38000
7800 dan harus berganti PO diterminal
15. Malioboro - Terminal
ini unutk menuju – Terminal Tingkir -
Giwangan dengan
Terminal Terboyo dengan menggunakan
menggunakan Trans seharga
Sumber Kencono(Berangkat 10.45 – tiba
3000 dan harus berganti PO
12.15 atau berangkat 11.15 – tiba 12.45)
diterminal ini untuk menuju
seharga 13080 dengan total terendah
– Terminal Tirtonadi
23880.
dengan Eka (Patas) seharga
16. Malioboro– Terminal Condong catur –
12000 atau Mira(Patas)
Bandara Adisucipto - Terminal
seharga 12000 harus
Giwangan dengan menggunakan
berganti PO diterminal ini
Trans(Berangkat 07.30 – tiba 09.00 atau
untuk menuju – Terminal
berangkat 07.45 – tiba 09.15) seharga
Terboyo menggunakan
3000 dan harus berganti PO diterminal
Safari(Patas) seharga 20000
ini untuk menuju – Terminal Penggung –
atau Rajawali(Patas)
Terminal Tirtonadi dengan menggunakan
seharga 20000 dengan total
Antar Jaya(Berangkat 09.15 – tiba 10.45
harga terendah 35000
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 72
atau berangkat 09.45 – tiba 11.15)
16. Malioboro - Terminal
seharga 7800 atau Langsung
Giwangan dengan
Jaya(Berangkat 09.15 – tiba 10.45 atau
menggunakan Trans seharga
berangkat 09.45 – tiba 11.15) seharga
3000 dan harus berganti PO
7800 dan harus berganti PO diterminal
diterminal ini untuk menuju
ini untuk menuju – Terminal Terboyo
– Terminal Tidar –
dengan menggunakan
Terminal Terboyo
Safari(Patas)(Berangkat 10.45 – tiba
dengan menggunakan
12.15 atau berangkat 11.15 – tiba 12.45)
Nusantara seharga 16560
seharga 20000 atau
atau Ramayana seharga
Rajawali(Patas)(Berangkat 10.45 – tiba
16560 dengan total harga
12.15 atau berangkat 11.15 – tiba 12.45)
terendah 19560
seharga 20000 dengan total harga terendah 30800 17. Malioboro– Terminal Condong catur –
17. Malioboro - Terminal Giwangan dengan menggunakan Trans seharga
Bandara Adisucipto - Terminal
3000 dan harus berganti PO
Giwangan dengan menggunakan
diterminal ini untuk menuju
Trans(Berangkat 07.30 –tiba 09.00 atau
– Terminal Terboyo dengan
07.45 – tiba 09.15) seharga 3000 dan
menggunakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 73
harus berganti PO diterminal ini untuk
Nusantara(Patas) seharga
menuju – Terminal Tirtonadi dengan
35000 atau
menggunakan Eka(Patas)(Berangkat
Ramayana(Patas) seharga
09.15 – tiba 10.45 atau berangkat 09.45 –
35000 dengan total harga
tiba 11.15) seharga 12000 atau
terendah 38000
Mira(Patas)(Berangkat 09.15 – tiba 10.45
19. Malioboro – Bandara
atau berangkat 09.45 – tiba 11.15)
Adisucipto - Terminal
seharga 12000 dan harus berganti PO di
Giwangan dengan
terminal ini untuk menuju – Terminal
menggunakan Trans seharga
Tingkir – Terminal Terboyo dengan
3000 dan harus berganti PO
menggunakan Sumber
diterminal ini untuk menuju
Kencono(Berangkat 10.45 – tiba 12.15
– Terminal Terboyo dengan
atau berangkat 11.15 – tiba 12.45)
menggunakan Nusantara
seharga 13080 dengan total harga terndah
(Patas) seharga 35000 atau
28080
Ramayana (Patas) seharga
18. Malioboro – Terminal Condong catur – Bandara Adisucipto - Terminal Giwangan dengan menggunakan Trans(Berangkat 07.30 –tiba 09.00 atau
35000 dengan total harga terendah 38000
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 74
07.45 – tiba 09.15) seharga 3000 dan harus berganti PO diterminal ini untuk menuju – Terminal Penggung – Terminal Tirtonadi dengan menggunakan Antar Jaya(Berangkat 09.15 – tiba 10.45 atau 09.45 – tiba 11.15) seharga 7800 atau Langsung Jaya(Berangkat 09.15 – tiba 10.45 atau 09.45 – tiba 11.15) seharga 7800 dan harus berganti PO diterminal ini untuk menuju – Terminal Tingkir Terminal Terboyo dengan menggunakan sumber Kencono(Berangkat 10.45 – tiba 12.15 atau berangkat 11.15 – tiba 12.45) seharga 13080 dengan dengan total harga terendah adalah 23880
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4.2.2 Pengukuran Kinerja Sistem Untuk Travice web server kinerja sistem dapat berjalan dengan lancar. Kinerja sistem Travice web server sepenuhnya tergantung pada koneksi
internet yang ada. Untuk Travice mobile pada bagian pencarian jalur
menggunakan pengukuran sebagai berikut : Jumlah maksimal terminal yang dilalui 4
Jumlah alternatif jalur
Terminal Condong catur
Lama proses (dalam detik) 3
Terminal Giwangan
Bandara Adi Sucipto
3
5
4
AKDP
Jombor
Terminal Giwangan
4
5
6
4
AKAP
Terminal Giwangan
Terminal Tirtonadi
5
5
6
5
AKAP
Terminal Giwangan
Terminal Tingkir
9
5
8
6
AKDP dan AKAP
Malioboro
Terminal Terboyo
22
8
18
7
AKDP dan AKAP
Prambanan
Terminal Penggung
50
11
24
No
Jenis
Terminal Asal
Terminal Akir
1
AKDP
Terminal Giwangan
2
AKDP
3
75
3
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 76
Grafik yang terbentuk : Proses dalam detik
60 50 40 30 Lama proses (dalam detik)
20 10 0 3 4 6 6 8 18 24 Alternatif Jalur
Berdasarkan pengukuran sistem dapat ditarik kesimpulan semakin banyak jumlah kemungkinana yang ada maka akan berbanding lurus dengan proses pelaksanaan sistem. Hal ini dikarenakan proses perhitungan biaya akan lebih kompleks saat kemungkinan rute yang ada meningkat.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4.2.3 Kelebihan dan Kekurangan Sistem Kelebihan sistem yang dibangun adalah : 1.
dapat memvisualisasikan jalur yang ada dari suatu terminal ke terminal lainnya
2.
dapat menggunakan GPS untuk memberi informasi letak longitude dan latitude saat akan menambah data terminal, jadi posisi terminal yang ditambah akurat.
3.
Dapat meberikan informasi saat memungkinkan terjadi pergantian bus dalam suatu jalur.
Kekurangan sistem 1. Tidak dapat memberikan hasil perhitungan seluruh biaya berdasar PO Bus. Saat terdapat 2 atau lebih PO bus dalam suatu jalur yang memiliki jenis yang sama(AKAP/Eksekutif) maka yang akan ditampilkan adalah harga terendah dari PO yang ada di jalur tersebut.
77
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB V PENUTUP
5.1
Kesimpulan Pembangunan sistem Travice mobile menggunakan algoritma DFS. Terdapat 11 terminal dan 33 jalur yang digunakan sebagai data dalam sistem Travice mobile. Kesimpulan yang didapat adalah : 1. User dapat mendapatkan informasi mengenai jalur yang ada dari suatu terminal ke terminal lain. Informasi yang diperoleh meliputi kemungkinan jalur yang bisa ditempuh, jam keberangkatan, jam tiba, biaya yang diperlukan, PO bus yang dapat dipergunakan. 2. User mendapatkan visualisasi jalur yang ada 3. Admin dapat mengelola data yang diperlukan untuk menunjang sistem Travice berbasi web maupun mobile. 4. Jumlah rekomendasi berbanding lurus dengan waktu yang diperlukan sistem dalam mendapatkan semua kemungkinan jalur yang ada dari suatu terminal ke terminal lain. Rekomendasi yang diberikan sistem disusun berdasar jumlah terminal yang dilalui oleh suatu bus tertentu berdasar jalur yang ada. Semakin sedikit jumlah terminal yang dilalui maka akan berada pada puncak rekomendasi.
78
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 79
5.2
Saran Saran yang dapat penulis berikan dari penelitian ini adalah 1. Bagi user Sistem Travice mobile melakukan perhitungan komputasi pada handphone user. Apabila terdapat banyak data terminal, PO Bus, maupun Jalur yang dilalui maka aplikasi ini akan berjalan lambat. Agar hasil komputasi dapat berjalan dengan baik penulis menyarankan user menggunakan handphone yang memiliki RAM besar dan prosesor yang cepat. 2. Bagi peneliti selanjutnya Sistem ini masih banyak kekurangan. Oleh karena itu, sebaiknya bagi peneliti selanjutnya dapat memperbaiki kualitas dan kinerja sistem, diantaranya a. Perhitungan komputasi baik pencarian jalur, penghitungan biaya,
semua dilakukan diserver agar proses komputasi lebih cepat. b. Sistem dapat memberikan pilihan moda yang akan digunakan misal
kereta api(tidak hanya bus) c. Sistem dapat mencarikan jalur berdasar posisi user(handphone user)
menuju tujuan akir. d. Sistem dapat berjalan diberbagai operating sistem.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 80
DAFTAR PUSTAKA
[1] Munir, Rinaldi. Matematika Diskrit. Bandung: Informatika, 2005. [2] Siang, Jong Jek. Matematika Diskrit dan Aplikasinya Pada Ilmu Komputer. Yogyakarta: Andi, 2004. [3] Chartrand, Garry dan Linda Lesniak. Graphs and Digraphs. California: Pacific Grove, 1986. [4]
Nugroho, Adi. Algoritma dan Struktur Data dalam Bahasa Java. Yogyakarta: Andi, 2008.
[5] Meier, Reto. 2009. Professional Android Application Development. Indianapolis, Indiana Canada United States of America : Wiley Publishing, Inc [6] Hermawan, Stephanus. 2011. Mudah Membuat Aplikasi Android. Yogyakarta : Andi Offset [7] Supriyanto, Aji. Pengantar Teknologi Informasi. Salemba Infotex, 2005. [8] Prahasta, Eddy. Konsep-konsep Dasar SIG. Bandung: Informatika, 2002. [9] Prahasta, Eddy. Sistem Informasi Geografis: Tutorial Arcview. Bandung: Informatika, 2005.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN 1
1
Narasi Usecase Narasi usecase diisi dengan skenario (flow of event) untuk beberapa use case
utama, gambaran urutan iteraksi pelaku bisnis utama(aktor) dengan usecase tertentu, dari awal sampai akhir. Narasi usecase juga memberikan informasi deskripsi dari usecase tertentu. 1.1 1.1.1
Travice Web Server Login Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Login Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin memasukan username dan password untuk dapat mengakses data Skenario Use Case : Pengguna Sistem Skenario Normal (Login) Langkah 1: Langkah 4 : Menampilkan Sistem mencocokan halaman login data username dan admin, username password yang ada di dan password database untuk masuk sebagai admin Langkah 5 : Menampilkan pesan Langkah 2 : berhasil Login Memasukkan username dan password
81
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 82
Langkah 3 : Menekan tombol Masuk Skenario Alternatif (Login) Alt – Langkah 4 Menampilkan pesan gagal Login
1.1.2
Tambah Data Terminal Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Tambah Data Terminal) Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin dapat menambah data terminal yang ada di database Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data) Langkah 1 : Langkah 2: Memilih menu Menampilkan halaman ‘Terminal’ untuk pengisian data terminal menambah data yang akan ditambah Terminal Langkah 3 : Memasukan data nama terminal, lattitude, longtitude, nama kota Langkah 4 : Menekan tombol simpan Skenario Alternatif
Langkah 5 : Penambahan data Terminal ke dalam database berhasil, dan memberikan informasi proses menambahkan data berhasil
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 83
Alt-4 penambahan data ke database gagal, dan memberikan informasi penambahan data gagal
1.1.3
Ubah Data Terminal Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Ubah Data Terminal) Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin dapat mengubah data terminal yang ada di database Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data) Langkah 1 : Langkah 2: Menekan tombol Menampilkan halaman ‘Ubah’ untuk pengisian data mengubah data Terminal yang akan Terminal diubah Langkah 3 : Memasukan data nama terminal, lattitude, longtitude, nama kota yang ingin dirubah
Langkah 5 : Pengubahan data Terminal ke dalam database berhasil, dan memberikan informasi proses pengubahan data berhasil
Langkah 4 : Menekan tombol Simpan Skenario Alternatif Alt-4 perubahan data ke database gagal, dan memberikan informasi perubahan data gagal
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 84
1.1.4
Hapus Data Terminal Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Hapus Data Terminal) Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin dapat menghapus data Terminal yang ada di database Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data) Langkah 1 : Langkah 2 : Menekan tombol Penghapusan data ‘Hapus’ untuk Terminal berhasil, dan menghapus data memberikan informasi Terminal proses pengubahan data berhasil Skenario Alternatif Alt-4 penghapusan data gagal, dan memberikan informasi penghapusan data gagal
1.1.5
Tambah Data Jalur Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Tambah Data Jalur) Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin dapat menambah data Jalur yang ada di database Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data) Langkah 1 : Langkah 2: Memilih menu Menampilkan halaman ‘Jalur’ untuk pengisian data Jalur
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 85
menambah data Jalur
yang akan ditambah
Langkah 3 : Memasukan data terminal awal, terminal akir, jarak
Langkah 5 : Penambahan data Jalur ke dalam database berhasil, dan memberikan informasi proses menambahkan data berhasil
Langkah 4 : Menekan tombol Simpan Skenario Alternatif
Alt-4 penambahan data ke database gagal, dan memberikan informasi penambahan data gagal
1.1.6
Ubah Data Jalur Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Ubah Data Jalur) Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin dapat mengubah data Jalur yang ada di database Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data) Langkah 1 : Langkah 2: Menekan tombol Menampilkan halaman ‘Ubah’ untuk pengisian data Jalur mengubah data yang akan diubah Jalur Langkah 3 : Langkah 5 : Memasukan data Pengubahan data Jalur terminal awal, ke dalam database terminal akir, berhasil, dan jarak yang ingin memberikan informasi dirubah proses pengubahan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 86
Langkah 4 : Menekan tombol Simpan
data berhasil
Skenario Alternatif Alt-4 perubahan data ke database gagal, dan memberikan informasi perubahan data gagal
1.1.7
Hapus Data Jalur Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Hapus Data Jalur) Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin dapat menghapus data Jalur yang ada di database Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data) Langkah 1 : Langkah 2 : Memilih menu Penghapusan data Line ‘Hapus’ untuk berhasil, dan menghapus data memberikan informasi Jalur proses pengubahan data berhasil Skenario Alternatif Alt-4 penghapusan data gagal, dan memberikan informasi penghapusan data gagal
1.1.8
Tambah Data Trayek Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Tambah Data Trayek)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 87
Pelaku Bisnis Utama: Deskripsi :
Admin Use case ini menggambarkan proses dimana Admin dapat menambah data trayek yang ada di database Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data) Langkah 1 : Langkah 2: Memilih menu Menampilkan halaman ‘Trayek’ untuk pengisian data Trayek menambah data yang akan ditambah Trayek Langkah 3 : Memasukan data jalur, PO Bus, nama trayek, harga, jenis, jam berangkat, jam tiba
Langkah 5 : Penambahan data trayek ke dalam database berhasil, dan memberikan informasi proses menambahkan data berhasil
Langkah 4 : Menekan tombol Simpan Skenario Alternatif Alt-4 penambahan data ke database gagal, dan memberikan informasi penambahan data gagal
1.1.9
Ubah Data Trayek Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Ubah Data Trayek) Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin dapat mengubah data trayek yang ada di database Skenario Use Case : Admin Sistem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 88
Skenario Normal (Kelola Data) Langkah 1 : Menekan tombol ‘Ubah’ untuk mengubah data trayek Langkah 3 : Memasukan data jalur, PO Bus,nama trayek, harga, jenis, jam berangkat, jam tiba, yang ingin dirubah
Langkah 2: Menampilkan halaman pengisian data trayek yang akan diubah Langkah 5 : Pengubahan data trayek ke dalam database berhasil, dan memberikan informasi proses pengubahan data berhasil
Langkah 4 : Menekan tombol simpan Skenario Alternatif Alt-4 perubahan data ke database gagal, dan memberikan informasi perubahan data gagal
1.1.10 Hapus Data Trayek Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Hapus Data Trayek) Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin dapat menghapus data trayek yang ada di database Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data) Langkah 1 : Langkah 2 : Memilih menu Penghapusan data ‘Hapus’ untuk trayek berhasil, dan memberikan informasi menghapus data Jalur proses pengubahan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 89
data berhasil Skenario Alternatif Alt-4 penghapusan data gagal, dan memberikan informasi penghapusan data gagal
1.1.11 Logout Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Logout Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin melakukan logout dari sistem Skenario Use Case : Pengguna Sistem Skenario Normal (Logout) Langkah 1 : Langkah 2: Memilih menu Menampilkan pesan ‘logout’ untuk anda berhasil logout keluar dari sistem Skenario Alternatif (Logout) Menampilkan pesan anda tidak berhasil logout
1.2 1.2.1
Travice Mobile Login Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Login Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin memasukan username dan password
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 90
Skenario Use Case : Skenario Normal (Login)
untuk dapat mengakses data Pengguna Sistem Langkah 1 : Pada tampilan awal admin akan memilih menu ‘Admin’
Langkah 2: Menampilkan halaman login admin, username dan password untuk masuk sebagai admin
Langkah 3 : Memasukkan username dan password
Langkah 5 : Sistem pesan berhasil login
Langkah 4 : Menekan tombol login Skenario Alternatif (Login) Alt – Langkah 4 User menekan tombol reset sehingga sistem tidak jadi memproses inputan yang dimaksud user
1.2.2
Tambah Data Terminal Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Tambah Data Terminal) Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin dapat menambah data terminal yang ada di database Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data) Langkah 1 : Langkah 2: Memilih menu Menampilkan halaman ‘Tambah pengisian data terminal Terminal’ untuk yang akan ditambah menambah data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 91
Terminal Langkah 3 : Memasukan data nama terminal, lattitude, longtitude, nama_kota
Langkah 5 : Penambahan data Terminal ke dalam database berhasil, dan memberikan informasi proses menambahkan data berhasil
Langkah 4 : Tekan tombol simpan Skenario Alternatif Alt-5 tekan tombol posisi maka lattitude dan longtitude akan otomatis diinputkan berdasar posisi pada gps
1.2.3
Ubah Data Terminal Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Ubah Data Terminal) Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin dapat mengubah data terminal yang ada di database Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data) Langkah 1 : Langkah 2: Memilih menu Menampilkan daftar ‘Ubah Terminal’ semua terminal yang untuk mengubah ada data Terminal Langkah 5 : Langkah 3 Menampilkan form memilih terminal terminal berdasar data yang akan dirubah terminal yang akan dirubah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 92
Langkah 4 : Pilih menu ubah terminal Langkah 6 : Memasukan data nama terminal, lattitude, longtitude, nama_kota Langkah 7 : Tekan tombol simpan
Langkah 8 : Pengubahan data Terminal ke dalam database berhasil, dan memberikan informasi proses pengubahan data berhasil
Skenario Alternatif Alt-8 info data gagal diubah
1.2.4
Hapus Data Terminal Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Kelola Data (package Hapus Data Terminal) Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin dapat menghapus data Terminal yang ada di database Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data) Langkah 1 : Langkah 2: Memilih menu Menampilkan daftar ‘Ubah Terminal’ semua terminal yang untuk mengubah ada data Terminal Langkah 8 : Langkah 3 Penghapusan data memilih terminal Terminal berhasil, dan yang akan dirubah memberikan informasi proses pengubahan Langkah 4 : data berhasil
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 93
Pilih menu Hapus terminal Skenario Alternatif Alt-4 penghapusan data gagal, dan memberikan informasi penghapusan data gagal
1.2.5
Logout Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Logout Pelaku Bisnis Utama: Admin Deskripsi : Use case ini menggambarkan proses dimana Admin melakukan logout dari sistem Skenario Use Case : Pengguna Sistem Skenario Normal (Logout) Langkah 1 : Langkah 2: Memilih menu Menampilkan pesan ‘logout’ untuk anda berhasil logout keluar dari sistem Skenario Alternatif (Logout) Menampilkan pesan anda tidak berhasil logout
1.2.6
Cari Jalur Travice Pembuat : Fransisca Endar Subagyo Tanggal : 20 Desember 2012 Nama Use Case : Cari Jalur Pelaku Bisnis Utama: User Deskripsi : Use case ini menggambarkan proses dimana User melakukan pencarian jalur. Skenario Use Case : Admin Sistem Skenario Normal (Kelola Data)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 94
Langkah 1 : Menekan menu user
Langkah 2: Menampilkan halaman pencarian jalur
Langkah 3 : Memasukan data terminal awal, terminal akir,
Langkah 5 : Menampilkan data jalur yang memungkinkan dipilih oleh user
Langkah 4 : Menekan tombol Cari Skenario Alternatif Alt-5 Menampilkan pesan tidak ada jalur yang ditemukan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN 2
2
Diagram Aktivitas Diagram Aktivitas menggambarkan berbagai alir aktivitas dalam sistem yang
sedang dirancang, bagaimana masing-masing alir berawal, keputusan yang mungkin terjadi, dan bagaimana mereka berakhir. Diagram Aktivitas juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi.
2.1 2.1.1
Travice Web Server Login
Tampil formLogin
Isi username dan password
Tekan tombol login
Cek userName
Cek password
Pengecekan ditolak
Pengecekan diterima Baca data
Request pesan error
Request pesan sukses
Tampil formLogin
Tampil halamanTerminal
95
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 96
2.1.2
Tambah Data Terminal
Tampil form DataTerminal
Isikan data nama terminal, lattitude, longtitude, nama_kota
Tekan tombol Add
Pengecekan diterima Simpan data
Tampil pesan sukses
Pengecekan ditolak
Tampilkan pesan error
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 97
2.1.3
Ubah Data Terminal
Tekan Menu Terminal
Tampil FormTerminal
Pilih data yang akandiedit
Tekan menu edit
Tampil formEdit Masukan data yang ingin diedit Tekan tombol edit Lakukan query update Cek Id Terminal
Pengecekan diterima Edit data Terminal
Tampil pesan sukses
Pengecekan ditolak Tampil pesan error
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 98
2.1.4
Hapus Data Terminal
Tampil FormDataTerminal
Pilih data yang akan di hapus Tekan tombol hapus Lakukan query hapus
Cek Id Terminal
Pengecekan diterima Hapus data Terminal
Tampil pesan sukses
Pengecekan ditolak Tampil pesan error
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 99
2.1.5
Tambah Data Jalur
Tekan Menu Jalur
Tampil form Jalur
Isikan data terminal awal, terminal akir, jarak
Tekan tombol simpan
Lakukan query simpan
Cek Terminal Akir
Pengecekan diterima
Cek Terminal awal
Pengecekan ditolak
Simpan data
Tampil pesan sukses
Tampilkan pesan error
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 100
2.1.6
Ubah Data Jalur
Tekan Menu Jalur
Tampil FormTerminal
Pilih data yang akandiedit
Tekan menu edit
Tampil formEdit Masukan data yang ingin diedit Tekan tombol edit Lakukan query update Cek Id Jalur Pengecekan diterima
Edit data Jalur
Tampil pesan sukses
Pengecekan ditolak
Tampil pesan error
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 101
2.1.7
Hapus Data Jalur
Tampil FormJalur
Pilih data yang akan di hapus Tekan tombol hapus Lakukan query hapus
Cek Id Jalur
Pengecekan Diterima Hapus data Jalur
Tampil pesan sukses
Pengecekan Ditolak Tampil pesan error
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 102
2.1.8
Tambah Data Trayek
Tekan Menu Trayek
Tampil form Trayek
Isikan data jalur, PO Bus, nama trayek, harga, jenis, jam berangkat, jam tiba
Tekan tombol simpan
Lakukan query simpan
Cek jalur
Pengecekan diterima
Cek PO bus
Pengecekan ditolak
Simpan data
Tampil pesan sukses
Tampilkan pesan error
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 103
2.1.9
Ubah Data Trayek
Tekan Menu Trayek
Tampil FormTrayek
Pilih data yang akandiedit
Tekan menu edit
Tampil formEdit Masukan data yang ingin diedit Tekan tombol edit Lakukan query update Cek id_trayek, Id Jalur, id_PO Pengecekan diterima
Edit data Trayek
Tampil pesan sukses
Pengecekan ditolak
Tampil pesan error
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 104
2.1.10 Hapus Data Trayek
Tampil FormTrayek
Pilih data yang akan di hapus Tekan tombol hapus Lakukan query hapus
Cek Id Trayek, Id Jalur, id_PO Pengecekan Diterima
Hapus data Jalur
Pengecekan Ditolak
Tampil pesan error
Tampil pesan sukses
2.1.11 Logout
Tampil halamanAdmin
Tekan Menu logout
Tampil halaman login
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 105
2.2
Travice Mobile
2.2.1
Login
Tampil halamaN menu_utama
Tekan Menu Admin
Tampil formLogin
Isi username dan password
Tekan tombol login
Cek userName
Pengecekan diterima Baca data
Request pesan sukses
Tampil halamanAdmin
Cek password
Pengecekan ditolak
Request pesan error
Tampil formLogin
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 106
2.2.2
Tambah Data Terminal
Tampil FormAdmin
Tekan Menu Tambah Terminal
Tampil form DataTerminal
Isikan data nama terminal, lattitude, longtitude, nama_kota
Tekan tombol Add
Pengecekan diterima Simpan data
Tampil pesan sukses
Pengecekan ditolak
Tampilkan pesan error
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 107
2.2.3
Ubah Data Terminal
Tampil halamanAdmin Tekan tombol list ubah Terminal Tampil halaman DataTerminal Pilih data yang akandiedit Tekan menu edit
Tampil formEdit Masukan data yang ingin diedit
Tekan tombol edit
Cek Id Terminal
Pengecekan diterima Edit data Jalur
Tampil pesan sukses
Pengecekan ditolak Tampil pesan error
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 108
2.2.4
Hapus Data Terminal
Tampil halamanAdmin
Tekan List Ubah Terminal
Tampil halaman DataTerminal
Pilih data yang akan di hapus
Tekan menu hapus
Tampil form Hapus
Tekan tombol hapus
Cek Id Terminal Pengecekan diterima
Hapus data Terminal
Pengecekan ditolak
Tampil pesan error
Tampil pesan sukses
2.2.5
Logout
Tampil halamanAdmin
Tekan Menu logout
Tampil halaman awal
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 109
2.2.6
Cari Jalur
Tampil halamanUtama
Tekan Menu User
Tampil form CariJalur
Isikan data terminal awal, terminal akir(tujuan)
Tekan tombol Cari
Cek Terminal Akir
Pengecekan diterima
Cek Terminal awal
Pengecekan ditolak
Proses Hitung dengan algo DFS
Visualisasi Jalur
Tampilkan pesan error
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN 3
3
Model Analisis
3.1 3.1.1
Travice Web Server Login Diagram Sequence:
Admin
: formLogin :login_control
:FormTerminal
Admin
1) Isikan userName dan password 2) Tekan tombol login 3) cek userName dan password 4) baca data 5) request pesan sukses 6) tampil halamanAdmin
Model Analisis :
formLogin
Login_control
admin
FormTerminal
110
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 111
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_login
Interface
Sebagai Halaman Login Admin
2.
Login_control
Controller
Kelas ini memvalidasi username dan password yang digunakan Admin untuk Login
3.
Form_Terminal
Interface
Sebagai Halaman yang akan ditampilkan setelah proses validasi sukses
4.
Tabel Admin
Entity
Berfungsi menyimpan data username dan password Admin
3.1.2
Tambah Data Terminal Diagram Sequence:
Admin
: FormTerminal
:simpan_terminal _control
: Terminal
1) Tekan menu Terminal 2) tampil formTerminal 3) isikan data nama terminal, lattitude, longtitude, nama_kota
4) tekan tombol Simpan 5) Melakukan query simpan 6) simpan data 7) Tampil pesan sukses
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 112
Model Analisis:
formTerminal
Simpan_terminal_control
Terminal
Kelas Analisis :
No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_Terminal
Interface
Halaman untuk mengisikan atribut-atribut terminal yang akan diproses
2.
Simpan_terminal_control
Controller
Kelas ini sebagai controller yang mengatur proses penambahan data pada tabel terminal
3.
Tabel Terminal
Entity
Berfungsi menyimpan seluruh data terminal
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 113
3.1.3
Ubah Data Terminal Diagram Sequence:
:Form_terminal
Admin
:Form_edit_ terminal
: Edit_Terminal _controller
: Terminal
1) Tekan Menu Terminal 2) Tampil Form Terminal 3) Pilih data yang akan diedit 4) Tekan tombol edit data 5) Tampil Form edit 6) Masukan data yang ingin diedit 7) tekan tombol Update
8) lakukanquery Update 9) Cek Id Terminal 10) update data 11) tampil pesan sukses
Kelas Analisis:
Form_terminal
Form_edit_Terminal
Edit_Terminal_controller
Terminal
Kelas Analisis : No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_Terminal
Interface
Halaman utama untuk mengisikan data terminal
2.
Form_Edit_Terminal
Interface
Halaman yang akan menampilkan data terminal
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 114
yang akan diedit sesuai dengan keinginan Admin 3.
Edit_Terminal_controller Controller
Kelas ini sebagai controller yang mengatur proses pengeditan data pada tabel terminal
4.
Tabel Terminal
Berfungsi menyimpan seluruh data terminal
3.1.4
Hapus Data Terminal
Entity
Diagram Sequence:
Admin
:Form Terminal
:Hapus_Terminal _controller
: Terminal
1) Tampil FormTerminal 2) Pilih data yang akan dihapus 3) Tekan tombol dihapus 4) lakukan query hapus 5) Cek Id terminal 6) Hapus data 7) tampil pesan sukses
Model Analisis:
Terminal FormTerminal
Hapus_Terminal_ controller
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 115
Kelas Analisis : No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_Terminal
Interface
Halaman utama untuk mengisikan data terminal
2.
Hapus_Terminal_control ler
Controller
Kelas ini sebagai controller yang mengatur proses penghapusan data pada tabel terminal
3.
Tabel Terminal
Entity
Berfungsi menyimpan seluruh data terminal
3.1.5
Tambah Data Jalur Diagram Sequence:
Admin
: Form_terminal
: Form_Jalur
:simpan_jalur _control
: Jalur
1) Tekan Menu Jalur 2) tampil form Jalur 3) isikan data terminal awal, terminal akir, jarak 5) tekan tombol simpan 6) Lakukan query simpan 7) simpan data 8) Tampil pesan sukses
Model Analisis:
Form_terminal
formJalur
Simpan_jalur_ control
Jalur
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 116
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_terminal
Interface
Halaman utama setelah Admin berhasil Login
2.
Form_Jalur
Interface
Halaman utama untuk mengisikan data Jalur
3.
Simpan_jalur_controller Controller
Kelas ini sebagai controller yang mengatur proses penambahan data pada tabel jalur
3.
Tabel jalur
Berfungsi menyimpan seluruh data jalur
Entity
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 117
3.1.6
Ubah Data Jalur Diagram Sequence:
:Form_terminal
Admin
:Form_Jalur
:Form_edit_: Edit_jalur jalur _controller
: Jalur
1) Tekan Menu Jalur 2) Tampil Form Jalur 3) Pilih data yang akan diedit 4) Tekan tombol edit data 5) Tampil Form edit 6) Masukan data yang ingin diedit 8) lakukanquery Update
7) tekan tombol Update
9) Cek Id Jalur 10) update data 11) tampil pesan sukses
Model Analisis:
Form_terminal
Form_Jalur
Form_edit_jalur
Edit_Jalur _controller
Jalur
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 118
No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_terminal
Interface
Halaman utama setelah Admin berhasil Login
2.
Form_Jalur
Interface
Halaman utama untuk mengisikan data Jalur
3
Form_Edit_Jalur
Interface
Halaman yang akan menampilkan data Jalur untuk pengeditan berdasar pilihan jalur yang akan diubah oleh Admin
4.
Edit_jalur_controller
Controller
Kelas ini sebagai controller yang mengatur proses pengeditan data pada tabel jalur
5.
Tabel jalur
Entity
Berfungsi menyimpan seluruh data jalur
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 119
3.1.7
Hapus Data Jalur Diagram Sequence:
Admin
:Form Jalur
:Hapus_jalur _controller
: jalur
1) Tampil FormJalur 2) Pilih data yang akan dihapus 3) Tekan tombol dihapus 4) lakukan query hapus 5) Cek Id jalur 6) Hapus data 7) tampil pesan sukses
Model Analisis:
FormJalur
Hapus_Jalur_contr oller
Jalur
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 120
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_Jalur
Interface
Halaman utama untuk mengisikan data jalur
2.
Hapus_Jalur_controller
Controller
Kelas ini sebagai controller yang mengatur proses penghapusan data pada tabel jalur
3.
Tabel jalur
Entity
Berfungsi menyimpan seluruh data jalur
3.1.8
Tambah Data Trayek Diagram Sequence:
Admin
: Form_terminal
: Form_Trayek :simpan_trayek _control
: Trayek
1) Tekan Menu Jalur 2) tampil form Trayek 3) isikan data jalur, PO Bus,Nama Trayek, harga, jenis, jam berangkat, jam tiba 4) tekan tombol simpan 5) Lakukan query simpan 6) simpan data 7) Tampil pesan sukses
Kelas Analisis:
Form_terminal
formTrayek
Simpan_trayek_c ontrol
Trayek
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 121
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_terminal
Interface
Halaman utama setelah Admin berhasil Login
2.
Form_Trayek
Interface
Halaman utama untuk mengisikan data Trayek
3.
Simpan_Trayek_controller Controller
Kelas ini sebagai controller yang mengatur proses penambahan data pada tabel trayek
3.
Tabel Trayek
Berfungsi menyimpan seluruh data trayek
Entity
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 122
3.1.9
Ubah Data Trayek Diagram Sequence:
:Form_terminal
Admin
:Form_ trayek
:Form_edit_ trayek
: Edit_trayek : trayek _controller
1) Tekan Menu Trayek 2) Tampil Form Trayek 3) Pilih data yang akan diedit 4) Tekan tombol edit data 5) Tampil Form edit 6) Masukan data yang ingin diedit 8) lakukanquery Update
7) tekan tombol Update
9) Cek Id Trayek, id_jalur,id_PO 10) update data
11) tampil pesan sukses
Model Analisis:
Form_terminal
Form_edit_Trayek
Form_Trayek
Trayek Edit_Trayek _controller
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_terminal
Interface
Halaman utama setelah Admin berhasil Login
2.
Form_Trayek
Interface
Halaman utama untuk mengisikan data Trayek
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 123
3
Form_Edit_Trayek
Interface
Halaman yang akan menampilkan data Trayek untuk pengeditan berdasar pilihan trayek yang akan diubah oleh Admin
4.
Edit_trayek_controller
Controller
Kelas ini sebagai controller yang mengatur proses pengeditan data pada tabel trayek
5.
Tabel trayek
Entity
Berfungsi menyimpan seluruh data trayek
3.1.10 Hapus Data Trayek Diagram Sequence:
Admin
:Form Trayek
:Hapus_trayek _controller
:trayek
1) Tampil FormTrayek 2) Pilih data yang akan dihapus 3) Tekan tombol dihapus 4) lakukan query hapus
5) Cek Id trayek, id_jalur, id_PO 6) Hapus data
7) tampil pesan sukses
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 124
Model Analisis:
Hapus_Trayek_co ntroller
FormTrayek
Trayek
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_Trayek
Interface
Halaman utama untuk mengisikan data trayek
2.
Hapus_trayek_controller
Controller
Kelas ini sebagai controller yang mengatur proses penghapusan data pada tabel trayek
3.
Tabel trayek
Entity
Berfungsi menyimpan seluruh data trayek
3.1.11 Logout Diagram Sequence:
Admin
: FormTerminal
: Form_login
1) Tampil halaman Admin 2) Tekan Menu Logout 3) tampil halaman login
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 125
Model Analisis:
Form_Terminal
Form_login
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_Terminal
Interface
Halaman utama setelah Admin berhasil Login
2.
Form_login
Interface
Halaman setelah Admin berhasil keluar dari sistem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 126
3.2 3.2.1
Travice Mobile Login Diagram Sequence:
Admin
:Menu_utama : PHP Login
:formAdmin
: logindb
Admin
1) Tampil halaman menu utama 2) Tekan Menu Admin 3) Tampil formLogin 4) Isikan userName dan password 5) Tekan tombol login 6) Lakukan query 7) cek userName dan password 8) baca data 9) request pesan sukses 10) tampil halamanAdmin
Model Analisis :
Menu_utama
admin
logindb
PHP_Login
FormAdmin
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 127
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
Menu Utama
Interface
Halaman utama Sistem
2.
PHP_login
Interface
Kelas untuk menampilkan halaman login
3.
Login_db
Controler
Kelas ini memvalidasi username dan password yang digunakan Admin untuk Login
4.
FormAdmin
Interface
Halaman utama Admin settelah berhasil Login
5.
Tabel Admin
Entity
Berfungsi menyimpan semua data Admin
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 128
3.2.2
Tambah Terminal Diagram Sequence:
: Form_admin
Admin
: Tambah_terminal
: Servis
: Terminal
1) Tekan Menu Tambah Terminal 2) tampil form DataTerminal 3) isikan data data nama terminal, lattitude, longtitude, kota 4) tekan tombol Simpan 5) Lakukan query 6) simpan data
7) Tampil Hasil query 7) Tampil Pesan sukses
Model Analisis:
Form_admin
Tambah_terminal
Service
Terminal
No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_Admin
Interface
Halaman utama sistem setelah Admin berhasil Login
2.
Tambah_terminal
Interface
Form untuk memasukan data yang diperlukan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 129
untuk menambah data terminal 3.
service
Controller
Kelas ini sebagai controller yang mengatur proses penambahan data pada tabel terminal
4.
Tabel Terminal
Entity
Berfungsi menyimpan seluruh data terminal
3.2.3
Ubah Terminal Diagram Sequence:
Admin
:Form_Admin
:AksesServer Activity
:UbahTerminal
: service
: Terminal
1) tampil halaman Admin 2) Tekan list ubah Terminal
3) Tampil halamanDataTerminal 4) Pilih data yang akan edit
5) tekan menu ubah data
6) Cek Id terminal
7) Tampil form ubah terminal 8) Isikan data nama terminal, kota, latitude dan longitude
9) Lakukan query
10) ubah Data 11) Hasil query
10) tampil pesan sukses
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 130
Model Analisis:
FormAdmin
AksesServerActivity
Ubah_terminal
Service
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
FormAdmin
Interface
Halaman utama setelah Admin berhasil Login
2.
AksesServerActivity
Interface
Halaman yang akan menampilkan daftar terminal yang ada
3.
Ubah terminal
Interface
Form untuk mengubah data terminal
4.
service
Controller
Kelas ini sebagai controller yang mengatur proses pengeditan data pada tabel terminal
5.
Tabel Terminal
Entity
Berfungsi menyimpan seluruh data terminal
Terminal
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 131
3.2.4
Hapus Terminal Diagram Sequence:
Admin
:Form_Admin
:AksesServer Activity
: service
: Terminal
1) tampil halaman Admin 2) Tekan list ubah Terminal
3) Tampil halamanDataTerminal 4) Pilih data yang akan dihapus
5) tekan menu hapus
6) Cek Id terminal 7) Lakukan query hapus
8) Hapus Data 9) Hasil query
10) tampil pesan sukses
Kelas Analisis:
AksesServerActivity FormAdmin
Service
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
FormAdmin
Interface
Halaman utama setelah Admin berhasil Login
2.
AksesServerActivity
Interface
Halaman yang akan menampilkan daftar terminal yang ada
3.
service
Controller
Kelas ini sebagai controller yang mengatur proses penghapusan data pada tabel terminal
4.
Tabel Terminal
Entity
Berfungsi menyimpan seluruh data terminal
Terminal
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 132
3.2.5
Logout Diagram Sequence:
: Form_admin
Admin
: Menu_utama
1) Tampil halaman Admin 2) Tekan Menu Logout 3) tampil Menu_utama
Kelas Analisis:
Form_admin
Menu_utama
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
Form_Admin
Interface
Halaman utama setelah Admin berhasil Login
2.
Menu_utama
Interface
Halaman setelah Admin berhasil keluar dari sistem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 133
3.2.6
Cari Jalur Diagram Sequence:
: Menu_utama
User
: DepthFirst Search
: User
: Graph
: Edge
: Stack : Vertex
1) Tampil halaman utama 2) Tekan Menu User 3) tampil form CariJalur
4) isikan data terminal awal, terminal akir(tujuan) 5) tekan tombol Cari 6) Pencarian Jalur 7) Pencarian Jalur 8) Pencarian Jalur 9) Pencarian Jalur 10) Pencarian Jalur 11) Pencarian Jalur 12) Pencarian Jalur 13) Pencarian Jalur 14) Pencarian Jalur 15) Pencarian Jalur 16) Hasil Penelusuran 17) tekan tombol Visualisasi 18) Visualisasi Jalur
Kelas Analisis:
User
Menu_utama
DepthFirstSearch
Map_activity
Vertex
Edge
Stack
Rute
: Rute : mapActivity
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 134
Kelas Analisis No
Nama kelas / tabel
Tipe
Deskripsi
1.
Menu_utama
Interface
Halaman utama sistem
2.
User
Interface
Halaman user untuk mencari jalur yang ada
3.
DepthFirstSearch
Entity
Melakukan pencarian jalur
4.
Graph
Entity
Kelas untuk menambah data vertex(terminal) dan Edge( jalur)
5.
Rute
Entity
Kelas yang berisi daftar vertex(terminal)
6.
Stack
Entity
Kelas yang digunakan saat penelusuran jalur
7.
Edge
Entity
Kelas yang digunakan saat penelusuran jalur
8.
Vertex
Entity
Kelas yang berisi daftar List vertex(Terminal)
9.
Map_activity
Entity
Kelas yang mengelola visualisasi yang terintegrasi dengan Google Map.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN 4 4
Model Desain
4.1 4.1.1
Travice Web Server Login Form login diisikan oleh Admin diawal akan masuk ke dalam sistem. Isian
dari form login adalah username dan password. Form login ditunjukan pada gambar berikut ini :
Keterangan Gambar : a : Diisi dengan nama Admin b : Diisi dengan password Admin c : Tombol Login
135
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 136
4.1.2
Tambah Data Terminal
Keterangan Gambar a : diisi dengan nama terminal b : diisi dengan nama kota sesuai yang ada d dropdown menunya c : diisi dengan longitude suatu tempat d : diiisi dengan latitude suatu tempat e : tombol simpan
4.1.3
Ubah Data Terminal
Keterangan Gambar a : diisi dengan nama terminal yang akan dirubah b : diisi dengan nama kota sesuai yang ada d dropdown menunya c : diisi dengan longitude suatu tempat yang akan dirubah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 137
d : diiisi dengan latitude suatu tempat yang akan dirubah e : tombol simpan f: Id terminal yang didapat dari data terminal yang akan diupdate bersifat readonly jadi tidak dapat dirubah 4.1.4
Hapus Data Terminal Hanya terdapat tombol hapus seperti ini
yang berfungsi untuk
menghapus menghapus data terminal yang dimaksud 4.1.5
Tambah Data Jalur
Keterangan gambar : a : diisi dengan terminal awal sesuai list yang ada b : diisi dengan terminal akir sesuai list yang ada c : diisi dengan jarak antar terminal d : tombol simpan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 138
4.1.6
Ubah Data Jalur
Keterangan gambar : a : diisi dengan terminal awal sesuai list yang ada b : diisi dengan terminal akir sesuai list yang ada c : diisi dengan jarak antar terminal d : tombol simpan e : Id jalur yang didapat dari data jalur yang akan diupdate bersifat readonly jadi tidak dapat dirubah 4.1.7
Hapus Data Jalur Hanya terdapat tombol hapus seperti ini
yang berfungsi untuk
menghapus menghapus data trayek yang dimaksud 4.1.8
Tambah Data Trayek
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 139
Keterangan gambar : a : diisi nama jalur b : diisi nama PO Bus c : diisi dengan nama trayek d : diisi Harga per KM e : diisi dengan jenis f : diisi dengan jam keberangkatan g : diisi dengan jam tiba h : tombol simpan 4.1.9
Ubah Data Trayek
Keterangan gambar : a : diisi nama jalur b : diisi nama PO Bus c : diisi dengan nama trayek d : diisi Harga per KM e : diisi dengan jenis f : diisi dengan jam keberangkatan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 140
g : diisi dengan jam tiba h : tombol simpan i : Id trayek yang didapat dari data trayek yang akan diupdate bersifat readonly jadi tidak dapat dirubah 4.1.10 Hapus Data Trayek Terdapat tombol hapus seperti ini
yang berfungsi untuk menghapus
data trayek yang dimaksud 4.1.11 Logout Admin memilih menu Logout untuk keluar dari sistem. 4.2 4.2.1
Travice Mobile Login
Keterangan Gambar : a : Diisi dengan nama Admin b : Diisi dengan password Admin c : Tombol Login d : Tombol reset
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 141
4.2.2
Tambah Terminal
Keterangan Gambar a : diisi dengan nama terminal b : diisi dengan nama kota sesuai yang ada d dropdown menunya c : diisi dengan longitude suatu tempat d : diiisi dengan latitude suatu tempat e : tombol simpan 4.2.3
Ubah Terminal
Keterangan Gambar a : diisi dengan nama terminal b : diisi dengan nama kota sesuai yang ada d dropdown menunya c : diisi dengan longitude suatu tempat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 142
d : diiisi dengan latitude suatu tempat e : tombol simpan yang berfungsi menyimpan data yang telah dirubah 4.2.4
Hapus Terminal Terdapat menu hapus terminal. Admin cukup memilih menu tersebut maka
data terminal akan dihapus 4.2.5
Logout Admin memilih menu Logout, maka Admin akan keluar dari sistem
4.2.6
Cari Jalur
Keterangan Gambar : a : memilih terminal awal(asal) yang ada di dropdown b : memilih terminal akir(tujuan) yanga ada di dropdown c ; tombol cari jalur d : hasil pencarian akan ditampilkan pada kolom ini e : tombol visualisasi jalur
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN 5
5
Implementasi Usecase
5.1
Travice Web Server Sistem Travice Web Server ini terdapat 4 menu pokok yaitu menu Terminal, Jalur, Trayek, Logout. Sebelum mengakses ke 4 menu pokok tersebu Admin harus Login ke dalam sistem. Admin memiliki hak akses untuk mengelola data terminal, jalur, trayek. Admin bertugas mengelola data tersebut agar sistem dapat berjalan sebagai mana mestinya.
5.1.1
Login
Form Login ini digunakan oleh Admin untuk dapat mengakses sistem Travice Web Server. Admin harus melakukan login terlebih dahulu agar dapat melakukan perubahan pada data diserver. Jika Admin tidak melakukan proses
143
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 144
login dengan benar(memasukan username dan password yang sesuai) maka akan muncul pesan peringatan sebagai berikut :
Apabila Admin berhasil Login maka akan ada pesan sebagai berikut :
5.1.2
Tambah Data Terminal
Pada tampilan form terminal ini data-data yang perlu dimasukan adalah nama terminal, Kota, Longitude, Latitude. Jika data-data yang harusnya diisikan masih kosong atau pun tidak sesuai format inputan maka akan ada pesan peringatan seperti di bawah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 145
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 146
Jika semua data sudah diisi dan sesuai dengan format maka saat tombol disimpan akan muncul pesan seperti gambar berikut setelah Admin menekan tombol simpan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 147
5.1.3
Ubah Data Terminal Untuk dapat merubah data terminal, Admin harus berada pada form
terminal. Kemudian menekan tombol
pada data yang akan diubah. Maka akan
tampil data sesuai data yang akan dirubah. Kemudian lakukan perubahan sesuai kebutuhan.
Saat data selesai diubah dan Admin menekan tombol Simpan maka akan muncul pesan :
5.1.4
Hapus Data Terminal Untuk dapat merubah data terminal, Admin harus berada pada form
terminal. Kemudian menekan tombol
pada data terminal tertentu yanga akan
dihapus.Jika proses penghapusan berhasil maka akan muncul pesan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 148
5.1.5
Tambah Data Jalur
Pada tampilan form jalur ini data-data yang perlu dimasukan adalahterminal awal, termina akir, dan jarak. Jika data-data yang harusnya diisikan masih kosong atau pun tidak sesuai format inputan maka akan ada pesan peringatan seperti di bawah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 149
Jika data sudah lengkap dan sesuai dengan format maka akan ada pesan seperti gambar berikut setelah Admin menekan tombol simpan
5.1.6
Ubah Data Jalur Untuk dapat merubah data jalur, Admin harus berada pada form jalur.
Admin kemudian menekan tombol
pada data yang akan diubah. Maka akan
tampil data sesuai data yang akan dirubah. Kemudian lakukan perubahan sesuai kebutuhan.
Saat data selesai diubah dan Admin menekan tombol Simpan maka akan muncul pesan :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 150
5.1.7
Hapus Data Jalur Untuk dapat menghapus data Jalur, Admin harus berada pada form Jalur.
Kemudian menekan tombol
pada data yang akan dihapus. Jika daata berhasil
dihapus maka akan muncul pesan
5.1.8
Tambah Data Trayek
Pada tampilan form Trayek ini data-data yang perlu dimasukan adalah Jalur, PO Bus, nama trayek, harga per Km, jenis. Jika data-data yang harusnya diisikan masih kosong atau pun tidak sesuai format inputan maka akan ada pesan peringatan seperti di bawah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 151
Jika data sudah lengkap dan sesuai dengan format maka akan ada pesan seperti gambar berikut setelah Admin menekan tombol simpan.
5.1.9
Ubah Data Trayek Untuk dapat merubah data trayek, Admin harus berada pada form trayek.
Admin kemudian menekan tombol
pada data yang akan diubah. Maka akan
tampil data sesuai data yang akan dirubah. Kemudian lakukan perubahan sesuai kebutuhan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 152
Saat data selesai diubah dan Admin menekan tombol Simpan maka akan muncul pesan :
5.1.10 Hapus Data Trayek Untuk dapat merubah data Trayek, Admin harus berada pada form trayek. Kemudian menekan tombol dihapus maka akan muncul pesan
pada yang akan dihapus. Jika data berhasil
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 153
5.1.11 Logout Saat Admin menekan menu Logout maka akan muncul pesan saat Admin berhasil Logout.
5.2
Travice Mobile Sistem Travice Mobile memiliki 2 level pengguna. Level pertama adalah Admin, dan user ke-2 adalah user. Pada menu Admin terdapat 3menu utama, yaitu tambah terminal, ubah terminal, dan logout. Sebelum mengakses ke 3 menu utama tersebut Admin harus Login ke dalam sistem. Admin memiliki hak akses untuk mengelola data terminal secara mobile. Admin bertugas mengelola data tersebut agar sistem dapat berjalan sebagai mana mestinya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 154
5.2.1
Login 1.
Form Login ini digunakan oleh Admin untuk dapat mengakses sistem Travice Mobile. Admin harus melakukan login terlebih dahulu agar dapat melakukan perubahan pada data diserver. Jika Admin tidak melakukan proses login dengan benar(memasukan username dan password yang sesuai) maka akan muncul pesan peringatan sebagai berikut :
Apabila Admin berhasil Login maka akan ada pesan sebagai berikut :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 155
5.2.2
Tambah Terminal
Pada tampilan form terminal ini data-data yang perlu dimasukan adalah nama terminal, Kota, Longitude, Latitude. Jika data-data yang diisikan sudah benar dan sesuai format saat tombol simpan ditekan maka akan muncul pesan yang menginformasikan bahwa data berhasil disimpan.
Jika Admin menekan tombol Posisi maka pada bagian field Longtitude dan Latitude akan otomatis terisi.
5.2.3
Ubah Terminal Saat akan merubah data terminal yang ada, Admin masuk ke menu Ubah
terminal. Kemudian akan muncul data – data terminal yang ada di database. Pilih terminal yang akan dirubah datanya. Kemudian isikan data yang akan dirubah sesuai dengan kebutuhan. Pada tampilan form terminal ini data-data yang perlu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 156
dimasukan adalah nama terminal, Kota, Longitude, Latitude. Jika data-data yang diisikan sudah benar dan sesuai format saat tombol simpan ditekan maka akan menampilkan pesan yang menginformasikan bahawa data berhasil disimpan.
5.2.4
Hapus Terminal Saat akan merubah data terminal yang ada, Admin masuk ke menu Ubah
terminal. Kemudian akan muncul data – data terminal yang ada di database. Pilih menu hapus untuk menghapus data terminal tertentu. Saat data berhasil dihapus maka akan muncul pesan yang menginformasikan bahwa data berhasil dihapus.
5.2.5
Logout Admin menekan list Logout pada halaman admin maka akan keluar dari
sistem, kemudian muncul pesan bahwa yang barusan dilakukan adalah Logout.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 157
5.2.6
Cari Jalur
User perlu memasukan Terminal awal(asal) dan Terminal akir(tujuan) untuk dapat menemukan jalur yang ada. User perlu menekan tombol Cari agar jalur yang ditemukan dapat ditampilkan pada textarea pada sistem. Saat user ingin melihat visualisasi jalur maka user menekan tombol Visualisasi terlebih dahulu.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN 6 6
Implementasi File Diagram kelas keseluruhan dapat dilihat pada halaman 40 sampai 41 pada bagian diagram kelas. Pada lampiran 6 ini memberikan daftar implementasi file berdasar pada diagram kelas.
6.1
Travice Web Server
No Usecase
Nama kelas / tabel
Tipe
Nama File
1.
Login
Form_login Login_control Form_Terminal Tabel Admin
Interface Controller Interface Entity
Form_login.php Login_control.php Form_Terminal.php Tabel Admin
2.
Tambah Form_Terminal Terminal Simpan_terminal_control
Interface
Form_Terminal.php
Tabel Terminal 3.
4.
5.
6.
Ubah Form_Terminal Terminal Form_Edit_Terminal
Controller Simpan_terminal_control.php Entity
Tabel Terminal
Interface
Form_Terminal.php
Interface
Form_Edit_Terminal.php
Edit_Terminal_controller
Controller Edit_Terminal_controller.php
Tabel Terminal
Entity
Tabel Terminal
Hapus Form_Terminal Interface Form_Terminal.php Terminal Hapus_Terminal_controller Controller Hapus_Terminal_controller.php
Tambah Jalur
Ubah
Tabel Terminal
Entity
Tabel Terminal
Form_Jalur
Interface
Form_Jalur.php
Simpan_jalur_control
Controller Simpan_jalur_control.php
Tabel jalur
Entity
Tabel jalur
Form_jalur
Interface
Form_jalur.php
158
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 159
Jalur
7.
8.
9.
Hapus Jalur
Tambah Trayek
Ubah trayek
10. Hapus Trayek
11. Logout
Form_Edit_jalur
Interface
Edit_jalur_controller
Controller Edit_jalur_controller.php
Tabel jalur
Entity
Tabel jalur
Form_jalur
Interface
Form_jalur.php
Hapus_jalur_controller
Controller Hapus_jalur_controller.php
Tabel jalur
Entity
Tabel jalur
Form_Trayek
Interface
Form_Trayek.php
Simpan_Trayek_control
Controller Simpan_Trayek_control.php
Tabel Trayek
Entity
Tabel Trayek
Form_Trayek
Interface
Form_Trayek.php
Form_Edit_Trayek
Interface
Form_Edit_Trayek.php
Edit_Trayek_controller
Controller Edit_Trayek_controller.php
Tabel trayek
Entity
Tabel trayek
Form_Trayek
Interface
Form_Trayek.php
Hapus_Trayek_controller
Controller Hapus_Trayek_controller.php
Tabel Trayek
Entity
Tabel Trayek
Form_Terminal
Interface
Form_Terminal.php
Form_login
Interface
Form_login.php
Kelas-kelas interface sebagai berikut: form_edit_jalur ID :textlabel id_jlr :textfield Terminal awal : textlabel nm_terminal :option value Terminal akir : textlabel nm_terminal_akir : option value jarak : textlabel harga_terminal : textfield Ubah : button
Form_Edit_jalur.php
form_edit_terminal ID : textlabel id_term:textfield Nama Terminal:textlabel nm_term:textfield Kota: textlabel kota:option value Longtitude: textlabel longi: textfield Latitude: textlabel lat: textfield Simpan: button
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 160
form_edit_trayek ID :textlabel id_trayek:textfield Jalur:textlabel id_jalur: option value PO BUS: textlabel PO_BUS:option value Nama Trayek: textlabel nama_trayek: textfield Harga per KM: textlabel harga_trayek: textfield Jenis: textlabel jenis:option value Simpan: button form _login Username: textlabel username: textfield Password: textlabel password: password login: button
form _jalur Terminal awal : textlabel nm_terminal :option value Terminal akir : textlabel nm_terminal_akir : option value jarak : textlabel harga_terminal : textfield Simpan: button form__terminal Nama Terminal:textlabel nm_term:textfield Kota: textlabel kota:option value Longtitude: textlabel longi: textfield Latitude: textlabel lat: textfield Simpan: button
form_edit_trayek Jalur:textlabel id_jalur: option value PO BUS: textlabel PO_BUS:option value Nama Trayek: textlabel nama_trayek: textfield Harga per KM: textlabel harga_trayek: textfield Jenis: textlabel jenis:option value Simpan: button Entity merupakan nama tabel dari basisdata yang digunakan. Entity disini merupakan nama tabel dari basisdata karena pada Travice Web Server, yang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 161
berfungsi sebagai entitas(entity) adalah tabel yang bersangkutan. Untuk kelas bertipe controler akan dijabarkan sebagai berikut : 1. Kelas Login_control.php Tujuan : mencocokan username dan password yang dimasukan pada form login oleh Admin Algoritma : 1. Baca inputan username dan password dari Admin 2. Lakukan query pencocokan pada tabel Admin($sql) 3. Jika data cocok maka atur sesion berdasar username dan pasword Listing : $username = $_POST['username']; $password = $_POST['password']; $sql = mysql_query("SELECT * FROM admin WHERE nama='$username' && password='$password'"); $num = mysql_num_rows($sql); if ($num == 1) { // login benar // $_SESSION['user'] = $username; session_register("user"); $_SESSION['passwd'] = $password; session_register("passwd"); ?>
2. Simpan_terminal_Control.php Tujuan : Menambah data terminal yang ada. Algoritma : 1. Baca inputan nama terminal, kota, longitude, latitude. 2. Lakukan query $sqlSimpan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 162
Listing : $sqlSimpan = "INSERT INTO terminal (nama_terminal, kota, longitude, latitude) values('$txtnmterminal','$txtkota','$txtlon','$txtlat')";
3. Edit_terminal_Controler.php Tujuan : Mengubah data terminal yang ada. Algoritma : 1. Baca inputan nama terminal, kota, longitude, latitude berdasar id. 2. Lakukan query $sqlUbah. Listing : $sqlUbah = "UPDATE terminal ='$txtnmterminal', kota ='$txtkota', longitude = '$txtlon', latitude = '$txtlat' where id = '$kode_ubah'";
set
nama_terminal
mysql_query($sqlUbah) or die("Gagal Perintah SQL".mysql_error());
4. Hapus_terminal_Controler.php Tujuan : Hapus terminal berdasar id terminal Algoritma : 1. Baca inputan id_teminal 2. Lakukan query $sqlHapus Listing : $sqlHapus = "DELETE FROM terminal '$kode_hapus'"; mysql_query($sqlHapus) or die("Gagal Perintah SQL" . mysql_error());
where
id
=
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 163
5. Simpan_jalur_Control.php Tujuan : Menambah data jalur yang ada. Algoritma : 1. Baca inputan terminal_awal, terminal_akir, jarak 2. Lakukan query $sqlSimpan. Listing : $sqlSimpan = "INSERT INTO jalur (terminal_awal, terminal_akir, jarak) values('$txtnmterminal','$txtnmterminal_akir','$txtharga')"; mysql_query($sqlSimpan) or die("Gagal Perintah SQL" . mysql_error());
6. Edit_jalur_Controler.php Tujuan : Mengubah data jalur yang ada. Algoritma : 1. Baca inputan terminal_awal, terminal_akir, jarak berdasar id_jalur. 2. Lakukan query $sqlUbah. Listing : $sqlUbah = "UPDATE jalur set ='$txtnmterminal', terminal_akir='$txtnmterminal_akir', jarak = '$txtharga' where id_jalur = '$kode_ubah'"; mysql_query($sqlUbah) or die("Gagal Perintah SQL".mysql_error());
7. Hapus_jalur_Controler.php Tujuan : Hapus jalur berdasar id jalur
terminal_awal
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 164
Algoritma : 1. Baca inputan id_jalur 2. Lakukan query $sqlHapus Listing : $sqlHapus = "DELETE FROM jalur where id_jalur = '$kode_hapus'"; mysql_query($sqlHapus) or die("Gagal Perintah SQL" . mysql_error());
8. Simpan_trayek_Control.php Tujuan : Menambah data trayek yang ada. Algoritma : 1. Baca inputan id_jalur, id_PO, nama_trayek, harga, , jenis, jam berangkat, jam tiba. 2. Lakukan query $sqlSimpan. Listing : $sqlSimpan = "INSERT INTO trayek (id_jalur, id_PO, nama_trayek, harga_km, jenis, jam_brkt, jam_tiba) values('$xid_jalur','$xPO_BUS','$xnama_trayek','$xharga_km','$xjenis', '$xberangkat','$xtiba')"; mysql_query($sqlSimpan) or die("Gagal Perintah SQL" . mysql_error());
9. Edit_trayek_Controler.php Tujuan : Mengubah data jalur yang ada. Algoritma : 1. Baca inputan id_jalur, id_PO, nama_trayek, harga, jenis,jam berangkat, jam tiba berdasar id.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 165
2. Lakukan query $sqlUbah. Listing : $sqlUbah = "UPDATE trayek set id_jalur ='$xid_jalur', id_PO ='$xPO_BUS', nama_trayek = '$xnama_trayek', harga_km = '$xharga_trayek', jenis = '$xjenis', jam_brkt = '$xberangkat', jam_tiba = '$xtiba' where id_trayek = '$xid_trayek'"; mysql_query($sqlUbah) or die("Gagal Perintah SQL".mysql_error());
10. Hapus_trayek_Controler.php Tujuan : Hapus jalur berdasar id terminal Algoritma : 3. Baca inputan id_trayek, id_jalur_id_PO 4. Lakukan query $sqlHapus Listing : $sqlHapus = "DELETE FROM trayek where id_trayek = '$kode_trayek' AND id_jalur='$kode_jalur' AND id_PO='$kode_PO'"; mysql_query($sqlHapus) or die("Gagal Perintah SQL" . mysql_error());
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 166
6.2
Travice Mobile
No
Usecase
Nama kelas / tabel
Tipe
Nama File
1.
Login
Menu Utama
Interface
Menu_utama.java
PHP_login
Interface
PHP_Login.java
Login_db
Controler
Login_db.php
FormAdmin
Interface
FormAdmin.java
Tabel Admin
Entity
Tabel Admin
Form_Admin
Interface
Form_Admin.java
Tambah_terminal
Interface
Tambah_terminal.java
service
Controller
Service.php
Tabel Terminal
Entity
Tabel Terminal
Form_Admin
Interface
Form_admin.java
AksesServerActivity
Interface
AksesServerActivity.java
Ubah_terminal
Interface
Ubah_terminal.java
service
Controller
Service.php
Tabel Terminal
Entity
Tabel Terminal
FormAdmin
Interface
Form_admin.java
AksesServerActivity
Interface
AksesServerActivity.java
service
Controller
Ubah_terminal.java
Tabel Terminal
Entity
Service.php
2.
3.
4.
Tambah Terminal
Ubah Terminal
Hapus Terminal
Tabel Terminal 5.
Logout
Form_Admin
Interface
Form_admin.java
Menu_utama
Interface
Menu_utama.java
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 167
6.
Cari Jalur
Menu_utama
Interface
Menu_utama.java
User
Entity
User.java
DepthFirstSearch
Entity
DepthFirstSearch.java
Graph
Entity
Graph.java
Rute
Entity
Rute.java
MapActivity
Entity
MapActivity.java
Edge
Entity
Edge.java
Stack
Entity
Stack.java
Vertex
Entity
Vertex.java
Interface menrupakan tampilan antramuka sistem. Kelas –kelas interface sebagai berikut : login txtUser : TextView user : EditText txtPass : TextView pass : EditText button1 : Button Reset : Button
tambah_terminal label_nama_term: TextView EditText02: EditText label_kota: TextView label_kota : Spinner label_long : TextView editText1: EditText label_lat : TextView editText2: EditText Button01: Button
ubah_terminal label_nama_term: TextView EditText02: EditText label_kota: TextView label_kota : Spinner label_long : TextView EditText03 : EditText label_lat : TextView EditText04 : EditText Button01: Button
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 168
Entity merupakan nama tabel dari basisdata yang digunakan maupun kelas yang berfungsi dalam Travice mobile. Untuk kelas bertipe controler akan dijabarkan sebagai berikut : 1. Logindb.php Tujuan : controler saat Admin melakukan login Algoritma : 1. melakukan pencocokan berdasar query $query 2. Mengembalikan nilai 1 jika data benar(sesuai dengan username dan password Admin). Mengembalikan nilai 0 jika data salah(tidak sesuai dengan username dan password Admin) Listing : $query = "SELECT * from admin WHERE nama='$user' && password='$pass'"; $hasil = mysql_query($query)or die ("KESALAHAN QUERY : ".mysql_error());
{
if(mysql_num_rows($hasil)==1) { echo 1;} else echo 0;}
2. Service.php Tujuan : sebagai kelas controler insert, update, delete pada data terminal. Algoritma : 1. cek apakah yang dimaksud Admin adalah $ct=="INS" atau $ct=="DEL" atau $ct=="EDT" 2. Jika ya lakukan query $sql sesuai parameter(INS untuk insert, DEL untuk delete, EDT untuk edit) 3. Saat berhasil disimpan/dihapus/diubah maka $result==1 dan mengembalikan pesan data berhasil disimpan/dihapus/diubah if($ct=="INS")
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 169
{ $sql = "SELECT id_kota FROM kota WHERE nama_kota='$kota'"; $result = mysql_query($sql); $id_kota; while($r = mysql_fetch_array($result)) { $id_kota = $r[id_kota]; } $sql = "insert into terminal (nama_terminal,kota,latitude, longitude) values('$nama_terminal','$id_kota','$latitude','$longtitude')"; $result = mysql_query($sql)or die ("KESALAHAN QUERY : ".mysql_error()); if($result==1) { echo "Data berhasil disimpan "; } else { echo "Data gagal disimpan"; } } else if($ct=="DEL") { $sql = "delete from terminal where id=$kode"; $result = mysql_query($sql); if($result==1) { echo "Data berhasil dihapus "; } else { echo "Data gagal dihapus"; } } else if($ct=="EDT") { $sql = "update terminal set nama_terminal = '$nama', kota = '$kota',latitude = '$lat', longitude = '$long' where id=$id"; $result = mysql_query($sql)or die ("KESALAHAN QUERY : ".mysql_error()); if($result==1) { echo "Data berhasil disimpan "; }
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 170
else { echo "Data gagal disimpan"; } } Kelas Entity yang digunakan pada Travice mobile: DepthFirstSearch DepthFirstSearch() <> - List semuaRute; - Rute rute; - Stack stack; +search(Vertex, Vertex) : void - getEdgeYangBelumDikunjungi(Vertex) : Edge +getSemuaRute() : List
1. search(Vertex, Vertex) Tujuan : pencarian jalur menggunakan algoritma DFS Algoritmanya : 1. Lakukan perulangan untuk mengecek kondisi stack, jika stack tidak kosong pop data yang ada di stack. 2. Buat obyek rute untuk menyimpan rute yang ada dari suatu jalur. 3. Lakukan perulangan untuk mencari jalur – jalur yang memungkinkan 4. Buat obyek kunjung untuk mengetahui apakah jalur tersebut sudah pernah dikunjungi atau belum. 5. Jika kunjung bernilai null hapus data dari rute dan pop data dari stack. 6. Jika tidak lakukan penelusuran untuk masing – masing jalur sehingga semua jalur yang memungkinkan dari suatu terminal ke terminal lain Listing : public void search(Vertex start, Vertex end) { while (!stack.isEmpty()) { Langkah pertama stack.pop(); } rute = new Rute(start, end); Langkah kedua stack.push(start); Langkah ketiga while (!stack.isEmpty()) { Langkah Edge kunjung = getEdgeYangBelumDikunjungi(stack.peek()); keempat if (kunjung == null) { Langkah kelima rute.removeLast(); stack.pop(); } else { Langkah keenam rute.addNode(kunjung.getDestination()); kunjung.setSudahDikunjungi(true);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 171
if (kunjung.getDestination().equals(end)) { semuaRute.add(rute.clone()); Rute cloneRute = rute.clone(); Vertex s = null; int i = 0; while (cloneRute.getNodes().size() > 1) { Vertex n = cloneRute.getNodes().get( cloneRute.getNodes().size() - 2); if (i == 0) { Rute finish = new Rute(n, end); finish.addNode(end); n.addLokalRute(finish); } else { for (int j = 0; j < s.getLokalRute().size(); j++) { Rute baru = s.getLokalRute().get(j).clone(); baru.getNodes().add(0, n); baru.setStart(n);/ n.addLokalRute(baru); } } s = n; cloneRute.removeLast(); i++; Lanjutan Langkah keenam
} rute.removeLast(); } else if (!kunjung.getDestination().getLokalRute().isEmpty()) { Rute cloneRute = rute.clone(); Vertex s = null; int j = 0; while (cloneRute.getNodes().size() > 1) { Vertex n = cloneRute.getNodes().get( cloneRute.getNodes().size() - 2); Rute baru; if (j == 0) { for (int i = 0; i < kunjung.getDestination() .getLokalRute().size(); i++) { baru = kunjung.getDestination().getLokalRute() .get(i).clone(); Rute newRute = cloneRute.clone(); newRute.append(baru); baru.getNodes().add(0, n); baru.setStart(n); if (!n.localRuteAda(baru)) { n.addLokalRute(baru.clone()); if (!ruteSudahTerdaftar(newRute)) { semuaRute.add(newRute); } } } } else {
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 172
for (int k = 0; k < s.getLokalRute().size(); k++) { baru = s.getLokalRute().get(k).clone(); baru.getNodes().add(0, n); baru.setStart(n); n.addLokalRute(baru); } } s = n; cloneRute.removeLast(); j++;
Lanjutan Langkah keenam
} rute.removeLast(); } else { stack.push(kunjung.getDestination()); } }
}
- getEdgeYangBelumDikunjungi(Vertex) Tujuan : Mengecek data jalur yang belum dikunjungi Algoritma : 1. Lakukan perulangan untuk jalur – jalur yang ada 2. Jika jalur belum dikunjungi Beri nilai isAda = false Lakukan perulangan selama kurang dari rute yang ada Jika jalur sudah ada pada rute maka set isAda = true dan keluar dari perulangan Jika tidak maka mengembalikan nilai jalur 3. Jika pernah dikunjungi apakah sama dengan rute yang kita pending Jika ya maka kita masukan ke rute sementara 4. Mengembalikan nilai null saat semua jalur sudah dikunjungi Listing : for (int i = 0; i < peek.getEdges().size(); i++) { if (!peek.getEdge(i).isSudahDikunjungi()) { boolean isAda = false; for (int j = 0; j < rute.getNodes().size(); j++) { if (peek.getEdge(i).getDestination() .equals(rute.getNodes().get(j))) { pending.add(peek); isAda = true; break; } } if (!isAda) { return peek.getEdge(i);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 173
} } else { for (Vertex v : pending) { if (v.equals(peek.getEdge(i).getDestination())) { List r = ruteSementara.get(v.getLabel()); boolean first = false; if (r == null) { r = new ArrayList(); first = true; } r.add(rute.clone()); if (first) ruteSementara.put(v.getLabel(), r); } } } } return null;
+getSemuaRute() Tujuannya : Mendapat semua jalur yang ada dalam suatu graph Algoritma : 1. List semua rute yang ada 2. Kembalikan nilai semuaRute yang memungkinkan Listing : public List getSemuaRute() { return semuaRute; }
Edge Edge(Vertex, double) <> - Vertex dest; - double id; - boolean flag; +setSudahDikunjungi(boolean) +getDestination() +getId() +isSudahDikunjungi()
: void :Vertex : double :boolean
+setSudahDikunjungi(boolean) Tujuan : menandai jalur yang sudah dikunjungi Algoritma : beri tanda pada jalur yang dikunjungi Listing : public void setSudahDikunjungi(boolean flag) { this.flag = flag; }
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 174
+getDestination() Tujuan : memberi informasi arah dari suatu jalur Algoritma : mengembalikan nilai dari arah suatu jalur Listing : public Vertex getDestination() { return dest; }
Graph Graph() <> +List vertices; + addVertex(String, String,Double, Double) +addEdge(String, String, double) +getDetail(Vertex, Vertex) +resetPencarian()
: void : void :void : List> : void
+addVertex(String, String,Double, Double) Algoritma : 1. buat parameter String label, String lokasi, double lat, double longti 2. Masukan nilai semua parameter tersebut kedalam vertices(list vertex) Listing : public void addVertex(String label, String lokasi, double lat, double longti) { vertices.add(new Vertex(label, lokasi, lat, longti)); }
+addEdge(String, String, double) Tujuan : menambah jalur pada graph Algoritma : 1. Buat obyek startNode 2. Buat obyek edge1 3. Isi obyek startNode dengan edge1 untuk mendapat informasi arah dan id dari suatu jalur Listing : Vertex startNode = getVertex(label1); Vertex destination = getVertex(label2); if (startNode == null || destination == null) { System.err.println("node asal atau node tujuan tidak ditemukan. pastikan anda "+ "menginputkan nama node yang benar"); return; } Edge edge1 = new Edge(destination, id); startNode.addEdge(edge1);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 175
+getDetail(Vertex, Vertex) Tujuan : mendapat nilai harga dan jalur dari suatu vertex(terminal) Algoritma : 1. Dapatkan harga untuk masing – masing jalur dari suatu terminal(vertex) 2. Buat obyek temp untuk menampung harga dan id suatu jalur 3. Lakukan perulangan untuk semua jalur yang ada dalam suatu terminal 4. Mengembalikan nilai temp untuk jalur tertentu Listing : String url = "http://10.0.2.2/android/terminal.php?ct=SEL_harga&id_jalur="; List> temp = new ArrayList>(); for (Edge e : A.getEdges()) { if (e.getDestination().getLabel().equals(B.getLabel())) { JSONParser jParser = new JSONParser(); JSONObject json = jParser.AmbilJson(url + e.getId()); try { JSONArray array = json.getJSONArray("harga"); for (int i = 0; i < array.length(); i++) { JSONObject ar = array.getJSONObject(i); String namaPo = ar.getString("nama_po"); String jenis = ar.getString("jenis"); String harga = ar.getString("harga"); HashMap<String, String> map = new HashMap<String, String>(); map.put("nama_po", namaPo); map.put("jenis", jenis); map.put("harga", harga); temp.add(map); } } catch (JSONException ex) { // TODO Auto-generated catch block ex.printStackTrace(); } } } return temp;
+resetPencarian() Tujuan : melakukan pengaturan ulang pada pencarian agar pencarian sebelumnya tidak diperhitungakan. Algoritma : 1. lakukan perulangan sebanyak jumlah vertex 2. buat obyek v bertipe Vertex. Obyek v akan menyimpan data vertex yang ada. 3. buat perulangan sejumlah vertex yang ada 4. buat perulangan untuk merubah semua daftar jalur yang sudah dikunjungi menjadi false 5. hapus data pada lokalrute Listing : for (int i = 0; i < vertices.size(); i++) {
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 176
Vertex v = vertices.get(i); for (int j = 0; j < v.getEdges().size(); j++) { v.getEdge(j).setSudahDikunjungi(false); } v.getLokalRute().clear(); }
Stack Stack <> - List data; +Push(Vertex) +Pop() +Peek()
: void : vertex :vertex
+Push() Tujuan : memasukan data ke dalam stack Algoritma : 1. Buat atribut List data; 2. Tambahan data kedalam List Listing : private List data; data.add(p);
+pop() Tujuan : mengeluarkan data dari stack Algoritma : keluarkan data dari stack Listing : Vertex hasil = data.get(data.size() - 1); data.remove(data.size() - 1); return hasil;
+peek() Tujuan : mendapatkan data posisi teratas dari stack Algoritma : cari posisi teratas dari stack Listing : return data.get(data.size() - 1);
Vertex Vertex <> Vertex(String, String, double, double)<> Vertex(String, String)<> - List<Edge> edges; -String label; -String lokasi; -List lokalRute;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 177
-double Latitude; -double Longtitude; +addEdge(Edge) +addLokalRute(Rute) +getEdges() +getLokalRute()
:void : void : List<Edge> : List
+addEdge(Edge) Tujuan : menambahkan jalur yang ada Algoritma : 1. Buat atribut edges bertipe List 2. Masukan jalur ke edges Listing : List<Edge> edges; edges.add(edge);
+addLokalRute(Rute) Tujuan : menambahkan lokalrute dari sutu jalur yang menuju tujuan pencarian Algoritma : menambahkan lokalRute dari suatu jalur Listing : public void addLokalRute(Rute rute) { lokalRute.add(rute); }
+getEdge() Tujuan : mendapat daftar jalur yang ada Algoritma : membuat daftar jalur yang ada Listing : public List<Edge> getEdges() { return edges; }
+getLokalRute() Tujuan : mendapatkan informasi lokalRute suatu jalur Algoritma : membuat daftar lokalRute yang ada Listing : public List getLokalRute() { return lokalRute; }