bab 2 landasan teori

advertisement
BAB 2
LANDASAN TEORI
2.1
Teori-teori Umum
2.1.1
Data
Menurut Turban Rainer Potter (2003, p352), Data adalah fakta mentah
yang belum terorganisir untuk menjelaskan arti yang spesifik. Menurut
Laudon(2003, p8), data merupakan aliran fakta yang mewakili kejadian yang
terjadi dalam organisasi atau dalam lingkungan fisik sebelum mereka diatur
menjadi sebuah bentuk yang dapat dimengerti dan digunakan oleh pengguna. Jadi,
dapat disimpulkan bahwa data adalah fakta yang telah terjadi, memiliki arti, dan
dapat disimpan serta dapat diatur sedemikian rupa sehingga dapat digunakan
untuk berbagai tujuan.
2.1.2
Pengertian Basis Data
Basis data (database) menurut Connolly dan Begg (2005,p15), basis data
adalah sekumpulan data yang saling berhubungan dimana dirancang untuk
mencapai informasi yang di perlukan dalam suatu organisasi. Artinya basis data
adalah tempat penyimpanan data yang besar dimana bisa digunakan secara
simultan atau secara bersamaan oleh banyak departemen dan pemakai lainnya
(user). Di dalam basis data semua item data diintegrasikan untuk menghindarkan
duplikasi data. Basis data tidak hanya mengandung data operasional organisasi,
tetapi juga deskripsi dari data tersebut.
7 8
Basis data adalah kumpulan file yang saling terkait. File adalah
kumpulan record yang serupa. Record merupakan kumpulan field yang
disusun dalam format yang telah ditetapkan sebelumnya. Field adalah
unit terkecil dari data yang disimpan pada sebuah file atau basis data
(Whitten, 2004, p518).
2.1.3
Sistem Manajemen Basis Data
Menurut Connoly dan Begg (2005,p16), sistem manajemen basis
data (Database Management System) disingkat menjadi DBMS adalah
sistem perangkat lunak yang dapat memungkinkan pemakai untuk
mendefinisikan, membuat, dan memelihara basis data dan menyediakan
control akses untuk basis data tersebut. DBMS berinteraksi dengan
program aplikasi pemakai dan basis data.
2.1.3.1 Komponen DBMS
Adapun komponen-komponen DBMS menurut Connoly
(2005, p18), terdiri atas :
1. Hardware
Untuk menjalankan DBMS dan aplikasi. Berupa personal
computer, mainframe, dan jaringan komputer. Untuk menjalankan
DBMS memerlukan kecepatan memory dan kapasitas harddisk
tertentu.
2. Software
Software mencakup DBMS, program aplikasi, dan sistem operasi.
9
3. Data
Penghubung antar komponen mesin (hardware dan software)
dengan komponen manusia (prosedur dan orang).
4. Prosedur
Instruksi dan aturan yang mengatur perancangan dan penggunaan
basis data. Berikut adalah kemungkinan-kemungkinan instruksi
untuk :
a. Log on ke database.
b. Menggunakan sistem basis data tertentu.
c. Start dan Stop DBMS.
d. Membuat bacuk-up basis data.
e. Menangani kesalahan-kesalahan perangkat keras
dan perangkat lunak.
f. Mengubah struktur tabel, mengatur kembali basis
data, meningkatkan performa, atau menyimpan
data.
5. Pengguna
Semua orang yang terlibat sistem. Antara lain :
a.
DBA (Database Administrator)
b.
Database Designer.
c.
Application developer.
d.
End User.
10
DBMS menghasilkan fasilitas sebagai berikut :
a. Mengijinkan pemakai untuk mendefinisikan basis data
biasanya melalui Data Definition Language (DDL). DDL
mengizinkan user untuk menspesifikasikan tipe data dan
struktur serta batasan data yang dapat disimpan di basis data.
b. Mengizinkan pemakai untuk melakukan insert, update, delete,
dan retrieve data dari basis data biasanya melalui Data
Manipulation Language (DML).
c. Structured Query Language (SQL)
Query Language yang saat ini digunakan sebagai standar
umum pemakai basis data adalah SQL.
d. Menghasilkan akses pengendalian basis data seperti :
1. Security system untuk membatasi penggunaan basis
data.
2. Integrity
system
untuk
menangani
konsistensi
penyimpanan data.
3. Control
concurrency
system
untuk
menangani
penggunaan bersama basis data.
4. Control recovery system untuk menyimpan kembali
basis data saat terjadi kesalahan pada perangkat keras
maupun perangkat lunak.
5. User accessible catalog berisi deskripsi data di dalam
basis data.
11
Selain itu menurut Connolly dan Begg (2005, p18), suatu DBMS
menyediakan fasilitas lainnya yang dikenal sebagai suatu view
mechanism.
View
mechanism memperbolehkan
setiap
pemakai
(user)
mempunyai view nya sendiri dari basis data (suatu view adalah didalam
pokok suatu subset dari basis data). View mempunyai beberapa
keuntungan lainnya, yaitu :
a. View menyediakan suatu tingkatan (level) dari keamanan
(security). View dapat dibentuk untuk meniadakan data dari
beberapa pemakai yang sebaiknya tidak dilihat.
b. View menyediakan suatu mekanisme untuk mengatur apa
yang ditampilkan dari basis data.
c. Suatu view dapat menghadirkan sebuah konsistensi, gambaran
yang tidak berubah dari struktur basis data, bahkan dengan
kondisi jika yang mendasari basis data diubah (sebagai
contoh, fields dari data yang ditambah atau dihapus, hubungan
yang berubah, file-file yang di-split, restrukturisasi, atau
penamaan ulang).
2.1.3.2 Keuntungan dan Kerugian DBMS
Menurut McLeod (2004, p152), keuntungan DBMS
adalah sebagai berikut :
1. Mengurangi pengulangan data.
Dalam suatu DBMS tidak ada duplikasi data.
12
2. Independenis data.
Spesifikasi data disimpan dalam skema daripada dalam tiap
program aplikasi sehingga perubahan dapat pada struktur data
tanpa mempengaruhi data yang lain.
3. Mengintegrasi data dari beberapa file.
Adanya gabungan data yang terkumpul dalam suatu file.
4. Pengambilan data dan informasinya cepat.
Hubungan
logis
dan
DML
serta
query
language
memungkinkan pengguna untuk mengambilkan data dalam
hitungan detik atau menit.
5. Meningkatkan keamanan.
Baik DBMS mainframe maupun komputer mikro dapat
menyertakan beberapa lapisan keamanan seperti kata sandi
(password), direktori pemakai, dan bahasa sandi (encryption).
Data yang disimpan dan dikelola dalam DBMS juga lebih
aman daripada data lain dalam perusahaan.
Sedangkan kerugian DBMS adalah sebagai berikut :
a. Piranti lunak yang mahal
DBMS mainframe masih sangat mahal.
b. Konfigurasi perangkat keras yang besar
DBMS memerlukan kapasitas penyimpanan primer dan
sekunder yang lebih besar.
c. Mempekerjakan dan mempertahankan staff DBA (Database
13
Administrator)
DBMS memerlukan pengetahuan yang khusus agar dapat
memanfaatkan kemampuannya sacara penuh.
2.1.3.3 Karakteristik dari DBMS dan Basis Data
Menurut Atzeni (2003,p4), DBMS dan basis data
memiliki karakteristik sebagai berikut :
a. Basis data dapat berukuran besar
Basis data dapat mengandung ribuan hingga jutaan bytes,
secara umum, lebih besar daripada memori utama yang
tersedia. Sebagai hasilnya, DBMS harus mengatur data dalam
secondary memory.
b. Basis data dapat digunakan bersama-sama
Berbagai aplikasi dan user harus bisa mendapatkan akses ke
data yang bersifat umum.
c. Database are persistent
Basis data memiliki waktu hidup yang tidak terbatas untuk
menjalankan sebuah program yang digunakan.
d. DBMSs ensure reliability
Kapasitas dari sistem berguna untuk melestarikan isi dari
basis data. Dalam kasus ini kegagalan perangkat keras dan
lunak.
e. DBMS menjamin kerahasiaan data
Setiap user yang mengatur dengan menggunakan user name
14
yang spesifik, pengguna tersebut dapat mengakses ke DBMS.
f. DBMS memperhatikan keefisienan
Kapasitas untuk membawa dengan menggunakan operasional
yang sesuai dengan sumbernya untuk setiap user.
g. DBMS meningkatkan keefektifan
Kapasitas dari basis data dapat membuat aktifitas user lebih
produktif disetiap waktu.
2.1.4
Database Languages
Menurut Connolly (2005, p39) Sebuah data sublanguage, yang
tidak menyertakan conditional dan iterative statements, terbagi menjadi
dua bagian: Sebuah Data Definition Languages (DDL) dan Data
Manipulation Languages.
2.1.4.1 Data Definition Languages (DDL)
Data Definition Language (DDL) merupakan sebuah
bahasa yang memungkinkan Database Administrator (DBA)
maupun pengguna untuk menggambarkan dan menamai entity,
atribut dan hubungan yang dibutuhkan pada aplikasi bersamaan
dengan beberapa associated integrity dan batasan keamanan
(Connolly, 2005, p40). Hasil dari kompilasi perintah DDL adalah
kumpulan table yang disimpan dalam file khusus yang disebut
Kamus Data (Data Dictionary).
Beberapa statement DDL (Connolly, 2005, p169) :
1. Create Table
15
Untuk membuat table dengan mengidentifikasi tipe data tiap
kolom.
2. Alter Table
Untuk menambah atau membuang kolom dan constraint.
3. Drop Table
Untuk membuang atau menghapus tabel beserta semua data
yang terkait di dalamnya.
4. Create Index
Untuk membuat indeks pada suatu tabel.
5. Drop Index
Untuk membuang atau menghapus indeks yang telah dibuat
sebelumnya.
2.1.4.2 Data Manipulation Languages (DML)
Menurut Connolly (2005, p41), DML (Data Manipulation
Languages) adalah suatu bahasa yang menyediakan kumpulan
operasi yang akan diinginkan untuk mendukung operasi
manipulasi data utama pada data yang diperoleh dalam basis data.
Menyediakan operasi dasar manipulasi data pada data yang ada
dalam basis data, yaitu :
a. Penyisipan data baru ke dalam basis data (insertion).
b. Mengubah atau modifikasi data yang disimpan di dalam basis
data (modify).
c. Pemanggilan data yang ada dalam basis data (retrieve).
16
d. Menghapus data dari basis data (delete).
Menurut Connolly (2005, p41), kita dapat membedakan
DML menjadi dua tipe yang berbeda yaitu :
1. Procedural DML
Procedural DML adalah suatu bahasa yang memungkinkan
pengguna (umumnya programmer) untuk memberi instruksi
ke sistem mengenai data apa yang dibutuhkan dan bagaimana
cara pemanggilannya (retrieve). Artinya pengguna harus
menjelaskan operasi pengaksesan data yang akan digunakan
dengan menggunakan prosedur yang ada untuk mendapatkan
informasi yang dibutuhkan.
2. Non-Procedural DML
Non-Procedural DML adalah bahasa yang memungkinkan
pengguna untuk menentukan data apa yang dibutuhkan
dengan menyebutkan spesifikasinya tanpa menspesifikasikan
bagaiman cara mendapatkannya.
2.1.4.3 Fourth Generation Languages
Menurut
Connolly
(2005,
p42),
Fourth-Generation
Languages (4GLs) adalah bahasa pemrograman non-procedural
yang lebih sederhana dibandingkan bahasa pemrograman generasi
ke tiga (3GL).
Beberapa jenis 4GLs (Connolly, 2005, p42) :
a. Forms Generators
17
Merupakan fasilitas interaktif untuk membuat form input data
dan tampilannya. Mendefinisikan desain tampilan, informasi
apa yang akan disajikan, komponen warna pada layar dan
karakteristik lainnya.
b. Report Generators
Membuat laporan (report) yang datanya diambil dari
database. Memungkinkan user untuk mengambil data yang
diperlukan untuk laporan. Lebih menekankan pada rancangan
output, yaitu bagaiman suatu laporan disajikan.
c. Graphic Generators
Digunakan untuk mengambil data dari database, dan
menampilkannya dalam bentuk grafik seperti bar, chart, pie
chart, line chart dan lain-lain.
d. Application Generators
Fasilitas untuk menghasilkan program yang berhubungan
dengan data, menentukan bagaimana menampilkan fungsifungsi.
2.1.5
Siklus Hidup Aplikasi Database
Untuk merancang aplikasi sistem basis data diperlukan beberapa
tahapan terstruktur yang harus diikuti dan dinamakan dengan Siklus
Hidup
Aplikasi
Basis
Data
(Database
Application
Lifecycle).
Dikarenakan sistem basis data adalah komponen dasar dalam sistem
informasi organisasi yang lebih besar dan luas, daur hidup aplikasi basis
18
data berkembang terhubung dengan daur hidup sistem informasi. Adalah
penting untuk mengetahui bahwa tahapan daur hidup sistem informasi
tidaklah harus berurutan, tetapi melibatkan beberapa jumlah pengulangan
tahap sebelumnya melalui feed-back loops.
Berikut ini akan ditunjukkan tahapan daur hidup aplikasi basis
data pada gambar dibawah ini :
Gambar 2.1 Tahap-Tahap Siklus Hidup Aplikasi Basis Data
(Sumber : Connolly, 2005, p284)
19
2.1.5.1 Perencanaan Basis Data
Perencanaan Basis Data (Database Planning) merupakan
aktivitas-aktivitas manajemen yang memungkinkan tahap-tahap
dalam aplikasi basis data direalisasikan seefisien dan seefektif
mungkin (Connolly, 2005, p285).
2.1.5.2 Pendefinisian Sistem
Pendefenisian sistem (System Definition) menjelaskan
bidang dan batasan aplikasi basis data serta pandangan pengguna
(user view) secara umum (Connolly, 2005, p286).
Pandangan pengguna meggambarkan apa yang dibutuhkan
oleh aplikasi basis data dari sudut pandang jabatan tertentu,
seperti manajer atau pengawas, atau pengawasan persediaan,
dalam hubungannya dengan data yang akan disimpan dan
transaksi yang akan dijalankan terhadap data itu (Connolly, 2005,
p288).
2.1.5.3 Pengumpulan Kebutuhan dan Analisa
Pada tahap ini dilakukan proses pengumpulan dan analisa
informasi mengenai bagian organisasi yang harus dilakukan oleh
aplikasi basis data, dan penggunaan informasi ini berguna untuk
mengidentifikasi persyaratan pengguna terhadap sistem yang baru
(Connolly, 2005, p288). Tahap ini meliputi pengumpulan dan
analisis informasi mengenai bagian perusahaan yang harus
dilayani oleh basis data.
20
Ada 3 (tiga) pendekatan utama untuk pengaturan
kebutuhan aplikasi basis data dengan multiple user views, yaitu :
1. Pendekatan centralized
Kebutuhan-kebutuhan untuk setiap user view digabungkan
dalam suatu kumpulan kebutuhan tunggal untuk aplikasi basis
data baru.
2. Pendekatan view integration
Kebutuhan-kebutuhan untuk setiap user view digunakan untuk
membangun sebuah
model data yang terpisah untuk
merepresentasikan pengguna itu sendiri. Hasil dari model data
akan digabungkan pada tahap perancangan basis data.
3. Kombinasi antara centralized dan view integration
Ada banyak cara untuk mengumpulkan informasi pada suatu
proses resmi dalam menggunakan teknik-teknik seperti
wawancara atau kuesioner untuk mengumpulkan fakta-fakta
tentang sistem dan kebutuhan-kebutuhannya dinamakan
dengan teknik fact-finding (Connolly, 2005, p314).
2.1.5.4 Perancangan Basis Data
Perancangan basis data merupakan proses menciptakan
perancangan untuk basis data yang akan mendukung operasi dan
tujuan perusahaan (Connolly, 2005, p291). Terdapat 2 (dua)
pendekatan dalam perancangan basis data (Connolly, 2005,
p291), yaitu :
21
a. Bottom-up
Pendekatan ini dimulai dari tingkat paling dasar dari atribut
(yakni property dari entity dan hubungan relasional) dimana
melalui
analisis
gabungan
antara
atribut-atribut,
dikelompokkan ke dalam relasi-relasi yang merepresentasikan
tipe-tipe entity dan hubungan antara entity. Pendekatan ini
lebih cocok untuk perancangan basis data yang sederhana
dengan jumlah atribut yang relatif kecil.
b. Top-down
Pendekatan ini dimulai dari pengembangan model data yang
terdiri dari beberapa hubungan relasional dan entity tingkat
tinggi.
Perancangan basis data terdiri 3 (tiga) tahap utama
(Connolly, 2005, p293), yaitu :
1. Perancangan Basis Data Konseptual (Conceptual Database
Design)
Perancangan
Basis
Data
Konseptual
adalah
proses
membangun suatu model informasi yang digunakan oleh
perusahaan atau organisasi yang tidak tergantung dari
pertimbangan fisik (Connolly, 2005, p293).
2. Perancangan Basis Data Logikal (Logical Database Design)
Logical Database Design adalah proses pembuatan suatu
model
informasi
yang
digunakan
pada
perusahaan
22
berdasarkan pada model data yang spesifik, tetapi tidak
tergantung dari Database Management System (DBMS) yang
khusus dan pertimbangan fisik lain (Connolly, 2005, p294).
3. Perancangan Basis Data Fisikal (Physical Database Design)
Physical Database Design adalah suatu proses untuk
menghasilkan gambaran dari implementasi basis data pada
tempat penyimpanan, menjelaskan dasar dari relasi, organisasi
file dan indeks yang digunakan untuk efisiensi data dan
menghubungkan beberapa integrity constraints dan tindakan
keamanan (Connolly, 2005, p294).
2.1.5.5 Pemilihan DBMS
Merupakan pemelihan dari suatu DBMS yang tepat untuk
mendukung aplikasi basis data (Connolly, 2005, p295).
Tahap-tahap pemilihan DBMS :
1. Menentukan istilah referensi studi
Dibuat dengan menyatakan tujuan dan ruang
lingkup
pembelajaran
dan
tugas-tugas
yang
akan
dikerjakan.
2. Membuat daftar sementara dua atau tiga produk
Kriteria yang dianggap penting dalam keberhasilan
implementasi dapat digunakan untuk membuat daftar
produk-produk DBMS dalam evaluasi, seperti dana yang
tersedia, tingkat dukungan vendor, kecocokan dengan
23
perangkat lunak lainnya, dan apakah produk hanya
berjalan pada perangkat keras tertentu.
3. Mengevaluasi produk
Fitur-fitur yang digunakan untuk evaluasi produk
DBMS
dikelompokkan
berdasarkan
data
definition
(defenisi data), physical definition (definisi fisik),
accessibility
(kemampuan
mengakses),
transaction
handling (penanganan transaksi), utilities (peralatan),
development (pengembangan).
4. Merekomendasikan pilihan dan memproduksi laporan
Langkah terakhir dari pemilihan DBMS adalah
mendokumentasikan prosesnya dan membuat pernyataan
dalam penemuan dan rekomendasi atas produk DBMS
tertentu.
2.1.5.6 Perancangan Aplikasi
Desain interface dan program aplikasi yang menggunakan
dan memproses basis data (Connolly, 2005, p299). Desain basis
data dan aplikasi merupakan aktivitas parallel yang meliputi dua
aktivitas penting, yaitu :
a. Perancangan Transaksi (Transaction Design)
Transaksi adalah satu aksi atau serangkaian aksi yang
dilakukan oleh user tunggal atau program aplikasi, yang
mengakses atau merubah isi dari basis data. Kegunaan dari desain
24
transaksi adalah untuk menetapkan dan memuat keterangan
karakteristik high-level dari suatu transaksi yang dibutuhkan pada
basis data.
Terdapat 3 (tiga) tipe transaksi, yaitu :
1. Retrieval transaction, digunakan untuk pemanggilan
(retrieve) data untuk ditampilkan di layar atau menghasilkan suatu
laporan.
2. Update transaction, digunakan untuk menambah record
baru, menghapus record lama, atau memodifikasi record yang
sudah ada dalam basis data.
3.
Mixed
transaction,
meliputi
pemanggilan
dan
perubahan data.
b. Perancangan Antarmuka (User Interface Design)
Beberapa aturan pokok dalam pembuatan user interface, yaitu :
1.
Penetapan judul yang bermakna.
2.
Instruksi-instruksi yang dapat dipahami.
3.
Pengelompokkan logika dan pengurutan kolom.
4.
Bentuk form yang menarik secara visual.
5.
Judul kolom yang dikenal.
6.
Penggunaan istilah dan singkatan yang konsisten.
7.
Penggunaan warna yang konsisten.
8.
Ruang dan batasan yang terlihat untuk menginput kolom
9.
Pergerakan kursor yang mudah
25
10. Perbaikan kesalahan untuk satu huruf dan semua kolom.
11. Menampilkan pesan kesalahan pada nilai yang tidak
sesuai.
12. Pemberian tanda terhadap kolom yang berupa pilihan.
13. Pesan-pesan yang bersifat penjelasan untuk suatu kolom.
14. Pemberian tanda penyelesaian.
2.1.5.7 Prototipe
Prototipe adalah proses membangun sebuah model kerja
dari aplikasi basis data (Connolly, 2005, p304). Tujuan utama
prototipe adalah untuk mengidentifikasi fitur-fitur yang bekerja
dengan baik pada sistem, atau kekurangannya dan memberikan
saran bagi peningkatan kerja sistem atau bahkan memberikan
masukan terhadap pengembangan bahkan fitur-fitur baru ke
dalam sistem basis data.
2.1.5.8 Implementasi
Implementasi adalah realisasi fisikal dari design basis data
dan desig aplikasi (Connolly, 2005, p304). Dalam tahap ini juga
akan diimplementasikan komponen lain dari aplikasi basi data
seperti menu layar, pemasukan data, security, dan kontrol
integritas.
2.1.5.9 Data Conversion and Loading
Pemindahan data yang ada kedalam basis data baru dan
mengkonversikan aplikasi yang ada agar dapat digunakan pada
26
basis data yang baru (Connolly, 2005, p305). Tahapan ini
dibutuhkan ketika sistem basis data baru menggantikan sistem
yang lama.
2.1.5.10.Pengetesan
Merupakan proses pengeksekusian program aplikasi
dengan maksud pencarian kesalahan-kesalahan (Connolly, 2005,
p305).
2.1.5.11.Perawatan Operational (Operation Maintenance)
Suatu proses pengawasan dan pemeliharaan sistem setelah
instalansi, meliputi (Connolly, 2005, p306) :
a.
Pengawasan performa sistem, jika performa menurun
maka memerlukan perbaikan atau pengaturan ulang basis
data.
b.
Pemeliharaan dan pembaharuan aplikasi basis data (jika
dibutuhkan).
c.
Penggabungan kebutuhan baru kedalam aplikasi basis
data.
2.1.6
Data Flow Diagram (DFD)
Pengertian dari DFD adalah teknik grafis yang menggambarkan
aliran data melalui sebuah sistem dan merubah data yang bergerak dari
input ke output. DFD dapat juga disebut dengan Bubble chart, Data Flow
Graph (Roger, 2001, p309).
27
Simbol-simbol yang terdapat dalam DFD :
1.
Menggambarkan external entity (terminal dari sistem).
2.
Menggambarkan proses atau pekerjaan yang harus diselesaikan.
3.
Objek data, menggambarkan aliran data atau input/output dari dan
menuju proses.
4.
Menggambarkan penyimpanan data atau biasa disebut basis
data(data store). Penyimpanan data dapat disamakan dengan seluruh
bagian dari entity tunggal dalam model data.
Tingkatan pada DFD :
a. Diagram konteks
Menggambarkan seluruh input ke atau output ke sistem.
Diagram konteks ini merupakan level tertinggi dari DFD.
b. Diagram nol
Merupakan rincian dari diagram konteks dan memperlihatkan
data store juga digunakan.
c. Diagram rinci
Merupakan rincian diagram diatasnya.
28
Keuntungan pangguna DFD :
1. Proses dalam DFD dapat beroperasi secara parallel.
Maksudnya beberapa proses dapat bekerja secara bersamaan
sesuai dengan cara kerja bisnis.
2. DFD menunjukkan aliran data yang melalui sistem. Panahnya
mewakili arah dimana data tersebut mengalir. Perulangan dan
percabangan
biasanya
tidak
diperlihatkan.
Flowchart
menunjukkan tahap-tahap dari proses atau operasi dalam
algoritma/program.
3. DFD menunjukkan proses yang memiliki perbedaan waktu
yang dramatis. Misalnya suatu DFD tunggal mungkin akan
memasukkan proses yang terjadi perjam, perhari, perminggu,
pertahun, dan sesuai permintaan.
2.1.7
Entity Relationship Modelling (ER-Modelling)
a.
Entity Type
Entity type adalah sekumpulan objek yang memiliki
properti yang sama yang diidentifikasi dalam perusahaan serta
keberadaannya independen (Connolly, 2005, p343). Setiap objek
yang diidentifikasikan secara unik disebut entity occurrence
(Connolly, 2005, p333).
29
Gambar 2.2 Representasi Diagram Dari Entity Type Staff dan
Branch
(Sumber Connolly, 2005, p345)
b.
Relationship Type
Relationship Type
ialah sekumpulan entity yang
mempunyai hubungan dan memiliki arti (Connoly, 2005, p346).
Gambar 2.3 Relationship Type
c.
Attributes
Attributes
ialah
properti
dari
sebuah
entity
atau
relationship type. Sedangkan attribute domain adalah sekumpulan
30
nilai yang dibolehkan untuk satu atau lebih atribut (Connoly,
2005, p350).
Atribut dapat diklasifikasikan sebagai :
1.
Simple dan Composite Atribut
Simple attribute adalah sebuah atribut yang disusun oleh
sebuah komponen tunggal dengan keberadaan yang independen.
Simple attribute tidak dapat dipecah menjadi komponen yang
lebih kecil lagi (Connoly, 2005, p351). Sebuah contoh simple
attribute ialah atribut position dan salary pada entity Staff.
Sedangkan Composite attribute adalah sebuah atribut
yang disusun oleh banyak komponen yang independen. Atribut ini
bisa dipecah menjadi atribut yang lebih kecil. Contohnya atribut
address dalam entity Branch dengan nilai (163 Main St, Blasgow,
G11 9QX) dapat dipecah menjadi street (163 Main St), city
(Glasgow), dan postcode (G11 9QX).
2.
Single-valued dan Multi-Valued Attribute
Single-valued attribute adalah sebuah atribut yang
mempunyai nilai tunggal untuk setiap kejadian dalam sebuah
entity (Connoly, 2005, p351). Contohnya pada entity Branch
mempunyai nilai tunggal pada masing-masing atribut branchNo.
Multi-valued
attribute adalah
sebuah
atribut
yang
mempunyai nilai lebih dari satu untuk setiap kejadian pada entity
(Connoly, 2005, p353). Contoh setiap atribut pada entity Branch
31
dapat mempunyai telNo lebih dari satu (Misalnya cabang dengan
branchNo B003 mempunyai telNo 0141-339-2178 dan 0141-3394439).
3.
Derived Attributes
Derived Attributes adalah atribut yang merepresentasikan
sebuah nilai yang biasa diperoleh dari nilai dan atribut yang
berkaitan (Connoly, 2005, p352).
d.
Keys
Candidate Key adalah himpunan atribut yang minimal
yang secara unik mengidentifikasi setiap occurance dari sebuah
tipe entitas (Connoly, 2005, p352). Primary Key adalah candidate
key yang terpilih untuk mengidentifikasikan secara unik setiap
occurance dari sebuah tipe entitas (Connoly, 2005, p353).
Composite Key adalah sebuah candidate key yang terdiri atas dua
atau lebih atribut (Connoly, 2005, p353).
Pada sebuah tipe entitas biasanya terdapat lebih dari satu
candidate key yang salah satunya harus dipilih untuk menjadi
primary key. Pemilihan primary key didasarkan pada panjang
atribut, jumlah minimal atribut yang diperlukan, dan keunikannya.
Alternate key adalah setiap candidate key yang tidak terpilih
menjadi primary key, atau biasa disebut dengan secondary key
(Whitten, 2004, p298). Foreign key adalah sebuah primary key
pada sebuah entitas yang digunakan pada entitas lainnya untuk
32
mengidentifikasikan sebuah relationship (Whitten, 2004, p301).
2.1.8 Normalisasi
Normalisasi adalah sebuah teknik untuk menghasilkan relasi
dengan properti-properti yang diinginkan, memberikan kebutuhan data
dari sebuah perusahaan. Tujuan normalisasi adalah terjaminnya struktur
yang konsisten, kerangkapan yang minimal, dan stabilitas struktur data
yang maksimal (Connolly, 2005, p388).
Manfaat normalisasi adalah sebagai berikut :
1. Meminimalkan
jumlah
kapasitas
penyimpanan
yang
diperlukan untuk menyimpan data.
2. Meminimalkan resiko data yang tidak konsisten dalam suatu
basis data.
3. Meminimalkan kemungkinan update dan delete anomally.
4. Memaksimalkan stabilitas dari struktur data.
Proses normalisasi tabel secara umum dibagi menjadi tiga
tahap sehingga dikenal bentuk-bentuk tabel normal sesuai dengan
tahapan normalisasi yang telah dilakukan yaitu bentuk normal pertama,
kedua, dan ketiga.
1. First Normal Form (1NF)
First normal form adalah relasi dimana pertemuan antar setiap baris
dan kolom terdiri 1 (satu) dan hanya 1 (satu) nilai. Bentuk normal
pertama dicapai bila tiap nilai atribut adalah tunggal. Kondisi ini
dapat diperoleh dengan melakukan eliminasi terjadinya data ganda
33
(repeating groups). Pada kondisi normal pertama ini kemungkinan
masih terjadi adanya data rangkap (Connolly, 2005, p403).
2. Second Normal Form (2NF)
Second normal form (2NF) adalah merupakan sebuah relasi dalam
1NF dan setiap atribut non-primary key bersifat Full Function
Dependency pada primary key dari relasi tersebut. Dalam normalisasi
kedua ini, atribut yang tergantung pada sebagian dari suatu composite
key sebuah tabel dipindahkan ke sebuah tabel yang terpisah
(Connolly, 2005, p407).
3. Third Normal Form (3NF)
Third normal form (3NF) adalah sebuah atribut relasi yang memenuhi
normal kedua dimana tidak terdapat atribut non primary key yang
bersifat transitively dependent dari primary key-nya. Dalam
normalisasi ketiga ini, atribut yang tidak memberikan kontribusi
terhadap penjelasan karakteristik primary key, akan dipindahkan ke
sebuah tabel yang terpisah. Keuntungan dari tabel relasional dalam
3NF adalah menghilangkan data yang berulang-ulang dengan tujuan
menghemat tempat dan mengurangi keanehan manipulasi (Connolly,
2005, p409).
2.2 Teori-teori Khusus
2.2.1
Pengertian Internet
Internet adalah jaringan computer yang saling terhubung ke
seluruh dunia tanpa mengenal batas territorial, hokum dan budaya. Secara
34
fisik dianalogikan sebagai jaringan laba-laba (The Web) yang
menyelimuti bola dunia dan terdiri dari titik-titik (node) yang saling
berhubungan. Internet juga merupakan sumber daya informasi yang
menjangkau seluruh dunia, sumber daya informasi ini sangat luas dan
sangat besar sehingga tidak ada satu orang, satu organisasi atau satu
negara yang menanganinya sendiri.
Menurut Thomas (1997), internet adalah sebuah world wide,
bentuk jaringan bebas menggunakan jaringan line telepon, terdiri dari
jutaan pengguna diseluruh dunia yang membuat koneksi melalui modem
dan dapat berkomunikasi satu sama lain.
2.2.1.1 Istilah-istilah Internet
a.
HTML
HTML (Hypertext Markup Language) digunakan untuk
membangun suatu halaman web. Sekalipun banyak orang
menyebutnya sebagai suatu bahasa pemrograman, HTML
sebenarnya sama sekali bukan bahasa pemrograman, karena
seperti tercermin dari namanya, HTML adalah suatu bahasa
mark-up.
HTML
digunakan
untuk
melekukan
markup
(penandaan) terhadap sebuah dokumen teks. Tanda tersebut
digunakan untuk menentukan format atau style dari teks yang
ditandai.
b.
HTTP
HTTP (Hypertext Transfer Protocol) adalah suatu
35
protocol yang diikuti oleh web browser dalam meminta atau
mengambil suatu dokumen yang disediakan di web server.
Protokol ini merupakan protocol standar yang digunakan untuk
mengakses web pages. Selain HTTP terdapat pula Secure HTTP
yang dikembangkan oleh Enterprise Integration Technology
(EIT), National Centre for Supercomputing Application (NCSA),
dan RSA Data Secutity. Secure HTTP ini adalah HTTP yang
aman dimana antara user dan server menggunakan suatu form
entry data. User dapat mengklik pada sebuah tombol persetujuan
yang aman, dan program klien akan menjalankan kunci keamanan
bagi sesi tersebut dengan form tersebut.
HTTP merupakan serangkaian aturan untuk pertukaran file
(teks, grafik, gambar, suara, video, dan file multimedia yang lain)
di dalam world wide web, berhubungan dengan protokol TCP/IP
yang merupakan protokol utama dalam pertukaran informasi di
internet, HTTP adalah sebuah protokol aplikasi. Konsep dasar
yang merupakan bagian dari HTTP termasuk ide bahwa di dalam
file bisa terdapat referensi ke file lain dimana pemilihan file
tersebut akan memicu terjadinya trasnfer request. Beberapa web
server dalam memenuhi layanan akan HTML dan file-file lain
yang dapat dilayaninya, menambahkan sebuah HTTP daemon,
yaitu program yang didesain untuk menunggu HTTP request dan
melayani request bilamana terjadi. HTTP request ini berasal dari
36
HTTP client seperti web browser.
2.2.2
Pengertian Web
World Wide Web merupakan jaringan dokumentasi yang sangat
besar yang saling berhubungan satu dengan yang lainnya. Satu set
protokol yang mendefinisikan bagaimana sistem bekerja dan mentransfer
data, dan sebuah software yang membuatnya bekerja dengan mulus. Web
merupakan sistem yang menyebabkan pertukaran data di internet
menjadi mudah dan efisien.
Web terdiri atas dua komponen dasar :
a. Server web : sebuah komputer dan software yang
menyimpan dan mendistribusikan data ke komputer
lainnya melalui internet.
b. Browser web : software yang dijalankan pada
komputer pemakai atau klien yang meminta informasi
dari server web yang menampilkannya sesuai dengan
file data itu sendiri.
Web juga merupakan salah satu sumber daya yang
disediakan oleh internet, berupa suatu jaringan server web yang
berbasiskan hiperteks, tempat situs-situs yang diakses melalui
web browser saling terkoneksi dengan menggunakaan protokol
HTTP. Koneksi web ini menggunakan arsitektur client server.
Web menjadi pandangan yang sangat penting terhadap internet.
Pertama, workd wide web ini menyediakan akses terhadap huruf,
37
ukuran, gaya huruf, dan termasuk gambar dari layar dengan
perawatan yang tidak khusus. Mungkin suara dan gambar juga
walaupun terlalu besar untuk di download dan di dengar atau pun
dilihat.
Web merupakan perangkat yang cepat sekali populer, hal
ini dikarenakan hal-hal rumit dapat diotomatisasi oleh web
sehnigga user tidak dipusingkan oleh proses-proses yang
sesungguhnya terjadi dan kemampuannya untuk menampilkan
kata-kata, tipografi, dan gambar di layar komputer, bahkan suara.
Contoh web browser yang terkenal antara lain Internet Explorer
dan netscape Communicator.
2.2.2.1 Pengertian Web Server
Web server berfungsi untuk menyimpan dokumen yang
disebut web pages (halaman web) dalam format HTML dan
mengirimkannya ke web klien berdasarkan permintaan klien, yang
disebut browser. Meminta dokumen dari server dengan
mengirimkan URL dokumen ke server. Bila sebuah browser
mengirimkan sebuah URL yang hanya menamai web server dan
bukan sebuah hal tertentu, maka server mengirimkan sebuah hal
default, yang dikenal sebagai homepage ke browser. Server
mengirim hal-hal ke browser atau mengirim sebuah tanggapan
bila halaman tidak tersedia dengan menggunakan protokol HTTP.
38
2.2.2.2 Pengertian Web Database System
Menurut Eaglestone (2001, p38) “Web Database System
are systems in which both Web and database technologies are
used”. Dapat dikatakan web database system adalah sistem
dimana dipadukannya teknologi web dan database. Oleh karena
itu web database menyediakan akses yang lebih luas ke dalam
sistem database, cara untuk mendistribusikan sistem dan banyak
lagi servis melalui integrasinya sistem.
2.2.2.3 Perancangan Web Database
Menurut Eaglestone (2001, p262), perancangan Web
Database mirip seperti konvensional database namun terdapat
dua hal yang perlu ditambahkan :
1. Web Page Design, hal ini meliputi :
a. Web data representation
b. Web data association
c. Web interface design
2. Perancangan koneksi antara Web Pages dan database,
meliputi :
a. Web database logical mapping
b. Web database physical mapping
2.2.3
Teori PHP
PHP adalah bahasa pemrograman script yang paling banyak
dipakai saat ini. PHP banyak dipakai untuk memprogram situ web
39
dinamis, walaupun tidak tertutup kemungkinan digunakan untuk
pemakaian lain.
Contoh terkenal dari aplikasi PHP adalah phpBB dan MediaWiki
(software di belakang Wikipedia). PHP juga dapat dilihat sebagai pilihan
lain dari ASP.NET/C#/VB.NET Microsoft, ColdFusion Macromedia,
JSP/Java Sun Microsystems, dan CGI/Perl. Contoh aplikasi lain yang
lebih kompleks berupa CMS yang dibangun menggunakan PHP adalah
Mambo, Jommla!, Postnuke, Xaraya, dan lain-lain.
2.2.3.1 Kelebihan PHP
1. Bahasa pemrograman PHP adalah sebuah bahasa script
yang
tidak
melakukan
sebuah
kompilasi
dalam
penggunaannya.
2. Web Server yang mendukung PHP dapat ditemukan
dimana-mana dari mulai IIS sampai dengan apache,
dengan konfigurasi yang lebih mudah.
3. Dalam sisi pengembangan lebih mudah, karena
banyaknya milis-milis dan developer yang siap membantu
dalam pengembangan.
4. Dalam sisi pemahaman, PHP adalah bahasa scripting
yang paling mudah karena referensi yang banyak.
2.2.4
MySQL
MySQL adalah salah satu jenis database server yang sangat
terkenal. Kepopulerannya disebabkan bersifat free (anda tidak perlu
40
membayar untuk menggunakannya) pada berbagai platform (kecuali pada
windows, yang bersifat software
atau anda perlu membayar setelah
melakukan evaluasi dan memutuskan untuk digunakan untuk keperluan
produksi). Perangkat lunak MySQL sendiri dapat di download dari http :
// www.mysql.org atau http : // www.mysql.com.
MySQL
termasuk
jenis
RDMS
(Relational
Database
Management System). Itulah sebabnya istilah seperti tabel, baris, dan
kolom digunakan pada MySQL. Pada MySQL, sebuah database
mengandung satu atau jumlah tabel. Tabel terdiri atas sejumlah baris dan
setiap baris mengandung satu atau beberapa kolom.
Menurut Luke Welling dan Laura Thomson (2001, p1), MySQL
adalah sebuah relational database management systems yang sangat cepat
dan kuat.
MySQL adalah sebuah perangkat lunak sistem management basis
data SQL atau DBMS yang multithread, multiuser, dengan sekitar 6 juta
instalasi diseluruh dunia. MySQL dimiliki dan disponsori oleh sebuah
perusahaan komersil Swedia MySQL AB, dimana memegang hak cipta
hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang
Finlandia yang mendirikan MySQL AB adalah : David Axmark, Allan
Larson, dan Michael “Monty” Widenius. Tersedia sebagai perangkat
lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi
mereka juga menjual dibawah lisensi komersial untuk kasus-kasus
dimana penggunannya tidak cocok dengan pengguna GPL.
41
Untuk melakukan administrasi dalam basis data MySQL, dapat
menggunakan modul yang sudah termasuk yaitu command-line (perintah
: mysql dan mysqladmin). Juga dapat diunduh dari situs MySQL yaitu
sebuah modul berbasis grafik (GUI) : MySQL Administrator dan MySQL
Query Browser. Selain itu juga terdapat sebuah perangkat lunak gratis
untuk administrasi basis data MySQL berbasis web yang sangat populer
yaitu phpMyAdmin.
2.2.5 Pengertian Materi
Materi adalah sesuatu yang menjadi bahan (untuk diujikan,
dipikirkan, dibicarakan) (www.pusatbahasa.diknas.go.id/kbbi/index.php).
2.2.6 Pengertian Soal
Soal
adalah
apa
yang
menuntut
jawaban
(www.pusatbahasa.diknas.go.id/kbbi/index.php).
2.2.7 Pengertian Forum
Forum adalah wadah, tempat membicarakan kepentingan bersama
(www.pusatbahasa.diknas.go.id/kbbi/index.php).
2.2.8 Pengertian Diskusi
Diskusi adalah pertemuan ilmiah untuk bertukar pikiran mengenai
suatu masalah (www.pusatbahasa.diknas.go.id/kbbi/index.php)
Download