6
BAB 2
LANDASAN TEORI
2.1
Database
Database adalah kumpulan relasi logical dari data atau deskripsi data yang dapat
digunakan
bersama
dan
dibuat
untuk
memperoleh informasi
yang
dibutuhkan oleh
perusahaan (Connolly, 2005, p15).
Database
adalah
kumpulan
dari
data
dan
secara
khusus
menjelaskan
kegiatan
dari satu atau beberapa organisasi yang saling terkait (Ramakrishnan dan Gerhke, 2003,
p4).
Basis
data
terdiri
dari
entitas, atribut, dan
relationship
dari
informasi
organisasi/perusahaan.
Entitas
merupakan
suatu
objek
nyata
(manusia, tempat,
benda,
konsep atau kejadian) dalam suatu organisasi yang direpresentasikan dalam basis data.
Atribut
merupakan
suatu property
yang
menjelaskan beberapa
aspek dari
objek
yang
ingin disimpan, dan relationship adalah suatu hubungan antara entitas yang satu dengan
yang lainnya dalam basis data (Connolly, 2005, p15).
2.2
DBMS (Database Management System)
2.2.1
Pengertian DBMS
DBMS adalah software yang dirancang untuk membantu dalam memelihara dan
menggunakan kumpulan data yang
berukuran besar
(Ramakrishnan dan
Gerhke, 2003,
p4).
  
7
Hardware
Software
Sedangkan menurut Connolly (2005, p16), DBMS adalah suatu sistem software
yang
memungkinkan user
untuk
mendefinisikan, menciptakan,
memelihara
dan
mengontrol akses ke database.
2.2.2
Komponen Lingkungan DBMS
Terdapat 5
komponen utama dalam lingkungan DBMS (Connolly, 2005, p18)
seperti yang tertera pada gambar 2.1:
Data
Machine
Bridge
Procedure
Human
People
Gambar 2.1  Lingkungan DBMS
(Sumber :Connolly, 2005,  p19)
1.   Hardware
DBMS
dan
aplikasi-aplikasi memerlukan
hardware
untuk
beroperasi.
Hardware
tersebut dapat berkisar dari komputer personal tunggal, ke suatu mainframe tunggal,
ke suatu jaringan komputer.
2.   Software
Komponen software
terdiri dari
DBMS
itu sendiri dan program
aplikasi,
bersama
dengan
sistem
operasi,
termasuk
software
jaringan jika
DBMS
sedang digunakan
melalui suatu jaringan.
  
8
3.   Data
Komponen 
yang 
mungkin  paling  penting  dari 
lingkungan  DBMS,  dari  sudut
pandang
end-users,
adalah
data.
Data
berperan sebagai
suatu
jembatan
antara
komponen-komponen mesin dan komponen-komponen manusia.
4.   Prosedur
Merupakan instruksi dan aturan-aturan yang mengatur perancangan dan penggunaan
database.
Pengguna
sistem dan staff
yang
mengatur basis
data
yang
memerlukan
prosedur-prosedur
yang telah didokumentasikan pada bagaimana menggunakan atau
menjalankan sistem.
5.   Manusia
Terdiri dari:
Data Administrator (DA) bertanggungjawab dalam pengaturan sumber daya data
termasuk
perencanaan database,
pengembangan dan
pemeliharaan standar,
kebijakan dan prosedur, dan desain database conseptual/logical.
Database Administrator (DBA) bertanggungjawab atas realisasi
fisik
dari basis
data,
termasuk
perancangan basis
data
fisik
dan
implementasi, keamanan
dan
kontrol
integritas,
perawatan
sistem
operasional,
dan
menyakinkan kinerja
aplikasi yang memuaskan untuk pengguna.
Logical
Database
Designer
terkait
dengan
identifikasi data (seperti
entitas
dan
atribut),  relationship antara  data,  dan 
batasan  data 
yang  disimpan  dalam
database.
Physical 
Database 
Designer 
memutuskan 
bagaimana  perancangan 
logical
database direalisasikan secara fisik.
  
9
Application Developers bertanggungjawab setelah basis data diimplementasikan,
program aplikasi
yang
menyediakan fungsionalitas yang diperlukan
untuk
end-
users harus diimplementasikan.
End-users   adalah  klien’  untuk  basis  data,  yang  telah  dirancang   dan
diimplementasikan, dan sedang dirawat
untuk
menyajikan kebutuhan-kebutuhan
informasi
mereka.
End-users
dapat
diklasifikasikan berdasarkan
cara
mereka
menggunakan sistem: Naïve users dan Sophisticated users.
2.2.3
Keuntungan dan kerugian DBMS
Keuntungan DBMS (Connolly, 2005, p26):
1.   Kontrol terhadap pengulangan data
2.   Data yang konsisten
3.   Semakin banyak informasi yang didapat dari data yang sama
4.   Data yang dibagikan (sharing data)
5.   Menambah integritas data
6.   Menambah keamanan data
7.   Penetapan standarisasi
8.   Pengurangan biaya
9.   Menyeimbangkan konflik kebutuhan
10. Menambah pengaksesan data dan hasilnya
11. Menambah produktivitas
12. Menambah pemeliharaan data melalui independensi data
13. Menambah concurrency
14. Menambah backup dan recovery
  
10
Kerugian DBMS (Connolly, 2005, p29):
1.   Kompleksitas
2.   Ukuran yang besar
3.   Biaya dari suatu DBMS
4.   Biaya penambahan perangkat keras
5.   Biaya conversion
6.   Kinerja
7.   Efek yang besar dari kegagalan
2.3
Siklus Hidup Aplikasi Database (Database Application Lifecycle)
Berikut ini merupakan diagram tahap-tahap siklus hidup aplikasi basis data, yang
tertera pada gambar 2.2, antara lain (Connolly, 2005, p283):
  
