9
BAB 2
Landasan Teori
2.1 Teori Umum
2.1.1 Sistem
Menurut Fathansyah (2010: 11), sistem adalah sebuah tatanan
(keterpaduan) yang terdiri atas sejumlah komponen fungsional (dengan
satuan fungsi dan tugas khusus) yang saling berhubungan dan secara
bersama-sama bertujuan untuk memenuhi suatu proses tertentu.
2.1.2 Sistem Basis Data
Menurut Fathansyah (2010: 12), sistem basis data merupakan sistem
yang terdiri atas kumpulan tabel yang saling berhubungan (dalam sebuah
basis data di sebuah sistem komputer) dan sekumpulan program (yang biasa
disebut DBMS/Database Management System) yang memungkinkan
beberapa pemakai dan/atau program lain untuk mengakses dan memanipulasi
tabel-tabel data tersebut.
2.1.2.1 Komponen Sistem Basis Data
1.
Perangkat Keras (Hardware)
Perangkat keras yang biasanya terdapat dalam sebuah sistem
basis data adalah :
-
Komputer
-
Memori sekunder on-line (Harddisk)
-
Memori sekunder off-line (Usb Storage)
-
Media/perangkat komunikasi (untuk sistem jaringan)
2.
Sistem Operasi (Operating System)
Sistem Operasi merupakan program yang mengaktifkan
sistem komputer, mengendalikan seluruh sumber daya (resource)
dalam komputer dan melakukan operasi-operasi dasar dalam
komputer (operasi I/O, pengelolaan file , dan lain-lain). Sejumlah
Sistem Operasi yang banyak digunakan
seperti: MS-DOS, MS-
Windows, Linux (untuk komputer stand-alone
atau untuk
komputer client dalam sistem jaringan) atau Novel-Netware, MS-
Windows Server, Unix, Linux (untuk komputer server
dalam
sistem jaringan komputer). Program pengelola basis data hanya
  
10
dapat aktif (running) jika Sistem Operasi yang dikehendakinya
(sesuai) telah aktif.
3.
Basis Data (Database)
Sebuah sistem basis data dapat memiliki beberapa basis data.
Setiap basis data dapat berisi sejumlah objek basis data seperti
tabel, indeks, dan lainnya. Disamping itu basis data menyimpan
definisi struktur baik untuk basis data maupun objek-objeknya
secara rinci.
Menurut Connolly dan Beeg (2010: 65), database
adalah
kumpulan yang terbagi dari relasi data logis dan penjelasannya,
dirancang untuk memenuhi informasi yang dibutuhkan dari
sebuah organisasi.
4.
Sistem (aplikasi pengelola DBMS)
Pengelolaan basis data secara fisik tidak dilakukan oleh
pemakai secara langsung, tetapi ditangani oleh sebuah Perangkat
Lunak (Sistem) yang khusus. Perangkat lunak inilah
(disebut
DBMS/Database Management System) yang akan menentukan
bagaimana data diorganisasi, disimpan, diubah dan diambil
kembali. Ia juga menerapkan mekanisme pengamanan data,
pemakaian data secara bersama, pemaksaan
keakuratan/konsistensi data, dan sebagainya.
Perangkat lunak yang termasuk DBMS seperti dBase,
FoxBase, Rbase, Microsoft-Access (sering juga disingkat menjadi
MS-Access) dan Borland-Paradox (untuk DBMS yang sederhana)
atau Borland-Interbase, MS-SQL Server, Oracle Database, IBM
DB2, Informix, Sybase, MySQL, PostgreSQL Server (untuk
DBMS yang lebih kompleks dan lengkap).
5.
Pengguna (User)
Ada beberapa jenis/tipe pemakai terhadap suatu system basis
data yang dibedakan berdasarkan cara mereka
berinteraksiterhadap sistem:
  
11
a.
Programmer Aplikasi
Pemakai
yang berinteraksi dengan basis data melalui Data
Manipulation Language (DML), yang disertakan (embedded)
dalam program yang ditulis dalam bahasa pemrograman induk
(seperti C, C++, Pascal, PHP, Java, dan lain-lain).
b.
User Mahir (Casual User)
Pemakai yang berinteraksi dengan sistem tanpa menulis
modul program. Mereka menyatakan query (untuk akses data)
dengan bahasa query yang telah disediakan sebelumnya.
c.
User Umum (End User/Native User)
Pemakai yang berinteraksi dengan sistem basis data melalui
pemanggilan satu program aplikasi permanen (executable
program) yang telah disediakan sebelumnya.
d.
User Khusus (Specialized User)
Pemakai yang menulis aplikasi basis data nonkonvensional,
tetapi untuk keperluan-keperluan khusus, seperti untuk
aplikasi Artificial Intelligence, system pakar, pengelolaan
citra, dan lain-lain, yang biasa saja mengakses basis data
dengan/tanpa DBMS yang bersangkutan.
6.
Aplikasi lain (optional)
Aplikasi pendukung untuk membuat sebuah sistem basis data,
tetapi aplikasi ini bersifat optional, yang berarti ada atau tidaknya
tergantung pada kebutuhan pengguna.
2.1.3 Database Management System (DBMS)
Menurut Connolly dan Beeg (2010: 66), database Management
System (DBMS) adalah sebuah sistem perangkat lunak yang memungkinkan
pengguna untuk menjelaskan, membuat, memelihara, dan mengatur akses
kedatabase.
2.1.3.1 Keuntungan menggunakan DBMS
Menurut
Connolly dan Beeg (2010: 77), keuntungan
menggunakan DBMS adalah sebagai berikut :
1.
Mengontrol pengulangan data (Redudansi)
2.
Data lebih konsisten
  
e
12
3.
Banyak informasi yang di dapat dari jumlah data yang
sama
4.
Dapat menggunakan data secara bersamaan
5.
Meningkatkan integritas data
6.
Meningkatkan keamanan data
7.
Adanya setandarisasi
8.
Keseimbangan dari persyaratan yang bertentangan
9.
Meningkatkan kemudahan akses dan respon data
10. Meningkatkan pemeliharaan data
11. Meningkatkan layanan backup dan recovery
12. Meningkatkan concurrency
2.1.3.2 Kerugian menggunakan DBMS
Menurut Connolly dan Beeg (2010: 80), kerugian
menggunakan DBMS adalah sebagai berikut :Kompleks
1.
Ukuran 
2.
Harga DBMS
3.
Tambahan biaya pada penambahan perangkat keras
4.
Biaya konversi
5.
Kinerja
6.
Lebih besar resiko terjadinya kegagalan
2.1.3.3 Komponen DBMS
Gambar 2.1 Komponen DBMS
(Connolly & Begg, 2010, 68)
Menurut Connolly dan Beeg (2010:68), kita dapat
mengidentifikasi lima komponen
utama di dalam lingkungan DBMS:
hardware, software, data, procedures, dan people.
Hardwar
Procedure
People
software
Data
  
13
a.
Hardware 
DBMS dan aplikasi-aplikasi membutuhkan perangkat
keras (hardware) untuk menjalankannya. Perangkat keras
terdiri dari komputer personal sampai single mainframe
atau jaringan komputer. 
b.
Software
Komponen perangkat lunak meliputi perangkat lunak
DBMS itu sendiri dan program-program aplikasi, bekerja
sama dengan operating system, termasuk jaringan
perangkat lunak jika DBMS sedang menggunakan sebuah
jaringan.
c.
Data
Data mungkin komponen paling penting dalam
lingkungan DBMS dari sudut pandang pengguna terakhir.
Data bertindak sebagai jembatan antara komponen mesin
dan komponen manusia. Database mengandung data
operational dan metadata.
d.
Procedure
Proceduremengacu kepada
perintah dan aturan yang
menentukan perancangan dan penggunaan dari database.
Pengguna dari sistem dan staff
yang mengatur database
membutuhkan prosedur dokumen untuk mengetahui
bagaimana menggunakan atau menjalankan sistem.
e.
People 
Komponen terakhir adalah orang yang terlibat dengan
sistem.
2.1.3.4 Fungsi DBMS
Menurut Connolly dan Beeg (2010: 99),  DBMS memiliki 10 fungsi
yaitu :
1.
Data storage, retrival, and update
Sebuah DBMS harus menyediakan pengguna dengan
kemampuan untuk menyimpan, mendapat kembali,
dan
mengubah data di dalam database.
  
