Anda di halaman 1dari 97

BAB I

PENDAHULUAN

1.1 Latar Belakang

Di era modern saat ini, perkembangan teknologi yang sangat pesat,

dan banyaknya warga masyarakat yang paham dan mengerti akan penggunaan

internet dalam membantu dan mempermudah kegiatan manusia sehari-hari,

seperti pencarian data, untuk komunikasi serta pencarian suatu lokasi.

Pemanfaatan internet dalam pencarian suatu lokasi sangat dibutuhkan masyarakat

dengan mobilitas yang tinggi dan kurang pahamnya rute-rute daerah tertentu.

Pencarian jalur terpendek adalah sebuah permasalahan dalam mencari

jalan diantara dua titik atau sampul dengan bobot minimal. Pencarian tempat

ibadah terdekat di pilih menggunakan algoritma djikstra karena algoritma ini

dapat menentukan jalur terpendek dari graph berbobot yang bobotnya bernilai

lebi besar dari nol (positif), dari titik awal ke semua titik yang di kehendaki,

sehingga nantinya dapat ditemukan jalur terpendek dari titik awal dan titik tujuan

yang di inputkan.

Dalam perkembangannya, saat ini teknologi informasi yang paling

berkembang adalah teknologi informasi berbasis WEB, pengguna saat ini lebih

menyukai segala sesuatu yang di kemas dalam aplikasi berbasis WEB. aplikasi

berbasis WEB mempunyai beberapa keunggulan, salah satunya yaitu aplikasi

1
tersebut ringan dan dapat di akses dengan koneksi internet dan intranet.

Sehingga pengguna dapat mengakses data atau informasi melalui smartphone

dimanapun berada.

Dalam rancangan pembuatan aplikasi berbasis WEB untuk mengetahui

tempat ibadah terdekat ini nantinya akan di tampilkan peta, fitur utama dari

aplikasi ini adalah pengoperasiannya dapat mencari lokasi tempat ibadah terdekat

dari posisi penggunanya saat itu dan juga dapat memberikan panduan jalan yang

di tempuh menggunakan metode djikstra. Pembuatan aplikasi ini di khususkan

agar para pengguna tidak kesulitan dalam mencari jalur untuk menuju lokasi

tempat ibadah tersebut.

Oleh karena itu penulis bermaksud membuat aplikasi WEB yang dapat

membantu mencari lokasi tempat ibadah terdekat, penulis memanfaatkan peta

Google maps untuk menampilkan rute yang akan di tempuh pengguna, dan

metode yang di gunakan adalah algoritma djikstra untuk menentukan rute

terpendek menuju lokasi tempat ibadah tersebut.

1.2 Perumusan Masalah

Berdasarkan latar belakang yang telah diuraikan tersebut diatas, maka

dapat disimpulkan masalah yang dihadapi adalah sebagai berikut :

2
1. Bagaimana merancang dan membangun aplikasi berbasis WEB yang

mampu memberikan informasi tentang rute terpendek dari suatu lokasi ke

lokasi yang lain.

2. Bagaimana mengimplementasikan Algoritma Dijkstra ke dalam sebuah

sistem informasi geografis sehingga dapat digunakan untuk mencari lintasan

terpendek pada suatu rute.

1.3 Batasan Masalah

Supaya pembahasan penelitian tidak menyimpang dari pokok

permasalahan yang telah dirumuskan diatas, maka terdapat batasan masalah

sebagai berikut :

Batasan masalah pada penulisan skripsi ini adalah ;

1. Bahasa pemrograman menggunakan PHP dan menggunakan Api Google

maps.

2. Sistem ini dapat merekomendasikan tempat Ibadah terdekat di Kota

Semarang dan menampilkan rute yang direkomendasikan (tidak hanya

jarak) menggunakan algoritma djikstra.

3
1.4 Tujuan Dan Manfaat

1.4.1 Tujuan :

Membuat sistem informasi pencarian tempat ibadah terdekat untuk

memudahkan masyarakat dalam mencari informasi rute terdekat

menuju tempat ibadah.

1.4.2 Manfaat :

Dengan menerapkan algoritma djikstra untuk mencari tempat ibadah

terdekat dapat membantu para masyarakat, pengguna jalan, dan lain

sebagainya terutama yang membutuhkan informasi tentang tempat

ibadah terdekat.

1.5 Metodologi Penelitian

1.5.1 obek penelitian

Objek penelitian ini adalah untuk masyarakat khususnya masyarakat

yang sedang berpergian mencari informasi tempat ibadah terdekat.

Kemudian menerapkan sistem teknologi informasi dalam penelitian ini.

1.5.2 Metode pengumpulan data

1. observasi

Metode pengumpulan data dengan melakukan pengamatan dan

observasi secara langsung terhadap objek penelitian dan melakukan

pencatatan secara sistematis terhadap fenomena yang di selidiki.

4
2. Wawancara

Yaitu suatu metode pengumpulan data dengan melakukan komunikasi

langsung terhadap objek penelitian. Dilakukan komunikasi lisan dengan

individu atau kelompok untuk mendapatkan keterangan dan informasi

yang dibutuhkan untuk melakukan penelitian.

3. Studi pustaka

Merupakan tahap pengumpulan data yang mengambil dari sumber-

sumber seperti, buku, dokumen, atau publikasi dari perguruan tinggi

lainnya

1.5.3 Metode Pengembangan Sistem

Metode yang digunakan oleh penulis dalam pengembangan sistem

informasi pencarian tempat ibadah untuk merekomendasikan tempat

terdekat menggunakan algoritma djikstra adalah metode waterfall.

Karena metode waterfall melakukan pendekatan secara sistematis dan

berurutan dalam membangun sebuah sistem.

Dengan menggunakannya metode pengembangan sistem berbasis

waterfall, maka peneliti akan menerapkan langkah-langkah dalam

pengembangan sistem, antara lain :

1. Analisa

Langkah ini merupakan analisa terhadap masalah yang terjadi.

Sehingga akan di dapat data mengenai kebutuhan sistem.

5
2. Design

Tahap selanjutnya adalah mendesain sistem. Tahap ini dibuat sebelum

tahap pembuatan aplikasi. Tujuan dari tahap ini adalah memberikan

gambaran tentang apa yang akan di kerjakan dan bagaimana

tampilannya.

3. Pembuatan Aplikasi

Tahap ini merupakan tahap dimana pembuatan perngkat lunak melalui

serangkaian program atau unit program yang di harapkan dapat

memecah masalah yang sedang di teliti.

4. Pemeliharaan

Proses ini merupakan bagian terakhir dalam metode waterfall. Sistem

dapat di implementasikan. Pemeliharaan mencakup koreksi dari

berbagai eror yang tidak di temukan pada tahap-tahap terdahulu,

perbaikan atas implementasi dan pengembangan unit sistem, serta

pemeliharaan program

6
1.6 Sistematika Penulisan

BAB I PENDAHULUAN

Berisi latar belakang masalah, perumusan masalah, tujuan dan

manfaat penelitian, metodologi penelitian dan sistematika

penulisan.

BAB II TINJAUAN PUSTAKA

Berisi tentang informasi hasil penelitian yang telah dilakukan

sebelumnya dan menghubungkan dengan masalah yang sedang

diteliti.

BAB III ANALISA DAN PERANCANGAN SISTEM

Pada bab ini akan dijelaskan mengenai analisa dan

perancangan aplikasi pencarian tempat ibadah untuk

merekomendasikan tempat terdekat menggunakan algoritma

djikstra.

BAB 1V IMPLEMENTASI SISTEM

Pada bab ini akan ada tahapan-tahapan pengembangan sistem

dan disertakan implementasi yang memberikan gambaran

tentang program yang dibuat dengan menggunakan PHP dan

MySQL

7
BAB V HASIL PENELITIAN DAN PEMBAHASAN

Pada bab ini berisi tentang hasil pembahasan dari penelitian

aplikasi pencarian tempat ibadah untuk merekomendasikan

tempat terdekat menggunakan algoritma djikstra.

BAB VI PENUTUP

Pada bab ini berisi tentang kesimpulan dan saran pembuatan

sistem.

8
BAB II

TINJAUAN PUSTAKA

2.1 Penelitian Sebelumnya

Dari penelitian sebelumnya dapat diperoleh bahan-bahan sebagai data

pendukung dalam pembuatan sebuah sistem. Sehingga dapat diketahui perbedaan

dari sistem telah dibuat atau telah dikembangkan dengan sistem yang akan

dibuat, dan dapat digunakan sebagai bahan acuan pada tinjauan pustaka maka

peneliti mengambil referensi dan beberapa kajian terhadap penelitian melalui

internet dan perpustakaan.

Penelitian pertama yang dilakukan oleh Windi Eka Yuli Retnani

(2015), dengan penelitiannya yang berjudul “pencarian SPBU terdekat dan

penentuan jarak terpendek menggunakan algoritma Djikstra” bertujuan

memberikan informasi letak SPBU dan merekomendasikan jalur terpendek jarak