11
Gambar 2.2 Tahap-tahap Siklus Hidup Aplikasi Basis Data
( Sumber : Connolly, 2005, p284)
  
12
2.3.1
Database Planning (Perencanaan Basis Data)
Perencanaan
basis
data
merupakan
aktivitas-aktivitas manajemen
yang
memungkinkan  tahap-tahap 
dalam 
siklus 
pengembangan    
sistem 
basis 
data
direalisasikan secara efisien dan efektif.
Tahap
awal
yang
penting
dalam
perencanaan basis
data
adalah
menentukan
dengan jelas
mission
statement
untuk
proyek basis
data.
Mission
Statement
ini
menentukan tujuan utama aplikasi basis data. Mission Statement membantu menjelaskan
tujuan
proyek
basis
data
dan
menyediakan
cara
yang
lebih
jelas
untuk
menciptakan
suatu basis data
yang efektif
dan
efisien.
Tahap selanjutnya adalah
mission
objective.
Setiap mission objective harus mengidentifikasi tugas-tugas tertentu yang akan didukung
basis data.
2.3.2
System Definition (Definisi Sistem)
System
Definition
menggambarkan
ruang
lingkup
dan
batasan-batasan
aplikasi
basis data dan user views (gambaran pengguna) utama.
User
Views
mendefinisikan
apa
yang
dibutuhkan
oleh
sistem
basis
data
dari
sudut pandang peranan pekerjaan tertentu (seperti Manager
atau Supervisor) atau area
aplikasi perusahaan (seperti marketing, personnel, atau stock control).
2.3.3
Requirements   Collection   and   Analysis   (Pengumpulan  Kebutuhan  dan
Analisis)
Merupakan
proses
pengumpulan dan
analisis
informasi
dari
bagian organisasi
yang akan didukung oleh sistem basis data, dan
menggunakan informasi tersebut untuk
mengidentifikasi kebutuhan dari sistem yang baru.
  
13
Ada 3
(tiga) pendekatan utama
untuk pengaturan kebutuhan
aplikasi basis data
dengan multiple user views, antara lain:
Pendekatan centralized
Kebutuhan  untuk  setiap  user view digabung  dalam  suatu  kumpulan  kebutuhan
tunggal
untuk
sistem basis
data
baru.
Representasi
model
data
untuk
semua
user
view dibuat selama tahap desain basis data
Pendekatan view integration
Kebutuhan untuk
setiap
user view
dibuat
dalam daftar
yang
terpisah.
Representasi
model data
untuk setiap user view dibuat dan kemudian digabungkan selama
tahap
desain basis data.
Kombinasi antara centralized dan view integration
2.3.4
Database Design (Perancangan Basis data)
Merupakan
proses
pembuatan
suatu
rancangan
yang
akan
mendukung
mission
statement
dan
mission
objective
perusahaan untuk
membuat
sistem
basis
data
yang
dibutuhkan. Ada 4 (empat) pendekatan perancangan basis data:
Bottom-up
Pendekatan ini
dimulai
dari
tingkat paling
dasar
dari
atribut
(yakni
property
dari
entitas
dan
relationship)
dimana
melalui
analisis
gabungan antara
atribut-atribut,
dikelompokkan ke dalam
relasi-relasi yang
merepresentasikan tipe-tipe
entitas
dan
hubungan
antara entitas. Pendekatan
ini
lebih
cocok
untuk
perancangan basis data
yang sederhana dengan jumlah atribut yang relatif kecil.
  
14
Top-down
Pendekatan
ini
dimulai
dari
pengembangan
model
data
yang terdiri
dari
beberapa
relationship
dan
entitas
tingkat
tinggi
yang
kemudian dipakai
untuk
mengidentifikasikan entitas
tingkat
rendah,
relationship,
dan
atribut
yang
saling
berhubungan.
Inside-out
Menyerupai dengan
pendekatan
bottom-up
tetapi
sedikit
berbeda
dimana
pada
awalnya
mengidentifikasikan entitas
utama
dan
kemudian
menentukan
entitas,
relationship,
dan
atribut
lainnya
yang
berkaitan dengan
entitas
utama
yang
telah
diidentifikasi sebelumnya.
Mixed
Menggunakan pendekatan
bottom-up
dan
top-down
untuk
bagian
yang
berbeda
sebelum akhirnya digabungkan.
2.3.5
DBMS Selection (Pemilihan DBMS)
Merupakan pemilihan dari suatu
DBMS yang tepat
untuk
mendukung aplikasi
basis data. Tahap-tahap pemilihan DBMS:
Menentukan istilah referensi studi
Membuat daftar sementara 2 (dua) atau 3 (tiga) produk
Mengevaluasi produk
Merekomendasi pilihan dan laporan produksi
  
