Tiga aspek penting dari informasi SIG


Tiga aspek penting dari informasi SIG adalah : kuantitas luas areal tingkatan wilayah yang diperlukan; kualitas dan tingkat kepercayaan data yang dikumpulkan (metode dan ketelitian); serta kecepatan dan ketepatan perolehan informasi yang dibutuhkan (tingkat kepuasan pemakai)
 
Untuk membuat Sistem Informasi Geografis yang baik maka harus memenuhi 3 aspek penting , bukan hanya sekedar pengubahan peta konvensional (tradisional) ke bentuk peta digital. Tetapi mampu memenuhi aspek kuantitasluas areal tingkatanwilayah yang diperlukan, kualitas dan tingkat kepercayaan data yang dikumpulkan (metodedanketelitian), dan kecepatan dan ketepatan perolehan informasi yang dibutuhkan (tingkat kepuasan pemakai)

KUANTITAS DATA
kuantitas berhubungan dengan jumlah dan penyebarannya.  Penyebaran kuantitas tersebut dapat menjadi petunjuk untuk mencari tempat-tempat yang sesuai dengan kriteria yang diinginkan dan digunakan untuk pengambilan keputusan, atau pun juga untuk mencari asosiasi dari masing-masing tempat tersebut. Pemetaan ini akan lebih memudahkan pengamatan terhadap data statistik dibanding dengan database biasa. Sebagai contoh, sebuah perusahaan pakaian seragam anak Sekolah Dasar (SD) yang akan menyebarkan brosurnya akan terbantu dengan mengetahui daerah-daerah mana yang memiliki banyak keluarga dengan anak usia sekolah dan memiliki pendapatan yang tinggi.

KUALITAS DATA
Aspek Kualitas dari Sistem Informasi Geografi (SIG) adalah memberikan informasi yang kurang akurat bila data yang dimasukkan merupakan data yang meragukan. Selain berperan sebagai alat pengolah data keruangan, sistem informasi geografi juga mampu menyajikan informasi mengenai sumber daya yang dimiliki oleh suatu ruang atau wilayah tertentu. Dalam SIG akurasi data sama tergantung sumber. Ketidaklengkapan fasilitas untuk mendeteksi kesalahan dan ketidakpastian hasil analisis dalam perangkat SIG membuat teknologi ini menjadi rawan untuk keamanan data. Persoalan ini muncul karena ketidakakuratan posisi dan ketidakpastian atribut yang merupakan ciri dalam operasi SIG dan akhirnya membahayakan semua aplikasinya. Kesalahan yang paling umum adalah pada proses dijitasi, proses konversi dari raster ke vector dan akhirnya akan terakumulasi pada hasil operasi overlay (tumpang susun). Akurasi dalam SIG adalah derajat kebenaran produk SIG mendekati keadaan sebenarnya. Sedang presisi adalah derajat kedetailan pengukuran (mungkin tidak akurat) yang dilakukan pada kenampakan spasial sebenarnya. Adakalanya presisi in idalam pengertian geometric sering dikaitkan dengan ketepatan alat merekam pengukuran atau angka pasti yang dibulatkan, misalnya 0,1 cm.Informasi harus akurat, tidak menyimpang dari masalah yang ada dan harus mencerminkan maksud yang dikandungnya

KECEPATAN DAN KETEPATAN
Salah satu kriteria keberhasilan SIG adalah aspek kecepatan dan ketepatan dalam memberikan informasi bagi pengguna, Informasi harus tersedia untuk memecahkan masalah sebelum situasi krisis menjadi tidak terkendali atau kesempatan menghilang. Jika informasi terlambat untuk diterima, maka informasi tersebut sudah tidak mempunyai arti.

Pengertian Sistem Informasi dan Informasi Geografi


GIS bukan sebuah sistem yang mampu membuat keputusan secara otomatis. GIS hanya sebuah sarana untuk pengambilan data, menganalisanya dari kumpulan data berbasis pemetaan untuk mendukung proses pengambilan keputusan. Pengertian Sistem Informasi dan Informasi Geografi. Sistem informasi adalah keterpaduan kerja untuk mendapatkan informasi dalam pengambilan keputusan. Dalam sistem informasi terdapat komponen data, manusia, perangkat lunak (program komputer), perangkat keras (komputer), serta aktivitasnya dalam pengolahan dan analisis data untuk pengambilan keputusan. 