tempuh guna memberikan efisiensi penggunaan bahan bakar bermotor. Pada

penelitiannya pencarian SPBU terdekat dimulai dengan menghitung jarak user

ke masing-masing SPBU. Perhitungan dilakukan oleh sistem dengan memilih

posisi user pada peta. Perhitungan jarak ini akan menghasilkan rekomendasikan

SPBU terdekat dari posisi user.

Danang Mahendra (2017), mengenai “Sistem Informasi geografi

penentuan jarak masjid terpendek menggunakan algoritma djikstra di kabupaten

9
Kudus berbasis Android” aplikasi pencarian jarak terpendek ini bertujuan agar

jama’ah dan masyarakat dapat menentukan lokasi masjid dengan rute terdekat.

Sistem informasi geografis berbasis android ini akan membantu jama’ah dan

komunitas menemukan masjid terdekat berdasarkan garis lintang bujur

menggunakan metode djikstra.

Penelitian yang dilakukan oleh Cupu Skolastika dan Herny

Februariyanti dengan penelitiannya yang berjudul “Aplikasi Pencarian Taman

Wi-Fi Gratis Kota Semarang Dengan Menggunakan Algoritma Dijkstra”

bertujuan dapat membantu memberikan informasi tentang lokasi taman wifi

gratis di kota Semarang serta penyelesaian rute terpendek dengan menggunakan

algoritma dijkstra dinilai effisien Karena algoritma ini mencarikan bobot

terendah dari rute yang dilalui.

Penelitian yang dilakukan oleh Antonio Gusmao, Sholeh hadi Pramono

dan Sunaryo mengenai “Sistem Informasi Geografis pariwisata web dan

pencarian jalur terpendek dengan algoritma djikstra” bertujuan untuk membantu

kementrian pariwisata timor leste dalam mengembangkan industri pariwisata

untuk memperoleh informasi yang mudah diakses dari berbagai tempat melalui

internet. Dapat meningkatkan jumlah pengunjung wisatawan yang menurun pada

tahun 2011.

Fitria, Apri Tiansahm dengan penelitiannya yang berjudul

“Implementasi Algoritma Djikstra dalam aplikasi untuk menentukan lintasan

10
terpendek jalan darat antar kota di Sumatera bagian selatan” bertujuan untuk

mencari lintasan terdekat dapat membantu para pengguna jalan, traveling

salesman, perusahaan yang bergerak dibidang pariwisata dan angkutan antar

provinsi, instansi pemerintah dan lain sebagainya terutama bagi yang

membutuhkan informasi tentang lintasan terdekat.

2.2 Perbedaan Penelitian Yang Dilakukan Dengan Penelitian Terdahulu

Berdasarkan pemaparan dari beberapa penelitian diatas, maka dapat

disimpulakan bahwa semua sistem menggunakan algoritma djikstra, mampu

menampilkan rute terdekat yang direkomendasikan dan sistem menggunakan

API Goggle Maps.

perbedaan dengan penelitian yang penulis lakukan dengan judul

Pencarian Tempat Ibadah Untuk Merekomendasikan Tempat Terdekat

Menggunakan Algoritma Djikstra yaitu sistem ini memuat tempat ibadah semua

agama. Kemudian dapat menampilkan tempat ibadah yang dinginkan pengguna,

serta pengguna bisa memilih tempat ibadah lainnya pada menu yang tersedia dan

sistem dapat menunjukkan jalur terdekat dan menampilkan rute yang

direkomendasikan (tidak hanya jarak)

11
2.3 Algoritma Djikstra

Algoritma yang ditemukan oleh Edsger Wybe Djikstra pada tahun

1959. merupakan algoritma yang dapat memecahkan masalah pencarian jalur

terpendek dari suatu graf pada setiap simpul bobot terpendek berdasarkan bobot

terkecil dari suatu titik ke titik lainya. Algoritma ini untuk mencari path

terpendek merupakan algoritma yang lebih efisien dibandingkan algoritma

Wharsall. Algoritma Djikstra diterapkan untuk mencari lintasan terpendek pada

graf berarah. Namun, algoritma ini juga benar untuk graf tak berarah. Algoritma

ini menggunakan prinsip greedy. Prinsip greedy pada algoritma djikstra

menyatakan bahwa pada setiap langkah kita memilih sisi yang berbobot

minimum dan memasukkanya dalam himpunan solusi.

Pertama tentukan titik mana yang akan menjadi node awal, lalu beri

bobot jarak pada node terdekat satu per satu, Algoritma Djikstra akan

melakukan pengembangan pencarian dari satu titik ke titik lain dam ke titik

selanjutnya tahap demi tahap.

Urutan logika dari Algoritma Djikstra sebagai berikut :

1. Beri nilai bobot (jarak) untuk setiap titik ke titik lainya, lalu set nilai 0 pada

node awal dan nilai tak hingga terhadap node lain.

2. Set semua node belum terjamah dan set node awal sebagai node

keberangkatan.

12
3. Dari node keberangkatan,pertimbangkan node tetangga yang belum terjamah

dan hitung jaraknya dari titik keberangkatan

4. Saat kita selesai mempertimbangkan setiap jarak terhadap node tetangga,

tandai node yang telah terjamah sebagai node terjamah. Node terjamah tidak

akan pernah di cek kembali, jarak yang disimpan adalah jarak terakhir dan

yang paling minimal bobotnya.

5. Set node belum terjamah dengan jarak terkecil (dari node keberangkatan)

sebagai node keberangkatan selanjutnya dan lanjutkan dengan kembali ke step

3.

2.4 Google Maps API

Menurut Tulach (2008), API atau Application Programming Interface

bukan hanya satu class dan method atau fungsi dan signature yang sedehana.

Akan tetapi API, yang bertujun utama untuk mengatasi “cluesess” dalam

membangun software yang berukuran besar, berawal dari sesuatu yang sederhana

sampai ke yang kompleks dan merupakan perilaku komponen yang sulit

dipahami. Secara sederhana dapat dipahami dengan membayangkan kekacauan

yang akan timbul bila mengubah database atau skema XML. Perubahan ini dapat

di permudah dengan bantuan API.

Google Maps Service adalah sebuah jasa peta global virtual gratis dan

online yang disediakan oleh Google. Google Maps dapat ditemukan di alamat

13
http:maps.google.com. Google Maps menawarkan peta yang dapat diseret dan

gambar satelit untuk seluruh dunia. Google Maps juga menawarkan pencarian

suatu tempat dan rute perjalanan.

Google Maps API adalah sebuah layanan yang diberikan Google

kepada user untuk memanfaatkan Google Maps dalam pengembangan aplikasi.

Google Maps API menyediakan fitur untuk memanipulasi peta dan

menambahkan konten melalui berbagai jenis service.

2.5 PHP

PHP adalah bahasa pemrograman yang sering disisipkan ke dalam HTML.

PHP sendiri berasal dari kata Hypertext Preprocessor. Sejarah PHP pada

awalnya merupakan kependekan dari Personal Home Page (Situs personal). PHP

pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP

masih bernama Form Interpreted (FI), yang wujudnya berupa sekumpulan skrip

yang digunakan untuk mengolah data formulir dari web.

Bahasa pemrograman ini menggunakan sistem server-side. Server-side

programming adalah jenis bahasa pemrograman yang nantinya script/program

tersebut akan dijalankan/diproses oleh server. Kelebihannya adalah mudah

digunakan, sederhana, dan mudah untuk dimengerti dan dipelajari.

14
2.6 MySQL

MySQL merupakan sebuah perangkat lunak sistem manajemen basis

data SQL yang multithread, multi-user. MySQL adalah Relational Database

Management System (RDMS) yang didistribusikan secara gratis dibawah licensi

GPL (General Public License). MySQL sebenarnya merupakan turunan salah

satu konsep utama dalam database sejak lama yaitu SQL (Structured Query

Language).

Keandalan suatu sistem database dapat diketahui dari kerja

optimizernya dalam melakukan proses perintah-perintah SQL, yang dibuat oleh

user maupun program-program aplikasinya.

2.7 UML (Unfield Modeling Language)

Unifield Modeling Language (UML) adalad sebuah bahasa yang telah

menjadi standar dalam industri untuk visualisasi, merancang dan

mendokumentasikan sistem piranti lunak. UML menawarkan sebuahh standar

untuk merancang model sebuah sistem (Widodo, P. P. & Herlawati, 2011)

Untuk merancang sebuah model, UML memiliki beberapa diagram

antara lain : use case diagram, class diagram, activity diagram, sequence

diagram dan collaboration diagram.

15
2.8 Use case Diagram

Use case adalah sebuah kegiatan atau juga interaksi yang saling

berkesinambungan antara aktor dan juga sistem atau dengan kata lain teknik

secara umum digunakan, guna mengembangkan software, guna memperoleh

kebutuhan fungsional dari sistem yang ada. Komponen tersebut kemudian

menjelaskan komunikasi antara aktor, dengan sistem yang ada. Dengan demikian

