BAB 2
LANDASAN TEORI
2.1
Teori Umum
2.1.1
Data
2.1.1.1 Pengertian Data
Menurut 
Whitten 
(2004, 
p27) 
data 
adalah 
Raw  Fact
tentang
orang,
tempat,
acara,
dan sesuatu
yang
penting
bagi
perusahaan.
Menurut Turban, Efraim (2004, p14) data adalah
bentuk referensi yang jamak meskipun biasanya data
merepresentasikan bentuk singular maupun plural dimana data
merupakan bahan mentah atau observasi yang secara khusus
tentang fenomena khusus atau transaksi bisnis.
2.1.1.2 Pengertian Basis data
Menurut Thomas Connolly dan Carolyn Begg (2010, p65),
basis
data
adalah
sekumpulan
data
yang
berelasi
secara
logikal
dan deskripsi dari data dirancang untuk
memenuhi kebutuhan
informasi dari sebuah organisasi.
Menurut
Raghu
Ramakhrisnan
dan
Johannes
Gehrke (2003, p4) basis data adalah kumpulan dari data, biasanya
9
  
10
menggambarkan aktivitas dari satu atau banyak organisasi 
yang
terhubung.
2.1.1.3 Pengertian Sistem Basis Data
Menurut
Date
(2000,
p5),
pada dasarnya sistem
basis
data
adalah
sebuah
sistem penyimpanan
record
terkomputerisasi yang tujuan keseluruhannya untuk menyimpan
dan mengijinkan user untuk mengambil dan merubah informasi
sesuai dengan kebutuhannya.
2.1.1.4 Bahasa Sistem Basis Data
2.1.1.4.1
Data Definition Language (DDL)
Menurut Thomas Connolly dan Carolyn Begg
(2010, p92) Data Definition Language (DDL) adalah sebuah
bahasa yang mengijinkan Database administrator (DBA) atau
pengguna untuk menjelaskan dan memberi nama kepada entitas,
atribut, dan hubungan yang diperlukan untuk aplikasi, secara
bersamaan dengan associated integrity dan security constraint.
2.1.1.4.2
Data Manipulation Language (DML)
Menurut Thomas Connolly dan Carolyn Begg (2010, p92),
Data
Manipulation
Language
adalah
sebuah
bahasa
yang
  
11
menyediakan satu set operasi untuk mendukung dasar dari operasi
manipulasi data pada data yang disimpan pada basis data.
2.1.2
Manajemen Sistem Basis Data (DBMS)
2.1.2.1 Pengertian DBMS
Menurut Thomas Connolly dan Carolyn Begg (2010, p66),
DBMS
adalah
sebuah
sistem software
yang
memungkinkan
penggunanya untuk mendefinisikan, membuat, memelihara, dan
mengendalikan akses ke basis data.
2.1.2.2 Fungsi DBMS
Menurut Thomas Connolly dan  Carolyn Begg (2010, p99)
Fungsi DBMS  adalah:
-
Menyimpan, memperoleh, dan mengupdate data.
-
Sebuah katalog yang bisa diakses oleh pengguna.
-
Mendukung transaksi.
-
Layanan kendali concurrency.
-
Layanan Recovery.
-
Layanan authorisasi.
-
Mendukung data komunikasi.
  
12
-
Layanan integrity.
-
Layanan untuk promote data indepencene.
-
Layanan utility.
2.1.2.3 Fasilitas DBMS
Menurut Connolly dan Begg (2010, p66) DBMS
menyediakan pengendalian akses ke basis data yaitu :
-
Sistem   keamanan   yang   mencegah   pemakai   yang   tidak
memiliki hak akses untuk mengakses basis data.
-
Integrity system yang
menangani konsistensi data yang telah
disimpan.
-
Sistem
concurrency control
yang mengijinkan
untuk berbagi
akses dari basis data.
-
Recovery   control   system   yang  memperbaiki  basis  data
menjadi seperti sebelumnya yang disebabkan karena adanya
kegagalan yang terjadi pada perangkat keras atau perangkat
lunak.
-
User-accessible  catalog  yang berisi tentang deskripsi dari
data-data yang telah tersimpan dalam basis data .
2.1.2.4 Komponen Lingkungan DBMS
  
13
Menurut Thomas Connolly dan Carolyn Begg (2010, p68)
komponen lingkungan DBMS terdiri dari :
-
Hardware
DBMS dan aplikasi memerlukan hardware
agar
dapat
dijalankan.
Beberapa DBMS
hanya
dapat
bekerja
pada hardware atau
sistem operasi
tertentu. DBMS
juga
membutuhkan sejumlah minimum dari main memory dan
space disk untuk bekerja.
-
Software
Komponen  software
terdiri
dari
software
DBMS
itu sendiri dan program aplikasi, bersama dengan sistem
operasi, termasuk network software jika DBMS digunakan
pada jaringan.
-
Data
Mungkin, komponen yang paling penting dari
lingkungan
DBMS
dari
pandangan
end-user adalah data.
Data bertindak sebagai jembatan antara komponen mesin
dan komponen manusia. Basis data memiliki baik data
operasional dan meta-data.
-
Prosedur
  
14
Prosedur  merujuk  pada 
instruksi  dan  peraturan
yang mengatur rancangan dan kegunaan dari basis data.
Pengguna
dari
sistem dan staff
yang
mengatur basis data
memerlukan dokumentasi prosedur tentang  
bagaimana
menggunakan atau menjalankan sistem.
-
Manusia
Komponen Manusia terdiri dari :
-      
Data administrator
adalah orang yang
bertanggung jawab    
untuk pengaturan dari sumber data,
termasuk perencanaan basis data, pengembangan dan
pemeliharaan, kebijakan dan prosedur, dan desain
konseptual / logikal  basis data.
-        
Database administrator adalah orang
yang
bertanggung jawab untuk realisasi fisikal dari basis data,
termasuk desain fisikal basis data dan implementasi,
kontrol keamanan dan integritas, memelihara sistem
operasional, memastikan kepuasan pengguna untuk
performa dari aplikasi.
-        
Database 
designer 
terbagi 
menjadi 
dua
yaitu
logical database designer dan physical database
designer.
  
