BAB II TINJAUAN PUSTAKA II.1. Pengertian sistem Manusia hidup di dunia penuh dengan sistem, di sekeliling manusia apa yang dilihat sebenarnya adalah kumpulan dari suatu sistem. Penerimaan mahasiswa baru, sistem perkuliahan, sistem bisnis, sistem transportasi dan sebagainya merupakan contoh dari sistem. Dengan berbagai pendekatan, beragam pula istilah “sistem” didefinisikan. Sistem adalah suatu pengorganisasian yang saling berinteraksi, saling bergantung dan terintegrasi dalam kesatuan variabel atau komponen. Pendekatan sistem yang lebih menekankan pada prosedur mendefinisikan sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkelompok dan bekerjasama untuk melakukan kegiatan pencapaian sasaran tertentu. Sedangkan pendekatan yang menekankan pada komponen mendefinisikan sistem sebagai kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu. Sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan terkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk tujuan tertentu. (Yakub; 2012 : 1). II.2. Data Dan Informasi Data merupakan bentuk yang masih mentah yang belum dapat bercerita banyak, sehingga perlu diolah lebih lanjut. Data diolah melalui model tertentu menjadi informasi yang dapat dimanfaatkan oleh penerima dalam membuat keputusan dan melakukan tindakan, yang berarti melakukan suatu tindakan lain yang akan membuat sejumlah data kembali. Data yang masih belum diolah akan disimpan dalam bentuk database. Data yang disimpan ini nantinya dapat diambil kembali untuk diolah kembali menjadi informasi. Menurut Ema Utami dan Anggit Dwi Hartanto (2012:66) dimana basis data merupakan sekumpulan data yang disusun secara logis dan dikendalikan secara sentral. Basis data memiliki bagian-bagian penting, misalnya tabel yang digunakan untuk menyimpan data, sedangkan tabel itu sendiri memiliki bagian field atau kolom dan record atau data perbaris. Sebuah basis data bisa memiliki beberapa tabel dan tabel-tabel tersebut dapat saling berhubungan maupun saling lepas. Berikut gambar tentang pemrosesan data yang diolah menjadi informasi yang dapat digunakan oleh pemakai. Database Data Proses Pemakai Gambar II.1. Pemrosesan data menjadi informasi (Sumber : Yakub ; 2012 : 8) Informasi II.3. Sistem Informasi Geografis Istilah sistem informasi geografis merupakan gabungan dari tiga unsur pokok : sistem, informasi, dan geografis. Dengan demikian, pengertian terhadap ketiga unsur – unsur pokok ini akan sangat membantu dalam memahami Sistem Informasi Geografis. Atau, Sistem Informasi Geografis merupakan suatu sistem yang menekankan pada unsur “informasi Geografis”. (Eddy Prahasta ;2009:109). Istilah “Geografis” merupakan bagian dari spasial (keruangan). Kedua istilah ini sering digunakan secara bergantian atau bahkan tertukar satu sama lainnya hingga muncullah istilah ketiga, geospasial. Penggunaan kata “Geografis” mengandung pengertian suatu persoalan atau hal mengenai (wilayah dipermukaan bumi), baik permukaan dua dimensi atau tiga dimensi. Dengan demikian istilah “Informasi Geografis” mengandung pengertian informasi mengenai tempattempat yang terletak dipermukaan bumi, pengetahuan mengenai posisi dimana suatu objek terletak dipermukaan bumi, atau informasi mengenai keteranganketerangan (atribut) objek penting yang terdapat dipermukaan bumi yang posisinya diberikan atau diketahui. Dengan memperhatikan pengertian sistem informasi diatas, maka Sistem Informasi Geografis juga dapat dikatakan sebagai suatu kesatuan formal yang terdiri dari berbagai sumber daya fisik dan logika yang berkenaan dengan objekobjek penting yang terdapat dipermukaan bumi. Jadi, Sistem Informasi Geografis juga merupakan sejenis perangkat lunak, perangkat keras (manusia, prosedur, basis data, dan fasilitas jaringan komunikasi) yang dapat digunakan untuk memfasilitasi proses pemasukan, penyimpanan, manipulasi, menampilkan, dan keluaran data / informasi geografis berikut atribut-atribut terkait. Jika beberapa definisi yang disebutkan diatas diperhatikan dengan tepat. Maka, SIG dapat diuraikan menjadi beberapa sub-sistem sebagai berikut : 1. Data Input Sub-sistem ini bertugas untuk mengumpulkan dan mempersiapkan, dan menyimpan data spasial dan atributnya dari berbagai sumber. Sub-sistem ini pula yang bertanggung jawab dalam mengonversikan atau mentransformasikan format-format dengan aslinya kedalam format (native) yang dapat digunakan oleh perangkat SIG yang bersangkutan. 2. Data Output Sub-sistem ini bertugas untuk menampilkan atau menghasilkan keluaran (termasuk mengekspornya ke format yang dikehendaki) seluruh atau sebagian basis data (spasial) baik dalam bentuk softcopy maupun hardcopy seperti halnya table, grafik, report, peta, dan lain sebagainya. 3. Data Management Sub-sistem ini mengorganisasikan baik data spasial maupun tabel-tabel atribut terkait kedalam sebuah sistem basis data sedemikian rupa hingga mudah dipanggil kembali atau retrieve (di-load ke memori), di-update, dan di-edit. 4. Data Manipulation & Analysis Sub-sistem ini menentukan informasi-informasi yang dapat dihasilkan oleh SIG. selain itu, sub-sistem ini juga melakukan manipulasi (evaluasi dan penggunaan fungsi-fungsi dan operator matematis & logika) dan pemodelan untuk menghasilkan informasi yang diharapkan. (Eddy Prahasta ; 2009:118). Data Manipulation & Analisis SIG Data Input Data Output Data Management Gambar II.2: Ilustrasi sub-sistem SIG (Sumber : Eddy Prahasta ; 2009 :119) SIG merupakan salah satu sistem yang kompleks dan pada umumnya juga (selain yang stand-alone) terintegrasi dengan lingkungan sistem komputer lainnya ditingkat fungsional dan jaringan (network). Eddy Prahasta (2009:120). Jika diuraikan, SIG sebagai sistem terdiri dari beberapa komponen dengan berbagai karakteristiknya sebagai berikut : a. Perangkat keras Pada saat ini SIG sudah tersedia bagi berbagai platform perangkat keras, mulai dari kelas PC desktop, workstation, hingga multi user host yang bahkan dapat digunakan oleh banyak orang secara bersamaan dalam jaringan komputer yang luas, tersebar, berkemampuan tinggi, memiliki ruang penyimpanan (harddisk) yang besar, dan mempunyai kapasitas memori (RAM) yang besar. Walaupun demikian, fungsionalitas SIG tidak terikat secara ketat pada karakteristik-karakteristik fisik perangkat kerasnya. Sehingga keterbatasan memori pada suatu PC (komputer) pun dapat diatasi. b. Perangkat lunak Dari sudut pandang yang lain, SIG bisa juga merupakan sistem perangkat lunak yang tersusun secara modular dimana sistem basis datanya memegang peranan kunci. Pada kasus perangkat SIG tertentu, setiap subsistem diimplementasikan dengan menggunakan perangkat lunak yang terdiri dari beberapa modul hingga tidak mengherankan jika ada perangkat SIG yang terdiri dari ratusan modul program (*.exe) yang masing-masing dapat dieksekusi tersendiri. c. Data & Informasi Geografis SIG dapat mengumpulkan dan menyimpan data atau informasi yang diperlukan baik secara tidak langsung (dengan cara meng-import-nya dari format-format perangkat lunak SIG yang lain) maupun secara langsung dengan cara melakukan digitasi data spasialnya (digitasi on-screen atau head-ups diatas tampilan layar monitor, atau manual dengan menggunakan digitizer) dari peta analog dan kemudian memasukkan data atributnya dari tabel-tabel atau laporan dengan menggunakan keyboard. d. Manajemen Suatu proyek SIG akan berhasil jika dikelola dengan baik dan dikerjakan oleh orang-orang yang memiliki keahlian (kesesuaian dengan jobdescription yang bersangkutan) yang tepat pada semua tingkatan. II.4. Arcview Arcview GIS adalah software yang dikeluarkan oleh ESRI (Environmental Systems Research Institute). Perangkat lunak ini memberikan fasilitas teknis yang berkaitan dengan pengelolaan data spasial. Kemampuan grafis yang baik dan kemampuan teknis dalam pengolahan data spasial tersebut memberikan kekuatan secara nyata pada Arcview untuk melakukan analisis spasial. Kekuatan analisis inilah yang pada akhirnya menjadikan Arcview banyak diterapkan dalam berbagai pekerjaan. Seperti analisis pemasaran, perencanaan wilayah dan tata ruang, sistem informasi persil, pengendalian dampak lingkungan. Menurut Eko Budianto (2010 : 177), Kemampuan Arcview GIS pada berbagai serinya tidaklah diragukan lagi. Mengapa Arcview dapat memiliki keluwesan yang sedemikian hebat? Hal itu disebabkan oleh adanya dukungan dari skrip Avenue. Melalui Avenue ini dapat dibentuk suatu “kemampuan baru” pada Arcview. Tentu saja hal ini membuat Arcview menjadi sangat luwes untuk diterapkan pada berbagai permasalahan spasial. Avenue dapat digunakan untuk “merombak” wajah Arcview sesuai kebutuhan penggunanya. Avenue adalah sebuah skrip atau bahasa pemrograman berorientasi objek (Object Oriented Programming). Dengan avenue ini dapat dibentuk sebuah interface baru pada Arcview, otomasi pekerjaan-pekerjaan yang bersifat berulang (repetitive), ataupun membuat sebuah alur analisis spasial khusus yang belum terdapat pada Arcview tersebut. Avenue banyak digunakan untuk membentuk sebuah sistem informasi aplikatif pada suatu lembaga atau instansi dengan berbasis Arcview GIS. Dialog designer diperlukan untuk membentuk antarmuka penampil data atribut yang menjadi dasar pemilihan objek. Dialog designer yang dipilih adalah bentuk kotak daftar (listbox). Dengan menggunakan dialog ini operator akan memilih informasi apa yang akan dicari. Untuk menghubungkan menu dan tombol dengan berbagai aksi yang diinginkan maka perlu dibentuk skrip atau program. Skrip atau program ini dibentuk menggunakan bahasa Avenue. Setiap aksi yang diperlukan diuraikan menjadi baris-baris perintah pada skrip Avenue dan selanjutnya dikaitkan ke masing-masing menu atau tombol yang bersangkutan (Eko Budiyanto ; 2010:178). II.4.1. Data Spasial Kemampuan grafis yang baik dan kemampuan teknis dalam pengolahan data spasial dapat memberikan kekuatan secara nyata pada Arcview untuk melakukan analisis spasial. Hal ini telah diakui bahwa Sistem Informasi Geografis (SIG) mempunyai kemampuan analisis keruangan (Spatial Analysis) maupun waktu (Temporal Analysis). Dengan kemampuan tersebut SIG dapat dimanfaatkan dalam perencanaan apapun karena pada dasarnya semua perencanaan akan terkait dengan dimensi ruang dan waktu. Dengan demikian setiap perubahan yang terjadi dalam pelaksanaan rencana akan terpantau dan terkontrol secara baik. (Lisa Ambarwati dan Arna Fariza ; Institut Teknologi Sepuluh November). Dalam sebuah sistem informasi ditampilkan berbagai data seperti data shapefile dengan berbagai skala, data atribut yang ditampilkan pada sebuah form, ataupun data penginderaan jauh seperti citra satelit atau foto udara. Berbagai data tersebut saling melengkapi dan memperkuat informasi yang ditampilkan pada sistem informasi tersebut. Data spasial seperti peta dan citra akan memberikan informasi letak atau sebarannya secara spasial. Data atribut akan memberikan uraian data yang berkaitan dengan objek terpilih. Data citra dapat diturunkan setelah melalui beberapa prosedur pengolahan citra. Pengolahan citra dilakukan dengan menggunakan berbagai perangkat lunak pengolah citra. Citra tersebut diregistrasi untuk memberikan presisi secara spasial. Dalam sistem informasi ini citra digunakan bersama dengan data shapefile. Citra dan shapefile di-overlay-kan untuk memberikan ketepatan lokasi pengambilan data. II.5. Database MySQL MySQL adalah software yang berfungsi untuk membuat, mengatur dan mengelola database (misal : data pegawai, keuangan dan akuntansi, dll) secara mudah, cepat, akurat, aman dan terpercaya. MySQL merupakan software RDBMS (Relasional Database Management System) atau server database yang dapat mengelola database dengan sangat cepat, dapat menampung data dalam jumlah sangat besar, dapat diakses oleh banyak user (multi-user), dan dapat melakukan suatu proses secara sinkron atau berbarengan (multi-threaded) (Budi Raharjo ; 2011:21-22). II.6. PHP Bahasa pemrograman adalah bahasa buatan yang digunakan untuk mengendalikan prilaku dari sebuah mesin, biasanya berupa mesin komputer, sehingga digunakan untuk memberitahu komputer tentang apa yang harus dilakukan. (Nita Mayang, Risnandar dan Fauzan Azmi; Politeknik Telkom Bandung). Menurut dokumen resmi PHP, PHP merupakan singkatan dari PHP Hypertext Preprocessor. Ia merupakan bahasa berbentuk skrip yang ditempatkan dalam server dan diproses di server. Hasilnyalah yang dikirimkan ke klien, tempat pemakai menggunakan browser. Secara khusus, PHP dirancang untuk membentuk aplikasi web dinamis. Artinya, ia dapat membentuk suatu tampilan berdasarkan permintaan terkini. Misalnya, anda bisa menampilkan isi database ke halaman web. Pada prinsipnya PHP mempunyai fungsi yang sama dengan skrip-skrip seperti ASP (Active Server Page), cold fusion ataupun perl. Namun perlu diketahui bahwa PHP sebenarnya bisa dipakai secara command line. Artinya, skrip PHP dapat dijalankan tanpa melibatkan web server maupun browser. Kelahiran PHP bermula saat Rasmus Lerdorf membuat sejumlah skrip Perl yang dapat mengamati siapa saja yang melihat-lihat daftar riwayat hidupnya, yakni pada tahun 1994. Skrip-skrip ini selanjutnya dikemas menjadi tool yang disebut “Personal Home Page”. Paket inilah yang menjadi cikal bakal PHP. Pada tahun 1995, Rasmus menciptakan PHP/FI Versi 2. Pada versi inilah pemrograman dapat menempelkan kode terstruktur di dalam tag HTML. Yang menarik, kode PHP juga bisa berkomunikasi dengan database dan melakukan perhitunganperhitungan yang kompleks sambil jalan. Pada awalnya, PHP dirancang untuk diintegrasikan dengan web server Apache. Namun belakangan PHP juga dapat bekerja dengan web server seperti PWS (Personal Web Server), IIS (Internet Information Server), dan Xitami. (Abdul Kadir ; 2008 : 2). II.7. Pengertian UML Menurut Prabowo Pudjo Widodo dan Herlawati (2011:6) UML singkatan dari Unified Modeling Language yang berarti bahasa pemodelan standart. Juga mengartikan sebagai bahasa, berarti UML memiliki sintaks dan semantik. Ketika kita membuat model menggunakan konsep UML ada aturan-aturan yang harus diikuti. Bagaimana elemen-elemen pada model-model yang kita buat berhubungan satu dengan lainnya harus mengikuti standart yang ada. UML bukan hanya sekedar diagram tapi juga menceritakan konteksnya. Ketika pelanggan memesan sesuatu dari sistem, bagaimana transaksinya? Bagaimana sistem mengatasi error yang terjadi? Bagaimana keamananterhadap sistem yang kita buat? Dan sebagainya dapat dijawab dengan UML. UML diaplikasikan untuk maksud tertentu, biasanya antara lain untuk: 1. Merancang perangkat lunak. 2. Sarana komunikasi antara perangkat lunak dengan proses bisnis. 3. Menjabarkan sistem secara rinci untuk analisa dan mencari apa yang diperlukan sistem. 4. Mendokumentasikan sistem yang ada, proses-proses dan organisasinya. II.7.1. Use Case Diagram Dalam konteks UML, tahap konseptualisasi dilakukan dengan pembuatan use case diagram yang sesungguhnya merupakan deskripsi peringkat tinggi bagaimana perangkat lunak (aplikasi) akan digunakan oleh penggunanya. Selanjutnya use case diagram tidak hanya sangat penting pada saat analisis, tetapi juga sangat penting dalam tahap perancangan (design), untuk mencari kelas-kelas yang terlibat dalam aplikasi, dan untuk melakukan pengujian (testing). Menurut Prabowo Pudjo Widodo dan Herlawati (2011:16) Use case menggambarkan external view dari sistem yang akan dibuat modelnya. Juga mengatakan bahwa model use case dapat dijabarkan dalam diagram use case, tetapi yang perlu diingat, diagram tidak identik dengan model karena model lebih luas dari diagram. Komponen pembentuk diagram use case adalah : 1. Aktor (actor), yang menggambarkan pihak yang berperan dalam sistem. 2. Use case, aktivitas/sarana yang disiapkan oleh bisnis/sistem. 3. Hubungan (link), aktor mana saja yang terlibat dalam use case ini. Gambar dibawah ini merupakan salah satu contoh bentuk diagram use case. Penyetoran uang Penarikan uang Nasabah Transfer uang Tambah bunga Teller Gambar II.3. Diagram Use case (Sumber : Prabowo Pudjo Widodo dan Herlawati ; 2011:17) II.7.2. Class Diagram Menurut Prabowo Pudjo Widodo dan Herlawati (2011: 37), Diagram kelas adalah inti dari proses pemodelan objek. Baik forward engineering maupun reverse engineering memanfaatkan diagram ini. Forward engineering adalah proses perubahan model mejadi kode program sedangkan reverse engineering sebaliknya merubah kode program menjadi model. Diagram kelas juga merupakan kumpulan kelas-kelas objek. Class juga didefinisikan sebagai sekumpulan / himpunan objek yang memiliki kesamaan dalam atribut / properti, prilaku (operasi), serta cara berhubungan dengan objek lain. Pada gambar II.4. terlihat bahwa diagram yang lain memberi masukan kepada diagram kelas. Diagram kelas yang baik menghasilkan suatu rancangan sistem atau program yang mendekati kenyataan. Object diagram Use case model Sequence diagram Class diagram Collaboration diagram Activity diagram Statechart diagram Gambar II.4. Hubungan diagram kelas dengan diagram UML lainnya ( Sumber : Prabowo Pudjo Nugroho dan Herlawati ; 2011 :38 ) II.7.3. Activity Diagram Diagram aktivitas lebih memfokuskan diri pada eksekusi dan alur sistem dari pada bagaimana sistem itu dirakit. Diagram ini tidak hanya memodelkan software melainkan memodelkan model bisnis juga. Diagram aktivitas juga menunjukkan aktivitas sistem dalam bentuk kumpulan aksi-aksi. (Prabowo Pudjo Widodo dan Herlawati ; 2011: 143). Apakah langkah yang harus kita lakukan selanjutnya setelah kita membuat use case diagram? Use case diagram merupakan gambaran menyeluruh dan pada umumnya sangatlah tidak terperinci. Oleh karena itu, kita harus memperinci lagi prilaku sistem untuk masing-masing use case yang ada. Apa perkakas (tool) yang bisa kita gunakan? Jika kasus kita cukup sederhana, mungkin kita bisa menggunakan scenario seperti yang tercantum berikut, sementara jika kasusnya cukup kompleks, kita mungkin bisa menggunakan activity diagram agar bisa mendapatkan gambaran yang lebih menyeluruh. II.7.4. Sequence Diagram Diagram sekuensial atau sequence diagram digunakan untuk menunjukkan aliran fungsionalitas dalam use case. Diagram sekuensial adalah diagram yang disusun berdasarkan urutan waktu. Kita membaca diagram sekuensial dari atas ke bawah. Setiap diagram sekuensial mempresentasikan suatu aliran dari beberapa aliran di dalam use case. Jadi dengan kata lain sekuensial diagram menunjukkan aliran fungsionalitas berdasarkan urutan waktu serta kejadian yang nantinya akan menentukan metode/fungsi atribut masing-masing. Dimana fungsi-fungsi tersebut akan diterapkan pada suatu kelas/objek. Kita dapat melihat setiap fungsi atribut dan event-event apa saja yang terjadi. Sehingga melalui diagram sekuensial ini kita dapat merancang suatu program aplikasi yang baik, sehingga dalam menghadapi sebuah kasus yang benar-benar kompleks diagram sekuensial ini sangat membantu. II.8. Database Basis dapat diartikan sebagai markas atau gudang, tempat bersarang atau berkumpul. Sedangkan data merupakan representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep, keadaan, dan sebagainya yang direkam dalam bentuk angka, huruf, symbol, teks, gambar, bunyi atau kombinasinya. Basis data (database) merupakan kumpulan data yang saling berhubungan (punya relasi). Relasi biasanya ditujukan dengan kunci (key) dari tiap file yang ada. Dalam satu file terdapat record-record yang sejenis, sama besar, sama bentuk, yang merupakan satu kumpulan entitas yang seragam. Satu record terdiri dari field-field yang saling berhubungan dan menunjukkan dalam satu pengertian yang lengkap dalam satu record. (Yakub ; 2012 : 51). II.9. Kamus Data Dan Normalisasi Kamus data (data dictionary) merupakan daftar elemen data yang terorganisir dengan definisi yang tetap dan sesuai dengan sistem sehingga user dan analis sistem mempunyai pengertian yang sama tentang input, output, dan data storage. Kamus data adalah katalog fakta tentang data dan kebutuhan informasi dan sistem informasi. (Yakub ; 2012 : 168). Selain digunakan untuk dokumentasi dan mengurangi redudansi, kamus data juga dapat digunakan untuk : a. Memvalidasi diagram arus data dalam hal kelengkapan dan keakuratan. b. Menyediakan suatu titik awal untuk mengembangkan layar dan laporanlaporan. c. Menentukan muatan data yang disimpan dalam file-file. d. Mengembangkan logika untuk proses-proses diagram arus data. Normalisasi (normalize) merupakan salah satu cara pendekatan atau teknik yang digunakan dalam membangun desain lojik basis data relation dangan menerapkan sejumlah aturan dan kriteria standart. Tujuan dari normalisasi adalah untuk menghasilkan struktur tabel yang normal atau baik. Teknik normalisasi adalah upaya agar desain lojik tabel-tabel berada dalam “normal form” (bentuk normal) yang dapat didefinisikan dengan menggunakan ketergantungan fungsi (functional dependency) (Yakub ; 2012 :70). Barang Kota Kode_Suplier ** Kode_Barang* Jumlah_Barang Status* Kota Supplier_3 Kode_Supplier* Status Gambar II.5. Diagram kerelasian antar relasi hasil normalisasi (Sumber : Edhy Sutanta ; 2011 : 183) II.10. Entity Relationship Diagram (ERD) Menurut Yakub (2012 : 60) Entity Relationship Diagram (ERD) untuk mendokumentasikan data perusahaan dengan mengidentifikasikan jenis entitas dan hubungannya. ERD merupakan suatu model jaringan yang menggunakan susunan data yang disimpan pada sistem secara abstrak. ERD juga menggambarakan hubungan antara satu entitas yang memiliki sejumlah atribut dengan entitas yang lain dalam suatu sistem yang terintegrasi. ERD terbagi atas tiga komponen, yaitu entitas (entity), atribut (attribute), dan relasi atau hubungan (relation). Secara garis besar entitas merupakan dasar yang terlibat dalam sistem. Atribut atau field berperan sebagai penjelas dari entitas, dan relasi atau hubungan menunjukkan hubungan yang terjadi antara dua entitas. Berikut adalah keterangan tanda yang digunakan : Jenis Kerelasian Simbol yang digunakan 1 ke- 1 : 1 1 1 ke- n : 1 n n ke- 1 : n 1 n ke- n : n n Gambar II.6. Simbol kerelasian antar entitas (Sumber : Edhy Sutanta ; 2011 :109)