use case dapat dipresentasikan dengan urutan yang sederhana, dan akan mudah

dipahami oleh para konsumen.

Dalam sebuah sistem use case akan sangat membantu dalam hal

menyusun requirement, mengkomunikasikan rancangan dengan klien dan

merancang test case untuk semua fitur yang ada pada sistem.

16
Tabel 2.1 Simbol Use Case Diagram

Simbol Nama Keterangan

Actor Menspesifikasikan himpunan

peran yang pengguna mainkan

ketika berinteraksi dengan

usecase

Dependency Hubungan dimana perubahan

--------> yang terjadi pada suatu elemen

mandiri akan mempengaruhi

elemen yang bergantung padanya

Generalization Hubungan dimana objek anak

berbagi perilaku dan struktur data

dari objek yang ada di atasnya

objek induk

Include Menspesifikasikan bahwa

- - - - - > usecase sumber secara eksplisit

< - - - - - Extend Menspesifikasikan bahwa

usecase target memperluas

perilaku dari usecase sumber

17
pada suatu titik yang diberikan

Association Apa yang menghubungkan antara

obek satu dengan objek lainnya

System Menspesifikasikan paket yang

menampilkan sistem secara

terbataas

Use case Deskripsi dari urutan aksi-aksi

yang ditampilkan sistem yang

menghasilkan suatu hasil yang

terukur bagi suatu aktor

2.9 Class Diagram

Class merupakan inti dari pengembangan dan desain berorientasi objek.

Class mengambarkan keadaan (atribut atau properti) suatu sistem sekaligus

menawarkan layanan untuk manipulasi keadaan tersebut (metode atau properti)

(Widodo, P. P. & Herlawati, 2011)

Class Diagram menggambarkan struktur dan deskripsi class, package

dan objek beserta hubungan satu sama lain seperti containment, pewarisan,

asosiasi dan lain-lain.

18
Tabel 2.2 Simbol Class Diagram

Simbol Class Diagram Kegunaan

Kelas pada struktur sistem

Sama   dengan   konsep interface dalam

pemrograman berorientasi objek

Relasi  antarkelas  dengan  makna  umum,

asosiasi  biasanya  juga  disertai  dengan

multiplicity

Relasi  antarkelas  dengan  makna  kelas

yang   atu  digunakan  oleh  kelas  yang

lain,   asosiasi   biasanya   juga   disertai

dengan multiplicity

Relasi antarkelas dengan makna

generalisasi-spesialisasi (umum khusus)

19
Relasi antarkelas dengan makna

kebergantungan antarkelas

Relasi  antarkelas  dengan  makna  semua-

bagian (whole-part)

2.10 Activity Diagram

Diagram aktifiatas adalah bentuk visual dari alur kerja yang berisi

aktifitas dan tindakan, yang juga dapat berisi pilihan, atau pengulangan. Selain

itu diagram aktifitas juga menggambarkan alur kontrol secara garis besar.

Diagram aktifitas memiliki komponen dengan bentuk tertentu,

dihubungknan dengan tanda panah. Panah tersebut mengarahkan urutan aktifitas

yang terjadi, dari awal sampai akhir.

Tabel 2.3 aktivity Diagram

Simbol Nama Keterangan

20
Actifity Memperlihatkan bagaimana

masing-masing kelas antarmuka

saling berinteraksi satu sama lain

Action State dari sistem yang

mencerminkan eksekusi dari suatu

aksi

Initial Node Bagaimana objek dibentuk atau

dibawahi

Activity final Bagaimana objek dibentuk dan

node dihancurkan

Fark node Satu aliran yang pada tahap

tertentu berubah menjadi beberapa

aliran

2.11 Sequence Diagram

Sequence Diagram adalah suatu diagram yang menggambarkan

interaksi objek dan mengindikasikan (memberi petunjuk atau tanda) komunikasi

21
diantara objek-objek tersebut. Sequence Diagram digunalan untuk

menggambarkan perilaku pada sebuah skenario dan mendeskripsikan bagaimana

entitas dalam siste berinteraksi, termasuk pesan yang digunakan saat interaksi.

Tabel 2.4 sequence Diagram

2.12 Collaboration Diagram

Collaboration Diagram merupakan ilustrasi dari relasi dan interaksi

antara objek software pada UML. Collaboration Diagram mengelompokkan

22
message pada kumpulan diagram sekuen menjadi sebuah diagram. Dalam

diagram kolaborasi yang dituliskan adlah operasi atau metode yang dijalankan

antara objek yang satu dengan objek yang lainnya secara keseluruhan.

Tabel 2.5 Collaboration Diagram

Simbol Deskripsi

Objek Objek yang melakukan interaksi pesan

Nama_objek : nama_kelas

Arah pesan Arah pesan yang terjadi, jika pada suatu

link ada dau arah pesan yang berbeda

maka arah juga digambarkan dua arah

pada dua sisi link

BAB III

ANALISA PERANCANGAN SISTEM

23
3.1 Analisa Permasalahan

Masalah jalur terpendek adalah bagaimana mencari jalur pada graf yang

meminimalkan jumlah jarak dari sebuah titik ke titik yang lain. Untuk

menyelesaikan masalah jalur terpendek membutuhkan algoritma untuk

menghitung. Hal tersebut membuat pengguna lebih efisien waktu, cepat dan tepat

sampai ke lokasi tujuan. Ada beberapa Algoritma yang dapat digunakan salah

satunya Algoritma Dijkstra.

Algoritma Dijkstra adalah algoritma rakus yang dipakai dalam

memecahkan permasalahan jarak terpendek untuk sebuah graf berarah dengan

bobot-bobot garis yang bernilai nonnegatif. Algoritma Djikstra diterapkan untuk

mencari lintasan terpendek pada graf berarah. Namun, algoritma ini juga benar

untuk graf tak berarah. Algoritma ini menggunakan prinsip greedy. Prinsip

greedy pada algoritma djikstra menyatakan bahwa pada setiap langkah kita

memilih sisi yang berbobot minimum dan memasukkanya dalam himpunan

solusi.

Tempat ibadah merupakan salah satu sarana untuk mendekatkan diri

kepada sang pencipta. Namun sering kali para masyarakat pendatang baru dan

traveling kesulitan dalam menemukan lokasi tempat ibadah yang terdekat.

Dalam pencarian tempat ibadah terdekat biasanya masih dilakukan secara

manual yaitu dengan bertanya secara langsung kepada orang lain. Dengan

24
bertanya kepada orang lain, informasi yang didapatkan masih terbatas hanya dari

pengalaman orang tersebut.

Informasi mengenai Tempat ibadah merupakan suatu hal yang di

butuhkan untuk memberikan informasi tentang tempat ibadah terdekat kepada

masyarakat melalui aplikasi WEB. Sehingga masyarakat dapat dimudahkan

dalam mencari tempat ibadah.

3.2 Pemecahan Masalah

Dengan berbagai masalah yang diatas, untuk itu penulis membuat

sebuah aplikasi WEB yang dapat diakses oleh pengguna dimanapun berada asal

terhubung dengan internet. Aplikasi ini berisi tentang informasi yang meliputi

keberadaan tempat ibadah yang terdekat serta menampilkan rute terpendek yang

direkomendasikan menggunakan Algoritma Dijkstra.

3.3 Analisa Kebutuhan Sistem

3.3.1 Kebutuhan perangkat keras

25
Spesifikasi perangkat keras atau hardware untuk aplikasi pencarian

tempat ibadah ini adalah :

1. Prossesor minimal menggunakan Intel Pentium IV 2.6 GHz

2. Random Access Memory (RAM) 512 MB

3. Hardisk 80 GB

4. VGA On Board

5. DVD Room

Sedangkan spesifikasi minimum untuk menjalankan aplikasi

pencarian tempat ibadah ini adalah :

1. CPU pentium 2

2. Random Acces Memory (RAM) 32 MB

3. Hardisk 20 GB

4. Monitor yang digunakan minimal resolusi 800 x 600 pixel dengan tipe

SVGA

5. CD Room

26
Untuk menjalankan aplikasi pencarian tempat ibadah terdekat ini

tidak perlu dibutuhkan spesifikasi yang sangat bagus, yang terpenting adalah

bisa terhubung dengan internet atau bisa terhubung dengan browser.

3.3.2 Kebutuhan perangkat lunak

Kebutuhan perangkat lunak atau Software yang nantinya dapat

memenuhi kebutuhan user, untuk mendukung pembuatan Aplikasi

“Pencarian Tempat Ibadah untuk Merekomendasikan Tempat Terdekat

Menggunakan algoritma Dijkstra perangkat lunak yang dibutuhkan adalah

sebagai berikut :

1. Sistem Operasi yang digunakan adalah Microsoft Windows 8

2. WEB Browser (Chrome)

3. Xampp

4. Enterprise Architect

5. Sublime text

27
3.4 Perancangan Sistem

Setelah dilakukan tahap penganalisaan apa saja yang akan dilakukan

sistem untuk menghasilkan sebuah sistem informasi dari perangkat lunak yang

