Perencanaan rute perjalanan di Jawa Timur dengan ...

12
III. PERANCANGAN PROGRAM Pada bab ini akan dijelaskan mengenai proses pembuatan program mulai dari perancangan dasar sampai dengan terbentuknya program. 1. PROSES MENGAMBIL GAMBAR PETA Dalam proses ini yang dilakukan adalah mencari peta Jawa Timur, kemudian memasukkan peta tersebut kedalam komputer dengan menggunakan scanner. Dalam hal ini peta tersebut dibagai menjadi 6 bagian yang sama besar, kemudian gambar tersebut diolah dengan menggunakan program Adobe Photoshop. Dengan pertimbangan agar user dapat melihat dengan jelas, peta tersebut dibuat berukuran 3425 x 1791 pixel. Mengingat gambar yang dipakai adalah gatnbar yang berukuran besar, dan tidak semua komputer yang dimiliki oleh user memiliki kemampuan untuk mengakses gambar tersebut. Maka dalam perancangan ini gambar akan ditampilkan pada saat program di jalankan. Program akan mengambil gambar tersebut dan menampilkannya di komponen image, sehingga hal ini membuat kerja dari program tidak terlalu berat. Dalam program ini selain gambar berukuran 3425 x 1791 pixel yang merupakan gambar normal atau 100%, juga terdapat gambar yang berukuran 857 x 448 atau 25% dari gambar normal, 1713 x 896 atau 50% dari gambar normal, 2569 x 1343 atau 75% dari gambar normal, 5138 x 2687 atau 150%

Transcript of Perencanaan rute perjalanan di Jawa Timur dengan ...

III. PERANCANGAN PROGRAM

Pada bab ini akan dijelaskan mengenai proses pembuatan program mulai

dari perancangan dasar sampai dengan terbentuknya program.

1. PROSES MENGAMBIL GAMBAR PETA

Dalam proses ini yang dilakukan adalah mencari peta Jawa Timur,

kemudian memasukkan peta tersebut kedalam komputer dengan menggunakan

scanner. Dalam hal ini peta tersebut dibagai menjadi 6 bagian yang sama besar,

kemudian gambar tersebut diolah dengan menggunakan program Adobe

Photoshop.

Dengan pertimbangan agar user dapat melihat dengan jelas, peta tersebut

dibuat berukuran 3425 x 1791 pixel. Mengingat gambar yang dipakai adalah

gatnbar yang berukuran besar, dan tidak semua komputer yang dimiliki oleh

user memiliki kemampuan untuk mengakses gambar tersebut.

Maka dalam perancangan ini gambar akan ditampilkan pada saat

program di jalankan. Program akan mengambil gambar tersebut dan

menampilkannya di komponen image, sehingga hal ini membuat kerja dari

program tidak terlalu berat.

Dalam program ini selain gambar berukuran 3425 x 1791 pixel yang

merupakan gambar normal atau 100%, juga terdapat gambar yang berukuran

857 x 448 atau 25% dari gambar normal, 1713 x 896 atau 50% dari gambar

normal, 2569 x 1343 atau 75% dari gambar normal, 5138 x 2687 atau 150%

20

dari gambar normal, serta ada yang berkuran 6850 x 3582 atau 200% dari

gambar normal.

2. PROSES MENDESAIN DATABASE

Dalam mendesain suatu database diperlukan suatu DFD dan ERD agar

database tersebut dapat bekerja dengan baik dan terkoordinasi dengan baik

pula. Dalam desain database ini terdapat 3 tabel yang mempunyai fungsi yang

berbeda antara yang satu dengan yang lainnya. 3 tabel tersebut adalah tabel

kota yang berisi tentang kota-kota yang dijadikan objek dari program ini, tabel

keterangan yang berisi keterangan dari semua kota yang telah didefinisikan di

tabel kota, dan tabel dijkstra yang berisi nama dari kota yang digunakan yang

mempunyai fungsi dalam menentukan kota mana saja yang dilewati mulai dari

kota awal sampai kota akhir.

Database yang digunakan pada program ini adalah stand-alone database

