Aplikasi pencarian lokasi apotek di Kabupaten Sleman.

(1)

Kabupaten Sleman memiliki luas wilayah yang mencapai 57.482 Ha, berdasarkan sensus yang dilakukan oleh Badan Pusat Statistik Kabupaten Sleman pada tahun 2014, Kabupaten Sleman memiliki 1.093.110 penduduk yang tersebar dalam 17 kecamatan, 86 desa dan 1.212 padukuhan.

Dengan jangkauan wilayah yang cukup luas dan jumlah penduduk yang cukup besar ini, masyarakat sangat memerlukannya fasilitas pendukung kesehatan yaitu apotek untuk memenuhi kebutuhan dalam mendapatkan obat-obat komersial guna mengobati berbagai penyakit ringan tanpa harus merujuk pada fasilitas primer kesehatan layaknya puskesmas, klinik maupun rumah sakit.

Berdasarkan hal tersebut, muncul gagasan untuk membuat sistem yang dapat memberi rekomendasi pada masyarakat dalam mencari apotek. Nantinya sistem ini dapat digunakan untuk membantu masyarakat dalam mencari lokasi apotek terdekat dari posisi dimana orang tersebut berada berdasarkan kriteria yang inginkan dengan mengakses aplikasi pencarian apotek di kabupaten sleman berbasis web.


(2)

Sleman regency has an area of 57.482 square kilometers, based on the census of the Central Agency Statistic of Sleman Regency, Sleman has 1.093.110 population which spread in 17 sub-districts, 86 villages and 1.212 hamlets.

With a wide range area and a huge number of population, the society really needs a supported health facility, such as pharmacy to fulfill their need in commercial drugs and cure the minor ailments without referring to the primary health facilities such as health centers, clinics and hospital

Due to that problem, an idea to create a system that give a recommendation to the society in searching a pharmacy appear. Later, this system can be used to help the society searching the nearest pharmacy from their position based on the criteria that they want through accessing The Searching Application of Pharmacies in Sleman Regency.


(3)

APLIKASI PENCARIAN LOKASI APOTEK

DI KABUPATEN SLEMAN

SKRIPSI

Untuk memenuhi sebagian persyaratan mencapai derajat Sarjana S-1 Program Studi Teknik Informatika

Disusun oleh : Cahyo Wicaksono

125314045

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA


(4)

SEARCHING APPLICATION OF PHARMACIES IN

SLEMAN REGENCY

A Thesis

Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Komputer Degree in Informatics Engineering Study Program

Created By : Cahyo Wicaksono

125314045

INFORMATICS ENGINEERING STUDY PROGRAM

DEPARTMENT OF INFORMATICS ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2017


(5)

(6)

(7)

iii

HALAMAN PERSEMBAHAN

Kupersembahkan kripsi ini untuk :

1. Tuhan Yesus Kristus yang senantiasa menyertai, memberikan

kekuatan dan memberikan berkat karunia-Nya.

2. Ibuku tercinta, Jadmiyati yang memiliki kesabaran untuk

menunggu dan memberikan dukungan moral maupun materiil sampai saat ini dengan penuh kasih sayang dan cinta kasihnya.

3. Kakakku tersayang Agnes Chhristyati yang selalu memberikan

motivasi, semangat dan doa.

4. Maria Jovial Wijna Svetaketu tersayang yang selalu

menjengkelkan, menberikan motivasi dan semangat dalam pengerjaan skripsi ini.

Para sahabatku yang saling memberi semangat untuk menyelesaikan


(8)

(9)

(10)

vi

ABSTRAK

Kabupaten Sleman memiliki luas wilayah yang mencapai 57.482 Ha, berdasarkan sensus yang dilakukan oleh Badan Pusat Statistik Kabupaten Sleman pada tahun 2014, Kabupaten Sleman memiliki 1.093.110 penduduk yang tersebar dalam 17 kecamatan, 86 desa dan 1.212 padukuhan.

Dengan jangkauan wilayah yang cukup luas dan jumlah penduduk yang cukup besar ini, masyarakat sangat memerlukannya fasilitas pendukung kesehatan yaitu apotek untuk memenuhi kebutuhan dalam mendapatkan obat-obat komersial guna mengobati berbagai penyakit ringan tanpa harus merujuk pada fasilitas primer kesehatan layaknya puskesmas, klinik maupun rumah sakit.

Berdasarkan hal tersebut, muncul gagasan untuk membuat sistem yang dapat memberi rekomendasi pada masyarakat dalam mencari apotek. Nantinya sistem ini dapat digunakan untuk membantu masyarakat dalam mencari lokasi apotek terdekat dari posisi dimana orang tersebut berada berdasarkan kriteria yang inginkan dengan mengakses aplikasi pencarian apotek di kabupaten sleman berbasis web.


(11)

vii

ABSTRACT

Sleman regency has an area of 57.482 square kilometers, based on the census of the Central Agency Statistic of Sleman Regency, Sleman has 1.093.110 population which spread in 17 sub-districts, 86 villages and 1.212 hamlets.

With a wide range area and a huge number of population, the society really needs a supported health facility, such as pharmacy to fulfill their need in commercial drugs and cure the minor ailments without referring to the primary health facilities such as health centers, clinics and hospital

Due to that problem, an idea to create a system that give a recommendation to the society in searching a pharmacy appear. Later, this system can be used to help the society searching the nearest pharmacy from their position based on the criteria that they want through accessing The Searching Application of Pharmacies in Sleman Regency.


(12)

viii

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus, yang telah memberikan rahmat dan karunia yang berlimpah sehingga penulis dapat menyelesaikan tugas akhir yang berjudul Aplikasi Pencarian Apotek di Kabupaten Sleman dengan baik. Sebagaimana disyaratkan dalam Kurikulum Program Studi Teknik Informatika (TI), Fakultas Sains dan Teknologi (FST), Universitas Sanata Dharma (USD) Yogyakarta.

Penulis menyadari bahwa pada saat penulisan dan pengerjaan tugas akhir ini penulis menyadari bahwa mendapatkan banyak sekali bantuan dari berbagai pihak, baik berupa dukungan, perhatian, kritik dan saran, serta doa yang sangat dibutuhkan penulis guna kelancaran pengerjaan dan mendapatkan hasil yang baik. Pada kesempatan ini secara khusus penulis akan menyampaikan terimakasih kepada :

1. Sudi Mungkasi, S.Si., M.Math.Sc., Ph.D. selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.

2. Dr. Anastasia Rita Widiarti, M.Kom. selaku Ketua Program Studi Teknik Informatika yang selalu memberikan dukungan dan perhartian serta saran kepada mahasiswa tugas akhir dalam pengerjaan tugas akhir.

3. Drs. Haris Sriwindono, M.Kom. selaku dosen pembimbing tugas akhir yang telah dengan sabar dan penuh perhatian membimbing penulis dalam penyususnan tugas akhir mulai dari awal pengerjaan, pertengahan dan pada akhir penulisan.

4. Ali Mustopa, M.Kom. yang telah memberikan bimbingan, pengajaran, dan bersedia memberi ilmunya dalam pengerjaan tugas akhir ini, serta dengan sabar memberikan pelajaran dalam pembuatan program tugas akhir ini.


(13)

ix

5. Segenap dosen Program Studi Teknik Informatika Sanata Dharma yang dengan penuh dedikasi mendidik, membimbing, memberikan dukungan, bantuan, dan arahan yang sangat bermanfaat dari awal kuliah sampai selesai.

6. Ibuku tercinta, Jadmiyati yang memiliki kesabaran untuk menunggu dan memberikan dukungan moral maupun materiil sampai saat ini dengan penuh kasih sayang dan cinta kasihnya.

7. Kakakku tersayang Agnes Chhristyati yang selalu memberikan motivasi, semangat dan doa.

8. Maria Jovial Wijna Svetaketu tersayang yang selalu menjengkelkan, memberikan motivasi dan semangat dalam pengerjaan skripsi ini. 9. Corey Taylor, Cholil Mahmud, Damon Albarn, Eric Martin, Iga

Masardi, Jonathan Davis, Jon Bon Jovi, Liam Gallagher dan Thom Yorke yang telah memberikan suara terbaiknya dalam mengiringi pembuatan skripsi ini.

10. Teman-teman Teknik Informatika Sanata Dharma “Ikatan Teknik Informatika Liberal” Anjar Nugraha Jati, Komang Mariadi, Hugo Himawan, Daniel Risamasu, Christian Bayu, Wisnu Wardana, Alvin Christianto, Alex Purbo, Thomas Wiga, Adrian Nada, Henrycus, Yosua Astutakari, Rekiyan Seto, Dhesa Ardiyanta, Pius Juan, Dian Tobias, Stephanus Jay, Ari Manibuy, Kevinda Mahatma dan teman-teman lainnya atas partisipasinya dalam memberikan dukungan, motivasi, dan semangat dalam pengerjaan skripsi ini dari awal hingga selesai.

Penulis juga menyadari bahawa banyak pihak lainnya yang berperan dan mendukung dalam keseluruhan proses pendidikan di Universitas Sanata Dharma Yogyakarta in. Tanpa mengurangi rasa hormat kepada seluruh pihak tersebut namanya tidak sempat disebutkan satu per satu di dalam tulisan ini, sekali lagi penulis mengucapkan terimakasih.


(14)

(15)

xi DAFTAR ISI

HALAMAN PERSETUJUAN ... ERROR! BOOKMARK NOT DEFINED. HALAMAN PENGESAHAN SKRIPSI ... ERROR! BOOKMARK NOT DEFINED.

HALAMAN PERSEMBAHAN ... III PERNYATAAN KEASLIAN KARYA ... IV LEMBAR PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK

KEPENTINGAN AKADEMIS ... V ABSTRAK ... VI ABSTRACT ... VII KATA PENGANTAR ... VIII DAFTAR ISI ... XI DAFTAR GAMBAR ... XV DAFTAR TABEL ... XVII

BAB I PENDAHULUAN ... 1

1.1. LATAR BELAKANG ... 1

1.2. RUMUSAN MASALAH ... 2

1.3. TUJUAN PENELITIAN ... 2

1.4. BATASAN MASALAH ... 2

1.5. METODOLOGI PENELITIAN... 3

1.6. SISTEMATIKA PENULISAN ... 3

BAB II LANDASAN TEORI ... 4

2.1 SISTEM INFORMASI ... 4

2.2 SISTEM INFORMASI GEOGRAFIS (SIG) ... 6

2.2.1 Pengertian Sistem Informasi Geografis (SIG) ... 6

2.2.2 Sumber data Sistem Informasi Geografis (SIG) ... 6

2.2.3 Manajemen data ... 7

2.2.4 Komponen citra Sistem Informasi Geografis (SIG) ... 7


(16)

xii

2.2.6 Karakteristik Sistem Informasi Geografis (SIG) ... 9

2.2.7 Subsistem Sistem Informasi Geografis (SIG) ... 9

2.3 PETA... 10

2.3.1 Pengertian Peta ... 10