14
2.
A user-accessible catalog
Sebuah DBMS harus menyediakan sebuah katalog yang
mendeskripsikan data item yang tersimpan dan yang dimana
dapat diakses oleh pengguna.
3.
Transaction support
Sebuah DBMS harus menyediakan sebuah
mekanisme yang
akan memastikan baik dari seluruh perubahan yang
berhubungan kepada sebuah transaksi yang dilakukan maupun
yang tidak dilakukan.
4.
Concurrency control services
Sebuah DBMS harus menyediakan sebuah mekanisme untuk
memastikan bahwa database telah diubah dengan benar ketika
beberapa pengguna sedang mengubah database secara bersama-
sama.
5.
Recovery services
Sebuah DBMS harus menyediakan sebuah mekanisme untuk
pemulihan database
jika sewaktu –
waktu database
rusak
dengan berbagai cara.
6.
Authorization service
Sebuah DBMS harus menyediakan sebuah mekanisme untuk
memastikan bahwa hanya pengguna yang memiliki akses saja
yang dapat mengakses ke dalam database.
7.
Support for data communication
Sebuah DBMS harus mampu untuk beintegrasi dengan
perangkat lunak komunikasi.
8.
Integrity services
Sebuah DBMS harus menyediakan sebuah sarana –
sarana
untuk memastikan bahwa baik data yang berada di dalam
database maupun perubahan data mengikuti beberapa aturan
aturan.
9.
Services to promote data independence
Sebuah DBMS harus meliputi fasilitas-fasilitas yang
mendukung program independen dari struktur yang sebenarnya
pada database.
  
15
10. Utility services
Sebuah DBMS harus menyediakan sebuah set utility services.
2.1.4 Database Lifecycle
Menurut Connolly dan Beeg (2010: 313),databaselifecycle
adalah 
pengembangan dasar, terkait dengan  informasi sistem. Sistem databaselifecycle
tidak sepenuhnya berurutan, tetapi melibatkan beberapa jumlah pengulangan
tahap sebelumnya melalui umpan balik.
Gambar 2.2 The Stages of The Database System Development Lifecycle
(Connolly & Begg, 2010, 314)
a.
Database Planning
Menurut Connolly dan Beeg (2010:313), database Planning adalah
kegiatan menejemen yang memperkenankan tahapan-tahapan dari
  
16
siklus hidup pengembangan sistem database
untuk diwujudkan
seefisien dan seefektif mungkin. Terdapat 3 (tiga) persoalan dalam
merumuskan sebuah strategi, yaitu:
1.
Mengidentifikasikan rencana perusahaan dan tujuan dengan
menentukan sistem informasi yang diperlukan selanjutnya.
2.
Mengevaluasi sistem informasi yang ada untuk mengetahui
kelebihan dan kekurangannya.
3.
Penilaian mengenai peluang teknologi informasi yang, mungkin
digunakan untuk menghasilkan keuntungan yang kompetitif 
b.
System Definition
Menurut Connolly dan Beeg (2010: 316),system Definition
adalah menjelaskan ruang lingkup dan batas-batas dari sistem
database dantampilan pengguna utama.
c.
Requirement Collection and Analysis
Menurut Connolly dan Beeg (2010: 316), Requirement
Collection and Analysis adalah proses mengumpulkandan
menganalisi informasi tentang bagian dari organisasi yang dibantu
oleh sistem database,
dan menggunakan informasi tersebut untuk
mengidentifikasi kebutuhan-kebutuhan untu sistem baru.
d.
Database Design
Menurut Connolly dan Beeg (2010: 320), Database Design
adalah proses membuat sebuah perancangan yang akan membantu
pernyataan misi perusahaan dan sasaran misi untuk kebutuhan sistem
database. Pendekatan-pendekatan yang digunakan adalah:
a.
top-down,
b.
bottom-up,
c.
inside-out, dan
d.
mixed.
Terdapat tiga tahapan dalam perancangan database adalah
sebagai berikut:
1.
Conceptual database design
Menurut Connolly dan Beeg (2010: 467), sebuah proses
  
17
membangun sebuah model dari data yang digunakan dalam sebuah
perusahaan, mandiri dari seluruh pertimbangan physical. Untuk
membuat conceptual database design ada beberapa tahapan yang
harus di lakukan seperti di bawah  ini berikut dengan contohnya :
a.
Mengidentifikasi jenis entitas
Untuk mengidentifikasi kebutuhan dari tipe entitas.
Misalkan data yang di dapat dari perusahaan berupa data
nama staff, alamat staff, jenis kelamin staff. Maka di
buatlah entitas staff lalu di identifikasi dengan
menggunakan tabel berikut:
Tabel 2.1 Mengidentifikasi Jenis Entitas (Connolly & Begg, 2010, 472)
Nama Entitas
Deskripsi
Alias
Occurance
Staff
Istilah umum untuk
mendesktipsikan
seluruh staff
Staff
Staff melakukan
login dan
mengirimkan
pekerjaannya
b.
Mengidentifikasi jenis hubungan
Untuk mengidentifikasi hubungan penting yang ada
diantara tipe entitas. Pada tahap ini kami menentukan
hubungan antara entitas, misalkan entitas Staff dengan
PropertyForRent seperti gambar berikut:
  
18
Gambar 2.3 Hubungan Entitas (Connolly & Begg, 2010, 474)
Tabel 2.2 Mengidentifikasi jenis hubungan (Connolly & Begg, 2010, 475)
Entity Name
Multiplicity
Relationship
Multiplicity
Entity Name
Staff
0..1
Manages
0..100
PropertyForRe
nt
0..1
Supervises
0..10
Staff
PropertyForR
ent
1..1
AssociatedW
ith
0..*
Lease
c.
Mengidentifikasi dan mengasosiasikan atribut dengan
entitas atau hubungan jenis
  
19
Untuk menghubungkan atribut-atribut dengan tipe
entitas atau hubungan, dengan menggunakan tabel di
bawah ini:
Tabel 2.3 Mengidentifikasi dan mengasosiasikan atribut dengan entitas atau
hubungan jenis (Connolly & Begg, 2010, 478)
Entity name
Attributes
Description
Data Type &
Length
Nulls
Multivalued
Staff
staffNo
Uniquely
identifies a
member of
staff
5 variable
characters 
No
No
name
fName
First name
of staff
15 variable
characters
No
No
lName
Last name
of staff
15 variable
characters
No
No
Position
Job title of
member of
staff
10 variable
characters 
No
No
sex
Gender of
member of
staff
1 characters
(M or F)
Yes
No
DOB
Date of 
birth of
member of
staff
Date
Yes
No
PropertyForR
propertyNo
Uniquely
5 variable
No
No
  
20
ent
identifies a
property
for rent
characters
d.
Menentukan domain atribut
Menentukan domain-domain untuk
atribut-atribut di
dalam data model
konseptual, dengan menggunakan
tabel di bawah ini:
Tabel 2.4 Menentukan Domain Atribut
Nama Entitas
Atribut 
Tipe Data
Domain Attribut
Staff
Staff_ID
Varchar(10) 
ST[0-9][0-9][0-
9]
NamaStaff
Varchar(100)
Varchar(100)
AlamatStaff
Varchar(100)
Varchar(100)
JenisKelamin
Varchar(5)
Varchar(5)
e.
Menentukan candidate, primary and alternate key
Untuk mengidentifikasi cadidate key
untuk setiap tipe
entitas dan jika terdapat lebih dari satu (1) cadidate key
hanya memilih satu (1) untuk menjadi primary key
dan
yang lain menjadi alternate key.
Seperti pada tabel di
bawah ini
  
21
Gambar 2.4 Conceptual dengan Primary Key
(Connolly & Begg, 2010,
480)
f.
Sebaiknya gunakan konsep pemodelan yang di
sempurnakan ( tahapan opsional )
Untuk
mempertimbangkan penggunaan konsep model
yang disempurnakan, seperti
specialization/generalization, aggregation, dan
composition.
  