atau database yang berdiri sendiri. Alasan yang mendasari pemilihan database

tersebut adalah karena file yang diperlukan adalah file lokal sehingga tidak

diperlukan suatu mesin yang khusus untuk menyimpan database tersebut.

Alasan lain adalah program yang menggunakan database ini hanya 1 program.

Dalam sistem ini DFD dirancang sebagai berikut:

Daftar Kota

Daftar Keterangan GIS

Kota

\' Keterangan

/ Input Nama Kota

User

Gambar 3.1Data Flow Diagram Level 0

21

[Daftar Keterangan]Keterangan Kota

Nama kota

Nama Kcrta

Gambar 3.2Data Flow Diagram Level 1

[Kota]

[Keterangan]

[Daftar Kota]

DBKota

[Daftar Keterangan] / proses Input

1.1.4

ProsesMengetahuiKeterangan

Proses Cari Nama Kota[Sumbu XY]

[Nama Kota] v

Proses Cari Nama Kota

(Nama kota]

Proses Cari Keterangan Kota

[Keterangan Kota]

DB KeteranganProses Cari Keterangan Kota

Gambar 3.3Data Flow Diagram Level 2 1

22

[Input Nama Kota]

/ 1-2-1 \

Proseslnput \ Input Nama Kota

| User

Proses Input

[Nama Kota]

Proses Input

Gambar 3.4Data Flow Diagram Level 2 2

1.3.1[NamaKota] / , ^

_^J Proses InputNama Kota

ProsesCari Nama Kota

Nama Kota