akan dibuat maka tahap selanjutnya adalah tahap perancangan. Proses

perancangan akan memberikan gambaran tentang perangkat lunak yang akan

dibuat atau dikembangkan. Perancangan sistem berfungsi untuk mempermudah

penulis dalam pembuatan program WEB yang akan dibangun.

3.4.1 Perancangan Use Case Diagram

Gambar 3.1 menjelaskan tentang Use Case Diagram sistem ini

mengenai interaksi atau gambaran antara Admin dan Pengguna. Admin akan

mengelola sistem dan mengatur semua data yang ada disistem. Yang dapat

dilakukan oleh Admin antara lain login, pengelolaan Data pengguna,

pengelolaan Data tempat ibadah, pengelolaan Data Berita, pengelolaan data

node untuk mencari rute dan logout. Kemudian untuk Pengguna adalah

melihat berita, Lihat Tempat Terdekat, Lihat Tempat Ibadah semua Agama

dan Cari rute untuk menuju lokasi.

28
Gambar 3.1 Use Case Diagram Sistem

3.4.2 Perancangan Activity Diagram

1. Activity Diagram Login Admin

Gambar 3.2 menjelaskan tentang bagian admin melakukan login ke

sistem dengan memasukkan username dan password, sistem melakukan

verifikasi username dan password yang dimasukkan, jika benar maka masuk

ke menu utama aplikasi, jika pengisian username dan password salah kembali

ke halaman login.

29
Gambar 3.2 activity Diagram Login Admin

30
2. Activity Diagram Data Tempat Ibadah

Gambar 3.3 menjelaskan tentang admin menambah data tempat

ibadah. Admin pilih menu tempat ibadah sistem akan menampilkan semua

tempat ibadah, kemudian Admin tambah tempat ibadah sistem akan

menampilkan form tambah tempat ibadah, kemudian sistem akan

menampilkan tempat ibadah terbaru.

Gambar 3.3 Activity Diagram Data tampat ibadah

31
3. Activity Diagram data Berita

Gambar 3.4 menjelaskan tentang Admin mengisi data Berita, Admin

pilih menu berita sistem akan menampilkan data semua berita, kemudian

Admin tambah berita sistem akan menampilkan form tambah berita tempat

ibadah, kemudian sistem akan menampilkan berita terbaru.

Gambar 3.4 Activity Diagram Berita

32
4. Activity Diagram Data Node Dijkstra

Gambar 3.5 menjelaskan tentang Admin mengisi data node dijkstra,

Admin pilih menu node dijkstra sistem akan menampilkan peta titik node,

kemudian Admin membuat titik pada peta dan menambah jalur, sistem akan

menampilkan peta dan titik node terbaru.

Gambar 3.5 Activity Diagram Data Dijkstra

33
5. Activity Diagram Data Pengguna

Gambar 3.6 menjelaskan tentang Admin mengisi data Pengguna,

Admin pilih menu setting, pilih menu pengguna sistem akan menampilkan

data pengguna, Admin pilih form tambah pengguna sistem akan

menampilkan data pengguna terbaru.

Gambar 3.6 Activity Diagram Data Pengguna

34
6. Activity Diagram Lihat Data Berita

Gambar 3.7 menjelaskan tentang Pengguna masuk ke menu Berita,

kemudian memilih salahsatu berita , setelah memilih maka sistem akan

otomatis menampilkan Detail Berita secra lengkap.

Gambar 3.7 Activity Diagram Data Berita

35
7. Activity Diagram Lihat Data Lihat Tempat Ibadah Semua Agama

Gambar 3.8 menjelaskan tentang Pengguna masuk ke menu Tempat

Ibadah, kemudian memilih salah satu Tempat Ibadah , setelah memilih maka

sistem akan otomatis menampilkan Detail Tempat Ibadah secara lengkap.

Gambar 3.8 Activity Diagram Data Lihat Tempat Ibadah

36
8. Activity Diagram Tempat Terdekat

Gambar 3.9 menjelaskan tentang Pengguna masuk ke menu Tempat

Terdekat, kemudian memilih Lokasi dari Pengguna, kemudian memilih

agama yang diinginkan setelah memilih maka sistem akan otomatis

menampilkan Tempat Ibadah Terdekat sesuai kategori yang pengguna pilih.

Gambar 3.9 Activity Diagram Data Tempat Terdekat

37
9. Activity Diagram Cari Rute

Gambar 3.10 menjelaskan tentang Pengguna masuk ke menu Cari

Rute, kemudian memilih Lokasi dari Pengguna, kemudian memilih tempat

tujuan yang diinginkan setelah memilih maka sistem akan otomatis

menampilkan Rute Tempat tujuan sesuai kategori yang pengguna pilih.

Gambar 3.10 Activity Diagram Cari Rute

38
3.4.3 Perancangan Sequence Diagram

1. Sequence Diagram Login Admin

Gambar 3.11 menjelaskan tentang admin melakukan login ke sistem

dengan memasukkan username dan password.sistem melakukan verifikasi

username dan password yang dimasukkan, jika pengisian username dan

password benar akan ditampilkan menu.

39
Gambar 3.11 Sequence Digram login Admin

40
2. Sequence Diagram Data Pengguna

Gambar 3.12 menjelaskan tentang Admin dapat menmbahkan atau

mengubah data pengguna yang terdiri dari input pengguna dan kemudian

menyimpan data pengguna. Admin juga dapat menghapus data pengguna.

Gambar 3.12 Sequence Digram Data Pengguna

41
3. Sequence Diagram Data Berita

Gambar 3.13 menjelaskan tentang Admin dapat menambah atau

mengubah data berita yang terdiri dari input berita dan kemudian

menyimpan data berita. Admin juga dapat menghapus data berita.

Gambar 3.13 Sequence Digram Data Berita

42
4. Sequence Diagram Data tempat Ibadah

Gambar 3.14 menjelaskan tentang Admin dapat menambah atau

mengubah data tempat ibadah yang terdiri dari input tempat ibadah dan

kemudian menyimpan data tempat ibadah. Admin juga dapat menghapus

data tempat ibadah.

43
Gambar 3.14 Sequence Digram Data Tempat Ibadah

44
5. Sequence Diagram Data Node dijkstra untuk mencari rute

Gambar 3.15 menjelaskan tentang Admin dapat menambah atau

menguba Data Node Dijkstra dan kemudian menyimpan data Node Dijkstra.

Admin juga dapat menghapus data Node Djikstra.

Gambar 3.15 Sequence Digram Data Node Dijkstra

45
6. Sequence Diagram Pengguna

Gambar 3.16 menjelaskan tentang pengguna masuk ke pengguna

interface, setelah masuk kemudian pengguna memilih kategori menu yang

terdiri Berita, Tempat Ibadah, Terdekat dan Cari Rute. Sistem dengan

sendirinya akan menampilkan keterangan tentang obyek yang dipilih oleh

pengguna.

Gambar 3.16 Sequence Digram Pengguna

46
7. Sequence Diagram Logout Sistem

Gambar 3.17 menjelaskan tentang Admin memilih logout dan akan

keluar dari sistem.

Gambar 3.17 Sequence Digram Logout Sistem

47
3.4.4 Perancangan Class Diagram

Class Diagram merupakan suatu sistem program yang mempunyai

class-class yang mengandung atribut dan juga operasi yang dibutuhkan oleh

masing-masing pengguna. Class diagram juga merupakan sebuah bentuk

utama dari sistem berorientasi objek karena menunjukkan kumpulan objek

yang memiliki atribut dan operasi yang mayoritas sama. Pada sistem yang

dibuat terdapat dua entitas yaitu Admin yang mempunyai wewenang untuk

mengelola dan memiliki hak akses pada sistem, dan User yang mempunyai

wewenang untuk melihat informasi data pada sistem.

Gambar 3.18 Class Diagram

48
3.4.5 Perancangan Database

Perancangan database aplikasi pencarian tempat ibadah untuk

merekomendasikan tempat terdekat menggunakan algoritma djikstra

diwujudkan dari class diagram pada gambar 3.18

1. Tabel pengguna

Tabel pengguna digunakan untuk menyimpan data pengguna

dengan kunci utama atau primary key (PK) admin id. Tabel pengguna

ditunjukan pada tabel 3.1

Tabel 3.1 Tabel pengguna

Field Name Type Size Key Keterangan

Id pengguna int 11 * pengguna Id

username varchar 23 Nama pengguna

password varchar 64 Password


pengguna
Nama lengkap varchar 100 Nama pengguna

Jenis kelamin enum Laki-laki.


perempuan
foto varchar 100 foto

No telpon Varchar 25 No telpon


pengguna

49
2. Tabel agama

Tabel agama digunakan untuk menyimpan data agama dengan

kunci utama atau primary key (PK) admin id. Tabel agama ditunjukan

pada tabel 3.2

Tabel 3.2 Tabel Agama

Field Name Type Size Key Keterangan

Id agama Int 2 * User id

