BAB II LANDASAN TEORI 2.1 Defenisi Aplikasi Pengertian mengenai aplikasi oleh para ahli ada banyak antara yaitu: 1. Menurut Dhanta [9] , aplikasi (application) adalah software yang dibuat oleh suatu perusahaan komputer untuk mengerjakan tugas-tugas tertentu, misalnya Microsoft Word, Microsoft Excel. 2. Aplikasi adalah satu unit perangkat lunak yang dibuat untuk melayani kebutuhan akan beberapa aktivitas [3]. 3. Menurut Kamus Kamus Besar Bahasa Indonesia adalah penerapan dari rancang sistem untuk mengolah data yang menggunakan aturan atau ketentuan bahasa pemrograman tertentu. Aplikasi dapat digolongkan menjadi beberapa kelas, antara lain: 1. Enterprise Digunakan untuk organisasi yang cukup besar dengan maksud menghubungkan aliran data dan kebutuhan informasi antar bagian, contoh: IT Helpdesk, Travel Management dan lain-lain. 2. Enterprise Support Sebagai aplikasi pendukung dari Enterprise, contohnya: Database Management, Email Server dan Networking System. 3. Individual Worker Sebagai aplikasi yang biasa digunakan untuk mengolah/edit data oleh tiap individu. Contoh : Ms.Office, Photoshop, Acrobat Reader dan lain-lain. 4. Aplikasi Akses Konten adalah aplikasi yang digunakan oleh individu (hanya) untuk mengakses konten tanpa kemampuan untuk mengolah atau mengedit datanya melainkan hanya melakukan kustomisasi terbatas. Contoh : Games, Media Player, Web Browser. 5. Aplikasi Pendidikan Biasanya berbentuk simulasi dan mengandung konten yang spesifik untuk pembelajaran. II-1 II-2 6. Aplikasi Simulasi Biasa digunakan untuk melakukan simulasi penelitian, pengembangan dan lain-lain. Contoh : Simulasi pengaturan lampu lalu lintas. 7. Aplikasi Pengembangan Media Berfungsi untuk mengolah/mengembangkan media biasanya untuk kepentingan komersial, hiburan dan pendidikan. Contoh : Digital Animation Software, AudioVideo Converter dan lain-lain. 8. Aplikasi Mekanika dan Produk Dibuat sebagai pelaksana/pengolah data yang spesifik untuk kebutuhan tertentu. Contoh : Computer Aided Design (CAD), Computer Aided Engineering (CAE), SPSS dan lain-lain. 2.2 Defenisi Wisata Istilah pariwisata berasal dari bahasa Sansekerta yang terdiri dari dua suku kata yaitu pari dan wisata. Pari berarti berulang-ulang atau berkali-kali, sedangkan wisata berarti perjalanan atau bepergian. Jadi pariwisata berarti perjalanan yang dilakukan secara berulang-ulang [1] Pariwisata menurut UU No. 9 Tahun 1990 adalah segala seuatu yang berhubungan dengan wisata termasuk pengusahaan, daya tarik dan atraksi wisata serta usahausaha yang berhubungan dengan penyelenggaraan pariwisata. Unsur-unsur yang terlibat dalam industri pariwisata meliputi hal-hal sebagai berikut [8]: 1. Akomodasi, tempat seseorang untuk tinggal sementara. 2. Jasa Boga dan Restoran, industri jasa di bidang penyelenggaraan makanan dan minuman yang dikelola secara komersial. 3. Transportasi dan Jasa Angkutan, industri usaha jasa yang bergerak di bidang angkutan darat, laut dan udara. 4. Atraksi Wisata, kegiatan wisata yang dapat menarik perhatian wisatawan atau pengunjung. 5. Cinderamata (Souvenir), benda yang dijadikan kenang-kenangan untuk dibawa oleh wistawan pada saat kembali ke tempat asal. II-3 6. Biro Perjalanan, badan usaha pelayanan semua proses perjalanan dari berangkat hingga kembali. 2.3 Pengertian Website Situs web adalah suatu halaman web yang saling berhubungan yang umumnya berada pada peladen yang sama berisikan kumpulan informasi yang disediakan secara perorangan, kelompok, atau organisasi. 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. Gabungan atas semua situs yang dapat diakses publik di Internet disebut pula sebagai World Wide Web atau lebih dikenal dengan singkatan WWW. Meskipun setidaknya halaman beranda situs Internet umumnya dapat diakses publik secara bebas, pada prakteknya tidak semua situs memberikan kebebasan bagi publik untuk mengaksesnya, beberapa situs web mewajibkan pengunjung untuk melakukan pendaftaran sebagai anggota, atau bahkan meminta pembayaran untuk dapat menjadi aggota untuk dapat mengakses isi yang terdapat dalam situs web tersebut. Halaman-halaman 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.4 Pengertian PHP PHP (PHP: Hypertext Processor) adalah skrip bersifat server-side yang di tambahkan ke dalam HTML. PHP merupakan singkatan dari Personal Home Page tools. Sifat server-side berarti pengerjaan skrip akan dilakukan server, baru hasilnya akan dikirim ke browser. Keunggulan dari sifat server-side antar lain : 1. Tidak diperlukan kompabilitas browser atau harus menggunakan browser tertentu, karena serverlah yang akan mengerjakan skrip PHP. Hasil yang dikirim ke browser umumnya bersifat text atau gambar saja sehingga pasti dikenal oleh browser apapun. II-4 2. Dapat memanfaatkan sumber-sumber aplikasi yang dimiliki oleh server, misalnya koneksi database. 3. Skrip tidak dapat ‘dilihat’ dengan menggunakan fasilitas HTML source. Contoh skrip php adalah sebagai berikut: <html> <head><title>Judul Modul</title></head> <body><?echo”<h1>Hallo apa kabar?</h1>”;?></body> </html> Setelah skrip ini dikerjakan di server, server akan memberikan output ke browser sebagai berikut: <html> <head><title>Judul Modul</title></head> <body><h1>Hallo apa kabar?</h1></body> </html> Output inilah yang akan dieksekusi oleh browser. Dengan output tag-tag HTML biasa, maka output tersebut dapat dieksekusi oleh browser apapun. 2.4.1 Kelebihan PHP PHP dapat melakukan semua aplikasi program CGI, seperti mengambil nilai form, menghasilkan halaman web yang dinamis, serta mengirim dan menerima cookies. PHP juga dapat berkomunikasi dengan layanan-layanan yang menggunakan protocol IMAP, SNMAP, NNTP, POP3, HTTP, dan lain-lain. Tetapi kelebihan PHP yang paling signifikan adalah dukungan kepada bayanyak database. Salah satu kelebihan bahasa pemrograman PHP adalah mempunyai sifat embedded, artinya disisipkan kedalam tag-tag HTML. Untuk konektifitas ke database, bahasa pemrograman PHP memiliki banyak fasilitas (library fungsi) yang memungkinkan untuk mengakses database. Kecepatan akses dengan menggunakan engine/driver yang khusus untuk setiap database merupakan satu kelebihan dan kekurangan. Kelebuhannya adalah dari sisi kecepatan tidak dapat disangkal, karena dibuat khusus fungsinya. Kekurangannya adalah karena II-5 ketidakseragaman nama fungsi (perintah), sehingga sulit bagi aplikasi yang dihasilkan yang dikatakan independent terhadap database yang digunakan. Karakteristik PHP sebagai bahasa pemrograman mudah dipahami oleh programmer, disamping sintak yang tidak rumit tetapi juga untuk konektifitas ke database dalam programnya mirip dengan bahasa C++. Sistem Informasi PCOPT yang akan dibuat ini merupakan sistem informasi online, maka dari itu bahasa pemograman yang mendukung aplikasi tersebut ialah PHP. PHP merupakan script untuk pemrograman script web server-side. System operasi yang digunakan adalah Windows XP. 2.4.2 Kekurangan PHP Selain kelebihan PHP, PHP juga mempunyai kekurangan. Namun masalah kekurangannya sangat sedikit. Diantaranya : 1. PHP Tidak mengenal Package. 2. Jika tidak di encoding, maka kode PHP dabat dibaca semua orang & untuk meng encodingnya dibutuhkan tool dari Zend yang mahal sekali biayanya. 3. PHP memiliki kelemahan keamanan. Jadi Programmer harus jeli & berhati-hati dalam melakukan pemrograman & Konfigurasi PHP. 2.5 Database MySQL 2.5.1 Pengertian MySQL SQL (Structure Query Language) adalah bahasa pemrograman standar yang digunakan untuk mengakses server database. Sejak tahun 70-an bahasa ini telah dikembangkan oleh IBM, yang kemudian diikuti oleh adanya Oracle, Informix, dan Sybase. Dengan menggunakan SQL, proses akses database menjadi user-friendly dibandigkan pemrograman lainnya seperti dbase ataupun clipper yang masih menggunakan perintah-perintah pemrograman murni. MySQL adalah sebuah server database SQL multiuser dan multi thread. SQL sendiri adalah salah satu bahasa database yang paling popular di dunia. II-6 2.5.2 Keunggulan MySQL Bahasa database MySQL memiliki keunggulan, diantaranya: 1. MySQL merupakan program yang multi-Threade yang dapat dipasang pada server yang memiliki multi CPU. 2. Didukung prohram-program umum seperti : C, C++, Java, Perl, PHP, Python, TCL API, dan lain sebagainya. 3. Bekerja pada berbagai plat form (tersedia berbagai versi untuk berbagai system operasi). 4. Memiliki jenis kolom yang cukup banyak sehingga memudahkan konfigurasi system database. 5. Memiliki system yang cukup baik dengan verifikasi host. 6. Mendukung record yang memiliki kolom dengan panjang tetap atau panjang bervariasi, dan masih banyak keunggulan lainnya. 7. Mendukung ODBC untuk Sistem Operasi Microsoft Windows. 8. MySQl merupakan software yang free dan bisa di download di www.mysql.com sedangkan software database lainnya merupakan software yang harus di beli. 9. MySQl dan PHP saling terintegrasi, maksudnya adalah pembuatan database dengan mengunakan sintak PHP dapat dibuat. 2.6 Konsep Logika Fuzzy Teori fuzzy diperkenalkan pertama kali oleh Lotfi A. Zadeh pada tahun 1965 pada presentasinya mengenai Fuzzy Sets. 2.6.1 Pengertian Logika Fuzzy Logika fuzzy adalah suatu cara yang tepat untuk memetakan ruang input kedalam suatu ruang output.[6] 2.6.2 Himpunan Fuzzy Himpunan tegas (crisp) A didefinisikan oleh item-item yang ada pada himpunan itu. Jika a.A, maka nilai yang berhubungan dengan a adalah 1. namun jika a.A, maka nilai yang berhubungan dengan a adalah 0. notasi A = {x|P(x)} menunjukkan bahwa A berisi item x dengan p(x) benar. Jika XA merupakan II-7 fungsi karakteristik A dan properti P, maka dapat dikatakan bahwa P(x) benar, jika dan hanya jika XA(x)=1 (Kusumadewi, 2003) [6]. Himpunan Fuzzy didasarkan pada gagasan untuk memperluas jangkauan fungsi karakteristik sedemikian hingga fungsi tersebut akan mencakup bilangan real pada interval [0,1]. Nilai keanggotaannya menunjukkan bahwa suatu item dalam semesta pembicaraan tidak hanya berada pada 0 atau 1, namun juga nilai yang terletak diantaranya. Dengan kata lain, nilai kebenaran suatu item tidak hanya benar atau salah. Nilai 0 menunjukkan salah, nilai 1 menunjukkan benar, dan masih ada nilai-nilai yang terletak antara benar dan salah. 2.6.3 Atribut Himpunan Fuzzy Himpunan fuzzy memiliki 2 atribut, yaitu [6]: 1) Linguistik, yaitu penamaan suatu grup yang mewakili suatu keadaan atau kondisi tertentu dengan menggunakan bahasa alami. 2) Numeris, yaitu suatu nilai (angka) yang menunjukkan ukuran dari suatu variabel. 2.6.4 Fungsi Keanggotaan Fungsi Keanggotaan (membership function) adalah suatu kurva yang menunjukkan pemetaan titik-titik input data ke dalam nilai keanggotaannya (sering juga disebut dengan derajat keanggotaan) yang memiliki interval antara 0 sampai 1. Salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah dengan melalui pendekatan fungsi. Ada beberapa fungsi yang bisa digunakan. 1. Representasi Kurva-S Kurva PERTUMBUHAN dan PENYUSUTAN merupakan kurva-S atau sigmoid yang berhubungan dengan kenaikan dan penurunan permukaan secara tak linear. II-8 Gambar 2.1 Karakteristik fungsi kurva -S 2. Representasi Kurva BETA Kurva BETA berbentuk lonceng didefinisikan dengan 2 parameter, yaitu nilai pada domain yang menunjukkan pusat kurva (ϒ), dan setengah lebar kurva (β). 2.6.5 Operator Dasar Zadeh untuk Operasi Himpunan Fuzzy Seperti halnya himpunan konvensional, ada beberapa operasi yang didefinisikan secara khusus untuk mengkombinasi dan memodifikasi himpunan fuzzy. Nilai keanggotaan sebagai hasil dari operasi 2 himpunan sering dikenal dengan nama fire strength atau α -predikat. Ada 3 operator dasar yang diciptakan oleh Zadeh [6], yaitu: 1. Operasi AND Operator ini berhubungan dengan operasi interseksi pada himpunan. α-predikat sebagai hasil operasi dengan operator AND diperoleh dengan mengambil nilai keanggotaan terkecil antar elemen pada himpunan-himpunan yang bersangkutan. µ A∩B = min(µA [x], µB [y]) 2. Operasi OR Operator ini berhubungan dengan operasi union pada himpunan. α- predikat sebagai hasil operasi dengan operator OR diperoleh dengan mengambil nilai keanggotaan terbesar antar elemen pada himpunan-himpunan yang bersangkutan. µ A∪B = max(µA[x], µB[y]) II-9 2.6.6 Fuzzy Database Model Tahani Basisdata fuzzy model tahani masih tetap menggunakan relasi standar, hanya saja model ini menggunakan teori himpunan fuzzy untuk mendapatkan informasi pada query-nya [7]. Metode Tahani tersusun atas tahapan yaitu: 1. Menggambarkan Fungsi Keanggotaan Fungsi keanggotaan (membership function) adalah suatu kurva yang menunjukkan pemetaaan titik-titik input data ke dalam nilai keanggotaannya (sering juga disebut dengan derajat keanggotaan) yang memiliki internal antara 0 sampai 1, salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah dengan melalui pendekatan fungsi. Beberapa fungsi yang dapat digunakan yaitu Representasi kurva Linier, Representasi Kurva Segitiga. Representasi Kurva Trapesium. Masing-masing fungsi tersebut, akan menghasilkan nilai antara “0” dan “1” dengan cara yang berbeda, sesuai dengan jenis representasi yang digunakan. 2. Fuzzifikasi Fuzzifikasi adalah fase pertama dari perhitungan fuzzy yaitu pengubahan nilai tegas ke nilai fuzzy. Prosesnya adalah sebagai berikut: Suatu besaran analog dimasukkan sebagai masukan (crisp input), lalu input tersebut dimasukkan pada batas scope dari membership function. Membership function ini biasanya dinamakan membership function input. Keluaran dari proses fuzzifikasi ini adalah sebuah nilai input fuzzy atau yang biasanya dinamakan fuzzy input. 3. Fuzzifikasi Query Fuzzifikasi Query diasumsikan sebuah query konvensional (nonfuzzy) DBMS yang akan mencoba membuat dan menerapkan sebuah system dasar logika fuzzy query . 4. Operator Dasar Zadeh untuk Operasi Himpunan Fuzzy. Nilai keanggotaan sebagai dari 2 himpunan fuzzy dikenal dengan nama Fire Strength atau α-predikat. Sangat mungkin digunakan operator dasar dalam proses query berupa operator AND dan OR. α -predikat sebagai hasil operasi dengan operator AND diperoleh dengan mengambil nilai keanggotaan terkecil antar elemen pada himpunan-himpunan yang bersangkutan, dinotasikan : µA B = min(µA[x], µB[x]). Sedangkan untuk II-10 hasil operasi dengan operator OR diperoleh dengan mengambil nilai keanggotaan terbesar antar elemen pada himpunan-himpunan yang bersangkutan, dinotasikan : µAUB = max(µA[x], µB[x]). Alternatif yang direkomendasikan adalah alternatif yang memiliki nilai Fire Strength atau tingkat kesesuaian dengan kriteria pilihan diatas angka 0 (nol) sampai dengan angka 1 (satu).