15
2.3.6
Application Design (Perancangan Aplikasi)
Merupakan perancangan user interface dan program aplikasi yang menggunakan
dan memproses basis data. Aspek penting dalam perancangan aplikasi, yakni:
Transaction Design (Perancangan Transaksi)
Transaksi merupakan sebuah aksi, atau serangkaian aksi yang dilakukan oleh
seorang pengguna atau
program
aplikasi
yang
mengakses
atau
mengubah
isi
dari
basis data.
Tujuan
dari
perancangan transaksi
adalah
untuk
menetapkan
dan
mendokumentasikan karakteristik tingkat tinggi dari transaksi yang dibutuhkan pada
basis data, yang termasuk:
1.   data yang digunakan dalam transaksi
2.   karakteristik fungsional dari transaksi
3.   keluaran (output) dari transaksi
4.   kepentingan pengguna
5.   nilai yang diharapkan dari pemakaian
Perancangan ini harus dilakukan lebih awal dalam proses perancangan untuk
memastikan
bahwa
basis
data
yang
diimplementasikan
mampu
mendukung
semua
transaksi yang dibutuhkan. Ada 3 (tiga) jenis transaksi, yaitu:
1.   Retrieval
transactions, digunakan untuk
mendapatkan  kembali 
data 
untuk
ditampilkan di layar atau dalam laporan.
2.   Update transactions,
digunakan
untuk
menambah data,
menghapus
data
lama,
atau memodifikasi data yang ada dalam basis data.
3.   Mixed Transactions, melibatkan retrieval (pemanggilan) dan update (perubahan)
data atau kombinasi antara keduanya.
  
16
User Interface Design GuideLines
Pedoman yang dapat digunakan untuk mendesain tampilan aplikasi adalah:
Judul yang bermakna
Instruksi yang mudah dipahami
Pengelompokan logical dan pengurutan kolom-kolom
Tampilan visual yang menarik
Label kolom yang tidak asing
Terminologi dan penyingkatan yang konsisten
Penggunaan warna yang konsisten
Adanya ruang dan batas yang terlihat untuk kolom-kolom data entri
Penggerakan kursor yang nyaman
Koreksi kesalahan untuk karakter individual dan keseluruhan kolom
Pesan kesalahan untuk nilai-nilai yang tidak dapat diterima
Kolom-kolom yang opsional ditandai dengan jelas
Pesan penjelasan untuk kolom-kolom
Adanya penanda akhir transaksi
2.3.7
Prototyping (Bentuk Dasar)
Merupakan  pembuatan  suatu 
model 
kerja 
dari 
aplikasi 
basis  data. 
Suatu
prototype adalah contoh model yang tidak mempunyai semua fitur-fitur yang diperlukan
atau
menyediakan semua
fungsionaliti
dari
sistem
terakhir.
Tujuan
utama
dari
pengembangan
suatu
aplikasi
basis
data
prototype
adalah
memungkinkan pengguna
menggunakan prototype
tersebut untuk
mengidentifikasi
fitur-fitur dari sistem apakah
  
17
sudah bekerja dengan baik atau belum, dan jika mungkin mengusulkan peningkatan atau
bahkan fitur-fitur baru pada sistem basis data.
Ada 2 (dua) strategi prototyping yang digunakan sekarang:
Requirements   prototyping menggunakan  suatu  prototype   untuk  menentukan
kebutuhan-kebutuhan dari
sistem
basis
data
yang
diusulkan
dan
suatu
waktu
kebutuhan-kebutuhan tersebut lengkap prototype dibuang.
Evolutionary  prototyping, digunakan untuk tujuan yang sama, perbedaan yang
penting
adalah
bahwa
prototype
tidak
dibuang
tetapi
dengan
perkembangan yang
lebih jauh menjadi sistem basis data yang digunakan.
2.3.8
Implementation (Implementasi)
Merupakan realisasi fisik dari perancangan basis data dan aplikasi. Implementasi
database dicapai dengan menggunakan:
DDL untuk membuat skema database dan file database kosong.
DDL untuk membuat user view yang diinginkan.
3GL  dan  4GL 
untuk  membuat  program  aplikasi,  termasuk  transaksi  database
disertakan dengan menggunakan DML, atau ditambahkan pada bahasa pemograman.
Menurut Connolly (2005, p40), DDL (Data Definition Language) adalah bahasa
yang digunakan untuk
mendeskripsikan dan
menamakan entitas, atribut, dan
hubungan
yang
diperlukan
untuk
aplikasi,
beserta dengan
batasan
keamanan
dan
integritas
yang
berhubungan. Sedangkan
DML
(Data
Manipulation
Language)
adalah
bahasa
yang
menyediakan sekumpulan
operasi
untuk
mendukung
manipulasi
data
yang
ada
dalam
database.
  