Menurut pendapat saya GIS merupakan sebuah aplikasi berbasis peta atau sistem komputer yang berisi informasi mengenai dunia sebagai sebuah koleksi data yang dapat dihubungkan dengan geografi dan memiliki kemampuan untuk membangun, menyimpan, mengelola dan menampilkan informasi berreferensi geografis, dan juga sebagai alat bantu manajemen berupa informasi berbantuan komputer yang berkait erat dengan sistem pemetaan dan analisis terhadap segala sesuatu serta peristiwa-peristiwa yang terjadi di muka bumi yang di butuhkan oleh pengguna aplikasi sebagai sarana untuk pengambilan keputusan, misalnya data yang diidentifikasi menurut lokasinya, dalam sebuah database.Teknologi GIS mengintegrasikan operasi pengolahan data berbasis database yang biasa digunakan saat ini, seperti pengambilan data berdasarkan kebutuhan, serta analisis statistik dengan menggunakan visualisasi yang khas serta berbagai keuntungan yang mampu ditawarkan melalui analisis geografis melalui gambar-gambar petanya. Sehingga ketika data yang dibutuhkan telah di dapatkan oleh pengguna maka bisa menganalisa semua data yang di butuhkan agar sesuai dengan kebutuhannya.

Sistem Informasi Geogafi (SIG) mampu menyajikan keaslian dan kelengkapan sebuah informasi dibandingkan cara-cara yang digunakan sebelumnya. Sistem informasi geografi menyimpan data sesuai dengan data aslinya. Walaupun demikian, agar data yang disimpan itu akurat, maka data yang dimasukkan haruslah data yang akurat.Adapun informasi geografis adalah kumpulan data atau fakta yang terkait dengan lokasi keruangan di permukaan bumi, yang disusun sedemikian rupa sehingga menghasilkan informasi baru yang bersifat geografis dan berbeda dari sumber data awalnya ketika masih terpisah-pisah.

Sistem Informasi Geografis (SIG) yang bersifat spatial dan a-spatial


Geographic Information System (GIS) atau Sistem Informasi Geografis (SIG) diartikan sebagai sistem informasi yang digunakan untuk memasukkan, menyimpan, memangggil kembali, mengolah, menganalisis dan menghasilkan data bereferensi geografis atau data geospatial, dan yang membedakan antara sistem informasi yang bersifat spatial dan a-spatial adalah sebagai berikut :


Data Spasial (Keruangan)
Data spasial adalah data yang bereferensi geografis atas representasi obyek di bumi atau gambaran nyata suatu wilayah yang terdapat di permukaan bumi, data yang mempresentasikan aspek keruangan dari suatu fenomena atau mengidentifikasikan posisi geografis suatu fenomenadisebut data posisi, koordinat, ruang atau spasial. Fenomena tersebut berupa fenomena alamiah dan buatan manusia. Umumnya direpresentasikan berupa grafik, peta, gambar dengan format digital dan disimpan dalam bentuk koordinat x,y (vektor) atau dalam bentuk image (raster) yang memiliki nilai tertentu.Data Spasialberupatitik, garis, poligon (2-D), permukaan (3-D), terdiridariinformasiposisigeografis.
Jadi, data spasial adalah gambaran nyata suatu wilayah yang terdapat di permukaan bumi. Umumnya direpresentasikan berupa grafik, peta, gambar dengan format digital dan disimpan dalam bentuk koordinat x,y (vektor) atau dalam bentuk image (raster) yang memiliki nilai tertentu. Software yang digunakan untuk data spasial ialah software AutoCAD. Bentuk-bentuk data spasial terbagi 3, yaitu:
·         Titik (dot)
Sebuah titik dapat menggambarkan objek geografi yang berbeda-beda menurut skalanya. Sebuah titik menggambarkan kota jika pada peta skala kecil, tetapi menggambarkan objek tertentu yang lebih spesifik dalam wilayah kota, misalnya posisi pasar atau terminal, jika pada peta skala besar.contoh: posisi terminal.
·         b) Garis (polyline)
Sebuah garis juga dapat menggambarkan objek geografi yang berbeda-beda menurut skalanya, dengan format : kumpulan pasangan-pasangan koordinat yang mempunyai titik awal dan titik akhir mempunyai dimensi panjang tapi tidak mempunyai luas.contoh: jaringan jalan raya.
·         c) Area (polygon)
Area dapat menggambarkan wilayah hutan atau sawah pada peta skala besar, dengan format: kumpulan pasangan-pasangan koordinat yang mempunyai titik awal dan titik akhir yang sama, mempunyai dimensi panjang dan luascontoh: wilayah kecamatan.
contoh data spasial antara lain letak suatu wilayah, sungai, lokasi jalan atau rumah,  posisi sumber minyak bumi,dsb.