2.3.2 Komponen Peta ... 10

2.4 SISTEM KOORDINAT DAN PROYEKSI PETA ... 12

2.4.1 Proyeksi Peta ... 12

2.4.2 Sistem Koordinat ... 14

2.4.2.1 Sistem Koordinat Kartesian 2D ... 15

2.4.2.2 Proyeksi Longitude dan Latitude ... 15

2.5 METODE WATERFALL ... 18

2.5.1 Model Sistem... 18

2.5.2 Analisa Kebutuhan Sistem ... 18

2.5.3 Desain ... 18

2.5.3.1 Basis Data ... 18

2.5.3.1.1 Pengertian Basis Data ... 18

2.5.3.1.2 Konsep perancangan Basis Data ... 19

2.5.3.1.3 Perancangan Konseptual ... 20

2.5.3.1.4 Perancangan Logikal ... 22

2.5.3.1.5 Perancangan Fisikal ... 23

2.5.3.2 My SQL ... 23

2.5.3.3 Data Flow Diagram (DFD) ... 25

2.4.4. Pengkodean ... 26

2.4.4.1. Javascript ... 26

2.4.4.2. PHP ... 27

2.4.5. Pengujian ... 28

2.4.6. Pemeliharaan ... 28

2.6 GOOGLE MAPS ... 29

2.7 GOOGLE MAPS APPLICATION PROGRAMING INTERFACE (API) 30 2.8 INTERNET ... 30


(17)

xiii

2.10 WORLD WIDE WEB (WWW)... 31

2.11 WEB SERVER ... 31

2.12 HEYPER TEXT TRANSFER PROTOKOL (HTTP) ... 31

2.13 APOTEK ... 31

2.13.1 Definisi, Tugas, dan Fungsi Apotek ... 31

BAB III ANALISA PERANCANGAN SISTEM ... 33

3.1. ANALISA SISTEM ... 33

3.2. ANALISA KEBUTUHAN PENGGUNA ... 33

3.2.1. Use-Case Diagram ... 34

3.2.2. Skenario Use case ... 36

3.3. PERANCANGAN SISTEM ... 43

3.3.1. Diagram Konteks... 43

3.3.2. Diagram Berjenjang ... 44

3.3.3. Data Flow Diagram ... 45

3.3.3.1. DFD User ... 45

3.3.3.2. DFD Owner Level 1 ... 45

3.3.3.3. DFD Kelola Owner Level 2 ... 46

3.3.3.4. DFD Kelola Apotek Owner Level 2 ... 46

3.3.3.5. DFD Admin Level 1 ... 47

3.3.3.6. DFD Kelola Owner Admin Level 2 ... 47

3.3.3.7. DFD Kelola Apotek Admin Level 2 ... 48

3.4. PERANCANGAN BASISDATA ... 48

3.4.1. Relasi Antar Tabel ... 48

3.4.2. Daftar Tabel Apotek ... 49

3.4.3. Daftar Tabel Owner ... 49

3.4.4. Daftar Tabel Admin ... 50

3.5. PERANCANGAN ANTARMUKA PENGGUNA ... 50

3.5.1. Perancangan Antarmuka Owner... 50

3.5.2. Perancangan Antarmuka Admin ... 56

3.5.3. Perancangan Antarmuka User ... 60


(18)

xiv

4.1 SPESIFIKASI PERANGKAT KERAS DAN PERANGKAT LUNAK 62

4.2 IMPLEMENTASI ... 62

4.1.2 Implementasi Basis Data ... 62

4.1.3 Implementasi Pengkodean Sistem ... 64

4.3. PENGUJIAN... 70

4.4. ANALISA HASIL UJI PERANGKAT LUNAK ... 72

BAB V PENUTUP ... 73

5.1 KESIMPULAN ... 73

5.2 SARAN ... 73


(19)

xv

DAFTAR GAMBAR

Gambar 2. 1 Proyeksi Peta Azimuthal ... 13

Gambar 2. 2 Proyeksi Peta Silinder ... 13

Gambar 2. 3 Proyeksi Peta Kerucut ... 14

Gambar 2. 4 Sistem Koordinat Kartesian 2D ... 15

Gambar 2. 5 Proyeksi Longitude Latitude ... 16

Gambar 2. 6 Proyeksi longitude dan latitude untuk negara didunia ... 17

Gambar 2. 7 Simbol Proses ... 25

Gambar 2. 8 Simbol Aliran Data... 25

Gambar 2. 9 Penyimpanan Data... 26

Gambar 2. 10 Simbol External Entity ... 26

Gambar 2. 11 Waterfall Model Menurut (Pressman, 2003). ... 28

Gambar 3. 1 Use Case User ... 34

Gambar 3. 2 Use Case Owner ... 34

Gambar 3. 3 Use Case Admin ... 35

Gambar 3. 4 Diagram Konteks... 43

Gambar 3. 5 Diagram Berjenjang ... 44

Gambar 3. 6 DFD User ... 45

Gambar 3. 7 DFD Owner Level 1 ... 45

Gambar 3. 8 DFD Kelola Owner Level 2 ... 46

Gambar 3. 9 DFD Kelola Owner Level 2 ... 46

Gambar 3. 10 DFD Admin level 1 ... 47

Gambar 3. 11 DFD Kelola Owner Admin Level 2 ... 47

Gambar 3. 12 DFD Kelola Apotek Level 2 ... 48

Gambar 3. 13 Relasi Antar Tabel ... 48

Gambar 3. 14 Halaman Login Owner ... 50

Gambar 3. 15 Halaman Daftar Owner ... 50

Gambar 3. 16 Menu Owner ... 51

Gambar 3. 17 Halaman Apotek ... 51


(20)

xvi

Gambar 3. 19 Menu Lihat Apotek Owner ... 53

Gambar 3. 20 Edit Apotek Owner... 54

Gambar 3. 21 Halaman Owner... 55

Gambar 3. 22 Menu Lihat Owner ... 55

Gambar 3. 23 Menu Edit Owner ... 55

Gambar 3. 24 Halaman Login Admin ... 56

Gambar 3. 25 Menu Admin ... 56

Gambar 3. 26 Halaman Apotek Admin ... 56

Gambar 3. 27 Menu Lihat Apotek Admin ... 57

Gambar 3. 28 Menu Edit Apotek Admin ... 58

Gambar 3. 29 Menu Hapus Apotek... 59

Gambar 3. 30 Halaman Owner Admin ... 59

Gambar 3. 31 Menu Lihat Owner Admin ... 60

Gambar 3. 32 Halaman Utama ... 60


(21)

xvii

DAFTAR TABEL

Tabel 3. 1 Narasi Use case Cari Apotek ... 36

Tabel 3. 2 Narasi Use case Cari Rute ... 36

Tabel 3. 3 Narasi Use case Daftar Owner ... 37

Tabel 3. 4 Narasi Use case Login Owner ... 37

Tabel 3. 5 Narasi Use case Daftar Apotek ... 38

Tabel 3. 6 Narasi Use case Lihat Apotek ... 38

Tabel 3. 7 Narasi Use case Edit Apotek ... 39

Tabel 3. 8 Narasi Use case Lihat Owner ... 39

Tabel 3. 9 Narasi Use case Edit Owner ... 40

Tabel 3. 10 Narasi Use case Login Admin ... 40

Tabel 3. 11 Narasi Use case Lihat Apotek ... 41

Tabel 3. 12 Narasi Use case Edit Apotek ... 41

Tabel 3. 13 Narasi Use case Hapus Apotek ... 42

Tabel 3. 14 Narasi Use case Lihat Owner ... 42

Tabel 3. 15 Narasi Use case Hapus Owner ... 42

Tabel 3. 16 Tabel Apotek ... 49

Tabel 3. 17 Tabel Owner ... 49

Tabel 3. 18 Tabel Admin ... 50

Tabel 4. 1 Pengujian Login ... 70

Tabel 4. 2 Pengujian Tambah Data ... 70

Tabel 4. 3 Pengujian Edit Data ... 71

Tabel 4. 4 Pengujian Hapus Data ... 71


(22)

BAB I PENDAHULUAN 1.1. Latar Belakang

Kabupaten Sleman merupakan salah satu Kabupaten yang berada di Provinsi Daerah Istimewa Yogyakarta, berbatasan dengan Kabupaten Magelang di sebelah utara, Kabupaten Klaten di sebelah timur, Kabupaten Kulonprogo di sebelah barat serta Kabupaten Bantul dan Kota Yogyakarta di sebelah selatan. Kabupaten Sleman memiliki luas wilayah yang mencapai 57.482 Ha, berdasarkan sensus yang dilakukan oleh Badan Pusat Statistik Kabupaten Sleman pada tahun 2014, Kabupaten Sleman memiliki 1.093.110 penduduk yang tersebar dalam 17 kecamatan, 86 desa dan 1.212 padukuhan. Dengan jangkauan wilayah yang cukup luas dan jumlah penduduk yang cukup besar ini, tidak dapat dipungkiri bahwa akses terhadap fasilitas kesehatan beserta sarana pendukungnya sangat berperan penting dalam mendukung kesejahteraan masyarakat yang berdomisili di Kabupaten Sleman. Masyarakat sangat memerlukannya fasilitas pendukung kesehatan yaitu apotek untuk memenuhi kebutuhan dalam mendapatkan obat-obat komersial guna mengobati berbagai penyakit ringan tanpa harus merujuk pada fasilitas primer kesehatan layaknya puskesmas, klinik maupun rumah sakit. Menurut data yang terdapat pada website Dinas Kesehatan Kabupaten Sleman, terdapat 232 apotek yang terdaftar.

Berdasarkan hal tersebut, muncul gagasan untuk membuat sistem yang dapat memberi rekomendasi pada masyarakat dalam mencari apotek. Nantinya sistem ini dapat digunakan untuk membantu masyarakat dalam mencari lokasi apotek terdekat dari posisi dimana orang tersebut berada berdasarkan kriteria yang inginkan dengan mengakses aplikasi pencarian apotek di kabupaten sleman berbasis web.


(23)

1.2. Rumusan Masalah

Berdasarkan latar belakang yang telah diuraikan tersebut, rumusan masalah yang didapat dalam penelitian ini adalah bagaimana membangun sebuah sistem pendukung pengambilan keputusan yang akan merekomendasikan lokasi apotek sesuai kriteria yang diinginkan user seperti ketersediaan fasilitas yang berupa praktek dokter, laboratorium, fitur delivery order dan juga jarak tempuhnya.

1.3. Tujuan Penelitian

Tujuan dan manfaat dari pembuatan sistem ini adalah :

1. Membangun sebuah sistem yang merekomendasikan lokasi apotek sesuai dengan keinginan user.

2. Membantu masyarakat di daerah Kabupaten Sleman untuk mendapatkan informasi tentang lokasi apotek.

3. Memberikan kemudahan bagi masyarakat yang berdomisili di daerah Kabupaten Sleman untuk menemukan lokasi apotek terdekat.