22
Gambar 2.5 ER Berdasarkan Spesialisasi, Generalisasi, Agregasi, Dan
Komposisi (Connolly & Begg, 2010, 481)
g.
Memeriksa model terhadap redudansi
Untuk memeriksa adanya redudancy di sebuah model. 
Ada tiga cara yang dilakukan dalam langkah ini : 
1.
Menguji kembali hubungan one to one (1..1)
2.
Menghapus relasi yang redundan
Gambar 2.6 Menghapus relasi yang redundan
(Connolly & Begg, 2010, 482)
  
23
3. Mempertimbangkan dimensi waktu
h.
Memvalidasi model transaksi pengguna Conceptual
Data  terhadap resiko
Untuk memastikan bahwa model data konseptual
mendukung kebutuhan transaksi.Kita memeriksa dua
pendekatan yang mungkin untuk memastikan bahwa
model data konseptual mendukung transaksi yang
diperlukan:
1.
Mendeskripsikan transaksi
Menggunakan pendekatan pertama, kita memeriksa
bahwa semua informasi (entitas, hubungan, dan
atributnya) dibutuhkan oleh setiap transaksi yang
tersedia oleh model, dengan dekumentasi dari sebuah
penjelasan dari setiap kebutuhan transaksi. Pada
tahap ini dilakukan pendeskripsian transaksi yang
ada pada model data konseptual seperti :
a.
Staff melakukan input data pelanggan
b.
Staff melakukan input harga barang
2.
Menggunakan jalur-jalur transaksi
Pendekatan kedua untuk memvalidasi model data
terhadap kebutuhan transaksi yang melibatkan
diagram yang menggambarkan jalur-jalur yang
diambil oleh setiap transaksi secara langsung di
diagram ER.
  
24
Gambar 2.7 Conceptual dengan Transaksi (Connolly &
Begg, 2010, 485)
i.
Meninjau model data konseptual dengan pengguna
Untuk menunjau model data konseptual dengan
pengguna-pengguna untuk memastikan bahwa mereka
mempertimbangkan model untuk menjadi sebuah
reporesentasi “benar” dari kebutuhan data perusahaan.
2.
Logical database design
Menurut Connolly dan Beeg (2010: 489), sebuah proses untuk
menciptakan sebuah model dari sebuah informasi yang digunakan
dalam sebuah perusahaan berdasarkan sebuah data model yang
spesifik, tetapi mandiri dari DBMS tertentu dan pertimbangan fisikal
lainnya. Untuk membuat logical database design ada beberapa
tahapan yang harus di lakukan seperti di bawah  ini berikut dengan
contohnya :
  
25
a.
Menurunkan hubungan untuk logical data model
Membuat hubungan untuk logical data model
untuk
menggambarkan entitas-entitas, hubungan-hubungan,
dan atribut-atribut yang sudah diidentifikasi.
Kita menjelaskan bagaimana hubungan didapatkan
untuk mengikuti stuktur yang mungkin terjadi di dalam 
data model konseptual:
1.
Strong entity types
Staff (staffNo, fName, Iname, position, sex,
DOB)
Primary Key staffNo
2.
Weak entity types
Preferences (prefType, maxRent)
Primary Key None (at present)
3.
Tipe hubungan binary one-to-many (1..*)
Gambar 2.8 Tipe hubungan binary one-to-many (1..*)
(Connolly & Begg, 2010, 493)
4.
Tipe hubunganbinary one-to-one (1..1)
  
26
Gambar 2.9
Tipe hubungan binary one-to-one (1..1) (Connolly
& Begg, 2010, 494)
5.
Tipe hubungan rekursif one-to-one (1..1)
6.
Tipe hubungan superclass/subclass
7.
Tipe hubungan binary many-to-many (*..*)
Gambar 2.10 Tipe hubunganbinary many-to-many (Connolly &
Begg, 2010, 498)
8.
Tipe hubungan kompleks 
Gambar 2.11 Tipe hubungan kompleks (Connolly & Begg, 2010, 498)
9.
Atribut multi-valued
  
27
Gambar 2.12 Atribut multi-valued (Connolly & Begg,
2010, 499)
b.
Memvalidasi hubungan dengan menggunakan
normalisasi
Untuk memvalidasi hubungan di dalam logical data
model menggunakan normalisasi.
c.
Memvalidasi hubungan terhadap transaksi pengguna
Untuk memastikan bahwa hubungan di dalam logical
data model mendukung kebutuhan transaksi.
d.
Memeriksa batasan integritas
Untuk memeriksa apakah batasan integritas
digambarkan di dalam logical data model.
Berikut
adalah batasan integritas :
1.
Required Data
Beberapa atribut harus selalu memiliki nilai yang
valid, dengan kata lain atribut tersebut tidak
boleh null. Contohnya seperti, setiap anggota dari
staff harus mempunyai berhubungan dengan job
position (seperti supervisor atau assistant).
Batasan ini seharusnya sudah diidentifikasi
ketika kita mendokumentasi atribut-atribut di
dalam kamus data.
2.
Attribut domain constraint
Setiap atribut memiliki domain, yaitu satu set
nilai yang legal. Sebagai contohnya adalah sex
dari anggota staff harus berisi ‘M’ atau ‘F’, jadi
domain dari atribut sex adalah karakter single
yang terdiri dari “M” atau “F”. Batasan ini
seharusnya sudah diidentifikasi ketika kita
memilih attribute domains untuk model data.
3.
Multiplicity
  
28
Multiplicity untuk mewakili batasan yang terletak
pada hubungan antara data di dalam database.
Contohnya seperti batasan-batasan yang
termasuk kebutuhan-kebutuhan dari sebuah
branch dapat memiliki banyak staff dan anggota
dari staff hanya bekerja di branch tunggal.
4.
Entity Integrity
Primary key
dalam sebuah entitas tidak boleh
berisi null. Contohnya seperti setap tuple dari
hubungan staff harus mempunyai nilai dari
atribut primary key untuk setiap tipe entitas.
5.
Referential Integrity
Foreign keyberhubungan dengan setiap tupledi
dalam hubungan childke tuple di dalam
hubungan parent yang mengandung nilai dari
cadidate key yang sesuai. Contohnya adalah
sebagai berikut:
Tabel 2.5 Mengidentifikasi Referential Integrity Constraint (Connolly & Begg,
2010, 505)
Staff (staffNo, fName, lName, position, sex, DOB, supervisorStaffNo)
Primary Key StaffNo
Foreign Key supervisorStaffNo references Staff (staffNo) ON UPDATE
CASCADE ON DELETE SET NULL
Client (clientNo,  fName, lName, eMail, prefType, maxRent, staffNo)
Primary Key clientNo
Foreign Key staffNo references Staff(staffNo)  ON UPDATE CASCADE ON
DELETE NO ACTION
  
29
e.
Meninjau model data logis dengan pengguna
Untuk memeriksa logical data model dengan pengguna-
pengguna untuk memastikan bahwa mereka
mempertimbangkan model menjadi sebuah gambaran
benar dari data yang dibutuhkan perusahaan.
f.
Menggabungkan model data logical
ke dalam model
global yang ( tahapan opsional )
Untuk menggabungkan local logical data models
kedalam sebuah single global logical data model
yang
menwakili semua user view dari sebuah database.
g.
Periksa untuk pertumbuhan masa depan
Untuk menentukan apakah terdapat perubahan penting
seperti masa depan dan untuk mengakses logical data
model
yang dapat menyediakan perubahan-perubahan
tersebut.
3.
Physical database design
Menurut Connolly dan Beeg (2010: 523), sebuah proses
menghasilkan penjelasan dari sebuah implementasi sebuah database
pada penyimpanan kedua, ini menggambarkan hubungan dasar, file
organisasi, dan index-index yang pernah digunakan untuk mencapai
efisiensi data, dan setiap integritas yang terhubung beserta ukuran
keamanan. Untuk membuat physical database design ada beberapa
tahapan yang harus di lakukan seperti di bawah  ini berikut dengan
contohnya :
a.
Menerjemahkan model data logis untuk sasaran DBMS
Untuk menghasilkan hubungan skema database
dari
logical data model
yang dapat diterapkan di dalam
sasaran DBMS. Terdapat tiga kegiatan yaitu:
i.
Hubungan Basis Data 
Untuk memutuskan bagaimana menerapkan
hubungan dasaryag diidentifikasi di dalam logical
data model di dalam target DBMS.
  