Data Non Spasial (Atribut/Deskripsi)
Data non spasial disebut juga data atribut adalah Jenis data yang merepresentasikan atribut/keterangan dari spatial  feature, aspek-aspek deskripsi/penjelasan dari suatu fenomena di permukaan bumi dalam bentuk kata-kata, angka, atau tabel, data berbentuk tabel dimana tabel tersebut berisi informasi- informasi yang dimiliki oleh obyek dalam data spasial. Data tersebut berbentuk data tabular yang saling terintegrasi dengan data spasial yang ada.
Dengan kata lain, data non spasial adalah data yang mempresentasikan aspek-aspek deskripsi/penjelasan dari suatu fenomena di permukaan bumi dalam bentuk kata-kata, angka, atau tabel. Contoh software yang digunakan untuk data spasial ialah software DataBase dan Lotus.
Contoh: nama wilayah, nama sungai, tingkat pencemaran sungai, nama jalan,  alamatrumah, luasPermukiman, jumlahpenduduknya, jumlahrumah, jumlahkepalakeluarga, pendapatan rata-rata kepalakeluarga, dll.
Bentuk-bentuk data atribut ada 2 yaitu:
·                     data kuantitatif (angka-angka/statistik), contoh: jumlah penduduk
·                     data kualitatif (kualitas/mutu), contoh: tingkat kesuburan tanah
 

CONTOH DECOMFILE File java


File awal Kasir.class di decompiles dengan jd-gui-windows-1.2.0
Terlihat perbedaan hasil decompiles class nya java dibandingkan dengan file awalnya diantaranya sebagai berikut :
  • Formatnya agak berbeda dibandingkan dengan file awal yang kita buat.
  • Format yang berbeda di tandai dengan warna kuning

di bawah ini file awal :

import java.util.ListIterator;
import java.util.LinkedList;
class Barang extends Kemasan {
    public Barang (String nama){
        this.setNama(nama) ;
    }
    public int jmlKemasan() {
        return 1;
    }
    public boolean bertambah(Kemasan kemasan) {
        return false;
    }
    public boolean berkurang(Kemasan kemasan){
        return false;
    }
    public ListIterator createListIterator() {
        return null;
    }
}




abstract class Kemasan {
    LinkedList dftrKemasan;
    Kemasan kemasan;
    String nama;
    public abstract int jmlKemasan();
    public abstract boolean bertambah(Kemasan kemasan);
   
    public abstract boolean berkurang(Kemasan kemasan);
   
    public abstract ListIterator createListIterator();
    public void setKemasan(Kemasan kemasan){
        this.kemasan = kemasan;
    }
    public Kemasan getKemasan() {
        return kemasan;
    }
    public void setNama(String nama){
            this.nama = nama;
    }
    public String getNama() {
        return nama;
    }
}




class KemasanBsr extends Kemasan {
    public KemasanBsr(String nama) {
        dftrKemasan = new LinkedList();
        this.setNama(nama);
    }
   
    public int jmlKemasan() {
        int ttlKemasan = 0;
        ListIterator listIter = this.createListIterator();
        Kemasan temp;
        while (listIter.hasNext()) {
            temp = (Kemasan)listIter.next();
            ttlKemasan += temp.jmlKemasan();
        }
        return ttlKemasan;
    }
    public boolean bertambah(Kemasan kemasan) {
        kemasan.setKemasan(this);
        return dftrKemasan.add(kemasan);
    }
    public boolean berkurang (Kemasan kemasan) {
        ListIterator listIter = this.createListIterator();
        Kemasan temp;
        while (listIter.hasNext()) {
            temp = (Kemasan)listIter.next();
            if (temp == kemasan) {
                listIter.remove();
                return true;
            }
        }
        return false;
    }
    public ListIterator createListIterator() {
        ListIterator listIter = dftrKemasan.listIterator();
        return listIter;
    }   
       
}