1.4. Batasan Masalah

Batasan masalah yang terdapat dalam pembuatan sistem ini adalah dapat diuraikan sebagai berikut :

1. Daerah yang menjadi obyek pembuatan adalah Kabupaten Sleman.

2. Dasar kriteria yang digunakan adalah praktek dokter, laboratorium, fitur delivery order dan jarak tempuh dari lokasi user mengakses.

3. Informasi yang ditampilkan oleh sistem kepada user berupa lokasi apotek, fitur-fitur yang tersedia seperti praktek dokter, laboratorium, delivery order dan juga jarak tempuh.


(24)

1.5. Metodologi Penelitian

Metodologi yang digunakan dalam pembuatan penelitian ini menggunakan metode Waterfall (Pressman, 2002) yaitu :

1. Analisa 2. Perancangan 3. Coding 4. Testing 5. Implementasi 6. Maintenance

1.6. Sistematika Penulisan BAB I : Pendahuluan

Berisi tentang masalah yang akan diteliti. Didalamnya terdapat Latar Belakang, Rumusan Masalah, Tujuan dan Manfaat Penelitian, Bahasan Masalah dan Sistematika Penulisan.

BAB II : Landasan Teori

Berisi penjelasan seputar topik yang diangkat dan uraian teori yang dipakai dalam pembuatan sistem.

BAB III : Analisis Dan Perancangan Sistem

Berisi tentang analisis dan desain yang menjadi detail teknis dari sistem.

BAB IV : Analisa Hasil Implementasi

Berisi tentang implementasi dan perancangan sistem. BAB V : Kesimpulan Dan Saran

Berisi tentang kesimpulan dari sistem berdasarkan pembahasan dari rangkaian bab sebelumnya.


(25)

BAB II

LANDASAN TEORI.

2.1 Sistem Informasi

Pengertian Sistem Informasi

Sistem informasi dapat didefinisikan sebagai suatu sistem didalam suatu organisasi yang merupakan kombinasi dari orang-orang, fasilitas, teknologi, media, prosedur-prosedur dan pengendalian yang ditujukan untuk mendapatkan jalur komunikasi penting, memproses tipe transaksi rutin tertentu, memberi sinyal kepada manajemen dan yang lainnya terhadap kejadian-kejadian internal dan eksternal yang penting dan menyediakan suatu dasar informasi untuk pengambilan keputusan yang cerdik (Jogiyanto, 2005).

Menurut Jogiyanto (2005) sendiri, komponen sistem informasi terbagi menjadi beberapa blok bangunan (building block) yaitu :

1. Blok Masukan (Input block)

Input mewakili data yang masuk kedalam sistem informasi. Input disini termasuk metode-metode dan media untuk menangkap data yang akan dimasukkan, yang dapat berupa dokumen-dokumen dasar. 2. Blok Model (Model block)

Blok ini terdiri dari kombinasi prosedur. Logika dan model matematika yang akan memanipulasi data input dan data yang tersimpan di dasar data dengan cara yang sudah tertentu untuk menghasilkan keluaran yang diinginkan.

3. Blok Keluaran (Output block)

Produk dari sistem informasi adalah keluaran yang merupakan informasi yang bekualitas dan dokumentasi yang berguna untuk semua tingkatan manajemen serta semua pemakai sistem.


(26)

4. Blok Teknologi (Technology block)

Teknologi merupakan “kotak alat” (tool-box) dari pekerjaan sistem informasi. Teknologi digunakan untuk menerima input, menjalankan model, menyimpan dan mengakses data, menghasilkan dan mengirimkan keluaran dan membantu pengendalian dari sistem keseluruhan.

5. Blok Basisdata (Database block)

Basisdata merupakan kumpulan dari data yang saling berhubungan satu dengan lainnya, tersimpan di perangkat keras komputer dan digunakan perangkat lunak untuk memanipulasinya.

Data perlu disimpan di dalam dasar data untuk keperluan penyediaaan informasi lebih lanjut. Data di dalam basisdata perlu diorganisasikan sedemikian rupa, supaya informasi yang dihasilkan berkualitas. Organisasi basisdata yang baik juga berguna untuk efisiensi kapasitas penyimpanannya. Basisdata dapat diakses atau dimanipulasi dengan menggunakan perangkat lunak yang disebut dengan DBMS (Database Management System).

6. Blok Kendali (Control block)

Untuk supaya sistem informasi dapat berjalan sesuai dengan yang diinginkan, maka perlu diterapkan pengendalian-pengendalian di dalamnya. Banyak hal yang dapat merusak sistem informasi, seperti misalnya bencana alam, api, temperatur, air, debu, kecurangan-kecurangan, kegagalan-kegagalan sistem itu sendiri, kesalahan-kesalahan, ketidakefisienan, sabotase dan lain sebagainya. Beberapa pengendali perlu dirancang dan diterapkan untuk meyakinkan bahwa hal-hal yang dapat merusak sistem dapat dicegah ataupun bila terlanjur terjadi kesalahan-kesalahan dapat langsung cepat diatasi.


(27)

2.2 Sistem Informasi Geografis (SIG)

2.2.1 Pengertian Sistem Informasi Geografis (SIG)

Sistem informasi geografis adalah sistem berbasis komputer yang digunakan untuk menyimpan, memanipulasi, dan menganalisis informasi geografis (Paryono, 1994).

2.2.2 Sumber data Sistem Informasi Geografis (SIG)

Menurut Paryono (1994), sistem informasi geografis memerlukan data masukan agar dapat berfungsi dan memberikan informasi lain hasil analisisnya. Data masukan tersebut dapat diperoleh dari tiga sumber yaitu :

1. Data Lapangan

Data ini diperoleh langsung dari pengukuran lapangan secara langsung, seperti misal pH tanah, curah hujan suatu wilayah, salinitas air, dan sebagainya.

2. Data Peta

Informasi yang telah terekam pada peta kertas atau film, dikonversi ke dalam bentuk digital. Misal, peta geologi, peta tanah, dan sebagainya. Apabila data telah direkam dalam bentuk peta, tidak lagi perlu data lapangan, kecuali untuk pengecekan kebenaran.

3. Data Citra Penginderaan Jauh

Citra pengindraan jauh yang berupa foto udara atau radar dapat diinterpretasi terlebih dahulu sebelum dikonversi ke dalam bentuk digital. Sedangkan citra yang diperoleh dari satelit ysng sudah dalam bentuk digital dapat langsung digunakan setelah diadakan koreksi seperlunya.


(28)

4. Data GPS (Global Positioning System)

Teknologi GPS memberi terobosan penting dalam menyediakan data bagi SIG. Keakuratan pengukuran GPS semakin tinggi dengan berkembangnya teknologi. Data ini biasanya direpresentasikan dalam format vektor.

2.2.3 Manajemen data

Menurut Paryono (1994), Data geografis sebagai data keruangan (spatial) data dapat disajikan pada kertas atau pada sistem informasi geografis. Data spasial adalah data yang memiliki referensi ruang kebumian dimana berbagai data atribut terletak dalam berbagai unit spasial. Format data spatial dapat disajikan dengan beberapa jenis yaitu:

1. Titik (Point)

Titik digunakan untuk menunjukan sebuah lokasi dalam sistem informasi geografis.

2. Garis (Line)

Garis digunakan untuk menunjukan sebuah jalur atau jalan dalam sistem informasi geografis.

3. Bidang (Space)

Bidang dalam ilmu sistem informasi geografis digunakan untuk menunjukkan suatu area.

2.2.4 Komponen citra Sistem Informasi Geografis (SIG)

Sistem informasi geografis ada 4 komponen citra yaitu : 1. Posisi Geografis

Dalam sistem informasi geografis, posisi geografis dinyatakan dalam bentuk garis lintang/ bujur maupun UTM (Universal Transverse Mercator).


(29)

2. Atribut

Atribut dalam sistem informasi geografis digunakan untuk menggambarkan suatu lokasi yang memiliki kondisi tertentu seperti danau, sungai, jalan dan lain-lain.

3. Hubungan Keruangan

Hubungan keruangan dalam sistem informasi geografis merupakan hal yang sangat kompleks karena berhubungan dengan kumpulan data-data bertipe raster ataupun vektor. 4. Waktu

Komponen waktu adalah komponen yang penting karena akan sangat mempengaruhi citra dari perkembangan daerah.

2.2.5 Model data keruangan

Terdapat 2 jenis model data keruangan dalam sistem informasi geografis yaitu :

1. Model Raster

Model raster merupakan metode ketika semua objek disajikan dalam bentuk sel-sel yang disebut pixel (picture element). Setiap sel memiliki koordinat serta informasi (atribut keruangan dan waktu). Objek dalam bentuk titik, garis, maupun bidang (area) semuanya disajikan dan dinyatakan dalam titik atau sel (Paryono, 1994).

2. Model Vektor

Model vektor merupakan metode ketika objek disajikan sebagai titik atau segmen-segmen garis. Model data ini lebih banyak berkaitan dengan bentuk suatu objek disimpan (Paryono, 1994).


(30)

2.2.6 Karakteristik Sistem Informasi Geografis (SIG)

1. Merupakan suatu sistem hasil pengembangan perangkat keras dan perangkat lunak untuk tujuan pemetaan, sehingga fakta wilayah dapat disajikan dalam suatu sistem berbasis komputer. 2. Melibatkan ahli geografi, informatika komputer, dan aplikasi

terkait.

3. Masalah dalam pengembangan meliputi : cakupan, kualitas, dan standart data, struktur, model dan visualisasi data, koordinasi kelembagaan dan etika, pendidikan, expert system dan decision support system, serta penerapan.

4. Perbedaan dengan sistem informasi lainnya : data dikaitkan dengan letak geografis, dan terdiri dari data tekstual maupun grafik.

5. Bukan hanya sekedar pegubah peta konvensional (tradisional) ke bentuk peta digital untuk kemudian disajikan (dicetak / diperbanyak) kembali.

6. Mampu mengumpulkan, menyimpan, mentransformasi, menampilkan, memanipulasi, memadukan, dan menganalisis data spasial dari fenomena geografis suatu wilayah.

7. Mampu menyimpan data dasar yang dibutuhkan untuk penyelesaian suatu masalah.

8. Sistem informasi geografis memiliki keunggulan inheren karena dapat menyimpan data dan presentasinya dipisahkan. Sehingga data dapat dipresentasikan dalam berbagai cara dan bentuk. 2.2.7 Subsistem Sistem Informasi Geografis (SIG)

Terdapat 4 subsistem dalam sistem informasi geografis yaitu : 1. Data Masukan

Melakukan pengaturan dan pengolahan data yang masuk agar dapat diolah dalam sistem informasi geografis.


(31)

Melakukan organisasi data agar dapat diolah oleh basis data.

3. Manipulasi dan Analisis Data

Melakukan manipulasi dan menentukan permodelan agar informasi yang didapatkan sesuai dengan harapan.

4. Data Keluaran

