Perancangan Database Aplikasi Pencarian Taksi Terdekat Menggunakan Algoritma Floydwarshall

3.3 Perancangan Database

Perancangan database ini digunakan untuk menyimpan dan mengelola dan menampilkan seluruh data yang berhubungan dan digunakan dalam sistem ini. Untuk melakukan penyimpanan koordinat, dilakukan secara manual dengan menyimpan koordinat yang diambil dari Google Maps. 3.3.1 Perancangan Tabel pada Database Setiap tabel yang ada pada database ini berisi data-data yang berhubungan dalam sistem ini. 1. Tabel titik Tabel ini digunakan untuk menyimpan ID titik, nama jalan dan koordinat dari jalan tersebut. Struktur tabel titik dapat dilihat pada Tabel 3.1. Tabel 3.1 Tabel titik Nama Field Tipe Ekstra id_titik int11 Primary Key AUTO_INCREMENT nama_titik varchar255 - koordinat varchar50 - Pada sistem ini dilakukan penitikan koordinat jalan secara manual untuk wilayah kota Medan. Namun tidak seluruh jalan di kota Medan disimpan, namun hanya sekitar 200 koordinat saja, yaitu koordinat dari persimpangan jalan protokol di Kota Medan. Sedangkan koordinat lainnya, sudah ada pada Google Direction sehingga jalan kecil sekalipun sudah tersimpan secara otomatis. Penulis tidak menitikkan seluruh jalan di kota Medan dikarenakan akan terlalu banyak data untuk menyimpan koordinat juga karena sistem yang langsung akan menghitung menggunakan Algoritma Floyd- Warshall pada peta yang ada pada Google Direction. Adapun cara menyimpan koordinat tersebut dengan membuka Google Maps dan memasukkan kota Medan sebagai input daerah. Kemudian akan terlihat peta dari kota Medan lalu zoom in untuk melihat lebih jelas jalan yang ada di kota Medan. Cara pengambilan koordinat dapat dilihat melalui Gambar 3.2. Gambar 3.2 Peta Kota Medan Kemudian lihat setiap persimpangan jalan protokol yang ada, lalu klik pada jalan tersebut untuk melihat koordinat jalan tersebut, kemudian copy koordinat yang tertera seperti pada Gambar 3.3 Lakukan hal tersebut untuk seluruh persimpangan jalan protokol yang saling berhubungan. Gambar 3.3 Proses Mengambil Koordinat 2. Tabel relasi_titik Tabel ini merupakan tabel yang menyimpan relasi atau hubungan dari satu titik ke titik lainnya. Tabel titik yang sudah menyimpan ID dari nama jalan beserta koordinatnya dijadikan sebagai dasar dari tabel relasi_titik ini. Tabel ini berisi ID asal dan ID tujuan yang merupakan hubungan dari satu titik menuju titik lainnya dari simpang jalan protokol kota Medan dapat lebih dari satu berdasarkan ID yang sudah disimpan pada tabel titik. Struktur tabel relasi_titik dapat dilihat pada Tabel 3.2. Tabel 3.2 Tabel relasi_titik Nama Field Tipe Ekstra id_relasi_titik int10 Primary Key AUTO_INCREMENT id_asal varchar10 - id_tujuan varchar10 - jarak varchar10 - 3. Tabel taksi Tabel ini berisi tentang data-data yang berhubungan dengan taksi yang digunakan, seperti ID taksi, nomor plat dan koordinat. Struktur tabel taksi dapat dilihat pada Tabel 3.3. Tabel 3.3 Tabel taksi Nama Field Tipe Ekstra id_taksi int11 Primary Key AUTO_INCREMENT no_plat varchar10 - koordinat varchar50 - 4. Tabel supir Tabel ini berisi tentang data-data supir yang digunakan untuk login juga untuk mengetahui data diri supir, seperti ID supir, nama, alamat, nomor HP, username, password, ID taksi dan status. Struktur tabel supir dapat dilihat pada Tabel 3.4. Tabel 3.4 Tabel supir Nama Field Tipe Ekstra id_supir int11 Primary Key AUTO_INCREMENT nama varchar50 - foto varchar255 - alamat varchar255 - no_hp varchar30 - username varchar10 Unique password varchar10 - id_taksi int11 - status varchar10 - 5. Tabel pesanan Tabel ini berisi tentang data-data yang berasal dari pemesanan taksi yang dilakukan oleh calon penumpang, seperti ID pesanan, nama pemesan, nomor telepon, ID unik device masing-masing device memiliki ID unik masing-masing, ID supir, koordinat penumpang, alamat dan status. Struktur tabel pesanan dapat dilihat pada Tabel 3.5. Tabel 3.5 Tabel pesanan Nama Field Tipe Ekstra id_pesanan int11 Primary Key AUTO_INCREMENT nama_pemesan varchar50 - no_telp varchar20 - id_unik_device varchar255 - id_supir int11 - koordinat_penumpang varchar50 - Alamat varchar255 - Status varchar50 - 6. Tabel penumpang Tabel ini berisi tentang data-data yang berasal dari pelanggan taksi atau penumpang. Struktur tabel penumpang dapat dilihat pada tabel 3.6 . Tabel 3.6 Tabel penumpang Nama Field Tipe Ekstra id_penumpang int11 Primary Key AUTO_INCREMENT Username varchar20 - Password varchar20 - Nama varchar30 - no_hp varchar30 -

3.4 Perancangan Relasi Antar Tabel