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
PERANCANGAN APLIKASI TEMPAT DAN INFORMASI WISATA AIR KLATEN MENGGUNAKAN ALGORITMA DIJKSTRA BERBASIS MOBILE Rizal Malik1), Kusnawi2), 1) 2)
Teknik Informatika STMIK AMIKOM Yogyakarta Jl Ringroad Utara, Condongcatur, Depok, Sleman, Yogyakarta Indonesia 55283 Email :
[email protected]),
[email protected])
mampu memberikan rekomendasi kepada pengguna tentang wisata air lain yang berada di Klaten agar wisatawan atau turis tertarik untuk mengunjungi wisata air yang lain.
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.
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 objekobjek diskrit dan hubungan antara 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]
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.
Gambar 1. Jaringan Jalan Raya di Propinsi Jawa Tengah 2.2 Algoritma Dijkstra
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.
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
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
1
dua buah simpul yang melalui beberapa simpul tertentu (intermediate shortest path). [3]
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.
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.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.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.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.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]
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. 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
Gambar 3. Use Case
2
2.6.2 Class Diagram Diagram ini menggamabarkan struktur aplikasi berorientasi objek dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun aplikasi.
2.7.3
Gambar 6. Relasi Antar Tabel Struktur Basis Data Tabel 1. Struktur Tabel Wisata
Gambar 4. Class Diagram User 2.7 Perancangan Basis Data 2.7.1 Diagram ERD
Kolom Id_wisata
Tipe Data Integer
Nama_wisata Kedalaman Fasilitas Foto Latitude Longitude
Varchar(100) Varchar(15) Text Varchar(50) Double Double
Key Primary auto_increment -
Key,
Tabel 2. Struktur Tabel Jarak Kolom Wisata_dari
Tipe Integer
Wisata_sampai
Integer
Jarak
Integer
Key Primary Key, Foreign Key Primary Key, Foreign Key -
Tabel 3. Struktur Tabel Foto Kolom Id_foto
Tipe Data Integer
Nama_foto Deskripsi Id_wisata Id_user Moderasi Tanggal
Varchar(50) Text Integer Integer Integer Datetime
Key Primary auto_increment Foreign Key Foreign Key -
Key,
Tabel 4. Struktur Tabel Review Tipe Data Integer
Id_wisata
Integer
Rating Isi Tanggal
Integer Text Datetime
Key Primary Key Primary Key -
Key,
Foreign
Key,
Foreign
Tabel 5. Struktur Tabel User
Gambar 5. Diagram ERD 2.7.2
Kolom Id_user
Relasi Antar Tabel
3
Kolom Id_user
Tipe Data Integer
Username Password Nama Email
Varchar(50) Varchar(50) Varchar(100) Varchar(100)
Key Primary auto_increment -
Key,
Kolom Username Password
Tabel 6. Struktur Tabel Admin Tipe Data Key Varchar(10) Primary Key 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]
7
Biasa
Menu about
8
Member
Menu profil
Pengujian Menampilkan hasil dari perhitungan Dijsktra Pengisian data user Melakukan login user Pengisian data rate dan review Melakukan upload foto
Fungsi List item wisata
Skenario Menekan item wisata
Status
Biasa
Tab wisata
Menampilkan list wisata
Berhasil
2
Biasa Biasa
4
Biasa
Menu login
5
Biasa
Menu registrasi
6
Biasa
Menu update
Menampilkan list galeri Menampilkan peta wisata Masuk ke dalam tampilan login Masuk ke dalam tampilan registrasi Menampilkan notifikasi update jika ada update
Berhasil
3
Tab galeri Tab peta
Menekan tab wisata Menekan tab galeri Menekan tab peta Menekan menu item login Menekan menu item registrasi Menekan menu item update
Hasil Masuk ke dalam detail wisata
Status Berhasil
Pengguna Biasa
No 1
Pengguna Biasa
Fungsi Marker Wisata
1
Biasa
Info window wisata
N o 1
Penggun a Biasa
Fungsi
Skenario
Hasil
Status
Tombol ikon fasilitas
Menekan ikon fasilitas
Berhas il
2
Biasa
Tombol lokasi
Menekan tombol lokasi
3
Biasa
Tab galeri wisata
4
Biasa
Tab review wisata
5
Biasa
Tab rekomenda si wisata
Menekan tab galeri wisata Menekan tab review wisata Menekan tab rekomenda si wisata
6
Biasa
Menu login
Menekan menu item login
7
Biasa
Menu registrasi
Menekan menu item registrasi
8
Biasa
Menu about
Menekan menu item about
9
Member
Menu Profil
Menekan menu item profil
Menampilk an pop up keterangan fasilitas Masuk ke dalam tampilan lokasi Menampilk an galeri wisata Menampilk an review wista Menampilk an rekomendas i wisata dan jarak Masuk ke dalam tampilan login Masuk ke dalam tampilan registrasi Masuk ke dalam tampilan about Masuk ke dalam tampilan profil
Fungsi List item foto
Skenario Menekan item foto
Hasil Masuk ke dalam detail foto
Status Berhasil
Tabel 11. Pengujian White Box Peta Wisata Skenario Menekan marker wisata Menekan info window
Hasil Memunculkan info window
Status Berhasil
Masuk ke dalam detail wisata
Berhasil
Tabel 12. Pengujian White Box Detail Wisata
Tabel 8. Pengujian White Box Menu Utama Hasil
Berhasil
Tabel 10. Pengujian White Box List Foto
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 dicompile ulang. [7]
Skenario
ke
No 1
Berhasil
Fungsi
Berhasil
Tabel 9. Pengujian White Box List Wisata
Berhasil Berhasil Berhasil
Pengguna
ke
Pengguna Biasa
Hasil Berhasil
N o 1
terbaru Masuk dalam tampilan about Masuk dalam tampilan profil
No 1
Tabel 7. Pengujian Black Box Menu Pengujian algoritma Dijkstra Pengujian registrasi Pengujian login Pengujian rate dan review Pengujian upload foto
Menekan menu item about Menekan menu item profil
Berhasil Berhasil
Berhasil
Berhasil
4
Berhas il
Berhas il Berhas il Berhas il
Berhas il
Berhas il
Berhas il
Berhas il
Registras i
Tabel 13. Pengujian White Box Galeri Wisata No 1
Pengguna Biasa
Fungsi Icon plus (+)
2
Biasa
List item foto
3
Member
Icon plus (+)
4
Member
Tombol upload
Skenario Menekan icon plus (+) Menekan item Menekan icon plus (+) Menekan tombol upload
Hasil Muncul pop up untuk login Masuk ke halaman detail foto Muncul pop up pilih foto galeri Melakukan proses upload
Status Berhasil
Pengguna Biasa
Fungsi Post review
2
Biasa
List item review
Skenario Menekan tombol post Menekan item review
3
Member
Post review
Menekan tombol post
4
Member
Edit review
Menekan review pengguna
Hasil Muncul pop up untuk login Masuk ke halaman tampilan profil pengguna Melakukan proses tambah review Melakukan proses ubah review
Pengguna Biasa
Fungsi List item wisata
Skenario Menekan item wisata
Hasil Masuk ke halaman tampilan detail wisata
Berhasil
Penggun a Biasa
Fungsi
Skenario
Hasil
Status
Tombol registras i
Menampilka n notifikasi username sudah ada
Berhasi l
2
Biasa
Tombol registras i
Menekan tombol registrasi (Usernam e sudah ada) Menekan tombol registrasi (Usernam e belum ada)
Masuk ke halaman menu utama
Berhasi l
No 1
Pengguna Biasa
2
Member
3
Member
4
Member
No 1
Pengguna Biasa
Fungsi Tombol kritik dan saran
2
Biasa
Tombol laporkan masalah
Berhasil
Status Berhasil
Tabel 20. Pengujian White Box Profil
Berhasil
Berhasil
Berhasil
Pengguna Biasa
Fungsi Marker wisata
Skenario Menekan marker wisata
Hasil Menampilkan nama wisata dan tombol rute
Penggun a Biasa
Status Berhasil
Skenario
Hasil
Status
Tombol nama penggun a
Menekan text nama penggun a
Menampilka n halaman profil
Berhasi l
Perangkat Xiaomi Redmi 2
Asus Zenfone 4
Tabel 18. Pengujian White Box Login Penggun a Biasa
Fungsi
2
Biasa
Tombol login
3
Biasa
Tombol
Tombol login
Skenari o Menekan tombol login (Login Berhasil) Menekan tombol login (Login Gagal) Menekan
Hasil
Status
Masuk ke halaman tampilan menu utama
Berhasi l
Menampilka n notifikasi gagal login
Berhasi l
Masuk
Berhasi
ke
Hasil Masuk ke halaman detail foto Masuk ke halaman edit profil Menampilan pilihan delete
Status Berhasil
Melakukan proses hapus foto
Berhasil
Berhasil
Berhasil
Skenario Menekan tombol kritik dan saran Menekan tombol laporkan masalah
Hasil Masuk ke aplikasi pengiriman email Masuk ke aplikasi pengiriman email
Status Berhasil
Berhasil
2.10 Implementasi Pada Perangkat Lain Tabel 22. Penerapan Pada Perangkat Lain
Fungsi
N o 1
Dialog delete
Skenario Menekan list item foto Menekan menu edit profil Menekan bebereapa detik item foto Menekan tombol delete
Tabel 21. Pengujian White Box About
Tabel 17. Pengujian White Box Detail Foto N o 1
Fungsi List item foto Menu edit profil List item foto
Status Berhasil
Tabel 16. Pengujian White Box Lokasi Wisata No 1
l
N o 1
Tabel 15. Pengujian White Box Rekomenadsi Wisata No 1
halaman tampilan registrasi
Tabel 19. Pengujian White Box Registrasi Berhasil
Tabel 14. Pengujian White Box Review Wisata No 1
text registrasi
Infinix Hot 2
Lenovo A390i
5
Spesifikasi OS : Android 4.4.4 Ukuran : 4,7” CPU:Quad-Core 1,2GHz RAM : 1GB OS : Android 4.4.2 Ukuran : 4” CPU: Dual-Core 1,2GHz RAM : 1 GB OS : Android 6.0 Ukuran : 5” CPU:Quad Core 1,3GHz RAM : 2GB OS : Android 4.0.4 Ukuran : 4” CPU : Dual-Core 1GHz RAM : 512MB
Keterangan Aplikasi dapat berjalan baik dengan tampilan yang sesuai tanpa ada perubahan. Aplikasi dapat berjalan baik dengan tampilan yang sesuai tanpa ada perubahan Aplikasi dapat berjalan baik dengan tampilan yang sesuai tanpa ada perubahan Aplikasi dapat berjalan baik dengan tampilan yang sesuai tanpa ada perubahan
3. Kesimpulan
Biodata Penulis
Setelah melakukan penelitian tentang wisata air klaten berbasi mobile dapat diambil beberapa kesimpulan. Berikut beberapa hal yang dapat disimpulkan :
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.
1. 2.
3.
4.
5.
Dalam penelitian ini telah dihasilkan perancangan aplikasi Wisata Air Klaten. 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. Aplikasi Wisata Air Klaten ini menggunakan algoritma Dijkstra yang digunakan untuk menghitung jarak dari satu wisata ke wisata yang lain. 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. 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.
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.
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
6