15
-        
Logical 
database 
designer  adalah orang
yang
mengidentifikasi data (entitas dan atribut),
hubungan
antar data, constraint data yang disimpan dalam basis data.
Logical database designer   
harus memiliki secara
menyeluruh dan mengerti sepenuhnya tentang data
organisasi  dan 
constraint 
dari 
data 
(constraint
ini
terkadang 
disebut 
dengan 
peraturan 
bisnis). 
Peraturan
bisnis menggambarkan karakteristik utama dari data yang
dilihat oleh perusahaan.
-         
Physical database designer adalah orang
memutuskan bagaimana basis data logikal direalisasikan
secara fisikal
2.1.2.5 Keuntungan dan Kelemahan DBMS
2.1.2.5.1
Keuntungan DBMS
Menurut Connolly dan Begg (2010, p77-80) 
Database
Management
System (DBMS)
dijanjikan
memiliki
keuntungan
yang potensial. Berikut ini merupakan keuntungan DBMS antara
lain:
a.   Mengontrol penduplikasian data
Pendekatan basis data melakukan percobaan untuk
menghilangkan
data
yang
redudansi
dengan
  
16
mengintegrasikan file-file sehingga data-data yang
sama tidak disimpan di dalam basis data.
b.   Data yang konsisten
Dengan menghilangkan atau mengontrol data yang
redundansi,
sudah
mengurangi resiko data yang
tidak konsisten. Apabila data yang disimpan hanya
sekali
dalam basis
data,
maka
data
yang
diperbaharui juga hanya sekali dan nilainya dapat
digunakan oleh semua pemakai.
c.   Informasi yang lebih dari jumlah data yang sama
Operasional data
memungkinkan organisasi
untuk
mendapat tambahan informasi dari data yang sama
setelah data tersebut diintegrasikan.
d.   Membagi data
Basis 
data  tidak 
lagi 
hanya  dimiliki 
oleh
departemen
atau
bagian tertentu
saja,
tetapi
basis
data menjadi milik organisasi dan bisa diberikan
kepada semua pemakai.
e.   Meningkatkan kesatuan data
Kesatuan data menunjukan bahwa data yang
disimpan  adalah  valid dan  konsisten.  Kesatuan
  
17
mengijinkan DBA untuk menetapkan batasan
kesatuan 
itu 
sendiri, 
dan 
DBMS 
menjalankan
semua data tersebut.
f.
Meningkatkan keamanan
Keamanan basis data melindungi basis data dari
orang-orang yang tidak mempunyai hak akses
terhadap basis data tersebut.
g.   Meningkatkan standar
Integrasi mengijinkan DBA untuk mendefinisikan
dan DBMS untuk menjalankan kebutuhan-
kebutuhan  yang  standard.  Kebutuhan  yang
standard ini terdiri dari sebuah standar format data
dari departemen, organisasi nasional, maupun
internasional
seperti
fasilitas perubahan data,
penamaan, dan perubahan prosedur.
h.   Economy of scale
Penghematan biaya bisa dilakukan dengan
menggabungkan semua data operasional suatu
organisasi ke dalam satu basis data, dan
membuat
aplikasi  yang  bekerja  dengan  satu  sumber  data
saja.
  
18
i.
Menyeimbangkan kebutuhan masalah
Database
administrator (DBA)
akan
membuat
keputusan tentang rancangan dan penggunaan basis
data
secara
operasional
yang menyediakan
kebutuhan yang terbaik untuk seluruh organisasi.
j.
Meningkatkan pengaksesan data
Banyak DBMS yang menyediakan bahasa query
atau laporan penulis yang memungkinkan pemakai
untuk bertanya tentang pertanyaan-pertanyaan  dan
memperoleh informasi
yang dibutuhkan tanpa
melibatkan  programmer  untuk  mengambil
informasi tersebut dalam basis data.
k.   Meningkatkan produktifitas
DBMS   dapat   menyederhanakan   pengembangan
dari suatu aplikasi basis data sehingga dapat
meningkatkan produktivitas programmer dan
mengurangi waktu pengembangan.
l.
Meningkatkan
pemeliharaan
melalui
data
independen
  
19
DBMS
memisahkan
deskripsi basis data dari
program aplikasi,
sehingga
program aplikasi
tidak
dapat mengubah basis data.
m.
Meningkatkan konkurensi
Seringkali  lebih  dari  satu  pemakai  sering
mengakses file yang sama, dengan adanya DBMS
ketepatan konkurensi basis data akan diatur.
n.   Meningkatkan backup dan perbaikan
Jika terjadi kesalahan, backup akan di restore dan
pekerjaan setelah backup akan hilang. DBMS yang
modern menyediakan fasilitas untuk
meminimalisasikan proses-proses yang hilang yang
disebabkaan karena kegagalan dalam memproses
data.
2.1.2.5.2
Kelemahan DBMS
Menurut  Connolly  dan  Begg  (2010,  p80-
81)
Database
Management
System (DBMS)
memiliki kelemahan. Berikut ini merupakan
kelemahan DBMS antara lain:
a.   Kompleks
  
20
DBMS merupakan bagian dari perangkat lunak
yang sangat kompleks. Kesalahan terhadap
pengertian
sistem akan
mengakibatkan
rancangan
keputusan yang buruk pada suatu organisasi
sehingga perancang basis data dan pengembang
basis data, database administrator (DA), serta end-
user perlu mengerti tentang keuntungan fungsional
DBMS terlebih dahulu.
b.   Ukuran
Kompleksitas  dan  banyaknya  kegunaan  dari
DBMS  menjadikannya  perangkat  lunak  yang
sangat besar, sehingga memerlukan tempat
penyimpanan data yang besar dan membutuhkan
memori yang cukup agar berjalan secara efisien.
c.   Biaya
Biaya
yang
dikeluarkan untuk  
DBMS sangat
bervariasi,  tergantung  dari  lingkungan  dan
kegunaan yang disediakan oleh DBMS tersebut.
d.   Biaya tambahan untuk perangkat keras
  