18
Menurut Howe
(1996,
adalah
bahasa pemprograman tingkat tinggi yang didesain untuk mempermudah manusia untuk
mengerti. Contoh dari 3GL adalah C, C++, Java. sedangkan 4GL adalah bahasa program
yang didesain lebih mendekati dengan bahasa manusia dibandingkan bahasa 3GL.
2.3.9
Data Conversion and Loading (Perubahan dan Pengambilan Data)
Merupakan
pemindahan
data
yang
ada
ke
dalam basis data
baru dan
merubah
aplikasi
yang ada
untuk beroperasi pada basis data
yang baru.
Langkah
ini diperlukan
hanya ketika suatu sistem basis data baru menggantikan sistem yang lama.
2.3.10  Testing (Pengetesan)
Merupakan proses
menjalankan sistem
basis
data
dengan
maksud
pencarian
kesalahan-kesalahan.
Sebelum
ditunjukkan
secara
langsung,
aplikasi
basis
data
yang
baru dikembangkan seharusnya diuji sepenuhnya.
2.3.11  Operational Maintenance (Pemeliharaan Operasional)
Merupakan
proses
pengawasan
dan
pemeliharaan sistem
basis
data
berikut
instalasinya. Pada
langkah sebelumnya,
sistem
basis data
telah
diimplementasikan dan
diuji
sepenuhnya.
Sekarang sistem
memasuki
langkah
pemeliharaan,
yang
melibatkan
aktivitas-aktivitas berikut:
Mengawasi kinerja sistem.
Memelihara
dan meng-upgrade sistem basis data (ketika dibutuhkan).
  
19
2.4
Entity Relationship (ER) Modelling
2.4.1
Tipe Entitas (Entity Types)
Menurut Connolly (2005, p343),  Tipe entitas adalah kumpulan dari objek-objek
dalam dunia
nyata
yang
memiliki properties
sama,
yang
diidentifikasi oleh
organisasi,
mempunyai keberadaan yang
bebas.
Entity
occurrence
adalah
objek
yang
diidentifikasikan secara unik dari tipe entitas. Tipe entitas dapat diklasifikasikan menjadi
(Connolly, 2005, p354):
Strong entity adalah entitas yang keberadaannya tidak tergantung pada entitas lain.
Weak entity adalah entitas yang keberadaannya tergantung pada entitas lain.
2.4.2
Tipe Relationship
Menurut Connolly
(2005,
p346),
tipe
relationship
adalah kumpulan hubungan
yang
mempunyai arti
diantara
tipe
entitas.
Relationship
occurrence
adalah
hubungan
yang
dapat diidentifikasi secara
unik,
dimana
memiliki
satu occurence
dari
setiap
tipe
entitas
yang
berpartisipasi. Derajat
tipe
relationship
adalah
jumlah
tipe
entitas
yang
berpartisipasi dalam suatu relationship. Derajat relationship terdiri dari:
Binary relationship adalah hubungan antara 2 tipe entitas.
Ternary relationship adalah ubungan antara 3 tipe entitas.
Quaternary relationship adalah hubungan antara 4 tipe entitas.
Recursive  relationship  adalah tipe relationship  dimana tipe entitas yang sama
berpartisipasi lebih dari satu dalam role yang berbeda.
Inti utama dari suatu relationship adalah multiplicity. Multiplicity adalah jumlah
atau 
hasil 
dari 
kejadian  yang 
mungkin  terjadi  pada 
sebuah 
entitas  yang 
dapat
  
20
menghubungkan ke kejadian tunggal dari suatu tipe entitas yang berhubungan melalui
particular relationship (Connolly, 2005, p356).  Beberapa jenis multiplicity adalah
Hubungan One-to-One (1:1)
Hubungan One-to-Many (1:*)
Hubungan Many-to-Many (*:*)
2.4.3
Atribut
Menurut Connolly (2005, p350), atribut adalah suatu property dari suatu entitas
atau tipe relationship. Klasifikasi atribut adalah:
Simple attribute adalah suatu atribut yang terdiri dari komponen tunggal dan berdiri
sendiri.
Composite attribute adalah suatu yang terdiri dari banyak komponen, dimana setiap
komponen berdiri sendiri.
Single-valued
attribute adalah
suatu atribut
yang
menampung nilai
tunggal
untuk
setiap keberadaan dari tipe entitas.
Multi-valued
attribute
adalah
suatu
atribut
yang
menampung banyak
nilai
untuk
setiap keberadaan dari tipe entitas.
Derived attribute adalah suatu atribut yang memiliki nilai yang dihasilkan dari satu
atau beberapa atribut lainnya, dan tidak harus berasal dari satu entitas.
  
21
2.4.4
Keys
Menurut Connolly (2005, p352), jenis-jenis keys adalah:
Candidate key adalah kumpulan minimal atribut yang secara unik mengidentifikasi
tiap occurrence dari tipe entitas.
Primary key adalah candidate key yang dipilih
untuk secara
unik
mengidentifikasi
tiap occurrence dari tipe entitas.
Composite key adalah candidate key yang terdiri dari dua atau lebih atribut.
2.4.5
Masalah-masalah pada ER Model
Menurut Connolly (2005, p364), masalah pada ER Model adalah:
Fan Traps adalah suatu masalah dimana model merepresentasikan tipe relationship
antara tipe entitas tetapi terdapat jalur yang ambigu.
Chasm   Traps
adalah   suatu   masalah   dimana   model   merepresentasikan   tipe
relationship antara tipe entitas tetapi terdapat jalur yang hilang.
2.5
Enhanced Entity-Relationship Modeling
Model ER (Entity Relationship) yang didukung dengan konsep simantik disebut
Enhanced Entity-Relationship (EER) (Connolly, 2005, p371).
2.5.1
Spesialisasi/Generalisasi (Specialization/Generalization)
Konsep dari Spesialisasi dan generalisasi adalah asosiasi
tipe entitas dengan tipe
entitas
khusus
yang dikenal sebagai superclass
dan
subclass,
dan
proses
dari
atribut
turunan (inheritance) (Connolly, 2005, p372).
  
22
Superclass adalah suatu tipe entitas yang
mengandung satu atau lebih subgroup
terpisah dari suatu occurence, yang dibutuhkan untuk direpresentasikan pada suatu data
model.
Subclass adalah suatu subgroup
terpisah dari occurence
suatu tipe entitas,
yang
dibutuhkan untuk direpresentasikan pada suatu data model.
Specialization
Process  
adalah
proses
memaksimalkan perbedaan
diantara
anggota-anggota entitas dengan pengidentifikasian karakter-karakter yang beda.
Generalization Process adalah
proses
meminimalkan perbedaan diantara entitas
dengan pengidentifikasian karakter-karakter biasa.
Batasan pada spesialisasi dan generalisasi ada 2 yaitu:
Participation constraint adalah menentukan apakah setiap anggota dalam superclass
harus berpatisipasi sebagai anggota dari subclass.
Disjoint constraint
adalah menjelaskan
hubungan
antara
anggota dari
subclass
dan
mengindikasikan apakah
memungkinkan
untuk
satu
anggota
superclass
menjadi
anggota pada satu atau lebih subclass.
2.5.2
Aggregation
Merepresentasikan
suatu
hubungan
‘mempunyai
(has-a)’
atau
‘bagian
dari
(is-
part-of)’ antara tipe entitas dimana satu merepresentasikan  keseluruhan dan yang
lainnya bagian (Connolly, 2005, p383).
  
23
2.5.3
Composition
Bentuk spesifik dari aggregation yang merepresentasikan suatu hubungan antara
entitas,
dimana
terdapat
suatu
kepemilikan
yang kuat
dan
coincidental
lifetime
antara
keseluruhan dan sebagian.
2.6
Normalisasi
Menurut
Hoffer  (2005,  p212),  normalisasi
adalah
proses  decomposing relasi
yang memiliki anomali untuk menghasilkan relasi yang lebih kecil dan lebih terstuktur.
Menurut Connolly (2005,
p388), normalisasi adalah
teknik
untuk
menghasilkan
sekumpulan relasi dengan property, sesuai dengan kebutuhan data dari perusahaan.
Tujuan normalisasi adalah
untuk mengidentifikasi sekumpulan relasi
yang
tepat
untuk mendukung keperluan data dari perusahaan.
Manfaat normalisasi:
1.   Meminimalkan jumlah storage space 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.
Tabel 
yang 
belum 
dinormalisasi 
dinamakan 
Unnormalized   Form   (UNF).
Menurut
Connolly
(2005,
p403)
Unnormalized
form
(UNF)
adalah
merupakan
suatu
tabel yang  berisikan satu atau lebih group
yang berulang. Group
yang berulang adalah
atribut atau sekumpulan atribut dalam suatu tabel
yang
muncul dengan beberapa
nilai
untuk satu occurrence.
  
24
Bentuk-bentuk normalisasi antara lain:
1.   First Normal Form (1NF)
Menurut
Connolly (2005,
p403),
First
Normal
Form
adalah
suatu
relasi
dimana
pertemuan
antar
setiap
baris
dan
kolom
terdiri
1
(satu)
dan
hanya
1
(satu)
nilai.
Dalam normalisasi pertama ini, data yang berulang-ulang dihilangkan.
2.   Second Normal Form (2NF)
Menurut
Connolly (2005,
p407),
Second
normal
form
(2NF)
adalah sebuah relasi
dalam 1NF
dan setiap atribut non-primary
key bersifat Fully 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.
Menurut 
Connolly  (2005, 
p395), 
Full 
functional 
dependency 
adalah
mengindikasikan bahwa jika A dan B adalah atribut dari sebuah relasi, B adalah fully
functional dependent pada A jika B adalah functionally dependent pada A tapi bukan
merupakan bagian dari A.
3.   Third Normal Form (3NF)
Menurut Connolly (2005, p408), Third normal form (3NF) adalah sebuah relasi yang
memenuhi normal pertama dan normal kedua dan tidak terdapat atribut non primary
key yang bersifat transitively dependent pada primary key-nya.
Menurut
Connolly
(2005,
p397),
Transitive
dependency
adalah
jika
kondisi
A,
B,
dan
C
merupakan
atribut-atribut
dari
sebuah relasi
dimana
jika
A?B
dan
B?C,
maka
C
adalah
transitively
dependent
dari
A
melalui B
(A
tidak
functionally
dependent pada B dan C ).
  
25
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
dengan
tujuan
menghemat tempat
dan
mengurangi keanehan
manipulasi.
4.   Boyce-Codd Normal Form (BCNF).
Menurut
Connolly (2005,
p.419),
relasi
dalam
BCNF,
jika
dan
hanya
jika,
setiap
penentu/determinannya adalah candidate key.
5.   Fourth Normal Form (4NF).
Menurut
Connolly (2005,
p.430),
Fourth
Normal
Form
(4NF)
adalah suatu relasi
pada
Boyce-Codd
normal
form
dan
tidak
mengandung nontrivial
multi-valued
dependencies.
Multi-valued
dependencies
adalah
dependency antara
atribut
dalam
suatu
relasi
dimana nilai dari A memiliki sekumpulan nilai dari B dan C. Namun nilai dari B dan
C
tidak saling bergantung.
6.   Fifth Normal Form (5NF).
Menurut Connolly (2005, p.431), Fifth Normal Form (5NF) adalah suatu relasi yang
tidak memiliki join dependency.
Join
dependency
mendeskripsikan tipe
dari
dependency.
Sebagai
contoh
relasi
R
dengan subset dari A,B,…,Z. Relasi R akan join dependency jika dan hanya jika tiap
nilai dari R sama dengan nilai dari join A,B,…,Z
Untuk
relational
data
model,
sangat
penting
untuk
mengetahui bahwa
hanya
normal pertama saja
(
1NF
)
yang
secara kritis dapat
menciptakan relasi-relasi yang
dibutuhkan.  Semua  normal  form  yang  berurutan  selanjutnya  seperti  normal  kedua
  
26
(2NF),
normal
ketiga
(3NF),
dan
seterusnya sampai
normal
kelima
(
5NF
)
adalah
optional
atau
pilihan.
Bagaimanapun juga
semua
bertujuan
untuk
menghindari update
anomalies,
maka dari itu secara normal disarankan untuk melakukan proses normalisasi
paling tidak sedikitnya sampai dengan normal yang ketiga ( 3NF ).
Di dalam
Gambar 2.3 ditunjukkan bahwa beberapa relasi dari 1NF  adalah juga
memenuhi 2NF
dan
beberapa
relasi
dari
2NF
juga
memenuhi 3NF.
Setiap
BCNF
merupakan
3NF,  tapi  3NF  belum
tentu
memnuhi
BCNF.  Kita
memulai
melakukan
proses noramalisasi ini dengan mentransfer data secara initial yang berada sebagi form
ke dalam table format dengan baris-baris dan kolom-kolom.
Gambar 2.3 Illustrasi diagram dari hubungan diantara normal forms
(Sumber :Connolly, 2005,  p401)
  
27
2.7
Perancangan Conceptual, Logical dan Physical Database
Menurut
Connolly
(2005,
p437),
tahap-tahap
dalam
perancangan basis
data
adalah:
2.7.1
Perancangan Conceptual Database
Perancangan conseptual database adalah proses membuat
model dari data yang
digunakan di perusahaan yang bebas dari pertimbangan physical.
Langkah-langkah dalam metodologi perancangan conseptual database:
1.   Membuat model data conseptual lokal untuk setiap view
Mengidentifikasi tipe entitas
Mengidentifikasikan relationship
Mengidentifikasikan dan menghubungkan atribut dengan relationship.
Menentukan atribut domain
Menentukan atribut candidate dan primary key.
Mempertimbangkan penggunaan konsep enhanced modeling (optional).
Mengecek model untuk redundansi.
Menvalidasi model data conseptual lokal terhadap transaksi user.
Meninjau ulang model data conseptual lokal dengan user.
2.7.2
Perancangan Logical Database
Perancangan logical
database
adalah
proses
membuat
model
dari
data
yang
digunakan pada perusahaan berdasarkan model data spesifik, tetapi bebas dari pemilihan
DBMS dan pertimbangan physical lainnya.
  
28
Langkah-langkah dalam metodologi perancangan logical database:
2.   Membuat dan menvalidasi model data logical lokal untuk setiap view
Derivasi relasi untuk model data logical Meliputi:
1.   Tipe strong entity.
2.   Tipe weak entity.
3.   Tipe hubungan binary one-to-many (1:*).
4.   Tipe hubungan binary one-to-one (1:1).
o
Tipe relasi (1:1) partisipasi mandatory dua sisi.
o
Tipe relasi (1:1) partisipasi mandatory satu sisi.
o
Tipe relasi (1:1) partisipasi optional dua sisi.
5.   Tipe hubungan recursive one-to-one (1:1).
6.   Tipe hubungan superclass/subclass.
7.   tipe hubungan binary many-to-many (*:*)
8.   tipe hubungan kompleks
9.   atribut multi-valued
Validasi relasi menggunakan normalisasi
Validasi relasi terhadap transaksi user
Cek integrity constraint
Review model data logical dengan user
Merge model data logical ke dalam model data global (optional step)
Cek perkembangan lebih lanjut
  
29
2.7.3
Perancangan Physical Database
Proses
menghasilkan
sebuah
deskripsi/gambaran
implementasi
basis
data
pada
penyimpanan sekunder
(secondary
storage)
yang
mendeskripsikan
hubungan
dasar,
organisasi data, dan indeks-indeks yang memungkinkan pengaksesan data yang efisien.
Langkah-langkah dalam metodologi perancangan physical database:
3.   Menterjemahkan model data logical untuk DBMS.
Mendesain relasi dasar.
Mendesain gambaran dari data yang yang didapat.
Mendesain general constraint.
4.   Mendesain organisasi file dan indeks.
Menganalisis transaksi.
Memilih file organisasi.
Memilih indek.
Memperkirakan kebutuhan kapasitas disk.
5.   Mendesain user views.
6.   Mendesain mekanisme keamanan.
7.   Mempertimbangkan pengenalan tentang pengendalian redundansi.
8.   Memonitor dan mengatur sistem operational.
2.8
Data Flow Diagram (DFD)
2.8.1
Pengertian Data Flow Diagram
Menurut Whitten
(2004,p344),
Proses
modeling
adalah
suatu
teknik
untuk
mengorganisasikan dan mendokumentasikan struktur data dan aliran data yang mengalir
  
30
dalam
sebuah
proses
sistem
dan
atau
logika,
kebijakan,
dan
prosedur-prosedur yang
diimplementasikan dalam
proses sebuah
sistem.
Salah
satu proses
model
adalah
DFD
(Data Flow Diagram).
DFD adalah suatu alat yang menggambarkan aliran data yang ada dalam sistem
dan suatu proses
yang dilakukan oleh suatu sistem. Sering
juga disebut sebagai bubble
chart, transformation graph, dan model process.
Beberapa konsep tentang DFD (Whitten, 2004,p345):
1.   Proses
dalam
diagram
aliran data
dapat
beroperasi secara
paralel.
Jadi, beberapa
proses dapat dilaksanakan atau dikerjakan secara serempak.
2.   DFD
menunjukkan aliran data melalui sistem. Panah menyatakan jalur
yang dapat
dialiri data. Looping dan branching tidak ditunjukkan secara khusus.
3.   DFD  dapat  menunjukkan  proses  dengan  timing yang  berbeda  secara  dramatis.
Misalnya, DFD
tunggal dapat
menyertakan proses
yang
terjadi setiap
jam,
secara
harian, mingguan, tahunan, dan sesuai permintaan.
2.8.2    Simbol-Simbol Data Flow Diagram
Simbol-simbol yang digunakan dalam DFD, seperti
yang tertera pada tabel 2.1
adalah sebagai berikut (Whitten, 2004,p347):
  
31
Tabel 2.1  Simbol-simbol Data Flow Diagram
Bentuk dari
Simbol-Simbol
Gane & Sarson
DeMarco/Yourdan
Proses
Aliran data
Agen  eksternal
Data store
a) 
Proses adalah kerja yang dilakukan oleh sistem sebagai respon terhadap aliran data
masuk atau keluar.
b) 
Aliran data adalah data yang menjadi input atau output dari atau ke proses.
c) 
Agen eksternal adalah orang, unit organisasi, atau organisasi luar yang berinteraksi
dengan dengan sistem.
d) 
Data   store   adalah  penyimpanan  data  yang  ditunjukkan  untuk  penggunaan
selanjutnya
2.8.3
Tingkatan pada Data Flow Diagram
Tingkatan diagram adalah sebagai berikut:
1.   Diagram Konteks (diagram hubungan, level 0)
Merupakan
level
tertinggi dari
DFD
yang
menggambarkan seluruh input ke atau
output dari sistem dan memberikan gambaran tentang keseluruhan sistem.
  