[KeteranganJ

Proses Input

[Nama kota]

User

Prosefi Input

Gambar3.5Data Flow Diagram Level 2_3

Pada gambar diatas dapat kita lihat bahwa diperlukan dua buah external

entity, yaitu admin dan user. Admin memasukkan data kota, keterangan, dan

23

dijkstra ke masing-masing tabel, sedangkan user memperoleh output nama

kota, keterangan, dan jarak antar kota.

Kemudian, dibawah ini akan diperlihatkan ERD dari database yang

dirancang untuk program ini.

Dalam sistem ini ERD dirancang sebagai berikut:

SumbuX

ID

Kota

Kota

N

Dijkstra

JumlahPenduduk

Kota

Keterangan

NamaGunune,

Kerajinan

Kota

Tanda

Gambar 3.6Desain ERD

24

Setelah menyusun DFD dan ERD, struktur database yang bagaimana

yang akan dipakai sehubungan dengan rancangan ERD yang telah dibuat.

Dalam hal merancang struktur tabel, yang pertama harus dilakukan adalah

menentukan field-field yang akan digunakan pada masing-masing tabel yang

telah didesain pada ERD sebelumnya dan selanjutnya harus menentukan field-

field apa yang merupakan primary key.

Tabel3.1

Struktur Tabel Kota

NamaField

U>

SumbuX

SumbuY

Tanda

Kota

Tipe

AutoNumber

Numeric

Numeric

Alpha

Alpha

Ukuran

1

20

Keterangan

Nomer Urut

Koordinat X

Koordinat Y

Tanda Kota

Nama Kota

Tabel 3.2

Struktur Tabel Dijkstra

NamaField

Tanda

Kota

Tipe

Alpha

Alpha

Ukuran

1i

20

Keterangan

Tanda Kota

Nama Kota

25

Tabel 3.3

Struktur Tabel Keterangan

Nama Field

Kota

JumlahPenduduk

Pemerintahan

MakananKhas

KesenianTradisional

Kerajinan

DaerahWisata

NamaGunung

Tipe

Alpha

Numeric

Alpha

Alpha

Alpha

Alpha

Alpha

Alpha

Ukuran

20

30

255

255

255

255

255

Keterangan

Nama Kota

Jumlah Penduduk

Jenis Pemerintahan

Makanan Khas

Jenis Kesenian

Jenis Kerajinan

Daerah Wisata

Nama Gunung

3. PROSES MENENTUKAN KOORDBVAT DARIGAMBAR

Setelah memastikan peta sudah tersedia di program Delphi, maka untuk

mengisi tabel kota diperlukan koordinat sumbu x dan koordinat sumbu y. untuk

mengisi tabel tersebut maka caranya adalah dengan meng-klik pada peta kota

yang dipilih untuk dimasukkan kedalam tabel.

Tiap kota disimpan koordinat sumbu dari 4 titik yaitu ujung kiri atas,

ujung kanan atas, ujung kiri bawah, dan ujung kanan bawah. Lalu cara

penulisan dalam tabel kota ditulis satu persatu dari semua kemungkinan

koordinat yang sudah didapatkan tadi, sebagai contoh : koordinat kiri atas

adalah (130,10), koordinat kanan atas adalah (135,10), koordinat kiri bawah

adalah (130,15), dan koordinat kanan bawah adalah (135,15). Maka segala

26

kemungkinan yang ada adalah (130,10), (130,11), (130,12), (130,13), (130,14),

(130,15), (131,10), (131,11), (131,12), (131,13), (131,14), (131,15), (132,10),

(132,11), (132,12), (132,13), (132,14), (132,15), (133,10), (133,11), (133,12),

(133,13), (133,14), (133,15), (134,10), (134,11), (134,12), (134,13), (134,14),

(134,15), (135,10), (135,11), (135,12), (135,13), (135,14), (135,15). Total dari

semua kemungkinan yang disimpan dalam database adalah 36 data.

Data tersebut hanya untuk satu kota. Sedangkan kota yang dipakai dalam

program ini meliputi 26 kota dengan koordinat yang berbeda antara yang satu

dengan yang lain.

Setelah semua data koordinat dimasukkan ke dalam tabel kota, maka

ketika program dijalankan, yang harus dilakukan hanyalah meng-klik pada kota

yang diinginkan, kemudian program akan mencari ke database terutama dalam

tabel kota untuk mendapatkan tanda dan nama kota. Jika dalam tabel tidak

terdapat koordinat yang dipilih, maka akan keluar pesan bahwa kota atau

daerah tersebut tidak termasuk dalatn cakupan kota atau daerah yang sudah

dideskripsikan.

Karena besarnya gambar peta yang terdapat dalam program, maka semua

peta tidak dapat terlihat dalam satu layar, untuk memilih kota yang diinginkan,

maka user harus menggeser layar dengan jalan menggeser scrollbar yang ada

di bawah dan di samping kanan, hal tersebut berguna untuk menggeser gambar

baik ke kanan maupun ke bawah dan sebaliknya.

27

4. PROSES MENGGABUNGKAN PROGRAM DENGAN DATABASE

Cara untuk menggabungkan antara database dengan program Delphi,

digunakan komponen Table dan komponen Data Source yang terdapat dalam

Tab Data Access. Untuk tiap tabel yang dimiliki memiliki satu komponen

Table dan satu komponen Data Source. Jadi dalam program ini yang

menggunakan 3 tabel, maka minimal terdapat 3 komponen Table dan 3

komponen Data Source. Sedangkan untuk memanipulasi data dari tabel,

digunakan komponen Query dan komponen Data Source juga. Dalam

komponen Table, yang harus diisi adalah nama dari database yang digunakan,

serta nama dari tabel yang digunakan. Sedangkan yang harus diiisi dalam

komponen Data Source adalah data set, dimana fungsinya adalah

menggabungkan tabel dengan program.

Pada komponen Query, yang harus diisi adalah nama dari database yang

digunakan, dan form SQL yang berisi bahasa SQL untuk memanipulasi data

sesuai dengan yang diinginkan.

5. TAMPILAN PROGRAM

Program tugas akhir ini menggunakan Aform dalam delphi yang masing-

masing mempunyai fungsi sendiri-sendiri. 4 form tersebut adalah form GIS,

form datamodule, form adjency, form daftar kota. Form GIS terdiri dari 1 main

menu, 6 label, 6 edit text, 1 memo, 2 image, 1 scrollbox, dan 1 panel.

Form Datamodule berisi 3 table, 3 Query, dan 6 Data Source. Form

Datamodule ini mempunyai fungsi untuk mengakses database yang telah

28

dibuat terlebih dahulu, selain mengakses database,form ini juga berguna untuk

memanipulasi data sesuai keinginan dari user.

Form Adjency hanya terdiri dari 1 StringGrid yang berfungsi sebagai

tempat menampung nilai dari jarak antara 2 kota. Form ini hanya bekerja

dibelakang layar, jadi user tidak dapat melihat isi dahform tersebut.

Form daftar kota berisi 1 list box, dimana dalam list box tersebut berisi

tentang kota-kota yang digunakan dalam program ini. Jika user memilih kota

dari/onw daftar kota, maka image akan langsung meletakkan kota yang dipilih

ke tengah layar, dan koordinat dari kota tersebut akan berwaraa biru untuk

menentukan kota awal dan warna putih untuk menentukan kota akhir. Alasan

menggunakan warna-warna tersebut adalah agar user yang tidak mengetahui

letak dari suatu kota dapat dengan mudah menemukan kota tersebut. hal

tersebut memudahkan user yang kurang atau bahkan tidak mengetahui letak

dari suatu kota yang diinginkan.

6. TEKNIK PENGUMPULAN DATA

Teknik yang digunakan oleh penulis dalam mengumpulkan data yaitu

melalui pencarian di perpustakaan Universitas Kristen Petra Surabaya, dengan

cara mencari buku yang memiliki hubungan dengan Jawa Timur baik dalam

hal pariwisata dan kependudukan, data yang didapatkan dari beberapa buku

yang ada di perpustakaan tersebut kemudian dijadikan satu dan diolah sehingga

mendapatkan data yang diperlukan untuk tabel keterangan, serta untuk mengisi

jarak antara satu kota dengan kota yang lain yang tersimpan dalam StrmgGrid

dalam program Delphi.

Selain mencari data di perpustakaan, penulis juga mencari di buku-buku

yang dijual di toko-toko buku. Hal tersebut sangat bermanfaat untuk saling

menambahkan kekurangan yang ada. Buku yang dicari adalah buku yang

berbicara sekitar Jawa Timur dan pariwisatanya.

7. ALGORITMA DIJKSTRA

Program yang dibuat dalam tugas akhir ini menggunakan algoritma

dijkstra untuk membantu penulis mencari rute terpendek dari satu kota ke kota

yang lain, alasan memilih dijkstra karena hasil yang dikeluarkan oleh algoritma

dijkstra ini hanya 1 rute saja yang merupakan rute terpendekdari satu kota ke

kota yang iain.

Dalam program yang dibuat, dijkstra disimpan dalam array ofrecord,

dalam arti disimpan dalam array yang didalamnya terdapat record. Record

yang terdapat dalam array tersebut adalah start yang menggunakan char, state

yang menggunakan string, value yang menggunakan integer, dan done yang

menggunakan boolean.

Dalam program ini dijkstra berfungsi untuk mencari jarak terpendek

antara satu kota dengan kota yang lain, caranya dengan terlebih dahulu

mengetahui kota awal dan kota akhir yang tersimpan dalam variabel.

Kemudian menghitung jarak dari kota awal ke kota yang terhubung dengan

kota awal tersebut, lalu dipilih yang terkecil untuk kemudian dijadikan kota

awal selanjutnya. Kejadian tersebut berlangsung secara terus menerus sampai

akhirnya kota awal sama dengan kota akhir.

30

Algoritma Dijkstra:

Procedure Dijkstra(G:Weighted connected simple graph, with all weight

positive)

{G has vertices a = Vo,vi,... ,vn = z and weights W(VJ,VJ)

where w(vi,Vj) = oo if {vi,vj} is not an edge in G}

for i := 1 to n

L(vi) := oo

L(a):=0

S := (/>

(the labels are now initialized so that the label of a is zero and all other labels

are <x>, and S1 is the empty set}

while 2 g S

begin

u := a vertex not in 5 with L(u) minimal

S:=Su {u}

For all vertices v not in S

If L(u) + w(u,v) < L(v) then l(v) := L(u) + w(u,v)

(this adds a vertex to S with minimal label and updates

the labels of vertices not in S}

end (L(z) = length of shortest path from a to z)