public class TestKompositKemasan {
    public static void main (String[] args) {
    System.out.println("Buat Kemasan Besar");
    Kemasan kemasanBsr = new KemasanBsr ("Kemasan Besar");
    System.out.println("Kemasan besar mempunyai "+ kemasanBsr.jmlKemasan() + " kemasan.");
    System.out.println("Buat barang-1");
    Kemasan barang1 = new Barang ("Barang 1");
    System.out.println("jumlah: " +
barang1.jmlKemasan() + " barang.");
    System.out.println("Buat barang-2");
    Kemasan barang2 = new Barang ("Barang 2");
    System.out.println("jumlah: " + barang2.jmlKemasan() + " barang.");
    System.out.println("=============================================");

System.out.println("Barang-1 dan Barang-2 dimasukan ke dalm kemasan besar");
if (kemasanBsr.bertambah(barang1)){
    System.out.println("Barang-1 berhasil dimasukan pada kemasan besar");
} else {System.out.println("Barang-1 tidak berhasil dimasukan pada kemasan besar");
}
System.out.println("Kemasan besar sekarang mempunyai "+kemasanBsr.jmlKemasan() + " barang.");
if (kemasanBsr.bertambah(barang2)){
    System.out.println("Barang-2 berhasil dimasukan pada kemasan besar");
} else {System.out.println("Barang-2 tidak berhasil dimasukan pada kemasan besar");
}
System.out.println("Kemasan besar sekarang mempunyai " + kemasanBsr.jmlKemasan() + "barang.");
    System.out.println("=============================================");
    System.out.println("Buat Kemasan (kecil)");
    Kemasan kemasan = new KemasanBsr ("Kemasan barang(kecil)");
    System.out.println("Kemasan (kecil) mempunyai " + kemasan.jmlKemasan()+ " barang.");
    System.out.println("Buat barang-3");
    Kemasan barang3 =new Barang ("barang 3");
    System.out.println("jumlah: " + barang3.jmlKemasan() + " barang.");
    System.out.println("=============================================");
    System.out.println("Barang-3 dimasukan ke dalam kemasan (kecil)");
    if (kemasan.bertambah(barang3)){
        System.out.println("Barang-3 berhasil dimasukan pada kemasan (kecil)");
    }else { System.out.println("Barang-3 tidak berhasil dimasukan pada kemasan (kecil)");
    }
    System.out.println("Kemasan (kecil) sekarang mempunyai" + kemasan.jmlKemasan()+ " baang.");
    System.out.println("=============================================");
    System.out.println("Kemasan (kecil) dimasukan kedalam kemasan besar");
    if (kemasanBsr.bertambah(kemasan)) {
        System.out.println("Kemasan (kecil) berhasil dimasukan pada kemasan besar");
    } else { System.out.println("Kemasan (kecil) tidak berhasil dimasukan pada kemasan besar");
    }
    System.out.println("Kemasan besar sekarang mempunyai" + kemasanBsr.jmlKemasan() + " barang.");
    System.out.println("=============================================");
    System.out.println("Barang-2 diambil dari kemasan besar");
    if (kemasanBsr.berkurang(barang2)){
        System.out.println("Barang-2 berhasil diambil dari kemasan besar");
    } else { System.out.println("Barang-2 tidak berhasil diambil dari kemasan besar");
      }
    System.out.println("Kemasan besar sekarang mempunyai" + kemasanBsr.jmlKemasan()+ " barang.");
    }
}
         
Hasilnya setelah decompiles : 

import java.util.ListIterator;



class Barang extends Kemasan {
  public Barang(String paramString) {
    setNama(paramString);
  }
  public int jmlKemasan(){
    return 1;
  }
  public boolean bertambah(Kemasan paramKemasan){
    return false;
  }
  public boolean berkurang(Kemasan paramKemasan){
    return false;
  }
  public ListIterator createListIterator(){
    return null;
  }
}

import java.util.LinkedList;
import java.util.ListIterator;

abstract class Kemasan {
  LinkedList dftrKemasan;
  Kemasan kemasan;
  String nama;
  public abstract int jmlKemasan();
  public abstract boolean bertambah(Kemasan  paramKemasan);
  public abstract boolean berkurang(Kemasan paramKemasan);
  public abstract ListIterator createListIterator();
  public void setKemasan(Kemasan paramKemasan) {
    this.kemasan = paramKemasan;
  }
  public Kemasan getKemasan() {
    return this.kemasan;
  }
  public void setNama(String paramString)  {
    this.nama = paramString;
  }
  public String getNama() {
    return this.nama;
  }
}

import java.util.LinkedList;
import java.util.ListIterator;

class KemasanBsr extends Kemasan {
  public KemasanBsr(String paramString) {
    this.dftrKemasan = new LinkedList();
    setNama(paramString);
  }
 