Menampilkan keluaran peta, tabel, grafik dan lain-lain dari olahan dalam bentuk hardcopy maupun softcopy.

2.3 Peta

2.3.1 Pengertian Peta

Peta merupakan penyajian grafis permukaan bumi dalam skala dan digambarkan pada bidang datar melalui sistem proyeksi peta dengan menggunakan simbol-simbol tertentu sebagai perwakilan dari obyek-obyek spasial dari permukaan bumi (Riyanto, 2009).

2.3.2 Komponen Peta

Peta memiliki kelengkapan penting agar mudah dibaca dan dipahami. Kelengkapan peta tersebut dinamakan komponen peta. Komponen-komponen peta antara lain sebagai berikut :

1. Judul

Judul peta merupakan identitas atau nama untuk menjelaskan isi atau gambar peta. Judul peta biasanya terletak di bagian atas peta. Judul peta merupakan komponen yang penting. Biasanya sebelum memperhatikan isi peta, pasti seseorang membaca judulnya terlebih dahulu.

2. Skala

Skala adalah hubungan dari data yang ada pada peta dan dunia nyata dalam sebuah rasio perbandingan. Misalnya :


(32)

Skala 1:1000, yang diartikan jarak 1 cm pada peta sama dengan 1000 cm pada jarak sebenarnya.

3. Simbol

Simbol adalah suatu gambar atau tanda yang memiliki sebuah arti atau makna tertentu. Simbol pada peta harus memenuhi tiga syarat, yakni sederhana, mudah dimengerti, dan bersifat umum.

4. Garis Astronom

Garis astronomis merupakan garis khayal di atas permukaan bumi. Garis ini terdiri dari garis lintang dan garis bujur. Garis lintang adalah garis yang di tarik dari timur ke barat sedangkan bujur garis yang ditarik dari utara ke selatan.

5. Legenda

Legenda merupakan keterangan dari simbol-simbol yang digunakan pada sebuah peta. Legenda biasanya terletak di bagian pojok kiri bawah peta.

6. Mata Angin

Mata angin merupakan pedoman atau petunjuk arah mata angin. Mata angin pada peta biasanya berupa tanda panah yang menunjukan ke arah utara. Mata angin sangat penting keberadaannya supaya tidak terjadi kekeliruan arah.

7. Garis Tepi

Garis tepi merupakan garis yang dibuat mengelilingi gambar peta untuk menunjukan batas peta tersebut.

8. Tahun Pembuatan Peta

Tahun pembuatan peta menunjukan kapan peta tersebut dibuat. Dari tahun pembuatan kita dapat mengetahui peta tersebut masih sesuai atau tidak untuk digunakan saat ini. 9. Inset Peta


(33)

Inset peta merupakan gambar peta yang ingin diperjelas atau karena letaknya diluar garis batas peta. Inset peta digambar bila diperlukan. Inset peta disebut juga peta sisipan.

10. Tata Warna

Tata warna merupakan pewarnaan pada peta untuk membedakan obyek satu dengan yang lainnya. Misalnya warna coklat menunjukan dataran tinggi, hijau menunjukan daerah rendah, dan biru menunjukan daerah perairan.

2.4 Sistem Koordinat dan Proyeksi Peta 2.4.1 Proyeksi Peta

(Aryono Prihandito, 1988) informasi lokasi ditentukan berdasarkan sistem koordinat, yang diantaranya mencangkup datum dan proyeksi peta. Datum adalah kumpulan parameter dan titik kontrol yang hubungan geometrisnya diketahui, baik melalui pengukuran atau penghitungan. Sedangkan sistem proyeksi peta adalah sistem yang dirancang untuk merepresentasikan permukaan dari suatu bidang lengkung atau spheroid (misalnya bumi) pada suatu bidang datar. Proses representasi ini menyebabkan distrosi ruang yang perlu dihitung untuk memperoleh ketelitian beberapa incam property, seperti jarak, sudut. Berikut ini macam-macam proyeksi peta secara garis besar proyeksi dapat diklasifikasikan sebagai berikut:

a. Proyeksi Peta Azimuthal

Proyeksi silinder bidang proyeksi menyinggung ekuator dan digunakan untuk daerah di ekuator dan sekitar ekuator, karena kesalahan di daerah ini tidak ada atau sangat kecil


(34)

Gambar 2. 1 Proyeksi Peta Azimuthal b. Proyeksi Peta Silinder

Proyeksi silinder bidang proyeksi menyinggung ekuator dan digunakan untuk daerah di ekuator dan sekitar ekuator, karena kesalahan di daerah ini tidak ada atau sangat kecil

Gambar 2. 2 Proyeksi Peta Silinder c. Proyeksi Peta Kerucut

Proyeksi kerucut bidang proyeksi berupa kerucut dan menyinggung salah satu paralel di sekitar lintang tengah dan baik digunakan di daerah ini karena kesalahan yang sangat kecil, sedang pada paralel singgung kesalahan tidak ada.


(35)

Gambar 2. 3 Proyeksi Peta Kerucut

2.4.2 Sistem Koordinat

Koordinat adalah pernyataan besar geometric yang menentukan posisi acuan yang telah didefinisikan. Posisi acuan dapat ditetapkan dengan asumsi atau ditetapkan dengan suatu kesepakatan matematis yang diakui secara universal dan baku. Jika penetapan titik acuan tersebut secara asumsi maka sistem koordinat tersebut bersifat lokal atau disebut koordinat lokal dan jika ditetapkan sebagai kesepakatan berdasarkan matematis maka koordinat itu disebut koordinat yang mempunyai sistem kesepakatan dasar matematisnya.

Untuk mengambarkan objek atau features permukaan bumi di atas layar komputer, peneliti memerlukan suatu sistem penggambaran yang mempresentasikan keadaan muka bumi sebenarnya yang peneliti sebut sebagai proyeksi. Proyeksi peneliti gambarkan dalam sistem koordinat cartesian, yang umumnya dikenal dalam unit X dan Y. Berikut akan peneliti bahas sistem proyeksi yang sering digunakan dalam SIG proyeksi longtitude latitude (Aryono Prihandito, 1998).


(36)

2.4.2.1 Sistem Koordinat Kartesian 2D

Sistem koordinat kartesian dua dimensi merupakan sistem koordinat yang terdiri dari dua salib yang sumbunya saling tegak lurus, biasanya sumbu X dan Y.

Gambar 2. 4 Sistem Koordinat Kartesian 2D

2.4.2.2 Proyeksi Longitude dan Latitude

Proyeksi ini pada umumnya digunakan untuk mengambarkan keadaan global. Satuan unit yang digunakan adalah Degree (derajad atau º). Satuan derajad ini dilambangkan dengan satuan decimal degree, DMS (Degree Minute Second) dan DM(Degree Minut decimal). Sebagai contoh :

ƒ 15,150 berarti 15,15 derajad (degree)

ƒ 150 301 2511 berarti 15 derajad (degree) 30 menit dan 25 detik. Pelambangan ini digunakan dalam unit DMS

ƒ 150 30,51 berarti 15 derajat (degree) 30,5 menit.

Proyeksi longitude latitude di dasari dari bentuk bumi spheroid, yang dibagi atas garis tegak yang mengiris bumi dari belahan bumi utara hingga kutub selatan yang dinamakan garis meridian dan garis-garis melintang yang membagi bumi dari timur hingga ke barat yang dinamakan garis paralel. Garis 00 meridian melewati kota Grenwich,


(37)

Inggris, implikasinya adalah adanya pembagian waktu yang berbeda pada daerah-daerah yang ada di bumi bagian timur dan barat. Perubahan nilai garis meridian terjadi secara vertikal sepanjang garis horizontal yang peneliti sebut sebagai longitude ata sumbu X. Sedangkan garis paralel berubah secara horizontal sepanjang garis Vertikal dan peneliti sebut sebagai latitude atau sumbu Y. Akibat dari adanya garis paralel adalah perbedaan musim di daerah bagian selatan dan bagian utara bumi. Umumnya Indonesia menyebut garis bujur timur untuk menamakan eastrn dan garis bujur barat untuk western. Sedangkan belahan bumi utara atau northern disebut sebagai lintang utara dan sebaliknya bellahan bumi selatan atau southern disebut sebagai lintang selatan.

Gambar 2. 5 Proyeksi Longitude Latitude

Proyeksi ini akan dibaca sebagai proyeksi bumi spheroid oleh koordinat cartesian yang memiliki empat zona utama yaitu, zona timur utara (North East) dengan koordinat (x,y) berupa nilai (+,+), zona timur selatan (South East) sebagai (+,-), zona barat selatan (South Western) dengan (-,-) dan zona barat utara (North Western) dengan (-,+).


(38)

Berikut adalah contoh penerapan proyeksi longitude latitude untuk negara-negara di seluruh dunia.

Gambar 2. 6 Proyeksi longitude dan latitude untuk negara didunia

Proyeksi tersebut walaupun berlaku global tetapi karena bentuk bumi yang cenderung elips menyebabkan adanya perbedaan jarak antar garis meridian dan paralel di setiap belahan bumi. Sebagai contoh satu derajad jarak antar garis meridian di daerah katulistiwa sama dengan kira-kira 110 km, sedangkan pada jarak satu derajad yang sama di belahan bumi utara, misalkan di jepang yang terletak di tengah belahan bumi utara kira-kira sebanding dengan 90 km, dan semakin ke utara dan selatan jaraknya semakin mengecil, untuk itu diperlukan suatu sistem lokal yang akan memperkecil nilai kesalahan yang mana setiap daerah memiliki sistem berbeda, begitu pula dengan negara-negara di benua Asis, Eropa, dan lain-lain. Indonesia menggunakan sistem yang disebut World Geodetic System tahun 1984 (WGS, 1984). Dengan demikian, untuk menyatakan batas-batas koordinat Indonesia adalah sebagai berikut : Proyeksi Longitude Latitude dalam sistem WGS 1984 dengan batas-batas koordinat berikut 60 Northern (LU) - (-11)0 Southern (LS) dan 950 Eastern (BT) – 1410 Eastern (BT) (Sosrodarsono, S. dan Takasaki, M. 1983).


(39)

2.5 Metode Waterfall

Metode pengembangan sistem sekuensial linear atau yang sering disebut dengan siklus kehidupan klasik atau model air terjun (waterfall model) memberikan sebuah pendekatan pengembangan sistem yang sistematik dan sekuensial, dimulai pada fase perancangan sistem, analisis, desain, kode, pengujian, dan pemeliharaan (Pressman, 2003).

2.5.1 Model Sistem

Pada fase ini dilakukan identifikasi sistem, studi kebutuhan pengguna, dan studi kelayakan sistem baik secara teknis maupun teknologi serta penjadwalan pengembangan sistem.

2.5.2 Analisa Kebutuhan Sistem

Pada fase ini pengumpulan kebutuhan diidentifikasi dan difokuskan pada sistem yang akan dibangun meliputi identifikasi domain informasi, tingkah laku sistem, unjuk kerja dan antar muka sistem. Kebutuhan untuk sistem didokumentasikan dan dikonsultasikan lagi bagi pengguna.