Nama agama varchar 50 Nama User

3. Tabel jalur

Tabel jalur digunakan untuk menyimpan data tempat jalur

tempat ibadah dengan kunci utama atau primary key (PK) adalah id.

Tabel jalur ditujukan seperti pada tabel 3.3.

Tabel 3.3 Tabel jalur

50
Field Name Type Size Key Keterangan

Id jalur int 11 * Id

Titik awal int 11 Titik awal

Titik akhir int 11 Titik akhir

jarak float Longitude

4. Tabel tempat ibadah

Tabel tempat ibadah digunakan untuk menyimpan data tempat

ibadah dengan kunci utama /primary key (PK) adalah id. Tabel tempat

ibadah di tunjukkan pada tabel 3.4

Tabel 3.4 TabelTempat Ibadah

Field Name Type Size key keterangan

Id tempat ibadah int 4 * Id tempat ibada

Id agama int 2 Id agama

Nama tempat ibadah varchar 100 Nama tempat ibadah

51
Deskripsi tempat text Deskrpsi tempat

ibadah ibadah

Alamat tempat varchar 100 Alamat tempat

ibadah ibadah

No telp tempat Varchar 20 No telpon

ibadah

Koordinat tempat Varchar 100 Koordinat tempat

ibadah ibadah

Id marker int 2 Id marker

5. Tabel berita

Tabel berita digunakan untuk menyimpan data berita dengan

kunci utama atau Primay Key (PK) adalah id. Tabel berita ditunjukkan

seperti pada tabel 3.5

Tabel 3.5 Tabel berita

Field Name Type Size Key Keterangan

Id_berita int 23 * Id berita

52
Tgl_buat date Tanggal buat

Judul_berita varchar 100 Judul berita

Isi_berita text Isi berita

Foto_berita varchar 100 Foto berita

jml_berita int 5 Jumlah dibaca

6. Tabel titik

Tabel titik digunakan untuk menyimpan data titik dengan kunci

utama atau Primay Key (PK) adalah id. Tabel titik ditunjukkan seperti

pada tabel 3.6

Tabel 3.6 Titik

Field Name Type Size Key Keterangan

Id_titik int 11 Titik id

latitude varchar 100 Titik koordinat

longitude varchar 100 Titik koordinat

Nama_titik varchar 200 Nama titik

53
3.4.6 Perancangan Interface

1. perancangan Form Login Android

Gambar 3.19 menjelaskan tentang form yang digunakan untuk login

ke aplikasi pencarian tempat ibadah untuk merekomendasikan tempat

terdekat menggunakan algoritma djikstra yang mengacu pada perancangan

use case diagram gambar 3.1

Gambar 3.19 Peracangan Form Login

2. Perancangan Halaman Tambah Tempat Ibadah

pada halaman ini, admin dapat menginputkan data tempat

ibadah pada form yang di sediakan.

54
Gambar 3.20 perancangan tambah tempat ibadah

3. Perancangan Halaman Tambah berita

Gambar 3.21 menjelaskan tentang halaman tambah berita

yang menampilkan data berita yang berhasil di inputkan dan pada

tabel tersebut admin dapat mengedit menghapus maupun melihat

data berita.

Gambar 3.21 perancangan Halaman tambah berita

55
4. Perancangan Halaman tambah node dijkstra untuk mencari rute

Gambar 3.22 menjelaskan tentang halaman tambah Node

Dijkstra yang menampilkan data rute yang berhasil di inputkan dan

pada tabel tersebut admin dapat mengedit menghapus maupun

melihat data Node Dijkstra.

Gambar 3.22 perancangan tambah node dijkstra

5. Halaman Beranda Pengguna

Gambar 3.23 merupakan halaman beranda atau halaman Home

dari aplikasi ini. Halaman ini akan terbuka secara otomatis setelah

pengguna masuk pada Website ini.

56
Gambar 3.23 perancangan Halaman beranda

6. Perancangan Halaman Berita Pengguna

Gambar 3.24 akan menampilkan daftar berita terbaru dan

terpopuler mengenai kebudayaan dan Religi.

Gambar 3.24 Halaman berita pengguna

57
7. Halaman Tempat Ibadah

Gambar 3.25 akan menampilkan halaman berupa informasi

Tempat Ibadah. Pengguna dapat meliat detail Tempat Ibadah,

keterangan dan foto Tempat Ibadah.

Gambar 3.25 Halaman tempat ibadah

8. Halaman Tempat Ibadah Terdekat

Gambar 3.26 menampilkan halaman tempat ibadah terdekat.

Yaitu dengan cara Pengguna memasukkan lokasi terkini, pilih Tempat

Ibadah sesuai agama pengguna dan Tampilkan

58
Gambar 3.26 Halaman tempat ibadah terdekat

9. Halaman Cari Rute

Gambar 3.27 menjelaskan cara pengguna mencari rute untuk

menuju Tempat Ibadah yang telah di pilih. Pengguna memasukkan

lokasi terkini, tempat Ibadah tujuan dan Tampilkan

Gambar 3.27 Halaman cari rute

59
BAB IV

IMPLEMENTASI

4.1 Implementasi Database

Pada implementasi Dijkstra untuk sistem informasi Pencarian Tempat

Ibadah Untuk Merekomendasikan Tempat Terdekat memerlukan database untuk

tempat penyimpanan data. Jenis database yang digunakan adalah MySql, dan di

simpan di Web Server. Pembuatan database MySql ini menggunakan

PhpMyAdmin. Database diberi nama dijkstra seperti pada gambar 4.1 sebagai

berikut:

Gambar 4.1 Struktur Database

60
4.2 Implementasi Halaman Pengguna

Halaman Pengguna merupakan halaman yang di gunakan penguna

untuk mencari tempat ibadah terdekat pada Sistem Informasi Pencarian

Tempat Ibadah Untuk merekomendasikan Tempat Terdekat Menggunakan

Algoritma Dijkstra.

4.2.1 Halaman Berita

Halaman Berita pada Sistem Informasi Pencarian Tempat

Ibadah Untuk merekomendasikan Tempat Terdekat Menggunakan

Algoritma Dijkstra diperlihatkan seperti gambar 4.2.

Gambar 4.2 Halaman Berita

61
Halaman Berita digunakan Pengguna untuk melihat informasi

berita yang telah ada secara detail pada Sistem Informasi Pencarian

Tempat Ibadah Untuk merekomendasikan Tempat Terdekat

Menggunakan Algoritma Dijkstra.

Pada source code 4.1 untuk menampilkan Halaman Berita yang

berisi Berita Populer, Detail Berita. Berikut source Code 4.1 yaitu :

<div class="box "> <figure class="effect-chico"> <img alt="alt"


src="<?php echo base_url(); ?>upload/foto_berita/<?php echo $berita-
>foto_berita; ?>" /> <figcaption></figcaption> </figure> <div
class="rounded_box"><img alt="alt" src="<?php echo base_url(); ?
>upload/<?php echo $aplikasi->logo_aplikasi; ?>" /></div></div> </a>
<div class="blog_desc">

<h5><a href="<?php echo base_url(); ?>site/berita_detail/<?php echo


$berita->id_berita; ?>"><?php echo $berita->judul_berita; ?></a></h5>

<p><?php echo substr($berita->isi_berita,0,300); ?>... <a href="<?php


echo base_url(); ?>

site/berita_detail/<?php echo $berita->id_berita;


?>">Selengkapnya</a></p>

</div>

Source Code 4.1

62
4.2.2 Halaman Tempat Ibadah

Halaman Tempat Ibadah pada Sistem Informasi Pencarian

Tempat Ibadah Untuk merekomendasikan Tempat Terdekat

Menggunakan Algoritma Dijkstra diperlihatkan seperti gambar 4.3

Gambar 4.3 Halaman Tempat Ibadah

.Halaman Tempat Ibadah digunakan Pengguna untuk melihat

informasi Detail Tempat Ibadah pada Sistem Informasi Pencarian

Tempat Ibadah Untuk merekomendasikan Tempat Terdekat

Menggunakan Algoritma Dijkstra. Jenis Tempat Ibadah terdiri dari

semua agama yang ada di Indonesia yaitu Tempat Ibadah Masjid,

Gereja, Klenteng, pura dan Vihara.

63
Pada source code 4.2 untuk menampilkan Halaman tempat

Ibadah yang berisi detail tempat ibadah, Peta Lokasi Tempat Ibadah.

Berikut Source Code 4.2

<?php

