Daftar Pustaka
[1] Al-braha Bin Ladjamudin (2005). Analisis dan Desain Sistem Informasi. Yogyakarta: GrahaIlmu.
[2] Nazir Moh. 2009, Metode Penelitian. Jakarta :Ghalia Indonesia.
[3] Pressman, S Roger. (2012), Rekayasa Perangkat Lunak: Pendekatan Praktisi Edisi 7, Andi, Yogyakarta
[4] Raharjo Budi, Heryanto Imam, Haryono Arif. 2007, Mudah Belajar Java, Informatika, Bandung.
[5] Raden Aprian Diaz Novandi, Perbandingan Algoritma Dijkstra dan Algoritma Floyd-Warshall dalam Penentuan Lintasan Terpendek (Single Pair Shortest Path). Makalah STMIK 2007-021.
[6] Shalahuddin, M dan A.S, Rosa. 2010. Pemrograman J2ME Belajar Cepat Pemrograman Perangkat Telekomunikasi Mobile. Informatika. Bandung.
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana
MOHAMAD RIZKY DWI ARYANDI 10109081
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
ABSTRACT ... ii
1.1 Latar Belakang Masalah ... 1
1.2 Identifikasi Masalah ... 2
1.3 Maksud dan Tujuan ... 2
1.3.1 Maksud ... 2
1.3.2 Tujuan ... 2
1.4 Batasan Masalah... 2
1.5 Metode Penelitian... 3
1.5.1 Metode Pengumpulan Data ... 3
1.5.2 Model Pembuatan Perangkat Lunak ... 4
1.6 Sistematika Penulisan... 5
BAB 2 TINJAUAN PUSTAKA ... 7
2.1 Profil Rumah Sakit Umum Daerah Gunung Jati ... 7
2.1.1 Sejarah Instansi ... 7
2.1.2 Visi, Misi dan Tujuan ... 9
2.1.3 Struktur Organisasi... 10
2.2 Landasan Teori ... 11
2.2.1 Literature Riview ... 11
2.2.2 Android ... 11
vi
2.2.3.2 Java Versi Baru ... 14
2.2.4 DataBase ... 15
2.2.4.1 Fungsi DataBase... 15
2.2.4.2 Kriteria DataBase ... 15
2.2.4 3Dimensi ... 15
2.2.4.1 Karakteristik 3D ... 16
2.2.4.2 3D Dalam Komputer ... 16
2.2.5 Definisi Graph ... 17
2.2.5.1 Representasi Graph Dalam Bentuk Matrik ... 18
2.2.5.2 Definisi Lintasan (Path) ... 19
2.2.5.3 Lintasan Terpendek ... 20
2.2.6 Algoritma Floyd Warshall ... 20
2.2.6.1 Analisis Algoritma Floyd Warshall ... 21
2.2.6.2 Contoh Penerapan Algoritma Floyd Warshall ... 22
2.2.7 Perancangan Berorientasi Objek ... 24
2.2.7.1 UML ... 24
2.2.7.2 Diagram UML ... 25
2.2.7.3 Tujuan UML... 26
2.2.7.4 Use Case Diagram ... 26
2.2.7.5 Sequence Diagram ... 27
2.2.7.6 Class Diagram ... 27
BAB 3 ANALISIS DAN PERANCANGAN ... 29
3.1 Analisis ... 29
3.1.1 Analisis Masalah ... 30
3.1.2 Analisis Algoritma Floyd Warshall ... 30
3.1.2.1 Penerapan Cara Kerja Algoritma Floyd Warshall ... 32
3.1.3 Analisis Kebutuhan Non-fungsional ... 36
3.1.4.2 Aplikasi Informasi Rute Terpendek Rumah Sakit, Rumah Bersalin Dan
Puskesmas di Palembang ... 39
3.1.4.3 Aplikasi Denah 3D Berbasis Mobile Rumah Sakit Umum Daerah Gunung Jati Cirebon ... 43
3.1.5 Analisis Kebutuhan Fungsional ... 50
3.1.5.1 Use case Diagram ... 50
3.1.5.1.1 Definisi Actor ... 51
3.1.5.1.2 Definisi Use Case ... 51
3.1.5.2 Use case Skenario ... 52
3.1.5.3 Activity Diagram... 57
3.1.5.4 Class Diagram ... 60
3.1.5.5 Sequence Diagram ... 63
3.1.5 Perancangan ... 65
3.1.5.1 Perancangan Antarmuka ... 65
3.1.6 Jaringan Semantik ... 72
3.1.7 Perancangan Method ... 73
3.1.7.1 Method Cari Ruangan ... 73
3.1.7.2 Method Info Ruangan ... 74
3.1.7.3 Method Video 3D ... 75
BAB 4 IMPLEMENTASI DAN PENGUJIAN ... 77
4.1 Implementasi ... 77
4.1.1 Implementasi Perangkat Pembangun ... 77
4.1.2 Implementasi Antarmuka ... 78
4.2 Pengujian ... 83
4.2.1 Pengujian Blackbox ... 83
4.2.2 Kasus dan Hasil Pengujian Blackbox ... 84
viii
4.2.3.1.1 Data Kuisioner ... 90
4.2.3.1.1 Hasil Pengolahan Kuisioner ... 92
4.2.4 Kesimpulan Pengujian ... 100
4.2.4.1 Kesimpulan Pengujian Black Box ... 100
4.2.4.2 Kesimpulan Pengujian Beta ... 100
BAB 5 KESIMPULAN DAN SARAN... 101
KATA PENGANTAR
Assalaamu’alaikumwr. wb,
AlhamdulillahiRabbil’alamin, puji syukur penulis panjatkan kehadirat Allah SWT yang telah melimpahkan rahmat, hidayah serta karunia-Nya, shalawat serta salam semoga selalu tercurah kepada nabi besar Muhammad SAW, sehingga penulis dapat menyelesaikan skripsi yang berjudul “Membangun Aplikasi Denah 3D Rumah Sakit Umum Daerah Gunung Jati Cirebon Menggunakan Algoritma Floyd Warshall di Rumah Sakit Umum Daerah Gunung Jati Cirebon”.
Tujuan dari penyusunan laporan skripsi ini adalah untuk memenuhi salah satu syarat dalam menyelesaikan studi jenjang strata satu (S1) di Program Studi Teknik Informatika, Universitas Komputer Indonesia.
Penulis menyadari bahwa dalam penyusunan laporan skripsi ini masih banyak kekurangan, mengingat keterbatasan pengetahuan serta pengalaman penulis. Dengan keterbatasan itu, maka penulis membutuhkan peran serta dari pihak lain dalam proses penyelesaian laporan skripsi ini. Maka pada kesempatan ini penulis menyampaikan ucapakan terimakasih yang sebesar-besarnya kepada :
1. Kedua Orang Tua dan seluruh keluarga yang telah memberikan kasih sayang, doa dan dorongan baik moril dan materil yang tiada henti.
2. Bapak Ir. Taryana Suryana, M.Kom selaku pembimbing atas segala waktu dan kesabarannya dalam membimbing serta saran juga nasehatnya selama penyusunan laporan skripsi ini.
3. Adam Mukharil Bachtiar, S.Kom.,M.T. selaku Dosen Penguji 1 yang telah menguji serta memberikan arahan kepada penulis selama proses penyusunan laporan skripsi ini.
4. Ibu Dian Dharmayanti, S.T., M.Kom. selaku dosen wali kelas IF-2 Angkatan 2009.
iv
6. Teman-teman di Jurusan Teknik Informatika Angkatan 2009 khususnya kelas IF-2 terimakasih atas doa, bantuan dan dorongannya.
7. Serta semua pihak yang telah turut membantu dalam penyusunan skripsi ini, yang tidak bias disebutkan satu persatu.
Kesempurnaan hanyalah Allah SWT yang memilikinya, dan kita hanyalah manusia biasa yang tak luput dari kesalahan. Kiranya para pembaca dapat mencermati laporan ini untuk bisa memberikan sumbang saran dan kritik yang membangun untuk penyempurnaan laporan skripsi ini. Akhir kata semoga apa yang disampaikan dapat bermanfaat bagi penulis khususnya dan bagi pembaca pada umumnya.
WassalamualaikumWr. Wb.
Bandung, 7 Juni 2014
PendidikanFormal :
2009 – 2014 : Universitas Komputer Indonesia Bandung
2006 – 2009 : SMA Negeri 7 Cirebon
2003 - 2006 : SMP Negeri 6 Cirebon
1997 - 2003 : SD Kartika III-5
1995 - 1997 : TK Pelita Ibu
Nama : Mohamad Rizky Dwi Aryandi
Tempat, TanggalLahir : Cirebon, 22 Juli 1991
JenisKelamin : Laki – Laki
Alamat
: BTN Cempaka Arum Blok C. 221 Kel. Wanasabalor Kec. Talun Kab. Cirebon
NomorHandphone : 085956642269
1 1.1Latar Belakang Masalah
Pembangunan Rumah Sakit Umum Daerah Gunung Jati Kota Cirebonawalnya diajukan oleh Dewan Kota pada tahun 1919 dan kemudian pada tanggal 14 Maret 1920 dilaksanakan peletakan batu pertama pembangunan gedung rumah sakit terletak di Jalan Kesambi. Rumah sakit ini dibangun dan diresmikan pada tanggal 31 Agustus 1921 oleh De Burgermeester Van Cherbon “J. H Johan”, sehingga tanggal 31 Agustus 1921 ditetapkan sebagai hari lahir RSUD Gunung Jadi Kota Cirebon
Rumah sakit yang beralamat di Jl. Kesambi no.56 ini berdiri pada lahan yang berluas tanah 64.344m² dan memiliki luas bangunan 22.037m² pada pusat Kota Cirebon , memungkinkan Rumah Sakit Umum Daerah Gunung Jati membuat ruangan ±308 ruangan untuk memaksimalkan pelayanan mereka terhadap masyarakat Kota Cirebon. Dengan cukup banyaknya ruangan-ruangan yang terdapat pada Rumah Sakit Umum Gunung Jati, serta ditambah informasi hanya didapat melalui para pegawai rumah sakit dan petugas keamanan membuat beberapa pengunjung harus berputar-putar dalam menemukan ruangan yang mereka cari. Hal ini juga membuat pengunjung harus menempuh jarak yang cukup jauh untuk menuju keruangan, yang seharusnya dapat ditempuh dengan jarak yang lebih dekat.
1.2Identifikasi Masalah
Berdasarkanuraianpadalatarbelakangmasalah, makamasalah yang ada di RumahSakitUmum Daerah GunungJatiadalah:
1. KurangnyainformasiruanganRSUDGunungJati.
2. Belumadanyapeta RSUD Gununguntukmemberikaninformasirutemenujuruangan.
1.3Maksud dan Tujuan
Untuk membantu RSUD Gunung Jati dalam menyelesaikan permasalahan yang ada, maka dibangunlahaplikasi Denah 3D Rumah Sakit Umum Daerah Gunung Jati.
Ada pun tujuan yang akan dicapai dalam membangun aplikasi denah 3D Rumah Sakit Umum Daerah ini adalah sebagai berikut :
1. Memberikan informasi ruangan-ruangan Rumah Sakit Umum Daerah Gunung Jati berupa Aplikasi denah 3D.
2. Membantu dan memudahkan pengguna dalam menentukan rute untuk menuju ruangan.
1.4Batasan Masalah
Batasan masalah yang akan dibahas pada penelitian ini adalah sebagai berikut: 1. Aplikasi yang akan dihasilkan adalah aplikasi denah 3D dengan menampilkan
pencarian rute terpendek dalam pencarian ruang di Rumah Sakit Umum Daerah Gunung Jati.
2. Data yang dikelola merupakan data Rumah Sakit Umum Daerah Gunung Jati. 3. Informasi yang diberikan berupa rute ruangan yang dicari beserta nama dari
ruangan tersebut.
6. Objek 3D yang ditampilkan hanya bertitik awal dari lobi.
7. Permodelan dalam membangun aplikasi ini adalah pemodelan berorientasi objek. 8. Software yang digunakan adalah:
a. Eclipse
b. Java dan 3D untuk animasi c. Database menggunakan MySQL
1.5Metodologi Penelitian
Metodologi yang digunakan dalam penulisan tugas akhir ini adalah metodologi pengumpulan data deskriptif.Metodologi deskriptif adalah metode yang menggambarkan dan menjabarkan temuan di lapangan. Metode deskriptif kualitatif hanyalah memaparkan situasi atau peristiwa. Penelitian degan metode ini tidak mencari atau menjelaskan hubungan, tidak menguji hipotesis atau membuat prediksi.
1.5.1 MetodePengumpulan Data
Metodepengumpulan data dapatdiperolehsecaralangsungdariobjekpenelitian. Cara yang dilakukanbaikituuntukmendapatkan data primer atau data yang diperolehdariobjekpenelitianmaupun data sekunderberupaliterature – literatureadalahsebagaiberikut[2]:
1. StudiPustaka
Pengumpulan data dilakukandengancaramempelajari, meneliti, danmenelaahberbagailiteraturdariperpustakaan yang bersumberdaribuku-buku, jurnalilmiah, situs internet, danbacaanlainnya yang berkaitandenganpenelitian yang dilakukan.
2. StudiLapangan
Studilapanganadalahteknikpengumpulan data
yang diambil.Studilapangandalampembuatantugasakhirinidilakukansecaralangsung, yang meliputi :
a. Wawancara
Teknikpengumpulan data denganmengadakantanyajawabsecaralangsung yang adakaitannyadengantopik yang diambil.
Metode waterfall adalah model klasik yang bersifatsistematis, berurutandalammembangunsuatusoftware. Metodewaterfall yang dipakaidalamperangkatlunakinimenggunakanreferensiSommerville[1],
karenalebihterperinciperbedaanpadatiapfasenya.Fase-fasedalamWaterfall MethodmenurutreferensiSommervilleadalah:
1. Requirements definition
Mengumpulkan kebutuhan secara lengkap kemudian dianalisis dan didefinisikan kebutuhan analysis design code test system engineering harus dipenuhi oleh program yang akan dibangun. Fase ini harus dikerjakan secara lengkap untuk bisa menghasilkan desain yang lengkap.
2. System and software design
Perancanganperangkatlunakmelibatkanidentifikasidandeskripsiabstraksisistemperangk atlunak yang mendasardanhubungan-hubungannya.
3. Implementation and unit testing
Padatahapiniperancanganperangkatlunakdirealisasikansebagaiserangkaian program atau unit program.Pengujian unit melibatkanverifikasibahwasetiap unit telahmemenuhispesifikasinya.
4. Integration and system testing
Unit program diintegrasikandandiujisebagaisistem yang lengkapuntukmenjaminbahwapersyaratansistemtelahdipenuhi. 5. Operation and maintenance
Biasanya merupakan fase siklus hidup yang paling lama.Sistem diinstal dan dipakai.Pemeliharaan mencakup koreksi dari berbagai eror yang tidak ditemukan pada tahap-tahap terdahulu, perbaikan atas implementasi unit sistem dan pengembangan pelayanan sistem, sementara persyaratan-persyaratan baru ditambahkan.
Gambar 1.1 Waterfall ModelSommervile.[1]
5.1 Sistematika Penulisan
Sistematikapenulisanskripsiinidisusununtukmemberikangambaranumumtentangpe nelitian yang dijalankan.Sistematikapenulisantugasakhiriniadalahsebagaiberikut :
BAB I PENDAHULUAN
Bab ini akan menguraikan tentang latarbelakang permasalahan, merumuskan inti permasalahan yang dihadapi, menentukan maksud dan tujuan skripsi, batasan masalah, metodologi penelitian yang digunakan serta sistematika penulisan.
BAB II LANDASAN TEORI
Bab ini membahas sejarah singkat rumah sakit umum daerah gunung jati dan berbagai konsep dasar dan teori-teori yang digunakan sebagai acuan dalam proses pembuatan aplikasi denah 3D Rumah Sakit Gunung Jati.Menjelaskan gambaran umum Rumah Sakit Gunung Jati, pengenalan metode graph, dan Floyd Warshal, penjelasan tentang android dan java android, dan penjelasan perangkat lunak yang dipakai dalam membangun aplikasi.
BAB III ANALISIS DAN PERANCANGAN SISTEM
Bab ini berisi tentang kebutuhan perangkat lunak yang digunakan, analisis sistem yang sedang berjalan, analisis fungsionalitas sistem, analisis prosedur, analisis non-fungsionalitas, serta analisis basis data untuk mendefinisikan hal-hal yang diperlukan dalam pengembangan Aplikasi Denah 3D RSUD Gunung Jati. Selain itu pada bab ini memaparkan perancangan sistem yang akan dibangun.
BAB IV IMPLEMENTASI DAN PENGUJIAN
BAB V KESIMPULAN DAN SARAN
2.1.1 Sejarah Instansi
Pembangunan Rumah Sakit Umum Daerah Gunung Jati Kota Cirebon, awalnya diajukan oleh Dewan Kota pada tahun 1919 dan kemudian pada tanggal 14 Maret 1920 dilaksanakan peletakan batu pertama pembangunan gedung rumah sakit yang terletak di Jalan Kesambi. Rumah sakit selesai dibangun dan diresmikan pada tanggal 31 Agustus 1921 oleh De Burgermeester Van Cheribon “J. H Johan”, sehingga tanggal 31 Agustus 1921 ditetapkan sebagai hari lahir RSUD Gunung Jati Kota Cirebon. Pembangunan rumah sakit pada waktu itu dinilai sangat mewah dan mahal, biayanya adalah f.544.00,- (lima ratus empat puluh empat gulden) yang diperoleh dari Gemeente Van Cheribon ditambah dana
dari pabrik gula sewilayah Cirebon serta dana para dermawan. Rumah sakit mulai berfungsi pada tanggal 1 September 1921 sebagai Gemeemtelijk Ziekenhuis dengan nama “Oranje Ziekenhuis“, dibawah pimpinan dr. E. Gottlieb sebagai kepala rumah sakit yang pertama.
Menjelang pendudukan Jepang ada perubahan baik bentuk fisik maupun susunan ruangan yang disesuaikan dengan kebutuhan dan tingkat perkembangan pada waktu itu, antara lain diadakannya kamar bersalin, kamar rontgen/fisioterapi, asrama siswa kesehatan dan ruang administrasi. Pada tanggal 1 Maret 1942 seluruh rumah sakit beserta sarananya dievakuasi ke Rumah Sakit Sidawangi selama kurang lebih 2 minggu dan setelah kembali ke Kota Cirebon pada tanggal 15 Maret 1942, nama rumah sakit diubah dari Rumah Sakit Oranje
menjadi Rumah Sakit Kesambi. Pada tanggal 8 Nopember 1975, nama rumah sakit diubah menjadi Rumah Sakit Gunung Jati Kelas D berdasarkan Surat Keputusan DPRD Kotamadya Daerah Tingkat II Cirebon Nomor : 30/DPRD/XI/75. Selanjutnya pada tanggal 22 Februari 1979 ditingkatkan menjadi Kelas C berdasarkan Surat Keputusan Menteri Kesehatan Republik Indonesia Nomor : 41/MENKES/SK/II/79 dan pada tanggal 21 Januari 1987 ditingkatkan lagi menjadi Rumah Sakit Kelas B berdasarkan Surat Keputusan Menteri Kesehatan Republik Indonesia Nomor : 41/MENKES /SK/I/87. Pada tanggal 30 Januari 1989 ditetapkan menjadi Rumah Sakit Umum Daerah Gunung Jati Kotamadya Daerah Tingkat II Cirebon Kelas B berdasarkan Surat Keputusan Menteri Dalam Negeri Nomor 061/350/SJ.
Seiring dengan perubahan paradigma penyelenggaraan otonomi daerah maka berdasarkan Peraturan Daerah Kota Cirebon Nomor : 5 Tahun 2002, RSUD Gunung Jati Kota Cirebon ditetapkan sebagai Lembaga Teknis Daerah. Berdasarkan Undang-Undang Nomor 1 Tahun 2004 tentang Badan Layanan Umum (BLU) dan Keputusan Walikota Nomor 445/Kep 359-DPPKD/2009, RSUD Gunung Jati Kota Cirebon resmi ditetapkan sebagai rumah sakit dengan Pola Pengelolaan Keuangan Badan Layanan Umum Daerah (PPK-BLUD) pada tanggal 14 Desember 2009. Pada tanggal 2 Agustus 2011, RSUD Gunung Jati Kota Cirebon dinyatakan LULUS dengan status akreditasi penuh 16 Kelompok Pelayanan oleh Komisi Akreditasi Rumah Sakit dengan mendapatkan Sertifikat KARS/SERF/40/VIII/2011 yang berlaku sampai dengan 2 Agustus 2014. Pada tanggal 10 Agustus 2011 Rumah Sakit Umum Daerah Gunung Jati Kota Cirebon mendapatkan Penghargaan Rumah Sakit Berprestasi Program Rumah Sakit Sayang Ibu dan Bayi (RSSIB) Tingkat Provinsi Jawa Barat Tahun 2011.
Kemudian pada bulan Oktober 2012 Rumah Sakit Umum Daerah Gunung Jati Kota Cirebon mendapatkan penghargaan sebagai Rumah Sakit Kelas B Pendiddikan Utama Klasifikasi Utama A.
2.1.2 Visi, Misi dan Tujuan
A. Visi
Visi dari Rumah Sakit Umum Daerah Gunung Jati adalah sebagai berikut: “Menjadikan Rumah Sakit Umum Daerah Gunung Jati Kota Cirebon sebagai pusat pelayanan dan pendidikan kesehatan berkualitas se wilayah III pada tahun 2015”.
B. Misi
Rumah Sakit Umum Daerah Gunung Jati memiliki misi sebagai berikut: a. Meningkatkan mutu pelayanan Rumah Sakit.
b. Meningkatkan pengetahuan, kemampuan, dan keterampilan sumber daya Rumah Sakit baik medis, paramedis, maupun non medis.
C. Tujuan
Tujuan dari Rumah Sakit Umum Daerah Gunung Jati adalah sebagai berikut: a. Meningkatkan kelengkapan sarana dan prasarana sebagai penunjang
peningkatan pelayanan yang berkualitas.
b. Memberdayakan kualitas, kuantitas, dan profesionalisme Sumber Daya Manusia.
c. Meningkatkan kesempurnaan terlaksananya Prosedur tetap Standar Operasional Pelayanan.
d. Meningkatkan status RSUD Gunung Jati Kota Cirebon sebagai Rumah Sakit Pendidikan Lanjutan.
2.1.3 Struktur Organisasi
Struktur organisasi dalam suatu institusi merupakan hal yang sangat penting, dengan adanya struktur organisasi ini memberikan pembagian tugas sesuai dengan bidangnya masing-masing. Adapun susunan organisasi yang ada pada RSUD Gunung Jati adalah sebagai berikut :
2.2 Landasan Teori
2.2.1 Literature Review
Telah dilakukan penelitian sebelumnya mengenai penerapan metode FloydWarshall dan membangun denah 3D perlu dilakukan studi pustaka sebagai
salah satu dari penerapan. Beberapa Literature review tersebut adalah sebagai berikut:
1 Penelitian yang dilakukan oleh Rudy Adipranata, Liliana, dan Yohanes Pribadi berjudul, “PEMBUATAN PERANGKAT LUNAK EDITOR DENAH RUANG 2D UNTUK DIVISUALISASIKAN SECARA 3D”. Penelitian ini menjelaskan tentang merancang rancangan denah dalam bentuk 2D dan memvisualisasikannya secara 3D.
2 Penelitian yang dilakukan oleh Raden Aprian Diaz Novandi berjudul,
“Perbandingan Algoritma Dijkstra dan Algoritma Floyd-Warshall dalam
Penentuan Lintasan Terpendek (Single Pair Shortest Path)”. Penelitian ini menjelaskan tentang perbandingan algoritma djikstra dan algoritma Floyd Warshall dalam menentukan keakurasian untuk memperoleh hasil pencarian
rute terpendek yang tepat dan akurat.
3 Penelitian yang dilakukan oleh Rio Andreanto, TeguhSutanto, M.Kom.,MCP dan Vicky M Taufik, SE.Ak.,S.Kom berjudul, APLIKASI PEMANDU WISATA KEBUN BINATANG SURABAYABERBASIS ANDROID. Penelitian ini menjelaskan tentang membangun aplikasi pemandu berbasis android untuk mempermudah pengunjung dalam memperoleh informasi kebun binatang.
2.2.2 Android
2.2.2.1Pengertian Android
mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java.
Android dikembangkan oleh Google bersama Open Handset Alliance (OHA) yaitu aliansi perangkat seluler terbuka yang terdiri dari 47 perusahaan Hardware, Software dan perusahaan telekomunikasi ditujukan untuk
mengembangkan standar terbuka bagi perangkat selular.
2.2.2.2Sejarah Perkembangan Android
Android, Inc. didirikan di Palo Alto, California, pada bulan Oktober 2003 oleh Andy Rubin (pendiri Danger),[29] Rich Miner (pendiri Wildfire Communications, Inc.), Nick Sears (mantan VP T-Mobile), dan Chris White
(kepala desain dan pengembangan antarmuka WebTV) untuk mengembangkan “perangkat seluler pintar yang lebih sadar akan lokasi dan preferensi
penggunanya”. Tujuan awal pengembangan Android adalah untuk
mengembangkan sebuah sistem operasi canggih yang diperuntukkan bagi kamera digital, namun kemudian disadari bahwa pasar untuk perangkat tersebut tidak cukup besar, dan pengembangan Android lalu dialihkan bagi pasar telepon pintar untuk menyaingi Symbian dan Windows Mobile (iPhone Apple belum dirilis pada
saat itu). Meskipun para pengembang Android adalah pakar-pakar teknologi yang berpengalaman, Android Inc. dioperasikan secara diam-diam, hanya diungkapkan
bahwa para pengembang sedang menciptakan sebuah perangkat lunak yang diperuntukkan bagi telepon seluler.
Google mengakuisisi Android Inc. pada tanggal 17 Agustus 2005, menjadikannya sebagai anak perusahaan yang sepenuhnya dimiliki oleh Google. Pendiri Android Inc. seperti Rubin, Miner dan White tetap bekerja di perusahaan
dengan janji bahwa mereka menyediakan sistem yang fleksibel dan bisa diperbarui.Google telah memilih beberapa mitra perusahaan perangkat lunak dan perangkat keras, serta mengisyaratkan kepada operator seluler bahwa kerjasama ini terbuka bagi siapapun yang ingin berpartisipasi.
Android pertama kali diluncurkan pada 5 November 2007, dan smartphone pertama yang menggunakan sistem operasi Android dikeluarkan oleh T-Mobile dengan sebutan G1 pada bulan September 2008.Hingga saat ini Android
telah merilis beberapa versi Android untuk menyempurnakan versi sebelumnya. Selain berdasarkan penomoran, pada setiap versi Android terdapat kode nama berdasarkan nama-nama kue. Hingga saat ini sudah terdapat beberapa versi yang telah diluncurkan, diantaranya: versi 1.1 dirlis pada 9 maret 2009, versi 1.5 dirilis pada 30 April 2009 diberi nama Cupcake, versi 1.6 dirilis pada 15 September 2009 diberi nama Donut, versi 2.0 dirilis pada 26 Oktober 2009 diberi nama Éclair, versi 2.2 dirilis pada 20 Mei 2010 diberi nama Froyo (Frozen Yoghurt),
versi 2.3 dirilis pada 6 Desember 2010 diberi nama Gingerbread, versi 3.0 dirilis pada Mei 2011 diberi nama Honeycomb, versi 4.0 dirilis pada 19 Oktober 2011 diberi nama ICS ( Ice Cream Sandwich).
2.2.3 Java
Java adalah bahasa pemrograman tingkat tinggi yang berorientasi objek
dan program java tersusun dari bagian yang disebut kelas.Kelas terdiri atas metode-metode yang melakukan pekerjaan dan mengembalikan informasi setelah melakukan tugasnya. Para pemrogram Java banyak mengambil keuntungan dari kumpulan kelas di pustaka kelas Java, yang disebut dengan Java Application Programming Interface (API). Kelas-kelas ini diorganisasikan menjadi sekelompok yang disebut paket (package).Java API telah menyediakan fungsionalitas yang memadai untuk menciptakan applet dan aplikasi canggih.Jadi
File kode sumber mempunyai ekstensi *.java.Kompilator javac menghasilkan file bytecode kelas dengan ekstensi *.class.Interpreter merupakan modul utama sistem Java yang digunakan aplikasi Java dan menjalankan program bytecode Java.
2.2.3.1Java Versi Lama (Java 1)
Pada awal perilisannya, versi Java masih disebut dengan JDK (Java Development kita). Dalam JDK, semua kebutuhan untuk pengembangan program dan eksekusi program masih tergabung jadi satu.[3] Penamaan ini berlaku sampai Java 1.1. namun sekarang, setelah Java 1.2, Sun Microsystem menamainya dengan JSDK (Java Software Development Kit) dalam hal ini kebutuhan untuk pengembangan program dipisahkan dengan kebutuhan kesekusi. Bagian software yang digunakan untuk kebutuhan eksekusi program disebut dengan JRE (Java-Runtime Environment).Selanjutnya, Java 1.2 disederhanakan penamaanya menjadi “Java 2”.
2.2.3.2Java Versi Baru (Java 2)
Sun Microsystems telah mendefinisikan tiga buah edisi dari Java 2, yaitu
sebagai berikut :
a. Java 2 Standard Edition(J2SE), yang digunakan untuk mengembangkan aplikasi-aplikasi desktop dan applet (aplikasi Java yang dapat dijalankan di dalam browser web).
b. Java 2 Enterprise Edition (J2EE), merupakan superset dari J2SE yang memperbolehkan untuk mengembangkan palikasi-aplikasi berskala besar (enterprise), yaitu dengan melakukan pembuatan aplikasi-aplikasi di sisi server dengan menggunakan EJBs (Enterprise JavaBeans), aplikasi web
dengan menggunakan Servlet dan JSP (JavaServer Pages) dan teknologi lainnya serperti CORBA (Common Object Request Broker Architecture) dan XML (Extensible Markup Language).
2.2.4 Database
Database dapat diartikan sebagai kumpulan data yang terdiri atas satu atau lebih tabel yang terintegrasi satu sama lain, di mana setiap pemakai (user) diberi
wewenang (otorisasi) untuk dapat mengakses (mengubah, menghapus, menganalisis, menambah, memperbaiki) data dalam tabel-tabel tersebut.
2.2.4.1 Fungsi Database
Adapun fungsi database diantaranya adalah sebagai berikut :
1. Salah satu komponen penting dalam sistem informasi, karena merupakan dasar dalam menentukan informasi.
2. Menentukan kualitas informasi. Informasi dapat dikatakan bernilaiapabila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya.
3. Mengurangi duplikasi data (data redundancy). 4. Hubungan data dapat ditingkatkan (data relatability).
5. Mengurangi pemborosan tempat simpanan luar.
2.2.4.2 Kriteria Database
Dari penjelasan sebelumnya dapat disimpulkan bahwa basis data mempunyai beberapa kriteria penting, yaitu :
1. Bersifat data oriented dan bukan program oriented
2. Dapat digunakan oleh beberapa program aplikasi tanpa perlu mengubah basis datanya
3. Dapat dikembangkan dengan mudah, baik volume maupun strukturnya
4. Dapat memenuhi kebutuhan sistem-sistem baru secara mudah dapat digunakan dengan cara-cara yang berbeda.
2.2.5 3 Dimensi
dan lain-lain. Konsep tiga dimensi atau 3D menunjukkan sebuah objek atau ruang memiliki tiga dimensi geometris yang terdiri dari: kedalaman, lebar dan tinggi. Contoh tiga dimensi suatu objek atau benda adalah bola, piramida atau benda spasial seperti kotak sepatu. Istilah "3D" juga (dan salah) yang digunakan (terutama bahasa Inggris) untuk menunjukkan representasi dalam grafis komputer (digital), dengan cara menghilangkan gambar stereoscopic atau gambar lain
dalam pemberian bantuan, dan bahkan efek stereo sederhana, yang secara konstruksi membuat efek 2D (dalam perhitungan proyeksi perspektif, shading)
2.2.5.1Karakteristik 3D
Mengacu pada tiga dimensi spasial, bahwa 3D menunjukkan suatu titik koordinat Cartesian X, Y dan Z. Penggunaan istilah 3D ini dapat digunakan di berbagai bidang dan sering dikaitkan dengan hal-hal lain seperti spesifikasi kualitatif tambahan (misalnya: grafis tiga dimensi, 3D video, film 3D, kacamata 3D, suara 3D). Istilah ini biasanya digunakan untuk menunjukkan relevansi jangka waktu tiga dimensi suatu objek, dengan gerakan perspektif untuk menjelaskan sebuah "kedalaman" dari gambar, suara, atau pengalaman taktil. Ketidak jelasan istilah ini menentukan penggunaannya dalam beberapa kasus yang tidak jelas juga yaitu penggunaannya tidak hanya pada contoh-contoh diatas melainkan (sering dalam iklan dan media).
2.2.5.23D dalam Komputer
mereproduksi pada layar dua dimensi dan dengan melepaskan beban pengolahan pada CPU atau central processing unit computer.
Dalam komputasi, model tiga dimensi (angka atau grafis) dibuat tanpamembutuhkan perhitungan yang sangat kompleks, tetapi sangat banyak.3D dapat direpresentasikan baik oleh prospek dari berbagai arah pada layar dua dimensi (yang membuat istilah "3D" tidak benar, layar dengan hanya dua dimensi), atau pada jenis perangkat atau kacamata film yang timbul dari LCD untuk melihat gambar yang berbeda pada setiap pandangan mata.
Sejak akhir 1990-an, banyak komputer yang memiliki prosesor yang didedikasikan untuk melampiran jenis perhitungan (graphics processing unit atau
GPU). Beberapa paket perangkat lunak, termasuk Blender untuk membuat model 3D dengan komputer dan hasilnya disebut dengan gambar 3D sintesis.Software
untuk membuat 3D biasanya yaitu Autodesk Maya atau Blender 3D. dan software untuk membuat bangunan 3D modelling yaitu Autocad, 3DMax, SketchUp dll.
2.2.6 Definisi Graf
Graf adalah himpunan benda-benda yang disebut simpul (vertex atau node) yang terhubung oleh sisi (edge) atau busur (arc).Biasanya graf
digambarkan sebagai kumpulan titik-titik (melambangkan simpul) yang dihubungkan oleh garis-garis (melambangkan sisi) atau garis berpanah (melambangkan busur). Suatu graf G didefenisikan sebagai pasangan himpunan (V,E), di mana V = himpunan yang berisikan simpul pada graf tersebut {V1,V2,..,V3} dan E adalah himpunan sisi yang menghubungkan simpul-simpul {e1, e 2,.., e 3} atau dapat ditulis dengan notasi G = (V,E).
Ada terdapat beberapa jenis graf yang bisa kita gunakan, yaitu beberapa
diantaranya adalah sebagai berikut :
A. Graf Berarah : adalah graf yang edge-nya memiliki arah, sebagai contoh edge ABmenghubungkan vertex A ke B, dimana hubungan vertex B ke A, harus diperoleh dariedge lain, yaitu edge BA, dan jika edge BA tidak ada, maka vertex B ke A tidak memiliki hubungan, meski vertex A ke B memiliki
B. Graf Tak Berarah : adalah graf yang edge-nya tidak memiliki arah, sehingga jika edgeAB menghubungkan vertex A ke B, maka secara otomatis juga menghubungkan vertex B ke A.
C. GrafBerbobot : adalah suatu graf dimana edge dari graf tersebut memiliki bobot ataunilai tertentu.
D. Graf Tidak Berbobot : adalah suatu graf dimana edge dari graf tersebut tidak memilikibobot atau nilai. Untuk merepresentasikannya dalam pemrograman komputer, graf dapat disusun dari LinkedList yang berada dalam LinkedList.
2.2.6.1Representasi Graph dalam Bentuk Matriks
Matriks dapat digunakan untuk menyatakan suatu graf, graf yang direpresentasikan pada matriks, dapat dibedakan sebagai berikut :
a. Graph Tak Berarah
Gambar 2.2 Graph tak berarah
Graf tersebut dapat direpresentasikan dalam sebuah matriks5x5 , dimana baris dankolom di matriks tersebut menunjukan vertex yang ada.
b. Graph Berarah
Gambar 2.4 Graph Berarah dan Bentuk Matrik
Dalam matrik diatas dapat kita lihat bahwa kotak yang berisi angka satu
menunjukan bahwa dalam dua vertex tersebut terdapatedge yang
menghubungkannya.Dan jika dalam kotak terdapat angka nol, maka hal tersebut
menandakan tidak ada edge yang mengubungkan secara langsung dua vertex
tersebut.Untuk representasi dalam pemorgraman komputer, graf tersebut dapat
digambarkan seperti dibawah ini :
Gambar 2.5 Graph Representasi Pemrograman Komputer
2.2.6.2Definisi Lintasan (Path)
2.2.6.3Lintasan Terpendek (Shortest Path)
Lintasan terpendek adalah lintasan yang memiliki total bobot minimum untuk mencapai suatu tempat dari tempat tertentu. Lintasan terpendek dapat dicari dengan menggunakan graf.Graf yang digunakan adalah graf yang berbobot, yaitu graf yang setiap sisinya diberikan suatu nilai atau bobot.Bobot pada sisi graf
dapat menyatakan, waktu, biaya dan sebagainya.
Gambar 2.6 Lintasan Terpendek Pada Graph
Gambar 2.6 menunjukkan lintasan terpendek (garis tebal) dari node 1 ke node 5 dengan jalur 1-4-5 dengan jumlah bobot lima (5).
2.2.7 Algoritma Floyd Warshall
Algoritma Floyd Warshall ada1ah salah satu algoritma dari
pemrograman dinamis, yaitu suatu metode yang melakukan pemecahan masalah dengan memandang solusi yang akan diperoleh sebagai suatu keputusan yang saling terkait. Artinya solusi- solusi tersebut dibentuk dari solusi yang berasal dari tahap sebelurnnya dan ada kemungkinan lebih dari satu solusi (Thomas H. Cormen, 2003, p.629).
Algoritma Floyd Warshall juga membandingkan semua kemungkinan
lintasan pada graf untuk setiap sisi dari semua simpu1. Algoritma Floyd Warshall menerapkan pemrograrnan dinarnis sehingga lebih menjarnin
keberhasilan penemuan solusi optimum untuk kasus penemuan lintasan terpendek (single pair shortest path).
(forward) dan mundur (backward), dan perlu untuk diketahui pula bahwa solusi
yang dihasilkan dari kedua pendekatan itu adalah sama. Solusi dari program dinamis bisa jadi lebih dari satu macam (Thomas H. Cormen, 2003, p.323).
2.2.7.1Analisis Algoritma Floyd-Warshall
Algoritma Floyd Warshall membandingkan semua kemungkinan lintasan pada grafuntuk setiap sisi dari semua simpul. Menariknya, algoritma ini mampu mengerjakan proses perbandingan ini sebanyak V 3 kali (bandingkan dengan kemungkinan jumlah sisi sebanyak V 2 (kuadrat jumlah simpul) pada graf, dan setiap kombinasi sisi diujikan). Hal tersebut bisa terjadi karena adanya
perkiraan pengambilan keputusan (pemilihan jalur terpendek) pada setiap tahap antara dua simpul, hingga perkiraan tersebut diketahui sebagai nilai optimal.
Misalkan terdapat suatu graf G dengan simpul-simpul V yang masing-masing bernomor 1 s.d. N (sebanyak Nbuah). Misalkan pula terdapat suatu fungsi shortestPath(i, j, k) yang mengembalikankemungkinan jalur terpendek dari i ke j dengan hanyamemanfaatkan simpul 1 s.d. k sebagai titik perantara.
Perlu diketahui bahwa jalur terpendek dari i ke j yanghanya melewati simpul 1 s.d. k telah didefinisikan padafungsi shortestPath(i, j, k) dan telah jelas bahwa jika adasolusi dari i s.d. k+1 hingga j, maka panjang dari solusitadi adalah jumlah (konkatenasi) dari jalur terpendek dari i s.d. k+1 (yang melewati simpul 1 s.d. k), dan jalurterpendek dari k+1 s.d. j (juga menggunakan simpul-simpuldari 1 s.d. k).
Maka dari itu, rumus untuk fungsi shortestPath(i,j, k) bisa ditulis sebagai suatu notasi rekursif sbb.:
Tabel 2.1 Rumus Fungsi shortestPath
Basis-0
shortestPath(i, j, 0) = edgeCost(i, j);
Rekurens
shortestPath(i, k, k-1) + shortestPath(k, j, k-1));
Rumus ini adalah inti dari algoritma Floyd-Warshall.Algoritma ini bekerja dengan menghitungshortestPath(i,j,1) untuk semua pasangan (i,j), kemudianhasil tersebut akan digunakan untuk menghitungshortestPath(i,j,2) untuk semua
pasangan (i,j), dst. Prosesini akan terus berlangsung hingga k = n dan kita telahmenemukan jalur terpendek untuk semua pasangan (i,j)
menggunakan simpul-simpul perantara.
Tabel 2.2 Psoudcode Algoritma Floyd Warshal
//Asumsikan bahwa terdapat fungsi
edgeCost(i,j) yang mengembalikan biaya
(cost) di ujung dari i ke j (tak hingga
jika tidak ada)
//Juga asumsikan bahwa n adalah jumlah
simpul dan edgeCost(i,i)=0
path = array of integer;
//Matriks dua dimensi. Pada setiap langkah
di algoritma, path[i][j] adalah jalur
terpendek dari i ke j memanfaatkan nilai
perantara pada (1..k-1). Setiap path[i][j]
diinisialisasi ke edgeCost(i,j);
2.2.6.2Contoh Penerapan Algoritma Floyd Warshall:
Gambar 2.7. Representasi keterhubungan antarkota dalamgraf berbobot
Misalkan seseorang akan melakukan perjalanan darikota A ke kota C. Orang tersebut mencoba untukmenerapkan algoritma Floyd-Warshall untuk mencari jalur terpendek dari kota A kekota C.
Sekarang, orang tersebut mencoba menerapkan algoritmaFloyd-Warshall dengan pendekatan pemrograman dinamismaju (forward).
Basis
f1 (s) = cx1s Rekurens
fk (s) = min xk {cxks + fk-1(xk)}, k = 2, 3, 4
Tahap 1:
f1 (s) = cx1s
Tabel 2.3 Iterasi Awal
Tahap 2:
Tabel 2.4 Iterasi kedua
Dari hasil pencarian jalur terpendek dari A ke Cmenggunakan algoritma Floyd-Warshall (pemrogramandinamis), ditemukan bahwa jarak terpendek dari A
ke Cadalah 74 km dengan jalur (A – B – C).
2.2.8 Perancangan Berorientasi Objek
Teknologi objek menganalogikan sistem aplikasi seperti kehidupan nyata yang didominasi oleh objek. Didalam membangun sistem berorientasi objek akan menjadi lebih baik apabila langkah awalnya didahului dengan proses analisis dan perancangan yang berorientasi objek. Tujuannya adalah mempermudah programmer didalam mendesain program dalam bentuk objek-objek dan hubungan antar objek tersebut untuk kemudian dimodelkan dalam sistem nyata.Suatu perusahaan software yaitu Rational Software, telah membentuk konsarium dengan berbagai organisasi untuk meresmikan pemakaian Unified Modelling Language (UML) sebagai bahasa standar dalam Object Oriented Analysist Design (OOAD).
2.2.8.1Unified Modeling Language (UML)
Unified Modelling Language (UML) adalah sebuah "bahasa" yang telah
menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak.UML menawarkan sebuah standar untuk merancang model sebuah sistem.
dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. Walaupun
demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C.
Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memilikimakna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari tiga notasi yang telah ada sebelumnya: Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering).
2.2.8.2Diagram UML
UML menyediakan 10 macam diagram untuk memodelkan aplikasi berorientasi objek, yaitu:
1. Use Case Diagram untuk memodelkan proses bisnis.
2. Conceptual Diagram untuk memodelkan konsep-konsep yang ada di dalam aplikasi.
3. Sequence Diagram untuk memodelkan pengiriman pesan (message) 4. antar objek.
5. Collaboration Diagram untuk memodelkan interaksi antar objek. 6. State Diagram untuk memodelkan perilaku objek di dalam sistem.
7. Activity Diagram untuk memodelkan perilaku userdan objek di dalam sistem.
8. Class Diagram untuk memodelkan struktur kelas. 9. Objek Diagram untuk memodelkan struktur objek.
Berikut akan dijelaskan 4 macam diagram yang paling sering digunakan dalam pembangunan aplikasi berorientasi objek, yaitu use case diagram, sequence diagram, collaboration diagram, danclass diagram.
2.2.8.3Tujuan UML
Tujuan utama UML diantaranya untuk :
1. Memberikan model yang siap pakai, bahasa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum.
2. Memberikan bahasa pemodelan yang bebas dari berbagai bahasa pemrograman dan proses rekayasa.
3. Menyatukan praktek-praktek terbaik yang terdapat dalam bahasa pemodelan.
2.2.8.4Use Case Diagram
“Use case diagram digunakan untuk memodelkan bisnis proses berdasarkan perspektif pengguna sistem.”[4]Use case diagram terdiri atas diagram untuk use case dan actor. Actormerepresentasikan orang yang akan
mengoperasikan atau orang yang berinteraksi dengan sistem aplikasi.
Use case merepresentasikan operasi-operasi yang dilakukan oleh actor.Use case digambarkan berbentuk elips dengan nama operasi dituliskan
didalamnya. Actor yang melakukan operasi dihubungkan dengan garis lurus ke use case.
2.2.8.5Sequence Diagram
Sequence diagram (diagramurutan) adalah suatu diagram yang
memperlihatkan atau menampilkan interaksi-interaksi antar objek di dalam sistem yang disusun pada sebuah urutan atau rangkaian waktu. Interaksi antar objek tersebut termasuk pengguna, display, dan sebagainya berupa pesan atau message.
Sequence Diagram digunakan untuk menggambarkan skenario atau rangkaian
langkah-langkah yang dilakukan sebagai sebuah respon dari suatu kejadian atau even untuk menghasilkan output tertentu. Sequence Diagram diawali dari apa yang me-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan.
Gambar 2.9 Sequence Diagram
2.2.8.6Class Diagram
Class Diagram adalah diagram yang menunjukan class-class yang ada
merupakan tulang punggung atau kekuatan dasar dari hampir setiap metode berorientasi objek termasuk UML (Henderi, 2008). “Sementara menurut (Whitten L. Jeffery et al 2004:432) class diagram adalah gambar grafis mengenai struktur objek statis dari suatu sistem, menunjukan class-class objek yang menyusun sebuah sistem dan juga hubungan antara class objek tersebut.”[4]
BAB 3
ANALISIS DAN PERANCANGAN
3.1 Analisis
Analisis bertujuan untuk mengidentifikasi permasalahan-permasalahan yang ada pada sistem serta menentukan kebutuhan dari sistem yang dibangun.Analisis tersebut meliputi analisis masalah, analisis kebutuhan data dan analisis sistem.Analisis merupakan penguraian dari suatu sistem yang utuh ke dalam bagian-bagian komponen dengan maksud untuk mengidentifikasi dan mengevaluasi permasalahan, sehingga diperoleh solusi. Analisis merupakan tahapan yang paling penting, karena kesalahan dalam tahap ini akan menyebabkan kesalahan di tahap selanjutnya. Aplikasi yang dibuat merupakan program pemandu lokasi dalam bentuk denah tiga dimensi pada Rumah Sakit Gunung Jati Kota Cirebon. Objek yang dibuat merupakan ruangan ruangan pada rumah sakit sehingga pengguna dapat berinteraksi langsung dengan objek virtual dalam dunia nyata. Selain itu diberikan pula jalur tercepat untuk menuju ke ruangan yang dimaksud juga informasi mengenai ruangan tersebut.
3.1.1 Analisis Masalah
3.1.2 Analisis Algoritma Floyd Warshall
Untuk mengetahui suatu metode yang akan digunakan dalam proses penelitian maka terlebih dahulu harus dilakukan analisis terhadap metode yang akan digunakan guna mendukung kesesuaian dalam hal implementasi terhadap masalah yang ada. Dalam hal ini penulis mencoba menganalisis algoritma Floyd Warshall yang dimana digunakan penulis sebagai metode untuk pencarian rute terpendek.
3.1.2.1Penerapan Cara Kerja Algoritma Floyd Warshall
Misalkan seseorang akan melakukan pencarian ruang dari ruang 6 ke ruang 18. Orang tersebut mencoba untuk menerapkan algoritma Floyd-Warshall untuk mencari jalur
terpendek dari ruang 6 ke ruang 18.
Sekarang, orang tersebut mencoba menerapkan algoritma Floyd-Warshall dengan pendekatan pemrograman dinamis maju (forward).
Basis
f1 (s) = cx1s (titik tujuan) Rekurens
fk (s) = min xk {cxks + fk-1(xk)} (jarak titik awal ditambah dengan titik tujuan)
x (titik awal)
Pada tabel ini adalah dimana x1 (titik awal) = 6 dan S (titik yang berdekatan atau titik tujuan) = 7
dan 14, memiliki nilai jarak yaitu f1.
Pada tahap kedua didapatkan x2 (titik awal)= 7 dan 14, pada tahap ini titik 14 memiliki S lebih dari satu sehingga memperoleh jalur baru yaitu titik 15 dan 5.
Tahap 3: jarak dari x3 menuju S.
Tahap 5:
titik 12, 52, dan 47. Dan pencarian jalur terpendek dari ruang 6 menuju ruang 8 telah didapat dengan rute 6, 14, 15, 16, 17, 13, 18 dengan jarak tempuh 59.13m.
Tahap 7:
Pada tahap ketujuh didapatkan x7 (titik awal)= 12, 52, 47, 27 dan 2, pada tahap ini titik 47 dan 27 memiliki S (titik yang berdekatan) lebih dari satu sehingga memperoleh jalur baru yaitu titik 46, dan 53 untuk titik 47 dan 25, 20, 28 untuk titik 27.
49 ∞ 215.24 ∞ ∞ ∞ ∞ 215.24 46
54 ∞ ∞ 175.21 ∞ ∞ ∞ 175.21 53
26 ∞ ∞ ∞ 111.19 ∞ ∞ 111.19 25
19 ∞ ∞ ∞ ∞ 129.30 ∞ 129.30 20
29 ∞ ∞ ∞ ∞ ∞ 186.9 141.13 28
Pada tahap kedelapan didapatkan x8 (titik awal)= 13, 46, 53, 25, 20 dan 28, pada tahap ini titik 46 memiliki S (titik yang berdekatan) lebih dari satu sehingga memperoleh jalur baru yaitu titik 45, dan 49. Proses iterasi pada titik 1 dan 51 terhenti karena titik tersebut tidak mencapai tujuan yaitu titik 18. Dan didapat jalur terpendek dari ruang 6 menuju ruang 8 dengan rute 6,7,8,9,10,11,12,13,18 dengan jarak tempuh 143.69 m.
Tahap 9: Proses iterasi pada titik 54 dan 26 terhenti karena titik tersebut tidak mencapai tujuan yaitu titik 18. Dan didapat jalur terpendek dari ruang 6 menuju ruang 8 dengan rute 6,14,5,4,23,24,27,20,19,18 dengan jarak tempuh 148.69m.
Setelah melakukan proses iterasi maka diperoleh 3 rute, maka dilakukanlah perbandingan hasil untuk memperoleh rute terpendek dari ruang 6 menuju ruang 18 :
Rute 2 : 6 + 7 + 8 + 9 + 10 + 11 + 12 + 13 + 18 = 143.69m Rute 3 : 6 + 14 + 5 + 4 + 23 + 24 + 27 + 20 + 19 + 18 = 148.69m
Dari hasil pencarian jalur terpendek dari ruang 6 ke ruang 18 menggunakan algoritma Floyd-Warshall (pemrograman dinamis), ditemukan bahwa jarak terpendek dari
ruang 6 ke ruang 18 adalah 59.13m dengan jalur (6, 14, 15, 16, 17, 13, 18). Setelah melakukan perbandingan maka didapat jalur alternative satu yaitu 6, 7, 8, 9, 10, 11, 12, 13, 18 dengan jarak tempuh 143.69m dan jalur alternative dua yaitu 6, 14, 5, 4, 23, 24, 27,
20, 19, 18 dengan jarak tempuh 148.69m.
Gambar 3.2 Representasi keterhubungan antar ruang setelah menerapkan
algoritma Floyd-Warshall (sisi berwarna merah)
3.1.3 Analisis kebutuhan non-fungsional
Analisis fungsional dilakukan untuk menghasilkan spesifikasi kebutuhan non-fungsional. Spesifikasi ini juga meliputi elemen atau komponen-komponen apa saja yang
untuk mengolah masukan menjadi keluaran, data yang akan ditangani sistem, jumlah pengguna dan kategori pengguna, serta kontrol terhadap sistem.
Pada analisis kebutuhan non fungsional ini dijelaskan analisis kebutuhan perangkat lunak, analisis kebutuhan perangkat keras, dan analisis pengguna.
3.1.3.1Analisis Pengguna
Analisis pengguna dimaksudkan untuk mengetahui siapa saja pengguna aplikasi. Pengguna aplikasi ini sendiri yaitu para pengunjung Rumah Sakit Gunung Jati yang berplatform android sehingga dapat menggunakan aplikasi yang akan
dibangun.
3.1.3.2Analisis perangkat keras
Spesifikasi minimal perangkat keras yang dapat digunakan untuk menjalankan aplikasi adalah sebagai berikut :
Tabel 3.10 Perangkat Keras
No Perangkat Keras Spesifikasi
1 Processor Qualcomm MSM8230 Snapdragon Dual-core 1GHzGPU
2 Memori RAM: 1 GB
3 OS Android OS, v4.1 (Jelly Bean) 4 Layar TFT capacitive touchscreen, 16M
colors
5 Dimensi 128.7x 65 x 9.7 mm / 137 g
3.1.3.3Analisis perangkat lunak
perangkat lunak minimum yang dibutuhkan untuk menjalankan aplikasi yang dibangun adalah sistem operasi Android versi v4.3 (Jelly Bean).
Android Jelly Bean dipilih dikarenakan keunggulannya dalam grafis yang lebih tajam dibandingkan os android lainnya, dan didukung pula oleh OpenGL yang mampu menghasilkan refleksi tingggi, pencahayaan di tingkat yang lebih tinggi, peningkatan tekstur dan efek bayangan pada karakter 3D. Sehingga aplikasi Denah 3D ini mendapatkan grafik yang lebih baik dibandingkan menggunakan OS android yang ada sekarang.
3.1.4 Analisis Aplikasi Sejenis
Analisis aplikasi sejenis merupakan analisis yang akan membahas mengenai aplikasi yang menjadi acuan dalam pembangunan sebuah aplikasi. Dalam analisis aplikasi sejenis akan dibahas mengenai berbagai hal yang ada di dalam aplikasi sejenis diantaranya meliputi konten, cara menggunakan serta komponen-komponen apa saja yang ada dalam aplikasi tersebut sehingga dapat menjadi acuan bagi kebutuhan yang akan dibangun.
3.1.4.1Aplikasi Pencarian Rute Terpendek untuk Taksi
Aplikasi Pencarian Rute Terpendek untuk Taksi merupakan suatu aplikasi yang digunakan untuk mendapatkan jarak terdekat dengan waktu tercepat dengan rute antara Terminal Leuwi Panjang menuju Dipati Ukur menggunakan taksi. Grafik yang digunakan dalam aplikasi ini adalah 2 Dimensi (2D).
Gambar 3.3 Output Total Jarak Terpendek
Gambar 3.4 Output Total Waktu Tercepat
3.1.4.2Aplikasi Informasi RuteTerpendek Rumah Sakit, Rumah Bersalin dan
Puskesmas di Palembang
tentang rute terpendekrumah sakit, rumah bersalin, dan puskesmas di kota Palembang. Grafik yang digunakan dalam aplikasi ini adalah 2 Dimensi (2D).
Berikut merupakan gambaran tampilan Aplikasi Informasi Rute Terpendek Rumah Sakit, Rumah Bersalin dan Puskesmas di Kota Palembang :
Gambar 3.6 Tampilan Antarmuka Menu Cari Medik
Gambar 3.7 (a), (b) dan (c) Daftar Lokasi
Gambar 3.8. (a), (b) dan (c) Peta Lokasi Rumah Sakit, Rumah Bersalin dan Puskesmas
Gambar 3.10Tampilan Map dari Titik Awal
3.1.4.3Aplikasi Denah 3D RSUD Gunung Jati
Aplikasi Denah 3D RSUD Gunung Jati merupakan suatu aplikasi yang digunakan untuk memberikan informasi tentang rute terpendek RSUD Gunung Jati di kotaCirebon. Grafik yang digunakan dalam aplikasi ini adalah 3 Dimensi (3D).
Berikut merupakan gambaran tampilan Denah 3D RSUD Gunung Jati:
Gambar 3.12 Tampilan Aplikasi Denah 3D
Gambar 3.14 Tampilan Scan Qrqode Titik Keberadaan
Gambar 3.16 Tampilan Info Rute Terpendek
Gambar 3.18 Tampilan Input Info Ruang
Gambar 3.20 Tampilan Video3D RSUD Gunung Jati
3.1.5 Analisis Kebutuhan Fungsional
Analisis kebutuhan fungsional ini dimodelkan dengan menggunakan UML (Unified Modeling Language). Dimana tahap-tahap perancangan yang dilakukan dalam
membangun aplikasi denah 3D Rumah Sakit Umum Daerah Gunung Jati dalam pencarian rute terpendek antara lain Use Case Diagram, Class Diagram, Sequence Diagram, dan Activity Diagram.
3.1.5.1Use Case Diagram
Diagram Use Case merupakan pemodelan untuk kelakuan (behaviour) sistem
informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat.
Berikut ini adalah perancangan proses-proses yang terdapat pada aplikasi Denah 3D RSUD Gunung Jati Use Case Diagram yang dapat dilihat berikut ini:
3.1.5.1.1 Definisi Actor
Definisi actor untuk menjelaskan actor yang terdapat pada Use Case Diagram.Definisi actor dijelaskan pada tabel 3.5.
Tabel 3.12 Definisi Actor
No Actor Deskripsi
1 User Orang yang menggunakan aplikasi
3.1.5.1.2 Definisi Use Case
Definisi Use Case menjelaskan fungsi use case yang terdapat pada Use Case Diagram. Definisi Use Case dijelaskan pada tabel 3.7.
Tabel 3.13 Definisi Use Case
No Use case Deskripsi
1 Cari Ruang Proses untuk melakukan pencarian ruang, rute terdekat, dan menampilkan 3D . 2 Info Ruang Proses dimana menampilkan informasi
mengenai ruangan—ruangan RSUD Gunung Jati.
3 Video 3D Proses menampilkan denah 3D rumah sakit.
4 Scan Qrqode Proses untuk melakukan scan qrqode menentukan titik awal keberadaan. 5 Input Ruang Tujuan Proses untuk menampilkan titik
keberadaan tujuan atau menentukan ruangan yang dituju.
6 Video Rute Terpendek Proses untuk menampilkan petunjuk ruangan denah 3D
ruang yang dilewati pengguna dari titik awal menuju titik tujuan pada denah
3.1.5.2Use Case Skenario
Dalam Skenario Use Case ini menggambarkan alur penggunaan sistem dimana setiap skenario digambarkan dari sudut pandang aktor, seseorang, atau piranti yang berinteraksi dengan perangkat lunak dalam berbagai cara.
Tabel 3.14 Skenario Info Ruang
Nama Use Case Info Ruang
Nomor 1
Aktor User
Kondisi Awal User berada ditampilan menu aplikasi
Reaksi Aktor Reaksi Sistem
1. User memilih tombol menu Info Ruang
3. User memilih nama ruang yang diinginkan dan menekan tombol menu ya
2. Sistem menampilkan nama ruang
4. Sistem menampilkan informasi ruang berbentuk message
Kondisi Akhir Aplikasi menampilkan Info Ruang
Tabel 3.15 Skenario Cari Ruang
Nama Use Case Cari ruang
Nomor 2
Aktor User
Kondisi Awal User berada ditampilan menu aplikasi
Reaksi Aktor Reaksi Sistem
1. User memilih cari ruang
2. User memilih tombol cari ruang
3. Sistem menampilkan tampilan cari ruang
Kondisi Akhir Aplikasi menampilkan Cari Ruang
Pengecualian Aplikasi tidak berjalan baik
Tabel 3.16 Skenario Video 3D
Nama Use Case Video 3D
Nomor 3
Aktor User
Kondisi Awal User berada ditampilan menu aplikasi
Reaksi Aktor Reaksi Sistem
2. User menekan tombol video 3D
3. Sistem menampilkan video denah 3D
Kondisi Akhir Aplikasi menampilkan Video 3D
Pengecualian Aplikasi tidak berjalan baik
Tabel 3.17 Skenario Scan Qrqode
Nama Use Case Scan Qrqode
Nomor 4
Aktor User
Kondisi Awal User berada ditampilan menu Cari Ruangan
Reaksi Aktor Reaksi Sistem
1. User memilih tombol menu Scan Qrqode
2. Sistem menampilkan menu Scan Qrqode
3. Sistem melakukan inisialisasi kamera
5. User melakukan scan qrqode 6. Sistem menampilkan keberadaan awal
Kondisi Akhir Aplikasi menampilkan Scan Qrqode
Pengecualian Aplikasi tidak berjalan baik
Tabel 3.18 Skenario Input Ruang Tujuan
Nama Use Case Input Ruang Tujuan
Nomor 5
Aktor User
Kondisi Awal User berada ditampilan menu cari ruangan
Reaksi Aktor Reaksi Sistem
1. User memilih tombol menu input ruang tujuan
3. User memilih tombol menuju
5. User memilih ruang yang dituju
2. Sistem menampilkan tampilaninput ruang tujuan
4. Sistem menampilkan nama ruang tujuan
6. Sistem menampilkan titik tujuan
Kondisi Akhir Aplikasi menampilkan Input Ruang Tujuan
Tabel 3.19 Skenario Info Rute Terpendek
Nama Use Case Info Rute Terpendek
Nomor 6
Aktor User
Kondisi Awal User berada ditampilan menu cari ruangan
Reaksi Aktor Reaksi Sistem
User memilih menu Info Rute Terpendek
2. User menekan tombol Info Rute Terpendek
3. Sistem menampilkan rute yang ditempuh dari titik awal menuju ruangan yang dituju pada denah
Kondisi Akhir Aplikasi menampilkan Info Rute Terpendek
Pengecualian Aplikasi tidak berjalan baik
Tabel 3.20 Skenario Video Rute Terpendek
Nama Use Case Video Rute Terpendek
Nomor 7
Aktor User
Kondisi Awal User berada ditampilan menu cari ruangan
1. User memilih menu video rute terpendek
2. User menekan tombol video rute terpendek
3. Sistem menampilkan video penunjuk arah menuju ruangan yang dituju
Kondisi Akhir Aplikasi menampilkan video rutte terpentek
Pengecualian Aplikasi tidak berjalan baik
3.1.5.3Activity Diagram
Activity diagram memiliki pengertian yaitu lebih fokus kepada menggambarkan
proses bisnis atau sebuah sistem dan urutan aktivitas dalam sebuah proses.
Gambar 3.24 Activity Diagram Cari Ruang
Gambar 3.26 Activity Diagram Scan Qrqode
Gambar 3.28 Activity Diagram Info Rute Terpendek
Gambar 3.29 Activity Diagram video rute terpendek
3.1.5.4Class Diagram
Class Diagram menggambarkan tipe-tipe objek dalam system dan berbagai jenis
relationship yang diantara mereka, serat penjelasan detail tiap-tiap kelas ke dalam model
Tabel 3.21 Class Diagram
Nama Class Jenis Class Fungsionalitas Class
Main menu Boundary Class untuk mengatur tampilan menu Denah Boundary Class untuk mengatur 3D dan peta Pencarian Boundary Class untuk mencari rute
IntenIntegrator Controler Class untuk menjalankan fungsi kamera IntentResult Controler Class menampilkan hasil kamera
Data server Controler Kumpulan Class yang berfungsi sebagai library method-method data atau parsing SplashScreen Boundary Class untuk memvalidasi hasil dari
database
Playing Boundary Class untuk menampilkan video TouchImageView Controler Class yang mengatur tampilan resolusi
gambar
3.1.5.5Sequence Diagram
Sequence diagram adalah suatu diagram yang menggambarkan interaksi antar
objek dan mengindikasikan komunikasi diantara objek-objek tersebut. Diagram ini juga
menunjukkan serangkaian pesan yang dipertukarkan oleh objek-objek yang melakukan
Gambar 3.31 Sequence Diagram Cari Ruangan
Gambar 3.37 Sequence Diagram Video 3D
3.1.5 Perancangan
3.1.5.1Perancangan Antarmuka
Gambar 3.38 Antar Muka Menu Aplikasi Denah 3D
Gambar 3.40 Antar Muka Menu Aplikasi Denah 3D
Gambar 3.42 Antar Muka Menu Info Ruangan
Gambar 3.44 Antar Muka Menu Video 3D
Gambar 3.46 Antar Muka Menu Input Ruang Tujuan
3.1.6 Jaringan Semantik
Jaringan semantik adalah diagram yang menggambarkan aliran-aliran menu dan pesan
dalam sebuah program. Berikut ini adalah jaringan semantik pada sistem yang dibangun.
Gambar 3.49 Jaringan Semantik Aplikasi Denah 3D
3.1.5
PerancanganMethod3.1.7.1Method Cari Ruang
Method Cari Ruang akan dipanggil pada saat user melakukan proses cari ruang,
seperti terlihat pada gambar 3.46.
3.1.7.2Method Info Ruang
Method info ruang akan dipanggil pada saat user melakukan proses mencari info
ruangan, seperti terlihat pada gambar 3.47.
3.1.7.3Method Video 3D
Method video 3d akan dipanggil pada saat user melakukan proses menampilkan
video 3d seperti terlihat pada gambar 3.48.
77 BAB 4
IMPLEMENTASI DAN PENGUJIAN
4.1 Implementasi
Tahap implementasi dapat dilakukan setelah tahap perancangan selesai dilakukan kemudian dilakukanlah pengujian terhadap aplikasi. Implementasi sendiri merupakan tahapan meletakan sistem agar dapat dioperasikan oleh pengguna.
4.1.1 Implementasi Perangkat Pembangun
Perangkat pembangun yang digunakan dalam membangun Aplikasi Deenah 3D RSUD Gunung Jati sendiri adalah sebagai berikut:
a. Perangkat Keras yang Digunakan
Perangkat keras yang digunakan untuk pembuatan aplikasi dijelaskan pada tabel 4.1.
Tabel 4.1 Perangkat Keras yang Digunakan
No Perangkat Keras Spesifikasi
1 Processor Qualcomm MSM8230 Snapdragon Dual-core 1GHzGPU
2 Memori RAM: 1 GB
3 Layar TFT capacitive touchscreen, 16M colors
4 Jaringan 128.7HSDPA 3.6Mbps
5 Dimensi 128.8
b. Perangkat Lunak yang Digunakan
Spesifikasi perangkat lunak (Software) yang dipasang pada sistem komputer
Tabel 4.2 Perangkat Lunak yang Digunakan
No Perangkat Lunak Keterangan
1 Sistem Operasi Android OS, v4.1 (Jelly Bean) 2 Code Editor Netbean 7.0
3 DBMS SQLyog
4 Server Xxamp server 1.3.1.0 5 Analisis pemodelan Star UML
4.1.2 Implementasi Antarmuka
Pada tahap ini dilakukan penerapan hasil perancangan antarmuka ke dalam aplikasi yang dibangun dengan menggunakan perangkat lunak yang telah dipaparkan pada sub bab implementasi perangkat lunak, yang tercantum pada gambar di bawah ini dan untuk antarmuka selanjutnya dapat dilihat pada :
1. Tampilan Utama Eksekusi Aplikasi
Tampilan utama aplikasi Denah 3D RSUD Gunung Jati
2. Tampilan Aplikasi Denah 3D Siap Digunakan
Tampilan antarmuka aplikasi Denah 3D siap digunakan seperti gambar 4.2.
Gambar 4.2 Tampilan Antarmuka Aplikasi Denah 3D
3. Tampilan Petunjuk Penggunaan
Tampilan antarmuka Petunjuk penggunaan terlihat seperti gambar 4.3.
4. Tampilan Cari Ruangan
Tampilan antarmuka tentang Cari Ruangan seperti gambar 4.4.
Gambar 4.4 Tampilan Antarmuka Cari Ruangan
5. Tampilan Antarmuka Scan Qrqode Titik Keberadaan
Tampilan antarmuka Scan qrqode titik keberadaan seperti gambar 4.5.
6. Tampilan Antarmuka Tampilan Input Ruang Tujuan
Tampilan antarmuka Tampilan Input Ruang Tujuan seperti gambar 4.6.
Gambar 4.6 Tampilan Antarmuka Tampilan Input Ruang Tujuan
7. Tampilan Antarmuka Tampilan Info Rute Terpendek
Tampilan antarmuka Tampilan Info Rute Terpendek seperti gambar 4.7.
8. Tampilan Antarmuka Tampilan Input Info Ruang
Tampilan antarmuka Tampilan Input Info Ruang seperti gambar 4.8.
Gambar 4.8 Tampilan Antarmuka Tampilan Input Info Ruang
9. Tampilan Antarmuka Tampilan Info Ruang
10.Tampilan Antarmuka Tampilan Video3D RSUD Gunung Jati
Tampilan antarmuka Tampilan Video3D RSUD Gunung Jati seperti gambar 4.10.
Gambar 4.10 Tampilan Antarmuka Tampilan Input Info Ruang
4.2 Pengujian
Pengujian aplikasi dilakukan bertujuan untuk menemukan kesalahan atau kekurangan pada perangkat lunak yang diuji. Pengujian bermaksud untuk mengetahui perangkat lunak yang dibuat sudah memenuhi kriteria yang sesuai dengan tujuan perancangan perangkat lunak tersebut.
Dalam penelitian ini pengujian yang dilakukan terhadap aplikasi yaitu pengujian secara fungsional blackbox dan beta. Metode yang digunakan dalam pengujian ini adalah pengujian blackbox yang berfokus pada persyaratan fungsional dari aplikasi yang dibangun.
4.2.1 Pengujian Blacbox