30
Department
Domain IDDepartment : fixed length character string,
length 5, Format : DP[0-9] [0-9] [0-9]
Domain NamaDepartment : variable length character
string, length 50
Department(
IDDepartment 
IDDepartment 
NOT
NULL,
NamaDepartment
NamaDepartment
NOT
NULL,
PRIMARY KEY (IDDepartment));
Staff
Domain StaffID : fixed length character string, length
5, Format : ST[0-9] [0-9] [0-9]
Domain NamaStaff : variable length character string,
length 100
Domain AlamatStaff : variable length character
string, length 100
Domain JenisKelamin : single character, must be one
of  ‘M’ or ‘F’
Staff(
StaffID 
StaffID
NOT
NULL,
Nama_Staff 
Nama_Staff
NOT
NULL,
Alamat_Staff 
Alamat_Staff
NOT
NULL,
JenisKelamin 
JenisKelamin
NOT
NULL,
PRIMARY KEY (StaffID);
FOREIGN KEY (IDDepartment) REFERENCES
Department(IDDepartment) ON UPDATE
CASCADE ON DELETE NO ACTION );
ii.
Merancang representasi dari data turunan
  
31
Untuk memutuskan bagaimana untuk menerapkan
data turunan yang ada di dalam logical data model di
dalam sasaran DBMS.
iii.
Merancang general constraint
Untuk merancang batasan general
untuk sasaran
DBMS.
CONSTRAINT StaffNotHandlingTooMuch
CHECK (NOT EXISTS(SELECT staffNo
FROM
PropertyForRent
GROUP BY staffNo
HAVING COUNT(*)> 100))
b.
Organisasi file desain dan indeks
Untuk menentukan organisasi-organisasi optimal file
untuk menyimpan hubungan-hubungan dasar dan indeks-
indeks yang dibutuhkan untuk memperoleh kinerja yang
cocok, ini hak di dalam hubungan-hubungan dan tuple-
tuple yang akan diadakan di dalam penyimpanan kedua.
i.
Menganalisis transaksi
Untuk memahami kegunaan dari transaksi-transaksi
yang akan berjalan di dalam database dan untuk
menganalisa transaksi-transaksi yang penting.
Contohnya dapat dilihat di bawah ini:
A : Menampilkan data Karyawan
B : Menambah data pengeluaran
C : Merubah data pengeluaran
Tabel 2.6 Menganalisis Transaksi (Connolly & Begg, 2010, 531)
Transaksi /
Relasi
A
B
C
D
E
I
R
U
D
I
R
U
D
I
R
U
D
I
R
U
D
I
R
U
D
Staff
X
X
X
X
  
32
PrivateOwner
X
ii.
Memilih organisasi file
Untuk menentukan organisasi file yang efisien untuk
setiap hubungan dasar. 
iii.
Memilih indeks
Untuk menentukan apakah penambahan indeks-
indeks akan memperbaiki kinerja dari sistem. Contoh
indeks yang di gunakan sebagai berikut :
CREATE UNIQUE INDEX StaffID ON
Staff(StaffID);
CREATE UNIQUE INDEX Nama_Staff ON Staff
(Nama_Staff)
iv.
Perkiraan kebutuhan ruang penyimpanan
Untuk memperkirakan jumlah dari ruang disk yang
dibutuhkan oleh database.
c.
Merancang pandangan pengguna
Untuk merancang pandangan pengguna yang
diidentifikasi selama pengumpulan kebutuhan-kebutuhan
dan tahapan analisa dari pengembangan siklus hidup
sistem database
d.
Desain  mekanisme keamanan 
Untuk merancang mekanisme keamanan untuk database
sebagaimana ditentukan oleh pengguna selama
kebutuhan-kebutuhan dan  tahapan pengumpulan dari
siklus hidup pengembangan sistem database.
e.
DBMS Selection(Pemilihan DBMS)
Menurut Connolly dan Beeg (2010: 325), Pemilihan DBMS
adalah pemilihan dari sebuah DBMS yang tepat untuk mendukung
sistem database.
  
33
f.
Application Design (Desain Aplikasi)
Menurut Connolly dan Beeg (2010: 329), ApplicationDesign
adalah merancang tampilan pengguna dan program-program aplikasi
yang digunakan dan proses database.
g.
Prototyping
Menurut Connolly dan Beeg (2010: 333), Prototyping adalah
membangun sebuah model kerja dari sistem database.
h.
Implementation (Implementasi)
Menurut Connolly dan Beeg (2010: 333),Implementasi adalah
realisasi fisik dari database dan desain aplikasi.
i.
Data Conversion and Loading
Menurut Connolly dan Beeg (2010: 334), Data Conversion
and Loading adalah pemindahan data yang ada ke dalam database
yang baru dan menerjemahkan aplikasi-aplikasi yang ada untuk dapat
jalan di dalam database yang baru.
j.
Testing
Menurut Connolly dan Beeg (2010: 334), Testing adalah
proses untuk menjalankan sistem database dengan maksud
menemukan kesalahan-kesalahan.
k.
Operational Maintenance
Menurut Connolly dan Beeg (2010: 335), Operational
Maintenance adalah sebuah proses pemantauan dan pemeliharaan
terhadap sistem setelah diinstalasi.
2.1.5 Model Entity-Relationship (Model Keterhubungan-Entitas)
Menurut Connolly dan Begg (2010: 371), Entity Relationship (ER)
Modeling adalah suatu pendekatan top-down ke perancangan database yang
dimulai dengan mengidentifikasikan data penting yang disebut entities dan
  
34
relationships diantara data yang harus direpresentasikan dalam  model.
Konsep dasar Entity Relationship Modeling yaitu :
1.
Entity Types
Menurut Connolly dan Beeg (2010: 372), Tipe entitas
merupakan sekumpulan kelompok dari objek-objek dengan properti
yang sama yang diidentifikasi oleh sebuah perusahaan sebagai suatu
keberadaan yang berdiri sendiri. 
Konsep dasar dari ER model
adalah tipe entitas, yang
menggambarkan sebuah kelompok dari “objek” di dalam “real
world” dengan properti-properti yang sama.
Setiap objek yang dapat diidentifikasi secara unique dari
sebuah tipe entitas disebut sebagai entity occurrence. Tipe entitas
dapat diklasifikasikan menjadi 2 (dua), yaitu:
a.
Strong Entity
Menurut Connolly dan Beeg (2010: 383), strong entity
type adalahsebuahtipe entitas yang keberadaannya tidak
bergantung pada beberapa tipe entitas lain. Karakteristik dari
strong entity type ialahsetiap
entity occurrence
dapat
diidentifikasi secara unik menggunakan sebuah attributes atau
beberapa attributes primary key dari tipe entitas-nya
b.
Weak Entity
Menurut Connolly dan Beeg (2010: 383), Weak Entity
type ialahsebuah tipe entitas yang keberadaannnya bergantung
pada beberapa tipe entitas lain. Karakteristik dari weak entity
ialahsetiap entity occurrence tidak dapat diidentifikasi secara
unik hanya menggunakan
Attributes yang berhubungan
dengan tipe entitas lain yang berupa
foreign key yang
dijadikan sebagai primary key.
  
35
Gambar 2.13 Entity Types (Connolly & Begg, 2010, 384)
2.
Relationship Types
Menurut Connolly dan Beeg (2010: 374), relationship types
adalah satu set hubungan antara satu atau lebih jenis entitas yang
berpartisipasi.
Gambar 2.14 Relationship Types (Connolly & Begg, 2010,
376)
3.
Attributes
Menurut Connolly dan Beeg (2010: 379), attribute adalah
suatu properti dari sebuah tipe entitas atau sebuah tipe hubungan..
Menurut Fathansyah, setiap entitas pasti memiliki atribut yang
mendeskribsikan karakteristik (properti) dari entitas tersebut.
Atribut dapat diklasifikasi menjadi :
Staff
Branch
Has
Relationship
name
  