32
2.   Diagram Nol (diagram 0, level 1)
Diagram yang memperlihatkan data store yang digunakan.
3.   Diagram Rinci (level 2, level 3, dst)
Merupakan rincian dari diagram nol atau diagram level diatasnya
2.9
State Transition Diagram (STD)
2.9.1
Pengertian State Transition Diagram
State Transition Diagram (STD) adalah grafik
yang
menggambarkan hasil dari
perubahan
state
selama
proses.
STD
merupakan alat
model
(modelling
tool)
yang
menggambarkan sifat
ketergantungan pada waktu
dari
suatu
sistem real-time dan user
interface
pada
suatu
sistem
on-line.
Contohnya :
proses
kendali,
telepon,
dan
lain
sebagainya.
Menurut
Kowal
(1989,
p327),
untuk
menjelaskan atau
menggambarkan
proses yang berlangsung dalam suatu program, maka digunakan STD.
STD  pada  dasarnya  merupakan  sebuah  diagram  yang  terdiri  dari  state dan
transisi
atau
perpindahan
state.
Transisi
terdiri
dari
kondisi
dan
aksi.
Kondisi
adalah
suatu kejadian yang dapat diketahui oleh sistem
sedangkan aksi adalah tindakan
yang
dilakukan oleh
sistem bila terjadi
pembahasan state
atau
dapat
juga
merupakan
reaksi
terhadap kondisi
  