2.5.3 Desain

Desain merupakan proses perencanaan arsitektur sistem, interface, dan algorita program.

2.5.3.1 Basis Data

2.5.3.1.1 Pengertian Basis Data

Basis data merupakan kumpulan data yang terhubung secara logikal dan merupakan sebuah gambaran dari data yang dirancang untuk mencapai kebutuhan informasi dari sebuah organisasi. Secara umum basis data dapat dikatakan sebagai kumpulan data yang saling berhubungan dan dapat dirangkum menjadi informasi yang lebih bermanfaaat (Connoly-Begg, 2005).


(40)

2.5.3.1.2 Konsep perancangan Basis Data

Penyusunan suatu basis data digunakan untuk mengatasi masalah-masalah yang timbul pada penyusunan data. Masalah-masalah tersebut adalah (Waljiyanto, 2003):

1. Redundancy Data

Redudancy adalah persitiwa munculnya data-data secara berulang pada file baris data yang seharusnya tidak diperlukan.

2. Inconsistency Data

Inconsistency data terjadi ketika kesalahan dalam memasukkan data atau update anomali, update data yang mengakibatkan munculnya data tidak konsisten.

3. Isolation Data

Isolation data disebabkan oleh pemakaian beberapa file sehingga program aplikasi tidak mampu mengakses file tertentu, sehingga perlu mengubah atau menambah sehingga seolah-olah ada file yang terpisah atau terisolasi dengan file lainnya.

4. Masalah keamanan

Masalah keamanan ketika setiap pemakai sistem diperbolehkan mengakses basis data.

5. Masalah integritas

Ketika basisdata berisi file yang saling berhubungan, masalah utama adalah bagaimana kaitan file tersebut meski diketahui file A berkaitan dengan file B, secara teknis dapat dilakukan dengan adanya sebuah field kunci yang mengaitkan kedua file tersebut. 6. Multiple user

Basisdata kemungkinan akan digunakan oleh banyak user baik dengan waktu berbeda atau bersamaan.


(41)

Proses dalam metodologi perancangan basis data dibagi menjadi tiga tahap, yaitu Conseptual Database Design, Logical Database Design dan Physical Database Design.

2.5.3.1.3 Perancangan Konseptual

Conceptual database design adalah proses membangun suatu model berdasarkan informasi yang digunakan oleh perusahaan atau organisasi, tanpa pertimbangan perencanaan fisik (Connolly,2002).

Langkah-langkah Conseptual Database Design adalah : a. Identifikasi tipe-tipe entity

Bertujuan untuk menentukan entity types utama yang dibutuhkan. Menentukan entity dapat dilakukan dengan memeriksa user’s requirement specification. Setelah terdefinisi, entity diberikan nama yang tepat dan jelas seperti mahasiswa, dosen, mata_kuliah.

b. Identifikasi tipe-tipe relasi

Bertujuan untuk mengidentifikasi suatu relationship yang penting yang ada antar entity yang telah diidentifikasi. Nama dari suatu relationship menggunakan kata kerja seperti mempelajari, memiliki, mempunyai, dan lain-lain.

c. Identifikasi dan menghubungkan attribute dengan entity

Bertujuan untuk menghubungkan attribute dengan entity atau relationship yang tepat. Attribute yang dimiliki setiap entity atau relationship memiliki identitas atau karakteristik yang sesuai dengan memperhatikan attribute berikut : simple/composite


(42)

attribute, single/multi-valued attribute dan derived attribute.

d. Menentukan attribute domain

Bertujuan untuk menentukan attribute domain pada conceptual data model. Contohnya yaitu menentukan nilai attribute jenis_kelamin pada entity mahasiswa dangan „M‟ atau „F‟ atau nilai attribute sks pada entity mata_kuliah dengan „1‟, ‟2‟, „3‟ dan „4‟.

e. Menentukan candidate key dan primary key attributes

Bertujuan untuk mengidentifikasi candidate key pada setiap entity dan memilih primary key jika ada lebih dari satu candidate key. Pemilihan primary key didasari pada panjang dari attribute dan keunikan key di masa datang.

f. Mempertimbangkan penggunaan enhance modeling concepts

Pada langkah ini bertujuan untuk menentukan specialization, generalization, aggregation, composition. Dimana masing-masing pendekatan dapat dilakukan sesuai dengan kebutuhan yang ada. g. Mengecek redundansi

Bertujuan untuk memeriksa conceptual model untuk menghindari dari adanya informasi yang redundan. Tahap-tahap yang dilakukan adalah memeriksa kembali one to one relationship dan menghilangkan relasi yang redundansi.

h. Melakukan validasi conceptual model dengan transaksi pengguna


(43)

Bertujuan untuk menjamin bahwa conceptual data model mendukung kebutuhan transaksi. Dengan menggunakan model yang telah divalidasi tersebut, dapat digunakan untuk melaksanakan operasi secara manual.

i. Melihat kembali conceptual data model dengan pengguna.

Bertujuan untuk melihat kembali conceptual model dan memastikan bahwa data model tersebut sudah benar.

2.5.3.1.4 Perancangan Logikal

Perancangan Logikal adalah proses pembuatan suatu model informasi yang digunakan pada perusahan berdasarkan pada model data yang spesifik, tetapi tidak tergantung dari Database Management System (DBMS) yang khusus dan pertimbangan fisik yang lain (Connolly, 2002).

Tahapan-tahapan perancangan Perancangan Logikal adalah :

a. Menghilangkan features yang tidak compatible dengan model relasional (pilihan).

b. Memperoleh relasi untuk local logical data model. c. Melakukan validasi relasi dengan menggunakan

normalisasi.

d. Melakukan validasi relasi dengan transaksi pengguna.

e. Mendefinisikan Integrity constraints.

f. Melihat kembali local logical data model dengan pengguna.


(44)

2.5.3.1.5 Perancangan Fisikal

Perancangan Fisikal adalah suatu proses untuk menghasilkan gambaran dari implementasi basis data pada tempat penyimpanan, menjelaskan dasar dari relasi, organisasi file dan indeks yang digunakan untuk efisiensi data dan menghubungkan beberapa integrity constraints dan tindakan keamanan (Connolly, 2002).

Langkah-langkah perancangan Perancangan Fisikal yaitu : a. Merancang relasi dasar.

b. Merancang representasi data turunan. c. Menganalisa transaksi.

d. Merancang batasan perusahaan. e. Memilih organisasi file.

f. Memilih indeks.

g. Memperkirakan kapasitas yang dibutuhkan. h. Merancang User Views.

i. Merancang mekanisme keamanan. 2.5.3.2 My SQL

MySQL adalah sebuah database server, dapat juga berperan sebagai client sehingga disebut juga database client/server, yang open source dengan kemampuan yang dapat berjalan baik di OS (Operating System), dengan platform windows maupun linux (Bunafit Nugroho, 2005).

Seiring perkembangannya, MySQL semakin banyak digunakan baik dalam aplikasi berbasis web maupun aplikasi berbasis dekstop, karena fitur-fitur yang ditawarkan semakin kompleks dan memungkinkan untuk membuat aplikasi basis data yang canggih.

MySQL menggunakan perintah dalam bahasa SQL, seperti:


(45)

1. Select

Perintah ini digunakan untuk memanggil data dari suatu tabel.

Contoh penulisannya :

SELECT{namafield} FORM namatabel; 2. Insert

Perintah yang digunakan untuk menambahkan data ke dalam tabel.

Contoh penulisannya :

INSERT INTO namatabel (field1, field2,field3,....) VALUE (ekspresi1,ekspresi2,....)

3. Delete

Perintah ini digunakan untuk menghapus data dari suatu tabel.

Contoh penulisannya :

DELETE FORM namatabel WHERE kondisi 4. Update

Perintah ini digunakan untuk memperbaharui nilai suatu data pada tabel yang sudah ada.

Contoh penulisannya :


(46)

2.5.3.3 Data Flow Diagram (DFD)

DFD (Data Flow Diagram) adalah sebuah diagram yang menggambarkan sebuah aliran data dari sebuah sistem. Keuntungan menggunakan DFD adalah memudahkan pengguna yang kurang menguasai komputer sehingga dapat memahami sistem yang akan dikembangkan. Simbol-simbol yang biasa digunakan pada DFD, sebagai berikut :

1. Proses

Proses adalah respon terhadap aliran data masuk atau kondisi dari sebuah sistem. Proses menggambarkan aliran sistem yang mengolah masukan menjadi keluaran. Proses digambarkan dengan sebuah lingkaran.

Gambar 2. 7 Simbol Proses 2. Aliran data

Aliran data adalah gambaran dari sebuah masukan data ke dalam suatu proses atau keluaran data dari sebuah proses. Aliran data digambarkan dengan garis panah, dimana ujung panah menggambarkan tujuan.

Gambar 2. 8 Simbol Aliran Data 3. Penyimpanan data

Penyimpanan data adalah penyimpanan data yang akan digunakan untuk proses berikutnya.


(47)

Penyimpanan data digambarkan denag sebuah kotak yang salah satu ujungnya terbuka.

Gambar 2. 9 Penyimpanan Data 4. External entity

Eksternal entity adalah perorangan atau organisasi yang berhubungan dengan sistem. Eksternal entity juga disebut Boundary. Eksternal entity digambarkan dengan bentuk persegi panjang.

Gambar 2. 10 Simbol External Entity 2.4.4.Pengkodean

Setelah proses desain selesai maka hasilnya harus diterjemahkan ke dalam bentuk program komputer yang kemudian menghasilkan suatu sistem.

2.4.4.1. Javascript

JavaScripts adalah nama implementasi Netscape Communications Corporation untuk ECMAScript standar, suatu bahasa script yang didasarkan pada konsep pemrograman berbasis prototipe. Bahasa ini terkenal karena penggunaannya di situs web pada sisi klien dan juga digunakan untuk menyediakan akses script untuk obyek yang dibenamkan (embedded) di aplikasi lain. Walaupun memiliki nama serupa, namun JavaScript hanya sedikit sekali berhubungan dengan bahasa pemrograman Java. Secara semantik, JavaScript memiliki lebih banyak kesamaan/kemiripan dengan bahasa pemrograman Self.


(48)

JavaSript digunakan untuk mengakses sebuah obyek program bersama aplikasi-aplikasi lainnya dan utamanya digunakan pada form klien disamping JavaScript sebagai pengembangan untuk website-website. JavaScript mempunyai karakteristik yang dinamis, kuat, menjadi dasar bahasa untuk prototipe dengan fungsi-fungsi kelas utama. JavaScript di desain seperti Java tetapi tetap mudah dalam penanganannya.

Script JavaScript yang dimasukkan di dalam berkas HTML harus dimasukkan di antara tag <script>...</script> atau diluar berkas HTML dengan meng-import file-nya. Berikut ini adalah contoh yang akan menampilkan autocomplete untuk pencarian nama lengkap dalam database.