36
i.
Simple and Composite Attributes
Menurut Connolly dan Beeg (2010: 379),
Simple attribute adalah sebuah atribut yang terdiri dari
komponen tungal dengan keberadaan independen.
Composite attributes adalah sebuah atribut yang terdiri
dari beberapa komponen, masing-masing dengan
keberadaan independen.
ii.
Single-Valued And Multi–Valued Attributes
Menurut Connolly dan Beeg (2010: 380),
Single-valued attribute adalah sebuah atribut yang
memegang nilai tunggal untuk setiap kemunculan
suatu entitas . MultiValued attributes adalah sebuah
atribut yang memegang beberapa nilai untuk setiap
kemunculan suatu entitas.
iii.
Derrived Attributes
Menurut Connolly dan Begg (2010: 380),
sebuah atribut mewakili nilai yang diturunkan dari
nilai atribut terkait atau sekumpulan atribut, belum
tentu dalam tipe entitas yang sama.
iv.
Keys
Menurut Connolly dan Beeg (2010: 381), keys
dibagi menjadi lima jenis:
a.
Candidate Keys
Set atribut minimal yang secara unik
mengidentifikasi setiap kemunculan dari tipe
entitas
b.
Primary Keys
Sebuah candidate key yang dipilih untuk
mengidenfikasi secara unik, tiap kejadian pada
sebuah tipe entitas 
c.
Composite Keys
Sebuah candidate key yang terdiri dari dua atau
lebih atribut.
  
37
Gambar 2.15 Attributes (Connolly & Begg, 2010, 382)
d.
Alternate Keys
Candidate key yang tidak terpilih menjadi primary key,
atau biasa disebut secondary key
e.
Foreign Keys
Himpunan atribut dalam suatu relasi yang cocok
dengan candidate key dari beberapa relasi lainnya.
v.
Structural Constraints
Menurut Connolly dan Beeg (2010: 385), kita dapat
memeriksa batasan yang mungkin ditempatkan di dalam tipe
entitas yang terdapat di dalam sebuah hubungan. Batasan
seharusnya mencerminkan batasan di dalam hubungan sebagai
presenpsian di dalam
real world”. Jenis utama dari
batasanpada hubungan-hubungandisebut multiplicity.
Multiplicity adalah jumlah (atau jangkauan) dari suatu
kejadian dari tipe entitas yang mungkin berhubungan dengan
kejadian tunggal dari jenis entitas terkait melalui hubungan
tertentu.
  
38
Multiplicity terdiri dari 3 tipe yaitu:
a.
One-to-One (1:1) Relationships 
Contoh gambar :
Gambar 2.16 The multiplicity of Staff Manages Branch
one-to-one (1:1) relationship (Connolly & Begg, 2010, 386)
b.
One-to-Many (1:*) Relationship
Contoh gambar :
Gambar 2.17Multiplicity of the Staff Oversees
PropertyForRent one-to-many (1:*) relationship type (Connolly &
Begg, 2010, 388)
  
39
c.
Many-to-Many (*:*) Relationships
Contoh gambar :
Gambar 2.18 The multiplicity of the Newspaper Advertises
PropertyForRent many-to-many (*:*) relationship (Connolly & Begg,
2010, 389)
2.1.6 Normalisasi
Menurut Connolly dan Beeg (2010: 415), normalisasi adalah suatu
teknik untuk menghasilkan aebuah set dari hubungan-hubungan dengan
properti-properti yang diinginkan, memberikan data yang dibutuhkan dari
sebuah perusahaan. 
Karakteristik dari sekumpulan hubungan yang sesuai termasuk
sebagai berikut:
a.
Jumlah minimal dari atribut -
atribut yang dibutuhkan untuk
mendukung data yang dibutuhkan oleh perusahaan.
b.
Atribut -
atribut dengan hubungan logikal yang dekat
(digambarkan sebagai ketergantunagn fungsional) ditemukan
dalam hubungan yang sama.
c.
Redundansi minimal dengan setiap atribut yang digambarkan
hanya sekali dengan pengecualian yang sangat penting dari setiap
atribut yang membentuk keseluruhan atau sebagian dari foreign
key, dimana dibutuhkan untuk penggabungan hubungan yang
saling terikat.
  
40
Tahap-tahap Normalisasi
Teknik normalisasi menurut Connolly dan Begg  terdiri dari :
1.
Unnormalized Form (UNF)
Menurut Connolly dan Begg (2010: 430), UNF adalah tabel
yang memiliki satu atau lebih kelompok perulangan.
2.
First Normal Form (1NF)
Menurut Connolly dan Begg (2010: 430), 1NF merupakan
sebuah relasi dimana setiap irisan dari masing-masing
?baris dan
kolom berisi satu dan hanya satu nilai. 
Terrdapat dua pendekatan yang biasanya untuk
menghilangkan kelompok pengulangan dari tabel unnormalized:
-
Dengan memperkirakan data
yang masuk di dalam kolom
yang kosong dari baris yang berisikan pengulangan data.
-
Dengan menempatkan data yang berulang, bersama dengan
salinan dari atribut-atribut kunci asli, di dalam sebuah relasi
yang terpisah.
3.
Second Normal Form (2NF)
Menurut Connolly dan Begg (2010: 434), 2NF adalah sebuah
relasi yang berada pada 1NF dan setiap atribut yang bukan
primary key sepenuhnya bergantung secara fungsional di dalam
primary key.
Suatu hubungan berada dalam 2NF jika dan hanya jika :
-
Berada pada 1NF.
-
Semua atribut non-primary-key
memiliki ketergantungan
penuh (functional dependency) pada primary key.
-
Dalam 2NF, semua ketergantungan parsial harus dihilangkan.
Ketergantungan parsial adalah ketergantungan antara atribut
primary key yang satu dengan atribut primary key yang lain.
4.
Third Normal Form (3NF)
Menurut Connolly dan Begg (2010: 436), 3NF adalah sebuah
relasi yang berada pada 1NF dan 2NF, dan tidak ada atribut yang
bukan primary key yang secara langsung bergantung kepada
primary key-nya.
  
41
Suatu hubungan dikatakan 3NF jika :
-
Berada dalam 1NF dan 2NF.
-
Setiap atribut non-primary-key
memiliki ketergantungan
transitif (transitive dependency) terhadap primary key.
Ketergantungan transitif adalah ketergantungan antara atribut
non-primary-key dengan atribut non-primary-key.
5.
Boyce-Codd Normal Form (BCNF)
Menurut Connolly dan Begg (2010: 447), BCNF adalah
sebuah relasi di dalam BCNF jika dan hanya jika setiap
penentunya adalah sebuah cadidate key.
6.
Fourth Normal Form (4NF)
Menurut Connolly dan Begg (2010: 457), 4NF adalah sebuah
relasi di dalam 4NF jika dan hanya jika untuk setiap
ketergantungan nontrivial mutivalued
A
>B, A adalah sebuah
cadidate key dari relasi.
7.
Fifth Normal Form (5NF)
Menurut Connolly dan Begg (2010: 458), 5NF adalah sebuah
relasi di dalam 5NF jika dan hanya jika setiap ketergantunagn join
(
,
,.....
) di dalam sebuah relasi R, setiap proyeksi
termasuk sebuah cadidate key dari relasi asli. Ketergantunagn join
adalah menjelaskan sebuah tipe dari ketergantunagan. Sebagai
contoh, untuk sebuah relasi R dengan bagian dari atribut-atribut
dari R dinyatakan sebagai A,B,...Z, sebuah relasi R memenuhi
sebuah ketergantungan join jika dan hanya jika setiap nilai legal
dari  adalah sama untuk penggabungan dari proyeksinya di
A,B,...,Z
Berikut adalah contoh dari tahapan normalisasi yang telah
disebutkan diatas.
UNF
ClientRental(clientNo, cName, PropertyNo, pAddress, rentStart,
rentFinish, rent, ownerNo, oName)
  