33
2.9.2
Komponen State Transition Diagram
Komponen-komponen yang digunakan dalan STD antara lain (Kowal, 1989):
State
State
adalah kumpulan keadaan atau
atribut
yang
mencirikan seseorang atau
suatu
benda pada waktu, bentuk keadaan, atau kondisi tertentu. State dinotasikan dengan
empat persegi panjang berisi keadaan yang terjadi di dalam sistem.
Notasinya:
keadaan
Keadaan 
sistem 
seperti 
berupa 
menunggu 
pengguna 
memasukkan 
password,
menunggu konfirmasi dari pengguna, menunggu perintah selanjutnya, dan lain-lain.
Perubahan State
Perubahan  state merupakan  perubahan  kondisi 
yang  digambarkan  dalam  STD
dengan menghubungkan dua keadaan yang berkaitan dengan suatu garis panah.
Notasinya :
Kondisi dan Aksi
Untuk
membuat STD
menjadi lengkap diperlukan dua
hal
tambahan, yaitu kondisi
dan aksi. Kondisi adalah suatu
kejadian pada lingkungan luar yang dapat dideteksi
oleh
sistem,
sedangkan
aksi
adalah
yang
dilakukan
sistem
bila
terjadi
perubahan
state
atau
merupakan
reaksi
terhadap
kondisi.
Aksi
akan
menghasilkan keluaran,
tampilan
pesan
di
layar,
melakukan kalkulasi,
dan
lain-lain.
Kondisi
dan
aksi
digambarkan
di
dekat
panah
yang
menghubungkan dua
keadaan
yang
berkaitan
seperti berikut ini :
  