2.4.4.2. PHP

PHP (Perl Hypertext Preprocessor) merupakaan bahasa pemrograman berbentuk skrip yang di tempatkan dalam server dan di proses di server (Prihatna, 2005). Selain itu juga PHP merupakan salah satu dari sekian banyak bahasa pemrograman HTML (Hypertext Markup Language). PHP dapat berjalan dengan baik dengan web server yang berbeda dan dalam sistem informasi yang berbeda pula.

PHP merupakan server side yang artinya sintaks yang diberikan akan sepenuhnya dijalankan pada server tetapi disertakan pada dokumen HTML sedangkan yang dikirim untuk ditampilkan di browser adalah hasilnya saja. Pada penulisan kode PHP, perlu diawali dengan tanda lebih kecil (<) dan diakhiri dengan tanda lebih besar (>).


(49)

2.4.5.Pengujian

Pengujian dilakukan untuk menemukan kesalahan-kesalahan yang memungkinkan terjadi pada proses pengkodean serta memastikan bahwa input yang dibatasi memberikan hal yang sesuai dengan kebutuhan.

2.4.6.Pemeliharaan

Ditandai dengan penyerahan perangkat lunak kepada pemesannya untuk dioprasikan. Dalam masa oprasional, perangkat lunak masih memungkinkan untuk terjadi sesuatu kesalahan atau kegagalan dalam menjalankan fungsi, perangkat lunak tersebut masih membutuhkan proses (maintenance) dari waktu ke waktu.


(50)

2.6 Google Maps

Google Maps adalah sebuah peta virtual yang disediakan oleh Google dan bisa di akses secara gratis melalui http;//maps.google.com. Google maps menampilkan gambar peta yang diambil dari database pada web server yang dimiliki oleh Google untuk menampilkan gambar yang diminta.

Pada Google maps, pengguna internet dapat mencari informasi grafis seperti berikut :

1. Satelit Map

Pengguna dapat menikmati gambar permukaan bumi dari foto satelit. Pengguna dapat melihat foto satelit lebih detail dengan cara zoom pada daerah yang ingin dilihat atau dicari.

2. Hasil Pencarian Integritas

Mencari lokasi, bisnis, peta buatan pengguna, dan real estate. 3. Draggable Maps

Peta digital maping yang draggable (bisa digeser) dengan menggunakan bantuan mouse.

4. Terrain Maps

Terrain maps menyediakan informasi fitur peta fisik atau peta topografi yang biasanya digunakan pada atlas.

5. Earth Maps

Pengguna dapat melihat peta bumi dimana bumi terlihat secara utuh dan jika di zoom pengguna akan melihat permukaan bumi yang di tutupi dengan awan beserta pulau dan laut yang tampak lebih nyata dari ketinggian.

6. My Location

Menggunakan fitur ini pengguna dapat mengetahui dimana letak lokasi pengguna tersebut berada.


(51)

2.7 Google Maps Application Programing Interface (API)

Google Maps API adalah suatu library yang berbentuk JavaScript. Cara membuat Google maps untuk ditampilkan pada situs web atau blog sangat mudah, hanya dengan membutuhkan pengetahuan mengenai HTML serta JavaScript, serta koneksi internet yang stabil. Dengan menggunakan Google maps API, kita dapat menghemat waktu dan biaya untuk membangun aplikasi peta digital yang handal, sehingga kita bisa fokus hanya pada data-data yang akan ditampilkan. Jadi jika kita hanya membuat suatu data sedangkan peta yang akan ditampilkan adalah milik Google sehingga kita tidak dipusingkan dengan membuat peta suatu daerah, bahkan dunia.

Dalam pembuatan program Google maps API menggunakan urutan sebagai berikut :

1. Memasukan Maps API JavaScript ke dalam HTML.

2. Membuat element div dengan nama map_canvas untuk menampilkan peta.

3. Membuat beberapa objek literal untuk properti-properti pada peta.

4. Menulis fungsi JavaScript untuk membuat objek peta.

5. Menginisiasi peta dalam tag body HTML dengan event onload. 2.8 Internet

Internet adalah kumpulan atau jaringan dari suatu jaringan komputer secara global yang saling berhubungan satu sama lain yang ada di seluruh dunia. Internet juga dapat di artikan sebagai kumpulan server yang berada di berbagai penjuru dunia dan dapat digunakan secara bersama yang dikelola perorangan, perusahaan maupun pelayanan internet. Internet bermanfaat sebagai tempat untuk mendapatkan dan memberi informasi yang tersedia untuk publik maupun untuk e-mail.


(52)

2.9 Browser

Browser adalah aplikasi yang digunakan oleh pengguna internet untuk mencari data dan informasi dari internet. Browser bisa digunakan melihat website atau situs web di internet.

2.10 World Wide Web (WWW)

WWW (World Wide Web) adalah kumpulan dari web server yang terhubung ke seluruh dunia yang berfungsi untuk menampilkan data dan informasi yang dapat digunakan bersama. Web merupakan dunia maya di internet yang terdapat ribuan info tentang segala hal dan di kemas dalam bentuk dokumen hypertext (Nugroho,2005).

2.11 Web Server

Web server adalah sebuah bentuk server yang khusus digunakan untuk menyimpan halaman website atau home page. Sebuah komputer bisa dikatakan sebagai web server jika komputer tersebut memiliki suatu program server yang disebut Personal Web Server (PWS).

2.12 Heyper Text Transfer Protokol (HTTP)

HTTP (Heyper Text Transfer Protokol) adalah protokol yang menyediakan komunikasi antar perintah jaringan, yang merupakan jaringan komunikasi antar komputer client dengan server (tim Berners Lee, 1990). Dalam komunikasi ini, komputer client melakukan permintaan dengan mengetikan alamat website yang akan di akses.

2.13 Apotek

2.13.1 Definisi, Tugas, dan Fungsi Apotek

Peraturan Pemerintah No. 26 tahun 1965 tentang apotek pada pasal 1 menyebutkan bahwa “Yang dimaksud dengan apotek adalah : suatu tempat tertentu dimana dilakukan usaha-usaha dalam bidang Farmasi dan pekerjaan kefarmasian.”. Peraturan Pemerintah (PP)


(53)

tersebut dirubah dengan keluarnya PP No. 25 tahun 1980 tentang perubahan atas PP No. 26 tahun 1965 tentang apotek menjadi “apotek adalah suatu tempat tertentu, tempat dilakukan kegiatan kefarmasian dan penyaluran obat kepada masyarakat.” Sedang tugas dan fungsi apotik adalah :

1. Tempat pengabdian profesi seorang apoteker yang telah mengucapkan sumpah jabatan.

2. Sarana farmasi yang melaksanakan peracikan, pengubahan bentuk, pencampuran dan penyerahan obat atau bahan obat.

3. Sarana penyalur perbekalan farmasi yang harus menyebarkan obat yang diperlukan masyarakat secara meluas dan merata.

Permenkes No. 992 tahun 1993 menyebutkan bahwa “apotek adalah tempat tertentu tempat dilakukan pekerjaan kefarmasian dan penyaluran pembekalan farmasi kepada masyarakat”. Keputusan Menteri Kesehatan No. 1332 tahun 2002 maupun Kepmenkes No. 1027 tahun 2004 sedikit mengubah definisi di atas menjadi “apotek adalah tempat tertentu tempat dilakukan pekerjaan kefarmasian dan penyaluran sediaan farmasi, pembekalan kesehatan lainnya kepada masyarakat”.

Dari definisi di atas dapat diketahui bahwa apotek merupakan salah satu sarana pelayanan kesehatan dalam membantu mewujudkan tercapainya derajat kesehatan yang optimal bagi masyarakat (Hartini, Yustina Sri dan Sulasmono, 2007).


(54)

33 BAB III

ANALISA PERANCANGAN SISTEM 3.1. Analisa Sistem

Analisis sistem adalah teknik membagi sistem ke dalam komponen kecil agar dapat bekerja dengan baik untuk menyelesaikan sebuah masalah. Berdasarkan hal itu maka sistem ini dibangun dengan membagi menjadi beberapa komponen seperti mencari model desain yang baik, merancang database, merancang interface dan lain lain. Sistem ini memiliki 3 level pengguna yaitu Admin, Owner dan User. Admin berfungsi untuk mengelola data-data yang ada dan dibutuhkan dalam sistem, Owner dapat melakukan penambahan data seputar apotek yang dimiliki, sedangkan User hanya dapat mencari dan melihat informasi yang diberikan oleh sistem.

3.2. Analisa Kebutuhan Pengguna

User yang berada dalam sistem tebagi menjadi 3 yaitu : a. Admin

Bertugas mengelola data yang telah ada dalam database termasuk menghapus data yang ada.

b. Owner

Memiliki keampuan untuk menambahkan data kedalam database, namun hanya dapat mengakses data yang berkaitan dengannya saja.

c. User

User dapat melihat lokasi apotek yang ada dalam sistem dengam menginputkan kriteria yang disediakan, selain itu user dapat mencari jalur menuju lokasi apotek yang diinginkan.


(55)

3.2.1.Use-Case Diagram a. Use-case User

Gambar 3. 1 Use Case User b. Use-case Owner


(56)

c. Use-case Admin


(57)

3.2.2.Skenario Use case

Tabel 3. 1 Narasi Use case Cari Apotek Aktor : User

Kondisi Awal : Aktor sudah masuk ke dalam sistem

Kondisi Akhir : Sistem berhasil menampilkan hasil pencarian apotek yang diinginkan

Skenario :

Actor Action Respond System

1. Aktor membuka menu utama

2. Sistem menampilkan menu utama yang berisi peta geolocation dan menu dropdown kriteria apotek

3. Aktor memasukkan kriteria yang diinginkan dengan memilih

dropdown yang ada

4. Sistem melakukan pencarian apotek berdasarkan kriteria

5. Sistem akan menampilkan marker lokasi apotek sesuai kriteria

Tabel 3. 2 Narasi Use case Cari Rute Aktor : User

Kondisi Awal : Aktor sudah melakukan pencarian apotek

Kondisi Akhir : Sistem berhasil menampilkan hasil pencarian rute apotek yang diinginkan

Skenario :

Actor Action Respond System

1. Aktor memilih apotek yang akan dicari rutenya

2. Sistem mengolah data apotek yang dipilih 3. Sistem menampilkan rute dan informasi


(58)

Tabel 3. 3 Narasi Use case Daftar Owner Aktor : Owner

Kondisi Awal : Aktor sudah masuk ke menu pendaftaran

Kondisi Akhir : Sistem berhasil menyimpan data aktor ke dalam database

Skenario :

Actor Action Respond System

1. Aktor memasukkan data yang diperlukan

2. Jika data yang dimasukkan tidak lengkap atau tidak sesuai, sistem akan memberikan peringatan

3. Jika data sesuai, sistem akan

menambahkan data ke dalam database dan memberi pemberitahuan bahwa data berhasil didaftarkan

Tabel 3. 4 Narasi Use case Login Owner Aktor : Owner