  public int jmlKemasan() {
    int i = 0;
    ListIterator localListIterator = createListIterator();
    while (localListIterator.hasNext()){
      Kemasan localKemasan = (Kemasan)localListIterator.next();
      i += localKemasan.jmlKemasan();
    }
    return i;
  }
  public boolean bertambah(Kemasan paramKemasan){
    paramKemasan.setKemasan(this);
    return this.dftrKemasan.add(paramKemasan);
  }
  public boolean berkurang(Kemasan paramKemasan) {
    ListIterator localListIterator = createListIterator();
    while (localListIterator.hasNext()) {
      Kemasan localKemasan = (Kemasan)localListIterator.next();
      if (localKemasan == paramKemasan){
        localListIterator.remove();
        return true;
      }
    }
    return false;
  }
  public ListIterator createListIterator() {
    ListIterator localListIterator = this.dftrKemasan.listIterator();
    return localListIterator;
  }
}

import java.io.PrintStream;

public class TestKompositKemasan {
  public static void main(String[] paramArrayOfString){
    System.out.println("Buat Kemasan Besar");
    KemasanBsr localKemasanBsr1 = new KemasanBsr("Kemasan Besar");
    System.out.println("Kemasan besar mempunyai " + localKemasanBsr1.jmlKemasan() + " kemasan.");
    System.out.println("Buat barang-1");
    Barang localBarang1 = new Barang("Barang 1");
    System.out.println("jumlah: " + localBarang1.jmlKemasan() + " barang.");
    System.out.println("Buat barang-2");
    Barang localBarang2 = new Barang("Barang 2");
    System.out.println("jumlah: " + localBarang2.jmlKemasan() + " barang.");
    System.out.println("=============================================");
   
    System.out.println("Barang-1 dan Barang-2 dimasukan ke dalm kemasan besar");
    if (localKemasanBsr1.bertambah(localBarang1)) {
      System.out.println("Barang-1 berhasil dimasukan pada kemasan besar");
    } else {System.out.println("Barang-1 tidak berhasil dimasukan pada kemasan besar");
    }
    System.out.println("Kemasan besar sekarang mempunyai " + localKemasanBsr1.jmlKemasan() + " barang.");
    if (localKemasanBsr1.bertambah(localBarang2)) {
      System.out.println("Barang-2 berhasil dimasukan pada kemasan besar");
    } else {System.out.println("Barang-2 tidak berhasil dimasukan pada kemasan besar");
    }
    System.out.println("Kemasan besar sekarang mempunyai " + localKemasanBsr1.jmlKemasan() + "barang.");
    System.out.println("=============================================");
    System.out.println("Buat Kemasan (kecil)");
    KemasanBsr localKemasanBsr2 =new KemasanBsr("Kemasan barang(kecil)");
    System.out.println("Kemasan (kecil) mempunyai " + localKemasanBsr2.jmlKemasan() + " barang.");
    System.out.println("Buat barang-3");
    Barang localBarang3 = new Barang("barang 3");
    System.out.println("jumlah: " +localBarang3.jmlKemasan() + " barang.");
    System.out.println("=============================================");
    System.out.println("Barang-3 dimasukan ke dalam kemasan (kecil)");
    if (localKemasanBsr2.bertambah(localBarang3)) {
      System.out.println("Barang-3 berhasil dimasukan pada kemasan (kecil)");
    } else {System.out.println("Barang-3 tidak berhasil dimasukan pada kemasan (kecil)");
    }
    System.out.println("Kemasan (kecil) sekarang mempunyai" + localKemasanBsr2.jmlKemasan() + " baang.");
    System.out.println("=============================================");
    System.out.println("Kemasan (kecil) dimasukan kedalam kemasan besar");
    if (localKemasanBsr1.bertambah(localKemasanBsr2)) {
      System.out.println("Kemasan (kecil) berhasil dimasukan pada kemasan besar");
    } else {System.out.println("Kemasan (kecil) tidak berhasil dimasukan pada kemasan besar");
    }
    System.out.println("Kemasan besar sekarang mempunyai" + localKemasanBsr1.jmlKemasan() + "barang.");
    System.out.println("=============================================");
    System.out.println("Barang-2 diambil dari kemasan besar");
    if (localKemasanBsr1.berkurang(localBarang2)) {
      System.out.println("Barang-2 berhasil diambil dari kemasan besar");
    } else {System.out.println("Barang-2 tidak berhasil diambil dari kemasan besar");
    }
    System.out.println("Kemasan besar sekarang mempunyai" + localKemasanBsr1.jmlKemasan() + "barang.");
  }
}