21
Kebutuhan tempat penyimpanan data untuk DBMS
dan basis data mungkin mengharuskan pembelian
tempat penyimpanan data tambahan.
e.   Biaya konversi
Dalam suatu
situasi
tertentu,
biaya
untuk
DBMS
dan perangkat keras tambahan dapat menjadi tidak
penting
dibanding
dengan biaya konversi dari
aplikasi yang sudah ada agar dapat berjalan di
DBMS dan perangkat keras yang baru.
f.
Performa
Bagaimanapun, DBMS dibuat untuk  menjadi lebih
umum, agar dapat menangani banyak aplikasi
daripada satu saja. Sehingga menghasilkan aplikasi
yang tidak berjalan secepat yang diharapkan.
g.   Kemungkinan gagal yang lebih tinggi
Pemusatan dari sumber daya meningkatkan
kerentanan system yang dikarenakan semua
pemakai dan aplikasi bergantung pada ketersediaan
dari DBMS, kegagalan dari salah satu komponen
dapat membuat operasi berhenti.
  
22
2.1.3
Tahapan Perancangan Basis Data
2.1.3.1 Tahapan Konseptual
Menurut Connolly dan Begg (2010, p470-485)
Langkah-langkah membangun konseptual database design yaitu  :
1.   Membangun data model lokal konseptual untuk setiap view
1.1 Mendefinisikan tipe entitas
Cara
alternatif
yang dipakai
adalah
dengan
cara
mendefinisikan entitas untuk mencari objek yang dibutuhkan
oleh pemakai. Pada metode ini perlu untuk
mengidentifikasikan entitas-entitas yang ada untuk memeriksa
keperluan pemakai secara spesifikasi.
1.2 Mendefinisikan tipe relationship
Pada kenyataannya catatan keperluan yang spesifikasi
adalah adanya saran untuk relationship dimana catatan-catatan
tersebut
penting
untuk
perusahaan
dan
akan terdapat
dalam
model.
1.3 Identifikasi  dan  asosiasi  attribut  dengan  entitas  atau  tipe
relationship
Metode
ini
mengidentifikasikan tipe-tipe
dari
kenyataan
yang ada tentang entity-entity dan relationship yang telah
dipilih untuk direpresentasikan pada basis data.
1.4  Menentukan domain atribut
  
23
Domain merupakan kumpulan dari nilai-nilai dimana
terdapat
satu
atau
lebih
atribut
yang
tergambar
dalam nilai
atribut itu sendiri. Untuk mengembangkan data model secara
spesifik termasuk:
-Mengijinkan kumpulan nilai untuk atribut
-Ukuran dan bentuk atribut
Implementasi
dari
karakteristik domain
pada
DBMS
masih
menjadi
subjek
dari penelitian. Atribut
domain
berisi
identifikasi
atribut domain tersebut,
catatan
nama
atribut
domain tersebut, dan karakteristik yang terdapat dalam kamus
data.
1.5  Menentukan atribut candidate, primary, dan alternate key
Pada metode
ini, memilih primary key diantara candidate
key sangat penting sehingga diperlukan pedoman untuk dapat
membantu membedakan key tersebut.
1.6  Mempertimbangkan penggunaan konsep enhanced modeling
(Optional)
Pada metode
ini, kita memiliki pilihan
untuk
melanjutkan
pengembangan dari ER model menggunakan konsep modeling
tingkat  lanjut  (  specializationgeneralizationaggregation,
dan compotition)
1.7  Memeriksa ulang model-model untuk redudansi
  
24
Pada tahap ini, perlu dilakukan pemeriksaan model
konseptual data dengan objek identifikasi yang lebih spesifik
dimana terdapat model yang redudansi dan menghilangkan
yang ada. Tiga aktivitas yang perlu dilakukan pada langkah ini
adalah
Meninjau kembali one-to-one relationship (1:1)
Menghilangkan relationship yang redudansi
Mempertimbangkan dimensi waktu
1.8  Memvalidasikan 
model  data  konseptual  dengan 
transaksi
user
Pada tahap ini terdapat dua pendekatan yang mendukung
model konseptual data untuk pemakaian transaksi yaitu
-
Menjelaskan transaksi
-
Menggunakan pathway transaksi
1.9  Meninjau model data konseptual dengan pemakai
Pada tahap ini perlu dilakukan pengulangan dengan
pemakai.
model
konseptual
termasuk
ER
diagram dan
mendukung dokumentasi yang menjelaskan tentang data
model. Tahap ini perlu ditinjau secara berulang-ulang. Proses
pengulangan ini akan berhenti apabila pemakai menyediakan
model   telah   disetujui   sehingga   tidak   perlu   melakukan
  
25
pengulangan  karena  representasi 
tersebut  telah  disepakati
bersama.
2.1.3.2 Tahapan Logikal
Menurut Connolly dan
Begg (2010, p490 - 460) Langkah-
langkah membangun logikal database design adalah
2.   Membangun data model logikal
2.1  Menurunkan relasi untuk data model logikal
Tahap  ini  bertujuan  untuk  membuat  relasi  untuk  data
model  logikal  untuk  merepresentasikan  entitas,  hubungan,
dan atribut yang telah diidentifikasi.
2.2  Memvalidasikan relasi menggunakan normalisasi
Tahap ini bertujuan untuk memvalidasi relasi pada data
model logikal menggunakan normalisasi. Tujuan dari
normalisasi
adalah untuk
memastikan
bahwa
set
dari
relasi
memiliki jumlah attribut minimal yang cukup untuk
mendukung kebutuhan data perusahaan.
2.3  Memvalidasikan hubungan dengan transaksi user
Tahap ini diperlukan untuk memastikan hubungan pada
model data
logikal yang
mendukung
transaksi
yang
dibutuhkan. Pada tahap ini hubungan yang dibuat pada tahap
sebelumnya
dalam
transaksi
yang
ada
perlu
untuk
ditinjau
  
