1 BAB II LANDASAN TEORI Pada pembahasan landasan teori ini akan diterangkan teori-teori yang berkaitan dengan dokumen dan sistem informasi yang dibang...
Pada pembahasan landasan teori ini akan diterangkan teori-teori yang berkaitan dengan dokumen dan sistem informasi yang dibangun.
2.1
Warkah Warkah adalah dokumen yang merupakan alat pembuktian data fisik dan
data yuridis bidang tanah yang telah dipergunakan sebagai dasar pendaftaran tanah tersebut. Istilah “warkah” di lingkungan Badan Pertanahan Nasional merupakan kumpulan berkas-berkas yang digunakan sebagai dasar dalam penerbitan suatu sertipikat tanah. Di dalam warkah tersebut biasanya berisi berbagai berkas yang harus dipersyaratkan asli atau berupa fotocopy (salinan). Warkah memiliki umur tidak terbatas atau bisa disebut sebagai “arsip hidup” sepanjang tanah yang disertipikatkan itu masih ada maka warkah itu masih tetap berlaku.
2.2
Sejarah Singkat Internet Sejak pertama kali dikembangkan pada tahun 1973 oleh lembaga Riset
Amerika Serikat DARPA (Defence Advanced Research Project Agency), perkwmbangan internet sangat pesat. Internet yang merupakan kepanjangan dari Interconnection Networking atau juga yang telah menjadi International Networking merupakan suatu jaringan yang menghubungkan komputer di seluruh
8
9
dunia tanpa dibatasi oleh jumlah unit menjadi satu jaringan yang bisa saling mengakses satu sama laln. Dengan internet, satu komputer dapat berkomunikasi secara langsung dengan komputer lain dari berbagai belahan dunia. Pada dasarnya jaringan komputer pada internet dibagi menjadi dua,yaitu web-client dan web-server. Web-server merupakan komputer yang menyimpan file-file web pages yang nantinya akan di akses oleh web-client. Web pages sendiri adalah halaman informasi tentang segala sesuatu yang ingin ditampilkan oleh orang membangun sebuah website sesuai dengan tujuan pembangunannya. Sedangkan yang dimaksud web client adalah komputer-komputer yang yang mengakses dan membaca web pages yang terdapat pada web server. Pemrograman web merupakan teknik pemrograman yang dilakukan untuk menciptakan sebuah web pages oleh karena web pages menggunakan kode hypertext, bahasa yang digunakan adalah bahasa hypertext. Contohnya adalah HTML. HTML (Hypertext Markup Language) adalah bahasa pemrograman standar yang digunakan di lingkungan berbasis web. Namun bahasa ini memiliki kelemahan yang sangat mendasar, yaitu tidak bisa digunakan untuk mengakses dan memanipulasi data di database server. Seiring dengan perkembangan web dan internet, berkembang pula banyak bahasa pemrograman untuk membangun sebuah aplikasi berbasis web. Mulai dari HTML, XML, Perl, CGI Script, Javascript, Java Servlets, ASP, PHP dan lain sebagainya. Alur kerja internet digambarkan pada gambar 2.1 sebagai berikut:
10
Relational Database MySQL
Web Server
Bahasa Pemrograman PHP
Web Browser
Gambar 2.1 Alur kerja website (Yuhefizar, 2008)
Dari gambar di atas terlihat adanya hubungan antara Web Browser, Web Server, Bahasa Pemrograman PHP, dan database. Secara teknis, database menyimpan data yang diolah oleh bahasa pemrogrmana PHP yang ada di web server kemudian data tersebut disampaikan dengan web browser dengan cara menuliskan alamat/URL sesuai dengan nama file yang terdapat pada web server.
2.3
World Wide Web (WWW) World Wide Web (WWW) adalah suatu metode untuk menampilkan
informasi di internet, baik berupa teks, gambar, suara maupun video yang interaktif dan mempunyai kelebihan untuk menghubungkan (link) satu dokumen dengan dokumen yang lainnya (hypertext) yang dapat diakses melalui sebuah
11
browser (Yuhefizar, 2008). Jika kita menggunakan web, kita mengikuti apa yang kita inginkan dan kita meloncat dari satu tempat ke tempat-tempat yang lain mencari apa saja yang kita inginkan. Satu hal yang menarik adalah kita cukup menggunakan sejumlah perintah yang sederhana untuk menelusuri web. WWW sering disebut sebagai Web, W3. secara teoritis, web tidak membatasi diri untuk data teks, tetapi juga menyertakan data grafik. Sebagai contoh, misalnya kita membaca artikel hypertext tentang pepohonan dan kita meloncat ke artikel tentang sebuah pohon, maka kita mungkin menemukan gambar untuk pohon tersebut, atau video klip untuk pohon tersebut, atau suara gemersik daun-daun pohon tersebut. Artikel hypertext yang menyertakan data grafik disebut sebagai artikel hypermedia. Selain itu web tidak membatasi diri untuk hubungan ke file, tetapi juga menyertakan hubungan ke segala tipe sumber daya internet, salah satu contoh adalah Terminal Emulation (Telnet) yaitu suatu aplikasi program komunikasi interaktif dua arah berbasiskan protokol TCP/IP (sekelompok protokol yang mengatur komunikasi data komputer di internet) yang digunakan untuk Telnet ke remote komputer dari komputer lokal atau terminal server, serta menikmati fungsi yang sama dengan terminal yang dihubungkan langsung ke komputer tersebut. Sekarang kita dapat menyimpulkan bahwa web adalah fasilitas hypertext yang mengorganisir semua informasi dalam internet. Meskipun ini tampak tidak masuk akal, web memberi kesempatan kita mengakses semua sumber daya internet secara cepat dan mudah.
12
2.4
Web Server Web Server adalah sebuah hardware dan software yang bertugas melakukan
interpretasi HTTP Request untuk kemudian melakukan respon atas HTTP Request tersebut dalam bentuk kode HTML, dan kode lainnya yang bisa dipahami oleh browser.(Ali Zaki, 2006) Web server merupakan tulang belakang dari world wide web (www). Web server menunggu permintaan dari client yang menggunakan browser seperti Netscape Navigator, Internet Explorer, Modzilla, dan program browser lainnya. Jika ada permintaan dari browser, maka web server akan memproses permintaan itu kemudian memberikan hasil prosesnya berupa data yang diinginkan kembali ke browser. Data ini mempunyai format yang standar, disebut dengan format SGML (standar general markup language). Data yang berupa format ini kemudian akan ditampilkan oleh browser sesuai dengan kemampuan browser tersebut. Contohnya, bila data yang dikirim berupa gambar, browser yang hanya mampu menampilkan teks (misalnya lynx) tidak akan mampu menampilkan gambar tersebut, dan jika ada akan menampilkan alternatifnya saja. Banyak aplikasi yang dapat digunakan untuk membuat suatu web server akan tetapi dalam dunia linux, Apache adalah satu-satunya aplikasi yang digunakan untuk web server, yang disebabkan karena beberapa alasan yaitu: a. Kecepatan yang dimiliki lebih baik jika dibandingkan dengan aplikasi-aplikasi lain yang digunakan untuk web server. b. Performance (kemampuan) yang sangat baik. c. Dapat diperoleh dengan gratis.
13
2.5
Server dan Client Komputer dapat dikategorikan menjadi dua jenis, yaitu komputer server dan
komputer client. Komputer server merupakan jenis komputer dengan spesifikasi dan fungsi yang khusus (Zainal Abidin, 2010) bertindak untuk melayani komputer-komputer lainnya dalam sebuah jaringan. Secara fisik, komputer server bisa saja tidak berbeda dengan komputer lainnya. Akan tetapi, mengingat tugasnya yang berat, server yang sesungguhnya memiliki kinerja yang lebih baik seperti kecepatan prosesor, besarnya memori (RAM), serta jumlah dan kapasitas harddisk. Kebalikan dari komputer server, komputer client adalah komputer pribadi (personal computer) yang digunakan oleh para pengguna. Komputer client mendapatkan layanan (software, file, dan lain-lain) dari komputer server.
2.6
Sistem Pengolahan Bagian terpenting dalam urutan menghasilkan informasi adalah dengan
melakukan pengolahan data. Data yang telah diolah tersebut disimpan dalam beberapa tabel sehingga mudah di akses oleh yang berkompeten. Berikut akan dijelaskan mengenai konsep pengolahan data.
2.6.1 Data Flow Diagram Data Flow Diagram memodelkan kejadian dan proses
(aktifitas yang
mengubah data) dalam sebuah sistem. Dari DFD dapat terlihat bagaimana
14
data mengalir kedalam, keluar dan didalam system tersebut. (Roger Pressman, 2002) Prinsip dasar DFD: a. Sistem dapat dipecah menjadi beberapa subsistem, dan subsistem dapat dipecah menjadi subsistem yang levelnya lebih rendah lagi, dan seterusnya. b. Setiap subsistem mewakili / menggambarkan sebuah proses atau aktifitas dimana data diproses. c. Pada level terrendah subsistem, proses sudah tidak dapat dipecah lagi. d. Setiap proses (subsistem/aktifitas) dalam DFD memiliki karakteristik dasar dari sistem yang dibentuknya. e. Sebagaimana sebuah sistem harus memiliki input dan output, setiap proses juga harus memiliki input dan output. f.
Data masuk ke dalam sistem dari lingkungan sekitar sistem, data mengalir diantara proses di dalam sistem, dan data dihasilkan sebagai output keluar dari sistem.
Secara singkat, DFD memperlihatkan: a. Proses di dalam sistem b. Penyimpanan data (file) yang membantu operasi sistem tersebut c. Informasi yang mengalir dalam sistem d. Batasan sistem e. Interaksi dengan pihak eksternal (External Entity)
15
Peraturan dasar DFD: a. Entitas
adalah
sumber
data
input
atau
penampung
data
output
(Originator or terminator) b. Data mengalir dari entitas harus mengalir pada proses c. Data mengalir pada entitas harus mengalir dari proses d. Proses dan penyimpanan data harus memiliki baik input maupun output (Apa yang masuk harus bisa keluar) e. Input pada penyimpanan data hanya berasal dari proses f. Output dari penyimpanan data hanya menuju proses
Notasi DFD: a. Proses, mengubah atau memanipulasi data. Setiap kotak memiliki nomer unik sebagai pengidentifikasi dan nama yang unik pula. b. Data flow, menggambarkan data/informasi yang mengalir menuju atau dari sebuah proses. Setiap data flow harus memiliki nama. Penggunaan notasi panah bolak-balik harus diperhatikan secara seksama. c. Entitas Eksternal, merupakan entitas yang menberikan kontribusi data atau inforamsi pada sistem atau yang menerima data/inforamsi dari sistem tersebut. d. Data Storage (Penyimpanan data), merupakan tempat dimana data disimpan
secara sementara atau permanen.
16
DFD terdiri atas satu set grafik, yaitu: a. DFD tingkat 0, yang disebut juga dengan model sistem fundamentasi atau model konteks (Diagram Konteks), merepresentasikan seluruh elemen sistem sebagai sebuah buble tunggal dengan data input dan output yang ditunjukan oleh anak panah. (Roger Pressman, 2002:365) b. Decomposition
Diagram,
alat
untuk
menggambarkan
dekomposisis
(pemecahan) dari system. Memiliki bentuk seperti hierarki organisasi. c. DFD Level 1, DVD Level 2, …, DFD level 1menunjukan rincian dari proses 0 pada Context Diagram (DFD level 0), DFD Level 2 menunjukan salah satu proses pada DFD level 1, dst. Pada DFD level 1 dan seterusnya, mulai muncul notasi penyimpanan data (data storage). Hal ini disebabkan data storage yang perlu didokumentasikan adalah data
storage
yang
relevan bagi sistem terkait. Strategi kunci dari penyusunan DFD level 1 dan seterusnya ini adalah jumlah external entity dan data flow yang terkait dengan external entity tersebut harus memiliki jumlah dan nama yang sama. Batasan Level DFD yang dapat dibuat untuk sebuah system adalah ketika suatu proses sudah tidak dapat di pecah lagi.
2.6.2 Diagram Konteks Diagram Konteks (context diagram) adalah diagram tingkat atas, merupakan diagram dari sebuah sistem yang menggambarkan aliran data yang masuk dan keluar sistem dan yang masuk dan keluar dari entitas luar. (Kusrini, 2007)
17
Diagram konteks merupakan level tertinggi dari DFD yang menggambarkan seluruh input ke sistem atau output dari sistem. Diagram Konteks memberi gambaran tentang keseluruhan sistem. Sistem dibatasi oleh boundary (dapat digambarkan dengan garis putus). Diagram konteks berisi gambaran umum (secara garis besar) sistem yang akan dibuat. Secara kalimat, dapat dikatakan bahwa diagram konteks ini berisi “siapa saja yang memberi data (dan data apa saja) ke sistem, serta kepada siapa saja informasi (dan informasi apa saja) yang harus dihasilkan sistem.” Ada empat macam yang dibutuhkan oleh diagram konteks, yaitu: 1. Siapa saja pihak yang akan memberikan data ke sistem. 2. Data apa saja yang diberikannya ke sistem. 3. Kepada siapa sistem harus memberi informasi atau laporan. 4. Apa saja isi/ jenis laporan yang harus dihasilkan sistem. Kata “Siapa” di atas dilambangkan dengan kotak persegi (disebut dengan terminator), dan kata “apa” di atas dilambangkan dengan aliran data (disebut dengan data flow), dan kata “sistem” dilambangkan dengan lingkaran (disebut dengan process). Penjelasan tentang simbol yang terdapat dalam konteks diagram dapat dilihat pada tabel 2.1 berikut:
Tabel 2.1 Simbol Konteks Diagram Keterangan Pihak-pihak yang berada di luar system, tetapi secara langsung berhubungan Terminator dengan system dalam hal memberi data atau menerima informasi Simbol
18
Di dalam diagram konteks, berisi mengenai system yang akan dibuat Process
Berisi data atau informasi yang mengalir dari satu pihak ke system dan sebaliknya
Data Flow
2.7
Bahasa Pemrograman
2.7.1 HTML (HyperText Markup Language) Hypertext
Markup
Language
(HTML)
merupakan
kumpulan-
kumpulan kode yang ditampilkan dalam format tag untuk ditampilkan dalam halaman web (Lia Kuswayatno, 2006). Dengan menggunakan perintahperintah HTML memungkinkan user untuk melakukan fungsi-fungsi berikut ini:
Menentukan ukuran dan alur teks.
Mengintegrasikan gambar dan teks (in-line).
Membuat links.
Mengintegrasikan file audio dan video.
Membuat forn interaktif.
HTML lebih menekankan pada penggambaran komponen-komponen, struktur
dan
formatting
di
dalam
halaman
web
daripada
menetukan
penampilannya. Sedangkan web browser digunakan untuk menginterpretasikan perintah-perintah HTML yang disispkan ke dalam teks dan menampilkan susunan
19
halaman ke style built-in browser dengan menggunakan font, tab, warna, garis, dan perataan teks yang dikehendaki ke komputer yang menampilkan halaman web. Struktur penulisan halaman web dengan HTML dapat dilihat pada listing 2.1 berikut:
Listing 2.1 Struktur penulisan halaman web dengan HTML
2.7.2 Cascading Style Sheet (CSS) Css (Cascading Style Sheet) adalah sebuah dokumen yang berdiri sendiri dan dapat dimasukkan dalam kode HTML atau sekedar menjadi rujukan oleh HTML dalam pendefinisian style (Sulistyawan, 2008). Css memiliki fungsi mengatur tampilan dari halaman web yang akan dibuat. Dengan menggunakan css, maka halaman web dapat memiliki tampilan yang sesuai dengan yang dikehendaki dan format penulisannyapun cukup mudah. Dalam penulisannya, css memiliki tiga macam format penulisan yaitu: a.
External style sheet Cara penulisan external style sheet adalah dengan menliskan semua style
yang dipakai pada suatu dokumen HTML yang terpisah dengan dokumen HTML. Untuk mengakses file css pada dokumen HTML yang diinginkan maka pada
20
bagian kepala dokumen HTML perlu ditambahkan tag . Pengunaan cara penulisan external style sheet lebih memiliki keuntungan daripada dua cara penulisan lainnya. Dengan menggunakan cara penulisan ini, maka 1 file css dapat dipakai untuk beberapa dokumen yang berbeda. Selain itu, dengan memisahkan file css dengan HTML, maka proses pengubaha masing-masing file menjadi lebih mudah karena antara file css dan HTML tidak saling tercampur. b.
Internal style sheet Penulisan dengan menggunakan internal style sheet ini hamper sama dengan
metode external style sheet, namun berbeda dengan external style sheet, style yang dipakai tidak ditulis terpisah dengan HTML melainkan langsung ditulis dibagian kepala HTML. Contoh penulisan css internal style dapat dilihat pada listing 2.2 berikut: <style type="text/css"> hr {color: sienna} p {margin-left: 20px} body { background-image: url ("images/back40.gif")}
Listing 2.2 Struktur penulisan Internal style sheet
c.
Inline style sheet Cara penulisan inline style sheet ini dilakukan dengan cara menuliskan
langsung efek style yang ingin dipakai pada tag yang diinginkan di dokumen HTML dan diletakkan di bagian tubuh HTML. Sekilas cara ini tampak lebih
21
mudah daripada cara lainnya. Tetapi bila style yang akan digunakan sama untuk setiap bagian atau dokumen HTML, maka cara ini sangat merepotkan karena style yang dipakai harus ditulis berulang kali pada tag yang diinginkan. Contoh penulisan css inline style sheet dapat dilihat pada listing 2.3 berikut:
This is a paragraph
Listing 2.3 Struktur penulisan Inline style sheet
2.7.3 Hypertext Preprocesssor (PHP) PHP adalah singkatan dari Hypertext Preprocessor yaitu bahasa pemrograman web server-side yang bersifat open source. PHP merupakan script yang terintegrasi dengan HTML dan berada pada server ( server side HTML embedded scripting). PHP adalah script yang digunakan untuk membuat halaman website dinamis (Anhar, 2010). Semua script PHP dieksekusi pada server di mana script tersebut dijalanakan. PHP diciptakan pertama kali oleh Rasmus Lerdorf pada tahun 1994. Awalnya, PHP digunakan untuk mencatat jumlah serta untuk mengetahui siapa saja pengunjung homepage-mya. PHP memiliki banyak kelebihan yang tidak dimiliki oleh bahasa script sejenis. PHP difokuskan pada pembuatan script server-side, yang bisa melakukan apa saja yang dapat dilakukan oleh CGI, seperti mengumpulkan data dari form,
22
menghasilkan isi halaman web dinamis, dan kemampuan mengrim serta menerima cookies, bahkan lebih daripada kemampuan CGI.
2.7.4 Javascript Javascript adalah bahasa pemrograman untuk memberikan kemampuan tambahan terhadap bahasa HTML dengan mengizinkan pengeksekusian perintah di sisi user, yang artinya di sisi browser bukan di sisi server web (Teguh Wahyono, 2009). Beberapa hal tentang Javascript:
Javascript didesain untuk menambah interaktif suatu web.
Javascript merupakan sebuah bahasa scripting.
Bahasa scripting merupakan bahasa pemrograman yang ringan.
Javascript berisi baris kode yang dijalankan di komputer (web browser).
Javascript biasanya disisipkan (embedded) dalam halaman HTML.
Javascript adalah bahasa interpreter (yang berarti skrip dieksekusi tanpa proses kompilasi).
Setiap orang dapat menggunakan Javascript tanpa membayar lisensi.
Ada beberapa cara untuk menuliskan Javascript, yaitu di bagian . atau external. Javascript dalam sebuah halaman web akan dieksekusi saat halaman di-load oleh browser. Namun, hal ini kadang tidak sesuai dengan
23
keinginan karena suatu saat akan mengeksekusi skrip saat halaman di-load, tetapi kadang javascript dijalankan melalui trigger sebuah event.
2.8
Database
2.8.1 Penjelasan Database Basis data (Database) dapat dibayangkan sebagai sebuah lemari arsip yang ditempatkan secara berurutan untuk memudahkan dalam pengambilan kembali data tersebut. Basis data menunjukkan suatu kumpulan data yang dipakai dalam suatu lingkungan perusahaan atau instansi. Penerapan basis data dalam sistem informasi disebut sebagai sistem basis data (database system). Basis data terdiri dari kata basis dan data. Menurut (Fathansyah, 2001:2) Basis Data diartikan sebagai gudang atau tempat bersarang dan Data yang berarti representasi fakta dunia nyata yang mewakili suatu objek seperti manusia, hewan, peristiwa, konsep dan sebagainya yang direkam dalam bentuk angka, huruf, simbol, teks, gambar, bunyi atau kombinasinya. Jadi dapat disimpulkan bahwa Basis Data merupakan kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudancy) yang tidak perlu, untuk memenuhi berbagai kebutuhan. Atau bisa diartikan sebagai kumpulan file atau arsip yang saling berhubungan yang disimpan dalam media penyimpanan elekronis. Perancangan basis data dibutuhkan agar diperoleh suatu sistem yang sesuai dengan apa yang diinginkan, dimana dapat melalui tahapan berikut :
24
a.
Entity Relationship Diagram ERD atau biasa disebut dengan diagram E-R secara grafis menggambarkan
isi sebuah database. Diagram ini memiliki dua komponen utama yaitu entity dan relasi. Untuk melambangkan fungsi diatas maka digunakan simbol-simbol yang bisa dilihat pada daftar simbol. b.
Normalisasi Normalisasi merupakan tahapan perancangan dalam membangun basis data
relasional yang tidak secara langsung berkaitan dengan model data tetapi menerapkan sejumlah aturan dan kriteria standar untuk menghasilkan struktur tabel yang normal. Adapun langkah-langkah untuk menghasilkan struktur tabel yang normal diantaranya yaitu : 1) Bentuk Unnormallized Bentuk unnormal adalah bentuk tabel dengan mencantumkan semua field data yang ada. 2) Bentuk Normal Pertama / 1 NF (First Normal Form) Bentuk normal pertama terpenuhi jika sebuah tabel tidak memiliki atribut bernilai banyak (Multivalued Atribute) atau lebih dari satu atribut dengan domain nilai yang sama. 3) Bentuk Normal Kedua / 2 NF (Second Normal Form) Bentuk normal kedua terpenuhi jika pada sebuah tabel semua atribut yang tidak termasuk dalam key primer memiliki ketergantungan fungsional pada key primer secara utuh.
25
4) Bentuk Normal Ketiga / 3 NF (Third Normal Form) Bentuk normal ketiga terpenuhi jika dan hanya jika semua atribut bukan kunci memiliki dependensi transitif terhadap kunci primer. 5) Boyce-Codd Normal Form (BCNF) Suatu tabel dikatakan berada pada BCNF jika dan hanya jika semua ketergantungan fungsional dengan notasi X→Y, maka X harus merupakan superkey pada tabel tersebut. 6) Bentuk Normal Keempat / 4 NF (Fourth Normal Form) Suatu tabel dikatakan berada pada normal keempat jika tidak mengandung dua atribut atau lebih yang bernilai banyak. 7) Bentuk Normal Kelima / 5 NF (Fifth Normal Form) Bentuk normal kelima berkaitan dengan ketergantungan relasi antar table (join dependency). c.
Relasi Tabel Relasi tabel menunjukkan adanya hubungan diantara sejumlah entitas yang
berasal dari himpunan entitas yang berbeda. Dari adanya relasi tabel tersebut terdapat kardinalitas relasi yang menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Terdapat empat kemungkinan kombinasi kardinalitas yaitu satu ke satu (one to one), satu ke banyak (one to many), banyak ke satu (many to one) dan banyak ke banyak (many to many).
26
2.8.2 Database Management System (DBMS) Database Management System adalah software yang menangani semua akses ke basis data (Kusrini, 2007). Pengelolaan basis data secara fisik tidak dilakukan oleh pemakai secara langsung tetapi ditangani oleh sebuah perangkat lunak atau sistem yang khusus atau spesifik. Sistem ini yang menentukan bagaimana data diorganisasi, disimpan, diubah dan diambil kembali. Disamping itu sistem ini juga menerapkan mekanisme pengaman data, pemakaian data secara bersama, pemaksaan keakuratan atau konsistensi data tersebut. Perangkat lunak yang termasuk DBMS misalnya dBase II +, dBase IV, FoxBase, Rbase, MS-Access dan Borland Paradox atau Borland-Interbase, MSSQL Server, CA-Open, Oracle, Informix dan Sybase. Sumber dari informasi adalah data. Data merupakan fakta-fakta atau pesanpesan yang belum dievaluasi atau bahan mentah dari informasi yang melalui pengolahan tertentu dibentuk menjadi suatu informasi. Data terbentuk dari karakter – karakter yang dapat berupa alfabet, angka maupun simbol khusus. Data disusun untuk diolah dalam bentuk struktur data, struktur file dan database. Database Management System (DBMS) merupakan perantara bagi pemakai dengan basis data dalam disk. Cara berinteraksi atau berkomunikasi antara pemakai dengan basis data tersebut diatur dalam suatu bahasa khusus yang ditetapkan oleh perusahaan pembuat DBMS. Bahasa itu dapat kita sebut sebagai bahasa basis data yang terdiri atas sejumlah perintah (statement) yang diformulasikan dan dapat diberikan user dan dikenali atau diproses oleh DBMS
27
untuk melakukan suatu aksi atau pekerjaan tertentu. Contoh-contoh bahasa basis data adalah SQL, dBase, QUEL dan sebagainya. Sebuah bahasa basis data biasanya dapat dikelompokkan ke dalam dua bentuk, yaitu : a.
Data Definition Language (DDL) dan
b.
Data Manipulation Language (DML)
2.8.3 MySQL MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL atau yang dikenal dengan DBMS (Database Management System) (Miftakhul Huda, 2010). MySQL merupakan perangkat lunak Relational Database Management System (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL
(General
Public
License).
Dimana
setiap
orang
bebas
untuk
menggunakannya, tapi tidak boleh dijadikan produk turunan yang bersifat Closed Source atau komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structur Query Language). SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. Kehandalan suatu sistem database (DBMS) dapat diketahui dari cara kerja Optimizer-nya dalam melakukan proses perintah-perintah SQL, yang dibuat oleh
28
user maupun program-program aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul dibanding database server lainnya dalam query data. Sebagai database server yang memiliki konsep database modern, MySQL memiliki banyak keistimewaan. Berikut ini beberapa keistimewaan yang dimiliki oleh MySQL: a.
Portability MySQL dapat berjalan stabil pada berbagai system operasi seperti Windows, Linux, FreeBSD, Mac OS X Server, dan lain-lain.
b.
Open Source MySQL didistribusikan secara Open Source, sehingga dapat digunakan secara bebas.
c.
Multi-user MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah. Hal ini memungkinkan sebuah database server MySQL dapat diakses client secara bersamaan.
d.
Performance Tuning MySQL memiliki kecepatan yang tinggi dalam menangani query, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
e.
Column Types MySQL
memiliki
tipe
kolom
yang
sangat
kompleks,
seperti
signed/unsigned integer, float, double, char, varchar, text, blob, date, time, timestamp, year, set dan enum.
29
f.
Command dan Function MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah SELECT dan WHERE dalam query.
g.
Security MySQL memiliki lapisan lapisan sekuritas seperti level subnetmask, nama host, dan izin akses user dengan system perizinan yang mendetail serta password terenkripsi.
h.
Scalability dan Limits MySQL mampu menangani database dengan skala besar, dengan jumlah records lebih dari 50 juta dan 60 juta table serta 5 miliar baris. Selain itu, batas indeks yang dapat ditampung mencapai 32 indeks pada setiap tabelnya.
i.
Connectivity MySQL dapat melakukan koneksi dengan client menggunakan protocol TCP/IP, Unix Socet (UNIX), atau Named Pipes (NT).
j.
Localization Deteksi pesan kesalahan pada client dengan menggunakan lebih dari 20 bahasa.
k.
Interface Interface terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
30
l.
Client dan Tools Dilengkapi dengan berbagai Tool yang dapat digunakan untuk administrasi database, dan pada setiap tool yang ada disertakan petunjuk online.
2.9
Pencarian Linear (Sequential Searching) Algoritma pencarian linear adalah algoritma untuk mencari sebuah nilai
pada tabel sembarang dengan cara melakukan pass atau traversal dari awal sampai akhir tabel (Lovinta, 2007). Pencarian linear menggunakan prinsip data yang ada dibandingkan satu per satu secara berurutan dengan yang dicari sampai data tersebut ditemukan atau tidak ditemukan. Pada dasarnya, pencarian ini hanya melakukan pengulangan dari 1 sampai dengan jumlah data. Pada setiap pengulangan, dibandingkan data ke-i dengan yang dicari. Apabila sama, berarti data telah ditemukan. Sebaliknya apabila sampai akhir pengulangan tidak ada data yang sama, berarti data tidak ada. Pada kasus yang paling buruk, untuk N elemen data harus dilakukan pencarian sebanyak N kali pula. Implementasi algoritma pencarian linear dapat dilihat pada listing 2.4 sebagai berikut: int SequentialSearch(int x) { int i = 0; bool ketemu = false; while((!ketemu) && (i < Max)){ if(Data[i] == x)ketemu = true; elsei++; } if(ketemu)return i; else return -1; }
Listing 2.4 Implentasi algoritma pencarian linear
31
2.10 Pengujian Black Box Pengujian black-box terfokus pada apakah unit program memenuhi kebutuhan (requirement) yang disebutkan dalam spesifikasi (Hanif Al Fatta, 2007). Pengujian ini memungkinkan analis sistem memperoleh kumpulan kondisi input yang akan mengerjakan seluruh keperluan fungsional program. Tujuan metode ini mencari kesalahan pada: 1. Fungsi yang salah atau hilang 2. Kesalahan pada interface 3. Kesalahan pada struktur data atau akses database 4. Kesalahan performansi 5. Kesalahan inisialisasi dan tujuan akhir Pengujian dirancang untuk menjawab pertanyaan sebagai berikut: 1. Bagaimana validasi fungsional diuji? 2. Apa kelas input yang terbaik untuk uji coba yang baik? 3. Apakah sistem sangat peka terhadap nilai input tertentu? 4. Bagaimana jika kelas data terbatas dipisahkan? 5. Bagaimana volume data yang dapat ditoleransi oleh sistem? 6. Bagaimana pengaruh kombinasi data terhadap pengoperasian sistem?