Kondisi Awal : Aktor sudah masuk ke menu login Kondisi Akhir : Aktor berhasil login

Skenario :

Actor Action Respond System

1. Aktor mengisi form login

2. Sistem melakukan pengecekan data input ke database

3. Jika data dalam database tidak sesuai, sistem akan memberikan peringatan 4. Jika data yang dimasukkan sesuai, sistem


(59)

Tabel 3. 5 Narasi Use case Daftar Apotek Aktor : Owner

Kondisi Awal : Aktor memilih menu Daftar Apotek

Kondisi Akhir : Sistem berhasil menambahkan data apotek ke dalam database

Skenario :

Actor Action Respond System

1. Aktor memasukkan data yang diperlukan

2. Jika data yang dimasukkan tidak lengkap atau tidak sesuai, sistem akan memberikan peringatan

3. Jika data sesuai, sistem akan

menambahkan data ke dalam database dan memberi pemberitahuan bahwa data berhasil didaftarkan

Tabel 3. 6 Narasi Use case Lihat Apotek Aktor : Owner

Kondisi Awal : Aktor memilih menu Lihat Apotek

Kondisi Akhir : Sistem berhasil menampikan data apotek dari database

Skenario :

Actor Action Respond System

1. Sistem akan menampilkan data apotek dari database

2. Aktor memilih menu Info Detail

3. Sistem akan menampilkan data lengkap apotek dari database


(60)

Tabel 3. 7 Narasi Use case Edit Apotek Aktor : Owner

Kondisi Awal : Aktor memilih menu Edit Apotek

Kondisi Akhir : Sistem berhasil merubah data apotek di database Skenario :

Actor Action Respond System

1. Jika input data tidak sesuai, sistem akan memberikan peringatan

2. Jika input data sesuai, sistem akan mengupdate data kedalam database 3. Aktor memilih menu

Info Detail

4. Sistem akan menampilkan data lengkap apotek dari database

Tabel 3. 8 Narasi Use case Lihat Owner Aktor : Owner

Kondisi Awal : Aktor memilih menu Lihat Owner

Kondisi Akhir : Sistem berhasil menampikan data owner dari database Skenario :

Actor Action Respond System

1. Sistem akan menampilkan data apotek dari database

2. Aktor memilih menu Info Detail

3. Sistem akan menampilkan data lengkap apotek dari database


(61)

Tabel 3. 9 Narasi Use case Edit Owner Aktor : Owner

Kondisi Awal : Aktor memilih menu Edit Owner

Kondisi Akhir : Sistem berhasil merubah data owner di database Skenario :

Actor Action Respond System

1. Jika input data tidak sesuai, sistem akan memberikan peringatan

2. Jika input data sesuai, sistem akan mengupdate data kedalam database 3. Aktor memilih menu

Info Detail

4. Sistem menampilkan data lengkap owner dari database

Tabel 3. 10 Narasi Use case Login Admin Aktor : Admin

Kondisi Awal : Aktor sudah masuk ke menu login Kondisi Akhir : Aktor berhasil login

Skenario :

Actor Action Respond System

1. Aktor mengisi form login

2. Sistem melakukan pengecekan data input ke database

3. Jika data dalam database tidak sesuai, sistem akan memberikan peringatan 4. Jika data yang dimasukkan sesuai, sistem


(62)

Tabel 3. 11 Narasi Use case Lihat Apotek Aktor : Admin

Kondisi Awal : Aktor memilih menu Lihat Apotek

Kondisi Akhir : Sistem berhasil menampikan data apotek dari database

Skenario :

Actor Action Respond System

1. Sistem akan menampilkan data apotek dari database

2. Aktor memilih menu Info Detail

3. Sistem akan menampilkan data lengkap apotek dari database

Tabel 3. 12 Narasi Use case Edit Apotek Aktor : Admin

Kondisi Awal : Aktor memilih menu Edit Apotek

Kondisi Akhir : Sistem berhasil merubah data apotek di database Skenario :

Actor Action Respond System

1. Jika input data tidak sesuai, sistem akan memberikan peringatan

2. Jika input data sesuai, sistem akan mengupdate data kedalam database 3. Aktor memilih menu

Info Detail

4. Sistem menampilkan data lengkap apotek dari database


(63)

Tabel 3. 13 Narasi Use case Hapus Apotek Aktor : Admin

Kondisi Awal : Aktor memilih menu Hapus Apotek

Kondisi Akhir : Sistem berhasil menghapus data owner dari database Skenario :

Actor Action Respond System

1. Sistem akan menghapus data dari database 2. Aktor memilih menu

Info Detail

3. Sistem akan menampilkan data lengkap apotek dari database

Tabel 3. 14 Narasi Use case Lihat Owner Aktor : Admin

Kondisi Awal : Aktor memilih menu Lihat Owner

Kondisi Akhir : Sistem berhasil menampilkan data owner dari database Skenario :

Actor Action Respond System

1. Sistem akan menampilkan data owner dari database

2. Aktor memilih menu Info Detail

3. Sistem akan menampilkan data lengkap owner dari database

Tabel 3. 15 Narasi Use case Hapus Owner Aktor : Admin

Kondisi Awal : Aktor memilih menu Hapus Owner

Kondisi Akhir : Sistem berhasil menghapus data owner di database Skenario :

Actor Action Respond System

1. Sistem akan menghapus data dari database 2. Aktor memilih Info 3. Sistem akan menampilkan data owner


(64)

3.3. Perancangan Sistem 3.3.1.Diagram Konteks


(65)

3.3.2.Diagram Berjenjang


(66)

3.3.3.Data Flow Diagram 3.3.3.1. DFD User

Gambar 3. 6 DFD User 3.3.3.2. DFD Owner Level 1


(67)

3.3.3.3. DFD Kelola Owner Level 2

Gambar 3. 8 DFD Kelola Owner Level 2 3.3.3.4. DFD Kelola Apotek Owner Level 2


(68)

3.3.3.5. DFD Admin Level 1

Gambar 3. 10 DFD Admin level 1 3.3.3.6. DFD Kelola Owner Admin Level 2


(69)

3.3.3.7. DFD Kelola Apotek Admin Level 2

Gambar 3. 12 DFD Kelola Apotek Level 2 3.4. Perancangan Basisdata

3.4.1.Relasi Antar Tabel


(70)

3.4.2.Daftar Tabel Apotek

Tabel 3. 16 Tabel Apotek

Name Type Size Key Id_Apotek Varchar 9 PK Nama_Apotek Varchar 100

Izin_Apotek Varchar 100 Nama_Apoteker Varchar 100 Izin_Apoteker Varchar 100 Alamat Varchar 100 No_Telepon Varchar 100 Hari_Buka Varchar 100 Jam_Buka Varchar 100 Jam_Tutup Varchar 100 Laboratorium Varchar 100 Dokter_Praktek Varchar 100 Delivery_Order Varchar 100 Tipe_Apotek Varchar 100 Longitude Varchar 100 Latitude Varchar 100 Id_Owner Varchar 9 FK

3.4.3.Daftar Tabel Owner

Tabel 3. 17 Tabel Owner

Name Type Size Key

Id_Owner Varchar 9 PK Nama_Owner Varchar 100 Email_Owner Varchar 100 Password_Owner Varchar 100


(71)

3.4.4.Daftar Tabel Admin

Tabel 3. 18 Tabel Admin

Name Type Size Key Id_Admin Varchar 9 PK Nama_Admin Varchar 100 Email_Admin Varchar 100 Password_Admin Varchar 100

3.5. Perancangan Antarmuka Pengguna 3.5.1.Perancangan Antarmuka Owner

a. Halaman Login

Gambar 3. 14 Halaman Login Owner b. Halaman Daftar


(72)

c. Menu Owner

Gambar 3. 16 Menu Owner d. Halaman Apotek


(73)

e. Menu Daftar Apotek


(74)

f. Menu Lihat Apotek


(75)

g. Menu Edit Apotek


(76)

h. Halaman Owner

Gambar 3. 21 Halaman Owner i. Menu Lihat Owner

Gambar 3. 22 Menu Lihat Owner j. Menu Edit Owner


(77)

3.5.2.Perancangan Antarmuka Admin a. Halaman Login

Gambar 3. 24 Halaman Login Admin b. Menu Admin

Gambar 3. 25 Menu Admin c. Halaman Apotek


(78)

d. Menu Lihat Apotek


(79)

e. Menu Edit Apotek


(80)

f. Menu Hapus Apotek

Gambar 3. 29 Menu Hapus Apotek g. Halaman Owner


(81)

h. Menu Lihat Owner

Gambar 3. 31 Menu Lihat Owner Admin 3.5.3.Perancangan Antarmuka User

a. Halaman Utama


(82)

b. Halaman Pencarian Apotek


(83)

BAB IV

IMPLEMENTASI SISTEM 4.1 Spesifikasi Perangkat Keras Dan Perangkat Lunak

Perangkat keras yang digunakan untuk membangun sistem adalah : Processor Intel® i5 CPU M 380 @ 2,53GHz

(4CPUs),~2.5GHz

Memory 4096 MB RAM

Hardisk 500 GB

Perangkat lunak yang digunakan untuk membangun sistem ini adalah : Sistem operasi Windows 10

Bahasa Pemrograman PHP

DBMS SQLyog

4.2 Implementasi

4.1.2 Implementasi Basis Data a. Tabel Apotek

CREATE TABLE `apotek` (

`Id_Apotek` varchar(9) NOT NULL,

`Nama_Apotek` varchar(100) DEFAULT NULL, `Izin_Apotek` varchar(100) DEFAULT NULL, `Nama_Apoteker` varchar(100) DEFAULT NULL, `Izin_Apoteker` varchar(100) DEFAULT NULL, `Alamat` varchar(100) DEFAULT NULL,

`No_Telepon` varchar(100) DEFAULT NULL, `Hari_Buka` varchar(100) DEFAULT NULL, `Jam_Buka` varchar(100) DEFAULT NULL, `Jam_Tutup` varchar(100) DEFAULT NULL,


(84)

`Dokter_Praktek` varchar(100) DEFAULT NULL, `Laboratorium` varchar(100) DEFAULT NULL, `Delivery` varchar(100) DEFAULT NULL, `Tipe_Apotek` varchar(100) DEFAULT NULL, `Longitude` varchar(100) DEFAULT NULL, `Latitude` varchar(100) DEFAULT NULL, `Id_Owner` varchar(9) DEFAULT NULL, PRIMARY KEY (`Id_Apotek`),

KEY `Id_Owner` (`Id_Owner`),

CONSTRAINT `apotek_ibfk_1` FOREIGN KEY (`Id_Owner`) REFERENCES `owner` (`Id_Owner`))

b. Tabel Admin

CREATE TABLE `admin` (

`Id_Admin` varchar(9) NOT NULL,

`Nama_Admin` varchar(100) DEFAULT NULL, `Email_Admin` varchar(100) DEFAULT NULL, `Password_Admin` varchar(100) DEFAULT NULL, PRIMARY KEY (`Id_Admin`))