26
kembali
sehingga
dapat
memastikan
bahwa
tidak
ada
kesalahan yang muncul pada saat membuat relations.
2.4  Mengecek integrity constraint
Tahap
ini
bertujuan
untuk
memeriksa
apakah integrity
constraint terdapat
pada
data
model
logikal. Integrity
constraint merupakan constraint yang menentukan penjagaan
keamanan  basis  data  dari  ketidaksempurnaan,
ketidakakuratan, ataupun ketidakkonsistensi.
2.5  Meninjau kembali data model lokal logikal dengan transaksi
pengguna
Tahap ini bertujuan untuk meninjau kembali data model
lokal 
logikal  dengan  pengguna 
untuk 
memastikan 
data
model
merupakan
representasi nyata
dari
kebutuhan
data
perusahaan.
2.6  Menggabungkan  data  model  logikal  ke  dalam  data  model
global (pilihan)
Tujuan pada tahap ini adalah untuk menggabungkan data
model
lokal
logikal
ke
dalam sebuah
data
model
global
logikal yang merepresentasikan semua user view pada basis
data. Langkah – langkah pada tahap ini :
2.6.1 Menggabungkan data model lokal logikal kedalam
data model global logikal
  
27
2.6.2 Validasi data model global logikal
2.6.3 Meninjau   kembali   data   model   global   logikal
dengan user.
2.7  Cek untuk perkembangan dimasa depan
Tahap
ini
bertujuan
untuk
menentukan apakah
ada
perubahan
secara
besar
pada
masa
depan dan
untuk
memperkirakan apakah data model logikal dapat
mengakomodasi perubahan tersebut.
2.1.3.3 Tahapan Fisikal
Menurut Connolly dan Begg (2010, p523 - 544) Langkah-
langkah merancang basis data fisikal adalah sebagai berikut:
3.   Menerjemahkan data model global logikal untuk DBMS Tujuan.
3.1
Merancang relasi dasar
Mengidentifikasi logical data model pada DBMS.
Untuk
membuat
proses rancangan
fisikal, 
harus
menyusun
dan mengasilimilasi dari hubungan yang dihasilkan data
model logikal.
3.2
Merancang representasi dari data turunan
Langkah ini bertujuan untuk
menentukan
bagaimana
merepresentasikan data turunan yang ada pada data model
global logikal pada DBMS tujuan.
3.3
Merancang constraint perusahaan
  
28
Tahap 
ini 
bertujuan 
untuk 
merancang 
constraint
perusahaan bagi DBMS tujuan.
4.   Merancang organisasi file dan index
4.1
Menganalisa transaksi
Tahap ini bertujuan untuk mengetahui kegunaan dari
transaksi
yang
akan
berjalan pada basis data dan untuk
menganalisa transaksi yang penting.
4.2
Memilih organisasi file
Tahap ini bertujuan untuk menentukan organisasi file
yang efisien untuk setiap relasi dasar.
4.3
Memilih indeks-indeks
Tahap ini bertujuan untuk menentukan apakah dengan
menambahkan index akan meningkatkan performa dari
sistem.
4.4
Memperkirakan kebutuhan disk-space
Tahap ini bertujuan untuk memperkirakan jumlah dari
disk-space yang akan diperlukan oleh basis data.
5.   Merancang user view
Dalam merancang
user
view yang
diidentifikasi
selama
pengumpulan
persyaratan
dan
menganalisis
tahap-tahap
pada
sistem basis data.
6.   Merancang mekanisme keamanan
  
