BAB II LANDASAN TEORI 2.1 Konsep Dasar Aplikasi Aplikasi berasal dari kata Aplication yang menurut kamus komputer eksekutif (1993:9), Application adalah masalah yang memakai teknik pemrosesan data aplikasi biasanya mengacu pada komputasi yang diinginkan, atau pemrosesan data. Pengertian aplikasi menurut Yan Tirtobisono (1999:21) adalah istilah yang digunakan untuk pengguna komputer bagi pemecahan masalah. Biasanya istilah aplikasi dipasangkan atau digabungkan dengan suatu perangkat lunak misalnya microsoft office untuk aplikasi perkantoran, akan dapat memberikan makna atau arti baru yaitu suatu program yang ditulis atau dibuat untuk menangani masalah tertentu. 2.2 Konsep Dasar Peta Digital Berikut ini akan dijelaskan mengenai konsep dasar peta, konsep dasar peta digital, karakteristik peta digital. 2.2.1 Konsep Dasar Peta Peta adalah gambaran sebagian atau seluruh muka bumi baik yang terletak di atas maupun di bawah permukaan dan disajikan pada bidang datar pada skala dan proyeksi tertentu (secara matematis). Karena dibatasi oleh skala dan proyeksi maka peta tidak akan pernah selengkap dan sedetail aslinya (bumi), karena itu 11 12 diperlukan penyederhanaan dan pemilihan unsur yang akan ditampilkan pada peta. Peta dalam SIG (Sistem Informasi Geografis) dapat digunakan baik sebagai input maupun sebagai output. Pemetaan merupakan suatu proses yang terdiri dari beberapa tahapan kerja (pengumpulan data, pengolahan data, penyajian data), serta melibatkan beberapa disiplin ilmu (surveying, fotogrametri, pengindraan jauh, kartografi) yang satu sama lain berkaitan. Peta merupakan penyajian grafis dari sebagian atau seluruh permukaan bumi pada suatu bidang datar dengan menggunakan suatu skala dan sistem proyeksi tertentu. Penyajian unsur-unsur permukaan bumi pada suatu peta dilakukan dengan cara memilih, mengeneralisasi data permukaan bumi, sesuai dengan maksud dan tujuan pembuatan peta tersebut. Peta menyajikan sejumlah informasi mengenai permukaan bumi yang diharapkan dapat digunakan secara baik oleh pengguna. Peta mempunyai beberapa fungsi, yaitu : 1. Memperlihatkan posisi atau lokasi relatif dari suatu tempat 2. Memperlihatkan bentuk atau ukuran unsur yang terdapat di permukaan bumi 3. Memperlihatkan ukuran dalam pengertian jarak dan arah 4. Menghimpun serta menyeleksi data permukaan bumi Persyaratan-persyaratan geometrik yang harus dipenuhi oleh peta yang ideal adalah : 1. Jarak antara titik-titik yang terletak di atas peta harus sesuai dengan jarak aslinya di permukaan bumi (dengan memperhatikan faktor skala peta). 13 2. Luas suatu unsur yang direpresentasikan di atas peta harus sesuai dengan luas sebenarnya (dengan memperhaikan faktor skala peta) 3. Sudut atau arah suatu garis yang direpresentasikan di atas peta harus sesuai arah sebenarnya seperti di permukaan bumi. 4. Bentuk suatu unsur yang direpresentasikan di atas peta harus sesuai dengan bentuk yang sebenarnya. 2.2.2 Konsep Dasar Peta Digital Menurut definisi, peta digital adalah representasi fenomena geografik yang disimpan untuk ditampilkan dan diolah oleh komputer. Setiap objek pada peta digital disimpan sebagai sebuah atau sekumpulan koordinat. Sebagai contoh, 10 objek berupa lokasi sebuah titik akan disimpan sebagai sebuah koordinat, sedangkan objek berupa wilayah akan disimpan sebagai sekumpulan koordinat. Beberapa kelebihan penggunaan peta digital dibandingkan dengan peta analog (yang disimpan dalam bentuk kertas atau media cetakan lain), antara lain dalam hal : 1. Peta digital kualitasnya tetap. Tidak seperti kertas yang dapat terlipat, memuai atau sobek ketika disimpan, peta digital dapat dikembalikan ke bentuk asalnya kapanpun tanpa ada penurunan kualitas. 2. Peta digital mudah disimpan dan dipindahkan dari satu media penyimpanan yang satu ke media penyimpanan yang lain. Peta analog yang disimpan dalam bentuk gulungan-gulungan kertas misalnya, memerlukan ruangan yang lebih 14 besar dibanding dengan jika peta tersebut disimpan sebagai peta digital dalam sebuah CD-ROM atau DVD-ROM. 3. Peta digital lebih mudah diperbaharui. Penyuntingan untuk keperluan perubahan data atau perubahan sistem koordinat misalnya, dapat lebih mudah dilakukan menggunakan perangkat lunak tertentu. Pada pemetaan digital berbagai macam jenis peta yang diklasifikasikan berdasarkan sifat, macam, dan skala, dapat diintegrasikan menjadi satu kesatuan. Adapun dalam penggunaannya, pemetaan digital dapat menjadi lebih fleksibel karena banyaknya jumlah informasi yang dimiliki dan mudahnya pengaksesan informasi. Terdapat tiga informasi umum yang dapat dimasukkan pada peta digital, yaitu : 1. Informasi geografis, menyediakan informasi menganai posisi dan bentukbentuk dari fitur geografis yang spesifik. 2. Informasi atribut, menyediakan informasi non-grafis tambahan mengenai tiap-tiap fitur. 3. Informasi tampilan, menjabarkan informasi mengenai bagaimana tampilan fitur pada layar. Bentuk peta digital yang paling sederhana adalah memindahkan media peta yang sebelumnya kertas menjadi gambar pada komputer, misal JPEG tanpa adanya database dengan kemampuan interaktif. 15 2.3 Sistem Informasi Geografis Berikut ini akan dijelaskan mengenai definisi sistem geografis, komponen sistem informasi geografis. 2.3.1 Definisi Sistem Informasi Gografis SIG (Sistem Informasi Geografis) atau dikenal pula dengan GIS(Geographical Information System) merupakan suatu istilah dalam bidang pemetaan yang memiliki ruang lingkup mengenai bagaimana suatu sistem dapat menghubungkan objek geografis dengan informasinya. Definisi GIS selalu berubah karena GIS merupakan bidang kajian ilmu dan teknologi yang relatif masih baru. Beberapa defenisi dari GIS adalah: 1. Arronoff (1989), mendefinisiskan SIG sebagai suatu sistem berbasis komputer yang memiliki kemampuan dalam menangani data bereferensi geografi yaitu pemasukan data, manajemen data (penyimpanan dan pemanggilan kembali),manipulasi dan analisis data, serta keluaran sebagai hasil akhir (output). Hasil akhir (output) dapat dijadikan acuan dalam pengambilan keputusan pada masalah yang berhubungan dengan geografi Arronoff (1989). 2. Menurut Gistut (1994), SIG adalah sistem yang dapat mendukung pengambilan keputusan spasial dan mampu mengintegrasikan deskripsi- deskripsi lokasi dengan karakteristik-karakteristik fenomena yang ditemukan di lokasi tersebut. SIG yang lengkap mencakup metodologi dan teknologi 16 yang diperlukan yaitu data spasial perangkat keras, perangkat lunak dan struktur organisasi Gistut (1994) 3. (Burrough,1986) mendefinisikan SIG adalah sistem berbasis komputer yang digunakan untuk memasukan, menyimpan, mengelola, menganalisis dan mengaktifkan kembali data yang mempunyai referensi keruangan untuk berbagai tujuan yang berkaitan dengan pemetaan dan perencanaan 4. (Purwadhi, 1994) mendefinisikan : a. SIG merupakan suatu sistem yang mengorganisir perangkat keras (hardware), perangkat lunak (software), dan data, serta dapat mendayagunakan system penyimpanan, pengolahan, maupun analisis data secara simultan, sehingga dapat diperoleh informasi yang berkaitan dengan aspek keruangan. b. SIG merupakan manajemen data spasial dan non-spasial yang berbasis komputer dengan tiga karakteristik dasar, yaitu: (i) mempunyai fenomena aktual (variable data non-lokasi) yang berhubungan dengan topik permasalahan di lokasi bersangkutan; (ii) merupakan suatu kejadian di suatu lokasi; dan (iii) mempunyai dimensi waktu. Dari defenisi-definisi tersebut diatas dapat diambil kesimpulan bahwa SIG terdiri atas beberapa subsistem yaitu: datainput, data output, data management , data manipulasi dan analysis (Prahasta, 2005). 17 Gambar 2.1 Hubungan Data SIG Alasan GIS dibutuhkan adalah karena untuk data spatial penanganannya sangat sulit terutama karena peta dan data statistik cepat kadaluarsa sehingga tidak ada pelayanan penyediaan data dan informasi yang diberikan menjadi tidak akurat. 2.3.2 Komponen Sistem Informasi Geografis Ada beberapa komponen sistem informasi geografis, antara lain : 1. Hardware GIS membutuhkan komputer untuk penyimpanan dan pemproresan data. Ukuran dari sistem komputerisasi bergantung pada tipe GIS itu sendiri. GIS dengan skala yang kecil hanya membutuhkan PC (personal computer) yang kecil dan sebaliknya. Ketika GIS yang di buat berskala besar di perlukan spesifikasi komputer yang besar pula serta host untuk client machine yang mendukung penggunaan multiple user. Hal tersebut disebabkan data yang digunakan dalam GIS baik data vektor maupun data raster penyimpanannya 18 membutuhkan ruang yang besar dan dalam proses analisanya membutuhkan memori yang besar dan prosesor yang cepat. Untuk mengubah peta ke dalam bentuk digital diperlukan hardware yang disebut digitizer. 1. Alat masukan data (digitizer, scanner, keyboard omputer, CD reader, diskette reader) 2. Alat penyimpan dan pengolah data (komputer dengan hard disk-nya, tapes or cartridge unit, CD writer) 3. Alat penampil dan penyaji keluaran/informasi (monitor komputer, printer, plotter) Gambar 2.2 Hardware SIG 2. Software Dalam pembuatan GIS di perlukan software yang menyediakan fungsi tool yang mampu melakukan penyimpanan data, analisis dan menampilkan informasi geografis. Dengan demikian, elemen yang harus terdapat dalam komponen software GIS adalah : 19 1. Tool untuk melakukan input dan transformasi data geografis 2. Sistem Manajemen Basis Data (DBMS) 3. Tool yang mendukung query geografis, analisa dan visualisasi 4. Graphical User Interface (GUI) untuk memudahkan akses pada tool geografi. Inti dari software GIS adalah software GIS itu sendiri yang mampu menyediakan fungsi-fungsi untuk penyimpanan, pengaturan, link, query dan analisa data geografi. Modul dasar perangkat lunak SIG: modul pemasukan dan pembetulan data, modul penyimpanan dan pengorganisasian data, modul pemrosesan dan penyajian data, modul transformasi data, modul interaksi dengan pengguna (input query). 3. Data SIG merupakan perangkat pengelolaan basis data (DBMS = Data Base Management System) dimana interaksi dengan pemakai dilakukan dengan suatu sistem antar muka dan sistem query dan basis data dibangun untuk aplikasi multiuser. 2.3.3 Data Sistem Informasi Geografis Sistem informasi geografis bekerja dengan dua model, yaitu model vector dan model raster. 1. Model Raster Model raster adalah bentuk peta yang mengandung kumpulan-kumpulan dari potongan peta berupa grid yang dapat merepresentasikan gambar atau bentuk 20 permukaan. Data raster terdiri dari nilai-nilai dalam bentuk digital yang merepresentasikan suatu gambar. Oleh karena itu dibutuhkan penandaan atau tag agar kumpulan gambar tersebut dapat diposisikan dengan tepat. 2. Model Vektor Pada model ini, suatu objek geografis direpresentasikan secara eksplisit dengan dicantumkannya koordinat objek. Terdapa tiga bentuk objek geografis yaitu titik (point), garis (line), dan area (polygon). Data SIG pada umumnya dibagi menjadi empat kelompok, yaitu peta umum (mengenai jalan, jalan raya, batas wilayah, sungai danau, nama-nama tempat); data dan peta urusan perniagaan (mengenai demografi, layanan, telekomunikasi, iklan); data dan peta lingkungan (mengenai cuaca, lingkungan topografi, sumber daya alam); serta peta rujukan umum (rujukan peta-peta yang bersifat umum seperti peta dunia dan negara). Pada tiap-tiap kelompok data di atas, terdapat sumber yang beragam tempat data didapatkan. Menurut Dhani Gumelar dalam artikelnya mengenai data spasial, data pada peta dapat dihasilkan dari berbagai macam sumber, diantaranya adalah : 1. Citra Satelit; satelit dapat merekam kondisi atau gambaran dari permukaan bumi dengan menggunakan sensor/kamera. 2. Peta Analog; merupakan bentuk tradisional dari data spasial, dimana data ditampilkan dalam bentuk kertas atau film. Seiring dengan perkembangan teknologi, peta analog dapat disimpan dalam format digital dengan menggunakan alat scanner. 21 3. Foto Udara (Aerial Photographs); serupa dengan citra satelit, namun pengambilan gambar dilakukan dari pesawat udara. 4. Data Tabular; berfungsi sebagai atribut bagi data spasial seperti data sensus penduduk, data sosial, dan data ekonomi. 5. Data Statistik; metode pengumpulan data periodik pada tempat pengamatan geografis. Misal data curah hujan. 6. Data tracking; cara pengumpulan data dalam periode tertentu untuk tujuan pemantauan atau pengamatan perubahan, contoh: kebakaran hutan, gunung meletus, debit air sungai. 2.4 Google Maps Berikut ini akan dijelaskan mengenai pengenalan google maps, cara kerja google maps dan google maps api. 2.4.1 Pengenalan Google Maps Google Maps adalah layanan mapping online yang disediakan oleh google. Layanan ini dapat diakses melalui situs http://maps.google.com. Pada situs tersebut kita dapat melihat informasi geografis pada hampir semua wilayah dibumi. Layanan ini interaktif, karena di dalamnya peta dapat digeser sesuai keinginan pengguna, mengubah tingkat zoom, serta mengubah tampilan peta. Google Maps adalah layanan gratis yang diberikan oleh Google dan sangat popular. Google Maps adalah suatu peta dunia yang dapat kita gunakan untuk 22 melihat suatu daerah. Dengan kata lain, Google Maps merupakan suatu peta yang dapat dilihat dengan menggunakan suatu browser. Gambar 2.3 Google Maps Fasilitas yang terdapat pada Google Maps antara lain adalah menjelajah peta; mencari lokasi tertentu, seperti hotel, tempat hiburan, lokasi bisnis; dan menghitung rute dalam berkendara, menghitung rute. Mode map merupakan bentuk peta dasar, yang didalamnya terdapat informasi mengenai nama jalanan, sungai, danau, dan lain-lain. Namun untuk negara Indonesia fitur ini belum tersedia karena terbatasnya database. Selain itu juga terdapat beberapa mode lain, yaitu: 1. Sattelite: Menampilkan gambar muka bumi di seluruh lokasi di dunia yang diambil dari satelit atau pesawat udara. 2. Traffic: Menampilkan informasi mengenai keadaan lalu lintas dengan indikator warna merah, kuning, dan hijau (hanya tersedia di beberapa kota di negara Amerika Serikat). 3. Terrain: Menampilkan citra topografi dari muka bumi. 23 4. Street: Merupakan tampilan yang serupa dengan mode sattelite, namun dapat dilihat dari berbagai sudut (hingga 360 derajat) (hanya tersedia di beberapakota di Amerika Serikat). 2.4.2 Cara Kerja Google Maps Google Maps dibuat dengan menggunakan kombinasi dari gambar peta, database, serta obyek-obyek yang interaktif yang dibuat dengan bahasa pemrograman HTML, Javascript dan AJAX, dan beberapa bahasa pemrograman lainnya. Gambar-gambar peta yang muncul pada layar merupakan hasil komunikasi dari pengguna dengan database pada web server google untuk menampilkan gabungan dari potongan-potongan gambar yang diminta. Keseluruhan citra yang ada diintegrasikan ke dalam suatu database pada Google Server, yang nantinya akan dapat dipanggil sesuai kebutuhan permintaan. Berikut ini akan dijelaskan pada gambar dibawah ini mengenau cara kerja google maps : 24 : Google Maps Database 5:* Result Set 4: Request From Database : Google Maps Server 3: Request Coressponding Image 6:* Retrieve Image : Web Server Database 7: Dinamic HTML Page 2: Javascript+XML : Web Server 1: Request To View 8: Dinamic HTML Page : Browser Gambar 2.4 Cara Kerja Google Maps Web browser merupakan jembatan antara user dan web server. Pada web server terdapat file HTML dan javascript yang berisi program utama aplikasi. Data yang disimpan dalam bentuk XML juga terdapat pada web server, namun karena merupakan database maka terdapat pada file yang terpisah dari HTML dan javascript. Database lokal memiliki informasi mengenai koordinat-koordinat marker, atau line, serta pengelompokkan-pengelompokkannya. Untuk gambar dimana layer tersebut berada, dan untuk mengembalikkan perintah-perintah Google Javascript yang terdapat pada pemrograman, webserver akan mengirimkan request data ke webserver. Setelah terjadi komunikasi antara web server dan database-nya maka dapat diketahui permintaan apa yang perlu dikirimkan ke Google Maps server. Permintaan ini berhubungan dengan gambar dan koordinat peta. Setelah Google Maps server mendapat perintah request, data 25 yang bersangkutan akan diminta dari Google Maps Database. Selanjutnya datadata tersebut diteruskan hingga kembali ke web server dan digabungkan pada web browser. 2.4.3 Google Maps Application Programming Interface (API) Bahasa pemrograman dari Google Maps yang hanya terdiri dari HTML dan Javascript, memungkinkan untuk menampilkan Google Maps di website lain. Kostumisasi dari aplikasi ini dimungkinkan dengan disediakannya client-side scripts dan server-side hooks. Google Maps Application Programming Interface (API) merupakan suatu fitur aplikasi yang dikeluarkan oleh google untuk memfasilitasi pengguna yang ingin mengintegrasikan Google Maps ke dalam website masing-masing dengan menampilkan data point milik sendiri. Dengan menggunakan Google Maps API, Google Maps dapat di-embed pada web site eksternal. Agar aplikasi Google Maps dapat muncul di website tertentu, diperlukan adanya API key. API key merupakan kode unik yang digenerasikan oleh google untuk suatu website tertentu, agar server Google Maps dapat mengenali. Dengan menggunakan Google Maps API, kita dapat menghemat waktu dan biaya untuk membangun aplikasi peta digital yang handal, sehingga kita dapat fokus hanya pada data-data yang akan ditampilkan. Dengan kata lain, kita hanya membuat suatu data sedangkan peta yang akan ditampilkan adalah milik Google sehingga kita tidak dipusingkan dengan membuat peta suatu lokasi, bahkan dunia. 26 Dalam pembutan program Google Map API menggunakan urutan sebagai berikut: 1. Memasukkan Maps API JavaScript ke dalam HTML kita. 2. Membuat element div dengan nama map_canvas untuk menampilkan peta. 3. Membuat beberapa objek literal untuk menyimpan property-properti pada peta. 4. Menuliskan fungsi JavaScript untuk membuat objek peta. 5. Meng-inisiasi peta dalam tag body HTML dengan event onload. 2.5 Konsep Pemodelan Sistem Untuk membangun sistem informasi yang besar dan kompleks, diperlukannya membuat model guna menggambarkan dan mengkomunikasikan secara sederhana rancangan sistem yang dibuatnya kepada pengelola perusahaan, agar sistem dapat dipahami dan dikoreksi. Melalui pemodelan, akan digambarkan aliran data yang akan diproses menjadi informasi dan aliran distribusinya secara sederhana, sehingga arus data dan informasi dapat terlihat secara jelas. Penggambaran pemodelan dapat menggunakan sistem flow chart atau UML. Melalui penggambaran, dapat dilakukan efisiensi aliran data dan informasi sehingga sistem menjadi efisien. 2.5.1 Konsep UML (Unified Modeling Language) Unified Modeling Language (UML) adalah bahasa spesifikasi standar untuk mendokumentasikan, menspesifikasikan, dan membangun sistem perangkat 27 lunak1. Unified Modeling Language (UML) adalah bahasa spesifikasi standar untuk mendokumentasikan, menspesifikasikan, dan membangun sistem perangkat lunak. UML (Unified Modeling Language) juga merupakan sebuah grafik untuk menetukan, visualisasi, kontruksi, dan mendokumentasikan artifact (bagian dari informasi yang digunakan atau dihasilkan dalam suatu proses pembuatan perangkat lunak. Artifact dapat berupa model, deskripsi atau perangkat lunak) dari system perangkat lunak, seperti pada pemodelan bisnis dan system non perangkat lunak lainnya. UML merupakan suatu kumpulan teknik terbaik yang telah terbukti sukses dalam memodelkan system yang besar dan kompleks. UML tidak hanya digunakan dalam proses pemodelan perangkat lunak, namun hampir dalam semua bidang yang membutuhkan pemodelan. Diagram berbentuk grafik yang menunjukkan simbol elemen model yang disusun untuk mengilustrasikan bagian atau aspek tertentu dari sistem. Adapun jenis diagram antara lain Diagram Use Case, Activity Diagram, Sequence Diagram, Class Diagram. Tujuan Penggunaan UML antara lain : 1. Memberikan bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan proses rekayasa. 2. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan. 3. Memberikan model yang siap pakai, bahsa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum. 1 http://id.wikipedia.org/wiki/wiki/Unified_Modeling_Language, diunduh : [20 april 2014/17.34 WIB] 28 4. UML bisa juga berfungsi sebagai sebuah (blue print) cetak biru karena sangat lengkap dan detail. Dengan cetak biru ini maka akan bias diketahui informasi secara detail tentang coding program atau bahkan membaca program dan menginterpretasikan kembali ke dalam bentuk diagram (reserve enginering). 2.5.2 Diagram Use Case Use case diagram digunakan untuk memodelkan proses berdasarkan perspektif pengguna sistem. Use case diagram terdiri atas diagram untuk use case dan actor. Actor merepresentasikan orang yang akan mengoperasikan atau orang yang berinteraksi dengan sistem aplikasi. Use case merepresentasikan operasioperasi yang dilakukan oleh actor. Use case digambarkan berbentuk elips dengan nama operasi dituliskan di dalamnya. Actor yang melakukan operasi dihubungkan dengan garis lurus ke use case. Use case Diagram digunakan untuk mengambarkan interaksi antara pengguna sistem (actor) dengan kasus (use case) yang disesuaikan dengan langkah-langkah (scenario) yang telah ditentukan. Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. 29 Gambar 2.5 Bentuk Use case diagram 2.5.3 Activity Diagram Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya sebelumnya (internal processing). Oleh arena itu state activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. 30 Gambar 2.6 Activity Diagram 2.5.4 Sequence Diagram Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait).Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkahlangkahyang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali berapa yang trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internadan output apa yang dihasilkan. 31 2.5.5 Class Diagram Class Diagram adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut atau properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. Gambar 2.7 Class Diagram Class memiliki tiga area pokok : 1. Nama (dan stereotype) 2. Atribut 3. Metoda Atribut dan metoda dapat memiliki salah satu sifat berikut : 1. Private, tidak dapat dipanggil dari luar class yang bersangkutan 2. Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak anak yang mewarisinya 3. Public, dapat dipanggil oleh siapa saja 32 Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung resolusi metoda pada saat run sesuai dengan perkembangan class model, class dapat dikelompokkan menjadi package. Hubungan Antar Class : 1. Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain. Panah navigability menunjukkan arah query antar class. 2. Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas..”). 3. Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari class lain dan mewarisi semua atribut dan metoda class asalnya dan menambahkan fungsionalitas baru, sehingga ia disebut anak dari class yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi. 4. Hubungan dinamis, yaitu rangkaian pesan (message) yang di-passing dari satu class kepada class lain. Hubungan dinamis dapat digambarkan dengan menggunakan sequence diagram yang akan dijelaskan kemudian, contoh dapat dilihat gambar 2.8 33 Gambar 2.8 Hubungan class diagram 2.6 Internet Internet singkatan dari Interconnected Network. Jika diterjemahkan berarti jaringan yang saling terhubung. Internet adalah kumpulan komputer yang saling terhubung satu sama lain dalam suatu jaringan. Karena merupakan sebuah jaringan, maka sebuah komputer yang terhubung ke internet berarti terhubung dengan semua komputer di seluruh dunia yang juga terhubung ke internet, dimana semua komputer tersebut dapat mengakses semua informasi yang ada di internet. Internet merupakan jaringan komputer yang dibentuk oleh Departemen Pertahanan Amerika Serikat di tahun 1969, melalui proyek ARPA yang disebut ARPANET (Advanced Research Project Agency Network), di mana mereka mendemonstrasikan bagaimana dengan hardware dan software komputer yang berbasis UNIX, kita bisa melakukan komunikasi dalam jarak yang tidak terhingga melalui saluran telepon. Tujuan awal dibangunnya proyek itu adalah untuk keperluan militer untuk mengatasi masalah bila terjadi serangan nuklir dan untuk menghindari terjadinya informasi terpusat, yang apabila terjadi perang dapat 34 mudah dihancurkan. Pada mulanya ARPANET hanya menghubungkan 4 situs saja yaitu Stanford Research Institute, University of California, Santa Barbara, University of Utah, di mana mereka membentuk satu jaringan terpadu di tahun 1969, dan secara umum ARPANET diperkenalkan pada bulan Oktober 1972. Tidak lama kemudian proyek ini berkembang pesat di seluruh daerah, dan semua universitas di negara tersebut ingin bergabung, sehingga membuat ARPANET kesulitan untuk mengaturnya. Oleh sebab itu ARPANET dipecah manjadi dua, yaitu "MILNET" untuk keperluan militer dan "ARPANET" baru yang lebih kecil untuk keperluan nonmiliter seperti, universitas-universitas. Gabungan kedua jaringan akhirnya dikenal dengan nama DARPA internet, yang kemudian disederhanakan menjadi internet. 2.7 Situs Web (Web site) Situs web (bahasa Inggris: web site) atau sering disingkat dengan istilah situs adalah sejumlah halaman web yang memiliki topik saling terkait, terkadang disertai pula dengan berkas-berkas gambar, video, atau jenis-jenis berkas lainnya. Sebuah situs web biasanya ditempatkan setidaknya pada sebuah server web yang dapat diakses melalui jaringan seperti internet, ataupun jaringan wilayah lokal (LAN) melalui alamat internet yang dikenali sebagai URL. Sebuah halaman web merupakan berkas yang ditulis sebagai berkas teks biasa yang diatur dan dikombinasikan sedemikian rupa dengan instruksi-instruksi berbasis HTML, atau XHTML, kadang-kadang pula disisipi dengan sekelumit 35 bahasa skrip. Berkas tersebut kemudian diterjemahkan oleh web browser dan ditampilkan seperti layaknya sebuah halaman pada monitor komputer. Halamanhalaman web tersebut diakses oleh pengguna melalui protokol komunikasi jaringan yang disebut sebagai HTTP, sebagai tambahan untuk meningkatkan aspek keamanan dan aspek privasi yang lebih baik, situs web dapat pula mengimplementasikan mekanisme pengaksesan melalui protokol HTTPS. 2.7.1 Sejarah Situs web Penemu situs web adalah Sir Timothy John Tim Berners-Lee, sedangkan situs web yang tersambung dengan jaringan pertamakali muncul pada tahun 1991. Maksud dari Tim ketika merancang situs web adalah untuk memudahkan tukar menukar dan memperbarui informasi pada sesama peneliti di tempat ia bekerja. Pada tanggal 30 April 1993, CERN (tempat dimana Tim bekerja) mengumumkan bahwa WWW dapat digunakan secara gratis oleh publik. 2.7.2 Kategori Situs web Situs Web dapat dikategorikan menjadi dua, yaitu situs web statis dan situs web dinamis. 1. Situs web statis Situs web statis merupakan situs web yang memiliki isi tidak dimaksudkan untuk diperbarui secara berkala sehingga pengaturan ataupun pengubahan isi atas situs web tersebut dilakukan secara manual. Situs web statis biasanya merupakan HTML yang ditulis pada editor teks dan disimpan dalam bentuk .html atau .htm. 36 2. Situs web dinamis Situs web dinamis merupakan situs web yang secara spesifik didesain agar isi yang terdapat dalam situs tersebut dapat diperbarui secara berkala dengan mudah. Sesuai dengan namanya, isi yang terkadung dalam situs web ini umumnya akan berubah setelah melewati satu periode tertentu. Situs berita adalah salah satu contoh jenis situs yang umumnya mengimplementasikan situs web dinamis. Untuk memungkinkan server web menciptakan halaman web pada saat pengguna mengaksesnya, umumnya pada server web dilengkapi dengan mesin penerjemah bahasa skrip (PHP, ASP, JSP, atau lainnya), serta perangkat lunak sistem manajemen basisdata relasional seperti MySQL. 2.8 Web Server Web server Apache merupakan software yang memberikan layanan data yang berfungsi menerima permintaan HTTP atau HTTPS dari klien yang dikenal dengan browser web dan mengirimkan kembali hasilnya dalam bentuk halaman halaman web yang umumnya berbentuk dokumen HTML. Apache merupakan web server yang paling banyak dipergunakan di Internet. Program ini pertama kali didesain untuk sistem operasi lingkungan UNIX. Namun demikian, pada beberapa versi berikutnya Apache mengeluarkan programnya yang dapat dijalankan di Windows NT. 37 2.9 Pemrograman Web Ada 2 kategori dalam pemrograman web, yaitu pemrograman Server Side dan Client Side. Pada pemrograman Server Side, perintah-perintah program atau script dijalankan di server web, kemudian hasil dikirimkan ke browser dalam bentuk HTML biasa. Adapun pada Client Side, perintah program dijalankan pada browser web sehingga ketika klien meminta dokumen script maka script dapat didownload dari server kemudian dijalankan pada browser yang bersangkutan. 2.9.1 Mengenal Script Client Side Pemrograman web yang tergolong dalam Client Side seperti HTML, seperti JavaScript, CSS, dan lain-lain. Adapun penjelasan pemrograman web yang tergolong dalam Client Side adalah sebagai berikut : 1. HTML HTML adalah singkatan dari HyperText MarkUP Language merupakan bahasa pemrograman utama yang digunakan untuk membuat halaman web. HTML adalah dokumen teks murni yang dapat dibuat dengan editor web sembarang seperti Notepad. Dokumen ini akan dieksekusi oleh sebuah browser (misal Internet Explorer), sehingga browser mampu menghasilkan suatu dokumen yang sesuai dengan keinginan seorang designer atau programmer web. Contoh program : 38 <html> <head> <title>Judul Website</title> </head> <body> <h3>Bagian Isi</h3> </body> </html> 2. CSS (Cascading Style Sheet) CSS adalah singkatan dari Cascading Style Sheet, digunakan untuk mengatur style atau tampilan dari dokumen HTML atau CSS adalah suatu bahasa stylesheet yang digunakan untuk mengatur tampilan suatu website, baik tata letak, jenis huruf, warna, dan semua yang berhubungan dengan tampilan atau gaya suatu web. Struktur penulisan script dari JavaScript mempunyai bentuk sebagai berikut : <style type="text/css"> .style1{font-style: italic;background:#000000;} </style> 3. JavaScript JavaScript diperkenalkan pertama kali oleh Netscape pada tahun 1995. Pada awalnya bahasa ini dinamakan ”LiveScript” kemudian sejalan dengan kerja sama antara Netscape dan Sun (pengembang bahasa pemrograman java) maka Netscape memberi nama ”JavaScript”. JavaScript adalah bahasa 39 pemrograman yang khusus digunakan untuk membuat halaman web menjadi lebih hidup atau interaktif. Bahasa ini adalah bahasa pemrograman untuk memberikan kemampuan tambahan terhadap bahasa HTML dengan mengizinkan pengeksekusian perintah di sisi klien, yang artinya di sisi browser bukan di sisi server web. Struktur penulisan script dari JavaScript mempunyai bentuk sebagai berikut : <SCRIPT language=”Javascript”> //Script Javascript ditulis disini </SCRIPT> 4. Jquery JQuery adalah pustaka JavaScript kecil bersumber terbuka yang menekankan pada interaksi antara JavaScript dan HTML. Pustaka ini dirilis pada Januari 2006 di BarCamp NYC oleh John Resig dan berlisensi ganda di bawah Lisensi MIT Dan GPL. Struktur penulisan JQuery mempunyai bentuk sebagai berikut : <script type="text/javascript"> $(document).ready(function(){ $("#id_table1").show(); $("# id_table2").hide(); $("#id_table1").css("backgroundcolor","#3d669 e"); }); </script> 5. TinyMCE TinyMCE adalah sebuah platform web editor teks bukan nama bahasa 40 pemrograman yang dibuat berdasarkan JavaScript dan HTML yang dikeluarkan sebagai open source dibawah lisensi LGPL Oleh Moxiecode Systems AB. TinyMCE mempunyai kemampuan untuk mengkonversi TextArea HTML atau Elemen HTML lainya menjadi tampilan teks editor. TinyMCE sangat mudah untuk berintergrasi dengan CMS lainya, TinyMCE telah banyak dipakai oleh website terkenal seperti Jomlah dan untuk CMS Indonesia yang menggunakan adalah AuraCMS. Penulis juga mengunakan TinyMCE untuk Pembuatan Sistem. dapat dilihat gambar 2.3 Gambar 2.9 Editor teks TinyMCE 2.9.2 Mengenal Script Server Side Pemrograman Web yang tergolong Server Side adalah PHP. Script pemrograman server side tidak di tampilkan pada browser client, yang ditampilkan hanyalah hasil parsing HTML. 1. PHP (Hypertext Preprocessor) PHP ditulis (diciptakan) oleh Rasmus Lerdorf, seorang software engineer asal Greenland sekitar tahun 1995. PHP adalah bahasa pemrograman yang berfungsi untuk membuat website dinamis maupun aplikasi web. Berbeda 41 dengan HTML yang hanya bisa menampilkan konten statis, PHP bisa berinteraksi dengan database, file dan folder, sehingga membuat PHP bisa menampilkan konten yang dinamis dari sebuah website. Blog, Toko Online, CMS, Forum, dan Website Social Networking adalah contoh aplikasi web yang bisa dibuat oleh PHP. PHP adalah bahasa scripting, bukan bahasa tag-based seperti HTML. PHP termasuk bahasa yang cross-platform, ini artinya PHP bisa berjalan pada sistem operasi yang berbeda-beda (Windows, Linux, atau pun Mac). Program PHP ditulis dalam file plain text (teks biasa) dan mempunyai akhiran “.php”. 2.10 Macromedia Dreamweaver Macromedia Dreamweaver adalah software yang digunakan oleh web desainer ataupun web programmer untuk mengembangkan situs web. Ruang kerja, fasilitas dan kemampuan Macromedia Dreamweaver mampu meningkatkan produktivitas dan efektivitas dalam mendesain ataupun membangun situs web. Dreamweaver juga dilengkapi dengan fasilitas yang cukup lengkap. Macromedia Dreamweaver menyertakan banyak perangkat yang berkaitan dengan pengkodean dan fitur seperti HTML, CSS, JavaScript dan juga PHP. 2.10.1 Ruang Kerja Macromedia Dreamweaver Ruang kerja pada Draemweaver memiliki komponen yang memberikan fasilitas dan ruang untuk menuangkan kreasi dalam bekerja, seperti yang terlihat pada Gambar 2.5. Komponen yang disediakan oleh Dreamweaver antara lain 42 adalah Insert bar, Document toolbar, Document window, Panel groups, Site panel, Property inspector. Berikut bagian-bagian yang terdapat pada jendela kerja dari Dreamweaver . Gambar 2.10 Jendela Kerja Dreamweaver 1. Insert Bar Insert Bar merupakan kumpulan menu yang digunakan untuk memasukkan sebuah objek atau fungsi lainnya ke dalam jendela dokumen. Contoh: image, Layer, Tabel dan lain-lain. 2. Document Toolbar Document Toolbar digunakan sebagai penempatan file-file yang telah dibuka dan sekaligus untuk menampilkan nama dari file tersebut. Document Toolbar juga mempunyai tiga buah tab yang dapat membantu Anda mendesain web dengan mengubah tampilan dari jendela dokumen, diantaranya Code, Split, Design. 43 3. Document Window Document Window atau biasa disebut dengan jendela dokumen, merupakan tempat untuk menampilkan objek-objek atau kode program dari tab code, split, dan design. 4. Panels Groups Panel Group berfungsi untuk mengatur halaman web yang telah Anda buat. Contoh : Panel File, berfungsi untuk mencari dan mengetahui letak halaman file-file yang telah di buat. 5. Property Inspector Property Inspector berfungsi untuk mengetahui atau mengubah property dari sebuah objek. Contoh : untuk penulisan sebuah teks, Anda dapat mengubah font, color, dan size dari teks tersebut dengan menggunakan Property Inspector. 2.11 MYSQL Database Server Database server adalah sebuah program yang bertugas melayani permintaan query database dari client. Beberapa produk database server yang banyak digunakan adalah MySQL. MySQL merupakan program database relasional yang gratis di bawah lisensi GNU General Public License, MySQL dikembangkan oleh MYSQL AB sebuah perusahaan komersial yang membangun layanan bisnisnya melalui database MySQL. MySQL (My Structured Query Language) adalah sistem manajemen database relasional. Suatu database relasional menyimpan data dalam tabel-tabel 44 terpisah, hal ini memungkinan kecepatan dan fleksibilitas. Tabel-tabel yang dihubungkan dengan relasi yang ditentukan membuatnya bisa mengkombinasikan data dari beberapa tabel pada suatu permintaan. 2.12 Pariwisata Secara umum pariwisata merupakan suatu perjalanan yang dilakukan seseorang untuk sementara waktu yang diselenggarakan dari suatu tempat ke tempat yang lain dengan meninggalkan tempat semula dan dengan suatu perencanaan atau bukan maksud untuk mencari nafkah di tempat yang dikunjunginya, tetapi semata-mata untuk menikmati kegiatan pertamasyaan atau rekreasi untuk memenuhi keinginan yang beraneka ragam. Menurut Kodhyat (1998) pariwisata adalah perjalanan dari suatu tempat ketempat lain, bersifat sementara, dilakukan perorangan atau kelompok, sebagai usaha mencari keseimbangan atau keserasian dan kebahagian dengan lingkungan dalam dimensi sosial, budaya, alam dan ilmu. Sedangkan Gamal (2002), pariwisata didefinisikan sebagai bentuk. suatu proses kepergian sementara dari seorang, lebih menuju ketempat lain diluar tempat tinggalnya. Dorongan kepergiannya adalah karena berbagai kepentingan baik karena kepentingan ekonomi, sosial, budaya, politik, agama, kesehatan maupun kepentingan lain. Selanjutnya Burkart dan Medlik (1987) menjelaskan pariwisata sebagai suatu trasformasi orang untuk sementara dan dalam waktu jangka pendek ketujuantujuan di luar tempat di mana mereka biasanya hidup dan bekerja,dan kegiatan kegiatan mereka selama tinggal di tempat-tempat tujuan itu. 45 Menurut WTO (1999), yang dimaksud dengan pariwista adalah kegiatan manusia yang melakukan perjalanan ke dan tinggal di daerah tujuan di luar lingkungan kesehariannya. Sedangkan menurut Undang - Undang RI nomor 10 tahun 2009 tentang kepariwisataan dijelaskan bahwa wisata adalah kegiatan perjalanan yang dilakukan oleh seseorang atau sekelompok orang dengan mengunjungi tempat tertentu untuk tujuan rekreasi, pengembangan pribadi, atau mempelajari keunikan daya tarik wisata yang dikunjungi dalam waktu sementara.