34
Kondisi
Aksi
Keadaan 1
Keadaan 2
Berikut ini adalah tabel notasi STD :
Tabel 2.2  Notasi State Transition Diagram (STD)
Notasi STD
ini berguna dalam memudahkan pembuatan suatu sistem dengan benar dan
jelas.
Manfaat
lain
yang
dapat
diperoleh
dalam
penggunaan
STD
adalah
agar
suatu
sistem dapat dipahami dengan benar.
2.10     E-learning
2.10.1  Pengertian E-Learning
Menurut Empy Effendi (2005, p4), e-learning sendiri dapat mengacu pada semua
kegiatan pelatihan yang menggunakan media elektronik atau teknologi informasi. Istilah
yang  sering  digunakan  untuk  menggantikan  e-learning adalah  web-based learning,
online learning, computer-based training/learning, distance learning, computer-aided
instruction.
  
35
Ada 2 tipe e-learning:
Synchronous Training
Synchronous
Training  adalah
tipe
pelatihan,
dimana
proses  pembelajaran
terjadi
pada saat
yang
sama
ketika pengajar
sedang
mengajar dan
murid sedang
belajar
melalui internet maupun intranet.
Asynchronous Training
Asynchronous
Training
adalah
tipe
pelatihan, dimana
seseorang
dapat
mengambil
pelatihan pada waktu yang berbeda dengan pengajar memberikan pelatihan.
2.10.2  Media
Ada  beberapa  media  yang  bisa  digunakan  untuk  e-learning adalah  (Empy
Effendi, 2005, p8):
Internet, memiliki jangkauan yang luas.
Intranet (LAN), biasanya digunakan di kantor-kantor dan sekolahan.
CD-ROM, digunakan pada saat network komputer tidak tersedia.
2.10.3  Keuntungan dan Keterbatasan
Keuntungan e-learning (Empy Effendi, 2005, p9):
1.   Mampu mengurangi biaya pelatihan.
2.   Membuat
karyawan atau
pelajar
dapat
menyesuaikan waktu
belajar
(fleksibilitas
waktu).
3.   Dapat   mengakses   e-learning  dimana 
saja,   selama   terhubung 
dengan   server
(fleksibilitas tempat).
  
