BAB III ANALISA DAN PERANCANGAN
Bab ini akan menjelaskan analisa sistem dan perancangan sebuah prototipe aplikasi android untuk melakukan pencarian rute terpendek dengan menggunakan algoritma dijkstra serta merancang sebuah website berbasis online untuk melakukan pengentrian data noda beserta jalur yang menghubungkan antara noda-noda tersebut.
3.1.
Analisa Sistem
Sistem ini akan menggunakan android untuk menampilkan hasil akhir dari perhitungan dalam pencarian rute antara dua titik yang berbeda. Sedangkan proses perhitungan akan dilakukan di dalam server untuk mendapatkan hasil
lebih cepat
dibandingkan dengan
melakukan
perhitungan langsung pada android milik user. Hal itu dikarenakan jumlah dari noda-noda yang diperlukan cukup banyak sehingga penulis memilih untuk menggunakan server sebagai media penyimpanan basis data dan untuk pemrosesan data. Untuk mendapatkan titik awal dan titik akhir diperlukan sebuah global positioning system (GPS). Didalam aplikasi android ini akan menggunakan Google Maps API sebagai alat navigasi untuk menentukan koordinat node yang terdekat dari titik awal dan titik akhir.
3.2.
Analisa Kebutuhan
Masalah utama yang perlu diselesaikan di dalam pembuatan aplikasi ini adalah untuk menerapkan algoritma dijkstra ke dalam sistem jalur transportasi dengan menjadikan halte atau stasiun (tempat pemberhentian)
35
http://digilib.mercubuana.ac.id/
36
sebagai node-node titik awal dan titik akhir. Selain itu diperlukan statistik yang berupa jarak yang ditempuh dan jumlah transit yang diperlukan pada setiap pencarian rute perjalanan.
3.2.1 Analisa Kebutuhan Fungsional
Didalam sistem aplikasi perencanaan rute diperlukan fungsi dengan spesifikasi sebagai berikut:
Mampu untuk mencari rute terpendek.
Mampu untuk menghitung jarak yang ditempuh.
Mampu untuk menampilkan pergantian rute atau trayek.
3.2.2 Analisa Kebutuhan Non Fungsional 3.2.2.1 Kebutuhan Perangkat Keras
Perangkat keras (hardware) yang dibutuhkan di dalam pembuatan aplikasi ini yaitu :
Telepon Genggam Pintar (Smartphone) yang berbasis Android
Server (Shared Hosting)
PC / Laptop untuk mendevelop aplikasi tersebut.
3.2.2.2 Kebutuhan Perangkat Lunak
Sedangkan untuk perangkat lunak (software) dibutuhkan spesifikasi sebagai berikut:
Android dengan versi sistem operasi minimal Jellybean
CPanel dengan versi PHP minimal 5.5.9
Browser dengan kemampuan HTML5
http://digilib.mercubuana.ac.id/
37
3.3.
Perancangan Sistem
3.3.1 Perancangan Pembuatan Sistem (Use Case Diagram)
Gambar 3.1 Use Case Sistem Perhitungan Rute Terpendek
http://digilib.mercubuana.ac.id/
38
1. Use Case Melihat Rute Angkutan
Tabel 3.1 Deskripsi Use Case Melihat Jalur Angkutan.
Nama Use Case
Use Case Melihat Jalur Angkutan
Nama Aktor
User
Deskripsi
Pada tahap ini user dapat melihat jalur dari masing-masing angkutan.
Pra Kondisi
Diperlukan request POST untuk list dari angkutan yang ada di dalam database.
Skenario
User dapat memilih angkutan pada spinner dan akan muncul rute yang dilewatinya.
Hasil
Rute dari angkutan tersebut akan tampil pada map.
2. Use Case Melihat Peta Angkutan
Tabel 3.2 Deskripsi Use Case Melihat Peta Angkutan
Nama Use Case
Use Case Melihat Peta Angkutan
Nama Aktor
User, Admin
Deskripsi
User dapat melihat peta keseluruhan dari jalur dan node yang tersimpan di dalam database
Pra Kondisi
Perlu inisialisasi map, marker dan polyline terlebih dahulu.
Skenario
Node dan Jalur akan tampil jika data dapat dikirim dengan sukses melalui JSON.
Hasil
Seluruh Node dan Jalur akan tampil pada peta.
http://digilib.mercubuana.ac.id/
39
3.
Use Case Melihat Rute Terpendek
Tabel 3.3 Deskripsi Use Case Melihat Rute Terpendek
Nama Use Case
Usecase Melihat Rute Terpendek
Nama Aktor
User
Deskripsi
Pada tahap ini akan ditampilkan hasil dari perhitungan yang dilakukan oleh sistem
Pra Kondisi
Untuk menampilkan rute terpendek dibutuhkan data dari hasil perhitungan sebelumnya.
Skenario
Sistem akan menampilkan rute terpendek antara dua node yang ditentukan oleh user sebelumnya.
Hasil
Terdapat dua node berserta jalur yang dilewati diantaranya beserta nama angkutan yang digunakan.
4. Use Case Menetukan Simpul Awal dan Akhir
Tabel 3.4 Deskripsi Use Case Menetukan Simpul Awal dan Akhir
Nama Use Case
Use Case Menentukan Simpul Awal dan Akhir
Nama Aktor
User
Deskripsi
Pada tahap ini sistem akan menentukan simpul yang terdekat dengan node yang dibuat oleh user.
Pra Kondisi
Diperlukan koordinat dari node awal dan node akhir yang dibuat oleh user
Skenario
Jika node berada diantara dua simpul maka akan dibuat simpul baru yang memiliki bobot terdekat dengan node.
Hasil
Simpul awal dan simpul akhir dibuat.
http://digilib.mercubuana.ac.id/
40
5. Use Case Melakukan Perhitungan
Tabel 3.5 Deskripsi Use Case Melakukan Perhitungan
Nama Use Case
Usecase Melakukan Perhitungan
Nama Aktor
Sistem
Deskripsi
Pada tahap ini sistem akan melakukan perhitungan bobot setiap jalur unutk menentukan rute terpendek yang akan ditampilkan
Pra Kondisi
Sistem membutuhkan sebelumnya dua tipe node, yaitu node awal dan node akhir (tujuan)
Skenario
Sistem akan melakukan perhitungan anatar dia node menggunakan algoritma dijkstra.
Hasil
Jika proses perhintungan berhasil maka akan dikirim status berhasil berserta data yang akan ditampilkan
6. Use Case Membuat Jalur Rute
Tabel 3.6 Deskripsi Use Case Membuat Jalur Rute
Nama Use Case
Usecase Membuat Jalur Rute
Nama Aktor
Sistem
Deskripsi
Pada tahap ini sistem akan melakukan membuat jalur rute.
Pra Kondisi
Sistem membutuhkan hasil perhitungan sebelumnya untuk membuat jalur rute.
Skenario
Jalur rute akan dibuat beserta dengan tanda untuk perpindahan angkutan umum.
Hasil
Data yang berisi jalur dan angkutan yang dapat digunakan.
http://digilib.mercubuana.ac.id/
41
7. Use Case Mengelola Data Node
Tabel 3.7 Deskripsi Use Case Mengelola Data Node
Nama Use Case
Usecase Mengelola Data Node
Nama Aktor
Admin
Deskripsi
Pada usecase ini admin dapat melakukan penambahan, perubahan, dan penghapusan data node.
Pra Kondisi
Untuk mengakses halaman tersebut perlu dilakukan proses login.
Skenario
Untuk penambahan node dapat dilakukan pada halaman utama langsung pada map.
Hasil
Admin dapat menambah node baru, mengedit atau menghapus node yang lama.
8. Use Case Mengelola Data Jalur
Tabel 3.8 Deskripsi Use Case Mengelola Data Jalur
Nama Use Case
Usecase Mengelola Data Jalur
Nama Aktor
Admin
Deskripsi
Pada usecase ini admin dapat melakukan penambahan, perubahan, dan penghapusan data jalur.
Pra Kondisi
Untuk mengakses halaman tersebut perlu dilakukan proses login dan pada saat melakukan penambahan jalur diperlukan dua buah node sebelumnya.
Skenario
Untuk penambahan jalur dapat dilakukan pada halaman utama langsung pada map.
http://digilib.mercubuana.ac.id/
42
Hasil
Admin dapat menambah jalur baru, mengedit atau menghapus jalur yang lama.
9. Use Case Mengelola Data Angkutan
Tabel 3.9 Deskripsi Use Case Mengelola Data Angkutan
Nama Use Case
Usecase Mengelola Data Angkutan
Nama Aktor
Admin
Deskripsi
Pada usecase ini admin dapat melakukan penambahan, perubahan, dan penghapusan data angkutan.
Pra Kondisi
Untuk mengakses halaman tersebut perlu dilakukan proses login.
Skenario
Untuk penambahan rute angkutan dapat dengan mengklik node pada map dihalaman tambah angkutan.
Hasil
Admin dapat menambah angkutan baru, mengedit atau menghapus angkutan yang lama.
10. Use Case Mengelola Data User
Tabel 3.10 Deskripsi Use Case Mengelola Data User
Nama Use Case
Usecase Mengelola Data User
Nama Aktor
Admin
Deskripsi
Pada usecase ini admin dapat melakukan penambahan, perubahan, dan penghapusan data user.
Pra Kondisi
Untuk mengakses halaman tersebut perlu dilakukan proses login.
http://digilib.mercubuana.ac.id/
43
Skenario
Untuk penambahan user hanya dapat dilakukan pada.
Hasil
Admin dapat menambah user baru, mengedit atau menghapus user yang lama.
11. Use Case Login
Tabel 3.11 Deskripsi Use Case Login
Nama Use Case
Usecase Login
Nama Aktor
Admin
Deskripsi
Proses login dilakukan sebelum masuk pada halaman utama.
Pra Kondisi
User yang akan melakukan login harus memiliki user account di database sebelumnya.
Skenario
Jika login gagal akan diberitahukan kesalahan yang terjadi.
Hasil
Admin dapat melekukan aktivitas selanjutnya setelah melakukan proses login.
3.3.2 Perancangan Alur Kerja (Activity Diagram)
1. Diagram Activity Login
Proses kegiatan saat melakukan login pada website. Pada saat melakukan proses login akan di cek username dan password jika tidak seseuai dengan data yang berada di database akan diberikan peringatan (warning).
http://digilib.mercubuana.ac.id/
44
Gambar 3.2 Diagram Activity Login
2. Diagram Activity Pengelolaan Node
Proses kegiatan pengelolaan data node, didalamnya terdapat proses untuk menambahkan, mengubah dan menghapus data node dari database. Jika menghapus satu node akan juga menghapus jalur-jalur yang terkait dengan node tersebut (delete on cascade). Didalamnya termasuk juga untuk pengelolaan tipe node. Untuk melakukan pengelolaan data node, admin sebelumnya harus melakukan proses login terlebih dahulu.
http://digilib.mercubuana.ac.id/
45
Gambar 3.3 Diagram Activity Mengelola Node
3. Diagram Activity Mengelola Jalur
Proses kegiatan pengelolaan data jalur, didalamnya terdapat proses untuk menambahkan, mengubah dan menghapus data jalur dari database. Untuk melakukan pengelolaan data node, admin sebelumnya harus melakukan proses login terlebih dahulu.
http://digilib.mercubuana.ac.id/
46
Gambar 3.4 Diagram Activity Mengelola Jalur
4. Diagram Activity Mengelola Angkutan
Proses kegiatan pengelolaan data angkutan, didalamnya terdapat proses untuk menambahkan, mengubah dan menghapus data angkutan dari database. Untuk melakukan pengelolaan data angkutan, admin sebelumnya harus melakukan proses login terlebih dahulu.
http://digilib.mercubuana.ac.id/
47
Gambar 3.5 Diagram Activity Mengelola Angkutan
5. Diagram Activity Mengelola User
Proses kegiatan pengelolaan data angkutan, didalamnya terdapat proses untuk menambahkan, mengubah dan menghapus data angkutan dari database. Untuk melakukan pengelolaan data angkutan, admin sebelumnya harus melakukan proses login terlebih dahulu.
http://digilib.mercubuana.ac.id/
48
Gambar 3.6 Diagram Activity Mengelola User
6. Diagram Activity Mencari Rute Terpendek
Dalam kegiatan mencari rute terpendek, pertamakali user diharuskan untuk menentukan koordinat awal dan koordinat akhir pada map yang akan dikirimkan pada sistem kemudian akan dilakukan perhitungan dan data akan dikirim kembali kepada user dengan menampilkan rute hasil perhitungan menggunakan metode dijkstra.
http://digilib.mercubuana.ac.id/
49
Gambar 3.7 Diagram Activity Mencari Rute Terpendek
7. Diagram Activity Melihat Jalur Angkutan
User dapat melihat jalur dari setiap trayek angkutan dengan memilih angkutan dari list yang disediakan. Setelah user memilih angkutan, map akan diupdate dengan menampilkan data dari jalur yang ditempuh oleh angkutan tersebut pada map.
http://digilib.mercubuana.ac.id/
50
Gambar 3.8 Diagram Activity Melihat Map Angkutan
8. Diagram Activity Melihat Peta Angkutan
User dapat melihat jalur-jalur dan node-node yang tersimpan di dalam database. Saat membuka halaman tersebut, sistem akan mengambil data-data di database dan menampilkannya pada map berupa marker untuk node dan berupa polyline untuk jalur antara node.
http://digilib.mercubuana.ac.id/
51
Gambar 3.9 Diagram Activity Melihat Jalur Angkutan
3.3.3 Perancangan Interaksi Antar Objek (Seqence Diagram)
1. Sequence Diagram Mengelola Data User
Gambar 3.10 Diagram Sequence Mengelola Data User
http://digilib.mercubuana.ac.id/
52
2. Sequence Diagram Mengelola Data Node
Gambar 3.11 Diagram Sequence Mengelola Data Node
3. Sequence Diagram Mengelola Data Jalur
Gambar 3.12 Diagram Sequence Mengelola Data Jalur
http://digilib.mercubuana.ac.id/
53
4. Sequence Diagram Mengelola Data Angkutan
Gambar 3.13 Diagram Sequence Mengelola Data Angkutan
5. Sequence Diagram Melihat Peta Angkutan
Gambar 3.14 Diagram Sequence Melihat Peta Angkutan
http://digilib.mercubuana.ac.id/
54
6. Sequence Diagram Melihat Jalur Angkutan
Gambar 3.15 Diagram Sequence Melihat Jalur Angkutan
7. Sequence Diagram Mencari Jalur Terpendek
Gambar 3.16 Diagram Sequence Melihat Jalur Terpendek
http://digilib.mercubuana.ac.id/
55
3.3.4 Perancangan Basis Data (Class Diagram)
Gambar 3.17 Class Diagram
Terdiri enam tabel yang dibutuhkan didalam pengembangan aplikasi perancangan rute terpendek ini. Lima tabel diperlukan di dalam proses perhitungan aplikasi dan satu tabel, tabel user yang digunakan untuk mengautentifikasi user yang ingin mengakses halaman web.
http://digilib.mercubuana.ac.id/
56
3.3.5 Perancangan Antar Muka
3.3.5.1 Perancangan Antar Muka Website
1. Rancangan Tampilan Menu Login
Gambar 3.18 Rancangan Tampilan Menu Login
2. Rancangan Tampilan Halaman Utama
Gambar 3.19 Rancangan Tampilan Halaman Utama
http://digilib.mercubuana.ac.id/
57
3. Rancangan Tampilan Tabel Data
Gambar 3.20 Rancangan Tampilan Tabel Data
4. Rancangan Tampilan Form Tambah/ Edit Data
Gambar 3.21 Rancangan Tampilan Form Tambah/Edit Data
http://digilib.mercubuana.ac.id/
58
5. Rancangan Tampilan Pencarian Rute
Gambar 3.22 Rancangan Tampilan Pencarian Rute
3.3.5.2 Perancangan Antar Muka Aplikasi Android
1. Rancangan Tampilan Splashscreen
Gambar 3.23 Rancangan Tampilan Splashsreen
http://digilib.mercubuana.ac.id/
59
2. Rancangan Tampilan Menu Utama
Gambar 3.24 Rancangan Tampilan Menu Utama
3. Rancangan Tampilan Menu Maps
Gambar 3.25 Rancangan Tampilan Menu Maps
http://digilib.mercubuana.ac.id/
60
4. Rancangan Tampilan Menu Cari Rute
Gambar 3.26 Rancangan Tampilan Menu Cari Rute
5. Rancangan Tampilan Menu Info Angkutan
Gambar 3.27 Rancangan Tampilan Menu Info Angkutan
http://digilib.mercubuana.ac.id/
61
6. Rancangan Tampilan Menu Tentang
Gambar 3.28 Rancangan Tampilan Menu Tentang
http://digilib.mercubuana.ac.id/