42
1NF
Client(ClientNo, cName)
PropertyRentalOwner(clientNo, PropertyNo, pAddress,
rentStart, rentFinish, rent, ownerNo, oName )
2NF 
Client(ClientNo, cName)
Rental (clientNo, PropertyNo, rentStart, rentFinish)
PropertyOwner(PropertyNo, pAddress, rent, ownerNo, oName)
3NF
Client(ClientNo, cName)
Rental (clientNo, PropertyNo, rentStart, rentFinish)
PropertyOwner(PropertyNo, ownerNo, pAddress, rent)
Owner(ownerNo, oName)
2.1.7 Perancangan User Interface
Menurut Connolly dan Beeg (2010: 331), interaksi manusia dengan
komputer adalah suatu ilmu yang berhubungan dengan perancangan,
evaluasi, serta implementasi sistem komputer interaktif yang akan digunakan
oleh manusia. Dalam merancang antarmuka pemakai (user interface) perlu
menggunakan delapan aturan emas ( 8 golden rule ).
Menurut (Shneiderman and Plaisant, 2004) dalam perancangan
antarmuka harus memperhatikan kaidah-kaidah seperti berikut
Shneiderman’s 8 Golden Rules of Interface Design:
1.
Berusaha untuk konsisten
Pentingnya bagi antarmuka pemakai untuk tetap konsisten
agar user tidak kebingungan dalam mencari sebuah informasi.
Contoh, tampilan layar harus konsisten dari yang satu dengan yang
lainnya. 
  
43
2.
Melayani usabilty universal
Mengenali kebutuhan pengguna yang beragam dan desain
untuk plasticity, memfasilitasi transformasi pemberitahuan konten ke
perbedaan ahli, rentang usia, cacat, dan keragaman masing-
masing
teknologi memperkaya spektrum persyaratan desain panduan itu.
Menambahkan fitur bagi para pemula, seperti penjelasan, dan fitur
untuk para ahli, seperti shortcut dan aksi balik lebih cepat, dapat
memperkaya desain antarmuka dan meningkatkan persepsi kualitas
sistem. 
3.
Memberikan umpan balik yang informatif
Untuk setiap user melakukan aksi, maka harus ada umpan
balik agar membuat user menjadi terarah dan tidak tersesat dalam
pencarian informasi. 
4.
Merancang dialog yang memberikan penutupan (keadaan akhir) 
Berinteraksi dengan komputer sama seperti berdialog. Aksi
yang berurutan harus diorganisasi dan memiliki awal, tengah, maupun
akhir. Penting bagi user untuk mengetahui kapan aksi tersebut
berakhir. Umpan balik yang informatif pada saat sekumpulan aksi
telah dilakukan memberikan user suatu kepuasan, rasa lega, dan
indikasi bahwa user boleh melakukan aksi yang selanjutnya. 
5.
Mencegah terjadinya error
Sebanyak mungkin menghindari kesalahan pada perancangan
sistem sehingga pengguna tidak dapat membuat kesalahan serius;
misalnya field item yang harus diisi oleh user yang tidak mengizinkan
karakter abjad dalam pengisian data numerik. Jika user membuat
kesalahan, interface harus mendeteksi kesalahan dan menawarkan
instruksi sederhana, konstruktif, dan khusus untuk proses perbaikan
kesalahan. Misalnya, user tidak perlu mengetik ulang bentuk seluruh
nama-alamat jika mereka memasukkan kode pos tidak valid,
melainkan harus diarahkan untuk memperbaiki hanya bagian
pengisian data yang tidak valid. Tindakan yang menghasilkan error
harus membiarkan keadaan sistem tidak berubah, atau interface harus
memberikan instruksi-instruksi tentang bagaimana mengembalikan
  
44
sistem ke bentuk semula.
6.
Memungkinkan pembalikan aksi (undo) yang mudah.
User harus dapat kembali pada aksi yang telah dilakukan
sebelumnya, baik itu ada kesalahan maupun tidak. 
7.
Mendukung pusat kendali internal.
Kepuasan user akan tinggi jika user merasakan bahwa dia
telah memegang kendali sedangkan kepuasan user akan rendah jika
komputer yang memegang kendali. 
8.
Mengurangi beban ingatan jangka pendek.
Ingatan jangka pendek manusia sangatlah terbatas. Lakukan
apa saja yang memungkinkan user tidak perlu mengingat apa pun.
Sebagai contoh, daripada meminta unser untuk mengetik nama file
yang akan diterima, lebih balik apabila user diminta untuk
menampilkan daftar dari file yang tersedia. 
2.1.8 Data Flow Diagram
Menurut Fajar Nugraha (2009: 2), Bagan untuk mewakili arus data
dalam suatu sistem mulai dikenalkan tahun 1967 oleh Martin dan Estrin yang
memperkenalkan algoritma program dengan menggunakan simbol lingkaran
dan panah untuk mewakili arus data. Diagram yang menggunakan notasi-
notasi ini untuk menggambarkan arus data dan data sistem dikenal dengan
nama diagram arus data. Data flow diagram adalah untuk menggambarkan
sistem yang telah ada atau sistem yang akan di kembangkan secara logika
tanpa mempertimbangkan lingkungan fisik dimana data tersebut mengalir
atau dimana data tersebut akan di simpan. Data flow diagram juga sebagai
metodologi yang digunakan untuk pengembangan sistem yang terstruktur. 
Simbol yang digunakan Data Flow Diagram adalah sebagai berikut :
a.
Kesatuan luar/batas sistem (external entity/boundary), merupakan
kesatuan lingkungan luar sistem yang dapat berupa orang, organisasi
atau sistem lainnya yang berada dilingkungan luarnya yang akan
memberikan input atau menerima output. Contoh simbol kesatuan
luar sebagai berikut :
  
45
Gambar 2.19 Contoh Boundary / External entity
(Fajar Nugraha, 2009,
3)
b.
Arus data (data flow), menunjukan data yang dapat berupa masukan
untuk sistem atau hasil dari proses sistem. Ada beberapa konsep-
konsep arus data seperti di bawah ini : 
Simbol arus data adalah : 
1.
Konsep paket dari data (packet of data), bila dua atau lebih data
mengalir dari sumber yang sama ke tujuan yang sama maka harus
dianggap sebagai satu arus data tunggal. Dengan contoh sebagai
berikut :
Gambar 2.20 Contoh Packet of Data (Fajar Nugraha, 2009, 4)
  
46
2.
Konsep arus data menyebar (diverging data flow), arus data yang
menyebar menunjukan sejumlah tembusan dari arus data yang
sama dari sumber yang sama ke tujuan yang berbeda.
Dengan contoh sebagai berikut:
Gambar 2.21 Contoh Diverging Data Flow (Fajar
Nugraha, 2009, 4)
3.
Konsep arus data mengumpul (converging data flow), arus data
yang mengumpul menunjukan beberapa arus data yang berbeda
dari sumber yang berbeda bergabung bersama-sama menuju ke
tujuan yang sama. 
  
47
Contoh converging data flow  sebagai berikut :
Gambar 2.22 Contoh Converging Data Flow (Fajar Nugraha, 2009, 4)
4.
Konsep
sumber dan tujuan arus data, semua arus data harus
dihasilkan dari proses atau menuju ke suatu proses. Konsep ini
penting karena arus data adalah salah satu dari hasil suatu proses
atau akan digunakan untuk melakukan suatu proses.
c.
Proses (Process), adalah
kegiatan atau kerja yang dilakukan oleh
orang, mesin atau komputer dari hasil suatu arus data yang masuk ke
dalam proses untuk dihasilkan arus data yang akan keluar dari proses.
Untuk physical data flow diagram proses dapat dilakukan oleh orang,
mesin atau komputer, sedangkan untuk logical data flow diagram
proses hanya menunjukan proses dari komputer.
Simbol proses adalah : 
  
48
Gambar 2.23 Simbol Proses (Fajar Nugraha, 2009, 5)
Keterangan : 
1.
Identifikasi proses, umumnya berupa angka yang menunjukan
nomor acuan dari proses dan di tulis pada bagian atas di simbol
proses.
2.
Nama proses, menunjukan apa yang dikerjakan oleh proses
tersebut. Nama harus jelas dan lengkap menggambarkan
kegiatan prosesnya yang biasanya diawali dengan kata kerja
3.
Pemroses, menunjukan siapa atau dimana proses dilakukan
(opsional)
Berikut adalah contoh arus data dalam suatu proses :
Gambar 2.24 Proses yang menerima satu arus data dan menghasilkan
satu arus data (Fajar Nugraha, 2009, 5)
Gambar 2.25 Proses yang menerima lebih dari satu arus data dan
menghasilkan satu arus data (Fajar Nugraha, 2009, 5)
  