if($tempatibadahs!=null) {

foreach ($tempatibadahs as $data) {

$query=$this->db->query("SELECT * FROM foto WHERE


id_tempatibadah='".$data->id_tempatibadah."'");

$xxx = $query->result();

$foto = $xxx[0]->file_foto; ?>

<div class="col-lg-4 col-md-6 col-sm-6 col-xs-12" style="min-height:


360px;" >

<div class="main_box">

<div class="box_1"> <a href="<?php echo base_url();


?>site/tempatibadah_detail/<?php echo $data->id_tempatibadah; ?
>"><img alt="alt" src="<?php echo base_url();
?>upload/foto_tempatibadah/<?php echo $foto; ?>" draggable="false"
width="100%" height="300px"></a> </div>

<div class="desc" >

<h5><a href="<?php echo base_url(); ?>site/tempatibadah_detail/<?


php echo $data->id_tempatibadah; ?>"><?php echo $data-
>nama_tempatibadah; ?></a></h5>

Source Code 4.2

64
4.2.3 Halaman Tempat Terdekat

Halaman Tempat Ibadah pada Sistem Informasi Pencarian

Tempat Ibadah Untuk merekomendasikan Tempat Terdekat

Menggunakan Algoritma Dijkstra diperlihatkan seperti gambar 4.4

Gambar 4.4 Halaman Terdekat

Halaman Tempat Ibadah Terdekat digunakan Pengguna untuk

mengetahui Tempat Ibadah Terdekat sesuai posisi pengguna saat itu.

Pengguna hanya perlu memilih menu Tempat Ibadah Agama sesuai

yang di inginkan pengguna. pengguna dapat memindah lokasi selain

dari sesuai lokasi pengguna terkini. Sistem akan otomatis mengetahui

titik koordinat pengguna. Klik tombol Tampilkan untuk menghitung

jarak dari lokasi pengguna ke tempat Ibadah dengan menggunakan

Algoritma Dijkstra. Pada source code 4.3 untuk menampilkan

65
Halaman Terdekat yang berisi Lokasi Anda, Memilih Agama dan

Peta untuk menampilkan Hasil pencarian. Berikut Source Code 4.3

yaitu

<div class="form-group">

<label class="col-lg-6 control-label">Tempat Ibadah Agama</label>

<div class="col-lg-6">

<select name="idagama" id="select2" class="form-control">

<option value=''> -- Pilih Agama --</option>

<?php $query=$this->db->query("SELECT * FROM agama ORDER


BY id_agama ASC ");

$datas = $query->result();

foreach ($datas as $data) {

if($data->id_agama==$IDAGAMA) {$ok="selected=selected";

$AGAMA = $data->nama_agama; } else { $ok=""; }

echo "<option value='".$data->id_agama."' $ok>".$data-


>nama_agama."</option>"; } ?>

</select> </div> </div>

Source Code 4.3

pada Gambar 4.5. merupakan hasil pencarian tempat ibadah

terdekat sesuai pilihan agama yang dipilih oleh pengguna.

66
Gambar 4.5 Hasil pencarian tempat terdekat

Pada source code 4.4 untuk menampilkan Hasil pencarian

Tempat Ibadah Terdekat yaitu

67
<?php $query=$this->db->query("SELECT * FROM agama
WHERE id_agama='".$idagama."' "); $datas = $query->result();

$AGAMA = $datas[0]->nama_agama; ?>

<h3>HASIL PENCARIAN TEMPAT IBADAH TERDEKAT -


AGAMA <?php echo $AGAMA; ?></h3> <br/>

<div class="row view-grid animated fadeInUp" data-


animation="fadeInUp" >

<div id="listtempat"> </div> </div>

<div class="page_c clearfix red5">

<?php //echo $halaman; ?> </div> </div> </div> <?php } ?>

<?php if ($aksicariterdekat=="YA") { ?>

<div class="clearfix"></div> </div> </div>

</div> </div> </div> <?php } ?> <script>

for(var i=0; i<HASILCARI.length; i++)

var JARAK =
parseFloat((HASILCARI[i].jarakdijkstra).toFixed(2));

var JARAKGEOMETRI =
parseFloat((HASILCARI[i].jarakgeometri/1000).toFixed(2));

var JARAKGOOGLE = getJarak(HASILCARI[i].loc1,


HASILCARI[i].loc2);

Source Code 4.4

68
4.2.4 Halaman Cari Rute

Halaman Cari Rute pada Sistem Informasi Pencarian Tempat

Ibadah Untuk merekomendasikan Tempat Terdekat Menggunakan

Algoritma Dijkstra diperlihatkan seperti gambar 4.6

Gambar 4.6 Halaman Cari Rute

Pada source code 4.5 untuk menampilkan Halaman Cari Rute

yang berisi Lokasi Anda, memilih Tempat Tujuan dan Peta. Berikut

Source Code 4.5 yaitu

69
<div class="col-lg-5"> <div class="form-group">

<label class="col-lg-3 control-label">Lokasi Anda </label>

<div class="col-lg-9">

<input type="text" id="lokasiawal" name="lokasiawal" class="form-


control required" placeholder="Alamat" autocomplete="on"
runat="server" value="<?php echo $lokasiawal; ?>" >

<input type="hidden" id="lat" name="lat" value="<?php echo $lat; ?


>" >

<input type="hidden" id="lon" name="lon" value="<?php echo $lon;


?>" >

<input type="hidden" id="nodeawal" name="nodeawal" >

</div> </div> </div>

<div class="col-lg-5"><div class="form-group">

<label class="col-lg-3 control-label">Tujuan </label>

<div class="col-lg-9">

<select name="tujuan" id="select2" class="form-control">

<option value=''></option>

<?php

$query=$this->db->query("SELECT * FROM tempatibadah ORDER


BY nama_tempatibadah ASC ");

$datas = $query->result();

Source Code 4.5

70
Halaman Cari Rute digunakan Pengguna untuk mengetahui

Rute untuk menuju Tempat Ibadah Terdekat sesuai posisi pengguna

saat itu. Pengguna hanya perlu memilih menu Tujuan Tempat Ibadah

sesuai yang di inginkan pengguna. Klik tombol Tampilkan untuk

mengetahui Rute dari lokasi pengguna ke tempat Ibadah tujuan

dengan menggunakan Algoritma Dijkstra. Lihat Gambar 4.7.

Gambar 4.7 Hasil mencari Rute

Pada Gambar 4.8 pengguna bisa megetahui detail proses

pencarian rute dari posisi pengguna sampai tempat tujuan yang

diinginkan oleh pengguna. Contoh Detail Proses pencarian rute yang

sesuai dipilih pengguna antara lain :

71
1. Lokasi Awal

Jl. Veteran No. 29, Lempongsari, Kec. Gajahmungkur, kota

Semarang, Jawa Tengah 50231, Indonesia (-

6.996782301231017,110.4154640012665)

2. Lokasi Tujuan

Masjid Baiturrahman Semarang Jl. Simpang Lima, Pekunden, Kec.

Semarang Tengah, Kota Semarang, Jawa Tengah 50241 (-

6.988930683388142,110.4220068447424)

3. Node Path

Node di basisdata 27 buah, dan path di basisdata 70 buah

4. Node Terdekat dengan lokasi awal

Node 20 dengan jarak 0.443 km

5. Node Terdekat dengan lokasi akhir

Node 16 dengan jarak 0.183 km

6. Hasil pencarian jalur terpendek (Dijkstra)

20-19.19-17.17-16

72
7. Digabungkan dengan lokasi awal dan lokasi tujuan

Lokasi anda-17.17-16.16-Tujuan

Gambar 4.8 Detail Proses Cari Rute

Pada source code untuk 4.6 menampilkan Detail Proses Cari

Rute yaitu

73
<div id="collapseTwo" class="panel-collapse collapse">

<div class="panel-body">

#1 Lokasi awal <br/>

<?php echo $lokasiawal; ?><br/>

(<?php echo $lat; ?>,<?php echo $lon; ?>)<br/><br/>

#2 Lokasi tujuan <br/>

<?php

$query=$this->db->query("SELECT * FROM tempatibadah


WHERE id_tempatibadah='".$idtujuan."'");

$tempatibadah = $query->result();

echo $tempatibadah[0]->nama_tempatibadah."<br/>";

echo $tempatibadah[0]->alamat_tempatibadah."<br/>";

echo
"(".$tempatibadah[0]->koordinat_tempatibadah.")<br/><br/>";?>

#3 Node dan Path <br/>

<?php

$query=$this->db->query("SELECT * FROM titik");

$jumlahnode = $query->num_rows();

$query=$this->db->query("SELECT * FROM jalur");

$jumlahjalur = $query->num_rows(); ?>

Node di basisdata <?php echo $jumlahnode; ?> buah, dan Path di


basisdata <?php echo $jumlahjalur; ?> buah.<br/><br/>

Source Code 4.6

74
4.3 Implementasi Halaman Admin

Halaman Admin merupakan halaman yang digunakan admin untuk

mengelola data Tempat Ibadah pada Sistem Informasi Pencarian Tempat

Ibadah Untuk merekomendasikan Tempat Terdekat Menggunakan

Algoritma Dijkstra.

4.3.1 Login Admin

Login Admin pada Sistem Informasi Pencarian Tempat Ibadah

Untuk merekomendasikan Tempat Terdekat Menggunakan Algoritma

Dijkstra di tunjukkan seperti pada gambar 4.9.

Gambar 4.9 Halaman Login Admin

Login Admin menunjukkan bahwa untuk melakukan login dan

masuk kehalaman admin, admin harus memasukkan Username dan

75
Password yang valid terlebih dahulu. Jika data tidak valid maka

halaman akan kembali ke halaman login.

4.3.2 Halaman Admin Kelola Data Berita

Halaman Admin Kelola Data Berita pada Sistem Informasi

Pencarian Tempat Ibadah Untuk merekomendasikan Tempat

Terdekat Menggunakan Algoritma Dijkstra di tunjukkan seperti pada

gambar 4.10

Ga

mbar 4.10 Halaman Admin Kelola Data Berita

Pada Halaman ini Admin dapat menambah data berita baru

dengan menginputkan form Tambah Berita, kemudian Admin dapat

mengedit dan menghapus data berita yang ada pada form aksi di

76
dalam sistem. Pada source code 4.7 untuk menyimpan data berita

yaitu

<div class="table-responsive" > <table id="datatable-responsive"


class="table table-condensed table-striped " cellspacing="0"
width="100%"><thead> <tr>

<th width=20>No</th>

<th>Tgl Buat</th>

<th>Judul</th>

<th>Isi</th>

<th>Foto</th>

<th width=80>Aksi</th>

</tr> </thead> <tbody>

<?php $i= 1; foreach($berita as $berita) { ?> <tr >

<td class=center ><?php echo $i ?></td>

<td style="text-align:left"><?php echo $berita->tgl_buat ?></td>

<td style="text-align:left"><?php echo $berita->judul_berita ?></td>

<td style="text-align:left"><?php echo substr($berita->isi_berita,0,200);


?> ...</td>

<td style="text-align:left"><img src="<?php echo base_url();


?>upload/foto_berita/<?php echo $berita->foto_berita ?>"
width="100px"></td>

Source Code 4.7

77
4.3.3 Halaman Admin Kelola Tempat Ibadah

Halaman Admin Kelola Data Tempat Ibadah pada Sistem

Informasi Pencarian Tempat Ibadah Untuk merekomendasikan

Tempat Terdekat Menggunakan Algoritma Dijkstra di tunjukkan

seperti pada gambar 4.11.

Gambar 4.11 Halaman Admin Kelola Data Tempat Ibadah

Pada Halaman ini Admin dapat menambah data Tempat Ibadah

baru dengan menginputkan form Tambah Tempat Ibadah, kemudian

Admin dapat mengedit dan menghapus data Tempat Ibadah yang ada

pada form aksi di dalam sistem. Pada source code 4.8 untuk

menyimpan data berita yait

78
<div class="table-responsive" >

<table id="datatable-responsive" class="table table-condensed table-


striped " cellspacing="0" width="100%"><thead><tr>

<th width=20>No</th>

<th>Nama Tempat</th>

<th>Alamat</th>

<th>Marker</th>

<th>Foto</th>

<th width=80>Aksi</th>

</tr></thead><tbody>

<?php $i= 1; foreach($tempatibadah as $tempatibadah) { ?> <tr >

<td class=center ><?php echo $i ?></td>

<td style="text-align:left"><?php echo $tempatibadah-


>nama_tempatibadah ?></td>

<td style="text-align:left"><?php echo $tempatibadah-


>alamat_tempatibadah ?></td>

<td style="text-align:center"><img src="upload/icon_marker/<?php


echo $tempatibadah->icon_marker ?>" width="35px"></td>

<td style="text-align:left">

Source Code 4.8

79
4.3.4 Halaman Admin Kelola Node Dijkstra

Halaman Admin Kelola Data Tempat Ibadah pada Sistem

Informasi Pencarian Tempat Ibadah Untuk merekomendasikan

Tempat Terdekat Menggunakan Algoritma Dijkstra di tunjukkan

seperti pada gambar 4.12.

Gambar 4.12 Halaman Admin Kelola Data Node Dijkstra

Pada Halaman ini Admin dapat menambah data Node baru

dengan cara klik satu kali pada peta akan muncul titik baru, utnuk

menambah jalur baru admin hanya perlu klik kanan pada titik node

satu ke titik node lain. Jika Admin ingin menghapus cukup klik dua

kali pada titik node. Jika ingin menghapus jalur cukup dengan klik

dua kali pada jalur, data akan otomatis terhapus. Pada source code 4.9

untuk menyimpan data node dijkstra yaitu

80
<div class="under_map hide">

<input id="autoElevation" type="checkbox" name="autoMap"


value="1" onchange="ChangeAutoElevation()"> Automatically
change node values according to the elevation<br>

<input id="autoDistance" type="checkbox" name="autoMap"


value="2" onchange="ChangeAutoDistance()"> Automatically
change edge values according to the distance<br></div>

<div class="export_panel hide"> <h2>Export Option</h2>

<div class="exportOptions">

<input id="includeNodeValueCheck" type="checkbox"


name="autoMap" value="1"
onchange="ChangeIncludeNodeValue()" checked>

Include value of node<br></div>

<div class="exportOptions">

<input id="includeNodeInfoCheck" type="checkbox"


name="autoMap" value="2"
onchange="ChangeIncludeNodeInfo()" checked>

Include Info. of node<br></div>

<div class="exportOptions">

<input id="includeEdgeValueCheck" type="checkbox"


name="autoMap" value="1"
onchange="ChangeIncludeEdgeValue()" checked>

Include value of edge<br></div>

81
<div class="exportOptions">

<input id="includeEdgeInfoCheck" type="checkbox"


name="autoMap" value="2"
onchange="ChangeIncludeEdgeInfo()" checked>

Include Info. of edge<br></div>

<div class="button_wrapper">

<button type="button" name="exportBtn"


class="new_panel_create_button" onclick="ExportFile()">
Export File </button> </div> </div>

<div class="export_panel hide">

<h2>Edit Node</h2>

<div class="button_wrapper">

<input id="file_upload" type="file" name="importFile"


class="hidden" onchange="ImportFile(this)">

<label class="import_file_button" for="file_upload">

Import File

</label> </div>

<div class="button_wrapper">

<button type="button" name="deleteAllBtn"


class="all_delete_button" onclick="DeleteAllNodes()">

Delete all nodes </button> </div> </div>

</div>

Source Code 4.9

82
BAB V

HASIL PENELITIAN DAN PEMBAHASAN

5.1 Hasil Penelitian

Hasil penelitian dari Sistem Informasi Pencarian Tempat Ibadah untuk

Merekomendasikan Tempat Ibadah Terdekat Menggunakan Algoritma Dijkstra

adalah merekomendasikan tempat Ibadah terdekat dari posisi pengguna saat ini.

Proses rekomendasi dimulai dari pengguna memilih jenis Agama sesuai

keinginan pengguana yang terdiri dari Agama Islam, Kristen Protestan, Kristen

Khatolik, Budha, Hindu dan Konggucu. Sebagai contoh Agama yang dipilih

pengguna adalah Agama Islam yang diperlihatkan seperti gambar 5.1

Gambar 5.1 Pemilihan jenis Agama Islam

83
Proses selanjutnya adalah memilih lokasi pengguna yang diinginkan.

Untuk memilih lokasi pengguna, pengguna dapat mengklik satu kali pada

gambar peta googl map. Sebagai contoh lokasi pengguna yang dipilih berada

pada Alamat Jl. Veteran No.29, Lempongsari, Kec. Gajahmungkur, kota

Semarang, Jawa Tengah 50231, Indonesia. Lokasi pengguna yang dipilih

diperlihatkan seperti gambar 5.2.

Gambar 5.2 Posisi Pengguna

Selanjutnya Sistem akan menghitung jarak dari lokasi pengguna ke

Tempat Ibadah dengan Algoritma Dijkstra. Hasil rekomendasi akan

menampilkan tempat dengan nomer urut yang sesuai jarak yang paling terdekat

dari lokasi pengguna yang dipilih yang diperlihatkan seperti gambar 5.3.

84
Gambar 5.3 Hasil Rekomendasi

Pada Gambar 5.3 Masjid yang terdekat dengan pengguna adalah masjid

baiturrahman dengan jarak 1.5 km, yang terdekat selanjutnya Masjid Ar Rahmah

dengan jarak 1.93 km. hasil rekomendasi ini sistem akan menampilkan tempat

ibadah dengan nomor urut sesuai dengan jarak terdekat sama pengguna.

Proses selanjutnya adalah mencari rute yang direkomendasikan oleh

sistem. Pertama pengguna memilih menu cari rute, pengguna memilih lokasi

yang diinginkan, setelah itu pengguna memilih tempat tujuan yang diinginkan.

Cari Rute di perlihatkan Pada gambar 5.4.

85
Gambar 5.4 Cari Rute

Selanjutnya sistem akan menampilkan jalur yang telah direkomendasikan.

Berikut hasil Cari Rute di tunjukan pada Gambar 5.5.

Gambar 5.5 Hasil Cari Rute

86
5.2 Pembahasan

Proses perhitungan jarak pengguna ke tempat ibadah dan dapat

merekomendasikan Rute terdekat dengan menggunakan algoritma dijkstra

sebagai berikut:

Perhitungan Tempat Ibadah terdekat pada penelitian ini dapat diberikan 1

contoh kasus detail. Langkah pertama adalah penentuan posisi pengguna dan

posisi Tempat Ibadah terdekat yang dapat dilihat pada gambar 5.6.

Gambar 5.6 Posisi Pengguna dengan Tempat Ibadah Terdekat

87
Langkah kedua posisi geometry user dan SPBU dibandingkan unntuk

mendapat jaraknya. Hasil perbandingan jarak dapat dilihat pada tabel 1. Dari

hasil perbandingan tersebut akan dilakukan perhitungan jalur terpendek.

Perhitungan ini dilakukan dengan meenghitung panjang pada masing-masing

jalan. Pada penelitian ini, setiap persimpangan jalan yang ada adalah vertex.

Langkah berikutnya adalah perhitungan jalur terpendek dengan

menggunakan algoritma Dijkstra. Perhitungan ini dapat dilakukan dengan

representasi graph. Jalan antara user dengan SPBU digambarkan dengan edge,

sedangkan setiap persimpangan akan digambarkan dengan vertex.

88
Tempat ibadah penguna

89
no Nama Latitude longtitude Latitude Longtitude jarak

1 Masjid Ar - 110.4173 - 110.41536 1.28 km

Rohmah 6.9901633170 34437377 6.996651 569595337

95965 03 2296767

84

2 Masjid - 110.4220 - 110.41536 1.13 km

Baiturrahma 6.9889306833 06845474 6.996651 569595337

n 88142 42 2296767

84

3 Masjid - 110.4112 - 110.41536 2.81 km

salafiyatul 6.9858850290 83373832 6.996651 569595337

Huda 3951 7 2296767

84

4 Masjid - 110.4226 - 110.41536 3.66 km

Agung 6.9724668582 07660293 6.996651 569595337

Semarang 23718 58 2296767

84

5 Masjid -6.9839026 110.4459 - 110.41536 0.75 km

Agung Jawa 023 6.996651 569595337

Tengah 2296767

84

90
Tabel 5.1 Hasil Perbandingan Jarak Geometry

Notasi graph hasil representasi pencarian jalur terpendek tempat ibadah


dapat dilihat pada gambar 5.7

1.49 km 0.18 km
E D
1.67km
C

1.18km

0.87 km

0.79 km 0.46 km
F G A
0.26 km 1.25 km B

Gambar 5.7 Notasi Graph pencarian jalur terdekat

Pada Gambar 5.7 Titik A berwarna Hijau merupakan pengguna dan Titik D

Berwarna Merah Tujuan. Penentuan jalur terpendek pada gambar 5.7 dengan

menggunakan algoritma Dijkstra menghasilkan rute terpendek A > B > C > D.

Perhitungan penyelesaiannya dapat dilihat pada tabel 2.

NO Vertex Sumber Jarak Dengan Vertex Lain


1 A A–B 0.46
A–G 0.79
2 B B–C 0.87 + 0.46 = 1.33
B–G 1.25 + 0.46 = 1.71
3 C C–D 0.18 + 1.33 = 1.51

91
C–E 1.67 + 1.33 = 3
4 D D–E 1.49 + 1.51 = 3
5 E E–F 1.18 + 3 = 4.18
6 F F–G 0.26 + 4.18 = 4.44

Tabel 5.2 Hasil Perhitungan Dijkstra

Hasil perhitungan dari algoritma dijkstra telah diimplementasikan kedalam

sistem pada penelitian ini. Hasil yang ditampilkan sistem dengan contoh kasus ini

telah sesuai dengan perhitungan manual algoritma dijkstra. Perhitungan dari sistem

dapat dilihat pada gambar 5.8.

Gambar 5.8 Hasil Perhitungan Sistem

Hasil pada sistem menunjukkan jarak pengguna dengan tempat ibadah terdekat
yaitu Masjid Baiturrahman 1.5 km.

Jalur terpendek yang telah direkomendasikan oleh sistem dari posisi pengguna
sampai tujuan Masjid Baiturrohman dengan Rute Graph A > B > C > D = (A > B =

92
0.46 km) + (B > C = 1.33 km) + (C > D = 0.18 km) = 0.46 km + 1.33 km + 0.18 km
= 1.51 km. Hasil Jalur terpendek yang direkomendasikan sistem dapat dilihat pada
Gambar 5.9

Gambar 5.9 Hasil Jalur terpendek

93
BAB VI

KESIMPULAN DAN SARAN

Dengan terselesaikannya Sistem Informasi Pencarian Tempat Ibadah Untuk

Merekomendasikan Tempat Terdekat Menggunakan Algoritma Dijkstra, maka dapat

ditarik kesimpulan dan saran yang tentu tidak dapat ditinggalkan sebagai bahan

masukan apabila pembaca akan mengembangkan sistem ini lebih lanjut dan lebi baik

lagi.

6.1 Kesimpulan

Dari apa yang telah diuraikan serta penelitian yang telah penulis lakukan

dalam membuat Sistem Pencarian Tempat Ibadah Untuk Merekomendasikan

Tempat Terdekat menggunakan Algoritma Dijkstra, maka dapat ditarik

kesimpulan sebagai berikut :

1. Pada Sistem ini pengguna akan mendapatkan rekomendasi Tempat Ibadah

Terdekat sesuai Agama yang dipilih, beserta Rute yang direkomendasikan

oleh sistem.

94
2. Hasil perhitungan manual dengan perhitungan Sistem Pencarian Tempat

Terdekat untuk merekomendasikan Tempat Terdekat Menggunakan

Algoritma Dijkstra didapatkan hasil yang tidak jauh berbeda.

6.2 Saran

Berikut ini merupakan saran dari penulis terhadap pengembangan Sistem

Informasi Pencarian Tempat Ibadah Untuk Merekomendasikan Tempat Terdekat

Menggunakan Algoritma Dijkstra lebih lanjut :

1. Sistem informasi pencarian tempat ibadah untuk merekomendasikan tempat

terdekat menggunakan Algoritma Dijkstra dapat dikembangkan tidak hanya

tempat ibadah saja, bisa ditambah dengan tempat wisata.

2. Membandingkan dengan metode pengukuran jarak lainnya.

95
DAFTAR PUSTAKA

Retnani, W. E. Y., Istiadi, D. and Roqib, A. (2015) ‘Pencarian SPBU Terdekat dan

Penentuan Jarak Terpendek Menggunakan Algoritma DIJKSTRA (Studi Kasus

di Kabupaten Jember)’, Jurnal Nasional Teknik Elektro, 4(1), p. 89. doi:

10.25077/jnte.v4n1.132.2015.

Mahendra, D. (2017) ‘Sistem Informasi Geografi Penentuan Jarak Masjid Terpendek

Menggunakan Algoritma Djikstra Di Kabupaten Kudus Berbasis Android’,

Jurnal DISPROTEK, 8, pp. 42–50.

Fitria and Triansyah, A. (2013) ‘Implementasi Algoritma Dijkstra Dalam Aplikasi

Untuk Menentukan Lintasan Terpendek Jalan Darat Antar Kota Di Sumatera

Bagian Selatan’, Jurnal Sistem Informasi (JIS), 5(2), pp. 611–621. Available

at: http://ejournal.unsri.ac.id/index.php/jsi/article/download/840/430.

Gusmão, A. and Pramono, S. H. (2013) ‘Sistem Informasi Geografis Pariwisata

Berbasis Web Dan Pencarian Jalur Terpendek Dengan Algoritma Dijkstra’,

7(2), pp. 125–130.

Sunaryo, M., Ariyanto, Y. and Astuti, E. S. (2016) ‘Aplikasi Pencarian Rute Masjid

Terdekat Di Kota Malang Berbasis Android’, Seminar Informatika Aplikatif

Polinema, pp. 1–6.

96
Yusuf, M. S., Az-zahra, H. M. and Apriyanti, D. H. (2017) ‘Implementasi Algoritma

Dijkstra Dalam Menemukan Jarak Terdekat Dari Implementasi Algoritma

Dijkstra Dalam Menemukan Jarak Terdekat Dari Lokasi Pengguna Ke

Tanaman Yang Di Tuju Berbasis Android ( Studi Kasus di Kebun Raya

Purwodadi )’, Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer,

1(August), pp. 1779–1781.

Fairuz Eka Andiany, W. H. (2018) ‘Implementasi Algoritma Dijkstra Untuk Mencari

Rute Terpendek Antar Kantor dan Estimasi Penggunaan Bahan Bakar

Kendaraan (studi kasus PT. Telkom Indonesia Regional IV Jateng-DIY)’,

Prosiding SENDI_U, pp. 978–979.

Skolastika, C., and Februariyanti, H.(2019). ‘Aplikasi Pencarian Jalur Taman Wifi

Gratis Kota Semarang Dengan Menggunakan Algoritma Dijkstra’ Universitas

Stikubank, Semarang.

97

Anda mungkin juga menyukai