29
Basis data merepresentasikan sumber daya yang berhubungan
dengan
undang-undang
atau
hukum yang
diperlukan.
Pada
metode ini diperlukan dokumentasi dari keperluan sistem
secara
spesifik.
Pada
metode
ini,
perancang basis
data
harus
menyadari
fasilitas
yang
ditawarkan oleh target DBMS.
Keamanan pada basis data memiliki dua tipe yaitu
-
Keamanan 
sistem 
yang 
menangani 
akses
dan kegunaan basis data pada level sistem
seperti username dan password.
-
Keamanan
data
yang
menangani
akses
dan
kegunaan objek dari basis data (seperti
relation
dan  
view dan  tindakan 
dari
pemakai yang memiliki objek.
2.1.4
Normalisasi
Menurut Connoly dan Begg (2010, p415-418) normalisasi adalah suatu
teknik
yang
menghasilkan
satu
set
relasi
dengan properties 
yang
diinginkan,
yang  memberikan  kebutuhan  data  organisasi.  Beberapa  bentuk  proses
normalisasi tersebut adalah sebagai berikut :
2.1.4.1 Bentuk Tidak Normal (Unnormalized Form / UNF)
Menurut  Connolly  dan 
Begg  (2010,  p430)  UNF  merupakan
sebuah table yang berisi satu atau lebih kelompok yang berulang.
  
30
2.1.4.2 Bentuk Normal Pertama (First Normal Form / 1NF)
Menurut 
Connolly 
dan 
Begg 
(2010, 
p430), 
bentuk 
normal
pertama adalah sebuh relasi dimana pertemuan setiap kolom dan baris
mengandung satu dan hanya satu nilai.
2.1.4.3 Bentuk Normal Kedua (Second Normal Form / 2NF)
Menurut Connolly dan Begg (2010, p434) Bentuk normal kedua
adalah sebuah relasi yang berada pada bentuk normal pertama dan setiap
atribut non-primary key bergantung secara penuh pada primary key. Data
hanya dengan satu primary  key sudah langsung berada pada 2NF.
2.1.4.4 Bentuk Normal Ketiga (Third Normal Form / 3NF)
Menurut Connolly dan Begg (2010, p436) bentuk normal ketiga
merupakan
suatu
relasi
yang
terdapat pada bentuk normal pertama dan
kedua
dimana
tidak
terdapat
atribut non
primary
key
yang
memiliki
ketergantungan transitif pada primary key.
2.1.5
Model Entitas Relasional (Entity Relational Modelling)
2.1.5.1 Tipe Entitas
Menurut Connolly dan Begg (2010, p372) Tipe entitas merupakan
sebuah grup dari objek dengan sifat yang sama, yang diidentifikasi oleh
perusahaan dan memiliki keberadaan secara mandiri.
  
31
Konsep dasar dari model ER adalah tipe entitas, dimana
merepresentasikan sebuah grup dari “objek” pada “dunia nyata” dengan
sifat yang sama.
2.1.5.2 Attribut
Menurut  Connolly  dan  Begg  (2010,  p379)  atribut  merupakan
sifat-sifat
(properti)
dari
sebuah
entitas
atau tipe
relasi. Setiap
atribut
diasosiasikan dengan sebuah set dari nilai yang disebut domain.
Atribut
domain.
Atribut domain adalah himpunan nilai yang
diperbolehkan untuk satu atau lebih atribut. Macam-macam atribut :
1.
Simple Attribute
Atribut
yang
terdiri
dari satu
komponen
tunggal
dengan
keberadaan yang independen dan tidak dapat dibagi menjadi
bagian yang lebih kecil lagi
seperti
jabatan, GajiKaryawan.
Atribut ini dikenal juga dengan nama Atomic Attribute.
2.
Composite Attribute
Atribut yang terdiri dari beberapa komponen, dimana
masing-masing  komponen  memiliki  keberadaan  yang
independen.
Misalkan
atribut Alamat
dapat
terdiri
dari
NamaJalan, Kota, KodePos.
3.
Single-valued Attribute
  
32
Atribut   yang   mempunyai   nilai   tunggal   untuk   setiap
kejadian.
Misalnya
entitas
Cabang memiliki
satu
nilai
untuk
atribut  IDCabang pada setiap kejadian.
4.
Multi-valued Attribute
Atribut yang mempunyai beberapa nilai untuk setiap
kejadian. Misalnya entitas Branch memiliki beberapa nilai untuk
atribut NoTelp pada setiap kejadian.
5.
Derived Attribute
Atribut
yang
merepresentasikan sebuah nilai yang dapat
diturunkan  dari  nilai  sebuah  atribut  yang  saling  berhubungan
atau satu set dari atribut.
2.1.5.3 Tipe-Tipe Relasi
Menurut  Connolly  dan  Begg  (2010,  p374)  tipe  relasi
adalah sebuah set dari asosiasi antar tipe entitas yang berarti.
Menurut Connolly dan Begg (2010, p375), Relationship
occurrence 
adalah sebuah asosiasi
unik
yang diidentifikasi
yang
melibatkan satu kejadian dari setiap entitas yang terlibat. Terdapat
tiga tipe relasi yaitu :
2.1.5.3.1 One-to-one Relationship
-
Menentukan Multiplicity
  
33
Menentukan multiplicity
biasanya
memerlukan
pemerikasaan relasi yang akurat antara data yang
diberikan pada constraint
perusahaan menggunakan
contoh data.
-
Membuat representasi dari one-to-one relationship
Berikut ini merupakan contoh one-to-one relationship yaitu
Relasi pasien menempati tempat tidur
Pasien
menempati
tempat tidur
Reza
R1
ranjang 1
Daud
R2
ranjang 2
Edward
R3
ranjang 3
Gambar 2.1 Relasi one-to-one
2.1.5.3.2 
One-to-many Relationship
Menurut Connolly dan Begg (2010, p387-388) Langkah-
langkah dalam menentukan one-to-many relationship adalah dengan
cara :
-
Menentukan multiplicity
-
Membuat representasi dari one-to-many relationship
  
34
Pegawai
bekerja
proyek
Reza
R1
P001
R2
P002
Edward
R3
P003
Berikut ini contoh one-to-many relationship yaitu
Relasi pegawai yang bekerja pada departemen
Pegawai
bekerja
departemen
Reza
R1
D001
Daud
R2
D002
Edward
R3
D003
Gambar 2.2 Relasi one-to-many
2.1.5.3.3  Many-to-many Relationship
Menurut Connolly dan Begg (2010, p388-389)
langkah-langkah
yang perlu dilakukan dalam menentukan
many-to-many relationship yaitu :
-
Menentukan multiplicity
-
Membuat representasi dari many-to-many relationship
Berikut ini merupakan contoh dari many-to-many relationship yaitu
Relasi pegawai yang mengerjakan proyek
  
35
Gambar 2.3 Relasi many-to-many
2.1.5.4 Key
Menurut Connolly dan Begg (2010, p381) key memiliki tipe yang
berbeda-beda beserta fungsinya. Tipe-tipe key yaitu
2.1.5.4.1
Candidate Key
Menurut Connolly dan Begg (2010, p381)
candidate 
key 
adalah  sejumlah 
minimal 
atribut-atribut 
yang
secara unik mengidentifikasi setiap kejadian pada entitas.
2.1.5.4.2
Primary Key
Menurut Connolly dan Begg (2010, p381) primary
key
adalah
suatu candidate
key
yang
dipilih
untuk
mengidentifikasikan  yang  terjadi  pada  setiap  kejadian     atau
record dari suatu entitas secara unik.
2.1.5.4.3
Composite Key
Menurut Connolly dan Begg (2010, p382)
composite key adalah
suatu
candidate
key yang terdiri dari dua
atau lebih atribut.
2.1.6
Entity Relationship Diagram (ERD)
  
36
Menurut Silberschatz, Korth, Sudarshan (2002, p27) entity adalah
sebuah objek dalam dunia nyata yang dapat dibedakan dari objek lainnya.
Sedangkan
relationship
menurut
Silberschatz, Korth,
Sudarshan
(2002,
p31)
adalah
asosiasi
diantara
beberapa entity. Jadi
entity relationship
diagram menurut
Silberschatz,
Korth,
Sudarshan
(2002,
p42)
suatu
diagram yang menggambarkan keseluruhan struktural
logika dari sebuah
basis-data.
Entity
Relationship
Diagram
memiliki
diagram
yang
terdiri
dari beberapa komponen pokok, yaitu sebagai berikut :
Rectangles : merepresentasikan entity sets
Ellipses: merepresentasikan attribute sets
Diamond: merepresentasikan relationship sets
Lines: yang
menghubungkan atribut dari sebuah entity set dengan entity
set lainnya dalam sebuah relationship set
Double Ellipse: atribut yang memiliki multivalue
Dashed Ellipse: merepresentasikan atribut turunan 
Double 
Lines:
mengindikasikan 
total 
partisipasi  dari  sebuah 
entity
didalam relationship set
Double Rectangle: merepresentasikan entity set yang lemah
  
37
2.1.7
State Transition Diagram (STD)
Menurut
Pressman,
Roger
S. (1997,
p317-320)
STD
digunakan
untuk  permodelan  yang  berorientasi  objek.  state transition diagram
(STD)
adalah
Suatu diagram
transisi
yang
keadaan
sistemnya
menggambarkan keadaan dan peristiwa yang
menyebabkan sistem untuk
mengubah kondisi. selain itu, STD
menunjukkan tindakan apa yang
diambil sebagai
konsekuensi
dari peristiwa
tertentu. STD
menunjukkan
bagaimana sistem bergerak dari keadaan ke keadaan lainnya. Notasi yang
paling penting dari STD adalah
1.
State
Kumpulan
kondisi
atau
atribut-atribut yang mencirikan
benda
atau
orang
pada
waktu,
keadaan
dan
kondisi
tertentu.
Keadaan
dapat
berarti
menunggu
sesuatu dari
lingkungan
luar
dan
menunggu
aktivitas yang sedang berlangsung untuk berubah menjadi aktivitas yang
lainnya.
Notasi State
2.
Transition (Perubahan) State
Perubahan state diberi tanda dengan menggunakan tanda
panah.  Panah  digunakan  untuk  menghubungkan  perubahan  dari  suatu
  
38
kondisi,   panah   awal   digunakan   menyatakan   suatu   kondisi   awal,
sedangkan kondisi akhir digambarkan dengan panah.
Kondisi
Aksi
Ada 2 hal yang diperlukan untuk melengkapi STD tersebut yaitu:
1.   Kondisi adalah keadaan
lingkungan
luar
yang dilakukan oleh sistem
dan 
menyebabkan 
perubahan 
terhadap 
state.
Contohnya 
berupa
sinyal.
2.         Aksi adalah keadaan dimana jika sistem ada perubahan state. Aksi
dapat menghasilkan tampilan pesan pada layar pengguna, membuat
kalkulasi dan lainnya.
2.1.8
Data Flow Diagram (DFD)
Menurut Whitten (2004, p344) DFD merupakan salah satu tool
yang menggambarkan aliran data yang ada dalam sistem dan suatu proses
yang  dilakukan  oleh  suatu  sistem.  Dalam
membuat  DFD  maka  perlu
untuk mengetahui simbol-simbol
yang terdapat pada DFD. Berikut
merupakan simbol-simbol yang terdapat pada DFD yaitu :
1. Proses
Menurut Whitten (2004, p347) proses menggambarkan apa yang
dilakukan oleh sistem, yang berfungsi untuk mengolah satu atau beberapa
  
39
data
masukan
menjadi
satu
atau
beberapa
data
keluaran sesuai
dengan
spesifikasi yang diinginkan.
Gambar 2.4 Simbol Proses
2. Aliran Data
Menurut Whitten (2004, p357-363) aliran
data
menggambarkan
perpindahan informasi dari satu bagian ke bagian lain dari sistem.
Awal
panah menggambarkan asal data sedangkan arah panah menggambarkan
tujuan.
Gambar 2.5 Simbol Aliran Data
3. External Agent
Menurut
Whitten
(2004,
p363-366) external
agent merupakan
simbol yang menggambarkan entitas yang berada di luar sistem, dapat
berupa  orang,  kelompok,  atau  organisasi 
yang  berhubungan  dengan
sistem. External agent seringkali disebut sebagai external entity.
Gambar 2.6 External Agent
  
40
4. Data Store
Menurut
Whitten
(2004,
p366-367) data
store disimpan dengan
tujuan 
akan 
digunakan 
pada 
masa 
yang 
akan 
datang. 
simbol 
ini
digunakan untuk menggambarkan penyimpanan data. Proses dapat
mengambil data dari atau memberikan data ke data store.
Gambar 2.7 Simbol Data Store
2.1.9
Siklus hidup Pengembangan Sistem Basis Data
Menurut Connolly dan Begg (2010, p313-314) siklus hidup
pengembangan  sistem  basis  data  diasosiasikan  dengan 
siklus 
hidup
sistem informasi.
Sangat
penting
untuk
mengenali
tahapan
dari
pengembangan
sistem basis
data
tidak
berurutan
secara
ketat,
tetapi
melibatkan beberapa perulangan dari tahap sebelumnya melalui feedback
loop.
  
41
Database planning
System
definition
Requirements
collection
and
analysis
Application design
Prototyping (optional)
Implementation
Data
conversion
and loading
Gambar 2.8
Gambar Siklus
Daur
Hidup
Database
  
42
Berikut  ini 
merupakan  penjelasan  dari  kegiatan-kegiatan  dari  siklus 
hidup
pengembangan aplikasi basis data yaitu :
2.1.9.1 Perencanaan Basis Data
Menurut  Connolly  dan  Begg  (2010,  p313)  perencanaan
basis data merupakan aktivitas-aktivitas manajemen yang
memungkinkan
tahap-tahap
dari pengembangan
siklus
hidup
sistem basis data direalisasikan seefisien dan seefektif mungkin.
Tahap
awal
yang
penting
dalam perencanaan
basis
data
adalah menentukan dengan jelas mission
statement
untuk
sistem
basis data. Mission statement ini menentukan tujuan utama sistem
basis data. Mission Statement
membantu  
menjelaskan
tujuan
sistem 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
oleh basis data.
2.1.9.2 Pendefinisian Sistem
Menurut Connolly dan Begg (2010, p316) pendefinisian
sistem ini
bertujuan
untuk
menggambarkan
ruang
lingkup
dan
batasan dari sistem basis data dan view penggunan secara umum.
Sebelum
mencoba
untuk
merancang
sebuah
sistem basis
data, sangat penting
untuk
mengidentifikasi
batasan
dari sistem
  
43
yang kita selidiki pertama kali. Dan bagaimana antarmuka dengan
bagian lain dari organisasi sistem informasi.
2.1.9.3 Analisis dan Pengumpulan Kebutuhan
Menurut Connolly dan Begg (2010, p316) Tahap ini
melibatkan pengumpulan dan analisis informasi tentang bagian-
bagian perusahaan
yang akan dilayani oleh basis data. Informasi
didapatkan dari setiap user view utama, termasuk:
Deskripsi data yang digunakan dan dihasilkan.
Rincian bagaimana data digunakan dan dihasilkan.
Kebutuhan  tambahan  lainnya  untuk  aplikasi  basis-
data yang baru.
Informasi ini kemudian dianalisis untuk mengidentifikasi
kebutuhan-kebutuhan
yang akan
disertakan dalam aplikasi
basis
data yang baru.
2.1.9.4 Perancangan Basis Data
Menurut Connoly dan Begg (2010, p320) perancangan
basis data merupakan proses pembuatan suatu rancangan untuk
basis data yang akan mendukung operasi dan objektif perusahaan
untuk data yang diperlukan. Ada
dua
pendekatan
yang
dapat
dilakukan dalam perancangan basis data yaitu sebagai berikut :
•  Bottom-up
  
44
Menurut Connolly dan Begg (2010, p321)
pendekatan ini dimulai dari tingkat paling dasar dari atribut (yakni
properti
dari
entity
dan
hubungan relasional)
dimana
melalui
analisis gabungan antara atribut-atribut yang ada, dikelompokkan
ke dalam relasi-relasi yang merepresentasikan tipe-tipe entitas dan
hubungan antar entitas. Pendekatan ini lebih cocok untuk
perancangan  basis  data  yang  sederhana  dengan  jumlah  atribut
yang relatif kecil.
•  Top-down
Menurut Connolly dan Begg (2010, p321)
pendekatan ini digunakan untuk perancangan basis data yang
kompleks, dimulai dengan mengembangkan data model yang
terdiri   dari   beberapa   entitas   dan   relationship   level   tinggi,
kemudian   menerapkan   perbaikan   top-down   secara   berurutan
untuk mengidentifikasi entitas, relationship,
dan
atribut
yang
dihubungkan pada level yang lebih rendah. Pendekatan top-down
mengunakan konsep model Entity Relationship (ER) yang dimulai
dengan  menentukan entitas dan relationship antar entitas.
2.1.9.5 Pemilihan DBMS
Menurut Connolly dan
Begg (2010, p325-329) pemilihan
DBMS
merupakan
pemilihan
dari
ketepatan
DBMS
yang
  
45
mendukung  sistem  basis  data.  Dalam 
memilih 
DBMS  perlu
melakukan langkah-langkah sebagai berikut :
i. Mendefinisikan   kerangka   yang   digunakan   untuk
acuan studi terlebih dahulu.
Kerangka yang menjadi acuan untuk
pemilihan DBMS dibangun,  
menyatakan tujuan,
batasan dari pelajaran, serta
tugas-tugas
yang
perlu
untuk diambil alih.
ii.  Persiapan dua atau tiga produk
Kriteria  cenderung  menjadi  “penting”
untuk sebuah implementasi yang bisa digunakan
untuk  menghasilkan  sebuah  daftar  pendahuluan
dari produk DBMS untuk evaluasi.
iii. Mengevaluasi produk-produk
Ada
fitur
yang
beragam yang
dapat
digunakan untuk mengevaluasi sebuah produk
DBMS untuk 
tujuan evaluasi, fitur tersebut bisa
melakukan analisis secara
kelompok
maupun
individual.
iv.
Merekomendasikan 
pilihan-pilihan 
menghasilkan
laporan
  
46
Langkah
terakhir
dari
pemilihan DBMS
adalah untuk mendokumentasikan dari proses-
proses
dan
untuk
menyediakan
sebuah
pernyataan
dari menemukan dan merekomendasikan untuk
produk DBMS.
2.1.9.6 Perancangan Aplikasi
Menurut Connoly dan Begg (2010, p329) pada tahap
ini,
akan dilakukan perancangan user
interface dan program aplikasi
yang digunakan dan memproses basis data.  Tampilan merupakan
salah satu komponen penting, karena tampilan yang akan
menentukan keberhasilan penyampaian informasi kepada
penggunanya.
2.1.9.7 Prototyping
Menurut Connoly dan Begg (2010, p333) prototyping
adalah membangun sebuah
model kerja dari aplikasi basis data.
Tujuan
utama
dari
pengembangan
prototype
sistem basis
data
adalah 
memperbolehkan 
user 
untuk 
menggunakan 
prototype
untuk mengidentifikasi fitur dari sistem yang berjalan dengan baik
atau tidak memadai.
Terdapat dua strategi prototyping yang digunakan yaitu:
1. Requirement prototyping
  
47
Requirement prototyping digunakan untuk
menentukan keperluan dari tujuan sistem basis data
dimana
keperluan
tersebut harus lengkap dan
prototype harus dihilangkan
2. Evolutionary prototyping
Evolutionary  protoyping  digunakan  untuk
tujuan yang sama, perbedaan yang terpenting adalah
bahwa prototype tidak dihilangkan, tapi
pengembangan yang lebih jauh menjadi pekerjaan
sistem basis data tersebut.
2.1.9.8 Implementasi
Menurut Connoly dan Begg (2010, p333-334) implementasi
adalah realisasi secara fisik dari basis data dan rancangan aplikasinya,
2.1.9.9  Konversi Data dan Loading
Menurut Connolly dan Begg (2010, p334) konversi data dan
loading adalah mengirim semua data yang lama ke dalam basis data baru
dan mengubah semua aplikasi yang ada agar dapat berjalan di basis data
yang baru. Tahap
ini dibutuhkan
hanya
ketika
sistem basis
data
baru
menggatikan
sistem lama.
Sekarang
ini,
sudah
umum untuk
sebuah
DBMS mempunyai fungsi mengambil arsip-arsip yang ada ke dalam
sistem basis data yang baru.
  
48
2.1.9.10
Pengujian
Menurut Connolly dan Begg (2010, p334), testing adalah proses
menjalankan sistem basis data dengan tujuan untuk menemukan error.
Pengujian sebaiknya juga meliputi usability dari sistem basis data.
Idealnya, sebuah evaluasi sebaiknya di lakukan terhadap sebuah
spesifikasi usability.
Kriteria untuk dapat mengevaluasi yaitu
1.
Kemampuan untuk belajar
2.
Tampilan suatu sistem
3.
Kemandirian suatu sistem
4.
Kemampuan untuk menangani pemakai yang salah
5.
Kemampuan untuk beradaptasi
2.1.9.11
Pemeliharaan Operasional
Menurut Connolly dan Begg (2010, p335) pemeliharaan
operasional  adalah  proses  memonitor  dan  memelihara  sistem  basis
data  diikuti  dengan  instalasi.  Setelah  sistem  basis  data  beroperasi
secara penuh, memonitor secara dekat memastikan performa berada
pada level yang bisa diterima.
Proses 
monitoring 
berlanjut 
melalui 
keseluruhan 
hidup 
dari
sistem basis data dan pada suatu waktu mungkin akan menuju kepada
pengorganisasian
ulang
dari
sistem basis
data
untuk
mendukung
perubahan yang diperlukan.
  
49
Pada sistem ini kegiatan yang termasuk di dalamnya adalah
-
Memonitoring
tampilan
suatu
sistem.
Jika
tampilannya gagal atau tidak diterima,
memperbaiki atau re-organisasi syarat-
syarat dari basis data
-
Pemeliharaan  dan  perbaruan  sistem  basis
data.  Keperluan 
baru 
yang  digabungkan
menuju sistem basis data.
2.2
Teori Khusus
2.2.1
Penyewaaan
Menurut  Surat  Edaran  Direktur  Jendral  Pajak  NOMOR  SE  -
35/PJ/2010, Sewa merupakan kesepakatan untuk memberikan hak
menggunakan harta selama jangka waktu tertentu baik dengan perjanjian
tertulis maupun tidak tertulis sehingga harta tersebut hanya dapat
digunakan oleh penerima hak selama jangka waktu yang telah disepakati
Menurut Anonymous, Penyewaan
adalah suatu kesepakatan
dimana sebuah pembayaran dilakukan untuk penggunaan barang,
pelayanan, atau properti yang dimiliki oleh orang lain.
2.2.2
Pemeliharaan
Menurut
Bernard
T.Lewis
(1999, p1.20) istilah pemeliharaan
termasuk    semua    yang    berhubungan    dengan    pekerjaan    terhadap
  
50
pemeliharaan
fasilitas
perlengkapan,
dan
sistem pada
level
yang
memuaskan untuk menunjukkan fungsi bentuk mereka, umumnya
pemeliharaan termasuk:
-
pencegahan dan perkiraan pemeliharaan
-
pemeliharaan rutin dan perbaikan tambahan
-
perbaikan utama
-
perbaikan dalam keadaan darurat
-
perubahan dan perbaikan untuk meningkatkan fasilitas
-
house keeping
2.2.3
Analisis dan Perancangan Sistem
Menurut
Whitten
(2004,
p186)
analisis
sistem adalah
sebuah
teknik
pemecahan
masalah
yang memecahkan
sebuah
sistem menjadi
komponen–komponen untuk tujuan pembelajaran bagaimana komponen–
komponen tersebut bekerja dan berinteraksi untuk mencapai tujuannya.
2.2.3.1  
Perancangan Sistem
Whitten (2004, p186) perancangan system adalah teknik
komplementer
pemecahan
masalah (yang
bekerjasama
dengan
sistem analisis)
yang
menyusun
kembali
komponen–komponen
sebuah  sistem  kembali  ke  sistem 
yang 
utuh  dengan 
harapan
  
51
menghasilkan sistem yang lebih baik. Teknik ini dapat melibatkan
penjumlahan, penghapusan, dan perubahan komponen-komponen
terhadap sistem yang sebelumnya.
2.2.4
SQL Server
Menurut Alexander F.K. Sibero (2010, p10) SQL Server
adalah RDBMS (Relational Database Management System) yang
dikembangkan oleh Microsoft. SQL Server dapat digunakan
seperti basis data untuk kebutuhan personal.
2.2.5
Visual basic .NET
Menurut Alexander F.K. Sibero (2010, p9) visual basic .NET
adalah bahasa pemrograman yang dikembangkan oleh perusahaan
Microsoft. Visual basic .NET merupakan pengembangan dari versi
sebelumnya, yaitu visual basic 6.0. Perbedaan mendasar antara visual
basic .NET dengan versi – versi sebelumnya adalah kemampuan OOP
(object oriented programming) yang telah ditanamkan pada visual basic
.NET
Menurut   McMonnies   (2000,   p21-22)      VB.NET   merupakan
aplikasi
program yang
menunjuk
pada
pemecahan
masalah
atau
solusi
yang dikembangkan dengan didasari pemakaian arsitektur .NET terbaik
yang bisa diaplikasikan. Salah satu keunggulan yang spesifik dari .NET
  
52
adalah 
software   ini   dikembangkan   dalam 
komponen   yang   disebut
assembly.