49
Gambar 2.26 Proses yang menerima satu arus data dan menghasilkan
lebih dari satu arus data (Fajar Nugraha, 2009, 6)
d.
Simpanan data (data store) merupakan simpanan dari data yang
tersimpan pada database atau penyimpanan data.
Contohnya sebagai berikut :
Gambar 2.27 Contoh Data Store (Fajar Nugraha, 2009, 6)
Dari semua simbol yang sudah di jelaskan di atas maka dapat dibuat
Data Flow Diagram, baik untuk level 0 maupun diagram level 1.
  
50
Berikut adalah contoh dari data flow diagram level 0 :
Gambar 2.28 DFD Level 0 (Fajar Nugraha, 2009, 9)
Berikut adalah contoh DFD level 1 :
Gambar 2.29 DFD level 1 (Fajar Nugraha, 2009, 9)
  
51
2.1.9 Internet (Inter-Network)
Menurut Connolly dan Begg (2010: 1024), internet adalah sebuah
kumpulan worldwide dari jaringan komputer yang saling berhubungan.
Sedangkan menurut Graifhan Ramadhani (2003: 2), internet (Inter-Network)
adalah sebutan untuk sekumpulan jaringan komputer yangmenghubungkan
situs akademik, pemerintahan, komersial, organisasi, maupunperorangan.
Internet menyediakan akses untuk layanan telekomnunikasi dan sumber
dayainformasi untuk jutaan pemakainya yang tersebar di seluruh dunia.
Layanan internetmeliputi komunikasi langsung (email, chat), diskusi (Usenet
News, email, milis), sumberdaya informasi yang terdistribusi (World Wide
Web, Gopher), remote login dan lalulintas file (Telnet, FTP), dan aneka
layanan lainnya..
2.1.10 WWW (World Wide Web)
WWW atau yang sering disebut sebagai "web" saja merupakan
aplikasi internet yang paling populer. Demikian populernya hingga banyak
orang yangkeliru mengidentikkan web dengan internet.
Menurut Connolly dan Begg (2010: 1028), web adalah sebuah sistem
berbasis hypermedia yang menyediakan sarana mencari informasi di internet
dengan cara tidak berurutan menggunakan hyperlinks.
Sedangkan menurut
Graifhan Ramadhani (2003: 2),web adalah sebuah sistem dimana informasi
dalam bentuk teks, gambar,suara, dan lain-lain yang tersimpan dalam sebuah
internet webserver dipresentasikandalam bentuk hypertext. Informasi di web
dalam bentuk teks umumnya ditulis dalamformat HTML (Hypertext Markup
Language). Informasi lainnya disajikan dalam bentukgrafis (dalam format
GIF, JPG, PNG), suara (dalam format AU, WAV), dan objekmultimedia
lainnya (seperti MIDI, Shockwave, Quicktime Movie, 3D World).Web dapat
diakses oleh perangkat lunak web client yang secara populer disebut
sebagaibrowser. Browser membaca halaman-halaman web yang tersimpan
dalam webservermelalui protokol yang disebut HTTP (Hypertext Transfer
Protocol). Dewasa ini, tersediaberagam perangkat lunak browser. Beberapa
diantaranya cukup populer dan digunakansecara meluas, contohnya seperti
Microsoft Internet Explorer, Netscape Navigator,maupun Opera, namun ada
juga beberapa produk browser yang kurang dikenal dan hanyadigunakan di
lingkungan yang terbatas.
  
52
2.1.11 Hypertext Prepocessor (PHP)
Menurut Anhar
(2010: 3), PHP adalah bahasa pemrograman web
server-side yang bersifat open source. PHP merupakan script
yang
terintegrasi dengan HTML dan berada pada server
(server side HTML
embeded scripting). PHP adalah script yang di gunakan untuk membuat
halaman website
yang dinamis. Dinamis berarti halaman yang akan di
tampilkan dibuat saat halaman itu di minta oleh client. Mekanisme ini
menyebabkan informasi yang di terima client selalu yang terbaru atau up to
date. Semua script
PHP dieksekusi pada server
dimana script
tersebut di
jalankan. 
2.1.12 My Structure Query Language (MySQL)
Menurut Anhar
(2010: 21), MySQL adalah sebuah perangkat lunak
sistem manajemen basis data SQL (database management system) atau
DBMS dari sekian banyak DBMS, seperti Oracle, MS SQL, Postagre SQL,
dan lain-lain. MySQL merupakan DBMS yang multithread, multi-user yang
bersifat gratis di bawah license GNU General Public License (GPL). Tidak
seperti apache yang merupakan software yang di kembangkan oleh
komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya
masing-masing. MySQL dimiliki dan di seponsori oleh sebuah perusahaan
Swedia, yaitu MySQL AB. MySQL AB memegang hak cipta kode
sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan
MySQL AB adalah: David axmark, Allan Larson, Michael Monty Widenus. 
2.1.13 Jquery
Menurut Agus Saputra dan Feni Agustin (2012: 1), JQuery adalah
salah satu teknik atau kumpulan library Javascript yang sangat terkenal
dengan animasinya. Karena hanya dengan sedikit sentuahan animasi dalam
website mudah untuk diciptakan. JQuery dapat dianggap sebagai framework-
nya Javascript.
2.1.14Ajax
Menurut Abdul Kadir (2013: 340), Asynchronous JavaScript and XML
atau biasa disebut Ajax adalah suatu pendekatan yang merujuk kepada
interaksi antara JavaScript, browser, dan web server yang memungkinkan
  
53
browser memperoleh informasi dari web server dan menampilkan pada
bagian tertentu saja tanpa menggantihalaman web secara keseluruhan (lihat
Gambar 2.30). Pendekatan seperti ini memungkinkan hal-hal berikut
dilakukan:
1.
Memeriksa data login (nama pemakai dan password) yang dimasukkan
pemakai tetapimemperkenankan pemakai tetap berinteraksi dengan
halaman web.
2.
Menampilkan hasil jajak pendapat yang masih berlangsung sehingga
hasil terkini bisa diinformasikan setiap saat.
3.
Memantau suhu ruangan secara kontinu
Gambar 2.30 Pendekatan Ajax memungkinkan komunikasi
antara browser dan web server (Abdul Kadir, 2013, 340)
Aplikasi Ajax sebenarnya sudah diperkenalkan sebelum tahun 2000.
Namun, kepopulerannya baru menanjak di tahun 2005 setelah Google
menerapkannya di Google Map, Gmail dan Google Suggest.
Ajax disebut sebagai pendekatan yang asinkron. Artinya, antara
permintaan dan tanggapan tidak diproses secara berkesinambungan. Hal
inilah yang memungkinkan di antara permintaan dan tanggapan
dimungkinkan adanya aktivitas lain, misalnya pemakai tetap bisa bekerja
untuk mengisi formulir atau terjadi permintaan-permintaan lain. (Gambar
2.31)
  
54
Gambar 2.31 Permintaan dan tanggapan bersifat asinkron (Abdul Kadir,
2013, 340)
2.1.15 Hyper Text Markup Languange (HTML)
Menurut Anhar (2010: 40), HTML adalah sekumpulan simbol-simbol
atau tag-tag yang dituliskan dalam sebuah file yang digunankan untuk
menampilkan halam pada web browser. Tag-tag HTML selalu diawali
dengan <x> dan diakhiri dengan </x> dimana x tag HTML itu seperti b, i,u,
dan lain-lain. 
2.2 Teori Khusus
2.2.1 Monitoring dan Evaluasi
Menurut Asep Surayana (2008: 2), monitoring dan Evaluasi (ME)
adalah dua kata yang memiliki aspek kegiatan yang berbeda yaitu kata
Monitoring dan Evaluasi. Monitoring merupakan kegiatan untuk mengetahui
apakah program yang dibuat itu berjalan dengan baik sebagaiman mestinya
sesuai dengan yang direncanakan, adakah hambatan yang terjadi dan
bagaiman para pelaksana program itu mengatasi hambatan tersebut.
Monitoring terhadap sebuah hasil perencanaan yang sedang berlangsung
menjadi alat pengendalian yang baik dalam seluruh proses implementasi, hal
tersebut seperti pada gambar berikut ini:
  