c. Tabel Owner

CREATE TABLE `owner` (

`Id_Owner` varchar(9) NOT NULL,

`Nama_Owner` varchar(100) DEFAULT NULL, `Email_Owner` varchar(100) DEFAULT NULL, `Password` varchar(100) DEFAULT NULL, PRIMARY KEY (`Id_Owner`))


(85)

d. Tabel Tampung Cari

CREATE TABLE `tampungcari` ( `id` varchar(12) DEFAULT NULL, `jarak` int(11) DEFAULT NULL) 4.1.3 Implementasi Pengkodean Sistem <script>

var map = null; window.onload = function () { lokasi() }

function lokasi() {

navigator.geolocation.getCurrentPosition(panggil); }

function panggil(position) {

var lat = position.coords.latitude; var lng = position.coords.longitude; document.getElementById("latitude").setAttribute("value",position.coords .latitude);

document.getElementById("longitude").setAttribute("value",position.coor ds. longitude);

document.getElementById("Position1").setAttribute("value",position.coor ds. latitude position.coords.longitude);

var geo = new google.maps.LatLng(lat, lng); var marker = new google.maps.Marker ({ position: geo });

marker.setMap(map); map.setZoom(14); map.setCenter(marker.getPosition()); }

function initMap() {


(86)

var mapOptions = {

center: new google.maps.LatLng(0, 0), zoom: 1, mapTypeId: google .maps. MapTypeId.ROADMAP

};

map = new google.maps.Map (document.getElementById ("map"), mapOptions);}

</script>

Source code diata merupakan metode untuk menampilkan peta dari google maps.

function drawMap(lat, lng) {

var myOptions = {

zoom: 15,center: new google.maps.LatLng(lat, lng), mapTypeId: google. maps.MapTypeId.ROADMAP

};

var map = new

google.maps.Map(document.getElementById("googleMap"),myOptions); var markerorigin = new google.maps.Marker

({

position: new google.maps.LatLng(parseFloat(lat), parseFloat(lng)),map: map,title: "Origin",visible: false}); var request =

{

origin: markerorigin.getPosition(),destination: dest, provideRouteAlternatives: false,

travelMode: google.maps.TravelMode.DRIVING };


(87)

{

if (status == google.maps.DirectionsStatus.OK) { directionsDisplay.setDirections(response); } });

directionsDisplay.setMap(map);

directionsDisplay.setPanel(document.getElementById('directions-panel')); var trafficLayer = new google.maps.TrafficLayer();

trafficLayer.setMap(map);

Source code diatas berfungsi untuk menampilkan rute menuju apotek

if ($Cek==0) {

mysql_query

("insert into apotek (Id_Apotek,Nama_Apotek,Izin_Apotek, Nama_Apoteker,Izin_Apoteker,Alamat,No_Telepon,

Hari_Buka,Jam_Buka,Jam_Tutup,Dokter_Praktek,Laboratorium, Delivery,Tipe_Apotek,Longitude,Latitude,Id_Owner)"

. "values('$newID','$Nama_Apotek_Daftar','$Izin_Apotek_Daftar','" . "$Nama_Apoteker_Daftar','$Izin_Apoteker_Daftar','$Alamat_Daftar','" . "$Nomor_Telepon_Daftar','$selected_hari','$Jam_Buka_Daftar','" . "$Jam_Tutup_Daftar','$Dokter_Praktek_Daftar',

'$Laboratorium_Daftar','$New_Delivery_Daftar','$Jenis_Obat_Daftar', '$Longitude_Daftar',‟Latitude_Daftar','$Id_Owner_Apotek_Daftar')"); echo '<script language = "javascript"> alert ("pendaftaran berhasil")</script>';

echo'<scriptlanguage="javascript">window.location= "../owner/apotek.php "</script>';

} else {


(88)

echo '<script language="javascript">alert("data telah digunakan oleh apotek lain") </script>';

echo '<script language = "javascript"> window.location = "../owner/daftar_apotek .php" </script>';

}

Source code tersebut digunakan untuk menambahkan data apotek kedalam database.

$Sql = mysql_query

("UPDATE apotek SET Nama_Apotek ='$Nama_Apotek_Update' ,Izin_Apotek ='$Izin_Apotek_Update'",Nama_Apoteker

='$Nama_Apoteker_Update',Izin_Apoteker ='$Izin_Apoteker_Update'" . ",Alamat = '$Alamat_Update',No_Telepon ='$Nomor_Telepon_Update'" . ",Hari_Buka ='$selected_hari_Update',Jam_Buka ='$Jam_Buka_Update'" . ",Jam_Tutup ='$Jam_Tutup_Update',Dokter_Praktek

='$Dokter_Praktek_Update',Laboratorium='$Laboratorium_Update' ,Delivery ='$New_Delivery_Update',Tipe_Apotek='$Jenis_Obat_Update', Longitude ='$Longitude_Update',Latitude ='$Latitude_Update'

where Id_Apotek ='$idap'")or die(mysql_error());


(1)

4.3. Pengujian

4.3.1.Hasil Pengujian a. Pengujian Login

Tabel 4. 1 Pengujian Login

Data Masukan Yang Diharapkan Yang Terjadi Kesimpulan Username dan

password terisi dengan benar

Akan masuk ke menu utama admin / user

Menampilkan menu utama admin / user

Memenuhi Username dan password tidak benar Akan menampilkan peringatan data input tidak sesuai

Kembali ke menu login Memenuhi Username dan password kosong Akan menampilkan peringatan data input belum terisi

Kembali ke menu login

Memenuhi

b. Pengujian Tambah Data

Tabel 4. 2 Pengujian Tambah Data

Data Masukan Yang Diharapkan Yang Terjadi Kesimpulan Klik tombol

tambah

Jika data form terisi semua Tombol tambah akan berfungsi dan masuk ke menu apotek Memenuhi

Jika salah satu form tidak terisi

Akan muncul peringatan dan kembali ke menu daftar


(2)

c. Pengujian Edit Data

Tabel 4. 3 Pengujian Edit Data

Data Masukan Yang Diharapkan Yang Terjadi Kesimpulan Klik tombol edit Jika form terisi

semua Tombol tambah akan berfungsi dan masuk ke menu apotek Memenuhi

Jika salah satu form tidak terisi

Akan muncul peringatan dan kembali ke menu edit

Memenuhi

d. Pengujian Hapus Data

Tabel 4. 4 Pengujian Hapus Data

Data Masukan Yang Diharapkan Yang Terjadi Kesimpulan Klik tombol

hapus

Memilih data yang akan dihapus maka data berhasil dihapus Tombol hapus berfungsi sesuai yang diharapkan memenuhi

e. Pengujian Cari Apotek dan Cari Rute

Tabel 4. 5 Pengujian Cari Apotek dan Cari Rute

Data Masukan Yang Diharapkan Yang Terjadi Kesimpulan Dropdown

kriteria yang diinginkan

Memilih dropdown yang sesuai, jika data dropdown dalam database tersedia akan muncul marker Tombol cari apotek berfungsi sesuai yang diharapkan Memenuhi


(3)

pada peta, jika tidak akan kembali ke menu utama Pilih tombol

cari rute dari apotek tertentu

Sistem menunjukan jalur dari lokasi user ke apotek

Tombol cari rute berfungsi sesuai yang diharapkan

Memenuhi

4.3.2.Kesimpulan Hasil α Test

Berdasarkan pengujian diatas maka dapat disimpulkan bahwa secara fungsional sistem dapat berjalan sesuai dengan yang diharapkan. Data owner dan apotek dapat disimpan, diubah dan dihapus dari database My SQL.

4.4. Analisa Hasil Uji Perangkat Lunak

Berdasarkan implementasi sistem yang telah dilakukan, Aplikasi Pencarian Apotek di Kabupaten Sleman dapat dianalisa bahwa sistem ini dapat berjalan sesuai yang diharapkan. Adapun kekurangan dan kelebihan dari sistem ini adalah sebagai berikut :

a. Kelebihan

- User dapat mecari lokasi apotek dengan mudah.

- User dapat mencari rekomendasi rute menuju apotek dengan mudah

b. Kekurangan

- Sistem ini tidak dapat menampilkan waktu buka apotek sesuai waktu akses user.

- Sistem ini tidak dapat menampilkan hari buka apotek sesuai hari akses user


(4)

73 BAB V PENUTUP 5.1 Kesimpulan

Berdasarkan hasil perancangan, pembuatan dan uji coba sistem ini, dapat disimpulkan bahwa:

a. Sistem ini dapat melakukan pencarian apotek berdasarkan kriteria yang diinputkan oleh user.

b. Sistem ini dapat memberikan menampilkan lokasi apotek yang akan dikunjungi.

c. Sistem ini dapat menunjukan rute menuju apotek yang dipilih berdasarkan posisi di mana user mengakses.

5.2 Saran

Untuk pengembangan sistem ini kedepanya disarankan untuk:

a. menambahkan akses kepada admin untuk dapat menambahkan data berdasarkan permintaan owner


(5)

74

DAFTAR PUSTAK

A

Aryono Prihandito, 1988, Proyeksi Peta, Penerbit Kanisius, Yogyakarta.

Connolly, Thomas & Begg, Carolyn, 2002, Database Systems :A Practical Approach

to Design, implementation and management. Third Edition, Addision Wesley,

England

Connolly, Thomas M., Carolyn E. Begg, 2005, Database Systems : A practical approach to design, implamentation, and management, fourth edition, Pearson Education Limited, USA.

Getting Started Google Maps API, 2016, Getting Started google Maps API,.

Available at :

https://developers.google.com/maps/documentation/javascript/tutorial diakses pada tanggal 18 Juni 2016 pukul 16.00 WIB.

Hartini, Yustina Sri dan Sulasmono, 2007, Apotek, Universitas Sanata Dharma, Yogyakarta.

Jogiyanto, 2005, Analisis dan Desain Sistem Informasi, Penerbit Andi, Yogyakarta.

Nugroho, Bunafit, 2004, Aplikasi Pemrograman Web Dinamis dengan PHP dan MySQL, Gava Media, Yogyakarta.

Nugroho, Bunafit, 2004. PHP dan MySQL dengan Editor Dreamweaver MX, Penerbit Andi, Yogyakarta.

Petrus Paryono, 1994, Sistem Informasi Geografis, Penerbit Andi, Yogyakarta. Riyanto, Eka, Prilnali. Dan Indelarko, Hendi, 2009, Tuntunan Praktis

Pengembangan Aplikasi Sistem Informasi Geografis Berbasis Desktop dan Web, Gava Media, Yogyakarta.


(6)

75

Roger S. Pressman, 2003, Rekayasa Perangkat Lunak Pendekatan Praktisi (Buku Satu), Penerbit Andi, Yogyakarta.

Waljiyanto, 2003, Sistem Basis Data Analis Dan Pemodelan Data, Graha Ilmu, Yogyakarta.