36
4.
Dapat
disesuaikan
dengan
kecepatan
belajar
masing-masing siswa
(fleksibilitas
kecepatan pembelajaran).
5.   Pelajaran e-learning selalu memiliki kualitas sama setiap kali diakses (standarisasi
pengajaran).
6.   E-learning didesain dengan
instructional design
sehingga
membuat karyawan atau
pelajar
lebih
mengerti isi
pelajaran berupa simulasi, kasus-kasus
dll
(efektivitas
pengajaran).
7.   E-learning dapat cepat
menjangkau karyawan
yang
berada
di
luar
wilayah
pusat
(kecepatan distribusi).
8.   Karena  e-learning dapat  sewaktu-waktu  diakses,  maka  dapat  dianggap  sebagai
“buku saku” yang membantu pekerjaan setiap saat (ketersediaan on-demand).
9.   E-learning  menggunakan   suatu   Learning  Management  System  (LSM)   yang
berfungsi
sebagai
platform
pelajaran-pelajaran e-learning.
Dapat
juga
digunakan
untuk menyimpan data-data dan proses pembelajaran yang berlangsung (otomatisasi
proses administrasi).
Keterbatasan e-learning (Empy Effendi, 2005, p15):
1.   Karena e-learning
menuntut budaya self-learning (belajar
sendiri),
beberapa orang
merasa tidak nyaman dengan pengajaran melalui komputer.
2.   Suatu organisasi harus mengeluarkan
investasi awal yang cukup besar untuk mulai
pelaksanaan e-learning.
3. 
Kemungkinan teknologi
tersebut
tidak
sejalan dengan
yang sudah
ada
dan
terjadi
konflik sehingga e-learning tidak berjalan baik.
4.   Layanan broadband baru ada di kota-kota besar.
  
37
5.   Ada beberapa materi yang kurang bisa diajarkan misalnya olah raga dan instrumen
musik.
2.11
Web Browser
Pengertian
web
browser
atau web
client
menurut
Randall
dan
Latulipe
(1995,
p110) adalah software yang terdapat dalam sebuah PC (Personal Computer) milik user
yang
terhubung ke jaringan dan
dapat
menerima dokumen web, menerjemahkan kode-
kode HTML yang termuat di dalamnya untuk kemudian ditampilkan dalam bentuk teks
ataupun grafik.
Menurut Ramakrishnan dan
Gerhke
(2000,
p643),
web
browser
adalah
mesin
(komputer) yang menerjemahkan perintah-perintah yang terformat dan menampilkannya
dalam bentuk suatu dokumen yang menarik.
Sedangkan menurut
Comer
(1999,
p418),
sebuah
web
browser
adalah
suatu
software interaktif yang
memungkinkan user
untuk
menampilkan informasi dari World
Wide
Web.
Informasi
itu
berisi
item-item
tertentu
yang
memungkinkan user
untuk
menampilkan informasi lainnya.
Beberapa contoh dari web browser yang banyak digunakan antara lain Microsoft
Internet Explorer, Netscape Navigator, Mozilla Firefox, Opera.
2.12
LAN (Local Area Network)
2.12.1  Pengertian LAN
Menurut
Stallings
(2001,
p443),
LAN
adalah
jaringan
komunikasi yang
menampilkan interkoneksi berbagai jenis perangkat komunikasi data dalam lingkup area
yang terbatas.
  
38
LAN 
dapat  didefinisikan 
sebagai 
network 
atau 
jaringan 
sejumlah 
sistem
komputer
yang
lokasinya
terbatas
di
dalam satu
gedung, satu
kompleks
gedung atau
suatu kampus dan tidak menggunakan media fasilitas komunikasi umum seperti telepon,
melainkan
pengelola
media
komunikasinya adalah
pemilik
LAN
(Sumber:
2.12.2  Komponen Dasar LAN
Beberapa
komponen
dasar
untuk
membentuk
suatu
LAN
(Sumber:
1.   Workstation
Merupakan host yang berupa sistem komputer.
2.   Server
Hardware
yang berfungsi untuk melayani jaringan dan workstation yang terhubung
pada jaringan tersebut.
3.   Link (hubungan)
Media transmisi yang berupa kabel, seperti: kabel Twisted Pair, kabel Coaxial, kabel
Fiber Optic.
4.   Network Interface Card (NIC)
Suatu workstation tidak dihubungkan secara langsung dengan kabel jaringan ataupun
kabel tranceiver, tetapi
melalui suatu rangkaian elektronika yang dirancang khusus
untuk menangani network protocol.
  
39
5.   Network Software
Tanpa
adanya software
jaringan maka
jaringan tersebut tidak
akan
bekerja
sebagaimana
yang
dikehendaki.
Software
ini
juga
yang
memungkinkan sistem
komputer yang satu berkomunikasi dengan sistem komputer yang lain.
6.   Peralatan pendukung LAN
Beberapa peralatan pendukung LAN adalah repeater, hub, bridge, switch, router.