55
Gambar 2.32 Proses Monitoring dan Evaluasi (Asep Surayana, 2008,
340)
“Monitoring lebih menekankan pada pemantauan proses
pelaksanaan” (Departemen Pendidikan Nasional: 2001 ). Monitoring juga
lebih ditekankan untuk tujuan supervisi. 
Proses dasar dalam monitoring ini meliputi tiga tahap yaitu: (1)
menetapkan standar pelaksanaan; (2) pengukuran pelaksanaan; (3)
menentukan kesenjangan (deviasi) antara pelaksanaan dengan standar dan
rencana. Menurut Dunn (1981), monitoring mempunya empat fungsi, yaitu: 
a.
Ketaatan (compliance). Monitoring menentukan apakah tindakan
administrator, staf, dan semua yang terlibat mengikuti standar dan
prosedur yang telah ditetapkan. 
b.
Pemeriksaan (auditing). Monitoring menetapkan apakah sumber dan
layanan yang diperuntukkan bagi pihak tertentu bagi pihak tertentu
(target) telah mencapai mereka. 
c.
Laporan (accounting). Monitoring menghasilkan informasi yang
membantu “menghitung” hasil perubahan sosial dan masyarakat sebagai
akibat implementasi kebijaksanaan sesudah periode waktu tertentu. 
d.
Penjelasan (explanation). Monitoring menghasilkan informasi yang
membantu menjelaskan bagaimana akibat kebijaksanaan dan mengapa
antara perencanaan dan pelaksanaannya tidak cocok. 
  
56
Penilaian (Evaluasi) merupakan tahapan yang berkaitan erat dengan kegiatan
monitoring, karena kegiatan evaluasi dapat menggunakan data yang disediakan
melalui kegiatan monitoring. Dalam merencanakan suatu kegiatan hendaknya
evaluasi merupakan bagian yang tidak terpisahkan, sehingga dapat dikatakan sebagai
kegiatan yang lengkap. Evaluasi diarahkan untuk mengendalikan dan mengontrol
ketercapaian tujuan. Evaluasi berhubungan dengan hasil informasi tentang nilai serta
memberikan gambaran tentang manfaat suatu kebijakan. Istilah evaluasi ini
berdekatan dengan penafsiran, pemberian angka dan penilaian. Evaluasi dapat
menjawab pertanyaan “Apa pebedaan yang dibuat”. (William N Dunn : 2000). 
Evaluasi bertujuan untuk mengetahui apakah program
itu mencapai sasaran
yang diharapkan atau tidak, evaluasi lebih menekankan pada aspek hasil yang
dicapai (output). Evaluasi baru bisa dilakukan jika program itu telah berjalan dalam
suatu periode, sesuai dengan tahapan rancangan dan jenis program yang dibuat dan
dilaksanakan, misalnya disekolah, untuk satu caturwulan atau enam bulan atau satu
tahun pelajaran
.
2.3
Hasil Penelitian atau Produk Sebelumnya
Mengacu pada jurnal yang ditulis oleh Mudjahidin dan Nyoman Dita Pahang
Putra  (2010, 76) dengan judul “Rancang Bangun Sistem Informasi Monitoring
Perkembangan Proyek Berbasis Web Studi Kasus Di Dinas Bina Marga Dan
Pemantusan”, Proses monitoring yang berjalan dalam Bimatus saat ini masih bersifat
manual dan dalam periode mingguan. Permasalahan terhadap monitoring yang
terjadi saat ini adalah tidak ada aplikasi yang dapat menyimpan dan menampilkan
perkembangan proyek secara harian. PPKm tidak bisa mendapatkan data dalam
bentuk harian karena data yang diberikan konsultan pengawas bersifat mingguan,
konsultan pengawas lapangan harus melakukan rekapan manual terhadap
perkembangan proyek setiap harinya dari beberapa proyek yang diawasi sehingga
terkadang data rekapan hilang. Hal ini menyebabkan mark up data biasa dilakukan,
banyak permasalahan dalam pelaksanaan proyek yang baru diketahui oleh pejabat
pembuat komitmen pada saat laporan mingguan. Hal ini menyebabkan banyak
proyek yang berjalan tidak tepat waktu. Sesuai dengan permasalahan yang telah
disebutkan sebelumnya, dapat ditentukan fasilitas yang dapat diberikan oleh sistem
kepada pengguna, yaitu melakukan login, melakukan perubahan kata sandi,
menampilkan data perkembangan proyek, menampilkan grafik proyek, mengelola
  
57
data jenis proyek, mengelola data kontraktor, mengubah hak akses, mengelola data
pengguna, mengelola data item pekerjaan, mengelola data satuan, mengelola data
seksi pekerjaan, mengelola data konsultan, mengelola data divisi pekerjaan,
mengelola data putaran, mengelola proyek, memasukan data realisasi proyek,
mengubah status proyek, dan mengubah data volume proyek.
Mengacu pada jurnal yang ditulis oleh Fandi Cahyo Saputro, Wiwik
Anggraeni dan Ahmad Mukhlason
(2012: 397), dengan judul “Pembuatan
Dashboard Berbasis Web Sebagai Sarana Evaluasi Diri Berkala untuk Persiapan
Penilaian Akreditasi Berdasarkan Standar Badan Akreditasi Nasional Perguruan
Tinggi”, Saat ini proses akreditasi masih menggunakan sistem manual yang mana
seluruh penilaian didasarkan atas data pendukung yang berbentuk dokumen-
dokumen. Permasalahan yang muncul adalah bagaimana mengorganisasikan
keseluruhan data program studi yang tersebar dan tidak teratur dengan baik agar
lebih mudah dievaluasi sendiri sebelum periode penilaian oleh lembaga akreditasi
nasional atau Badan Akreditasi Nasional Perguruan Tinggi. Pada proses evaluasi
diri, diperlukan aplikasi manajemen yang mampu mengintegrasikan keseluruhan isi
data pendukung sehingga saat evaluasi, didapatkan informasi mengenai bagian-
bagian apa saja yang kurang dan sudah memenuhi standar. Informasi yang
dimasukkan ke aplikasi lebih terintegrasi, namun masih belum memberikan
gambaran yang cukup untuk mengukur evaluasi bagi para stakeholdernya,
diperlukan visualisasi dashboard untuk memperhitungkan posisi performa
prodi/institusi dengan kondisi lebih mudah diukur, dihitung dan diawasi sehingga
pihak intern dapat mengetahui posisi penilaian mereka pada periode tertentu dan
mampu memperbaikinya jika kurang dari target yang ditetapkan oleh standar.
Mengacu pada jurnal yang ditulis oleh Sai On Cheung, Kevin K.W. Cheung,
Henry C.H. Suen (2004, 160) dengan judul “CSHM: Web-based Safety and Health
Monitoring System For Construction Management”, Paper ini menjelaskan
perancangan dan pengembangan dari sebuah prototype berbasis web monitoring
sistem keamanan dan kesehatan untuk perancangan pembangunan-monitoring
konstruksi keamanan dan kesehatan (CSHM). CSHM bisa digunakan sebagai
detector dari resiko-resiko potensial dan pengambilan resiko dan, lebih pentingnya
sebagai sebuah tanda bahaya untuk area-area dari kegiatan konstruksi yang
  
58
membutuhkan tindakan korektif langsung. Kebisaan untuk mengidentifikasi
keamanan dan mengambil resiko kesehatan secepat sebisa mungkin adalah vital
untuk sebuah proyek-proyek dari ukuran dan skala karena “pencegahan adalah selalu
lebih baik daripada mengobati” (Nikander & Eloranta, 1997). Ini adalah
pengintepasian dari CSHM bisa memfasilitasi menejemen keamanan dan keseharan
dengan cepat. Bagaimanapun, CSHM tidak dimaksudkan, dengan cara apapun, untuk
menggantikan praktek saat ini manajemen keselamatan dan kesehatan. Sebaliknya,
itu mengadopsi Model Menejemen Keselamatan dan kesehatan (OSHC, 2002)
sebagai dasar untuk desain sistemnya. Untuk memanfaatkan munculnya IT dan
teknologi basis data, semua fungsi CSHM dirancang untuk menjadi berbasis web,
sehingga memungkinkan akses remote, pengumpulan data yang cepat, pengambilan,
dan dokumentasi.