5 BAB II LANDASAN TEORI 2.1 Film Film dapat diartikan sebagai

advertisement
BAB II
LANDASAN TEORI
2.1
Film
Film dapat diartikan sebagai cerita atau gambar hidup. Pengertian lebih
lengkap dan mendalam tercantum dalam pasal 1 ayat (1) UU Nomor 8 Tahun
1992 tentang Perfilman disebutkan bahwa yang dimaksud dengan film adalah
karya cipta seni dan budaya yang merupakan media komunikasi massa pandangdengar yang dibuat berdasarkan asas sinematografi dengan direkam pada pita
seluloid, pita video, piringan video dan/atau bahan hasil penemuan teknologi
lainnya dalam segala bentuk, jenis dan ukuran melalui proses kimiawi, proses
elektronika, atau proses lainnya, dengan atau tanpa suara, yang dapat
dipertunjukkan dan/atau ditayangkan dengan sistem mekanik, elektronik dan/atau
lainnya.
Pengertian di atas jelas mengungkapkan bahwa film adalah sebuah proses
sejarah atau proses budaya suatu masyarakat yang disajikan dalam bentuk gambar
hidup. Sebagai sebuah proses, banyak aspek yang tercakup dalam sebuah film.
Mulai dari pemain atau artisnya, produksi, bioskop, penonton, dan sebagainya.
Film juga identik sebagai hasil karya seni kolektif yang melibatkan sejumlah
orang, modal, dan manajemen. Dalam proses pembuatannya, pada dasarnya film
merupakan komoditi jasa kreatif untuk dinikmati masyarakat luas. Dinilai dari
sudut mana pun, film adalah acuan otentik tentang berbagai hal, termasuk
perkembangan sejarah suatu bangsa. Film merupakan karya cipta manusia yang
berkaitan erat dengan berbagai aspek kehidupan.
2.1.1 Klasifikasi Film
Dalam buku ”100 tahun bioskop di Indonesia”, Johan Tjasmadi
mengelompokkan film berdasarkan beberepa kategori, di antaranya adalah
berdasarkan fungsi, berdasarkan maksud pembuatan dan sasaran yang dituju, dan
berdasarkan usia penonton.
5
6
2.1.1.1 Klasifikasi Film Berdasarkan Fungsinya
Pada dasarnya, fungsi film berkaitan erat dengan manfaat, apa gunanya
seseorang membuat film. Ada beberapa alasan yang sangat mendasar:
1.
Film sebagai media seni. Dalam hal ini, suatu film dianggap memiliki nilai
seni
karena di
dalamnya mengandung unsur-unsur artistik seperti
sinematografi, seni peran, seni suara, dan berbagai hasil citra, rasa, dan karsa
para pembuatnya.
2.
Film sebagai media hiburan. Dalam hal ini film memiliki fungsi sebagai
tontonan yang bersifat dengar-pandang (audio visual).
3.
Film sebagai media informasi. Dalam hal ini film berfungsi untuk
menyampaikan pesan yang ada di dalamnya kepada penonton.
2.1.1.2 Klasifikasi Film Berdasarkan Maksud Pembuatan
Pada awal penemuannya film memang dimaksudkan untuk dijadikan
komoditi jasa kreatif. Artinya barang / jasa dagangan yang bernilai seni. Pada
perkembangan berikutnya film memiliki ciri atau rumpun dan kategori yang
berbeda sesuai dengan tujuan pembuatannya. Berikut ini adalah tabel yang
membedakan film berdasarkan maksud pembuatannya :
Tabel 2.1 Film Berdasarkan Maksud Pembuatananya
No.
Rumpun
Kategori
Asal anggaran
produksi
Hiburan
main-stream
Modal usaha (profit
oriented)
Keuntungan bagi
pemodal (material
gain)
Tujuan utama film
1
Komersial
2
Dokumentasi Arsip
Belanja rutin
Data terhimpun
dengan rapi
3
Informasi
Penyuluhan
Belanja proyek
Pesan mencapai
sasaran
4
Publikasi
Promosi
Biaya perusahaan
(pemasaran)
Menarik perhatian
publik /
membentuk opini
5
Artistik
Seni
Sponsor/lembaga
keuangan non profit
Apresiasi seni /
penghargaan
side-stream
Sumber : 100 Tahun Bioskop di Indonesia, Djohan Tjasmadi (2008, P.45)
7
2.1.1.3 Klasifikasi Film Berdasakan Usia Penonton
Film pada perkembangannya juga dipilah-pilah sesuai usia penontonnya.
Hal ini bertujuan agar pesan yang disampaikan oleh pembuat film dapat sesuai
sasaran. Klasifikasi film berdasarkan usia penonton ini sering juga disebut rating
film. Di Indonesia sendiri film berdasarkan usia penonton dibagi menjadi: film
anak-anak (children films), film semua umur (all ages), dengan bimbingan orang
tua (parental guidance), film remaja (teenages), film dewasa (adults).
2.1.2 Rating Film
Rating film atau nilai mutu yang didapat dari hasil penilaian yaitu suatu
proses pekerjaan yang dilakukan seorang penilai dalam memberikan suatu
estimasi dan pendapat (opini) tentang nilai ekonomis suatu properti, baik
berwujud maupun tidak berwujud berdasarkan analisis terhadap fakta-fakta yang
objektif dan relevan dengan menggunakan metode tertentu, serta mengacu pada
prinsip-prinsip penilaian yang berlaku (Prawoto, Agus. 2003). Ada beberapa
kondisi tentang penilaian:
1.
Penilaian merupakan sebuah opini
2.
Penilaian merupakan suatu estimasi nilai
3.
Merupakan hasil analisis atas data pasar yang relevan
2.2
Bioskop
Pengertian bioskop menurut Kamus Besar Bahasa Indonesia, bioskop atau
yang sering kita sebut theater memliki arti : Gedung pertunjukan film cerita
(KBBI, 2008); Pertunjukan yang diperlihatkan dengan gambar (film) yang disorot
sehingga dapat bergerak dan berbicara (KBBI, 2008).
Biro Pusat Statistik (1989) konsep dan definisi bioskop adalah : Bioskop
adalah suatu perusahaan/usaha yang bergerak di dalam bidang pemutaran film
untuk umum atau semua golongan masyarakat dengan pembayaran dilakukan
pada tempat/bangunan tertentu. Menurut banyaknya ruang yang digunakan untuk
pertunjukan film, bioskop dibedakan menjadi 2 (dua) jenis yaitu :
1.
Bioskop dengan ruang pertunjukan tunggal, yaitu suatu bioskop yang
memiliki hanya 1 (satu) ruang yang dipergunakan oleh para penonton untuk
melihat pertunjukan film pada layar yang tersedia.
8
2.
Bioskop dengan ruang pertunjukan lebih dari satu, yaitu bioskop yang
memiliki lebih dari satu ruang yang digunakan untuk melihat pertunjukan
film. Adapun film yang diputar pada setiap ruang masing-masing berbedabeda. Bioskop dengan ruang lebih dari satu disebut juga sinepleks.
2.2.1 Golongan Bioskop
Menurut Johan Tjasmadi (2008), pada dasarnya ada tiga golongan
bioskop, yaitu kelas A, B, dan C. Golongan A dapat disamakan dengan bioskop
kelas premiun dengan beberapa kelas dalam auditoriumnya. Bioskop golongan ini
mendapatkan hak eksklusif untuk memutar film kelas A pada putaran pertama.
Beberapa bioskop di Jakarta seperti Cinema XXI, The Premiere, Blitzmegaplex,
MPX dan Surya M2 termasuk dalam kategori ini.
Golongan B dapat disamakan dengan bioskop kelas menengah dan dapat
menerapkan sistem kelas untuk tempat duduknya. Bioskop golongan ini biasanya
mendapatkan giliran kedua untuk pemutaran film-film A pada waktu weekend.
Cinema 21 termasuk dalam golongan bioskop ini.
Golongan C dapat disamakan dengan bioskop kelas bawah dan biasanya
tidak ada sistem kelas dalam tempat duduknya. Harga tiket yang ditetapkan
biasanya tidak lebih dari Rp.10.000,- dan harus menunggu giliran terakhir dalam
pemutaran film kelas A. Bioskop ini biasanya masih terdapat di beberapa daerah
dan dikelola oleh pengusaha setempat.
2.2.2 Golongan Penonton Bioskop
Menurut Dewan Film Nasional dalam ”Layar Perak : 90 tahun Bioskop
Indonesia” penonton bioskop dapat digolongkan ke dalam beberapa klasifikasi.
Dalam hal film, konsumen biasa disebut pelanggan bioskop atau penggemar film.
Dalam pengertian yang awam tidak ada beda pelanggan bioskop dan penggemar
film. Tapi pada pembicaraan yang lebih serius, mungkin akan terasa perbedaan
mencolok.
a.
Pelanggan Bioskop
Pelanggan bioskop terdiri dari mereka yang secara finansial dikelompok-
kelompokkan pada kelas bioskop, yaitu :
9
1. Kelas satu, yang di kota besar, biasanya disebut Golongan A, yaitu penonton
yang ingin mendapat kesempatan pertama. Jumlah cukup banyak dan
frekuensi menontonnya tinggi.
2.
Kelas Dua, yang di kota besar, biasanya disebut Golongan B. Tidak keberatan
beroleh kesempatan menonton agak lambat, asalkan harga karcis bioskop
tidak terlalu mahal. Tapi menurut kondisi film yang dipertunjukan baik dan
layak tonton. Jumlahnya tidak terlalu banyak, frekuensi menontonnya sedangsedang saja.
3.
Kelas tiga, yang tinggal di kota besar, biasanya disebut Golongan C. Tidak
keberatan menonton film apa saja, asal menghibur. Jumlahnya amat banyak,
frekuensi menontonnya cukup tinggi, kemampuan finansialnya amat terbatas.
b.
Penggemar Film
Penggemar film adalah mereka yang berkelompok karena persamaan latar
belakang pendidikan, pengetahuan dan penguasaan bahasa asing.
1. Kelompok pertama cenderung memilih mutu film berdasarkan judul film
yang digarap oleh produser, sutradara, dan karyawan film, serta bintang yang
berbobot. Mereka sangat teliti sekali dalam menjatuhkan pilihan. Sebab,
menonton film bukan sekedar mencari hiburan, tapi menikmati karya seni
film dalam arti yang lebih luas.
2.
Kelompok kedua cenderung mengikuti arus. Pertimbangan mutu film tetap
merupakan referensi bagi mereka.
3.
Kelompok ini tidak terlalu memilih, sekedar mencari hiburan saja.
Pada tingkat pertumbuhan tertentu, investor cenderung mendahulukan
pembangunan bioskop tingkat satu, kemudian berdasarkan kebutuhan yang
mendesak, dibangun bioskop kelas dua, dan urutan terakhir kelas tiga. Dalam satu
negara di mana telah tercipta kondisi penonton yang cukup stabil, maka terdapat
jumlah bioskop yang terdiri dari berbagai tingkat kelas – yang tentu saja tercipta –
berdasarkan kebutuhan ril.
Dalam keadaan semacam itu, produsen, dalam hal ini produser film,
seyogyanya menentukan terlebih dahulu sasaran kelas penonton yang dituju agar
hasil produksinya dapat diedarkan berdasar pasar yang tersedia. Ini pun
10
memerlukan penyesuaian mutu, menurut tingkat kebutuhan masyarakat penonton
atau pelanggan bioskop, menurut kelas dan zamannya.
2.3
API (Application Programming Interface)
2.3.1 Pengertian API
API atau Application Programming Interface adalah kumpulan fungsifungsi dan protokol yang membantu programmer untuk membangun sebuah
software. Di masa lalu, API pada umumnya dihubungkan dengan fungsi-fungsi
pada sistem operasi. 2 atau 3 tahun ini, Web API menjadi populer sehingga mulai
menggeserkan makna API yang pada mulanya khusus membicarakan fungsifungsi yang berhubungan dengan sistem operasi dan komputer desktop, menjadi
kata pengganti untuk Web Service (yang dulunya cukup populer).
Keberadaan Web API (atau Web Service) memungkinkan developer (baik
web, desktop maupun aplikasi mobile) untuk membangun aplikasi dengan
menggunakan data dari berbagai sumber data online. Belakangan, cara ini disebut
mashup. Perusahaan-perusahaan ternama mulai banyak yang menyediakan APInya dalam berbagai kategori seperti social networks, mapping, jual beli hingga
musik.
2.3.2 Protokol
Saat ini, protokol yang paling banyak digunakan oleh Web API adalah
REST (Representational State Transfer). Contoh perusahaan yang menggunakan
REST adalah Twitter, Facebook dan Google. REST mungkin dipilih karena
mudah dipakai oleh developer. Di masa lalu, SOAP adalah protokol yang paling
populer, tetapi belakangan turun popularitasnya terutama karena sulitnya
implementasi.
2.3.2.1 REST (Representational State Transfer)
REST adalah salah satu jenis web service yang menerapkan konsep
perpindahan antar state. State disini dapat digambarkan seperti jika browser
meminta suatu halaman web, maka server akan mengirimkan state halaman web
yang sekarang ke browser. Bernavigasi melalui link-link yang disediakan sama
halnya dengan mengganti state dari halaman web. Begitu pula REST bekerja,
11
dengan bernavigasi melalui link-link HTTP untuk melakukan aktivitas tertentu,
seakan-akan terjadi perpindahan state satu sama lain. Perintah HTTP yang bisa
digunakan adalah fungsi GET, POST, PUT atau DELETE. Balasan yang
dikirimkan adalah dalam bentuk XML sederhana tanpa ada protokol pemaketan
data, sehingga informasi yang diterima lebih mudah dibaca dan diparsing di sisi
client.
Dalam pengaplikasiannya, REST lebih banyak digunakan untuk web
service yang berorientasi pada resource. Maksud orientasi pada resource adalah
orientasi yang menyediakan resource-resource sebagai layanannya dan bukan
kumpulan-kumpulan dari aktifitas yang mengolah resource itu, dimana standar
yang baik akan sangat berguna karena berbicara dalam satu bahasa yang sama.
Beberapa contoh web service yang menggunakan REST adalah: Flickr API
(Application Program Interface), YouTube API, Amazon API.
2.3.2.2 SOAP (Simple Object Access Protocol)
SOAP adalah protokol untuk saling bertukar pesan dalam format XML
antar komputer di dalam jaringan, biasanya menggunakan HTTP/HTTPS. Dalam
menjalankan tugasnya, SOAP menggunakan struktur XML tertentu dalam
pengirimkan request kepada web service. Penerimaan respon dari web service pun
memiliki strukturnya sendiri.
Struktur SOAP dibagi dalam dua bagian, Envelope dan Body. Envelope
berisi keterangan-keterangan tentang namespace yang digunakan dalam dokumen
XML ini, dan juga dapat berisi atribut dan header. Sedangkan Body berisi pesan
yang akan dikirimkan ke web service.
Struktur SOAP response juga sama dengan struktur SOAP request yang
diterangkan sebelumnya, isi dari body memiliki tag result yang berisi balasan atau
output dari operasi web service yang dipanggil pada pesan SOAP request. Beda
halnya dengan REST, SOAP web service lebih menekankan pada web service
yang berorientasi service. Ketimbang mengambil resource-resource seperti dalam
REST, SOAP lebih ke arah pemanggilan metode-metode yang memanipulasi
resource-resource yang ada, dalam arti lain, melayani kebutuhan pengguna yang
12
lebih beragam. Beberapa contoh SOAP web service adalah Google API, Yahoo!
API, dan aplikasi scheduling event calendar berbasis web.
2.3.3 Format Data
2.3.3.1 XML (Extensible Markup Language)
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.
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 (”).
13
2.3.3.2 JSON (JavaScript Object Notation)
JSON (JavaScript Object Notation) merupakan format yang ringan untuk
memasukan data ke dalam sebuah variabel. Sangat mudah dimengerti dan
diimplementasikan oleh manusia, dan mudah juga untuk komputer dalam
melakukan parsingnya. JSON merupakan bagian dari bahasa pemrograman
JavaScript (Standard ECMA-262 3rd Edition – December 1999). JSON
merupakan format teks yang sepenuhnya independen tetapi menggunakan
konvensi yang familiar dengan bahasa pemrograman dari keluarga-C, termasuk C,
C++, C#, Java, JavaScript, Perl, Python, dan sebagainya. Kelebihan inilah yang
membuat JSON menjadi sebuah bahasa data-interchange yang ideal.
JSON dibangun dalam dua struktur:
1.
Beberapa pasangan dari nama/nilai. Dalam beberapa bahasa perograman
biasa disebut dengan istilah object, record, struct, tabel hash, key list atau
associative array.
2.
Nilai-nilai yang terusun secara ordered list. Biasa disebut dengan array,
vector, list atau daftar dalam bahasa pemrograman.
JSON adalah struktur data yang universal, dalam artian bisa digunakan
dalam berbagai bahasa pemrograman. Hampir semua bahasa pemrograman
mendukung penuh JSON dalam berbagai format. Hal ini memungkinkan format
data yang dapat dipertukarkan menggunakan bahasa pemrograman juga
menggunakan dasar dari struktur JSON.
Format data JSON mempunyai aturan sebagai berikut:
a. Object adalah satu set nama/nilai yang tidak terurut. Penulisan object
dimulai dengan tanda { (kurung kurawal buka) dan diakhiri dengan tanda
} (kurung kurawal tutup). Setiap nama diikuti oleh tanda : (titik dua) dan
pasangan nama/nilai dipisahkan dengan tanda , (koma).
Gambar 2.1 Object dalam JSON (www.json.org)
14
b.
Array adalah sekumpulan nilai yang teratur. Penulisan sebuah array dimulai
dengan tanda [ (kurung siku buka) dan diakhiri dengan tanda ] (kurung siku
tutup). Nilai dipisahkan menggunakan tanda , (koma).
Gambar 2.2 Array dalam JSON (www.json.org)
c.
Nilai bisa berupa string dalam tanda kutip, atau number (angka), TRUE atau
FALSE atau NULL, sebuah object atau sebuah array. Struktur ini dapat
ditulis menggunakan metode bersarang.
Gambar 2.3 Value atau nilai dalam format JSON (www.json.org)
d.
String adalah rangkaian atau urutan karakter unicode yang berada daslam
tanda kutip, bisa juga hanya berisi karakter kosong, menggunakan tanda \
(backslash) untuk escape. Karakter di representasikan sebagai string tunggal.
Tipe data string pada JSON sangat mirip dengan definisi pada bahasa C atau
Java.
Gambar 2.4 Tipe Data String Pada Format JSON (www.json.org)
15
e.
Number sangat mirip dengan definisi pada bahasa C atau Java, hanya saja tipe
bilangan oktal dan heksadesimal tidak digunakan.
Gambar 2.5 Number Pada Format JSON (www.json.org)
Ruang kosong (Whitespace) dapat diselipkan diantara pasangan atau token
apa saja. Kecuali detail encoding, yang secara jelas akan berfungsi untuk
menjelaskan bahasa yang digunakan.
JSON sangat berguna saat kita sering melakukan pertukaran data pada
sebuah aplikasi. Contoh nyata adalah penggunaan tabulasi menggunakan JqGrid,
yang merupakan salah satu plugin jQuery untuk menampilkan data dalam bentuk
spreadsheet. Plugin ini juga mendukung format JSON, selain format XML.
Sejauh ini format data yang paling populer memang XML, namun
demikian JSON jelas sekali tumbuh popularitas dan penggunaannya. Banyak
developer lebih suka menggunakan JSON, karena berbagai alasan, diantaranya:
1.
Data bisa diakses tanpa parsing yang rumit
2.
JSON parser tersedia hampir di semua bahasa pemrograman
3.
JSON parser cepat, kecil, ringan dan tidak rumit penggunaannya
4.
Output JSON lebih kecil karena tidak perlu mencantumkan attribute dan
namespace, selain itu tag yang digunakan hanya berupa kurung kurawal.
2.3.4 Keuntungan Membangun Web API
Berikut beberapa keuntungan yang bisa didapatkan dengan membangun
Web API :
1.
Membantu membangun loyalitas terhadap brand.
2.
Meningkatkan ketertarikan kepada produk atau layanan perusahaan pemilik
API.
16
3.
Memberikan alat yang berguna bagi konsumer, terutama pengguna API (web,
desktop atau mobile developer). Selain itu pengembangan aplikasi API dapat
menarik pengembang aplikasi lain untuk membuat aplikasi dengan
menggunakan fasilitas dari API yang bahkan tidak terpikirkan untuk
menggunakannya fasilitas semacam itu.
4.
Bisa digunakan sebagai alat komunikasi bisnis antar perusahaan. Contoh
penggunaannya misalnya Amazon dan PayPal.
2.4
Database
Database adalah kumpulan data yang saling berhubungan dan didesain
sedemikian rupa untuk memenuhi kebutuhan informasi dari suatu organisasi.
Database adalah sebuah tempat penyimpanan dari data yang digunakan secara
bersamaan oleh banyak departemen dan pengguna. Database tidak lagi dimiliki
oleh satu departemen tetapi menjadi sumber daya bersama dalam perusahaan.
Database tidak hanya memegang data operasional tetapi juga deskripsi dari data
tersebut. Untuk alasan ini, database juga diartikan sebagai sekumpulan data
terintegrasi yang mejelaskan dirinya sendiri. (Connolly dan Begg, 2009).
2.4.1 Relational Database
Relational database adalah sebuah kumpulan dari relasi yang telah
dinormalisasi dengan nama relasi yang jelas (Connolly dan Beg, 2009). Relational
database merupakan suatu tipe database yang berdasarkan model relational,
dimana semua data dapat dilihat oleh pengguna, disusun dalam bentuk tabel-tabel
dan semua operasi pada database bekerja pada tabel-tabel tersebut. Relasi antar
tabel pada relational database sudah melalui tahap normalisasi dengan nama relasi
yang berbeda-beda.
Terdapat 3 jenis relasi antar-record dalam tabel (Connolly dan Beg, 2009),
yaitu:
1.
Relasi one-to-one adalah relasi antara satu record dengan satu record dalam
tabel lain yang saling berhubungan.
2.
Relasi one-to-many adalah relasi antar satu record dengan lebih dari satu
record dalam tabel lain sehingga saling berhubungan.
17
3.
Relasi many-to-many adalah relasi antar banyak record dengan lebih dari satu
record dalam tabel lain yang saling berhubungan.
2.4.2 Database Management System (DBMS)
DBMS (Database Management System) adalah sebuah sistem software
yang memungkinkan pengguna untuk mendefinisikan, memuat, memelihara, dan
mengatur akses ke dalam database (Connolly dan Beg, 2009). DBMS merupakan
sebuah software yang berinteraksi dengan pengguna program aplikasi dan
database.
Sebuah DBMS menyediakan beberapa fasilitas sebagai berikut :
1.
Data Definition Language (DDL)
DDL adalah sebuah bahasa yang mengijinkan Database Administrator atau
pengguna untuk menggambarkan dan memberi nama dari entitas, attribute,
dan relationship yang dibutuhkan untuk aplikasi bersama dengan semua
kepercayaan yang berhubungan dengan batasan keamanan (Connolly dan
Begg, 2009). Contoh dari operasi DDL adalah create, drop, dan alter tabel.
2.
Data Manipulation Language (DML)
DML adalah sebuah bahasa yang menyediakan sekumpulan operasi yang
mendukung operasi manipulasi data di dalam database. (Connolly dan Begg,
2009). Contoh dari operasi DML adalah insert dan update.
3.
Menyediakan kontrol akses ke database, sebagai contoh :
a.
Security system, dimana mencegah pengguna yang tidak mempunyai hak
untuk mengakses database.
b.
Integrity system, dimana menjaga konsistensi dari data.
c.
Concurrency control system, dimana mengijinkan akses yang terbagi
dalam database.
d.
Recovery control system, dimana mengembalikan kondisi database
sebelum kegagalan hardware atau software.
e.
User-accessible catalog, dimana berisi deskripsi dari data dalam
database.
18
2.5
PHP (Hypertext Preprocessor)
2.5.1 Definisi PHP
PHP merupakan bahasa pemrograman berbasis web yang memiliki
kemampuan untuk memproses data dinamis, Artinya, ia dapat membentuk suatu
tampilan berdasarkan permintaan teknik. Misalnya, bisa menampilkan isi database
kehalaman web. pada prinsip nya PHP mempunyai fungsi yang sama dengan
skrip-skrip seperti ASP (Active server page). Cold fusion, ataupun perl, namun,
perlu diketahui bahwa PHP sebenar nya bisa dipakai secara command line,
Artinya, skrip PHP dapat dijalankan tanpa melibatkan web server maupun
browser. Kode PHP juga bisa berkomunikasi dengan database dan melakukan
penghitungan-penghitungan yang kompleks sambil jalan. PHP dikatakan sebagai
sebuah server-side embedded script language artinya sintaks-sintaks dan perintah
yang berikan akan sepenuhnya dijalankan oleh server tetapi disertakan pada
halaman HTML biasa (Sudarmanto, 2008). Aplikasi-aplikasi yang dibangun oleh
PHP pada umumnya akan memberikan hasil pada web browser tetapi pada
prosesnya secara keseluruhan dijalankan di server.
Pada prinsipnya server akan bekerja apabila ada permintaan dari client.
dalam hal ini client menggunakan kode-kode PHP untuk mengirimkan permintaan
ke server. Ketika menggunakan PHP sebagai server-side embedded script
language maka server akan melakukan hal-hal sebagai berikut :
a.
Membaca permintaan dari client / browser.
b.
Mencari halaman di server.
c.
Melakukan instruksi yang diberikan oleh PHP untuk melakukan modifikasi
pada halaman.
d.
Mengirim kembali pada halaman tersebut kepada client melalui internet atau
interanet.
2.5.2 Koneksi ke MYSQL
Untuk mengkoneksikan PHP dengan MYSQL diperlukan inisialisasi awal
nama host, nama user, dan user password, Contoh syntax PHP untuk koneksi
dengan MYSQL :
<?php
//setup
19
$server =“localhost”: //nama server
//membuat koneksi
$conn = mysql _connect ($server, “” , “”) or die (“Anda
gagal.”);
?>
/* Die digunakan untuk menghentikan program apabila request
yang diminta gagal*/
Setelah inisialisasi dijalankan maka fungsi-fungsi koneksi PHP dengan MySQL
dapat dijalankan. Fungsi-fungsi yang sering digunakan antara lain dapat dilihat
pada Tabel 2.2:
Tabel 2.2 Fungsi-fungsiKOneksi PHP dengan MySQL
Fungsi
Keterangan
Mysql_connect
Membuka / membuat koneksi ke suatu server MySQL
secara persisten.
Mysql_close
Menutup koneksi ke server MySQL
Mysql_fetch_row
Mengambil record dari database dan memasukannya ke
dalam array numerik, kebalikan dari fungsi
mysql_fetch_assoc yang hanya menghasilkan array
assosiatif.
Mysql_fetch_field
Memperoleh informasi suatu kolom.
Mysql_num_rows
Memperoleh informasi jumlah record / baris data dari
suatu query.
Mysql_num_fields
Memperoleh informasi jumlah kolom dari suatu query.
Mysql_list_dbs
Memperoleh daftar database.
Mysql_list_tables
Memperoleh daftar nama tabel dari suatu database
MySQL.
Mysql_list_fields
Memperoleh informasi nama field dari suatu tabel pada
suatu database MySQL
20
2.6
MySQL
2.6.1 Pengertian MySQL
MySQL adalah sebuah aplikasi Relational Database Management Server
(RDBMS) yang sangat cepat dan kokoh serta bersifat open source (mysql, 2003).
MySQL merupakan sebuah server basis data yang banyak digunakan di internet
karena keandalannya dan juga karena sifatnya yang freeware. Bahasa yang
diginakan dalam MySQL sama dengan bahasa yang dipakai oleh server basis data
lainnya, yaitu bahasa SQL, Structured Query Language (SQL) adalah bahasa
standar yang digunakan untuk mengaskses server basis data (Russell, 1995).
Dalam konteks bahasa SQL, pada umunya informasi tersimpan dalam
tabel-tabel yang secara logik merupakan struktur dua dimensi yang terdiri atas
baris-baris data (row atau record) yang berada dalam satu atau lebih kolom
(columm). Baris pada tabel sering di sebut sebagai attributes atau field.
Keseluruhan tabel itu dihimpun dalam satu kesatuan yang disebut database. Pada
semua distribusi MySQL sudah terdapat beberapa tools (perlengkapan), antara
lain:
1.
SQL server, yaitu program utama (engine) dari MySQL yang menyediakan
akses ke basis data.
2.
Client program, yaitu program interaktif klien yang digunakan untuk
melakukan berbagai perintah pada basis data MySQL.
3.
Program untuk melakukan queries secara langsung pada basis data dan
menampilkan hasilnya secara langsung.
4.
Program administrasi dan beberapa program kecil tambahan yang dapat
digunakan untuk menjalankan situs.
5.
Program untuk mengatur akses ke basis data.
6.
Program untuk melakukan impor dan ekspor basis data.
7.
Clinet library yang disediakan untuk mempermudah pemrograman.
Sebagai pertimbangan, MySQL mempunyai banyak keistimewaan yang
ditawarkan, antara lain:
1.
Open source, yaitu MySQL didistribusikan secara gratis.
21
2.
Query language support (mendukung bahasa query), dalam arti MySQL
(Structural Query Language) yang umum digunakan pada hampir semua
basis data modern.
3.
Capability (kemampuan), yaitu banyak client dapat melakukan koneksi ke
server pada saat bersamaan. Client dapat menggunakan beberapa basis data
secara bergantian. Kompabilitas dengan programming interface yang tersedia
antara lain C, Perl, Java, PHP dan Phyton.
4.
Connectivity and Security (konektivitas dan keamanan), yaitu dapat diakses
dari manapun melalui internet dan memiliki kontrol akses (previlege)
sehingga siapa saja yang tidak dibolehkan melihat data, tidak dapat melihat
data.
5.
Portability (dapat dipindahkan), yaitu MySQL dapat berjalan dibanyak varian
dari UNIX dan dapat berjalan pada sistem selain UNIX. Seperti Windows dan
OS/2. MySQL dapat berjalan dengan PC rumah (home PC) sampai PC server
dengan teknologi tinggi.
6.
Open Distribution (distribusi yang terbuka), yaitu MySQL mudah untuk
didapatkan, hanya dengan menggunakan web browser sudah bisa
mendapatkan source dari MySQL.
2.7
Teori Bahasa dan Automata
Teori bahasa membicarakan bahasa formal (formal language), terutama
untuk kepentingan perancangan kompilator (compiler) dan pemroses naskah (text
processor). Bahasa formal adalah kumpulan kalimat. Semua kalimat dalam sebuah
bahasa dibangkitkan oleh sebuah tata bahasa (grammar) yang sama. Sebuah
bahasa formal bisa dibangkitkan olehdua atau lebih tata bahasaberbeda. Dikatakan
bahasa formal karena grammar diciptakan mendahului pembangkitan setiap
kalimatnya. Bahasa manusia bersifat sebaliknya; grammar diciptakan untuk
meresmikan kata-kata yang hidup di masyarakat. Dalam pembicaraan selanjutnya
’bahasa formal’ akan disebut ’bahasa’ saja.
Automata adalah mesin abstrak yang dapat mengenali (recognize),
menerima (accept), atau membangkitkan (generate) sebuah kalimat dalam bahasa
tertentu.
22
2.7.1 Mesin Turing
Mesin turing adalah model yang sangat sederhana dari komputer. Secara
esensial, mesin Turing adalah sebuah finite automaton yang miliki sebuah tape
tunggal dengan panjang tak terhingga yang dapat membaca dan menulis data.
Mesin Turing menggunakan notasi seperti ID-ID pada PDA untuk
menyatakan konfigurasi dari komputasinya. Stack pada PDA memiliki
keterbatasan akses. Elemen yang dapat diakses hanya elemen yang ada pada top
stack. Pada Mesin Turing, memori akan berupa suatu tape yang pada dasarnya
merupakan array dari sel-sel penyimpanan.
Visualisasi dari sebuah mesin Turing diberikan oleh gambar berikut:
Gambar 2.6 Visualisasi Mesin Turing (Hopcroft. John E, 2008)
Mesin terdiri dari sebuah finite control, yang dapat berada dalam sebuah
himpunan berhingga dari state. Terdapat sebuah tape yang dibagi ke dalam kotakkotak atau sel-sel. Setiap sel dapat menampung sebuah dari sejumlah berhingga
dari simbol. Pada awalnya, input yang merupakan string dari simbol dengan
panjang berhingga dipilih dari input alphabet, ditempatkan pada tape.
Sel-sel tape yang lain, perluasan secara infinite ke kiri dan ke kanan, pada
awalnya menampung simbol khusus yang dinamakan blank. Blank bukan sebuah
input symbol dan mungkin terdapat simbol tape yang lain disamping input symbol
dan blank. Terdapat sebuah tape head yang selalu ditempatkan pada salah satu
dari sel-sel tape. Mesin turing dikatakan men-scan sel tersebut. Pada awalnya,
tape head berada pada sel paling kiri yang menampung input.
Sebuah pergerakan mesin Turing adalah sebuah fungsi dari state dari finite
control dan tape symbol yang di-scan. Dalam satu pergerakan, mesin Turing akan:
a.
Merubah state. Next state dapat sama dengan current state.
b.
Menulis sebuah tape symbol dalam sel yang di-scan. Tape symbol ini
mengganti symbol apapun yang ada dalam sel tersebut. Secara opsional,
23
simbol yang dituliskan dapat sama dengan simbol yang sekarang ada dalam
tape.
c.
Memindahkan tape head ke kiri atau ke kanan.
Diagram transisi untuk mesin Turing terdiri dari sebuah himpunan dari
node-node yang menyatakan state-state dari Mesin Turing. sebuah arc dari state q
ke state p diberi label oleh satu atau lebih item dengan bentuk X/Y D, dimana X
dan Y adalah tape symbol, dan D adalah arah, kiri (L) atau kanan (R).
start
q0
q1
q2
q4
q3
Gambar 2.7 Contoh Diagram Transisi untuk Mesin Turing (Hopcroft. John E,
2008)
2.8
Rekayasa Perangkat Lunak
Rekayasa Perangkat Lunak menurut Roger S. Pressman (2005) adalah
disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai tahap
awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Adapun
tujuan dari Rekayasa Perangkat Lunak yaitu :
1.
Meningkatkan keakuratan, performance & efficiency produk secara
keseluruhan dalam pengembangan.
2.
Menerapkan metodologi yang terdefinisi dengan baik
perangkat lunak.
untuk resolusi
24
3.
Rekayasa Perangkat Lunak berhubungan dengan masalah-masalah praktis
untuk menghasilkan suatu perangkat lunak. Pendekatan dilakukan dengan
model bisnis dan strategi bisnis suatu perangkat lunak.
Dalam perancangan perangkat lunak dikenal istilah SDLC (System
Development Life Cycle) yaitu tahapan-tahapan pekerjaan yang dilakukan oleh
analis sistem dan programmer dalam membangun sistem informasi. Pada
pengembangan aplikasi pengambilan data dan pembuatan API ini penulis rasakan
cocok menggunakan sistem rekayasa perangkat lunak model Iteratif jenis
Incremental. Model ini berbasiskan pada kebutuhan terhadap aplikasi secara
keberlanjutan untuk menyaring kebutuhan-kebutuhan tersebut dan estimasi
proyek secara keseluruhan. Model ini merupakan model pengembangan sistem
yang bersifat dinamis dalam artian setiap tahapan proses pengembangan sistem
dapat diulang jika terdapat kekurangan atau kesalahan.
Produk hasil increment pertama biasanya produk inti (core product), yaitu
produk yang memenuhi kebutuhan dasar, bukan prototype. Produk tersebut
digunakan oleh pengguna atau menjalani review/pengecekan detil. Hasil review
tersebut menjadi bekal untuk pembangunan pada increment berikutnya. Hal ini
terus dikerjakan sampai produk yang komplit dihasilkan.
Gambar 2.8 Tahapan Pada Model Proses Iterative Jenis Incremental
(Sommerville. Ian, 2007)
25
Pengembangan perangkat lunak dengan model incremental iteretif
memiliki kelemahan yang memungkinkan terjadinya kesulitan untuk memetakan
kebutuhan pengguna ke dalam rencana spesifikasi masing-masing hasil increment.
Oleh karenanya model ini hanya sesuai untuk proyek kecil (tidak lebih dari
200.000 baris coding).
Model ini mengkombinasikan element-element dari waterfall dengan sifat
iterasi/perulangan. Element-element dalam waterfall dikerjakan dengan hasil
berupa produk dengan spesifikasi tertentu, kemudian pada iterasi selanjutnya
proses dimulai dari fase pertama hingga akhir dan menghasilkan produk dengan
spesifikasi yang lebih lengkap dari yang sebelumnya. Demikian seterusnya hingga
semua spesifikasi memenuhi kebutuhan yang ditetapkan oleh pengguna.
26
Download