PERANCANGAN APLIKASI TEMPAT DAN INFORMASI WISATA AIR
KLATEN MENGGUNAKAN ALGORITMA DIJKSTRA
BERBASIS MOBILE
NASKAH PUBLIKASI
diajukan oleh
Rizal Malik
12.11.6418
kepada
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AMIKOM YOGYAKARTA
YOGYAKARTA
2016
1
PERANCANGAN APLIKASI TEMPAT DAN INFORMASI WISATA AIR
KLATEN MENGGUNAKAN ALGORITMA DIJKSTRA
BERBASIS MOBILE
Rizal Malik
1), Kusnawi
2),
1) 2)
Teknik InformatikaSTMIK AMIKOM Yogyakarta
Jl Ringroad Utara, Condongcatur, Depok, Sleman, Yogyakarta Indonesia 55283
Email : rizal.ma@students.amikom.ac.id1), khusnawi@amikom.ac.id2)
Abstract - Klaten as one tourist destination offers a
range of beauty tourism with beautiful panorama that is located between the mountains of Mount Merapi and the Thousand covering a variety of places and attractions of Nature. Although the Klaten district does not have a coastline, but Klaten has many water attractions. One of the most famous is Umbul Ponggok located in the village Ponggok, Polanharjo, Klaten, Central Java.
The researcher tried to promote tours of water in Klaten. The use of Dijkstra's algorithm in this application using a search of the shortest path from a particular node to all other nodes (single-source shortest path). By using the Dijkstra's algorithm the user can see the water travel anywhere near water attractions selected.
The results of this study itself in the form of application "Wisata Air Klaten" which provide information and recommendations to users about water in Klaten. By providing recommendations to users on other water attractions that are expected Klaten tourists interested in visiting other water attractions.
Keywords - Graph, Dijkstra's algorithm, Single-source
shortest path, Water recreation, Klaten, Android 1. Pendahuluan
Klaten adalah sebuah kota yang unik, keunikan kota ini karena berada diantara dua kota budaya dimana sektor pariwisatanya berkembang sangat pesat dan telah menjadi tujuan utama destinasi wisatawan, yaitu Yogyakarta dan Surakarta.
Wisata tirta atau wisata air merupakan kegiatan wisata yg berhubungan langsung dengan air atau dilakukan di perairan pantai, danau, dan sebagainya. Klaten merupakan kabupaten yang memiliki banyak objek wisata air berupa sumber mata air (umbul). Salah satu yang paling dikenal adalah Umbul Ponggok yang berlokasi di Desa Ponggok, Polanharjo, Klaten, Jawa Tengah.
Aplikasi Wisata Air Klaten ini diharapkan mampu memberikan informasi tentang wisata air yang berada di Kabupaten Klaten sehingga masyarakat akan lebih mudah untuk mengetahui lokasi dan informasi pada wisata air yang akan dikunjungi. Aplikasi ini diharapkan
mampu memberikan rekomendasi kepada pengguna tentang wisata air lain yang berada di Klaten agar wisatawan atau turis tertarik untuk mengunjungi wisata air yang lain.
2. Landasan Teori 2.1 Teori Graf
Teori graph merupakan pokok bahasan yang sudah tua usianya namun memiliki banyak terapan sampai saat ini. Graph digunakan untuk merepresentasikan objek-objek diskrit dan hubungan antara objek-objek-objek-objek tersebut. Representasi visual dari graph adalah dengan menyaakan objek sebagai noktah, bulatan atau titik, sedangkan hubungan antara objek dinyatakan dengan garis. Sebagai contoh, peta jaringan jalan raya yang menghubungkan sejumlah kota di propinsi jawa tengah. Sesungguhnya peta tersebut adalah sebuah graph, dimana kota disebut sebagai bulatan sedangkan jalan dinyatakan sebagai garis. [1]
Gambar 1. Jaringan Jalan Raya di Propinsi Jawa Tengah
2.2 Algoritma Dijkstra
Algoritma Dijkstra ditemukan oleh Edsger Wybe Dijkstra. Algoritma ini merupakan algoritma yang paling terkenal untuk mencari lintasan terpendek. Algoritma Dijkstra diterapkan pada graf berarah, tetapi selalu benar untuk graf tak-berarah. [2]
Ada beberapa kasus pencarian lintasan terpendek yang diselesaikan menggunakan algoritma Dijkstra, yaitu: pencarian lintasan terpendek antara dua buah simpul tertentu (a pair shortest path), pencarian lintasan terpendek antara semua pasangan simpul (all pairs shortest path), pencarian lintasan terpendek dari simpul tertentu ke semua simpul yang lain (single-source shortest path), serta pencarian lintasan terpendek antara
2 dua buah simpul yang melalui beberapa simpul tertentu (intermediate shortest path). [3]
Algoritma ini menggunakan strategi greedy sebagai berikut:
“Pada setiap langkah, ambil sisi yang berbobot minimum yang menghubungkan sebuah simpul yang sudah terpilih dengan sebuah simpul lain yang belum terpilih. Lintasan dari simpul asal ke simpul yang baru haruslah merupakan lintasan yang terpendek diantara semua lintasannya ke simpul-simpul yang belum terpilih.”
2.3 Android
Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang mencakup sistem operasi, middleware dan aplikasi. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka. Awalnya, Google Inc. membeli Android Inc. yang merupakan pendatang baru yang membuat piranti lunak untuk smartphone. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorium dari 34 perusahaan piranti keras, piranti lunak, dan telekomunikasi termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvdia. [4]
2.4 System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC), merupakan metodologi umum dalam pengembangan sistem yang menandai kemajuan usaha analisis dan desain. SDLC meliputi fase-fase yaitu : identifikasi dan seleksi proyek, inisiasi dan perencanaan proyek, analisis, desain, implementasi dan pemeliharaan. [5]
Gambar 2. Waterfall 2.5 Analisis SWOT
Dalam pembuatan aplikasi ini penulis menggunakan analisis SWOT (Strength, Weakness, Opportunities, Threat) yaitu dengan menganalisa kekuatan, kelemahan, peluang dan ancaman dari pembuatan aplikasi belajar bahasa sasak menggunakan teks dan gambar berbasis mobile. Dari analisa yang dilakukan dapat dihasilkan gambaran mengenai kekuatan, kelemahan, peluang dan ancaman dari aplikasi ini. Hasil dari analisa tersebut adalah sebagai berikut
2.5.1 Analisia Kekuatan (Strength)
Merupakan analisis dengan melihat kekuatan yang ada dalam aplikasi Wisata Air Klaten. Dimana aplikasi ini terdapat fitur berupa review, rating, dan upload foto sehingga lebih mudah memberikan informasi tentang wisata air Klaten antar pengguna.
2.5.2 Analisa Kelemahan (Weakness)
Merupakan analisis yang melihat pada kelemahan aplikasi. Beberapa kelemahan yang terdapat pada aplikasi ini yaitu aplikasi ini membutuhkan koneksi internet untuk menampilkan informasi gambar dan review wisata. Aplikasi ini juga membutuhkan daya penyimpanan server yang besar untuk menyimpan gambar yang diupload oleh user.
2.5.3 Analisa Peluang (Opportunities)
Analisis Peluang (Opportunities) Merupakan analisis yang melihat pada peluang dalam pembuatan aplikasi. Peluang dalam pembuatan aplikasi ini melihat jumlah pengembang aplikasi android semakin berkembang pesat. Dan juga kebutuhan masyarakat akan pariwisata meningkat dan akan menjadi kebutuhan primer kedepannya.
2.5.4 Analisa Ancaman (Threat)
Merupakan analisis yang melihat pada ancaman. Ancaman yang mungkin terjadi pada adanya aplikasi ini adalah persaingan pembuat atau pengembang aplikasi mobile. Adanya pengguna yang jahil dengan mengupload gambar yang tidak pantas atau mengganggu kinerja dari server.
2.6 Unified Modelling Language (UML)
Unified Modelling Language adalah keluarga notasi grafis yang didukung oleh model-model tunggal , yang membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang dibangun dengan menggunakan pemrograman berorientasi objek. [6]
2.6.1 Use Case Diagram
Use case diagram merupakan pemodelan untuk kelakuan (behavior) aplikasi perangkat lunak yang akan dibuat.
3 2.6.2 Class Diagram
Diagram ini menggamabarkan struktur aplikasi berorientasi objek dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun aplikasi.
Gambar 4. Class Diagram User 2.7 Perancangan Basis Data
2.7.1 Diagram ERD
Gambar 5. Diagram ERD 2.7.2 Relasi Antar Tabel
Gambar 6. Relasi Antar Tabel 2.7.3 Struktur Basis Data
Tabel 1. Struktur Tabel Wisata
Kolom Tipe Data Key
Id_wisata Integer Primary Key,
auto_increment Nama_wisata Varchar(100) - Kedalaman Varchar(15) - Fasilitas Text - Foto Varchar(50) - Latitude Double - Longitude Double -
Tabel 2. Struktur Tabel Jarak
Kolom Tipe Key
Wisata_dari Integer Primary Key, Foreign Key
Wisata_sampai Integer Primary Key, Foreign Key
Jarak Integer -
Tabel 3. Struktur Tabel Foto
Kolom Tipe Data Key
Id_foto Integer Primary Key,
auto_increment
Nama_foto Varchar(50) -
Deskripsi Text -
Id_wisata Integer Foreign Key
Id_user Integer Foreign Key
Moderasi Integer -
Tanggal Datetime -
Tabel 4. Struktur Tabel Review
Kolom Tipe Data Key
Id_user Integer Primary Key, Foreign
Key
Id_wisata Integer Primary Key, Foreign
Key
Rating Integer -
Isi Text -
Tanggal Datetime -
Tabel 5. Struktur Tabel User
Kolom Tipe Data Key
Id_user Integer Primary Key,
auto_increment
Username Varchar(50) -
Password Varchar(50) -
Nama Varchar(100) -
4 Tabel 6. Struktur Tabel Admin
Kolom Tipe Data Key
Username Varchar(10) Primary Key Password Varchar(50) -
2.8 Black Box Testing
Black box testing terfokus pada apakah unit program memenuhi kebutuhan (requirement) yang disebutkan dalam spesifikasi. Cara pengujiannya hanya dilakukan dengan menjalanan atau mengeksekusi unit atau modul, kemudian diamati apakah hasil dari unit itu sesuai dengan proses bisnis yang diinginkan. Jika ada unit yang tidak sesuai outputnya maka untuk menyelesaikannya, diteruskan pada pengujian yang kedua, yaitu white box testing. [7]
Tabel 7. Pengujian Black Box
Menu Pengujian Hasil
Pengujian algoritma Dijkstra
Menampilkan hasil dari perhitungan Dijsktra
Berhasil
Pengujian registrasi Pengisian data user Berhasil Pengujian login Melakukan login user Berhasil Pengujian rate dan
review
Pengisian data rate dan
review
Berhasil
Pengujian upload foto Melakukan upload foto Berhasil
2.9 White Box Testing
White box testing adalah cara pengujian dengan melihat ke dalam modul untuk meneliti kode-kode program yang ada, dan menganalisis apakah ada kesalahan atau tidak.
Cara ini dapat dilakukan dengan cara meninjau langsung kode program yang ditulis dalam membangun sistem informasi yang meliputi komponen-komponen berupa fungsi, prosedur, maupun modul-modul eksternal yang ada di dalamnya. Jika ada modul yang menghasilkan output yang tidak sesuai dengan proses bisnis yang dilakukan, maka baris-baris program, variable, dan parameter yang terlibat pada unit tersebut akan dicek satu persatu dan diperbaiki, kemudian di-compile ulang. [7]
Tabel 8. Pengujian White Box Menu Utama
N o
Pengguna Fungsi Skenario Hasil Status
1 Biasa Tab wisata Menekan tab wisata Menampilkan list wisata Berhasil 2 Biasa Tab galeri Menekan tab galeri Menampilkan list galeri Berhasil
3 Biasa Tab peta Menekan tab peta Menampilkan peta wisata Berhasil 4 Biasa Menu login Menekan menu item login Masuk ke dalam tampilan login Berhasil 5 Biasa Menu registrasi Menekan menu item registrasi Masuk ke dalam tampilan registrasi Berhasil 6 Biasa Menu update Menekan menu item update Menampilkan notifikasi update jika ada update Berhasil terbaru 7 Biasa Menu about Menekan menu item about Masuk ke dalam tampilan about Berhasil 8 Member Menu profil Menekan menu item profil Masuk ke dalam tampilan profil Berhasil
Tabel 9. Pengujian White Box List Wisata
No Pengguna Fungsi Skenario Hasil Status
1 Biasa List item wisata Menekan item wisata Masuk ke dalam detail wisata Berhasil
Tabel 10. Pengujian White Box List Foto
No Pengguna Fungsi Skenario Hasil Status
1 Biasa List item foto Menekan item foto Masuk ke dalam detail foto Berhasil
Tabel 11. Pengujian White Box Peta Wisata
No Pengguna Fungsi Skenario Hasil Status
1 Biasa Marker Wisata Menekan marker wisata Memunculkan info window Berhasil 1 Biasa Info window wisata Menekan info window Masuk ke dalam detail wisata Berhasil
Tabel 12. Pengujian White Box Detail Wisata
N o
Penggun a
Fungsi Skenario Hasil Status
1 Biasa Tombol ikon fasilitas Menekan ikon fasilitas Menampilk an pop up keterangan fasilitas Berhas il 2 Biasa Tombol lokasi Menekan tombol lokasi Masuk ke dalam tampilan lokasi Berhas il
3 Biasa Tab galeri wisata Menekan tab galeri wisata Menampilk an galeri wisata Berhas il
4 Biasa Tab review wisata Menekan tab review wisata Menampilk an review wista Berhas il 5 Biasa Tab rekomenda si wisata Menekan tab rekomenda si wisata Menampilk an rekomendas i wisata dan jarak Berhas il 6 Biasa Menu login Menekan menu item login Masuk ke dalam tampilan login Berhas il 7 Biasa Menu registrasi Menekan menu item registrasi Masuk ke dalam tampilan registrasi Berhas il 8 Biasa Menu about Menekan menu item about Masuk ke dalam tampilan about Berhas il 9 Member Menu Profil Menekan menu item profil Masuk ke dalam tampilan profil Berhas il
5 Tabel 13. Pengujian White Box Galeri Wisata
No Pengguna Fungsi Skenario Hasil Status
1 Biasa Icon plus (+) Menekan icon plus (+) Muncul pop up untuk login Berhasil
2 Biasa List item foto Menekan item Masuk ke halaman detail foto Berhasil 3 Member Icon plus (+) Menekan icon plus (+) Muncul pop up pilih foto galeri Berhasil 4 Member Tombol upload Menekan tombol upload Melakukan proses upload Berhasil
Tabel 14. Pengujian White Box Review Wisata
No Pengguna Fungsi Skenario Hasil Status
1 Biasa Post review Menekan tombol post Muncul pop up untuk login Berhasil 2 Biasa List item review Menekan item review Masuk ke halaman tampilan profil pengguna Berhasil 3 Member Post review Menekan tombol post Melakukan proses tambah review Berhasil 4 Member Edit review Menekan review pengguna Melakukan proses ubah review Berhasil
Tabel 15. Pengujian White Box Rekomenadsi Wisata
No Pengguna Fungsi Skenario Hasil Status
1 Biasa List item wisata Menekan item wisata Masuk ke halaman tampilan detail wisata Berhasil
Tabel 16. Pengujian White Box Lokasi Wisata
No Pengguna Fungsi Skenario Hasil Status
1 Biasa Marker wisata Menekan marker wisata Menampilkan nama wisata dan tombol rute Berhasil
Tabel 17. Pengujian White Box Detail Foto
N o
Penggun a
Fungsi Skenario Hasil Status
1 Biasa Tombol nama penggun a Menekan text nama penggun a Menampilka n halaman profil Berhasi l
Tabel 18. Pengujian White Box Login
N o Penggun a Fungsi Skenari o Hasil Status 1 Biasa Tombol login Menekan tombol login (Login Berhasil) Masuk ke halaman tampilan menu utama Berhasi l 2 Biasa Tombol login Menekan tombol login (Login Gagal) Menampilka n notifikasi gagal login Berhasi l
3 Biasa Tombol Menekan Masuk ke Berhasi
Registras i text registrasi halaman tampilan registrasi l
Tabel 19. Pengujian White Box Registrasi
N o
Penggun a
Fungsi Skenario Hasil Status
1 Biasa Tombol registras i Menekan tombol registrasi (Usernam e sudah ada) Menampilka n notifikasi username sudah ada Berhasi l 2 Biasa Tombol registras i Menekan tombol registrasi (Usernam e belum ada) Masuk ke halaman menu utama Berhasi l
Tabel 20. Pengujian White Box Profil
No Pengguna Fungsi Skenario Hasil Status
1 Biasa List item foto Menekan list item foto Masuk ke halaman detail foto Berhasil 2 Member Menu edit profil Menekan menu edit profil Masuk ke halaman edit profil Berhasil 3 Member List item foto Menekan bebereapa detik item foto Menampilan pilihan delete Berhasil 4 Member Dialog delete Menekan tombol delete Melakukan proses hapus foto Berhasil
Tabel 21. Pengujian White Box About
No Pengguna Fungsi Skenario Hasil Status
1 Biasa Tombol kritik dan saran Menekan tombol kritik dan saran Masuk ke aplikasi pengiriman email Berhasil 2 Biasa Tombol laporkan masalah Menekan tombol laporkan masalah Masuk ke aplikasi pengiriman email Berhasil
2.10 Implementasi Pada Perangkat Lain Tabel 22. Penerapan Pada Perangkat Lain
Perangkat Spesifikasi Keterangan
Xiaomi Redmi 2 OS : Android 4.4.4 Ukuran : 4,7” CPU:Quad-Core 1,2GHz RAM : 1GB Aplikasi dapat berjalan
baik dengan tampilan yang sesuai tanpa ada perubahan.
Asus Zenfone 4 OS : Android 4.4.2 Ukuran : 4” CPU: Dual-Core 1,2GHz RAM : 1 GB Aplikasi dapat berjalan
baik dengan tampilan yang sesuai tanpa ada perubahan
Infinix Hot 2 OS : Android 6.0 Ukuran : 5” CPU:Quad Core 1,3GHz RAM : 2GB Aplikasi dapat berjalan
baik dengan tampilan yang sesuai tanpa ada perubahan
Lenovo A390i OS : Android 4.0.4 Ukuran : 4” CPU : Dual-Core 1GHz RAM : 512MB Aplikasi dapat berjalan
baik dengan tampilan yang sesuai tanpa ada perubahan
6 3. Kesimpulan
Setelah melakukan penelitian tentang wisata air klaten berbasi mobile dapat diambil beberapa kesimpulan. Berikut beberapa hal yang dapat disimpulkan :
1. Dalam penelitian ini telah dihasilkan perancangan aplikasi Wisata Air Klaten.
2. Aplikasi Wisata Air Klaten ini berbasis mobile yang menggunakan 2 database yaitu SQLite dan MySQL. Database SQLite pada aplikasi ini digunakan untuk menampilkan daftar wisata dan jarak tanpa terkoneksi internet, sedangkan Database MySQL digunakan untuk menyimpan informasi pengguna, foto dan review yang dilakukan oleh pengguna.
3. Aplikasi Wisata Air Klaten ini menggunakan algoritma Dijkstra yang digunakan untuk menghitung jarak dari satu wisata ke wisata yang lain.
4. Aplikasi Wisata Air Klaten ini memberikan informasi berupa daftar wisata yang disertai dengan detail seperti kedalaman, tipe wisata air, fasilitas yang tersedia, serta lokasi dari wisata air.
5. Aplikasi Wisata Air Klaten ini memberikan rekomendasi berupa foto-foto, rating, dan review dari wisata air yang diberikan oleh pengguna lain, serta rekomendasi berupa wisata-wisata yang dekat dengan wisata air dengan menggunakan algoritma Dijkstra.
Daftar Pustaka
[1] Munir, Rinaldi. Matematika Diskrit. Bandung: Informatika. 2005
[2] Defindal, Irvan P., Ariesanda, B., dan Christoforus. Algoritma Greedy untuk Menentukan Lintasan Terpendek. Bandung. 2005
[3] Novandi, Raden Aprian Diaz. Perbandingan Algoritma Dijkstra dan Algoritma Floyd-Warshall dalam Penentuan Lintasan Terpendek (Single Pair Shortest Path). Bandung. 2007
[4] Safaat, Nazruddin. Android (Pemograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android). Bandung: Informatika. 2012
[5] Sudarmawan, dan Ariyus, Dony. Interaksi Manusia & Komputer. Yogyakarta : Andi. 2007
[6] Fowler, Martin. UML Distilled Edisi 3, Yogyakarta : Andi. 2005
[7] Fatta, Hanif Al. Analisis dan Perancangan Sistem Informasi untuk Keunggulan Bersaing Perusahaan dan Organisasi Modern. Yogyakarta: Andi. 2007
Biodata Penulis
Rizal Malik, memperoleh gelar Sarjana Komputer
(S.Kom), Jurusan Teknik Informatika STMIK AMIKOM Yogyakarta, lulus tahun 2016. Saat ini menjadi Internal SAP Consultant pada PT. Paradise Perkasa di Tangerang.
Kusnawi, memperoleh gelar Sarjana Komputer (S.Kom),
Jurusan Teknik Informatika STMIK AMIKOM Yogyakarta, lulus tahun 2004. Memperoleh gelar Master of Engineering (M.Eng) Program Pasca Sarjana Magister Teknologi Informasi Fakultas Teknik Elektro Universitas Gajah Mada Yogyakarta, lulus tahun 2009. Saat ini menjadi Dosen di STMIK AMIKOM Yogyakarta.