BAB I PENDAHULUAN 1.1
Latar belakang Penggunaan peta sangat penting dalam berbagai bidang kehidupan. Salah satu
contohnya ialah saat melakukan perjalanan ke daerah yang belum dikenal baik, tentulah kita memerlukan akses terhadap peta yang dapat diandalkan, baik dalam bentuk cetak maupun elektronik. Sistem
informasi
geografis,
atau
lebih
sering disebut
dengan
GIS
(Geographical Information System) merupakan sebuah tren teknologi pemetaan berupa sebuah sistem informasi yang mampu menghasilkan data bereferensi geografis [1]. Seiring meningkatnya mobilitas masyarakat dan tingginya kebutuhan informasi berupa peta, bertambah pula kebutuhan penggunaan GIS, terutama pada telepon cerdas atau lazimnya disebut smartphone. Salah satu kelebihan smartphone ialah adanya teknologi GPS (Global Positioning System) yang telah terintegrasi. Hal ini memudahkan pengembang untuk memanfaatkan nilai-nilai geografis dari teknologi GPS yang berupa koordinat untuk mengembangkan berbagai aplikasi berbasis LBS (Location based Service). Aplikasiaplikasi tersebut dapat memberikan informasi posisi pengguna (user), apa saja yang dekat dengan pengguna, arah rute menuju suatu lokasi, dan lain-lain [2]. Aplikasi semacam itu tentulah sangat berguna bagi masyarakat, terutama pengguna smartphone. Bayangkan, hanya dengan memanfaatkan ponsel cerdas, masyarakat dapat mengetahui lokasi tempat yang dituju, rute yang harus ditempuh untuk mencapai lokasi tersebut, serta perkiraan waktu yang dibutuhkan untuk ke sana. Android merupakan salah satu platform dari perangkat smartphone. Salah satu keutamaan android yaitu lisensinya bersifat terbuka (open source) dan gratis (free) sehingga bebas untuk dikembangkan karena tidak ada biaya royalti maupun pendistribusian dalam bentuk apapun. Hal tersebut memudahkan para programmer
1
untuk membuat aplikasi baru di dalamnya. Selain itu, Android juga merupakan media yang dapat mengeksplorasi kemampuan GIS lewat Google Map [3]. Aplikasi Android yang memanfaatkan GIS semakin bertambah dari hari ke hari, dan terbukti sangat membantu masyarakat. Contohnya, aplikasi untuk menemukan lokasi ATM, rumah sakit, kampus, dan lain-lain. Tanpa aplikasi GIS, bisa dibayangkan kerepotan yang harus dihadapi saat tidak mengetahui lokasi tempat yang dituju. Berapa banyak waktu kita terbuang untuk bertanya kesana kemari? Atau berapa banyak uang serta tenaga yang dikeluarkan untuk membeli peta konvensional (cetak) dan menelusurinya secara manual? Itulah sebabnya penerapan GIS pada perangkat smartphone merupakan cara yang efisien dalam pencarian lokasi. Dinas Pemuda dan Olahraga Propinsi Jawa Tengah yang beralamat di Jalan Ki Mangunsarkoro No 12 Semarang sebagai salah satu instansi pemerintah, selama ini telah membina kelompok usaha pemuda di wilayah Jawa Tengah untuk mengembangkan usaha yang sudah dirintis, melakukan pendampingan, pelatihan dan bantuan modal [4]. Sayangnya lokasi usaha pemuda ini belum cukup diketahui oleh masyarakat. Hal ini disebabkan oleh kurangnya promosi dan belum adanya media yang dapat digunakan untuk menunjukkan lokasi usaha tersebut. Selama ini belum ada aplikasi yang memudahkan masyarakat untuk mencapai lokasi usaha-usaha pemuda binaan Dinpora di wilayah Jawa Tengah. Berangkat dari permasalahan ini, maka penulis berminat untuk merancang aplikasi GIS berbasis Android untuk pencarian lokasi usaha pemuda binaan Dinpora di wilayah Jawa Tengah tersebut. Agar lebih efisien, penulis mencoba menerapkan algoritma Floyd-Warshall untuk mencari rute terdekat dari posisi user ke lokasi yang dituju. Algoritma Floyd Warshall adalah salah satu varian dari pemrograman dinamis, metode untuk memecahkan masalah pencarian rute terpendek. Metode ini melakukan pemecahan masalah dengan memandang solusi yang akan diperoleh sebagai suatu keputusan yang saling terkait. Maksudnya, solusi-solusi dibentuk dari solusi yang berasal dari tahap sebelumnya dan ada kemungkinan solusi lebih dari satu. Algoritma ini juga bisa diterapkan pada sebuah aplikasi pencari rute jalan yang terdekat dari 2
suatu daerah ke daerah lainnya. Dengan metode ini hasil yang di dapat bisa lebih optimal namun memerlukan resource yang cukup besar jika dipakai untuk pencarian yang kompleks [5]. Oleh karena itu, penulis memberi judul penelitian ini “PEMETAAN LOKASI USAHA
PEMUDA
BINAAN
DINPORA
JAWA
TENGAH
DENGAN
ALGORITMA FLOYD-WARSHALL” Penelitian
ini
dikembangkan
dengan
menggunakan
metode
Extreme
Programming, yaitu salah satu metodologi dalam rekayasa perangkat lunak yang berfokus pada coding sebagai aktivitas utama di semua tahap pada siklus pengembangan perangkat lunak (software development lifecycle). Metodologi ini mengedepankan proses pengembangan yang lebih responsive terhadap kebutuhan customer (”agile”) dibandingkan dengan metode-metode tradisional sambil membangun suatu software dengan kualitas yang lebih baik [6]. 1.2
Perumusan Masalah Penulis merumuskan masalah menjadi: a) Bagaimana membangun aplikasi sistem informasi geografis berbasis Android untuk pencarian lokasi usaha pemuda binaan Dinpora Jawa Tengah? b) Bagaimana menerapkan algoritma Floyd-Warshall ke dalam aplikasi tersebut untuk menentukan rute terdekat dari posisi user ke lokasi usaha pemuda binaan Dinpora Jawa Tengah?
3
1.3
Pembatasan Masalah Agar lingkup penelitian ini tidak menyimpang dari tujuannya maka penulis
memberikan batasan sebagai berikut: a) Pembuatan aplikasi ini hanya sebatas menentukan rute terdekat menuju lokasi usaha pemuda binaan Dinpora Jawa Tengah. b) Pengintegrasian teknologi yang digunakan hanya meliputi GIS, GSM, GPS, dan Android versi Kitkat c) Hasil akhir penelitian ini hanya berupa prototype 1.4
Tujuan Penelitian Berdasarkan rumusan masalah di atas maka tujuan penelitian ini adalah sebagai
berikut: a) Membangun aplikasi sistem informasi geografis berbasis Android untuk pencarian lokasi usaha pemuda binaan Dinpora Jawa Tengah. b) Menerapkan algoritma Floyd-Warshall ke dalam aplikasi tersebut untuk menentukan rute terdekat dari posisi user ke lokasi usaha pemuda binaan Dinpora Jawa Tengah. 1.5
Manfaat Penelitian a) Bagi Penulis (i) Menerapkan ilmu yang telah diperoleh dari Fakultas teknik Informatika Konsentrasi
Rekayasa
Perangkat
Lunak
di
Universitas
Dian
Nuswantoro, Semarang. (ii) Memperoleh pemahaman tentang perancangan
dan pengembangan
aplikasi sistem informasi geografis berbasis Android dengan algoritma floyd-warshall untuk pencarian rute terdekat menuju lokasi usaha pemuda binaan Dinpora Jawa Tengah.
4
b) Bagi Masyarakat Membantu menyediakan sarana informasi dalam mencari lokasi usaha pemuda binaan Dinpora Jawa Tengah dan rute terdekat untuk mencapai lokasi tersebut. c) Bagi Akademik (i) Sebagai tolak ukur tingkat pemahaman dan penguasaan materi terhadap permasalahan yang diajukan. (ii) Sebagai
bahan
evaluasi
akademik
untuk
meningkatkan
mutu
pendidikan. (iii)Sebagai bahan referensi bagi penelitian dan pengembangan lebih lanjut. d) Bagi Pembaca Sebagai bahan pengetahuan, pembanding dan acuan dalam menghadapi permasalahan atau kasus penelitian serupa.
5
BAB II KAJIAN PUSTAKA Bab ini berisi dasar teori yang digunakan untuk menunjang penulisan skripsi. 2.1. Tinjauan Studi Ada beberapa studi maupun project pembuatan aplikasi mobile GIS sebelumnya yang menginspirasi penulis untuk mengadakan project
pembuatan
PEMETAAN LOKASI USAHA PEMUDA BINAAN DINPORA JAWA TENGAH DENGAN ALGORITMA FLOYD-WARSHALL. Berikut adalah beberapa jurnal yang penulis pelajari sebelum memutuskan untuk mengajukan proposal penelitian ini. a.
PEMBUATAN APLIKASI PETA RUTE BUS TRANS JOGJA BERBASIS MOBILE GIS MENGGUNAKAN SMARTPHONE ANDROID oleh Danang Budi Susetyo, Andri Suprayogi, S.T, M.T dan M. Awaluddin, S.T, M.T untuk Program Studi Teknik Geodesi Fakultas Teknik, Unversitas Diponegoro, Semarang [7]. Aplikasi yang dibuat oleh tim ini diberi nama GeoTrans 1.0 yang berjalan pada versi GingerBread ke atas dengan koneksi paling cepat menggunakan jaringan 3G ke atas (WCDMA atau HSDPA). Pembuatan aplikasi mobile GIS Android GeoTrans 1.0 menggunakan software XAMPP, Eclipse, dan Notepad ++. XAMPP digunakan dalam pembuatan database, Eclipse digunakan untuk coding bahasa pemrograman java, dan Notepad ++ digunakan untuk membuat coding PHP. Sedangkan proses menampilkan peta pada Google Map dan pengambilan database dilakukan secara online digunakan hosting dari server.
6
b.
APLIKASI MOBILE GIS BERBASIS ANDROID LOKASI PERGURUAN TINGGI PROVINSI DAERAH ISTIMEWA YOGYAKARTA oleh Widy Sulistianto, Budi Santosa,S.SI, MT., dan Herry Sofyan S.T., M.KOM. Aplikasi ini berfungsi sebagai media navigasi terkait pencarian lokasi user, kalkulasi jarak, serta rute perguruan tinggi yang ada di Provinsi Daerah Istimewa Yogyakarta. Dengan memanfaatkan google map sebagai penyedia peta virtual, aplikasi ini memililiki fitur berupa pengecekan posisi user, kalkulasi jarak perguruan tinggi dari posisi user, serta polyline rute perguruan tinggi yang akan dituju oleh user. Aplikasi ini pun disertai pengecekan koordinat serta informasi beasiswa sebagai fitur tambahan. Berdasarkan penelitian ini, dalam menjalan aplikasi bersifat Mobile GIS user disarankan
untuk
menggunakan
sistem
operasi
Android
versi
2.3
(Gingerbread), dikarenakan sistem operasitersebut lebih cepat dalam hal konektivitas internet serta request Location Manager dibanding versi 2.2 (froyo). 2.2. Sistem Informasi Geografis(SIG) 2.2.1. Definisi Sistem Informasi Geografis Sistem Informasi Geografis (bahasa Inggris: Geographic Information System disingkat GIS) adalah sistem informasi khusus yang mengelola data yang memiliki informasi spasial (bereferensi keruangan), atau dalam arti yang lebih sempit adalah sistem komputer yang memiliki kemampuan untuk membangun, menyimpan, mengelola dan menampilkan informasi berefrensi geografis, misalnya data yang diidentifikasi menurut lokasinya, dalam sebuah database. Menurut sumber lain GIS adalah suatu sistem informasi yang dirancang untuk bekerja dengan data yang bereferensi spasial atau berkoordinat geografi, atau dengan kata lain suatu GIS adalah suatu sistem basis data dengan kemampuan khusus untuk menangani data yang bereferensi keruangan (spasial) bersamaan dengan seperangkat operasi kerja [8]. 7
Sedangkan menurut Anon, Sistem Informasi Geografis adalah suatu Sistem Informasi yang dapat memadukan antara data grafis (spasial) dengan data teks (atribut) objek yang dihubungkan secara geografis di bumi (georeference). Disamping itu, GIS juga dapat menggabungkan data, mengatur data dan melakukan analisis data yang akhirnya akan menghasilkan keluaran yang dapat dijadikan acuan dalam pengambilan keputusan pada masalah yang berhubungan dengan geografi [9]. Sistem Informasi Geografis dibagi menjadi dua kelompok yaitu sistem manual (analog), dan sistem otomatis (yang berbasis digital komputer). Perbedaan yang paling mendasar terletak pada cara pengelolaannya. Sistem Informasi manual biasanya menggabungkan beberapa data seperti peta, lembar transparansi untuk tumpang susun (overlay), foto udara, laporan statistik dan laporan survey lapangan. Kesemua data tersebut dikompilasi dan dianalisis secara manual dengan alat tanpa komputer. Sedangkan GIS otomatis telah menggunakan komputer sebagai sistem pengolah data melalui proses digitasi. Sumber data digital dapat berupa citra satelit atau foto udara digital serta foto udara yang terdigitasi. Pengertian GIS saat ini lebih sering diterapkan bagi teknologi informasi spasial atau geografi yang berorientasi pada penggunaan teknologi komputer. Dalam hubungannya dengan teknologi komputer, Arronoff mendefinisikan GIS sebagai sistem berbasis komputer yang memiliki kemampuan dalam menangani data bereferensi geografi yaitu pemasukan data, manajemen data (penyimpanan dan pemanggilan kembali), memanipulasi dan analisis data, serta keluaran sebagai hasil akhir (output) [10]. Sedangkan Burrough mendefinisikan GIS sebagai sistem berbasis komputer yang digunakan untuk memasukkan, menyimpan, mengelola, menganalisis dan mengaktifkan kembali data yang mempunyai referensi keruangan untuk berbagai tujuan yang berkaitan dengan pemetaan dan perencanaan [11]. Komponen utama Sistem Informasi Geografis dapat dibagi kedalam 4 komponen utama yaitu: perangkat keras (digitizer, scanner, Central Procesing Unit (CPU), hard-disk, dan lain-lain), perangkat lunak (ArcView, Idrisi, ARC/INFO, ILWIS, MapInfo, dan lainlain), organisasi (manajemen) dan pemakai (user). Kombinasi yang benar antara 8
keempat komponen utama ini akan menentukan kesuksesan suatu proyek pengembangan Sistem Informasi Geografis. Tujuan pokok dari pemanfaatan Sistem Informasi Geografis adalah untuk mempermudah mendapatkan informasi yang telah diolah dan tersimpan sebagai atribut suatu lokasi atau obyek. Ciri utama data yang bisa dimanfaatkan dalam Sistem Informasi Geografis adalah data yang telah terikat dengan lokasi dan merupakan data dasar yang belum dispesifikasi [12]. Data-data yang diolah dalam GIS pada dasarnya terdiri dari data spasial dan data atribut dalam bentuk digital, dengan demikian analisis yang dapat digunakan adalah analisis spasial dan analisis atribut. Data spasial merupakan data yang berkaitan dengan lokasi keruangan yang umumnya berbentuk peta. Sedangkan data atribut merupakan data tabel yang berfungsi menjelaskan keberadaan berbagai objek sebagai data spasial. Penyajian data spasial mempunyai tiga cara dasar yaitu dalam bentuk titik, bentuk garis dan bentuk area (polygon). Titik merupakan kenampakan tunggal dari sepasang koordinat x,y yang menunjukkan lokasi suatu obyek berupa ketinggian, lokasi Kabupaten, lokasi pengambilan sample dan lain-lain. Garis merupakan sekumpulan titik-titik yang membentuk suatu kenampakan memanjang seperti sungai, jalan, kontus dan lain-lain. Sedangkan area adalah kenampakan yang dibatasi oleh suatu garis yang membentuk suatu ruang homogen, misalnya: batas daerah, batas penggunaan lahan, pulau dan lain sebagainya. Struktur data spasial dibagi dua yaitu model data raster dan model data vektor. Data raster adalah data yang disimpan dalam bentuk kotak segi empat (grid)/sel sehingga terbentuk suatu ruang yang teratur. Data vektor adalah data yang direkam dalam bentuk koordinat titik yang menampilkan, menempatkan dan menyimpan data spasial dengan menggunakan titik, garis atau area polygon [8].
9
Berdasarkan pengertian-pengertian diatas, maka GIS dapat berfungsi sebagai: bank data terpadu, yaitu dapat memandu data spasial dan non spasial dalam suatu basis data terpadu, sistem modeling dan analisi, yaitu dapat digunakan sebagai sarana evaluasi potensi wilayah dan perencanaan spasial; sistem pengelolaan yang bereferensi geografis, yaitu untuk mengelola operasional dan administrasi lokasi geografis; sebagai sistem pemetaan komputasi, yaitu sistem yang dapat menyajikan peta sesuai dengan kebutuhan. 2.2.2. Subsistem Sistem Informasi Geografis Sistem Informasi Geografis dapat diuraikan menjadi beberapa subsistem sebagai berikut: a.
Data Input: Subsistem ini bertugas untuk mengumpulkan data dan mempersiapkan data spasial dan atribut dari berbagai sumber dan bertanggung jawab dalam mengkonversi atau mentransfortasikan format-format data-data aslinya kedalam format yang dapat digunakan oleh GIS.
b.
Data output: Subsistem ini menampilkan atau menghasilkan keluaran seluruh atau sebagian basis data baik dalam bentuk softcopy maupun bentuk hardcopy seperti: tabel, grafik dan peta.
c.
Data Management: Subsistem ini mengorganisasikan baik data spasial maupun data atribut ke dalam sebuah basis data sedemikian rupa sehingga mudah dipanggil, diupdate dan diedit.
d.
Data Manipulation & Analysis: Subsistem ini menentukan informasi-informasi yang dapat dihasilkan oleh GIS dan melakukan manipulasi serta pemodelan data untuk menghasilkan informasi yang diharapkan, dapat di lihat pada Gambar 2.1.
10
Gambar 2.1 Subsistem-subsistem GIS
2.2.3. Mobile GIS Teknologi GIS (Geographic Information System) mengalami perkembangan yang sangat pesat.Teknologi itu diantaranya adalah mobile GIS dimana GIS yang tadinya hanya digunakan di dalam lingkungan kantor menjadi semakin fleksibel dan mampu digunakan di luar kantor secara mobile. Mobile GIS merupakan sebuah integrasi cara kerja perangkat lunak/ keras untuk pengaksesan data dan layanan geospasial melalui perangkat bergerak via jaringan kabel atau nirkabel. Saat ini, aplikasi Mobile GIS telah menjadi sebuah kebutuhan. Selama ini banyak kegiatan di lapangan menggunakan Global Postioning System (GPS), laptop, dan perangkat lunak GIS untuk melakukan pemetaan secara real time. Dengan konfigurasi yang baik, pengguna akan dapat melihat posisinya di lapangan melalui
11
peta, citra, atau bentuk spasial lainnya. Mobile GIS merupakan sebuah integrasi cara kerja perangkat lunak/keras untuk pengaksesan data dan layanan geospasial melalui perangkat bergerak via jaringan kabel atau nirkabel [2]. Secara umum, mobile GIS diimplementasikan pada dua area aplikasi utama yaitu Layanan Berbasis Lokasi (Location Based Service) dan GIS untuk kegiatan lapangan (Field Based GIS). Berikut ini hal-hal yang berkenaan dengan aplikasi mobile GIS [2]: 1.
Diimplementasikan pada perangkat bergerak dengan keterbatasan ruang penyimpanan, memori, dan resolusi.
2.
Dapat diimplementasikan secara mandiri (stand alone) dengan menyimpan data dalam perangkat bergerak (untuk aplikasi sederhana), atau disesuaikan dengan arsitektur server-nya.
3.
4.
Kemampuan aplikasi mobile GIS, seperti:
Menampilkan atau melakukan navigasi.
Mengidentifikasi.
Pencarian atau query.
Memodifikasi nilai atribut.
Pemberian tanda atau redline.
Memodifikasi geometri.
Mengintegrasikan dengan data kantor.
Terdapat dua jenis data, yaitu koleksi data (data collection) dan navigasi (navigation). Adapun kelebihan sistem koleksi data dengan mobile GIS adalah sebagai berikut: a.
Dapat diintegrasikan dengan perangkat GPS, rangefinder, dan kamera digital.
b.
Sistem koleksi data sangat efisien, yaitu hanya dengan point dan click.
c.
Data spasial dikelola dalam dataset referensi.
12
2.3. Algoritma Floyd-Warshall Pencarian rute terpendek merupakan suatu masalah yang paling banyak dibahas dan dipelajari sejak akhir tahun 1950. Pencarian rute terpendek ini telah diterapkan di berbagai bidang untuk mengoptimasi kinerja suatu sistem baik untuk meminimalkan biaya ataupun mempercepat jalannya suatu proses. Salah satu aplikasi pencarian rute terpendek yang paling menarik untuk dibahas adalah pada masalah transportasi. Pencarian rute terpendek termasuk dalam salah satu persoalan dalam teori graf yang berarti meminimalisasi bobot suatu lintasan dalam graf. Algoritma floydWarshall dapat menghitung bobot terkecil dari semua jalur yang menghubungkan sebuah pasangan titik, dan melakukannya sekaligus untuk semua pasangan titik. Dengan kata lain pada saat perhitungan rute optimum yang akan dilalui terlebih dahulu menghitung semua kemungkinan rute yang akan dilalui kemudian mencari rute optimum dengan cara membandingkan setiap pasangan rute. Menurut Siang, graf adalah kumpulan simpul (titik) yang dihubungkan satu sama lain melalui sisi/busur (lintasan) [13]. Suatu graf G terdiri dari 2 himpunan yang berhingga, yaitu himpunan titik titik kosong (symbol V(G)) dan himpunan garis garis (symbol E(G)). Setiap garis berhubungan dengan satu atau dua titik. Titik titik tersebut dinamakan titik ujung. Garis yang hanya berhubungan dengan satu titik ujung disebut loop. Dua garis berbeda yang menghubungkan titik yang sama disebut garis paralel. Dua titik dikatakan berhubungan (adjacent) jika ada garis yang menghubungkan keduanya. Titik yang tidak memiliki garis yang berhubungan dengannya disebut titik tersaing (isolating point). Graf yang tidak memiliki titik sehingga tidak memiliki garis disebut graf kosong. Dalam teori graf, persoalan lintasan terpendek (the shortest path problem) merupakan suatu persoalan untuk mencari lintasan antara dua buah titik pada graf berbobot yang memiliki gabungan nilai jumlah bobot pada sisi graf yang dilalui dengan jumlah yang paling minimum. Gambar 2.3 menunjukkan contoh penyelesaian shortest path problem.
13
Gambar 2.2. Shortest Path Problem Algoritma floyd-warshall adalah salah satu varian dari pemrograman dinamis, yaitu suatu metode yang melakukan pemecahan masalah dengan memandang solusi yang akan diperoleh sebagai suatu keputusan yang saling terkait. Artinya solusisolusi tersebut dibentuk dari solusi yang berasal dari tahap sebelumnya dan ada kemungkinan solusi lebih dari satu [14]. Dalam usaha untuk mencari lintasan terpendek, algoritma floyd-warshall memulai iterasi dari titik awalnya kemudian memperpanjang lintasan dengan mengevaluasi titik demi titik hingga mencapai titik tujuan dengan jumlah bobot yang seminimum mungkin. Misalkan W0 adalah martiks hubung graf berarah berlabel mula-mula. W* adalah matriks hubung minimal dengan Wij*= lintasan terpendek dari titik vi ke vj., algoritma Floyd-Warshall untuk mencari lintasan terpendek adalah sebagai berikut [13]: 1. W = W0 2. Untuk k = 1 hingga n, lakukan: Untuk i = 1 hingga n, lakukan: Untuk j = 1 hingga n lakukan; Jika W[i, j] > W[i, k] + W[k, j] maka 14
Tukar W[i, j] dengan W[i, k] + W[k, j] 3. W* = W Keterangan: W = matriks W0= Martik hubung graf mula-mula k = iterasi 1 sampai ke-n i = titik awal pada vi j = titik akhir pada vj W*=hasil matriks setelah perbandingan Dalam iterasinya untuk mencari lintasan terpendek, algoritma floyd-warshall membentuk n matriks sesuai dengan iterasi-k. Itu menyebabkan waktu prosesnya lambat, terutama untuk n yang besar. Meskipun waktu prosesnya bukanlah yang tercepat, algoritma floyd-warshall sering dipergunakan untuk menghitung lintasan terpendek karena kesederhanaan algoritmanya. Algoritma ini menghitung bobot terkecil dari semua jalur yang menghubungkan sebuah pasangan titik, dan melakukannya sekaligus untuk semua pasangan titik. Dengan kata lain pada saat perhitungan rute optimum yang akan dilalui terlebih dahulu. Algoritma
floyd-warshall
bekerja
berdasarkan
formulasi
dynamic
programming. Setiap langkahnya akan memeriksa lintasan antara vi dan vjapakah bisa lebih pendek jika melalui vi-vk dan vk-vj. Berikut ini pseudocode algoritma floyd-warshall [16]: function fw(int[1..n,1..n] graph) { // Inisialisasi var int[1..n,1..n] jarak := graph var int[1..n,1..n] sebelum for i from 1 to n for j from 1 to n if jarak[i,j] < Tak-hingga 15
sebelum[i,j] := i // Perulangan utama pada algoritma for k from 1 to n for i from 1 to n for j from 1 to n if jarak[i,j] > jarak[i,k] + jarak[k,j] jarak[i,j] = jarak[i,k] + jarak[k,j] sebelum[i,j] = sebelum[k,j] return jarak } 2.4. Android Android merupakan subset perangkat lunak untuk perangkat mobile yang meliputi sistem operasi, middleware, dan aplikasi inti yang dirilis oleh Google. Sedangkan AndroidSDK menyediakan Tools dan Application Programming Inferface (API) yang diperlukan untuk mengembangkan pada platform Android dengan menggunakan bahasa pemrograman Java [3]. 2.5. Google Maps Google Maps adalah sebuah jasa peta globe virtual gratis dan online disediakan oleh Google dapat ditemukan di http://maps.google.com/. Google Map menawarkan peta yang dapat diseret dan gambar satelit untuk seluruh dunia dan baru-baru ini, dan juga menawarkan perencana rute dan pencari letak bisnis di U.S., Kanada, Jepang, Hong Kong, Cina, UK, Irlandia (hanya pusat Kabupaten) dan beberapa bagian Eropa. Google Map API merupakan aplikasi interface yang dapat diakses lewat javascript agar Google Map dapat ditampilkan pada halaman web yang sedang kita bangun. Untuk dapat mengakses Google Map, Kita harus melakukan pendaftaran Api Key terlebih dahulu dengan data pendaftaran berupa nama domain web yang kita bangun.. Kita dapat menambahkan fitur Google Maps dalam web kita sendiri dengan Google Maps API. Google Maps API adalah library JavaScript.
16
Menggunakan/memprogram Google Map API dengan urutan sebagai berikut: 1. Memasukkan Maps API JavaScript ke dalam HTML kita. 2. Membuat elemen div dengan nama map_canvas untuk menampilkan peta. 3. Membuat beberapa obyek literal untuk menyimpan property-properti pada peta. 4. Menuliskan fungsi JavaScript untuk membuat obyek peta. 5. Meng-inisiasi peta dalam tag body HTML dengan event onload. 2.6. Unified Modeling Language (UML) Unified Modeling Language (UML) merupakan standar yang relatif terbuka yang dikendalikan oleh OMG (Object Menegement Group), sebuah konsorium terbuka yang terdiri dari banyak perusahaan. OMG dibentuk untuk membuat standarstandar yang mendukung interoperabilitas sistem berorientasi objek. UML lahir dari penggabungan bahasa pemodelan grafis pada akhir 1980-an dan awal 1990-an. UML terdiri dari 13 jenis diagram resmi, berikut 3 buah diagram yang sering digunakan dalam pemodelan, yaitu Use Case Diagram, Class Diagram, dan Sequence Diagram 2.5.1. Use Case Diagram Use case diagram menggambarkan sebuah fungsi yang dibutuhkan oleh sebuah sistem. Dalam hal ini ada kondisi yang berbeda, yaitu tingkah laku dan domain sistem. Sebuah use case merepresentasikan sebuah interaksi antara pengguna dengan sebuah sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, membuat sebuah daftar aktifitas, dan sebagainya. Pada Gambar 2.2 diperlihatkan contoh diagram use case.
17
Gambar 2.3. Use case diagram Notasi-notasi yang digunakan pada use case diagram dapat dilihat pada Tabel berikut: Table 2.1. Notasi Use Case Diagram SIMBOL
NAMA Actor
Use Case
Association
18
KETERANGAN Actor adalah pengguna sistem. Actor tidak terbatas hanya manusia saja. Jika sebuah sistem berkomunikasi dengan aplikasi lain dan membutuhkan input atau memberikan output, maka aplikasi tersebut juga bisa dianggap sebagai sebuah actor. Use case digambarkan sebagai lingkaran elips dengan nama use case dituliskan di dalam elips tersebut. Asosiasi digunakan untuk menghubungkan actor dengan use case. Asosiasi digambarkan dengan sebuah garis yang menghubungkan antara actor dengan use case.
Tabel 2.2. Tabel Notasi Activity Diagram SIMBOL
KETERANGAN Titik awal Titik akhir Activity Pilihan untuk mengambil keputusan Fork; digunakan untuk menunjukkan kegiatan yang dilakukan secara pararel, atau untuk menggabungkan dua kegiatan pararel menjadi satu. Rake; menunjukkan adanya dekomposisi
Tanda waktu Tanda pengiriman Tanda penerimaan Aliran akhir (Final flow)
19
Tabel 2.3 Notasi Sequence Diagram SIMBOL
NAMA Object
KETERANGAN Object merupakan instance dari sebuah class dan dituliskan tersusun secara horizontal. Digambarkan sebagai sebuah class (kotak) dengan nama obyek di dalamnya yang diawali dengan sebuah titik koma
Actor
Actor juga dapat berkomunikasi dengan object, maka actor juga dapat diurutkan sebagai kolom. Simbol actor sama dengan simbol pada Actor Use Case Diagram. Lifeline mengindikasikan keberadaan sebuah object dalam basis waktu. Notasi untuk lifeline adalah garis putus-putus vertical yang ditarik dari sebuah object. Activation dinotasikan sebagai sebuah kotak segi empat yang digambar pada sebuah lifeline. Activation mengindikasikan sebuah object yang akan melakukan sebuah aksi. Message digambarkan dengan anak panah horizontal di antara activation. Message mengindikasikan komunikasi antara object-object.
; Object1
Lifeline
Activation
Message
20
Tabel 2.4 Notasi Collaboration Diagram SIMBOL
NAMA Object
KETERANGAN Object merupakan instance dari sebuah class dan dituliskan tersusun secara horizontal. Digambarkan sebagai sebuah class (kotak) dengan nama obyek di dalamnya yang diawali dengan sebuah titik koma
Actor
Actor juga dapat berkomunikasi dengan object, maka actor juga dapat diurutkan sebagai kolom. Simbol actor sama dengan simbol pada Actor Use Case Diagram. Message digambarkan dengan anak panah yang nengarah antar obyek dan diberi label urutan nomor yang mengindikasikan urutan komunikasi yang terjadi antar obyek.
; Object1
Message
21
Tabel 2.5 Notasi pada Class Diagram SIMBOL
NAMA Class
Association
Composition
22
KETERANGAN Class adalah blok- blok pembangun pada pemrograman berorientasi obyek. Sebuah class digambarkan sebagai sebuah kotak yang terbagi atas 3 bagian. Bagian atas adalah bagian nama dari Class. Bagian tengah mendefinisikan properti/atribut Class. Bagian akhir mendefinisikan method dari sebuah Class. Sebuah asosiasi merupakan sebuah relationship yang paling umum antara 2 class, dan dilambangkan oleh sebuah grasi yang menghubungkan antara 2 class. Garis ini bisa melambangkan tipetipe relationship dan juga dapat menampilkan hukum-hukum multiplisitas pada sebuah relationship (contoh: one-to-one, one-to-many, many-to-many). Jika sebuah class tidak bisa berdiri sendiri dan harus merupakan bagian dari class yang lain, maka class tersebut memiliki relasi composition terhadap class tempat dia bergantung tersebut. Sebuah relationship composition digambarkan sebagai sebuah garis dengan ujung berbentuk jajaran genjang berisi/solid.
BAB III METODE PENELITIAN Pada bab ini terdapat tahapan atau langkah-langkah yang akan penulis lakukan dalam menyelesaikan penelitian, mulai dari proses pengumpulan data, analisa data, serta penentuan berbagai instrument yang akan digunakan dalam penelitian ini. 3.1. Obyek Penelitian Dalam penelitian ini, penulis memilih obyek lokasi usaha pemuda binaan Dinpora Jawa Tengah. Fokus penelitian diarahkan pada aplikasi pencarian rute terdekat ke lokasi usaha pemuda binaan Dinpora Jawa Tengah berbasis Android dengan algoritma Floyd-Warshall. 3.2. Prosedur Pengumpulan Data Data yang digunakan dalam penelitian haruslah berkualitas. Kualitas yang dimaksud ialah aspek validitas dan reliabilitas data yang dikumpulkan. Oleh karena itu, proses pengumpulan data merupakan tahap yang menentukan kualitas data. Pada penelitian ini, metode yang digunakan dalam pengumpulan data berupa studi pustaka dan data sekunder. Studi pustaka merupakan suatu metode pengumpulan data dengan melakukan pencarian informasi yang bersumber dari dokumen, publikasi, laporan penelitian atau media internet. Berikut kepustakaan yang digunakan dalam penelitian ini: 3.3. Metodologi Penelitian Metodologi yang digunakan adalah metodologi pengembangan Agile dengan XP (Extremme Programming). Alasan menggunakan metode ini adalah karena sifat dari aplikasi yang dikembangkan melalui tahapan tahapan yang ada sesuai dengan metode agile. Siklus hidup XP terdiri dari lima fase, fase tersebut adalah fase eksplorasi, perencanaan, iterasi untuk publikasi, produksi, perawatan dan akhir [17]. XP memungkinkan pengembangan aplikasi meskipun terjadi banyak kebutuhan. 23
Dengan adanya rilis kecil dari aplikasi yang dikembangkan memungkinkan terjadinya komunikasi dan koordinasi antara pengembang dengan user, pengujian dan integrasi berkelanjutan, dokumentasi yang tidak terlalu banyak merupakan karakteristik dari metode XP. 3.3.1. Metode Extreme Programming Extreme Programming (XP) merupakan salah satu metodologi dalam rekayasa perangkat lunak dan juga merupakan satu dari beberapa agile software development methodologies yang berfokus pada coding sebagai aktivitas utama di semua tahap pada siklus pengembangan perangkat lunak (software development lifecycle). Metodologi ini mengedepankan proses pengembangan yang lebih responsive terhadap kebutuhan customer (”agile”) dibandingkan dengan metode-metode tradisional sambil membangun suatu software dengan kualitas yang lebih baik. Model proses ini diciptakan dan dikembangkan oleh Kent Beck. Model ini adalah model proses yang terbaru dalam dunia rekayasa perangkat lunak dan mencoba menjawab kesulitan dalam pengembangan software yang rumit dan sulit dalam implementasi. Menurut Kent Beck XP adalah: “A lightweight, efficient, lowrisk, flexible, predictable, scientific and fun way to develop software”. Suatu model yang menekankan pada:
keterlibatan user secara langsung
pengujian
pay-as-you-go design
24
Gambar 3.1. Core Value XP Ada 4 nilai penting (Core Value) dari metode Extreme Programming, yaitu:
Komunikasi (Communication) Kurangnya komunikasi merupakan penyebab utama kegagalan pengembangan software, maka XP mengfokuskan pada hubungan komunikasi yang baik antar tim-klien, anggota tim, dan manajer proyek.Komunikasi dalam XP dibangun dengan melakukan pemrograman berpasangan (pair programming). Klien harus dilibatkan dalam proses pengembangan perangkat lunaknya dengan tujuannya untuk memberikan pandangan pengembang sesuai dengan pandangan pengguna sistem yang dibangun.
Kesederhanaan (Simplicity) XP melakukan semua dengan sederhana dan praktis tanpa mengurangi fungsi utamanya. Diusahakan mengunakan method yang pendek dan simpel, jangan terlalu rumit dalam membuat desain, hilangkan fitur yang tidak ada gunanya atau menghapus fungsi yang tidak terpakai. Dengan kata lain lebih baik melakukan hal yang sederhana saat sekarang (sesuai kebutuhan) dan mengembangkannya besok jika diperlukan.
25
Umpan balik (Feedback) Selalu mengevaluasi perkembangan terhadap perangkat lunak yang sedang dikerjakan, segala informasi harus dikumpulkan setiap interval waktu yang konsisten dan diskusikan kesalahan-kesalahan yang muncul selama proses pengembangan.
Umpan balik tersebut berfungsi sebagai indikator kemajuan
proyek dan menginformasikan pemimpin proyek apabila perubahan perlu dibuat.
Keberanian (Courage). Programmer XP didorong untuk berani bereksperimen dan menulis ulang kode jika mereka tidak puas dengan kode atau desain yang sudah ada. Hal ini membantu mempertahankan moral serta intgritas para pengembang proyek dan dapat mendukung lebih lanjut komunikasi dengan anggota proyek lainnya. Tujuan utama
menurunkan
biaya
pengembangan
yang
ada
dari adanya
sistem
pada
extreme
perubahan
tradisional,
programming
pembangunan
adalah
software.
untuk Dalam
kebutuhan sistem di tentukan awal
pengembangan proyek dan bersifat fixed. Extreme programming diarahkan untuk menurunkan biaya dari adanya perubahan dengan memperkenalkan nilai-nilai basis dasar, prinsip dan praktis. Dengan menerapkan extreme xp, pembangunan suatu sistem haruslah lebih fleksibel terhadap terjadinya suatu perubahan. 3.3.2. Aspek Dasar XP Aspek dasar XP terdiri dari berbagai teknik atau metode yang diterapkan Beck dan Jeffries pada C3 Project. Teknik-teknik tersebut dapat diamati pada gambar berikut ini:
26
Gambar 3.2 : Extereme Programming (XP) practices 1. The Planning Game Pendekatan XP dalam perencanaan sangat mirip dengan metode yang diterapkan pada RAD (Rapid Application Development). Proses pendek dan cepat, mengutamakan aspek teknik, memisahkan unsur bisnis dengan unsur teknis dan pertemuan intensif antara klien dengan developer. Pada XP proses ini menggunakan terminologi “game” karena Beck menyarankan untuk menggunakan teknik score card dalam menentukan requirements. Semakin sulit aspek teknis yang dibutuhkan semakin tinggi pula skor pada kartu rencana tersebut. 2. Small Releases Setiap release dilakukan dalam lingkup sekecil mungkin pada XP. Setiap developer menyelesaikan sebuah unit atau bagian dari perangkat lunak
27
maka hasil tersebut harus segera dipresentasikan dan didiskusikan dengan klien. Jika memungkinkan untuk menerapkan unit tersebut pada perusahaan, hal itu juga dapat dilakukan sekaligus sebagai tes awal dari penerapan keseluruhan sistem. Kendati demikian hal ini tidak selalu perlu dilakukan karena harus dihitung terlebih dahulu sumberdaya yang dibutuhkan. Apakah lebih menguntungkan langsung melakukan tes terhadap unit tersebut atau melakukan tes setelah unit tersebut terintegrasi secara sempurna pada sistem. 3. Metaphor Metaphor
pada dasarnya sama dengan arsitektur perangkat lunak.
Keduanya menggambarkan visi yang luas terhadap tujuan dari pengembangan perangkat lunak. Beck sendiri seperti para penandatangan Agile Manifesto lainnya bercita-cita menyederhanakan proses pengembangan perangkat lunak yang saat ini sudah dianggap terlalu rumit. Arsitektur yang saat ini banyak berisi diagram dan kode semacam UML dianggap terlalu rumit untuk dimengerti, terutama oleh klien. Metaphor, walaupun mirip dengan arsitektur lebih bersifat naratif dan deskriptif. Dengan demikian diharapkan komunikasi antara klien dengan developer akan berlangsung lebih baik dan lancar dengan penggunaan metaphor. 4. Simple Design Sebagai salah seorang penandatangan Agile Manifesto, Beck adalah seorang yang tidak menyukai desain yang rumit dalam sebuah pengembangan perangkat lunak. Tidak heran jika dia memasukkan Simple Design sebagai salah satu unsur XP. Pada XP desain dibuat dalam lingkup kecil dan sederhana. Tidak perlu melakukan antisipasi terhadap berbagai perubahan di kemudian hari. Dengan desain yang simpel apabila terjadi perubahan maka membuat desain baru untuk mengatasi perubahan tersebut dapat dengan mudah dilakukan dan resiko kegagalan desain dapat diperkecil. 28
5. Refactoring Refactoring adalah salah satu aspek paling khas dari XP. Refactoring seperti didefinisikan oleh Martin Fowler adalah ”Melakukan perubahan pada kode program dari perangkat lunak dengan tujuan
meningkatkan
kualitas
dari
struktur program tersebut tanpa mengubah cara program tersebut bekerja”. Refactoring
sendiri
sangat
sesuai
untuk
menjadi
bagian
XP
karena
Refactoring mengusung konsep penyederhanaan dari proses desain maupun struktur baris kode program. Dengan Refactoring tim pengembang dapat melakukan berbagai usaha untuk meningkatkan kualitas program tanpa kembali mengulang-ulang proses desain. Fowler adalah salah satu kolega dekat dari Kent Beck karena itu tidak mengherankan bahwa cara berpikir mereka terhadap proses pengembangan perangkat lunak sangat mirip satu dengan lainnya. 6. Testing XP menganut paradigma berbeda dalam hal tes dengan model pengembangan perangkat lunak lainnya. Jika pada pengembangan perangkat lunak lainnya tes baru dikembangkan setelah perangkat lunak selesai menjalani proses coding maka pada XP tim pengembang harus membuat terlebih dahulu tes yang hendak dijalani oleh perangkat lunak. Berbagai model tes yang mengantisipasi penerapan perangkat lunak pada sistem dikembangkan terlebih dahulu. Saat proses coding selesai dilakukan maka perangkat lunak diuji dengan model tes yang telah dibuat tersebut. Pengetesan akan jauh lebih baik apabila dilakukan pada setiap unit perangkat lunak dalam lingkup sekecil mungkin daripada menunggu sampai seluruh perangkat lunak selesai dibuat. Dengan memahami tahap ini kita dapat melihat bahwa siklus pada XP adalah requirement analysis => test => code => design. Sekilas terlihat hal ini tidak mungkin dilakukan tetapi pada kenyataannya memang gambaran inilah yang paling dapat menjelaskan tentang XP. 29
7. Pair Programming Pair programming
adalah melakukan proses menulis program dengan
berpasangan. Dua orang programer saling bekerjasama di komputer yang sama untuk menyelesaikan sebuah unit. Dengan melakukan ini maka keduanya selalu dapat berdiskusi dan saling
melakukan
koreksi apabila ada kesalahan dalam penulisan program.
Aspek ini mungkin akan sulit dijalankan oleh para programer yang memiliki ego tinggi dan sering tidak nyaman untuk berbagi komputer bersama rekannnya. 8. Collective Ownership Tidak ada satupun baris kode program yang hanya dipahami oleh satu orang programer. XP menuntut para programer untuk berbagi pengetahuan untuk tiap baris program bahkan beserta hak untuk mengubahnya. Dengan pemahaman yang sama terhadap keseluruhan program, ketergantungan pada programer tertentu ataupun berbagai hambatan akibat perbedaan gaya menulis program
dapat
diperkecil.
Pada
level
yang
lebih
tinggi
bahkan
dimungkinkan para programer dapat bertukar unit yang dibangunnya. 9. Coding Standards Pair programming dan collective ownership hanya akan dapat berjalan dengan baik apabila para programer memiliki pemahaman yang sama terhadap penulisan kode program. Dengan adanya coding
standards
yang
telah
disepakati terlebih dahulu maka pemahaman terhadap program akan menjadi mudah untuk semua programer dalam tim. Hal ini dapat diterapkan sebagai contoh pada penamaan variabel dan penggunaan tipe data yang sama untuk tiap elemen semua record atau array pada program.
30
10. Continous Integration Melakukan build setiap hari kerja menjadi sebuah model yang disukai oleh berbagai tim pengembang perangkat lunak. Hal ini terutama didorong oleh keberhasilan penerapan sistem ini dipublikasikan.
Dengan
oleh
melakukan
Microsoft
build
sesering
dan
telah
sering
mungkin berbagai
kesalahan pada program dapat dideteksi dan diperbaiki secepat mungkin. Apabila banyak tim pengembang perangkat lunak meyakini bahwa build sekali sehari adalah minimum maka pada XP hal tersebut adalah maksimum. Pada XP tim disarankan untuk melakukan build sesering mungkin misalnya setiap 4 jam atau bahkan lebih cepat lagi. 11. 40-hours Week Beck berpendapat bekerja 8 jam sehari dan 5 hari seminggu adalah maksimal
untuk
tiap programer. Lebih dari itu programer akan cenderung
membuat berbagai error pada baris-baris kode programnya karena kelelahan. 12. On-Site Customer Sebuah pendekatan klasik, di mana XP menganjurkan bahwa ada anggota dari klien yang terlibat pada proses pengembangan perangkat lunak. Yang lebih penting lagi ia harus ada di tempat pemrogaman dan turut serta dalam proses build dan test yang dilakukan. Apabila ada kesalahan
dalam
pengembangan diharapkan klien dapat segera memberikan masukan untuk koreksinya. 3.3.3. Kelebihan dan Kekurangan Extreme Programming Kelebihan model Extreme Programming :
Komunikasi dalam XP dibangun dengan melakukan pemrograman berpasangan (pair programming). Developer didampingi oleh pihak klien dalam melakukan
31
coding dan unit testing sehingga klien bisa terlibat langsung dalam pemrograman sambil berkomunikasi dengan developer. Selain itu perkiraan beban tugas juga diperhitungkan.
Menekankan pada kesederhanaan dalam pengkodean: “What is the simplest thing that could possibly work?” Lebih baik melakukan hal yang sederhana dan mengembangkannya besok jika diperlukan. Komunikasi yang lebih banyak mempermudah, dan rancangan yang sederhana mengurangi penjelasan.
Setiap feedback ditanggapi dengan melakukan tes, unit test atau system integration dan jangan menunda karena biaya akan membengkak (uang, tenaga, waktu).
Banyak ide baru dan berani mencobanya, berani mengerjakan kembali dan setiap kali kesalahan ditemukan, langsung diperbaiki.
Kelemahan model Extreme Programming :
Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima.
Tidak bisa membuat kode yang detail di awal (prinsip simplicity dan juga anjuran untuk melakukan apa yang diperlukan hari itu juga).
3.4. Perancangan Aplikasi a.
Fase Eksplorasi Pada tahap ini berisi tentang penelitian terhadap masalah dan kebutuhan yang diperlukan oleh user dalam hal ini lokasi Usaha Pemuda Binaan Dinpora Jateng
b.
Fase Perencanaan Pada tahap perencanaan adalah tahap penggabungan permintaan dan informasi dari pengguna untuk perancangan sistem dan perencanaan teknis serta respon dari pengguna. Perencanaan teknis dilakukan dengan mengidentifikasi
32
perangkat lunak maupun perangkat keras yang diperlukan untuk membuat sebuah aplikasi pencarian lokasi Usaha Pemuda Binaan Dinpora Jateng berbasis android. c.
Fase Iterasi untuk publikasi 1) Kebutuhan Software ( Perangkat Lunak ) Perangkat lunak sebagai pendukung program pembuatan aplikasi ini seperti :
Eclipse Galileo atau diatasnya untuk mempermudah pengembangan aplikasi karena Google menyediakan plugin untuk Eclipse Galileo diatasnya.
Jdk 5 atau jdk 6 (di atasnya) diperlukan untuk mengkompilasi aplikasi yang dibuat karena menggunakan eclipse sebagai IDE yang digunakan tetapi pada proses debugging tidak menggunakan JVM (Java Virtual Machine) seperti aplikasi java pada umumnya tetapi menggunakan DVM (Dalvik Virtual Machine).
ADT (Android Developmnet Tool), ADT adalah plugin Eclipse menjadi penghubung antara IDE dan Android SDK.
Android SDK sebagai alat bantu dan API
Enterprise Architect 8.0.860
2) Kebutuhan Hardware ( Perangkat Keras ) Spesifikasi yang mendukung emulasi hendaknya minimal adalah sebagai berikut :
Procesor Intel Pentium core duo atau diatasnya,
memori RAM minimal 2GB dan hard disk 40GB, dan spesifikasi lainya yang menyesuaikan.
3) Kebutuhan Perangkat Mobile Kebutuhan minimal agar aplikasi bisa bekerja dengan optimal antara lain:
OS Android versi Kitkat
33
Google Maps yang terinstal pada perangkat sebaiknya versi 5, Google Maps pada versi ini telah mendukung pembaruan pada segi data pada peta sehingga memungkinkan user untuk mendapatkan informasi yang lebih details dari suatu lokasi.
d.
Fase Produksi Pada fase ini aplikasi akan dibangun dengan pemograman Java Android, menggunakan
software ADT Bundle yang di dalamnya terdapat : Eclipse
sebagai editor bahasa pemograman java, ADT sebagai plugin untuk Eclipse, dan SDK untuk kepentingan development aplikasi berbasis Android e.
Fase Akhir Untuk menjalankan project Android yang terintegrasi dengan Google Map API akan langsung dilakukan pada device berupa smartphone dengan OS Android versi Kitkat, yaitu Samsung Galaxy S5.
3.5. Penghitungan Jarak Terdekat Dengan Algoritma Floyd-Warshall Jika
kita
menggunakan
algoritma
Floyd
Warshall,
kita
harus
mengakumulasikan seluruh jalur sebelum kita jalan ke jalur selanjunya. Dengan cara kita menghitung terlebih dahulu seluruh jalur yang menuju kota yang akan kita tuju.
34
Contoh kasus:
Sekarang kita akan mencoba menghitung kembali jalur di atas dengan menggunakan algoritma floyd warshall. Tahap yang akan kita lakukan sebelum jalan, kita harus menghitung seluruh jalur yang menuju kota yang akan kita tuju 1)
A
F
G
Jarak yang ditempuh, 10km + 4km = 14km 2)
A
C
E
G
Jarak yang ditempuh, 7km + 4km + 4km = 15km 3)
A
C
E
F
G
Jarak yang ditempuh, 7km + 4km + 3km + 4km = 18km 4)
A
B
C
E
F
G
Jarak yang ditempuh, 5km + 6km + 4km + 3km + 4km = 22km 5)
A
B
D
E
F
G
Jarak yang ditempuh, 5km + 3km + 3km + 3km + 4km = 18km 6)
A
B
D
E
G
Jarak yang ditempuh, 5km + 3km + 3km + 4km = 15km. Setelah kita hitung keseluruhan, lalu kita lihat jalur terpendek yang dari kota A ke kota G. Disini kita dapat jalur terpendek yaitu jalur A,F,G dengan total jarak 14km.
35
BAB IV ANALISA DAN PERANCANGAN Bab ini berisi analisa dan perancangan aplikasi PEMETAAN LOKASI USAHA
PEMUDA
BINAAN
DINPORA
JAWA
TENGAH
DENGAN
ALGORITMA FLOYD-WARSHALL 4.1. Gambaran Umum Sistem Aplikasi pemetaan lokasi usaha pemuda binaan Dinpora Jawa Tengah yang dibangun merupakan aplikasi mobile menggunakan konsep client server. Aplikasi ini berfungsi untuk mempermudah masyarakat dalam melakukan pencarian lokasi usaha pemuda binaan Dinpora di Jawa Tengah melalui perangkat berbasis Android. Aplikasi ini menggunakan sistem LBS (Location Based Service) sehingga memudahkan pengguna untuk melihat dimana saja lokasi usaha pemuda binaan Dinpora Jawa Tengah dengan tampilan peta Google Map. Sistem ini juga memanfaatkan teknologi GPS yang berguna dalam penentuan rute dari user berada menuju lokasi lokasi usaha pemuda binaan Dinpora Jawa Tengah. Secara sederhana deskripsi umum sistem dapat dilihat melalui Gambar 4.1 berikut.
Gambar 4.1. Deskripsi Umum Sistem
36
Gambar 4.1 menjelaskan bahwa android device melakukan komunikasi dengan GPS satelit untuk mendapatkan nilai koordinat yang kemudian diterjemahkan menjadi nama lokasi berdasarkan posisi pengguna android. Sistem melakukan komunikasi
dengan
database
server
menggunakan
jaringan
GPRS/EDGE/HSDPA/3G. Semua data lokasi usaha pemuda binaan Dinpora Jawa Tengah dimasukkan oleh admin ke database yang ada di database server dengan perantara berupa halaman website. Komunikasi aplikasi android dengan database server berupa update data dari database server (MySQL) ke database local (SQLite), dan kemudian menghasilkan informasi secara lengkap mengenai lokasi usaha pemuda binaan Dinpora Jawa Tengah. Data awal sistem dikelola oleh administrator sistem yang berada pada aplikasi server dan diinputkan ke database. Pada aplikasi pencarian lokasi usaha pemuda binaan Dinpora Jawa Tengah, pengelola kantor pemerintahan melakukan update jumlah lokasi usaha pemuda binaan Dinpora yang tersedia apabila terjadi perubahan. 4.2. Analisa Kebutuhan Sistem Analisa Kebutuhan sistem merupakan tahapan memahami apa yang harus dikerjakan sistem dan karakteristik yang dimiliki sistem. Analisa ini dibedakan menjadi 2 yaitu analisa kebutuhan fungsional dan analisa kebutuhan no fungsional. Beberapa fungsi atau fitur-fitur yang dibutuhkan dalam sistem ini antara lain : a. Fungsi menampilkan lokasi user dan usaha pemuda binaan Dinpora di Jawa Tengah pada peta virtual. b. Fungsi memfilter serta menampilkan lokasi dan informasi usaha pemuda binaan Dinpora terdekat dari posisi user. c. Fungsi menampilkan informasi dan keterangan dari masing-masing tempat usaha pemuda binaan Dinpora yang ada di Jawa Tengah. d. Fungsi menampilkan rute, jarak yang ditempuh dan jalan-jalan yang harus ditempuh, dari lokasi user ke lokasi usaha pemuda binaan Dinpora Jawa Tengah. 37
4.3. Analisa Kebutuhan Data Dalam melakukan pembuatan aplikasi ini, ada beberapa data yang diperlukan agar sistem aplikasi ini bisa memberikan informasi yang bermanfaat bagi user. Data tersebut dapat dikelompokkan sebagai berikut: a. Data usaha pemuda binaan Dinpora Jawa Tengah Data usaha pemuda binaan Dinpora Jawa Tengah yang menjadi objek dalam sistem ini merupakan data awal yang harus ada dalam sistem ini. Data usaha pemuda binaan Dinpora Jawa Tengah meliputi nama usaha, bidang usaha, alamat, gambar usaha, dan lokasi. Data inilah yang akan menjadi acuan untuk melakukan pencarian usaha pemuda binaan Dinpora Jawa Tengah dan melihat rute/navigasi menuju lokasi usaha pemuda binaan Dinpora Jawa Tengah tersebut. Perekaman terhadap data lokasi usaha pemuda binaan Dinpora Jawa Tengah dilakukan dengan menggunakan bantuan GPS (Global Positoning System) yang kemudian akan disimpan berupa titik koordinat, longitudinal dan latitudinal-nya. Data tersebut yang kemudian akan dimasukkan ke dalam database. b. Posisi pengguna Data posisi pengguna didapat dari sinyal GPS yang diterima oleh GPS reciever pada android device kemudian di terjemahkan oleh menjadi informasi lokasi berdasarkan posisi pengguna. Data posisi pengguna ini bersifat dinamis, selalu berubah sesuai dengan lokasi akses pengguna terhadap sistem. Agar fitur navigasi menuju lokasi usaha pemuda binaan Dinpora Jawa Tengah dapat berfungsi, sebelumnya perangkat android harus memiliki aplikasi Map.
38
4.4. Perencanaan Spesifikasi Sistem Beberapa fitur yang akan dibangun pada sistem ini adalah : a.
Sistem
dikembangkan
dengan
model
arsitektur
two
tier.
Aplikasi
dikembangkan disisi client atau frontend sebagai aplikasi On Device Portal (ODP). Sedangkan disisi server atau server akan dikembangkan aplikasi web Content Management System (CMS). b.
Konektivitas antara aplikasi pada platform Android ini dengan aplikasi server di server menggunakan koneksi protocol HTTP dengan memanfaatkan jaringan GPRS/EDGE/UMTS.
c.
Fitur sistem di sisi user yaitu: 1) Menampilkan list nama kantor dan jarak terhadap user Pada fitur ini, sistem akan menampilkan list seluruh nama usaha pemuda binaan Dinpora Jawa Tengah. Dalam penggunaan fitur ini, GPS reciever pada android device harus sudah dalam keadaan aktif sehingga aplikasi bisa mendapatkan nilai koordinat user berada untuk mentukan jarak terhadap tiap-tiap lokasi usaha pemuda binaan Dinpora Jawa Tengah yang ditampilkan dalam listview. Jika salah satu nama usaha pemuda dipilih, maka akan masuk ke form informasi detail lokasi usaha pemuda binaan Dinpora Jawa Tengah yang dipilih tersebut. 2) Menampilkan peta lokasi usaha pemuda binaan Dinpora Jawa Tengah Selain menampilkan seluruh lokasi usaha pemuda binaan Dinpora Jawa Tengah dalam bentuk listview, aplikasi juga memberikan fitur untuk menampilkan seluruh lokasi usaha pemuda tersebut berada dalam tampilan peta. Pada fitur ini, titik-titik lokasi seluruh lokasi usaha pemuda binaan Dinpora Jawa Tengah akan ditampilkan dalam peta sesuai dengan nilai
39
koordinatnya masing-masing. 3) Informasi Detail Kantor pemerintahan Pada saat list usaha pemuda binaan Dinpora Jawa Tengah ditampilkan, user bisa memilih salah satu usaha pemuda tersebut untuk menampilkan informasi secara detail. Adapun informasi tersebut yaitu: id usaha pemuda, nama usaha, area usaha, dan alamat usaha, Pada form ini juga ditampilkan informasi mengenai usaha tersebut. Data pemilik usaha yang ditampilkan dalam fitur ini adalah nama, alamat, dan nomor telepon. 4) Rute Menuju Lokasi Usaha Pemuda Binaan Dinpora Jawa Tengah Pada form detail kantor pemerintahan, terdapat button “Rute Menuju Lokasi Usaha Pemuda Binaan Dinpora Jawa Tengah”. Pada fitur ini, user dapat menampilkan peta lokasi usaha pemuda binaan Dinpora Jawa Tengah dalam 2 rute. Rute pertama akan memberikan jalan tercepat menuju lokasi yang akan dituju dan rute yang ke dua menggunakan rute terjauh. akan memberikan informasi daerah rawan macet apabila jalur yang dilalui user melewati titik tersebut. GPS receiver pada android device harus sudah dalam keadaan aktif untuk menggunakan fitur ini. Fitur ini menggunakan aplikasi lain diluar sistem yang dibangun seperti Maps atau web browser yang ada pada perangkat android. Aplikasi hanya memberikan nilai start dan nilai finish. d.
Fitur sistem di sisi server adalah: Sistem dapat memfasilitasi Admin untuk melakukan tambah, ubah, dan hapus data lokasi usaha pemuda binaan Dinpora Jawa Tengah dan data pemilik usaha pemuda.
40
4.5. Analisa Kebutuhan Perangkat Sistem Dalam membangun aplikasi, sebelum merancang perlu diketahui apa saja perangkat baik itu perangkat lunak maupun perangkat keras yang harus dipenuhi agar sistem yang dibangun bisa berjalan dengan semestinya. Dalam pembangunan aplikasi pencarian lokasi usaha pemuda binaan Dinpora Jawa Tengah yang menggunakan layanan berbasis lokasi dan menggunakan konsep client-server, aplikasi yang akan dibangun memiliki kebutuhan yang harus dipenuhi yaitu: a.
Perangkat android dapat melakukan koneksi ke jaringan internet
b.
Perangkat android memiliki fitur GPS receiver
c.
Fitur GPS pada perangkat android harus sudah dalam keadaan aktif dan telah terhubung dengan baik ke pusat GPS server
d.
Perangkat android menggunakan Operating System (OS) versi 2.3.6 (Gingerbread ) ke atas.
4.6. Analisa Fungsional Aplikasi dibangun menggunakan pemodelan UML (Unified Modelling Language) yang terdiri dari usecase diagram, class diagram, collaboration diagram, sequence diagram, dan activity diagram. 4.6.1. Use Case Diagram Use Case Diagram adalah sesuatu yang penting untuk menspesifikasikan dan mendokumentasikan kebutuhan sistem. Use Case Diagram digunakan untuk menjelaskan kegiatan apa saja yang dapat dilakukan oleh pengguna sistem. Untuk Use Case Diagram diperlukan actor, use case, dan hubungannya. Pada Use Case Diagram, actor diperlukan untuk membangun sistem. a.
Use Case Diagram untuk Developer Interaksi antara aktor dan sistem digambarkan dalam diagram use case seperti
di bawah ini:
41
Gambar 4.2. Use Case Developer
Gambar 4.3. Use Case User 42
4.6.2. Activity Diagram Activity diagram merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum
Gambar 4.4. Activity Diagram Aplikasi Pada Gambar 4.4 menjelaskan tentang aktivitas yang terjadi pada aplikasi pencarian lokasi usaha pemuda binaan Dinpora Jawa Tengah. Diawali dengan proses pemanggilan database, kemudian menampilkan Map. Setelah map muncul maka pengguna dapat mencari daftar kantor yang terdapat pada buttom track. Di dalam buttom track terdtapat list kantor, setelah memilih salah satu kantor maka akan muncul buttom show direction dan buttom view place. Pada buttom show direction terdapat 2 buah pilihan button sepeda motor dan mobil. Masing-masing pilihan memunculkan opsi info rute dan lihat rute. 43
Gambar 4.5. Activity Diagram Admin Pada gambar 4.5 mejelaskan tentang aktivitas pada saat admin akan login. Setelah menampilkan menu utama maka admin harus login ke sistem server dengan memasukan username dan password, apabila tiusername dan password tidak valid maka admin harus login kembali.
44
Gambar 4.6. Activity Diagram Update Pada Admin Pada gambar 4.6 menjelaskan tentang aktifitas pada saat admin ingin mengupdate data pada server. User admin masuk pada halaman beranda dan melilih update titik, setelah itu memilih edit titik atau menghapus titik.
45
Gambar 4.7. Activity Diagram InputTitik Pada Admin Pada gambar 4.7 menjelaskan tentang input data pada server dimulai dengan input titik, setelah data data di simpan maka muncul pemberitahuan data berhasil disimpan. 4.6.3. Class Diagram Class diagram dalam sistem aplikasi menggambarkan hubungan antara class yang ada pada . Penggambaran Class diagram dibawah ini akan menampilkan atribut dan method yang ada pada suatu class.
46
Gambar 4.8. Class Diagram Aplikasi Pada class diagram di atas terlihat beberapa class yang ada pada aplikasi dan hubungan antar class-class yang ada di database aplikasi tersebut. Tabel 4.1. Definisi Kelas-kelas pada class diagram Class Usaha Pemuda
Keterangan Entitas Usaha Pemuda yang berisi atribut-atribut yang dimiliki pada tiaptiap usaha pemuda binaan Dinpora Jawa Tengah. Operasi yang dapat dilakukan pada class usaha pemuda adalah melakukan penambahan data usaha,
merubah
data
usaha,
dan
menghapus data usaha. Operasi untuk menampilkan data usaha pemuda juga dapat dilakukan terutama pada aplikasi
47
android. Admin
Class admin merupakan entitas admin sistem. Admin memiliki atribut yang hanya dibutuhkan dalam pengoperasian sistem seperti username dan password. Operasi
pada
class
admin
yaitu
menambah, mengedit, dan menghapus Maps
Class maps merupakan class dari peta lokasi usaha pemuda binaan Dinpora Jawa Tengah yang akan ditampilkan pada aplikasi .
Location
Class Location merupakan class yang berisi objek-objek lokasi user dan lokasi usaha pemuda binaan DInpora Jawa Tengah berada.
Connection
Class Connection merupakan class yang
menjadi
penghubung
antara
aplikasi server, aplikasi user dengan database server.
48
4.7. Spesifikasi Hardware dan Software Pada tahap ini ditentukan spesifikasi perangkat keras dan perangkat lunak yang digunakan dalam perancangan sistem. Tabel 4.1. Spesifikasi Hardware No.
Kategori Hardware
1
Manufacturer (Laptop)
2
Model
3
Processor
4
Memory (RAM)
5
Hard Disk
Spesifikasi Hardware Asus X454W AMD Dual Core E1-6010 1,35GHz 2GB 500GB
Tabel 4.2. Spesifikasi Software No.
Kategori Software
Spesifikasi Software
1
Sistem Operasi
Microsoft Windows 7 SP 1 64bit
2
Code Editor
Eclipse Galileo
3
Code Editor
Notepad ++
4
Database Server
MySQL
5
Web Editor
Joomla
6
Web Hosting
Hostinger
7
Aplication Emulator
Bluestack
8
Image Editor
Photoshop CS 5
Aplikasi SIG ini akan diimplementasikan pada mobile device dan berbasis mobile web, dimana aplikasi ini membutuhkan signal GPS untuk mendapatkan koordinat user. Posisi user dan lokasi usaha pemuda binaan Dinpora Jawa Tengah akan ditampilkan dengan tools Google Maps API. User dapat berkomunikasi dengan webserver sebagai penyedia data melalui jaringan internet. Arsitektur sistem digambarkan dalam gambar berikut :
49
Gambar 4.9. Arsitektur Sistem
50
BAB V IMPLEMENTASI SISTEM Bab ini menggambarkan implementasi sistem yang telah dianalisan dan dirancang pada bab sebelumnya. Sistem yang dirancang merupakan pemetaan lokasi usaha pemuda binaan Donpora Jawa Tengah menggunakan algoritma floyd warshall. 5.1
Pengenalan Sistem
5.1.1. Menjalankan aplikasi “Daftar KWP” Aplikasi ini diberi nama “Daftar KWP” dimana KWP merupakan kependekan dari Kewirausahaan Pemuda. Penulis menjalankan aplikasi pada device berupa smartphone android Samsung Galaxy 5. Setelah Daftar KWP.apk diinstal pada device, akan terlihat icon seperti berikut ini.
Gambar 5.1. Icon “Daftar KWP” Pada Layar Device
51
Untuk menjalankan aplikasi, kita cukup memilih icon ini dengan cara menyentuhnya pada layar smartphone. Setelah aplikasi dijalankan, kita akan dibawa pada antarmuka beranda aplikasi “Daftar KWP”. 5.1.2.
Antarmuka Beranda Antarmuka beranda (home interface) merupakan antarmuka yang pertama kali
muncul ketika aplikasi ini pertama dijalankan. Pada antarmuka ini terdapat tiga menu pilihan yang dapat dipilih oleh pengguna yaitu lokasi, peta, dan tentang aplikasi. Adapun antarmuka beranda dapat dilihat pada Gambar 5.2
Gambar 5.2. Antarmuka Beranda Aplikasi “Daftar KWP” 52
5.1.3. Daftar Lokasi Jika kita memilih menu Daftar Lokasi, maka akan terbuka halaman yang menampilkan daftar lokasi usaha pemuda binaan Dinpora Jawa Tengah. Daftar ini terdiri dari nama usaha dan daerah lokasi usaha tersebut, berikut kotak pencarian. User bisa mengetikkan nama kabupaten untuk melihat daftar usaha pemuda yang terdapat di kabupaten tersebut. Tampilan daftar lokasi bisa kita lihat pada Gambar 5.3 di bawah ini.
Gambar 5.3. Antarmuka Daftar Lokasi Usaha Pemuda 53
Jika kita memilih salah satu usaha pemuda dari daftar lokasi tersebut, akan terbuka tampilan peta beserta rute yang bisa dituju dari posisi user saat ini. Tampilan peta rute tersebut dapat dilihat pada Gambar 5.4 berikut.
Gambar 5.4. Antarmuka Peta Rute Menuju lokasi Usaha Pemuda 54
5.1.4. Peta Lokasi Menu Peta akan menampilkan peta Google Map yang di fokuskan pada propinsi Jawa Tengah, lengkap dengan penanda lokasi usaha pemuda binaan Dinpora, yang nantinya bila di-zoom in, akan membawa kita pada lokasi masing-masing usaha pemuda tersebut secara lebih mendetail. Berikut tampilan Peta pada layar smartphone saat menjalankan aplikasi “Daftar KWP” ini.
Gambar 5.5. Antarmuka Tampilan Peta Lokasi 55
5.1.5. Tentang Antarmuka akan muncul pada saat pengguna memilih menu tentang aplikasi pada halaman beranda. Antarmuka ini berisikan informasi mengenai versi aplikasi, tujuan pembuatan aplikasi dan persyaratan berjalannya aplikasi. Adapun antarmuka tentang aplikasi dapat dilihat pada Gambar 5.6 berikut.
Gambar 5.6. Tentang Aplikasi
56
5.2
Pengujian
5.2.1. Alat Pendukung Pengujian Sebelum melakukan pengujian, perlu dipersiapkan alat pendukung baik perangkat keras maupun perangkat lunak. Perangkat keras yang digunakan adalah sebagai berikut: 1. Laptop/Notebook berbasis Intel® Celeron CPU 1.10 GHz (2CPUs) 2. RAM berkapasitas 4096 MB 3. Harddisk berkapasitas 320 Giga Bytes 4. Keyboard dan Touchpad laptop standart 5. Device Android: Samsung Galaxy 5 Sedangkan perangkat lunak yang digunakan adalah sebagai berikut: 1.
Sistem Operasi Microsoft Windows 7 SP 1 64bit
2.
Emulator Android Bluestack
3.
Sistem Operasi Android 4.4 Kitkat
5.2.2. Pengujian Black Box Pengujian merupakan bagian yang tidak kalah pentingnya dalam siklus pembangunan perangkat lunak. Pengujian dilakukan untuk menjamin kualitas dan juga mengetahui kelemahan dari perangkat lunak. Tujuan dari pengujian ini adalah untuk menjamin bahwa perangkat lunak yang dibangun memiliki kualitas yang handal, yaitu mampu merepresentasikan kajian pokok dari spesifikasi, analisis, perancangan dan pengkodean dari perangkat lunak itu sendiri. Pengujian perangkat lunak ini menggunakan metode pengujian black box. yang berfokus pada persyaratan fungsional perangkat lunak yang dibuat.
57
a.
Rencana Pengujian Pengujian aplikasi “Daftar KWP” menggunakan data uji berupa sebuah data
dan masukan dari user. Tabel 5.1. Rencana Pengujian Aplikasi “Daftar KWP” Kelas Uji
Butir Uji
Tingkat
Jenis Pengujian
Pengujian Pengujian
Pengecekan daftar lokasi
Daftar Lokasi
usaha pemuda
Sistem
Black Box
Sistem
Black Box
Sistem
Black Box
Sistem
Black Box
yang telah terdaftar Pengujian Rute
Pengecekan rute menuju
Menuju Lokasi
lokasi usaha pemuda dari posisi user
Pengujian Peta
Membuka peta Google
Lokasi
Map pada aplikasi yang berisi marker lokasi usaha pemuda
Pengujian
Pengecekan keterangan
Tentang
tentang lokasi
Aplikasi b.
Kasus dan Hasil Pengujian i)
Pengujian Daftar Lokasi Pengujian daftar lokasi dilakukan hanya untuk pengecekan daftar lokasi usaha pemuda yang telah terdaftar. Tabel 5.2. Pengujian Daftar Lokasi
Kasus dan Hasil Uji (Data Normal) Data Masukan Target Klik / tekan icon dapat masuk Daftar Lokasi system
Pengamatan Menampilkan halaman daftar lokasi 58
Kesimpulan [√] diterima [ ] ditolak
ii)
Pengujian Rute Menuju Lokasi Tabel 5.3. Pengujian Rute Menuju Lokasi
Kasus dan Hasil Uji (Data Normal) Data Masukan Target Klik / tekan nama dapat masuk lokasi sistem
iii)
Pengamatan Menampilkan halaman peta rute menuju lokasi
Kesimpulan [√] diterima [ ] ditolak
Pengujian Peta Lokasi Tabel 5.4. Pengujian Peta Lokasi
Kasus dan Hasil Uji (Data Normal) Data Masukan Target Klik / tekan icon dapat masuk Peta sistem
iv)
Pengamatan Kesimpulan Menampilkan [√] diterima halaman peta Google [ ] ditolak Maps yang berfokus pada propinsi Jawa Tengah, beserta marker lokasi usahausaha pemuda binaan Dinpora
Pengujian Tentang Aplikasi Tabel 5.5. Pengujian Tentang Aplikasi
Kasus dan Hasil Uji (Data Normal) Data Masukan Target Klik / tekan icon dapat masuk Tentang sistem
Pengamatan Menampilkan halaman tentang aplikasi
59
Kesimpulan [√] diterima [ ] ditolak
BAB VI KESIMPULAN DAN SARAN 6.1.
Kesimpulan Pemetaan lokasi usaha pemuda binaan Dinpora Jawa Tengah ini merupakan
salah satu bentuk pengembangan sistem informasi geografis dengan memanfaatkan teknologi GPS dan sistem operasi android yang banyak digunakan dalam smartphone. Dalam pengembangannya diperlukan terlebih dahulu analisis kebutuhan yang diperlukan oleh sistem. Berikut adalah kesimpulan yang diperoleh setelah menyelesaikan keseluruhan proses Pemetaan Lokasi Usaha Pemuda Binaan Dinpora Jawa Tengah Menggunakan Algoritma Floyd-Warshall: a.
Pemetaan berfungsi untuk menampilkan lokasi usaha pemuda binaan Dinpora Jawa Tengah.
b.
Pemetaan ini berjalan pada sistem operasi android dan memerlukan jaringan internet 3G.
c.
Hasil Pengujian Black Box menunjukkan bahwa semua fungsi aplikasi berjalan dengan baik.
6.2. Saran Hasil Pemetaan Lokasi Usaha Pemuda Binaan Dinpora Jawa Tengah Menggunakan Algoritma Floyd-Warshall memberikan gambaran bahwa diperlukan analisis, perancangan dan implementasi sistem yang sesuai dengan kebutuhan pengguna.
60
DAFTAR PUSTAKA [1]
Riyanto, 2010. Sistem Informasi Geografis Berbasis Mobile. Yogyakarta: Gava Media.
[2]
Riyanto, 2010. Membuat Sendiri Aplikasi Mobile GIS Platform Java ME, Blackberry & Android. Yogyakarta: ANDI
[3]
Mulyadi. 2010. Membuat Aplikasi Untuk Android. Yogyakarta: Multimedia Center Publishing.
[4]
Sutanto, Ajib. 2014. Rekayasa E-Market Untuk Kelompok Usaha Pemuda Binaan Dinas Pemuda Dan Olahraga Propinsi Jawa Tengah Sebagai Upaya Peningkatan Pemasaran Dan Penjualan Produk UMKM.pdf. Semarang: UDINUS – Prosiding SNATIF ke-1 Tahun 2014.
[5]
Sani, Ajeng Fitrah. 2013. Algoritma Floyd Warshall Untuk Menentukan Jalur Terpendek Evakuasi Tsunami di Kelurahan Sanur. Jurusan Matematika FMIPA Universitas Udayana, Bukit Jimbarang-Bali.
[6]
A.S Rosa, Shalahuddin.M. 2009. Modul Rekayasa Perangkat Lunak (Terstruktur dan Berorientasi Objek). Bandung: Modula Bandung.
[7]
Susetyo, Danang Budi. 2013. Jurnal Tugas Akhir “Pembuatan Aplikasi Peta Rute Bus Trans Jogja Berbasis Mobile GIS Menggunakan Smartphone Android”. E-Jurnal Universitas Diponegoro.
[8]
Barus, B dan U. S. Wiradisastra. 2000. Sistem Informasi Geografi Sarana Manajemen Sumberdaya. Laboratorium Penginderaan Jauh dan Kartografi. Jurusan Tanah. Bogor: Fakultas Pertanian IPB.
[9]
Sugandi, Dede. 2009. Hand Out Sistem Informasi Geografis. Jurusan Pendidikan Geografi Fakultas pendidikan Ilmu Pengetahuan Sosial Universitas Pendidikan Indonesia
[10] Aronoff, Stan. 1989. Geographic Information System a Management Perspective. Ottawa: WDL Publication
61
[11] Burrough, Peter A. 1986. Principle of Geographical Information System Land Resources Assesment. Oxford: Clarendon Press. [12] Dulbahri. 1993. Sistem Informasi Geografi. Yogyakarta: PUSPICS-UGM BAKOSURTANAL. [13] Siang, J. 2002. Matematika Diskrit Dan Aplikasinya Pada Ilmu Komputer. Yogyakarta: Andi. [14] Novandi, Raden Aprian Diaz. 2007. Perbandingan Algoritma Dijkstra dan Algoritma Floyd-Warshall dalam Penentuan Lintasan Terpendek (Single Pair Shortest Path). Teknik Informatika, Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung. [15] Siang, Jong Jek. 2006. Matematika Diskrit dan Aplikasinya pada Ilmu Komputer. Yogyakarta: Andi. [16] Ragil, Saputra. 2011. Sistem Informasi Geografis Pencarian Rute Optimum Obyek Wisata Kota Yogyakarta Dengan Algoritma Floyd-Warshall. Semarang: FMIPA UNDIP [17] Beck, Kent and Fowler, Martin. 2000. Planning Extreme Programming. Boston: Addison-Wesley.
62