BAB 2 LANDASAN TEORI
2.1
Teori Dasar Graph Menurut Witala (1987,p178), graph adalah sebuah pasangan berurutan (V,E), di
mana V adalah himpunan vertex/node/titik, dan E adalah himpunan edge/garis yang menghubungkan antara vertex yang satu dengan vertex yang lain. Edge pada graph dapat memiliki bobot/nilai, di mana bobot tersebut dapat mewakili jarak, biaya, waktu, dan sebagainya. Graph yang demikian disebut weighted graph. Pada gambar 2.1 di bawah, bobot/nilai dari graph tersebut dilambangkan dengan e1, e2, e3, e4, e5, e6, e7. Edge pada graph juga dapat memiliki arah, graph demikian disebut directed graph/digraph. Pada digraph, edge (a, b) merupakan sebuah edge dari a ke b, di mana vertex a disebut initial vertex (source) dan vertex b disebut terminal vertex (sink) dari edge tersebut. Jadi edge (a, b) ≠ edge (b, a). Sebaliknya pada undirected graph, edge (a, b) = edge (b, a). Gambar 2.1 adalah contoh sebuah undirected graph di mana V = {A, B, C, D, E} dan E = {e1, e2, e3, e4, e5, e6, e7}.
6
A e1
e5 e6
B e2
E
e7
e4
e3
C
D
Gambar 2.1 Undirected Graph Sumber: Stephen AW, 1999, p185 Degree dari suatu vertex adalah banyaknya edge yang bertemu pada vertex tersebut. Pada gambar 2.2, degree dari vertex B adalah 3. Untuk digraph dikenal indegree dan outdegree. Indegree adalah banyaknya edge yang masuk ke suatu vertex, sedangkan outdegree adalah banyaknya edge yang keluar dari suatu vertex. Gambar 2.2 adalah contoh sebuah digraph, di mana V = {A, B, C, D, E} dan E = {(A, E), (B, A), (C, B), (C, D), (D, B), (D, E), (E, B)}. Pada Gambar 2.2, vertex B memiliki indegree 3 dan outdegree 1. A
B
E
C
D
Gambar 2.2 Directed Graph Sumber: Stephen AW, 1999, p232
7 Beberapa istilah yang berhubungan dengan edge dan vertex: •
Walk, yaitu lintasan yang mungkin dari vertex awal ke vertex tujuan. Contoh walk dari vertex B ke vertex E pada gambar 2.1 adalah (B,D,E), (B,E), (B,C,D,E) dan sebagainya. Vertex dan edge yang sama dapat ditelusuri kembali.
•
Trail, adalah walk yang semua edge-nya berbeda. Trail dapat melalui vertex yang sama berulang kali hanya jika melewati edge yang berbeda. Contoh trail dari B ke E pada gambar 2.1 adalah (B,D,E), (B,A,E,D,B,E) dan sebagainya.
•
Path, yaitu walk yang semua vertex-nya berbeda kecuali mungkin vertex awal dan vertex akhir sama. Contoh path dari B ke E pada gambar 2.1 adalah (B,A,E), (B,C,D,E) dan sebagainya.
•
Cycle (closed path), yaitu path yang dimulai dan diakhiri pada vertex yang sama (vertex awal = vertex tujuan). Contoh cycle pada gambar 2.1 adalah (B,A,E,D,C,B).
Sebuah graph dapat direpresentasikan ke dalam bentuk yang berbeda-beda. Yang perlu diperhatikan adalah jumlah vertex dan edge serta urutannya, bukan letak/posisi dari vertex dan edge tersebut. Sebagai contoh, graph G = (V, E), di mana V = {A,B,C,D}dan E = {a, b, c} dapat direpresentasikan seperti pada Gambar 2.3.
8
a
A
a
A
b
B B
c
D
A
b D
c
C
C
C b
a
c
B
D
Gambar 2.3 Isomorphic Graph Sumber: Stephen AW, 1999, p179 Walaupun terlihat berbeda, tetapi ketiganya merupakan graph yang sama (isomorphism). Jika diagram kedua dan ketiga diluruskan, maka masing-masing akan memperoleh hasil yang sama seperti diagram pertama. Pada setiap diagram dimungkinkan untuk berjalan dari A menuju D dengan rute melalui a,b dan c, dan jika ada segmen garis yang terputus maka tidak mungkin lagi untuk berjalan dari a menuju d. Seluruh hubungan antara vertex dalam suatu graph dapat diwakili oleh sebuah matriks yang disebut matrix adjacency. Matrix Adjacency biasanya berisi angka 1 bila ada edge di antara 2 vertex tersebut dan berisi angka 0 bila tidak terdapat edge di antaranya. Gambar 2.5 adalah matrix adjacency dari graph pada gambar 2.4.
B
D
e2
e1 A
e6 e3
e5 e7
C
e4
F
E
Gambar 2.4 Contoh Graph Matrix Adjacency dan Incidency Sumber: Stephen AW, 1999, p208
9 A
B
C
D
E
F
A
0
1
0
0
0
0
B
1
0
1
1
0
0
C
0
1
0
0
1
0
D
0
1
0
0
1
1
E
0
0
1
1
0
1
F
0
0
0
1
1
0
Gambar 2.5 Matrix Adjacency Sumber: Stephen AW, 1999, p208 Hubungan antar vertex dapat diwakili dalam matrix adjacency, maka matrix incidency adalah matriks yang mewakili hubungan antar vertex dengan edge yang ada hubungannya. Matriks ini berisi 1 bila antara vertex dengan edge saling berhubungan dan 0 bila tidak berhubungan. Gambar 2.6 adalah matrix incidency dari graph pada gambar 2.4. e1
e2
e3
e4
e5
e6
e7
A
1
0
0
0
0
0
0
B
1
1
1
0
0
0
0
C
0
0
1
1
0
0
0
D
0
1
0
0
1
1
0
E
0
0
0
1
1
0
1
F
0
0
0
0
0
1
1
Gambar 2.6 Matrix Incidency Sumber: Stephen AW, 1999, p209
10 Menurut Mawata (2000,p187-p190) dalam Graph Theory Lessons, dalam teori graph terdapat special graph, beberapa di antaranya adalah sebagai berikut. 1. Null graph Null graph adalah graph yang hanya memiliki himpunan vertex tanpa ada himpunan edge. Biasanya direpresentasikan dengan symbol Nn, di mana N adalah null graph, dan n adalah jumlah vertex. E
D
A
B
C
Gambar 2.7 Null Graph (N5) Sumber: Richard J,1997, p314
2. Complete graph Complete graph adalah graph di mana setiap vertex berhubungan dengan semua vertex yang lain (semua vertex saling berhubungan). Biasanya direpresentasikan dengan symbol Kn, di mana K adalah complete graph, dan n adalah jumlah vertex. Sebuah complete graph dengan n vertex akan mempunyai edge sebanyak n (n-1)/2.
11
E
A
D
B
C
Gambar 2.8 Complete Graph (K5) Sumber: Stephen A.W, 1999, p222 3. Planar graph Planar graph adalah graph yang digambarkan dengan tidak ada edge-edge yang saling bersilangan.
A
D
B
C
Gambar 2.9 Planar Graph Sumber: Stephen A.W, 1999, p192 4. Bipartite graph dan complete bipartite graph Bipartite graph adalah graph di mana set vertexnya di bagi ke dalam dua subset vertex M dan N, sedemikan sehingga tidak ada edge yang menghubungkan vertex-vertex dalam subset yang sama. Sedangkan complete
12 bipartite graph adalah bipartite graph di mana setiap vertex dari M harus memiliki edge yang terhubung ke semua vertex dari N, demikan sebaliknya. C Biasanya direpresentasikan dengan simbol Km,n, di mana K adalah bipartite graph / complete bipartite graph, m adalah jumlah subset vertex M, dan n adalah jumlah subset vertex N.
A
D
B
E (a)
C
A
D
B
E
F
F (b)
Gambar 2.10 (a) Bipartite Graph K3.3 (b) Complete Bipartite Graph K2.4 Sumber: Stephen A.W, 1999, p193
5. Regular graph Regular graph adalah graph di mana setiap vertex-nya memiliki derajat yang sama. Gambar 2.11 merupakan regular graph berderajat 3.
13 F B A
J
C
E
G
D
I
H
Gambar 2.11 Regular Graph Berderajat 3 Sumber: Stephen A.W, 1999, p222. 6.
Tree Tree adalah graph yang memiliki minimal dua buah vertex (minimal sebuah root node dan sebuah leaf node) dan tidak memiliki cycle. Jika jumlah vertex pada tree adalah n, maka jumlah edge pada tree adalah n-1.
A B
A
root
root
B
leaf
C
D
E
F
leaf
leaf
leaf
Gambar 2.12 Tree Sumber: Stephen A.W, 1999, p389.
14 Beberapa contoh aplikasi graph yang dapat diterapkan di dalam kehidupan sehari-hari adalah sebagai berikut. 1. Pencarian sebuah jalur terpendek yang menghubungkan semua daerah yang ingin dikunjungi bagi perusahaan jasa travel untuk menghemat biaya dan dapat juga diterapkan di bagian penerbangan untuk mencari jalur terpendek yang terhubung antara 2 kota atau daerah yang dituju. 2. Pencarian sebuah jalur yang melewati semua jalan hanya sekali tanpa terputus bagi seorang tukang pos untuk mengantar surat ke semua rumah. 3. Mencari panjang kabel yang paling minimum untuk menghubungkan semua komputer di bagian networking atau jaringan. 4. Teori graph juga dapat diterapkan di bagian pewarnaan ruangan untuk mencari jumlah warna yang paling minimum diperlukan bila setiap ruangan harus berbeda warnanya dengan ruangan yang ada di sampingmya. 5. Representasi operasi dan operand matematik dalam tree untuk perhitungan matematik di dalam komputer contoh prefik, sufiks, dan infiks untuk perhitungan matematik dalam komputer.
Sekarang ini teori graph juga sudah diterapkan di bagian kimia serta bagian kompilasi komputer seperti finite state machines serta dipergunakan secara luas di berbagai aplikasi dalam berbagai ilmu.
15 2.2
Shortest Path Pencarian rute atau path terpendek antara node-node yang ada pada graph. Cost
yang dihasilkan adalah yang paling minimum (Horowitz et al, 1998, p241). Berdasarkan pengertian pada digraph dan weighted graph ( 2.1 ) di atas, maka cost dari shortest path dapat dihitung berdasarkan total nilai minimum yang ada pada edgenya. Dalam tulisan ini nilai pada masing-masing edge merupakan panjang jalan yang harus ditempuh. Pencarian shortest path bukan berarti langsung menemukan jarak dari node awal ke node tujuan tetapi ada kalanya usaha itu harus dilakukan dengan melewati node-node tertentu sehingga tujuan akhir node dapat tercapai.
2.2.1
Single Source Shortest Path Menemukan jarak terpendek (shortest path) dari setiap vertex tunggal pada graph
berarah yang berbobot menuju vertex tujuan tertentu ( Horowitz et al, 1998, p 241). Disebut single source karena membutuhkan sebuah titik sebagai awal pencarian. Yang termasuk dalam single source path ini adalah algoritma Dijkstra, Warshall, BellmanFord.
2.2.2
Pencarian Jalur Terpendek Tujuan dari shortest pathfinding adalah untuk menemukan lintasan terpendek
dan termurah yang mungkin dari vertex awal ke vertex akhir. Jika edge tidak memilki nilai, maka shortest path adalah path dengan jumlah edge yang paling sedikit. Jika edge memiliki nilai, maka shortest path adalah path dengan nilai akumulasi minimum dari semua edge pada path.
16 Shortest path problem berbeda dengan minimum spanning tree problem. Shortest path problem bertujuan untuk mencari tree yang termurah yang menghubungkan suatu vertex dengan semua vertex dalam tree. Banyak masalah pada network dapat di transformasikan ke dalam shortest path problem, seperti masalah transportasi dan komunikasi di dalam network.
2.2.2
Penggolongan Algoritma Shortest Finding secara umum A. Algoritma Uninformed Search. Algoritma Uninformed Search adalah algoritma yang tidak memiliki keterangan tentang jarak atau biaya dari path dan tidak memiliki pertimbangan akan path mana yang lebih baik. Yang termasuk dalam algoritma ini antara lain Algoritma Breadth-First Search. B. Algoritma Informed Search. Algoritma Informed Search adalah algoritma yang memiliki keterangan tentang jarak atau biaya dari path dan memiliki pertimbangan berdasarkan pengetahuan akan path mana yang lebih baik. Yang termasuk dalam algoritma ini antara lain Algoritma Ford.
2.3
Algoritma Berdasarkan buku Computer Algorithm (Horowitz et al (1998, p1) terdapat
beberapa pengertian algoritma sebagai berikut. •
Algoritma adalah metode yang dapat dipakai oleh komputer untuk menyelesaikan masalah. Pengertian ini dikemukakan pertama kali oleh seorang pengarang dari Persia bernama Abu Ja’far Mohammed ibn Musa al
17 Khowarizmi pada bukunya yang berjudul Kitab al-Jabr w’al-muqabala (Rules of Restoration and Reduction). Dari sinilah istilah algoritma pertama kali dikenal. •
Algoritma adalah urut-urutan terbatas dari operasi–operasi yang terdefinisi dengan baik yang masing-masing membutuhkan memori dan waktu yang terbatas untuk menyelesaikan suatu masalah.
•
Algoritma adalah sekumpulan instruksi yang harus dijalankan dan harus berakhir prosesnya dengan mengeluarkan suatu keluaran. Dari beberapa pengertian di atas dapat ditarik suatu kesimpulan bahwa
algoritma adalah urutan langkah–langkah penyelesaian masalah yang disusun secara sistematis.
2.4
Algoritma Warshall Menurut Jong Jek Siang (2002, p.272) algoritma Warshall dapat digunakan
untuk mencari path terpendek. Masukan algoritma Warshall adalah matriks hubung graph berarah berlabel, dan keluarannya adalah path terpendek dari semua titik ke semua titik. Dalam usaha untuk mencari path terpendek, algoritma Warshall memulai iterasi dari titik awalnya kemudian memperpanjang path dengan mengevaluasi titik demi titik hingga mencapai titik tujuan dengan jumlah bobot yang seminimum mungkin. Misalkan W0 adalah matriks hubung graph berarah berlabel mula-mula. W* adalah matriks hubung minimal dengan Wij* = path terpendek dari titik vi ke vj.
18 Algoritma Warshall untuk mencari path terpendek adalah sebagai berikut. 1. W = W0 2. Untuk k = 1 hingga n, lakukan: Untuk i = 1 hingga n, lakukan: Untuk j = 1 hingga n, lakukan: Jika W[i,j] > W[i,k] + W[k,j] maka Tukar W[i,j] dengan W[i,k] + W[k,j] 3. W* = W Dalam iterasinya untuk mencari path terpendek, algoritma Warshall membentuk n matriks, sesuai dengan iterasi-k. Hal ini menyebabkan waktu prosesnya lambat, terutama untuk n yang besar. Meskipun waktu prosesnya bukanlah yang tercepat, algoritma Warshall sering dipergunakan untuk menghitung path terpendek karena kesederhanaan algoritmanya.
7
v1
v2
2
v3
1 4
v4
4
2 v5
3 2
1 v6
Gambar 2.13 Contoh Graph untuk Algoritma Warshall Sumber: Jong Jek Siang, 2002, p. 273
19 Matriks hubung graph gambar 2.13 adalah W = W0 = v1
v2 v3
v4
v5
v1
∞
7
v2
∞
v3
v6
∞
2
∞
∞
∞
4
∞
1
∞
∞
∞
∞
∞
∞
3
v4
∞
4
∞
∞
∞
∞
v5
2
∞
2
∞
∞
∞
v6
∞
1
∞
∞
∞
∞
Iterasi untuk k = 1 Untuk setiap sel matriks W dicek apakah W[i,j] > W[i,1] + W[k,j]. Jika ya, maka W[i,j] diganti dengan W[i,1] + W[k,j]. Sebagai contoh: •
W[1,2] = 7, sedangkan W[1,1] + W[1,2] = ∞ + 7 = ∞ Karena W[1,2] /> W[1,1] + W[1,2] maka harga W[1,2] tidak diubah.
•
W[5,4] = ∞, sedangkan W[5,1] + W[1,4] = 2 + 2 = 4 Karena W[5,4] > W[5,1] + W[1,4], maka harga W[5,4] diubah menjadi 4. Ini berarti bahwa ada path dari v5 ke v4 melalui v1 yang mempunyai bobot lebih kecil (yaitu path v5 v1 v4 dengan jumlah bobot 4) dibandingkan dengan path dari v5 ke v4 secara langsung (bobot = ∞ karena tidak ada path dari v5 ke v4 secara langsung)
Dengan cara yang sama, harga W[ij] dihitung untuk setiap id an j, didapatkan matriks:
20
W1 =
v1
v2
v3
v4
v5
v6
v1
∞
7
∞
2
∞
∞
v2
∞
∞
4
∞
1
∞
v3
∞
∞
∞
∞
∞
3
v4
∞
4
∞
∞
∞
∞
v5
2
9
2
4
∞
∞
v6
∞
1
∞
∞
∞
∞
Dengan cara yang sama, untuk k = 2,3,4,5,6, diperoleh matriks: v1
W2 =
W3 =
v2
v3
v4
v5
v1
∞
7
11
2
8
∞
v2
∞
∞
4
∞
1
∞
v3
∞
∞
∞
∞
∞
3
v4
∞
4
8
∞
5
∞
v5
2
9
2
4
10
∞
v6
∞
1
5
∞
2
∞
v1
v2
v3 v4
v5
v6
v1
∞
7
11
2
8
14
v2
∞
∞
4
∞
1
7
v3
∞
∞
∞
∞
∞
3
v4
∞
4
8
∞
5
11
v5
2
9
2
4
10
5
v6
∞
1
∞
2
8
5
v6
21
W4 =
W5 =
W6 =
v1
v2
v3 v4
v5
v6
v1
∞
6
10
2
7
13
v2
∞
∞
4
∞
1
7
v3
∞
∞
∞
∞
∞
3
v4
∞
4
8 ∞
5
11
v5
2
8
2
4
9
5
v6
∞
1
5
∞
2
8
v1
v2
v3 v4
v5
v6
v1
9
6
9
2
7
12
v2
3
9
3
5
1
6
v3
∞
∞
∞
∞
v4
7
4
7
9
5
10
v5
2
8
2
4
9
5
v6
4
1
4
6
2
7
v1
v2
v3 v4
∞
v5
3
v6
v1
9
6
9
2
7
12
v2
3
7
3
5
1
6
v3
7
4
7
9
5
3
v4
7
4
7
9
5
10
v5
2
6
2
4
7
5
v6
4
1
4
6
2
7
22 Jika pada W* ada Wij dengan harga ∞ berarti tidak ada path dari vi ke vj baik langsung mau pun tidak langsung.
2.5
Sistem Informasi Gegografis (SIG)
2.5.1
Pengertian Sistem Moscove dan Simkin (1984, p4) mendefinisikan system sebagai berikut: “Suatu
sistem adalah suatu kesatuan yang terdiri dari interaksi subsistem yang berusaha untuk mencapai tujuan (goal) yang sama.” Menurut Wu (1984, p6), suatu sistem beroperasi dan berinteraksi dengan lingkungannya untuk mencapai sasaran (objectives) tertentu. Suatu sistem menunjukkan tingkah lakunya melalui interaksi antar komponen-komponen di dalam sistem dan lingkungannya. Menurut Alexander (1974, p4), suatu sistem adalah suatu grup dari elemenelemen, baik berbentuk fisik maupun nonfisik, yang menunjukkan suatu kumpulan saling berhubungan di antaranya dan berinteraksi bersama-sama menuju satu atau lebih tujuan, sasaran atau berakhir dari sistem. Menurut Nash dan Robert (1984, p20), suatu sistem adalah suatu kumpulan komponen yang berinteraksi membentuk suatu kesatuan dan keutuhan yang komplek, di dalam tingkat tertentu, untuk mengejar tujuan yang umum. Menurut Hicks, Jr dan Leininger (1986, p26), secara abstrak, suatu sistem adalah sebagai kumpulan interaksi dari komponen-komponen yang beroperasi di dalam suatu batas sistem. Batas sistem akan menyaring tipe dan tingkat arus input dari input serta output di antara sistem dengan lingkungannya.
23 Menurut Lucas (1982, p290), suatu sistem dibuat dari sejumlah komponenkomponen yang saling berhubungan dan hanya beberapa komponen saja yang dapat dilihat. Menurut Cushing (1974, p12), suatu sistem adalah suatu kesatuan yang terdiri dari dua atau lebih komponen atau subsistem yang berinteraksi untuk mencapai tujuan tertentu. Maka dapat disimpulkan bahwa sistem adalah gabungan dari beberapa elemen/komponen yang saling berinteraksi untuk mencapai tujuan tertentu dalam lingkungan yang terbatas.
2.5.2 Karakterisitik Sistem Suatu sistem memiliki sejumlah karakteristik tertentu yang akan diuraikan berikut ini.
A.
Komponen Sistem Kumpulan komponen yang saling berhubungan dan berinteraksi membentuk
suatu kesatuan, yakni sistem. Komponen-komponen sistem dapat berupa suatu subsistem atau bagian-bagian dari sistem. Setiap subsistem mempunyai sifat-sifat sistem dan menjalankan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan. Gabungan dari beberapa sistem dapat membentuk supra sistem yaitu sistem yang lebih besar karena merupakan kumpulan dari beberapa sistem.
24 B.
Batas Sistem Batas sistem merupakan daerah yang membatasi suatu sistem dengan sistem
yang lainnya atau dengan lingkungan luarnya. Batas suatu sistem menunjukkan ruang lingkup (scope) dari sistem tersebut.
C.
Lingkungan Luar Sistem Lingkungan luar sistem adalah apa pun di luar sistem yang mempengaruhi
operasi sistem. Lingkungan luar dapat bersifat menguntungkan atau sebaliknya. Pengaruh yang menguntungkan merupakan energi yang harus tetap dijaga dan dipelihara, sedangkan yang merugikan harus ditahan dan dikendalikan agar tidak mengganggu kelangsungan hidup sistem.
D.
Penghubung Sistem Penghubung sistem adalah media yang menghubungkan antar subsistem dari satu
sistem. Melalui penghubung ini sumber-sumber daya mengalir dari suatu subsistem ke subsistem lainnya. Keluaran (output) daru satu subsistem dapat menjadi masukan (input) untuk subsistem lainnya dengan melalui penghubung. Dengan penghubung maka satu subsistem dapat berintegrasi dengan subsistem lainnya membentuk suatu kesatuan.
E.
Masukan Sistem Masukan sistem adalah energi yang dimasukkan ke dalam sistem. Masukkan
dapat berupa masukan perawatan (maintenance input) dan masukan sinyal (signal input). Maintenance input adalah energi yang dimasukkan supaya sistem tersebut dapat beroperasi. Signal input adalah energi yang diproses untukmendapat keluaran.
25 F.
Keluaran Sistem Keluaran adalah hasil energi yang diolah dan diklasifikasikan menjadi keluaran
yang berguna atau sisa pembuangan. Keluaran dapat merupakan masukan bagi subsistem lainnya.
G.
Pengolah Sistem Suatu sistem memiliki bagian pengolahan yang bertugas untuk mengubah
masukan menjadi keluaran (proses). Sustu sistem produksi akan mengolah masukan berupa bahan baku menjadi keluaran berupa barang jadi.
H.
Sasaran Sistem Sustu sistem pasti memiliki tujuan (goal) atau sasaran (objective). Kalau suatu
sistem tidak memilikinya, maka operasi sistem tidak akan ada gunanya. Sasaran sistem menentukan masukan yang dibutuhkan dan keluaran yang dihasilkannya. Suatu sistem dikatakan berhasil jika mengenai sasaran atau tujuannya sehingga sistem harus bekerja secara efektif.
2.5.3 Pengertian Informasi A.
Definisi Informasi Menurut Moscove dan Simkin (1984, p5), informasi adalah kenyataan-kenyataan
atau bentuk-bentuk berguna yang dapat digunakan untuk pengambilan keputusan bisinis. Menurut Lucas (1982, p8), informasi adalah keyataan yang tidak tampak maupun yang tidak tersedia untuk mengurangi ketidakpastian tentang beberapa keadaan atau kejadian.
26 Menurut Cushing (1974, p10), informasi menunjukkan hasil dari pengolahan data yang diorganisasikan dan berguna kepada orang yang menerimanya. Menurut Davis (1974, p32), informasi adalah data yang telah diubah bentuk ke bentuk yang berguna bagi penerimanya dan nyata atau berupa nilai yang dapat dipahami di dalam keputusan sekarang mau pun masa depan. Maka dapat disimpulkan bahwa informasi adalah data yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya, menggambarkan suatu kejadian-kejadian dan kesatuan nyata, dan dapat diunakan untuk pengambilan keputusan.
B
Kualitas Informasi Kualitas informasi tergantung dari 3 hal, yakni. •
Akurat, berarti informasi harus bebas dari kesalahan-kesalahan dan tidak bias atau menyesatkan. Akurat juga berarti informasi harus jelas mencerminkan maksudnya dan dapat dipertanggung-jawabkan.
•
Tepat pada waktunya, berarti informasi yang datang pada penerima tidak boleh terlambat. Informasi yang sudah usang/basi tidak akan mempunyai nilai lagi. Informasi merupakan landasan pengambilan keputusan. Bila pengambilan keputusan terlambat, dapat berakibat fatal bagi organisasi.
•
Relevan, berarti informasi tersebut mempunyai manfaat untuk pemakainya. Relevan juga berarti informasi yang disajikan harus sesuai dengan penerimanya, kejadian/event serta masalah yang dihadapi.
27 2.5.4 Pengertian Geografi Secara leksikal, geografi berasal dari kata Geo (bahasa Yunani) artinya bumi dan Grafein artinya mencitra, menguraikan. Menurut Bintarto (1999, p1) geografi adalah suatu ilmu pengetahuan yang mencitrakan atau menggambarkan tentang keadaan bumi Menurut
Wardiyatmoko
(1996,
p3),
geografi
adalah
ilmu
yang
mempelajari/mengkaji bumi dan segala yang ada di atasnya, seperti penduduk, fauna, flora, iklim, udara serta segala interaksinya. Ruang lingkup studi geografi mencakup gejala, proses, struktur, fungsi interaksi antara keseluruhannya pada geosfer. Segi telaahnya meliputi analisis lokasi, persebaran fenomena, interaksi gejala-gejala yang timbul terhadap kawasan lainnya, sesuai prinsip geografis.
2.5.5 Sistem Informasi Geografis Menurut Paryono (1994, p1), Sistem Informasi Geografis (SIG) adalah sistem berbasis computer yang digunakan untuk menyimpan, memanipulasi dan menganalisis informasi geografis. Sistem Informasi Geografis (SIG) merupakan wahana menata informasi yang berbasis spasial. SIG terdiri dari paling tidak empat komponen utama: •
Sub-sistem masukan (acquisition)
•
Sub-sistem database.
•
Sub-sistem pengolahan data
•
Sub-sistem penyajian informasi
28 Dengan kata lain, GIS (Geographic Information System) atau SIG (Sistem Imformasi Geografis) secara umum sering didefinisikan sebagai suatu sistem berbasis komputer yang dapat memanajemen, memanipulasi dan menganalisis informasiinformasi kebumian. Komponen-komponen SIG, sebagai suatu sistem berbasis komputer termasuk perangkat keras (hardware), perangkat lunak (software), data/informasi dan juga operator (brainware) yang mengoperasikan serangkaian proses manipulasi. Seperti komponen sistem yang lain, SIG juga memiliki komponen-komponen input, yaitu data/informasi awal, proses dan output/informasi baru. Informasi input data berupa Peta Analog, Data Penginderaan Jauh (citra satelit/foto udara), Data GPS (Global Positioning System), survey lapangan dan data statistic. Keseluruhan data tersebut ditransformasikan ke format data digital, baru kemudian dapat dilakukan proses selanjutnya. Tidak tertutup kemungkinan data input juga berasal dari pengolahan SIG sebelumnya atau dari sumber-sumber tertentu dari internet. Kecanggihan teknologi SIG yang sering dimanfaatkan untuk berbagai aplikasi adalah kemampuannya yang memungkinkan untuk melakukan manipulasi data spasial sekaligus dengan database yang ada di dalamnya (lazim disebut query). Aplikasiaplikasi ini antara lain Analisis Jaringan, Manajemen Lingkungan, Model 3 Dimensi untuk Data Sumur-sumur Tambang dan Sistem Informasi terapan melalui internet.
Beberapa keuntungan yang didapat dengan SIG •
Data dapat dikelola dalam format yang kompak dan jelas.
•
Data dapat dikelola dengan biaya yang murah bila dibandingkan dengan survey lapangan.
29 •
Data dapat dipanggil kembali dan dapat diulang dengan cepat.
•
Komputer dapat mengubah data secara cepat dan tepat.
•
Data spasial dan nonspasial dapat dikelola secara bersama.
•
Analisis data dan perubahan data dapat dilakukan secara efisien.
•
Data yang sulit ditampilkan secara manual, dapat diperbesar bahkan dapat ditampilkan tiga dimensi.
•
Berdasarkan data yang terkumpul dapat dilakukan pengambilan keputusan dengan cepat dan tepat.
2.6
Software Engineering (Rekayasa Piranti Lunak) Menurut Fritz Bauer ( Pressman, 2001, p19), rekayasa piranti lunak adalah
penetapan dan pemakaian prinsip-prinsip rekayasa dengan tujuan mendapatkan piranti lunak yang ekonomis, terpercaya, dan bekerja efisien pada mesin yang sebenarnya (komputer). Menurut Pressman (2001, p19), rekayasa piranti lunak terbagi menjadi 3 lapisan yang mampu mengontrol kualitas dari piranti lunak yaitu: a. Proses (Process) Proses merupakan lapisan paling dasar dalam rekayasa piranti lunak. Proses dari rekayasa piranti lunak adalah perekat yang menyatukan lapisan-lapisan teknologi dan memungkinkan pengembangan yang rasional dan periodik dari piranti lunak komputer.
30 b. Metode (Methods) Metode dari rekayasa piranti lunak menyediakan secara teknis bagaimana membangun sebuah piranti lunak. Metode meliputi sekumpulan tugas yang luas, termasuk di dalamnya analisis kebutuhan, perancangan, konstruksi program, pengujian dan pemeliharaan. Metode dari rekayasa piranti lunak bergantung pada sekumpulan prinsip dasar masing-masing area teknologi dan memasukkan pemodelan aktivitas serta teknik deskriptif lainnya. c. Alat bantu (Tools) Alat bantu dari rekayasa piranti lunak menyediakan dukungan otomatis atau semi otomatis untuk proses dan metode. Ketika alat bantu diintegrasi, infromasi akan diciptakan oleh sebuah alat bantu yang dapat digunakan oleh lainnya, sebuah sistem untuk mendukung pengembangan piranti lunak, yang juga disebut computer-aided software engineering (CASE). CASE menggabungkan piranti lunak, perangkat keras dan database piranti lunak untuk menciptakan lingkungan rekayasa piranti lunak yang sejalan dengan CAD / CAE (computer-aided desing / engineering) untuk perangkat keras. Menurut Pressman (2001, p28), dalam perancangan piranti lunak, dikenal linear sequential model atau yang lebih dikenal dengan sebutan classic life cycle atau waterfall model. Model ini menyarankan pendekatan yang sistematik dan berurutan dalam pengembangan piranti lunak yang melalui analisis, desian, pengkodean, pengujian dan pemeliharaan. Model ini meliputi serangkaian aktifitas, yaitu:
31 a. Rekayasa dan pemodelan sistem Karena piranti lunak merupakan sebuah bagian dari sistem yang besar, maka yang perlu dilakukan pertama kali adalah menetapkan kebutuhan untuk seluruh elemen sistem dan mengalokasikan sebagian dari kebutuhan tersebut ke piranti lunak. b. Analisis kebutuhan piranti lunak Untuk dapat mengerti inti dari program yang dibangun, diperlukan pengertian akan informasi yang diperlukan oleh piranti lunak. c. Perancangan Perancangan piranti lunak sebenarnya merupakan sebuah proses yang terdiri dari banyak kegiatan, yang menitik beratkan pada 4 atribut dari program, yaitu: struktur data, arsitektur piranti lunak, represntasi tampilan dan detil prosedur. d. Pengkodean Dalam pengkodean, perancangan yang telah dilakukan diterjemahkan ke bentuk yang dimengerti komputer. e. Pemeliharaan Pemeliharaan dilakukan untk mengantisipasi terhadap terjadinya kesalahan kaena perubahan sistem atau peningkatan kebutuhan pengguna akan fungsi baru.
32
Gambar 2. 14 Waterfall Mode (Pressman, 1992, p25)
2.7
Diagram Alir (Flowchart) Diagram Alir (Flowchart) adalah representasi grafis dari serangkaian aktifitas
operasi, pergerakan, inspeksi, delay, keputusan dan pentimpanan dari sebuah proses. Diagram Alir menggunakan simbol-simbol untuk merepresentasikan jenis proses atau proses yang sedang berjalan. Bentuk yang sudah disatndarisasi menyediakan metode yang umum dipakai oleh banyak orang untuk memvisualisasikan masalah dengan cara yang sama dan lebih mudah (Hansen, 2005).
33 Berikut adalah simbol-simbol yang digunakan untuk menggambarkan diagram alir:
Tabel 2.1 Tabel Simbol Flowchart (http://home.att.net/~dexter.a.hansen/flowchart/flowchart.htm)
Notasi
Arti Notasi Proses / pengolahan
Predefined prosess
Operasi Input / Output
Decision,
berupa
pertanyaan
atau
penentuan suatu keputusan. Terminal, untuk menandai awal dan akhir program Preparation, untuk inisialisasi suatu nilai
Panah,
sebagai
penghubung
komponen dan penunjuk arah Manual Input, input dari pengguna
antar
34 On-Page Connector, sebagai penghubung dalam satu halaman Off-Page Connector, sebagai pengubung anatr halaman yang berbeda.