BAB II LANDASAN TEORI 2.1 Sejarah Candi Prambanan

advertisement
BAB II
LANDASAN TEORI
2.1
Sejarah Candi Prambanan
Prambanan adalah kompleks candi Hindu terbesar di Indonesia, bahkan di
Asia Tenggara. Candi yang juga terkenal dengan sebutan Candi Rara Jonggrang
ini dibangun sekitar tahun 850 Masehi oleh Wangsa Sanjaya.
Candi yang sejak tahun 1991 ditetapkan UNESCO sebagai cagar budaya
dunia (World Wonder Heritage) ini menempati kompleks seluas 39,8 hektar.
Menjulang setinggi 47 meter atau lima meter lebih tinggi dari Candi Borobudur,
Candi Prambanan telihat perkasa dan kokoh. Hal ini sesuai dengan latar belakang
pembangunan candi ini, yaitu ingin menunjukkan kejayaan peradaban Hindu di
tanah Jawa.
Candi Prambanan juga disebut Candi Rara Jonggrang. Hal ini terkait dengan
sebuah legenda yang diyakini sebagian masyarakat Jawa tentang candi ini.
Alkisah, seorang pangeran bernama Bandung Bondowoso jatuh hati kepada putri
raja yang rupawan parasnya, ia benama Rara Jonggrang. Karena tak kuasa
menolak cinta sang pangeran, Jonggrang mengajukan syarat kepada Bondowoso
untuk dibuatkan candi dengan 1.000 arca dalam waktu semalam. Permintaan itu
hampir terpenuhi, sebelum akhirnya Jonggrang berhasil meminta bantuan warga
desa untuk menumbuk padi dan membuat api besar agar terkesan suasana sudah
pagi hari. Karena merasa dicurangi, Bondowoso yang baru membuat arca ke-999
kemudian mengutuk Jonggrang menjadi arca yang ke-1.000.
Candi Prambanan adalah pengejawantahan peradaban Hindu di tanah Jawa.
Hal ini dapat dilihat dari struktur candi yang menggambarkan inti kepercayaan
dalam agama Hindu, yaitu Trimurti. Kompleks Prambanan memiliki 3 candi
utama di halaman utama, yaitu Candi Wisnu, Brahma, dan Siwa. Ketiga candi
tersebut adalah lambang Trimurti dalam kepercayaan Hindu. Setiap candi utama
memiliki satu candi pendamping, yaitu Nandini untuk Siwa, Angsa untuk
5
6
Brahma, dan Garuda untuk Wisnu. Selain itu, masih terdapat 2 candi apit, 4 candi
kelir, dan 4 candi sudut. Sementara, halaman kedua memiliki 224 candi.
Keistimewaan Candi Prambanan lainnya yang wajib disaksikan oleh
wisatawan adalah keindahan relief-reliefnya yang menempel di dinding candi.
Kisah Ramayana menjadi relief utama candi ini. Namun, relief lain yang tak kalah
menarik adalah pohon kalpataru yang dalam agama Hindu dianggap sebagai
pohon kehidupan, kelestarian, dan keserasian lingkungan. Di Prambanan, relief
pohon kalpataru digambarkan tengah mengapit singa. Keberadaan pohon ini
menggambarkan betapa masyarakat Jawa abad ke-9 memiliki kearifan dalam
mengelola lingkungannya.
Bagi pengunjung yang ingin menuntaskan keingintahuannya terhadap selukbeluk Candi Prambanan, pengunjung dapat menyambangi sebuah museum yang
juga berada di kompleks candi. Di museum ini, pengunjung dapat menikmati
audio visual tentang sejarah ditemukannya Candi Prambanan hingga proses
renovasinya secara lengkap. Bagi wisatawan yang berkunjung bersama keluarga,
di Candi Prambanan juga terdapat taman bermain untuk anak-anak dan kereta
mini yang dapat mengantarkan pengunjung mengelilingi kawasan wisata tersebut.
Salah satu event wisata yang sayang untuk dilewatkan adalah pementasan
Sendratari Ramayana. Sendratari Ramayana adalah seni pertunjukan yang
menyatukan ragam kesenian Jawa seperti tari, drama, dan musik dalam satu
panggung dan satu momentum untuk menyuguhkan kisah Ramayana, epos
legendaris karya Walmiki yang ditulis dalam bahasa Sanskerta. Kisah Ramayana
yang dibawakan dalam pertunjukan ini merupakan penerjemahan dari relief yang
terpahat di Candi Prambanan. Cerita Ramayana yang terpahat di candi ini mirip
dengan cerita yang berkembang dalam tradisi lisan di India. Jalan cerita yang
panjang dan menegangkan dirangkum dalam empat lakon atau babak, yaitu:
penculikan Sinta, misi Anoman ke Alengka, kematian Kumbakarna atau
Rahwana, dan pertemuan kembali Rama—Sinta. Pementasan ini sudah berjalan
sejak tahun 1960-an dan dilaksanakan setiap bulan pada malam purnama.
Candi Prambanan terletak di Desa Prambanan yang secara administratif
terbagi menjadi dua bagian, yaitu antara kabupaten Sleman, Propinsi Daerah
Istimewa Yogyakarta dan Kabupaten Klaten, Propinsi Jawa Tengah.
7
Letaknya yang tepat di tepi jalan raya Yogyakarta Solo membuat kompleks
Candi Prambanan mudah untuk dijangkau dari arah manapun, baik dari arah
Yogyakarta maupun Solo. Bagi pengunjung yang memulai perjalanan dari Klaten,
banyak jalur yang bisa dipilih, bisa menggunakan bus jurusan Yogyakarta Solo
atau bus jurusan Terminal Klaten Prambanan. Keduanya sama mudahnya.
Di sekitar kompleks candi tersedia akomodasi dan fasilitas yang cukup
lengkap, seperti hotel/rumah penginapan, restoran/rumah makan, toko-toko
cenderamata, warung telekomunikasi, dan warung internet. Selain itu, kehadiran
para tenaga pemandu wisata yang mudah dijumpai di sekitar candi akan
menyempurnakan kunjungan para wisatawan. Sebab, mereka akan memandu
wisatawan menelusuri jejak-jekak kemasyhuran peradaban Jawa-Hindu dengan
Candi Prambanan sebagai monumen utamanya.
2.2 Pengertian Sistem Informasi
2.2.1 Sistem
Sistem berasal dari bahasa Latin (sistema) dan bahasa Yunani
(sustema) adalah suatu kesatuan yang terdiri komponen atau elemen yang
dihubungkan bersama untuk memudahkan aliran informasi, materi atau
energi. “Sistem adalah suatu jaringan kerja dari prosedur-prosedur yang
saling berhubungan, berkumpul bersama-sama untuk melakukan suatu
kegiatan atau untuk menyelesaikan suatu sasaran yang tertentu.
Sistem terdiri dari sejumlah komponen yang saling berinteraksi dan
bekerja sama membentuk suatu kesatuan. Komponen-komponen sistem
tersebut adalah:
a) Batasan Sistem adalah daerah yang membatasi antara suatu sistem dengan
yang lain atau dengan lingkungan luarnya.
b) Penghubung Sistem adalah media penghubung antara suatu sistem dengan
sistem lainnya yang dalam gambaran sistem ditunjukan dengan garis
panah.
c) Masukan Sistem (Input) adalah energi yang dimasukkan ke dalam sistem,
bisa berupa program, data lewat keyboard ataupun signal input.
8
d) Keluaran Sistem (Output) adalah hasil dari energi yang diolah dan
diklasifikasikan menjadi suatu keluaran berupa informasi atau data dan
sisa pembuangan seperti panas.
e) Pengolah Sistem adalah bagian dari sistem yang mengolah masukan
menjadi keluaran.
f) Sasaran sistem adalah tujuan (goal) atau sasaran (objective) dari system
tersebut.
Kualitas dari sistem tergantung dari tiga hal, yaitu :
a) Akurat yaitu informasi harus bebas dari kesalahan-kesalahan dan tidak
menyesatkan.
b) Tepat waktu yaitu informasi yang datang kepada penerima tidak boleh
terlambat.
c) Relevan
yaitu
informasi
tersebut
mempunyai
manfaat
untuk
pemakaiannya.
2.2.2 Informasi
Informasi adalah faktor terpenting dalam sistem untuk pengambilan
suatu keputusan. Definisi dari informasi adalah :
Data yang diolah menjadi bentuk yang lebih berguna dan lebih
berarti bagi yang menerimanya. Data itu sendiri adalah fakta atau apapun
yang dapat digunakan sebagai input untuk menghasilkan informasi.
Informasi merupakan hasil pengolahan dari sebuah model, formasi,
organisasi, ataupun suatu perubahan bentuk dari data yang memiliki nilai
tertentu, dan bisa digunakan untuk menambah pengetahuan bagi yang
menerimanya.
2.2.3 Sistem Informasi
Sistem informasi adalah sekumpulan komponen pembentuk system
yang mempunyai keterkaitan antara satu komponen dengan komponen
lainnya yang bertujuan menghasilkan suatu informasi dalam suatu bidang
9
tertentu. Dalam sistem informasi diperlukan klasifikasi alur informasi, hal
ini
disebabkan keanekaragaman kebutuhan akan suatu informasi oleh
pengguna informasi. Kriteria dari sistem informasi antara lain, fleksibel,
efektif dan efisien.
2.3 Komponen Penyusun Perancangan Sistem
ERD ( Entity Relation Diagram ) merupakan suatu model untuk
menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar
data yang mempunyai hubungan antar relasi. ERD untuk memodelkan struktur
data dan hubungan antar data, untuk menggambarkannya digunakan beberapa
notasi dan simbol. Pada dasarnya ada tiga simbol yang digunakan, yaitu :
a) Entity
Entity merupakan objek yang mewakili sesuatu yang nyata dan dapat dibedakan
dari sesuatu yang lain . Simbol dari entiti ini biasanya digambarkan dengan
persegi panjang.
b) Atribut
Setiap entitas pasti mempunyai elemen yang disebut atribut yang berfungsi untuk
mendeskripsikan karakteristik dari entitas tersebut. Isi dari atribut mempunyai
sesuatu yang dapat mengidentifikasikan isi elemen satu dengan yang lain. Gambar
atribut diwakili oleh simbol elips.
c) Hubungan / Relasi
Hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang
berbeda. relasi dapat digambarkan sebagai berikut :
Relasi yang terjadi diantara dua himpunan entitas (misalnya A dan B)
dalam satu basis data yaitu:
a) Satu ke satu (One to one)
Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A
berhubungan paling banyak dengan satu entitas pada himpunan entitas B.
b) Satu ke banyak (One to many)
10
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas
pada himpunan entitas B, tetapi setiap entitas pada entitas B dapat berhubungan
dengan satu entitas pada himpunan entitas A.
c) Banyak ke banyak (Many to many)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas
pada himpunan entitas B.
2.3.1 Pengertian UML
UML ( Unified Modelling Language ) merupakan salah satu metodologi
pengembangan sistem informasi atau perangkat lunak berorientasi objek. Pada
UML ada beberapa diagram diantranya: Use Case Diagram, Activity Diagram,
Sequence Diagram, Class Diagram, Statechart Diagram, Collaboration Diagram.
Tapi yang sering di gunakan Use Case Diagram, Activity Diagram,
Sequence Diagram dan Class Diagram. Berikut Penjelasan dari masingmasing diagram:
2.3.2 Use Case Diagram
Use case diagram menggambarkan fungsionalitas yang diharapkan dari
sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan
“bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara actor
dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke
sistem, meng- create sebuah daftar belanja, dan sebagainya. Seorang/sebuah actor
adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk
melakukan pekerjaan-pekerjaan tertentu. Use case diagram dapat sangat
membantu
bila
kita
sedang
menyusun
requirement
sebuah
sistem,
mengkomunikasikan rancangan dengan klien, dan merancang test case untuk
semua feature yang ada pada sistem. Sebuah use case dapat meng- include
fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara
umum diasumsikan bahwa use case yang di- include akan dipanggil setiap kali
use case yang meng- include dieksekusi secara normal. Sebuah use case dapat di
include
11
oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat
dihindari dengan cara menarik keluar fungsionalitas yang common . Sebuah use
case juga dapat meng- extend use case lain dengan behaviour -nya sendiri.
Sementara hubungan generalisasi antar use case menunjukkan bahwa use case
yang satu merupakan spesialisasi dari yang lain.
2.3.3 Class Diagram
Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan
sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi
objek. Class menggambarkan keadaan (atribut/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. Class memiliki tiga area pokok :
a) Nama (dan stereotype)
b) Atribut
c) Metoda
Atribut dan metoda dapat memiliki salah satu sifat berikut :
a) Private, tidak dapat dipanggil dari luar class yang bersangkutan
b) Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak
yang mewarisinya
c) Public, dapat dipanggil oleh siapa saja 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-time. Sesuai dengan perkembangan class model, class dapat
dikelompokkan menjadi package . Juga dapat membuat diagram yang terdiri atas
package . Adapun hubungan antar class dapat dijelaskan sebagi berikut:
a) 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 .
b) Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas”).
12
c) 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.
d) 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.
2.3.4 Statechart Diagram
Statechart diagram menggambarkan transisi dan perubahan keadaan (dari
satu state ke state lainnya) suatu objek pada sistem sebagai akibat dari stimuli
yang diterima. Pada umumnya statechart diagram menggambarkan class tertentu
(satu class dapat memiliki lebih dari satu statechart diagram ). Dalam UML, state
digambarkan berbentuk segiempat dengan sudut membulat dan memiliki nama
sesuai kondisinya saat itu. Transisi antar state umumnya memiliki kondisi guard
yang merupakan syarat terjadinya transisi yang bersangkutan, dituliskan dalam
kurung siku. Action yang dilakukan sebagai akibat dari event tertentu dituliskan
dengan diawali garis miring. Titik awal dan akhir digambarkan berbentuk
lingkaran berwarna penuh dan berwarna setengah.
2.3.5 Activity Diagram
Activity diagrams menggambarkan berbagai alir aktivitas dalam system
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 state
sebelumnya (internal processing). Oleh karena itu 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. Sebuah aktivitas dapat direalisasikan oleh satu use
13
case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara use
case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan
aktivitas. Sama seperti state, standar UML menggunakan segiempat dengan sudut
membulat
untuk
menggambarkan
aktivitas.
Decision
digunakan
untuk
menggambarkan behaviour pada kondisi tertentu. Untuk mengilustrasikan prosesproses paralel ( fork dan join ) digunakan titik sinkronisasi yang dapat berupa titik,
garis horizontal atau vertikal. Activity diagram dapat dibagi menjadi beberapa
object swimlane untuk menggambarkan objek mana yang bertanggung jawab
untuk aktivitas tertentu.
2.3.6 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 vertical
(waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram
biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah
yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output
tertentu. Diawali dari apa yang men- trigger aktivitas tersebut, proses dan
perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan.
Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message
digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase
desain berikutnya, message akan dipetakan menjadi operasi/metoda dari class.
Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali
dengan diterimanya sebuah message.
Untuk objek-objek yang memiliki sifat khusus, standar UML
mendefinisikan icon khusus untuk objek boundary, controller dan persistent entity
.
2.3.7 Collaboration Diagram
Collaboration diagram juga menggambarkan interaksi antar objek seperti
sequence diagram , tetapi lebih menekankan pada peran masing-masing objek dan
bukan pada waktu penyampaian message . Setiap message memiliki sequence
14
number, di mana message dari level tertinggi memiliki nomor satu. Messages dari
level yang sama memiliki prefiks yang sama.
2.3.8 Component Diagram
Component diagram menggambarkan struktur dan hubungan antar
komponen piranti lunak, termasuk ketergantungan ( dependency ) di antaranya.
Komponen piranti lunak adalah modul berisi code, baik berisi source code
maupun binary code, baik library maupun executable, baik yang muncul pada
compile time, link time, maupun run time. Umumnya komponen terbentuk dari
beberapa class dan/atau package, tapi dapat juga dari komponen-komponen yang
lebih kecil. Komponen dapat juga berupa interface, yaitu kumpulan layanan yang
disediakan sebuah komponen untuk komponen lain.
2.3.9 Deployment Diagram
Deployment/physical
diagram
menggambarkan
detail
bagaimana
komponen di- deploy dalam infrastruktur sistem, di mana komponen akan terletak
(pada mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada
lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal Sebuah
node adalah server, workstation, atau piranti keras lain yang digunakan untuk
men- deploy komponen dalam lingkungan sebenarnya. Hubungan antar node
(misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini.
2.4 Pengertian Multimedia
Multimedia memiliki berbagai pengertian, salah satunya multimedia adalah
pemanfaatan komputer untuk membuat dan menggabungkan teks, grafik, audio,
gambar bergerak (video dan animasi) dengan menggabungkan link dan tool yang
memungkinkan pemakai melakukan navigasi, berinteraksi, berkreasi dan
berkomunikasi.
15
2.4.1 Pengertian Multimedia Interaktif
Multimedia Interkatif adalah suatu multimedia yang dilengkapi dengan alat
pengontrol yang dapat dioperasikan oleh pengguna, sehingga pengguna dapat
memilih apa yang dikehendaki untuk proses selanjutnya.
2.4.2 Elemen-Elemen Multimedia
Terdapat enam elemen utama secara umum yang dipergunakan dalam dalam
multimedia, yaitu teks, image, sound, video, animasi dan user control.
a) Teks
b) Image
c) Sound
d) Video
e) Animasi
f) User Control
2.5 Struktur Informasi Multimedia / Aliran Aplikasi Multimedia
Terdapat lima cara untuk mendesain aliran aplikasi multimedia, yaitu
menggunakan struktur linier, struktur menu, struktur hirarki, jaringan, dan
hibrid.
a) Struktur Linear
b) Struktur Menu
c) Struktur Hierarki
d) Struktur Jaringan
e) Struktur kombinasi (Hibrid)
2.6 Siklus Pengembangan Sistem Multimedia Interaktif
Agar multimedia interaktif dapat menjadi alat keunggulan bersaing,
pengembangan sistem multimedia harus mengikuti tahapan pengembangan
sistem multimedia, yaitu mendefinisikan masalah, studi kelayakan, melakukan
16
analisis kebutuhan, merancang konsep, merancang isi, menulis naskah,
memproduksi aplikasi, melakukan tes pemakai, menggunakan aplikasi dan
memelihara aplikasi.
2.7 Metode Pengembangan Aplikasi Multimedia Versi Luther-Sutopo
Menurut Luther, tahapan-tahapan dengan metodologi pengembangan
multimedia tidak perlu berurutan. Keenam tahapannya dapat saling bertukar posisi
namun tetap dimulai dari tahap Konsep dahulu dan diakhiri dengan tahap
Distribusi. Sutopo mengadopsi metode Luther dengan memodifikasi tahapantahapannya. Dari keenam tahapan Luther, menurut Sutopo harus dimulai dari
Konsep dan diakhiri dengan tahap Distribusi. Sedangkan tahap Material
Collecting dapat dikerjakan scara paralel dengan tahap Assembly. Tahapan versi
Luther-Sutopo adalah sebagai berikut :
1) Concept, yaitu tahapan untuk menentukan tujuan, mengidentifikasi pengguna,
jenis produk, dasar aturan, ukuran, dan target. Penentuan tujuan dan karakteristik
pengguna dapat menentukan nuansa produk dan desain multimedia yang
dikerjakan. Output pada tahapan ini berupa dokumen yang bersifat naratif dengan
tujuan untuk mengungkap tujuan proyek yang ingin dicapai.
2) Design, yaitu tahapan pembuatan spesifikasi mengenai arsitektur program,
style, antarmuka, dan elemen-elemen pendukung. Tahapan ini menyarankan
pengerjaan spesifikasi dilakukan serinci mungkin karena akan berpengaruh di
tahapan selanjutnya, yaitu tahap material collecting dan assembly.
3) Material Collecting, yaitu tahapan pengumpulan elemen-elemen atau bahanbahan sesuai kebutuhan produk multimedia yang dikerjakan, seperti gambar,
animasi, video, dan audio.
Gambar 2.1 Tahapan Versi Luther-Sutopo
17
4) Assembly, yaitu tahapan penggabungan semua material kedalam proyek
berdasarkan pada tahap design, seperti storyboard dan struktur navigasi.
5) Testing, yaitu tahapan pengujian produk yang telah melalui tahapan assembly
untuk melihat kemungkinan adanya kesalahan. Alpha test dilakukan oleh
pengembang, setelah itu dilakukan beta test yang melibatkan pengguna akhir.
6) Distribution, yaitu tahapan dimana produk dikemas dalam suatu media
penyimpanan untuk didistribusikan ke pengguna akhir atau klien. Tahapan ini
juga disebut tahapan evaluasi sebagai masukan bagi tahapan concept untuk proyek
selanjutnya.
2.8 Flowchart Desain
Flow Chart merupakan tool untuk mempresentasikan cara kita dalam
menyusun media, menjelaskan semua aliran dari suatu scene (tampilan) ke scene
lain dan harus bersifat informatif, mampu menggambarkan keseluruhan proses.
Berikut flowchart e-Distribusi Pariwisata Prambanan.
Gambar 2.2 Flowchart e-Dsitribusi Pariwisata Prambanan
18
2.9 Penjelasan Tentang Pariwisata
2.9.1 Pengertian Pariwisata
Istilah pariwisata di Indonesia baru dikenal pada awal tahun 1960-an yang
diperoleh di tempat terpisah dari dua orang budayawan Indonesia, yaitu Prof.
Mr.Moh. Yamin dan Prof. Dr. Prijono atas permintaan Presiden Sukarno kepada
Sri Sultan Hamengkubuwono IX selaku Ketua Dewan Tourisme Indonesia (DTI).
Kedua budayawan intelektual tersebut memberikan istilah pariwisata guna
mengganti istilah tourism atau travel yang konotasinya bisa terkait dengan selera
rasa pleasure (kesenangan), excitement (kegembiraan), entertainment (hiburan),
adventure (petualangan) dan sebagainya. Secara etimologis, istilah pariwisata
berasal dari Bahasa Sansekerta yaitu :
a) Pari = Penuh, Lengkap, Berkeliling.
b) Wis (man) = Rumah, Kampung, Komunitas.
c) Ata = Pergi terus menerus, Mengembara.
Bila dirangkaikan menjadi satu kata melahirkan istilah pariwisata berarti
pergi secara lengkap, meninggalkan rumah (kampung) berkeliling terus menerus,
yang dalam bahasa Inggris disebut dengan kata "tour", sedang untuk pengertian
jamak "kepariwisataan" dapat digunakan kata "tourisme" atau "tourism", lebih
lanjut batasan pariwisata menurut ketetapan Presiden Republik Indonesia dan
MPRS No.10 tahun 2009 pasal 1, sebagai berikut : " Kepariwisataan adalah
keseluruhan kegiatan yang terkait dengan pariwisata dan bersifat multidimensi
serta multidisiplin yang muncul sebagai wujud kebutuhan setiap orang dan negara
serta interaksi antara wisatawan dan masyarakat setempat, sesama wisatawan,
Pemerintah, Pemerintah Daerah, dan pengusaha.".
Pariwisata memiliki dua aspek, aspek kelembagaan dan aspek subtansial,
yaitu sebuah aktifitas manusia (Oka A, 2005). Dilihat dari sisi kelembagaannya,
pariwisata merupakan lembaga yang dibentuk sebagai upaya manusia untuk
memenuhi kebutuhan rekreatif. Sebagai sebuah lembaga, pariwisata dapat dilihat
dari sisi menejemennya, yaitu bagaimana perkembangannya, mulai dari
direncanakan, dikelola, sampai di pasarkan pada pembeli, yakni wisatawan.
19
Sebagai sebuah subtansi, pariwisata merupakan bagian dari budaya suatu
masyarakat, yaitu berkaitan dengan cara penggunaan waktu senggang yang
dimilikinya.
Pariwisata dapat disoroti dari berbagai macam sudut pandang karena
memiliki sifat kompleks. Kompleksitas yang terkandung dalam pariwisata antara
lain, pariwisata sebagai pengalaman manusia, pariwisata sebagai perilaku sosial,
pariwisata sebagai fenomena geografis, pariwisata sebagai sumber daya,
pariwisata sebagai bisnis, dan pariwisata sebagai industri (Oka A, 2005).
2.9.2 Bali Pusat Gerbang Wisata
Mengakhiri jaman prasejarah, Bali sudah dituju untuk melakukan
pencarian dan perjalanan oleh para penekun spiritual. Rsi Markandeya tercatat
sebagai tokoh spiritual dari Jawa yang pertama menjejakkan perjalanan di Bali.
Perjalanan melakukan pencarian kesucian batin dan keseimbangan alam lalu
menempatkan tonggak tatanan agama Hindu di lereng selatan Gunung Agung
yang kini dikenal sebagai Pura Agung Besakih. Pura Basukian dipercaya sebagai
tonggak pertama Rsi Markandeya bersama pengikutnya memastikan Bali sebagai
tanah tujuan membangun nilai spiritual.
Bagai berkelanjutan, tatanan hidup spiritual secara simultan beriring
dengan tata pemerintahan di Bali. Pemerintahan Dinasti Warmadewa disebutkan
dalam berbagai naskah kuno amat mendukung kelangsungan hidup beragama
dengan budaya dan adat setempat sehingga mengundang kedatangan tokoh-tokoh
spiritual dan tanah Jawa. Kedatangan Empu Kuturan pada sektar abad 11 secara
pasti mampu merekat tatanan hidup masyarakat lokal dengan tatanan Agama
Hindu yang dibawa dari Jawa. Tatanan desa adat dengan konsep parhyangan
sebagai personifikasi Tuhan dalam fungsi Tri Murti adalah upaya menampung
penyatuan konsep lokal dengan konsep Hindu. Perjalanan spiritual berlanjut
dilakukan oleh tokoh Agama Hindu dari tanah Jawa. Penyatuan Nusantara oleh
Majapahit adalah puncak dari perjalanan dan transformasi agama dan budaya
lokal dengan budaya Hindu. Dalam perjalan waktu, Bali dan masyarakatnya
kemudian menjalani keseharian mereka dengan tata kehidupan, agama, seni, dan
20
budaya yang unik. Keunikan inilah kemudian, pada sekitar tahun 1579, menjadi
perhatian seorang Belanda bernama Cornelis de Houtman yang melakukan
perjalanan ke Indonesia untuk mencari rempah-rempah. Tanah yang subur,
kegiatan pertanian dan keunikan budaya penduduknya dalam menjalani
keseharian sungguh menjadi perhatian besar bagi ekspedisi de Houtman.
Berbarengan dengan Indonesia yang dikenal sebagai penghasil rempahrempah, Bali mulai dikenal dunia dari sisi budaya. Penguasaan Belanda terhadap
Indonesia pun pada sekitar abad 17 dan 18 tidak banyak memberi pengaruh pada
kehidupan agama dan budaya di Bali. Hindu di Bali pada masa-masa itu bahkan
memasuki masa kejayaan ketika kerajaan di Bali berpusat di Gelgel dan kemudian
dipindah ke Smarapura (Klungkung). Awal abad 20, barulah Bali dikuasai oleh
Belanda ditandai dengan jatuhnya Kerajaan Klungkung lewat Perang Puputan
Klungkung tahun 1908.
2.9.3 Yogyakarta Kota Wisata
YOGYAKARTA sering juga disebut Jogja, Yogya, atau Jogya terletak di
tengah Pulau Jawa Indonesia, tempat segalanya masih murah. Cukup dengan dua
ratus ribu sehari, Anda sudah bisa menginap, menyantap masakan tradisional yang
terkenal, dan menyewa motor untuk menjelajahi pantai-pantai yang masih
perawan dan candi-candi kuno berusia ribuan tahun.
Seribu tahun silam, Yogyakarta merupakan pusat kerajaan Mataram Kuno
yang makmur dan memiliki peradaban tinggi. Kerajaan inilah yang mendirikan
Candi Borobudur yang merupakan candi Buddha terbesar di dunia, 300 tahun
sebelum Angkor Wat di Kamboja. Peninggalan lainnya adalah Candi Prambanan,
Istana Ratu Boko, dan puluhan candi lainnya yang sudah direstorasi maupun yang
masih terpendam di bawah tanah.
Namun oleh suatu sebab yang misterius, Kerajaan Mataram Kuno
memindahkan pusat pemerintahannya ke Jawa Timur pada abad ke-10. Candicandi megah itu pun terbengkalai dan sebagian tertimbun material letusan Gunung
Merapi. Perlahan-lahan, wilayah Yogyakarta pun kembali menjadi hutan yang
lebat.
21
Enam ratus tahun kemudian, Panembahan Senopati mendirikan Kerajaan
Mataram Islam di wilayah ini. Sekali lagi Yogyakarta menjadi saksi sejarah
kerajaan besar yang menguasai Pulau Jawa dan sekitarnya. Kerajaan Mataram
Islam ini meninggalkan jejak berupa reruntuhan benteng dan makam kerajaan di
Kotagede yang kini dikenal sebagai pusat kerajinan perak di Yogyakarta
2.10 Sistem Pemasaran Dan Distribusi Produk Industri Pariwisata.
2.10.1 Pengembangan Kepariwisataan
Dari paparan diatas, maka sistem pengembangan kepariwisataan yang
berbasis Multimedia aplikasi terdiri dari tiga komponen utama yaitu:
pengumpulan data, konsolidasi, manajemen serta implementasi, dan yang ke tiga
adalah penyebarannya, dari ketiga komponen di bawah ini dapat di gambarkan
dalam gambar 2.1 berikut.
Gambar 2.3 Konsep e-Information Pariwisata
Terdapat tiga tingkatan utama dalam penyusunan Aplikasi Multimedia ini yaitu :
1) Bagian-bagian koleksi data, yang merupakan dasar dalam melakukan
konsolidasi pemilahan. Pada bagian ini terdapat elemen-elemen seperti hotel,
tempat rekreasi, restourant, serta event-event penting yang bisa diakses oleh
konsumen. Oleh karena itu, pengumpulan data serta penerapan dan
konsulidasi menjadi tujuan utama dalam tingkatan pertama.
22
2) Manajemen dan follow-up dalam hal ini mencakup perancangan system
yang akan disusun berdasarkan bagian-bagian konsolidasi pada tingkatan
pertama.
3) Mencakup aplikasi ataupun penerapan sistem yang terjadi dalam rangka
pemasaran.
Tingkatan
ketiga
pada
dasarnya
merupakan
tingkatan
penyampaian dan penyebaran informasi kepada wisatawan.
2.10.2 Distribusi Pariwisata
Pemasaran pariwisata, sangat komplek sifatnya, dibandingkan dengan
penyebaran barang-barang yang dihasilkan perusahaan manufaktur yang biasa
dikenal. Produk yang ingin dipasarkan sangat terikat dengan suplier yang
menghasilkannya,
instansi,
organisasi
atau
lembaga
pariwisata
yang
mengelolanya. Menurut J.Krippendorf dalam bukunya Marketing Et Tourisme
yang dimaksud dengan Pemasaran pariwisata adalah suatu sistem dan koordinasi
yang harus dilakukan sebagai kebijaksanaan bagi perusahaan-perusahaan
kelompok industri pariwisata, baik milik swasta atau pemerintah, dalam ruang
lingkup lokal, regional, nasional, atau internasional untuk mencapai kepuasan
wisatawan dengan memperoleh keuntungan yang wajar”.
Produk industri yang dipasarkan itu tidak berwujud (intangible product),
karena itu tidak dapat di pindah kan, dicoba, di 19 tabung atau ditumpuk di
gudang dimana hubungan antara penjual dan pembeli berakhir kalau transaksi
selesai dilakukan. Pembeli hanya ada hak pakai sementara waktu. Berbeda dengan
tangible pruduct seperti produk manufaktur, pemindahan hak milik dari penjual
kepada pembeli terjadi setelah transaksi selesai (Oka A.Yoeti: 2005).
Hal ini membuat cara pemasaran produk pariwisata lebih sukar disbanding
pemasaran produk manufaktur suatu perusahaan. Karena tidak bisa ditabung,
produk yang tidak terjual dapat mendatangkan kerugian bagi produsen produk
yang bersangkutan, oleh karena itu diperlukan apa yang disebut “Capacity
manajement” yang fungsi dan tugasnya mengusahakan agar kelebihan kapasitas
yang terjadi dapat dikurangi dan tidak menimbulkan kerugian yang lebih banyak.
Mengenai sistem distribusi ini berdasarkan observasi yang dilakukan oleh Mill
dan Marrison (2000:400) mengatakan industri pariwisata memiliki kelebihan dari
23
industri lain, perantara penjual berfungsi menjembatani antara produsen dan
konsumen, baik untuk konsumen secara pribadi atau rombongan.
Tugas utama perantara adalah menjalin hubungan kerjasama yang saling
menguntungkan dengan perusahaan kelompok industri pariwisata kemudian
mengemas paket wisata dengan mengunakan single product yang nantinya
membentuk bermacam-macam paket wisata sesuai target pasar yang dituju. Dapat
digambarkan konsep kerangka
sistem distribusi
sebagai
berikut:
(Oka
A,2005:161)
WISATAWAN
BIRO PERJALANAN WISATA
(Tour Operator)
Transportation
Entertainment
Accomodation
Tourism Atrraction
(Something to see)
(Something to do)
Restourans
Shopping center/ shovenir shop
(Something to buy)
Activities
Gambar 2.4 Posisi sistem distribusi / Penyebaran
2.11 Definisi XML
eXtensible Markup Language (XML) merupakan subset dari Standard
Generalized Markup Language (SGML) yang didefinisikan oleh World Wide
Web Consortium (W3C). XML dikategorikan sebagai extensible language, karena
memungkinkan pengguna untuk mendefinisikan elemen-elemen markup sendiri.
Berbeda dengan HTML yang hanya mendefinisikan elemen-elemen untuk
tampilan dalam web browser, XML merupakan dokumen multifungsi yang
struktur dokumennya mewakili struktur datanya. Secara umum struktur dokumen
XML merupakan suatu pohon hirarki, yang terdapat elemen root, parent dan child
(Rahman, 2011).
24
2.12 Elemen XML
XML mendefinisikan struktur dan isi dokumen sebagai suatu rangkaian
elemen, etiap elemen mewakili suatu bagian dari dokumen (McNeil, 2006).
Elemen ML terdiri atas:
a) Start tag <
b) Isi atau elemen (dapat berupa teks atau angka)
c) End tag />
Start tag menunjukkan awal dari suatu elemen dan end tag menunjukkan
akhir dari suatu elemen. Aturan penulisan nama elemen dalam XML bersifat case
sensitive dan tidak boleh ada spasi. Tiap elemen XML dapat memiliki satu atau
lebih anak yang masing masing anak tersebut juga merupakan suatu elemen.
Tujuan desain XML dapat dirinci sebagai berikut :
Dokumen XML harus jelas dan mudah dipahami manusia.
Desain XML harus disiapkan secepatnya.
Desain XML harus formal dan singkat.
Dokumen XML harus mudah dibuat.
Keringkasan suatu markup XML tidak dipentingkan.
Singkatnya tujuan dari XML secara umum adalah memungkinkan SGML untuk
membantu, menerima dan memproses pada program web, dimana cara ini
sekarang dapat dilakukan dengan HTML. XML dibuat untuk memudahkan
pelaksanaan dan interoperability dengan SGML dan HTML. Suatu XML
menggambarkan sebuah kelas dari obyek data yang disebut dokumen XML yang
disimpan pada komputer, dan menggambarkan sebagian tentang program yang
memproses object tersebut. (Supriyanto, 2007)
Cara berikutnya adalah dengan menggunakan database XML. Istilah dalam
hal ini adalah native XML database. Sistem ini menyimpan file-file XML dalam
bentuk aslinya, jadi tidak dalam tabel dan record seperti pada cara yang pertama.
Pada native XML database file-file XML saling direlasikan seperti pada sistem
basis data relasional. Sistem ini memberikan tingkat kompatibilitas dan
fleksibilitas yang lebih tinggi dari cara yang pertama. Namun, sampai sekarang
belum ada vendor native XML database yang mampu membuktikan kesetaraan
25
database XML dengan DBMS dalam hal keamanan dan manajemen data
internalnya.
2.13 XML Sebagai Database
Seperti halnya sudah disebutkan dalam Bab I, XML memiliki keunggulan
dalam hal kemudahan pertukaran data dan susunan struktur hierarkisnya yang
mirip database relasional. Bahkan sekarang ini sudah banyak yang memanfaatkan
XML ini sebagai database. Sistem ini disebut dengan native XML database. Di
sini file-file XML saling direlasikan seperti pada sistem basis data relasional.
Terbukti juga bahwa ia mampu bertindak sebagai suatu basis data sederhana yang
sanggup menerima query dan menampilkan sesuai dengan query tersebut. Namun
demikian sampai sekarang belum ada vendor native XML database yang mampu
membuktikan kesetaraan database XML dengan DBMS dalam hal keamanan dan
manajemen data internalnya.
2.14 Pengembangan sistem konversi XML ke RDBMS
Adanya kekurangan pada sistem database XML menimbulkan ide untuk
melakukan konversi dari data dalam bentuk XML ke dalam RDBMS. Dari data
XML yang sudah ada kemudian dipindahkan ke dalam database relasional, yang
dalam hal ini menggunakan mySQL. Dengan demikian sistem ini tidak kemudian
meniadakan penyimpanan yang sudah ada dalam bentuk XML, namun hanya
melakukan back up. Kelebihan dari sistem ini adalah data masih tersimpan dalam
sistem DBMS, sehingga keunggulan DBMS dalam hal penyimpanan data masih
dapat dimanfaatkan.
Adanya latar belakang tersebut kemudian mendasari tugas akhir ini untuk
secara khusus lebih menekankan pembahasan dalam masalah mengenai
pengolahan data dari bentuk XML ke database terutama untuk data yang berupa
mata kuliah, modul dan topik-topik dalam perkuliahan.
26
2.15 XML DBMS
XML-DBMS adalah sebuah middleware yang merupakan sekumpulan
paket-paket dalam bahasa pemrograman Java yang digunakan untuk mentransfer
data XML ke dalam database relasional. XML-DBMS menjaga struktur hierarkis
dari dokumen XML, seperti misalnya data (data karakter dan nilai nilai atribut)
yang ada padanya. Perlu diingat bahwa dalam XML terdapat pemisahan antara
data dengan presentasinya. Dalam hal ini jika dibutuhkan, XML-DBMS dapat
menjaga kondisi data kelas anak sampai pada level tertentu secara hierarki.
Karena XML-DBMS ini mentransfer data, tidak termasuk presentasinya, ia tidak
menjaga tipe deklarasi dokumen, tidak juga struktur fisik dokumen sebagai satu
kesatuan.
XML-DBMS bersifat freeware. Ia bisa digunakan oleh siapa saja, kapan
saja, untuk tujuan apapun. Pada awalnya dibuat oleh Ron Bourret dan kemudian
dikembangkan bersama oleh komunitas mailing list XML-DBMS yang beralamat
di Yahoogroups. Software ini bisa di dapat dengan mendownload dari situs
http://www.rpbourret.com diakses pada tanggal 18 oktober 2012 pukul 15.44,
XML Parser yang ditulis dalam bahasa pemrograman Java yang mendukung
DOM level 2 dan SAX 2.
Parser merupakan sebuah interface antara dokumen XML dengan berbagai
program aplikasi yang menggunakannya. Parser seperti ini bisa didapatkan dari
berbagai sumber seperti misalnya dari Oracle, Sun, IBM, dan Microsoft.
Sedangkan parser open source bisa didapatkan pula dari James Clark, OpenXML,
dan Apache.
DOM merupakan singkatan dari dari Document Object Model. DOM
Parser menterjemahkan dokumen XML dan menempatkan elemen-elemen yang
ditemuinya ketika memproses dokumen ke dalam struktur pohon. Informasi
mengenai struktur dokumen ini kemudian disimpan ke dalam memori. Informasi
inilah yang digunakan program aplikasi untuk mengakses dokumen XML.
SAX adalah singkatan dari Simple API for XML. API sendiri adalah
singkatan dari Application Program Interface. Seperti namanya, dibanding DOM
Parser, isi program SAX Parser lebih sederhana. SAX parser bekerja berdasarkan
27
apa yang disebut event-based. SAX Parser berjalan menjelajahi dokumen. Begitu
SAX Parser menemukan deklarasi sebuah elemen, ia akan mencatatnya dan
menyimpannya
dalam
suatu
event-handler.
Event-handler
inilah
yang
menyediakan akses ke isi dokumen XML.
XML singkatan dari Extensible Markup Language, adalah bahasa markup
yang dirancang untuk penyampaian informasi melalui website dan juga dapat
digunakan untuk pertukaran informasi antar sistem database. Bahasa markup
(markup language) merupakan bahasa pemrograman untuk menandai suatu data.
keuntungan menggunakan XML dapat menyederhanaan aplikasi,
dimana database yang ditulis dalam XML dapat diakses di mana saja dan
memudahkan aplikasi dalam mengolah data karena dapat menghemat memori.
Kemampuan dalam mendefinisikan tag-tag di dalam dokumen XML dapat secara
leluasa menerangkan isi data. Berbeda dengan HTML yang digunakan untuk
menampilkan data, XML tidak didesain untuk menampilkan data, XML didesain
untuk menyimpan dan pertukaran data antar format dari system yang tidak
kompatibel. Konversi data ke XML dapat mereduksi kompleksitas dan membuat
data dapat dibaca oleh aplikasi yang bebeda-beda.
XML dapat digunakan untuk menyimpan data dalam suatu file atau
database. Aplikasi dapat dibuat untuk menyimpan dan memanggil informasi dari
file penyimpan untuk menampilkan data tersebut. XML bersifat independen
terhadap hardware, software dan aplikasi, menyebabkan aplikasi dapat mengakses
file XML sebagai sumber data, seperti mengakses database. Data dapat digunakan
untuk hampir seluruh jenis mesin pembaca data. Dokumen XML berupa file
plaintext secara umum dibagi menjadi dua bagian yaitu prolog dan elemen
dokumen. Prolog berisikan tentang pendekalarasian XML dan komentar. Elemen
dokumen XML terdiri dari tag pembuka dan tag penutup yang memenuhi standar
well formed diantaranya adalah :
1) Setiap tag pembuka harus ditutup dengan tag penutup
2) Tidak boleh ada elemen yang overlapping
3) Setidaknya ada satu elemen utama dan Penulisan atribut harus di antara tanda
petik ganda (”).
28
DTD atau Dokumen XML harus memenuhi spesifikasi dalam Document
Type Definition (DTD) untuk memastikan validitasnya. DTD adalah deklarasi tipe
dokumen, berisi deklarasi yang mendefinisikan elemen, atribut dan fitur-fitur lain
dokumen. DTD diletakkan dibagian prolog dokumen, dimulai dengan tulisan
<!DOCTYPE Nama DTD>, dimana Nama menyatakan nama elemen dokumen.
DTD berisi simbol [ diikuti serangkaian deklarasi markup, diikuti dengan simbol
]. Deklarasi markup menjelaskan struktur logika dokumen, yaitu mendefinisikan
elemen, atribut dan fitur lain dokumen. DTD boleh tidak ditulis, namun
menyebakan dokumen XML tersebut tidak dapat diperiksa validitasnya. Beberapa
elemen-elemen penting dari DTD adalah:
1) DOCTYPE – root elemen DTD.
Deklarasi DOCTYPE menjelaskan tipe dokumen XML. Syntax: <!DOCTYPE
NAME CONTENT>. NAME semestinya sama dengan nama root elemen di
dokumen XML. content dapat dimasukkan dengan 2 cara: pertama secara inline
(menguraikan secara langsung) atau melalui referensi luar. Referensi luar atau
external reference dapat berupa file yang terpisah dan di refer melalui URL.
Referensi ini memakai keywords SYSTEM dan PUBLIC. <!DOCTYPE FAMILY
SYSTEM
http://www.amikomnet.com/dtd/file2.dtd> <!DOCTYPE FAMILY
PUBLIC "//amikomnet//DTD//EN" http://www.amikomnet.com/dtd/file2.dtd>.
2) ELEMENT - tujuan dari keyword ini menentukan bila nama dari ELEMENT
dapat dipakai di document type. Contoh syntax: <!ELEMENT NAME
CONTENT> Istilah CONTENT meng-spesifikasikan apa yang dapat dimasukkan
antara tag pembuka dan tag penutup. Tapi ini tidak termasuk attribut-attribut yang
mungkin terpakai di elemen.
3) EMPTY isi yang kosong. Ini berarti diantara tag pembuka dan tag penutup
tidak boleh mempunyai isi (termasuk spasi). Contoh:
<!ELEMENT nama EMPTY>. Berarti nama tidak dapat mempunyai isi.
4) ANY jika suatu elemen dideclare sebagai ANY, berarti isi dari elemen ini
adalah elemen lain. Contoh dari declaration ANY: <!ELEMENT nama ANY>.
berarti pemakaian di XML adalah: <nama> <DECLARASI_ELEMEN_2 />
</nama> .
29
5) #PCDATA - elemen hanya dapat memiliki karakter data yang diparse.
Karakter data dapat berupa teks apa saja asalkan tidak mempunyai child elements
(bagian dari elemen).
Contoh: <!ELEMENT nama (#PCDATA)>
6) ATTLIST
syntax ATTLIST adalah untuk attribut yang dapat dipakai di dalam declared
element. Syntax ini berupa seperti:
<!ATTLIST NAME ATT_NAME TYPE
DEFAULT >
2.16 Testability
Testabilitas perangkat lunak adalah seberapa mudah sebuah program
komputer dapat diuji. Karena pengujian sangat sulit, maka perlu diketahui apa
yang dapat dilakukan untuk membuatnya menjadi mudah. Kadang-kadang
pemrogram bersedia melakukan hal-hal yang akan membantu proses pengujian,
dan membuat checklist (daftar periksa) mengenai masalah-masalah desain yang
mungkin, fitur dan lain sebagainya yang dijadikan sebagai pedoman dalam
melakukan pengujian. Beberapa checklist dibawah ini, akan membantu sebagai
pedoman dalam kegiatan pengujian perangkat lunak :
a) OPERABILITY
Operability dimaksudkan mampu menjalankan atu beroperasi, Semakin baik hal
tersebut dijalankan, pengujian akan semakin efesien, sistem memiliki sedikit
kesalahan, tidak ada kesalahan yang menghalangi jalannya pengujian, dan produk
berkembang dalam tahapan fungsional yaitu memungkinkan pengembangan dan
pengujian secara simultan.
b) OBSERVABILITY
Yaitu kemampuan untuk mengamati atau meneliti “Apa yang dilihat adalah apa
yang diuji.”, output yang berbeda dikeluarkan oleh masing-masing input, tahap
dan variabel sistem dapat dilihat atau diantrikan selama eksekusi, sistem dan
variabel yang lalu dapat dilihat atau, diantrikan misalnya, logaritma transaksi,
semua faktor yang mempengaruhi output dapat dilihat, output yang tidak benar
dapat diidentifikasi dengan mudah, kesalahan internal dideteksi secara otomatis
30
melalui mekanisme pengujian itu sendiri, kesalahan internal dilaporkan secara
otomatis dan kode sumber dapat diakses.
c) CONTROLLABILITY
Kemampuan untuk mengawasi semakin baik kita dapat mengontrol perangkat
lunak, semakin banyak pengujian yang dapat diotomatisasi dan dioptimalkan,
semua output yang baik, dapat diperoleh melalui beberapa kombinasi input,
semua kode dapat dijalankan melalui berbagai kombinasi input, keadaan dan
variabel perangkat lunak dan perangkat keras dapat dikontrol secara langsung oleh
penguji, format input dan output konsisten dan terstruktur, pengujian dapat
dispesifikasi, dioptimasi, dan direproduksi dengan baik.
d) DECOMPOSABILITY
Merupakan kemampuan untuk menyelesaikan dengan mengontrol ruang lingkup
pengujian, kita dapat dengan lebih cepat mengisolasi masalah dan melakukan
pengujian kembali secara lebih halus, sistem perangkat lunak dibangun dari
modul-modul yang independen dan modul-modul dapat diuji secara independen.
e) SIMPLICITY
Kemampuan untuk menyederhanakan kerumitan semakin sedikit yang diuji,
semakin cepat kita dapat mengujinya, fungsi yang sederhana yaitu kumpulan fitur
adalah kebutuhan minimum untuk memenuhi persyaratan, struktur yang sederhana
(arsitektur dimodularisasi untuk membatasi penyebaran kesalahan) dan kode yang
sederhana (standar pengkodean diadopsi demi kemudahan inspeksi dan
pemeliharaan)
f) STABILITY
Mampu untuk menyeimbangkan, semakin sedikit perubahan, semakin sedikit
gangguan dalam pengujian, perubahan perangkat lunak jarang terjadi, perubahan
perangkat lunak dapat dikontrol, perubahan perangkat lunak memvalidasi
pengujian yang sudah ada dan kegagalan perangkat lunak dapat diperbaiki dengan
baik.
g) UNDERSTANDBILITY
Kemampuan untuk memahami dan mengerti karena semakin banyak informasi
yang kita dapat, semakin mudah pengujian dilakukan, rancangan dapat dipahami
dengan baik, ketergantungan antara komponen internal, eksternal, dan yang
31
dipakai bersama, dipahami dengan baik, perubahan rancangan dibicarakan,
dokumentasi teknik dapat diakses dengan cepat, dokumen teknik diorganisasikan
dengan baik, dokumentasi teknik spesifik dan detail dan dokumentasi teknik
akurat.
2.17 Teknik Pengujian
Pengujian merupakan elemen yang paling kritis dari penilaian perangkat
lunak yang telah dikerjakan dengan pembahasan pada dasar-dasar pengujian
perangkat lunak dan perancangan permasalahan pengujian yang berfokus pada
kumpulan teknik yang digunakan untuk membuat pengujian sesuai dengan
permasalahan dan juga disesuaikan dengan tujuan pengujian secara keseluruhan.
Pengujian merupakan salah satu dari siklus pengembangan perangkat lunak yang
jika ditinjau dari sudut pandang psikologi adalah penghancuran dibandingkan
penyusunan. Terdapat 2 (dua) tingkatan yang tersedia pada proses pengujian,
yaitu, konfigurasi perangkat lunak yang mencakup spesifikasi keperluan
perangkat lunak, spesifikasi perancangan, test case, dan program sumber dan
konfigurasi pengujian yang mencakup rencana dan prosedur uji coba, test case
dan hasil yang diharapkan.
Dalam Desain Test Case dimana dengan melihat lagi sasaran pengujian,
kita harus mendesain pengujian yang memiliki kemungkinan tertinggi dalam
menemukan kesalahan dengan jumlah waktu dan usaha yang minimum.
Terdapat 2 (dua) macam test case :
Pertama pengetahuan fungsi yang spesifik dari produk yang telah
dirancang untuk diperlihatkan, test dapat dilakukan untuk menilai masing-masing
fungsi apakah telah berjalan sebagaimana yang diharapkan dan pengetahuan
tentang cara kerja dari produk, test dapat dilakukan untuk memperlihatkan cara
kerja dari produk secara rinci sesuai dengan spesifikasinya.
Berikut terdapat dua pendekatan dalam teknik pengujian perangkat lunak :
2.17.1 Black Box Testing Model
32
Blackbox model adalah suatu system / model yang bersifat kuantitatif.
Konsep dasar dari model kuantitatif ini memperlakukan system sebagai kotak
hitam, dan tidak ada usaha untuk menemukan factor yang berpengaruh pada
perilaku system tersebut (Juwono,2008).
Menurut Roger S Pressman dalam bukunya Rekayasa Perangkat Lunak
:“Pengujian Black-Box berfokus pada persyaratan fungsional perangkat lunak.
Pengujian Black-Box memungkinkan perekayasa perangkat lunak mendapatkan
serangkaian kondisi input yang sepenuhnya menggunakan semua persyaratan
fungsional untuk suatu program”. Pengujian Black-Box bukan merupakan
alternative dari teknik White Box, tetapi merupakan pendekatan komplementer
yang kemungkinan besar mampu mengungkap kelas kesalahan daripada metode
white box. Pengujian Black Box berusaha menemukan kesalahan dalam kategori
sebagai berikut :
1) Fungsi-fungsi yang tidak benar atau hilang.
2) Kesalahan Interface.
3) Kesalahan dalam struktur data atau akses database eksternal.
4) kesalahan kinerja.
5) Inisialisasi dan kesalahan terminasi.
Pengujian Black-box cenderung diaplikasikan selama tahap akhir pengujian,
karena pengujian black-box memperhatikan struktur control maka perhatian
berfokus pada domain informasi.
Black box testing merupakan strategi testing dimana hanya memperhatikan/
memfokuskan kepada factor fungsionalitas dan spesifikasi perangkat lunak. Black
box testing tidak membutuhkan pengetahuan mengenai alur internal (internal
path), struktur atau implementasi dari software under test (SUT). Black box
testing dilakukan dibeberapa tahapan berikutnya. Karena black box testing
memang ditujukan untuk mengabaikan struktur kontrol tetapi lebih terfokus
terhadap information domain.
Metode ujicoba blackbox memfokuskan pada keperluan fungsional dari
software. Karena itu ujicoba blackbox memungkinkan pengembang software
33
untuk membuat himpunan kondisi input yang akan melatih seluruh syarat-syarat
fungsional suatu program. Ujicoba blackbox bukan merupakan alternatif dari
ujicoba whitebox, tetapi merupakan pendekatan yang melengkapi untuk
menemukan kesalahan lainnya, selain menggunakan metode whitebox.
Ujicoba blackbox berusaha untuk menemukan kesalahan dalam beberapa
kategori, diantaranya fungsi-fungsi yang salah atau hilang, kesalahan interface,
kesalahan dalam struktur data atau akses database eksternal, kesalahan performa,
kesalahan inisialisasi dan terminasi.
Keuntungannya adalah memungkinkan kita untuk mendeteksi potensi
kesalahan dalam spesifikasi, memungkinkan kita untuk memulai dengan
pandangan dan panduan lengkap, tanpa ketergantungan terhadap kondisi tertentu,
membantu untuk menemukan beberapa alternatif terhadap suatu kondisi, berguna
ketika menentukan logika kompleks, menganalisis dan pengujian logika
kompleks.
Dilakukan untuk testing pada interface perangkat lunak. Test case ini
bertujuan untuk menunjukkan fungsi perangkat lunak tentang cara beroperasinya,
apakah pemasukan data keluaran telah berjalan sebagaimana yang diharapkan dan
apakah informasi yang disimpan secara eksternal selalu dijaga kemutakhirannya.
Dalam black box testing metode pengujian black box berfokus pada
keperluan fungsional dari perangkat lunak dan domain informasi, analis sistem
memperoleh kumpulan kondisi dari input yang akan mengerjakan seluruh
keperluan fungsional program, cenderung diaplikasikan selama tahap akhir
pengujian, disebut juga pengujian behavioral/pengujian partisi atau pengujian
interface, memperhatikan dari sudut pandang Input data dan Output data,
perangkat lunak ditinjau sebagai kotak hitam yang menyalurkan input kepada
output berdasarkan rincian dimana perangkat lunak tersebut harus melakukannya,
periksa kecocokan dari pengujian S/W yang membentuk tingkah laku, mencari
kesalahan-kesalahan yang dihasilkan oleh kesalahan dan kesalahan perangkat
lunak adalah bagian dari perangkat lunak yang tidak menurut pada penyedian
definisi itu sendiri dalam dokumen pengembangan.
Tujuannya untuk mencari kesalahan-kesalahan pada :
Fungsi yang salah atau hilang.
34
Kesalahan pada interface.
Kesalahan pada struktur data atau akses database.
Kesalahan performansi (kinerja).
Kesalahan initialisasi dan tujuan akhir.
Type dari pengujian black box :
a) Equivalence Class Partitioning. (pembagian kelas yang sama)
Metode pengujian black box yang memecah atau membagi domain input
dari suatu program ke dalam kelas-kelas data.
Perancangan test case berdasarkan evaluasi kelas equivalence untuk
kondisi input.
Kelas equivalence menggambarkan kumpulan keadaan yang valid dan
tidak valid untuk kondisi input.
Kondisi input dapat berupa nilai numerik, range dari nilai, kumpulan nilai
yang berhubungan atau kondidi boolean.
Kelas equivalence dapat ditentukan sesuai pedoman berikut ini :
Bila kondisi input menentukan suatu range, maka kelas equivalence valid
dan dua yang invalid ditentukan.
Bila kondisi input membutuhkan suatu harga khusus, maka satu kelas
equivalence valid dan dua yang invalid ditentukan.
Bila kondisi input menentukan anggota suatu himpunan, maka satu kelas
equivalence valid dan dua yang invalid ditentukan.
Bila kondisi input adalah boolean, maka satu kelas dan satu yang tidak
valid ditentukan.
b) Boundary Value Analysis (analisa penilaian terbatas)
Untuk permasalahan yang tidak diketahui dengan jelas, akan cenderung
menimbulkan kesalahan pada domain output-nya.
Pemilihan test case yang mengerjakan nilai-nilai yang telah ditentukan.
Melengkapi equivalence class partitioning.
Petunjuk pemakaian BVA :
Jika kondisi input berupa range yang dibatasi oleh nilai a dan b, test case
harus dirancang dengan nilai a dan b.
35
Jika kondisi input ditentukan dengan sejumlah nilai, test case harus
dikembangkan dengan mengerjakan sampai batas maksimal dari nilai
tersebut.
Sesuai dengan 1 dan 2, untuk kondisi output harus dirancang test case
sampai jumlah maksimal.
Untuk struktur data pada program juga harus dirancang sampai batas
kemampuan.
c) Comparison Testing. (pengujian perbandingan)
Perangkat keras dan perangkat lunak yang berlebihan memungkinkan
untuk digunakan.
Menggunakan team yang terpisah untuk mengembangkan versi-versi yang
independent dari perangkat lunak dengan menggunakan spesifikasi yang
sama.
Mencoba masing-masing versi dengan data yang sama untuk memastikan
bahwa semua versi memberikan output yang identik.
Semua versi dieksekusi secara paralel dengan perbandingan real time hasil
untuk memastikan konsistensi.
Output dari masing-masing versi sama implementasi benar.
Output berbeda masing-masing versi dari aplikasi diperiksa untuk
menentukan cacat pada suatu versi (perbedaan jelas)
Spesifikasi semua fungsi yang dikembangkan mengandung kesalahan,
maka semua versi kemungkinan besar merefleksikan kesalahan.
Masing-masing versi independen identik tetapi tidak benar, maka
pengujian kondisi akan gagal mendeteksi kesalahan.
d) Pengujian black-box
Didesain untuk mengungkap kesalahan pada persyaratan fungsional tanpa
mengabaikan kerja internal dari suatu program.
Berfokus pada domain informasi dari perangkat lunak.
Melakukan teste case dengan mempartisi domain input dan output dari
suatu program dengan cara yang memberikan cakupan pengujian yang
mendalam.
36
Partisi ekivalensi (Equivalence Class Partitioning) membagi domain input
kedalam kelas data yang mungkin untuk melakukan fungsi perangkat
lunak tertentu.
Analisis nilai terbatas (Boundary Value Analysis) memeriksa kemampuan
program untuk menangani data pada patas yang dapat diterima.
Pengujian perbandingan (Comparison Testing) mengembangkan perangkat
lunak ke dalam versi-versi yang independen dari suatu aplikasi dengan
menggunakan spesifikasi yang sama. Setiap versi diuji dengan data uji
yang sama untuk memastikan bahwa semua versi memberikan output yagn
identik. Disebut juga pengujian back to back.
Pengembang perangkat lunak yang berpengalaman sering mengatakan,
“Pengujian tidak akan pernah berakhir. Pengujian hanya berpindah dari Penguji ke
pelanggan. Setiap pelanggan menggunakan program tersebut, berarti suatu
pengujian dilakukan.”
Dengan mengaplikasikan desain test case, perekayasa perangkat lunak dapat
menapai pengujian yang lebih lengkap sehingga dapat mengungkap dan
melakukan koreksi sebelum “pengujian pelanggan” dimulai.
2.17.2 White Box Testing
Meramalkan cara kerja perangkat lunak secara rinci, karenanya logikal
path (jalur logika) yang melewati perangkat lunak diuji dengannmemberikan test
case yang menguji serangkaian kondisi dan loop secara spesifik.
Secara sekilas dapat disimpulkan bahwa metoda White Box Testing
merupakan petunjuk untuk mendapatkan program yang benar, karena semuanya
dilakukan dengan mendefinisikan seluruh jalur logika, mengembangkan test case
untuk mengerjakan program, dan mengevaluasi hasilnya, sehingga test case akan
mengerjakan logika program secara mendalam.
Pengujian white box adalah metode perancangan test case yang
menggunakan struktur kontrol dari perancangan prosedural untuk mendapatkan
test case.
Pengujian White Box disebut juga :
Glass Box Testing (Pengujian kotak bening)
37
Code Base Testing (Source kodenya dimunculkan)
Structural Testing (Struktur program ditampilkan)
Pengujian white-box
Berfokus pada struktur kontrol program.
Pengujian dilakukan untuk memastikan bahwa semua statemen pada
program telah dieksekusi paling tidak satu kali selama pengujian
dan
semua kondisi telah diuji.
Pengujian basis path, teknik pengujian white-box, menggunakan grafik
program (matrik grafik) untuk melakukan serangkaian pengujian yang
independen secara linear yang memastikan cakupan.
Pengujian aliran data dan kondisi lebih lanjut menggunakan logika
program, dan pengujian loop menyempurnakan teknik white box yang lain
dengan memberikan sebuah prosedur untuk menguji loop dari tingkat
kompleksitas yang bervariasi.
Implikasinya secara khusus diaplikasikan ke dalam komponen program
yang kecil (modul atau kelompok kecil dari modul).
Dengan menggunakan metoda White Box Testing, perekayasa sistem akan
dapat melakukan test case yang menjamin bahwa seluruh independent path di
dalam modul telah dikerjakan paling tidak satu kali, mengerjakan seluruh
keputusan logika pada sisi true dan false, melaksanakan seluruh loop sesuai
dengan batasannya dan mengerjakan seluruh struktur data internal yang menjamin
validitas.
Testing Stages dimana sasaran utama desain test case untuk mendapatkan
serangkaian pengujian yang memiliki kemungkinan tertinggi di dalam
pengungkapan kesalahan pada perangkat lunak.
Teknik yang digunakan :
Pengujian white-box (white–box testing)
Pengujian black-box (black-box testing)
Testing stages atau tingkatan pengujian merupakan validasi perangkat lunak (V &
V) ditujukan untuk menunjukkan bahwa sistem sesuai dengan spesifikasinya dan
bahwa sistem memenuhi harapan pelanggan yang membelinya. Validasi
melibatkan proses pemeriksaan, seperti inspeksi dan peninjauan, pada setiap
38
proses perangkat lunak dari definisi persyaratan user sampai pengembangan
program. Validasi perangkat lunak adalah proses pemeriksaan untuk menjamin
agar sistem telah sesuai dengan spesifikasinya dan memenuhi kebutuhan
sesungguhnya dari user sistem.
Namun
demikian,
mayoritas
biaya
validasi
disediakan
setelah
implementasi sistem operasional diuji. Untuk program-program kecil, sistem
seharusnya tidak diuji sebagai sistem tunggal. Sistem besar dibangun dari
subsistem yang dibangun dari model yang terbuat dari prosedur dan fungsi, proses
demikian dengan demikian harus dilakukan bertahap, dimana pengujian dilakukan
secara inkremental bersama dengan implementasi sistem, proses pengujian terdiri
dari 3 (tiga) tahap dimana komponen-komponen sistem diuji, sistem yang
terintegrasi diuji, dan akhirnya sistem diuji dengan data pelanggan, idealnya,
kesalahan komponen ditemukan dini pada proses dan masalah interface ketika
sistem diintegrasi, namun demikian, dengan ditemukannya kesalahan, program
harus didebug, hal ini menuntut tahap proses pengujian ulang, error pada
komponen program, bisa muncul pada saat pengujian itegrasi dan proses dengan
demikian bersifat iteratif, dengan informasi diumpan balik dari bagian akhir ke
bagian awal proses.
2.18 Penjelasan Tentang Web
2.18.1 Pengertian www
Teknologi World Wide Web (WWW) atau Web mulai berkembang
sejaktahun
1990
ketika
seorang
peneliti
bernama
Tim
Berners-Lee
mengimplementasikan sistem manajemen untuk mencegah terjadinya kehilangan
informasi dari seluruh struktur penelitian yang dilakukan oleh European
Organization for Nuclear Investigation. Perkembangan teknologi Web terkait
secara langsung dengan perkembangan Internet. Internet telah menjadi tulang
punggung utama dari perkembangan teknologi Web. Pertumbuhan penggunaan
Internet berbanding lurus dengan pertambahan penggunaan Web sebagai salah
satu aplikasi dari Internet. Kenaikan tersebut bahkan telah mencapai angka enam
puluh dua persen pertahun. Teknologi Web pada dasarnya adalah sebuah sistem
39
informasi yang berfungsi sebagai perantara. Perantara disini diartikan sebagai
suatu program yang bertindak untuk pihak lain atau merupakan suatu proses
perubahan atau merupakan proses pertukaran informasi. Dalam hal bertindak
sebagai perantara, teknologi Web umumnya dibedakan menjadi dua jenis layanan
perantara, yaitu perantara dari sisi penyedia layanan (server) maupun perantara
dari sisi pengguna layanan (user).
Perantara dari sisi server memiliki tugas untuk melayanani pengiriman
atau penerimaan data dan informasi 43 dari dan kesisi user. Sedangkan Web
dipandang dari sisi user dapat diartikan sebagai pemberi layanan terhadap
permintaan yang diajukan oleh user. Karateristik utama dari sebuah Web adalah
adanya keterkaitan (interlink) antara satu Web dengan Web lain. Dengan adanya
karakteristik tersebut, maka tujuan utama dari “dibuatnya” Web oleh Tim
Berners-Lee telah tercapai yaitu mencegah terjadinya kehilangan secara
menyeluruh seluruh data karena tidak adanya sistem distribusi data sebagaimana
jika dilakukan menggunakan teknologi Web. Selain memiliki karakteristik
keterkaitan, teknologi Web juga memiliki cirri khas lain yaitu evolution dan
decentralization yang masing-masing berarti teknologi Web akan selalu
berevolusi (evolution) dan teknologi Web merupakan teknologi yang tersebar
(decentralization).
Agar teknologi Web selalu berkarakteristik keterkaitan, berevolusi dan
terdesentralisasi, pengembangan teknologi Website dibagi menjadi tiga aspek
bagian. Bagian pertama adalah aspek repesentasi atau perwakilan (representation
aspect) yang memiliki fungsi strukturisasi dan menampilkan kembali (represent)
segala informasi yang tersimpan dalam Web dalam kapasitasnya sebagai perantara
dari sisi server. Desain dalam pengembangan teknologi Web yang kedua adalah
aspek identifikasi (identification aspect) yang menggambarkan teknologi Web
berfungsi sebagai media identifikasi dan melokalisasikan informasi diseluruh
jaringan.
Selanjutnya,
distrukturisasikan,
apabila
ditampilkan
sebuah
kembali
informasi
dalam
(representing)
jaringan
telah
kemudian
telah
diidentifikasi serta telah disimpan dalam suatu media penyimpanan (storage) atau
44 yang lazim disebut sebagai Web Hosting, diperlukan suatu aspek teknologi
Web terakhir yaitu aspek interaksi (interaction) yang berfungsi untuk mengakses,
40
memperbarui, mengganti, memproses atau saling menukar informasi (information
exchange) antara jaringan yang satu dengan jaringan lainnya yang saling
terinterkoneksi.
Interaksi ini merupakan bentuk komunikasi antara user dengan server atau
server dengan server yang terjadi melalui jalur transmisi elektronik atau biasa
disebut sebagai suatu protokol (protocol). Dengan demikian terlihat masingmasing aspek desain tersebut akan menggambarkan seperangkat konsep
independensi yang keberadaannya dapat dikombinasikan. Oleh karena itu, aspek
representasi, identifikasi, dan interaksi dalam desain teknologi Web merupakan
sebuah garis tegak lurus, yang saling terkait.
2.18.2 Pengertian Struktur HTML
Hypertext Markup Language (HTML) adalah sebuah markup language
yang digunakan untuk membuat sebuah dokumen hypertext agar dapat berdiri
secara independen. Dokumen HTML tersebut dapat berupa representasi dari
dokumen berita online, surat elektronik (e-mail), perangkat database atau tempat
belanja online (e-shopping) yang dipresentasikan oleh Web melalui Web browser.
Meskipun demikian perlu diketahui, HTML bukanlah bagian dari dokumen itu
sendiri melainkan atribut mandiri sebagai faktor representasi dari Web. Secara
sederhana dapat dikatakan dokumen HTML adalah sebuah dokumen yang SGML.
Hal tersebut disebabkan karena dokumen HTML 45 memiliki sebuah entitas,
sturktur dan logika program yang telah sesuai dengan SGML.
2.18.3 Pengertian Appserv Network /Apache
Untuk membuat sebuah pemrograman web server-site, diperlukan sebuah
web server. Ada banyak server yang berkembang dan sering digunakan dalam
membangun aplikasi berbasis web seperti misalnya PWS dan IIS yang dipakai
oleh ASP-nya Microsoft, Web Server Netscape, Qitami, Caudium, dan Apache.
PHP triad menyediakan Apache sebagai HTTP server dalam paketnya. Pada
awalnya, Apache di desain pada Sistem berbasis UNIX tetapi akhirnya
berkembang untuk berbagai sistem seperti Microsoft Windows, 2000, NT, 98, dan
41
95. Selanjutnya seperti di dalam versi UNIX, apache memiliki beberapa hal yang
dibutuhkan untuk feature-feature baru dan memiliki API sehingga dapat
digunakan dengan lebih mudah bagi pemakainya. Untuk mengetahui tentang
Apache secara lebih detail anda dapat mengunjungi situs resmi yang dimilikinya
yaitu http://apache.org/.
2.18.4 Sekilas Mengenai PHP
PHP (dulu: Personal Home Page, sekarang PHP: Hypertext Preprocessor)
merupakan script untuk membuat suatu aplikasi yang dapat terintegrasikan ke
dalam halaman HTML, sehingga suatu halaman web tidak lagi bersifat statis,
namun menjadi bersifat dinamis. Script PHP merupakan saingan berat dari ASP.
Pada dasarnya memang cara kerja kedua bahasa pemrograman web tersebut
memiliki persamaan, yaitu script disisipkan pada HTML dan dijalankan oleh web
server. Sebagai sebuah server-side, script PHP juga memilki keunggulan seperti:
1) Source program atau script tidak dapat dilihat dengan menggunakan fasilitas
view HTML source, yang ada pada web browser seperti internet Explorer atau
semacamnya.
2) Script tersebut dapat memanfaatkan sumber-sumber aplikasi yang dimiliki oleh
server, seperti misalnya untuk keperluan database connection. Saat ini, PHP sudah
mampu melakukan koneksi dengan berbagai database seperti MySQL, Direct MSSQL, Velocis, IBM DB2, Interbase, PostgreSQL.dBase, FrontBase, Solid,
Empress, mSQL, Sybase, FilePro (readonly-Personix, Inc.), Unix dbm, Informix
dab bahkan semua database yang mempunyai provider ODBC seperti
misalnya Microsoft Access dan lain-lain.
3) Pada aplikasi yang dibuat dengan PHP, pada saat server akan mengerjakan
script dan hasinyalah yang dikirimkan ke web browser. Hal itu akan menyebabkan
aplikasi tidak memerlukan kompatibilitas web browser atau harus menggunakan
web browser tertentu dan pasti dikenal oleh web browser apapun. 4) PHP dapat
melakukan semua aplikasi program CGI, seperti mengambil nilai form,
menghasilkan halaman web yang dinamis, mengirimkan dan menerima cooki.
PHP juga dapat berkomunikasi 47 dengan layanan-layanan yang menggunakan
protokol IMAP, SNMP, NNTP, POP3, HTTP dan sebagainya.
42
2.19 Integrasi Web, PHP dan Adobe Flash
Adobe Flash (dahulu bernama Macromedia Flash) adalah salah satu
perangkat lunak komputer yang merupakan produk unggulan Adobe Systems.
Adobe Flash digunakan untuk membuat gambar vektor maupun animasi gambar
tersebut. Berkas yang dihasilkan dari perangkat lunak ini mempunyai file
extension .swf dan dapat diputar di penjelajah web yang telah dipasangi Adobe
Flash Player. Flash menggunakan bahasa pemrograman bernama ActionScript
yang muncul pertama kalinya pada Flash 5.
Sebelum tahun 2005, Flash dirilis oleh Macromedia. Flash 1.0 diluncurkan
pada tahun 1996 setelah Macromedia membeli program animasi vektor bernama
FutureSplash. Versi terakhir yang diluncurkan di pasaran dengan menggunakan
nama 'Macromedia' adalah Macromedia Flash 8. Pada tanggal 3 Desember 2005
Adobe Systems mengakuisisi Macromedia dan seluruh produknya, sehingga nama
Macromedia Flash berubah menjadi Adobe Flash.
Adobe Flash merupakan sebuah program yang didesain khusus oleh
Adobe dan program aplikasi standar authoring tool professional yang digunakan
untuk membuat animasi dan bitmap yang sangat menarik untuk keperluan
pembangunan situs web yang interaktif dan dinamis. Flash didesain dengan
kemampuan untuk membuat animasi 2 dimensi yang handal dan ringan sehingga
flash banyak digunakan untuk membangun dan memberikan efek animasi pada
website, CD Interaktif dan yang lainnya. Selain itu aplikasi ini juga dapat
digunakan untuk membuat animasi logo, movie, game, pembuatan navigasi pada
situs web, tombol animasi, banner, menu interaktif, interaktif form isian, e-card,
screen saver dan pembuatan aplikasi-aplikasi web lainnya. Dalam Flash, terdapat
teknik-teknik membuat animasi, fasilitas action script, filter, custom easing dan
dapat memasukkan video lengkap dengan fasilitas playback FLV. Keunggulan
yang dimiliki oleh Flash ini adalah ia mampu diberikan sedikit code pemograman
baik yang berjalan sendiri untuk mengatur animasi yang ada didalamnya atau
digunakan untuk berkomunikasi dengan program lain seperti HTML, PHP, dan
Database dengan pendekatan XML, dapat dikolaborasikan dengan web, karena
mempunyai keunggulan antara lain kecil dalam ukuran file outputnya.
43
Movie-movie Flash memiliki ukuran file yang kecil dan dapat ditampilkan
dengan ukuran layar yang dapat disesuaikan dengan keingginan. Aplikasi Flash
merupakan sebuah standar aplikasi industri perancangan animasi web dengan
peningkatan pengaturan dan perluasan kemampuan integrasi yang lebih baik.
Banyak fiture-fiture baru dalam Flash yang dapat meningkatkan kreativitas dalam
pembuatan isi media yang kaya dengan memanfaatkan kemampuan aplikasi
tersebut secara maksimal. Fiture-fiture baru ini membantu kita lebih memusatkan
perhatian pada desain yang dibuat secara cepat, bukannya memusatkan pada cara
kerja dan penggunaan aplikasi tersebut. Flash juga dapat digunakan untuk
mengembangkan secara cepat aplikasi-aplikasi web yang kaya dengan pembuatan
script tingkat lanjut. Di dalam aplikasinya juga tersedia sebuah alat untuk mendebug script. Dengan menggunakan Code hint untuk mempermudah dan
mempercepat pembuatan dan pengembangan isi ActionScript secara otomatis.
Untuk memahami keamanan Adobe Flash dapat dilihat dari beberapa sudut
pandang, berdasarkan beberapa sumber referensi bahwa tidak ada perbedaan
menyolok antara HTML dan JavaScript dimana didalamnya terdapat banyak tools
yang dapat diambil dari SWF termasuk ActionScript. Sehingga kode data dapat
terjamin keamanannya. Oleh sebab itu, semua kebutuhan data yang terdapat
dalam SWF dapat diambil kembali melalui server. Keuntungan menggunakan
metode yang sama dengan menggunakan aplikasi web yang standar adalah akan
menjamin dan mengamankan penyimpanan dan perpindahan data.
2.20 Database dan DBMS (Database Management Sistem )
Pengertian dari database adalah : “Kumpulan dari data yang berhubungan
satu dengan yang lainnya yang tersimpan di perangkat keras komputer dan
digunakan perangkat lunak untuk memanipulasinya. Database perlu disimpan
untuk keperluan informasi lebih lanjut dan database perlu diorganisasikan
sedemikian rupa supaya informasi yang dihasilkan berkualitas. Database diakses
dan dimanipulasi dengan menggunakan perangkat lunak yang disebut DBMS
(Database Management Sistem).
Ada banyak sekali model-model dari database tersebut diantaranya adalah
MySQL database MySQL sebagai databasenya yang dijadikan satu paket
44
denganappserv atau xampp. MySQL sudah ada didalam paketnya untuk
melakukan penanganan pengolahan berbasis data. Sebenarnya, pengolahan data
tidak harus menggunakan database. PHP juga mengenal pengolahan data dengan
menggunakan file teks. Tetapi menyimpan data dalam file biasanya memiliki
banyak keterbatasan.
File teks tidak memilki kemampuan untuk mengolah data, misalnya
menghitung total nilai, rata rata, dan lain sebagainya. Demikian juga dalam hal
pencarian data. Semakin besar ukuran file, pencarian data yang dilakukan pada
“*.TXT” akan menjadi lebih sulit. Untuk itulah diperlukan database. Dengan
database, program akan lebih mudah mengendalikan akses terhadap data.
MySQL merupakan Relational Database Management System (RDBMS)
yaitu hubungan antar tabel yang berisi data-data pada suatu database. Hal tersebut
lebih baik daripada jika semua data terkumpul menjadi satu dalam satu tabel.
Kelebihan hal di atas, yaitu dapat mempercepat, pencarian suatu data. Tabel-tabel
tersebut di-link oleh suatu relasi yang memungkinkan untuk mengkombinasikan
data dari beberapa tabel ketika seorang user menginginkan menampilkan
informasi dari suatu database. MySQL merupakan database yang dikembangkan
dalam bahasa SQL (Structured Query Language). SQL merupakan bahasa yang
terstruktur yang digunakan untuk interaksi antara script program dengan database
server dalam hal pengolahan data. Dengan SQL dapat memebuat tabel yang
nantinya akan diisi dengan data, memanipulasi data (misalnya menambah data,
menghapus data, dan mengupdate data), serta membuat suatu perhitungan dengan
berdasarkan data yang ditemukan.
Download