5
BAB 2
TINJAUAN PUSTAKA
2.1
Teori yang Berkaitan dengan Basis Data
Teori-teori yang berkaitan dengan basis data yang dibahas adalah data, basis
data (database), sistem basis data, Database Management System (DBMS), Entity-
Relationship
Modeling
(ER
Modeling), normalisasi, siklus hidup pengembangan
basis data, metodologi perancangan basis data, dan Structured Query Language
(SQL).
2.1.1
Data
Menurut Williams dan Sawyer (2007:25), data adalah fakta dan
gambaran mentah yang akan diproses menjadi informasi. Data akan
diperlukan untuk membuat sebuah informasi yang berguna. 
Menurut Indrajani (2011:2), data adalah fakta atau observasi mentah
yang disimpan dalam bentuk angka, huruf, simbol, teks, gambar, bunyi, dan
sebagainya. 
2.1.2
Basis Data (Database)
Menurut Connolly dan
Begg (2010:65), basis data adalah kumpulan
data yang saling berhubungan secara logis yang dirancang untuk memenuhi
kebutuhan informasi yang diperlukan oleh suatu organisasi. 
2.1.3
Sistem Basis Data
Menurut Connolly dan Begg (2010:54), sistem basis data adalah
kumpulan dari program aplikasi yang berinteraksi dengan Database
Management System (DBMS) dan basis data itu sendiri.
2.1.4
Database Management System (DBMS)
Menurut Connolly dan Begg (2010:66), Database Management
System (DBMS) adalah sistem perangkat lunak yang memungkinkan
pengguna untuk mendefinisikan, membuat, memelihara, dan mengontrol
pengaksesan terhadap suatu basis data.
  
6
2.1.4.1 Komponen DBMS
Menurut Connolly dan Begg (2010:68-71),
DBMS memiliki
lima komponen utama, yaitu: 
1)
Perangkat keras (hardware)
DBMS memerlukan perangkat keras untuk menjalankan
aplikasinya, seperti Personal Computer (PC), mainframe tunggal,
atau jaringan komputer.
2)
Perangkat lunak (software)
Komponen perangkat lunak meliputi perangkat lunak DBMS itu
sendiri, program aplikasi dan sistem operasi, serta perangkat lunak
jaringan jika DBMS digunakan di dalam sebuah jaringan.
3)
Data
Data merupakan komponen yang terpenting dalam lingkungan
DBMS, karena data merupakan penghubung antara komponen
mesin (perangkat keras dan perangkat lunak) dengan komponen
manusia (prosedur dan manusia).
4)
Prosedur
Prosedur merupakan instruksi dan aturan yang digunakan dalam
perancangan dan penggunaan basis data.
5)
Manusia
Komponen terakhir adalah manusia yang terlibat langsung dengan
DBMS. Manusia tersebut dapat berperan
sebagai Data
Administrator
(DA), Database Administrator
(DBA), database
designer, application developer, dan end-user.
Hubungan kelima komponen utama dalam DBMS
digambarkan dalam Gambar 2.1.
Gambar 2.1 Komponen Utama DBMS
(Sumber: Connolly dan Begg, 2010:68)
  
7
2.1.4.2 Fasilitas DBMS
Menurut Connolly dan Begg (2010:66), beberapa fasilitas
yang disediakan dalam Database Management System
(DBMS)
adalah sebagai berikut:
1)
Data Definition Language
(DDL), memungkinkan pengguna
untuk mendefinisikan tipe, struktur, dan batasan pada data yang
disimpan dalam basis data.
Perintah utama yang terdapat dalam
DDL adalah sebagai berikut:
a)
CREATE, digunakan untuk membuat objek dalam basis
data. 
b)
ALTER, digunakan untuk melakukan perubahan terhadap
objek dalam basis data, seperti
penambahan dan
penghapusan kolom atau batasan dalam tabel.
c)
DROP, digunakan untuk menghapus objek dalam basis
data. Perintah DROP dapat dibedakan menjadi dua tipe,
yaitu RESTRICT dan CASCADE. Perintah DROP akan
ditolak jika terdapat objek lain yang bergantung pada
objek yang akan dihapus
jika menggunakan tipe
RESTRICT, sedangkan
perintah DROP akan dilakukan
dan secara otomatis akan menghapus objek lain yang
bergantung pada objek yang akan dihapus
jika
menggunakan tipe CASCADE. 
2)
Data Manipulation Language
(DML), memungkinkan pengguna
untuk memasukkan, mengubah, menghapus, dan menampilkan
data dari dalam basis data.
Perintah utama yang terdapat dalam
DML adalah sebagai berikut:
a)
SELECT, digunakan untuk mengambil dan menampilkan
data yang berasal dari satu atau lebih tabel pada basis data.
b)
INSERT, digunakan untuk memasukkan data ke dalam
basis data.
c)
UPDATE, digunakan untuk melakukan perubahan pada
data dalam basis data. 
d)
DELETE, digunakan untuk menghapus data dalam basis
data. 
  
8
3)
Access Control, menyediakan akses yang terkontrol terhadap basis
data, seperti:
a)
Security system, mencegah pengguna yang tidak memiliki
hak akses untuk mengakses basis data.
b)
Integrity system, memelihara konsistensi terhadap data
yang telah tersimpan dalam basis data.
c)
Concurrency control system, memungkinkan dilakukannya
akses bersama terhadap basis data.
d)
Recovery control system,
mengembalikan basis data ke
kondisi semula pada saat terjadi kegagalan pada perangkat
keras atau perangkat lunak.
e)
User-accessible catalog, berisi deskripsi dari data
dalam
basis data.
2.1.4.3 Fungsi DBMS
Menurut Connolly dan Begg (2010:99-104), beberapa fungsi
dari DBMS adalah sebagai berikut:
1)
Data storage, retrieval, and update
DBMS harus menyediakan kemampuan bagi pengguna untuk
menyimpan, mengambil, dan mengubah data dalam basis data.
2)
A user-accessible catalog
DBMS harus menyediakan sebuah katalog
yang dapat diakses
oleh pengguna
yang mendeskripsikan lokasi penyimpanan data
dalam basis data.
3)
Transaction support
DBMS harus menyediakan sebuah mekanisme yang memastikan
bahwa semua perubahan pada data yang berhubungan dengan
transaksi dapat diproses dengan baik.
4)
Concurrency control service
DBMS harus menyediakan sebuah mekanisme yang memastikan
bahwa basis data akan terubah dengan benar ketika ada beberapa
pengguna yang mengubah data secara bersamaan.
  
9
5)
Recovery service
DBMS harus menyediakan sebuah mekanisme untuk memperbaiki
basis data ke kondisi semula apabila terjadi kerusakan atau error
pada basis data.
6)
Authorization service
DBMS harus menyediakan sebuah mekanisme yang memastikan
bahwa hanya pengguna yang memiliki hak akses atau
otoritas
yang dapat mengakses basis data.
7)
Support for data communication
DBMS harus mampu berintegrasi dengan semua communication
software.
8)
Integrity service
DBMS harus menyediakan sebuah mekanisme yang memastikan
bahwa data dalam basis data dan perubahan yang akan dilakukan
terhadap data telah mengikuti aturan-aturan integritas yang ada.
9)
Service to promote data independence
DBMS harus mempunyai fasilitas yang mendukung kemandirian
program dari struktur aktual basis data.
10) Utility service
DBMS harus menyediakan perangkat bantuan atau utilitas yang
dapat digunakan oleh Database Administrator
(DBA) agar basis
data dapat dikelola secara efektif. 
2.1.4.4 Kelebihan dan Kekurangan DBMS
Menurut Connolly dan Begg (2010:77-80), kelebihan DBMS
adalah sebagai berikut:
1)
Pengendalian terhadap redundansi data
2)
Konsistensi data
3)
Mendapatkan informasi yang lebih banyak dari data yang sama
4)
Data dapat digunakan bersama
5)
Meningkatkan integritas data
6)
Meningkatkan keamanan data
7)
Pelaksanaan standarisasi
8)
Berskala ekonomis
  
10
9)
Penyelarasan kebutuhan yang saling bertentangan 
10) Meningkatkan kemampuan akses dan tingkat respons
terhadap
data
11) Meningkatkan produktivitas
12) Meningkatkan pemeliharaan terhadap data
13) Meningkatkan concurrency
14) Meningkatkan layanan recovery dan backup
Menurut Connolly dan Begg (2010:80-81), kekurangan DBMS
adalah sebagai berikut:
1)
Kompleksitas yang tinggi
2)
Biaya DBMS yang mahal
3)
Memerlukan ruang penyimpanan yang besar
4)
Memerlukan biaya tambahan untuk perangkat keras
5)
Memerlukan biaya konversi dari sistem lama ke sistem baru
6)
Performa yang kurang stabil 
7)
Dampak yang lebih tinggi terhadap kegagalan
2.1.5
Entity-Relationship Modeling (ER Modeling)
Menurut Connolly dan Begg (2010:371), ER Modeling
(Entity-
Relationship
Modeling) adalah pendekatan secara top-down
yang dapat
digunakan
dalam perancangan basis data, yang dimulai dengan
mengidentifikasikan data yang penting yang disebut dengan entitas, dan relasi
atau hubungan antar data harus direpresentasikan dalam sebuah model.
Terdapat lima komponen dalam ER Modeling, yaitu tipe entitas,
tipe
relasi, atribut, key, dan structural constraint.
2.1.5.1 Tipe Entitas
Menurut Connolly dan Begg (2010:372), tipe entitas adalah
sekumpulan objek dengan sifat yang sama,
yang
diidentifikasikan
oleh perusahaan dan mempunyai keberadaan yang independen. 
Pengidentifikasian objek yang unik dari sebuah tipe entitas
disebut sebagai entity occurrence
  
11
Tipe entitas dapat diklasifikasikan menjadi dua jenis, yaitu:
1)
Strong entity, yaitu tipe entitas
yang keberadaannya
tidak
bergantung pada entitas lain.
Karakteristik dari strong entity
adalah setiap entitas diidentifikasi secara unik oleh atribut primary
key pada entitas tersebut. Strong entity
disebut juga sebagai
parent, owner, atau dominant.
2)
Weak entity,
yaitu tipe entitas
yang keberadaannya
bergantung
pada entitas lain. Karakteristik dari weak
entity adalah entitas
tersebut tidak dapat diidentifikasi secara unik oleh atribut dalam
entitas itu sendiri, sehingga untuk dapat diidentifikasi harus
menggunakan atribut primary key pada strong entity. Weak entity
disebut juga sebagai child, dependent, atau subordinate.
Gambar 2.2 Contoh Representasi Entitas
(Sumber: Connolly dan Begg, 2010:374)
Gambar 2.3 Contoh Representasi Strong Entity dan Weak Entity
(Sumber: Connolly dan Begg, 2010:384)
  
12
2.1.5.2 Tipe Relasi
Menurut Connolly dan Begg (2010:374), tipe relasi
adalah
sekumpulan
keterhubungan yang mempunyai arti antara tipe entitas
yang ada. Keterhubungan yang diidentifikasikan secara unik yang
meliputi keberadaan tiap tipe entitas yang berpartisipasi disebut
sebagai relationship occurrence
Derajat dari tipe relasi adalah jumlah entitas yang
berpartisipasi dalam sebuah relasi. Jumlah entitas yang berpartisipasi
dalam sebuah relasi bisa melibatkan dua entitas (binary relationship),
tiga entitas (ternary relationship), atau empat entitas (quarternary
relationship).
Gambar 2.4 Contoh Representasi Tipe Relasi
(Sumber: Connolly dan Begg, 2010:376)
2.1.5.3 Atribut
Menurut Connolly dan Begg (2010:379), atribut merupakan
sifat-sifat dari sebuah entitas
atau tipe relasi.
Himpunan nilai yang
diperbolehkan untuk satu atau lebih atribut disebut sebagai
domain
atribut. Domain atribut terdiri atas:
1)
Simple attribute, yaitu atribut yang terdiri dari satu komponen
tunggal dengan keberadaan yang independen dan tidak dapat
dibagi menjadi bagian yang lebih kecil lagi.
2)
Composite attribute, yaitu atribut yang terdiri dari beberapa
komponen, dimana masing-masing komponen memiliki
keberadaan yang independen.
  
13
3)
Single-valued attribute, yaitu
atribut yang mempunyai nilai
tunggal untuk setiap kejadian.
4)
Multi-valued attribute, yaitu atribut yang mempunyai beberapa
nilai untuk setiap kejadian.
5)
Derived attribute, yaitu atribut yang mempunyai nilai yang
dihasilkan dari satu atau beberapa atribut lainnya dan tidak harus
berasal dari satu entitas.
2.1.5.4 Key
Terdapat lima jenis
key
yang biasa digunakan dalam ER
Modeling, yaitu:
1)
Candidate key, yaitu sejumlah minimal atribut yang dapat
mengidentifikasikan setiap kejadian dari tipe entitas secara unik.
2)
Primary key,
yaitu candidate key yang dipilih untuk
mengidentifikasikan setiap kejadian dari tipe entitas secara unik.
3)
Alternate key, yaitu
candidate key yang tidak
terpilih menjadi
primary key.
4)
Composite key, yaitu candidate key yang terdiri dari dua atau lebih
atribut.
5)
Foreign key, yaitu atribut atau sekumpulan atribut pada suatu
relasi yang sesuai dengan candidate key dari beberapa relasi.
2.1.5.5 Structural Constraint
Menurut Connolly dan Begg (2010:385), batasan utama dalam
sebuah relasi disebut
sebagai multiplicity. Multiplicity adalah jumlah
kejadian
yang mungkin terjadi pada suatu entitas yang tehubung ke
satu kejadian dari entitas yang lain yang berhubungan melalui suatu
relasi.
Derajat relasi yang biasa digunakan adalah binary relationship.
Ada tiga tipe binary relationship yang biasanya digunakan, yaitu: 
1)
Derajat hubungan one-to-one (1:1),
terjadi bila setiap
anggota
entitas A hanya boleh berpasangan dengan satu anggota dari
entitas B.
Dan sebaliknya, anggota dari
entitas B hanya boleh
berpasangan dengan satu anggota dari entitas A.
  
14
2)
Derajat hubungan one-to-many (1:*),
terjadi bila setiap
anggota
entitas A dapat berpasangan dengan lebih dari satu anggota dari
entitas B. Dan sebaliknya, anggota dari entitas B hanya boleh
berpasangan dengan satu anggota dari entitas A.
3)
Derajat hubungan many-to-many (*:*), terjadi bila setiap anggota
entitas A dapat berpasangan dengan lebih dari
satu anggota dari
entitas B,
dan
anggota dari entitas B juga dapat berpasangan
dengan lebih dari satu anggota dari entitas A.
Menurut Connolly dan Begg (2010:390-391), multiplicity
terdiri atas dua batasan yang berbeda, yaitu:
1)
Cardinality, mendeskripsikan nilai maksimum dari relasi
yang
mungkin terjadi untuk entitas
yang berpartisipasi dalam relasi
tersebut.
2)
Participation, menentukan apakah seluruh atau sebagian entitas
yang berpartisipasi
dalam suatu
relasi.
Participation constraint
dibagi menjadi dua jenis, yaitu
mandatory participation
dan
optional participation. Mandatory participation melibatkan semua
entitas
pada suatu relasi. Sedangkan
optional participation
melibatkan beberapa entitas pada suatu relasi.
 
Gambar 2.5 Representasi Cardinality dan Participation Constraint
(Sumber: Connolly dan Begg, 2010:391)
  
15
2.1.6
Normalisasi
Menurut Connolly dan Begg (2010:416), normalisasi adalah suatu
teknik yang digunakan untuk
menghasilkan
sekumpulan relasi dengan sifat-
sifat yang diinginkan dan sesuai dengan kebutuhan pada perusahaan. 
Tujuan utama normalisasi adalah untuk mengidentifikasikan
kesesuaian relasi
yang mendukung kebutuhan data pada perusahaan.
Karakteristik dari kesesuaian relasi tersebut mencakup jumlah minimal
atribut yang diperlukan untuk mendukung kebutuhan perusahaan, atribut
dengan hubungan logika yang disebut sebagai ketergantungan fungsional
ditemukan di dalam relasi yang sama, dan redundansi yang minimal untuk
setiap atribut.
Tingkatan normalisasi dibagi menjadi beberapa tahap, yaitu:
1)
Unnormalized Form (UNF)
UNF adalah suatu tabel yang terdiri dari
satu atau lebih kelompok yang
berulang
(repeating group). Kelompok yang berulang
adalah sebuah
atribut atau sekumpulan
atribut di dalam tabel yang memiliki banyak
nilai untuk keberadaan yang tunggal.
2)
First Normal Form (1NF)
1NF adalah sebuah relasi dimana gabungan dari tiap baris dan kolom
mengandung satu dan hanya satu nilai.
Sebuah relasi berada dalam
bentuk 1NF jika relasi tersebut tidak berisi atribut yang berulang. Proses
untuk mengubah UNF menjadi 1NF adalah sebagai berikut:
a)
Tentukan satu atau kumpulan atribut sebagai key untuk
unnormalized table.
b)
Identifikasikan
kelompok yang berulang dalam unnormalized
table.
c)
Hilangkan
kelompok yang berulang,
dengan cara memasukkan
data yang sesuai ke dalam kolom kosong pada baris yang
berisikan data yang berulang atau dengan memindahkan kelompok
perulangan
tersebut ke dalam relasi
baru
yang terpisah dan
meninggalkan salinan dari key atribut.
3)
Second Normal Form (2NF)
2NF adalah sebuah relasi yang terdapat pada 1NF dan setiap atribut yang
bukan primary key memiliki ketergantungan penuh (fully
functional
  
16
dependent) terhadap primary key. Ketergantungan penuh
terjadi jika A
dan B merupakan atribut dari suatu relasi, dan B dikatakan bergantung
penuh terhadap A
jika B bergantung penuh terhadap A, bukan terhadap
subset dari A. Proses
untuk mengubah 1NF menjadi 2NF adalah sebagai
berikut:
a)
Identifikasi primary key dalam relasi 1NF.
b)
Identifikasi ketergantungan fungsional dalam relasi.
c)
Jika terdapat ketergantungan parsial terhadap primary key, maka
hilangkan dengan menempatkannya ke dalam relasi yang baru
bersama dengan salinan dari determinannya. 
Menurut Connolly dan Begg (2010:421), determinan mengacu pada
sebuah atribut atau sekelompok atribut yang terletak di sebelah kiri anak
panah
dari ketergantungan fungsional.
Pada Gambar 2.6, A merupakan
determinan untuk B.
Gambar 2.6 Representasi Ketergantungan Fungsional
(Sumber: Connolly dan Begg, 2010:421)
4)
Third Normal Form (3NF)
3NF adalah relasi yang terdapat pada 1NF dan 2NF dimana tidak terdapat
atribut yang bukan primary key bergantung secara transitif (transitively
dependent) terhadap primary key. Ketergantungan transitif adalah sebuah
kondisi dimana A, B,
dan C merupakan atribut dari suatu relasi,
B
bergantung pada A
(A
B),
C
bergantung pada B
(B
C), maka dapat
dikatakan bahwa C bergantung secara transitif terhadap A
melalui B.
Proses untuk mengubah 2NF menjadi 3NF adalah sebagai berikut:
a)
Identifikasi primary key dalam relasi 2NF.
b)
Identifikasi ketergantungan fungsional dalam relasi.
c)
Jika terdapat ketergantungan transitif terhadap primary key, maka
hilangkan
dengan menempatkannya dalam relasi yang baru
bersama dengan salinan dari determinannya.
  
17
2.1.7
Siklus Hidup Pengembangan Basis Data
Menurut Connolly dan Begg (2010:313), sebuah sistem basis data
merupakan komponen dasar dari sistem informasi sebuah organisasi yang
lebih besar, sehingga siklus hidup pengembangan basis data terkait erat
dengan sistem informasi. 
Pada sistem basis data yang berskala kecil dengan jumlah pengguna
yang sedikit, siklus hidup
pengembangan
basis datanya tidak terlalu
kompleks. Sedangkan, pada
sistem basis data dengan skala menengah atau
besar yang memiliki antara puluhan sampai ribuan
pengguna, dan
menggunakan ratusan query dan program aplikasi, maka siklus hidup
pengembangan basis data akan menjadi lebih kompleks.
Gambar 2.7 menggambarkan tahapan siklus hidup pengembangan
sistem basis data.
Gambar 2.7 Tahapan Siklus Hidup Pengembangan Sistem Basis Data
(Sumber: Connolly dan Begg, 2010:314)
  
18
2.1.7.1 Database Planning
Menurut Connolly dan Begg (2010:313), database planning
adalah aktivitas manajemen yang memungkinkan tahapan dari siklus
hidup pengembangan sistem basis data dapat direalisasikan secara
efisien dan efektif. 
Terdapat tiga hal penting dalam merumuskan suatu strategi
sistem informasi, yaitu:
1)
Mengidentifikasikan rencana dan tujuan
perusahaan
dengan
menentukan sistem informasi yang diperlukan.
2)
Mengevaluasi sistem informasi yang ada untuk menentukan
kekuatan dan kelemahan yang dimiliki oleh sistem tersebut.
3)
Memperkirakan peluang Information Technology (IT)
yang
mungkin menghasilkan keuntungan kompetitif.
2.1.7.2 System Definition
Menurut Connolly dan Begg (2010:316), system definition
bertujuan untuk mendeskripsikan
ruang lingkup serta batasan dari
aplikasi basis data dan sudut pandang dari sebagian besar pengguna
(major user view). 
User view mendefinisikan apa saja yang dibutuhkan dari suatu
sistem basis data berdasarkan perspektif dari peranan pekerjaan
(seperti manajer atau supervisor) atau area aplikasi (seperti
pemasaran, personalia, atau pengendalian persediaan). 
Suatu sistem basis data dapat memiliki satu atau lebih user
view.
Setiap user view mendefinisikan apa yang dibutuhkan dalam
sistem basis data yang berhubungan dengan data dan menampilkan
transaksi dalam data.
2.1.7.3 Requirements Collection and Analysis
Menurut Connolly dan Begg (2010:316), requirements
collection and analysis
adalah
proses mengumpulkan dan
menganalisis informasi tentang bagian organisasi yang akan didukung
oleh sistem basis data, dan
menggunakan informasi tersebut untuk
mengidentifikasikan kebutuhan pengguna terhadap sistem yang baru.
  
19
Menurut Connolly dan Begg (2010:318-319), ada tiga
pendekatan yang dapat dilakukan dalam pengumpulan data dan
analisis informasi, yaitu:
1)
Pendekatan centralized
Pada pendekatan centralized, kebutuhan untuk setiap user view
disatukan ke dalam suatu bentuk dari kebutuhan sistem basis data
yang baru. Sebuah model data merepresentasikan semua user view
yang dihasilkan selama tahap perancangan basis data.
2)
Pendekatan view integration
Pada pendekatan view integration,
kebutuhan untuk setiap user
view dibuat
dalam model data yang terpisah. Model data yang
menggambarkan single user view disebut sebagai model data
lokal, disusun dalam bentuk diagram dan dokumentasi yang secara
formal mendeskripsikan kebutuhan dari satu atau lebih tetapi tidak
semua user view pada basis data. Model data lokal kemudian
digabungkan untuk menghasilkan
model data global yang
menggambarkan semua kebutuhan pengguna untuk basis data.
3)
Pendekatan gabungan
Pendekatan gabungan menggunakan pendekatan centralized dan
view integration.
Menurut Connolly dan Begg (2010:344-347), terdapat banyak
teknik untuk memperoleh informasi yang disebut sebagai fact-finding
techniques atau teknik pencarian fakta.
Ada lima teknik pencarian
fakta yang biasa digunakan, yaitu:
1)
Pemeriksaan dokumen (examining documentation)
Pemeriksaan dokumen dapat bermanfaat dalam membantu untuk
menyediakan informasi perusahaan yang berkaitan dengan
masalah yang sedang dihadapi. Dengan memerikasa dokumen,
formulir, laporan, dan file yang berhubungan dengan sistem yang
ada, pemahaman tentang sistem dapat diperoleh dengan mudah.
2)
Wawancara (interviewing)
Wawancara merupakan teknik yang paling sering digunakan.
Melalui wawancara, informasi akan diperoleh dengan cara
bertatap muka
dengan individu-individu
yang bersangkutan.
  
20
Wawancara bertujuan untuk menemukan fakta, memverifikasi
fakta, mengklarifikasi fakta, menampilkan antusiasme, melibatkan
end-user, mengidentifikasi kebutuhan, dan mendapatkan opini
dari individu-individu yang bersangkutan.
3)
Observasi
Observasi merupakan
salah satu teknik yang paling efektif untuk
memahami sebuah sistem. Observasi
memungkinkan individu
untuk berpartisipasi dan melihat
informasi secara langsung
aktivitas dari sebuah sistem dan mempelajari sistem yang
sedang
berjalan.
4)
Penelitian (research)
Penelitian merupakan suatu teknik yang berguna untuk meneliti
sebuah aplikasi dan masalah yang ada. Jurnal, buku, dan internet
merupakan sumber informasi
yang baik bagi penelitian. Dari hasil
penelitian, akan didapatkan informasi tentang bagaimana masalah
yang serupa dapat diatasi.
5)
Kuesioner
Kuesioner merupakan dokumen dengan tujuan khusus yang
memungkinkan untuk mengumpulkan fakta dari banyak orang. 
2.1.7.4 Database Design
Menurut Connolly dan Begg (2010:320-321), database design
adalah proses membuat sebuah rancangan yang akan mendukung
operasional dan tujuan perusahaan. Terdapat empat pendekatan yang
dapat digunakan untuk merancang basis data, yaitu:
1)
Pendekatan bottom-up
Pendekatan bottom-up dimulai dari atribut dasar, yaitu sifat-sifat
entitas dan relasi, menganalisis penggabungan antar atribut
yang
dikelompokkan ke
dalam suatu relasi yang menggambarkan tipe
dari entitas dan relasi antar entitas.
2)
Pendekatan top-down
Pendekatan top-down diawali dengan pembentukan model data
yang berisi beberapa entitas tingkat tinggi dan relasi-relasi yang
  
21
ada, kemudian dilanjutkan dengan mengindentifikasikan entitas
dan relasi antar entitas, serta atribut lainnya.
3)
Pendekatan inside-out
Pendekatan inside-out berhubungan dengan pendekatan bottom-
up,
tetapi sedikit berbeda pada identifikasi awal sekumpulan
entitas utama dan kemudian menyebar ke entitas, relasi, dan
atribut yang berhubungan dengan entitas utama yang terlebih
dahulu diidentifikasi.
4)
Pendekatan gabungan
Pendekatan gabungan menggunakan pendekatan bottom-up dan
top-down.
Menurut Connolly dan Begg (2010:322), terdapat tiga tahap
dalam perancangan
sebuah basis data, yaitu perancangan basis data
konseptual, perancangan basis data logikal, dan perancangan basis
data fisikal. Tahap-tahap ini akan dijelaskan pada subbab 2.1.8. 
2.1.7.5 DBMS Selection (Optional)
Menurut Connolly dan Begg (2010:325-329), pemilihan
DBMS bertujuan untuk memilih DBMS yang tepat sehingga akan
mendukung sistem basis data yang dibuat. Terdapat empat tahapan
utama dalam pemilihan DBMS, yaitu:
1)
Mendefinisikan tujuan dan cakupan dari referensi pembelajaran.
2)
Mencatat dan membandingkan dua atau tiga produk DBMS.
3)
Mengevaluasi produk DBMS.
4)
Merekomendasikan pemilihan dan membuat laporan dari evaluasi
produk DBMS.
2.1.7.6 Application Design
Menurut Connolly dan Begg (2010:329), application design
adalah proses merancang antarmuka pengguna dan program aplikasi
yang akan menggunakan dan memproses basis data. 
  
22
2.1.7.7 Prototyping (Optional)
Menurut Connolly dan Begg (2010:333), prototyping
adalah
proses membangun sebuah model kerja dari sebuah sistem basis data. 
Tujuan utama prototyping
adalah memungkinkan pengguna
menggunakan prototype untuk mengidentifikasi fitur-fitur yang telah
bekerja dengan baik atau fitur yang kurang pada sistem, dan
memungkinkan pengguna untuk memberikan masukan perbaikan atau
penambahan fitur baru ke dalam sistem basis data. Prototyping juga
dapat digunakan untuk mengklarifikasi kebutuhan pengguna, dan
mengevaluasi kelayakan dari rancangan sistem.
Terdapat dua jenis prototyping yang digunakan saat ini, yaitu:
1)
Requirement prototyping, digunakan untuk menentukan
kebutuhan suatu sistem basis data yang diusulkan dan ketika
kebutuhan terhadap sistem basis data telah lengkap, maka
prototype tersebut tidak digunakan lagi.
2)
Evolutionary prototyping, digunakan untuk tujuan yang sama
dengan requirement prototyping, tetapi memiliki perbedaaan yang
mendasar, yaitu prototype
tidak dibuang tetapi dikembangkan
lebih lanjut menjadi sistem basis data.
2.1.7.8 Implementation
Menurut Connolly dan Begg (2010:333), implementation
merupakan realisasi fisik dari basis data dan rancangan aplikasi. 
Implementasi basis data dapat dicapai dengan menggunakan
Data Definition Language (DDL) dari DBMS yang dipilih
atau
sebuah Graphical User Interface
(GUI) yang menyediakan fungsi
yang sama sambil menyembunyikan perintah DDL tingkat rendah.
Perintah DDL digunakan untuk membuat struktur basis data dan file
basis data yang masih kosong. 
Program aplikasi diimplementasikan dengan menggunakan
bahasa generasi ketiga atau keempat (3GL atau 4GL). Bagian dari
program aplikasi adalah transaksi pada basis data yang
diimplementasikan dengan Data Manipulation Language (DML) dari
DBMS. 
  
23
2.1.7.9 Data Conversion and Loading
Menurut Connolly dan Begg (2010:334), data conversion and
loading
merupakan pemindahan data yang ada ke dalam basis data
yang baru dan mengubah aplikasi
yang sedang berjalan agar dapat
dijalankan pada basis data yang baru. Tahapan ini dibutuhkan hanya
ketika sistem basis data yang baru menggantikan sistem basis data
yang lama. 
2.1.7.10 Testing
Menurut Connolly dan Begg (2010:334), testing
merupakan
proses menjalankan program aplikasi dengan tujuan untuk
menemukan kesalahan-kesalahan. 
2.1.7.11 Operational Maintenance
Menurut Connolly dan Begg (2010:335), operational
maintenance
merupakan proses mengawasi dan memelihara sistem
basis data setelah dilakukannya instalasi. Aktivitas yang terdapat pada
operational maintenance adalah sebagai berikut:
1)
Mengawasi performa sistem. Jika performa
menurun, maka perlu
dilakukan perbaikan terhadap basis data.
2)
Memelihara dan memperbarui aplikasi basis data jika dibutuhkan.
Kebutuhan baru akan disatukan ke dalam sistem basis data melalui
langkah-langkah sebelumnya yang terdapat dalam siklus hidup
basis data.
2.1.8
Metodologi Perancangan Basis Data
Menurut Connolly dan Begg (2010:467), metodologi perancangan
basis data terbagi menjadi tiga tahapan utama, yaitu perancangan basis data
konseptual, perancangan basis data logikal, dan perancangan basis data
fisikal.
2.1.8.1 Perancangan Basis Data Konseptual
Menurut Connolly dan Begg (2010:467), perancangan basis
data konseptual merupakan suatu proses pembentukan model yang
  
24
berasal dari data yang digunakan dalam perusahaan, dan bebas
terhadap keseluruhan aspek fisik. 
Menurut Connolly dan Begg (2010:470-485), langkah
utama
yang dilakukan dalam perancangan basis data konseptual adalah
membuat sebuah model data konseptual. Terdapat sembilan langkah
untuk membuat sebuah model data konseptual, yaitu:
1)
Mengidentifikasi tipe entitas
Langkah ini bertujuan untuk mengidentifikasi tipe entitas utama
yang terdiri dari
nama, deskripsi, alias, dan occurrence dari
entitas. Salah satu metode untuk mengidentifikasi entitas adalah
dengan melihat rincian kebutuhan dari pengguna.
2)
Mengidentifikasi tipe relasi
Tipe relasi diidentifikasi untuk memperoleh semua relasi yang ada
antara tipe entitas. Identifikasi tipe relasi terdiri dari nama entitas,
multiplicity, dan nama relasi.
3)
Mengidentifikasi dan mengasosiasikan
atribut dengan tipe entitas
atau tipe relasi
Semua atribut diasosiakan dengan tipe entitas atau tipe relasi yang
sesuai. Identifikasi atribut terdiri dari nama entitas, atribut,
deskripsi dari atribut, tipe data
dan panjang data, null
yang
menunjukkan apakah suatu atribut boleh bernilai kosong atau
tidak, dan multi-valued
yang menunjukkan apakah suatu atribut
mempunyai beberapa nilai untuk setiap kejadian atau tidak.
4)
Menentukan domain atribut
Domain atribut ditetapkan untuk masing-masing atribut dalam
model data konseptual, yang meliputi
himpunan nilai dan format
yang diperbolehkan untuk setiap atribut.
5)
Menentukan candidate key, primary key, dan alternate key
Tujuannya adalah untuk menentukan candidate key untuk
masingh-masing tipe entitas. Apabila terdapat
lebih dari satu
candidate key, maka pilihlah salah satu candidate key untuk
menjadi primary key dan candidate key lainnya menjadi alternate
key.
  
25
6)
Mempertimbangkan penggunaan konsep enhanced modeling
(optional)
Penggunaan konsep enhanced modeling, seperti spesialisasi,
generalisasi, agregasi, dan komposisi bisa dipertimbangkan.
7)
Memeriksa redundansi pada model data konseptual
Langkah ini bertujuan untuk memeriksa apakah terjadi redundansi
pada model data konseptual. Terdapat tiga aktivitas untuk
memeriksa redundansi pada model data konseptual, yaitu:
a)
Memeriksa ulang relasi one-to-one (1:1).
b)
Menghilangkan relasi yang redundan atau berulang.
c)
Mempertimbangkan dimensi waktu.
8)
Memvalidasi model data konseptual terhadap transaksi pengguna
Langkah ini bertujuan untuk memastikan bahwa model data
konseptual dapat mendukung transaksi yang diperlukan, dengan
cara mendeskripsikan transaksi dan menggunakan jalur-jalur
transaksi.
9)
Meninjau kembali model data konseptual dengan pengguna
Model data konseptual perlu ditinjau kembali dengan pengguna
untuk memastikan bahwa model data konseptual merupakan
representasi nyata dari kebutuhan perusahaan.
2.1.8.2 Perancangan Basis Data Logikal
Menurut Connolly dan Begg (2010:467), perancangan basis
data logikal merupakan suatu proses pembentukan model yang berasal
dari data yang digunakan dalam perusahaan berdasarkan model data
tertentu, tetapi bebas terhadap DBMS tertentu dan aspek fisik lainnya.
Menurut Connolly dan Begg (2010:490-518), langkah utama
yang dilakukan dalam perancangan basis data logikal adalah membuat
dan memvalidasi model data logikal. 
Terdapat tujuh langkah untuk membuat dan memvalidasi
sebuah model data logikal, yaitu:
1)
Menurunkan relasi untuk model data logikal
Langkah ini bertujuan untuk membuat suatu relasi untuk model
data logikal yang merepresentasikan entitas, relasi, dan juga
  
26
atribut yang telah diidentifikasi pada perancangan basis data
konseptual. Relasi untuk model data logikal dapat diturunkan
berdasarkan model data konseptual berikut:
a)
Strong entity type
b)
Weak entity type
c)
Tipe relasi biner one-to-many (1:*)
d)
Tipe relasi biner one-to-one (1:1) 
e)
Tipe relasi rekursif one-to-one (1:1) 
f)
Tipe relasi superclass/subclass
g)
Tipe relasi biner many-to-many (*:*)
h)
Tipe relasi kompleks
i)
Multi-valued attribute
2)
Memvalidasi relasi menggunakan normalisasi
Normalisasi bertujuan untuk memastikan bahwa sekumpulan
relasi memiliki jumlah atribut yang minimum dan cukup untuk
mendukung kebutuhan data perusahaan.
3)
Memvalidasi relasi terhadap transaksi pengguna
Langkah ini bertujuan untuk memastikan bahwa relasi dalam
model data logikal telah mendukung transaksi yang diperlukan
oleh pengguna.
4)
Menentukan integrity constraint
Menurut Connolly dan Begg (2010:502-505), integrity constraint
merupakan batasan yang digunakan untuk menghindari adanya
data yang tidak lengkap, tidak akurat, dan tidak konsisten dalam
basis data. Integrity constraint yang perlu dipertimbangkan
adalah: 
a)
Required data, dimana beberapa atribut harus memiliki
nilai yang benar atau tidak boleh bernilai null.
b)
Batasan domain dari setiap atribut.
c)
Multiplicity, merepresentasikan batasan yang terletak pada
relasi antara data di dalam basis data.
d)
Entity integrity, dimana primary key dari sebuah entitas
tidak boleh bernilai null
  
27
e)
Referential integrity, dimana jika foreign key berisi suatu
nilai, maka nilai tersebut harus menunjuk ke sebuah baris
yang ada pada relasi ‘parent’.
f)
General constraint, merupakan aturan tambahan yang
diberikan oleh pengguna atau database administrator.
5)
Meninjau kembali model data logikal dengan pengguna
Model data logikal perlu ditinjau kembali dengan pengguna untuk
memastikan bahwa model data logikal merupakan representasi
nyata dari kebutuhan perusahaan.
6)
Menggabungkan model data logikal menjadi
model global
(optional)
Langkah ini bertujuan untuk menggabungkan model data logikal
lokal ke
dalam model data logikal global yang tunggal yang
mewakili semua user view tentang basis data.
Aktivitas yang
dilakukan untuk menggabungkan model data logikal menjadi
model global meliputi menggabungkan model data logikal lokal
ke
dalam model global, memvalidasi model data logikal global,
dan meninjau kembali model data logikal global dengan
pengguna.
7)
Memeriksa perkembangan di masa yang akan datang
Langkah ini bertujuan untuk menentukan apakah terjadi
perubahan yang signifikan di
masa yang akan datang dan untuk
menilai apakah model data logikal dapat mengakomodasi
perubahan yang terjadi.
2.1.8.3 Perancangan Basis Data Fisikal
Menurut Connolly dan Begg (2010:467), perancangan basis
data fisikal merupakan suatu proses untuk mengahasilkan deskripsi
dari implementasi basis data pada penyimpanan sekunder,
mendeskripsikan relasi dasar, organisasi file, dan indeks yang
digunakan untuk mencapai akses terhadap data yang efisien, serta
penggabungan beberapa batasan integritas dan ukuran tingkat
keamanan. 
  
28
Langkah-langkah yang dilakukan dalam perancangan basis
data fisikal adalah sebagai berikut:
1)
Menerjemahkan model data logikal untuk target DBMS 
Langkah ini bertujuan untuk menghasilkan skema basis data dari
model data logikal
yang dapat diimplementasikan pada target
DBMS. Terdapat tiga aktivitas dalam untuk menerjemahkan
model data logikal untuk target DBMS, yaitu:
a)
Merancang relasi dasar.
b)
Merancang representasi dari derived data.
c)
Merancang general constraint.
2)
Merancang organisasi file dan indeks
Langkah ini bertujuan untuk menentukan organisasi file
yang
optimal untuk menyimpan relasi dasar dan indeks yang diperlukan
untuk mencapai akses data yang dapat diterima, serta cara agar
relasi dan baris
disimpan pada penyimpanan sekunder. Terdapat
empat tahapan dalam merancang organisasi file dan indeks, yaitu:
a)
Menganalisis transaksi.
b)
Memilih organisasi file.
c)
Memilih indeks.
d)
Mengestimasi kebutuhan kapasitas disk.
3)
Merancang user view
User view dirancang
untuk
memungkinkan pengguna dapat
mengakses data dengan cara yang disesuaikan dengan kebutuhan
pengguna
dan untuk
menyederhanakan operasi kompleks pada
relasi dasar.
4)
Merancang mekanisme keamanan
Mekanisme keamanan dirancang untuk basis data yang telah
ditetapkan oleh pengguna selama proses pengumpulan kebutuhan
perusahaan dan tahapan dalam siklus hidup pengembangan basis
data.
5)
Mempertimbangkan controlled redundancy
Langkah ini bertujuan untuk menentukan apakah dengan
normalisasi dapat meningkatkan performa dari sistem.
  
29
6)
Memonitor dan memperbaiki sistem operasional
Langkah ini bertujuan untuk memonitor sistem operasional dan
meningkatkan performa
dari sistem dengan memperbaiki
rancangan yang tidak sesuai dengan kebutuhan.
2.1.9
Structured Query Language (SQL)
Menurut Williams dan Sawyer (2007:428), Structured Query
Language
(SQL) adalah bahasa query
standar yang digunakan untuk
membuat, memodifikasi, mendapatkan, dan melakukan query database
relasional.
Database relasional menghubungkan data pada file-file berbeda
dengan menggunakan sebuah key (Williams dan Sawyer, 2007:426).
Menurut Connolly dan Begg (2010:184), idealnya sebuah bahasa
database dapat memungkinkan pengguna untuk:
1)
Membuat struktur relasi dan basis data.
2)
Melakukan tugas dasar
manajemen basis data, seperti penyisipan
(insertion), perubahan (modification), dan penghapusan (deletion)
data
dari relasi.
3)
Melakukan query sederhana dan kompleks.
SQL memiliki dua komponen utama, yaitu:
1)
Data Definition Language (DDL), digunakan untuk pendefinisian struktur
basis data dan pengaturan akses terhadap data.
2)
Data Manipulation Language (DML), digunakan untuk pengambilan dan
perubahan data.
2.2
Teori Tematik
Teori-teori tematik
yang dibahas adalah
rekrutmen dan seleksi karyawan,
internet, World Wide Web (WWW), web application, web design, Hypertext Markup
Language (HTML), Personal Home Page (PHP), MySQL,
aturan perancangan
antarmuka pengguna, Data Flow Diagram (DFD), serta diagram alir (flowchart).
2.2.1
Rekrutmen dan Seleksi Karyawan
Menurut Rothwell dan Kazanas (2003:333), rekrutmen terdiri dari
aktivitas yang bertujan untuk mengidentifikasi sumber-sumber bakat yang
dapat memenuhi kebutuhan organisasi dan menarik sejumlah orang yang
  
30
tepat untuk pekerjaan yang tepat di waktu dan tempat yang tepat. Yullyanti
(2009:132) mendefinisikan rekrutmen sebagai proses untuk menemukan,
mengajak, dan menetapkan sejumlah orang guna mendapatkan sejumlah
pelamar yang berkualifikasi untuk pekerjaan di suatu perusahaan atau
organisasi.
Menurut Rothwell dan Kazanas (2003:333-334), seleksi adalah proses
untuk mencari dan mengidentifikasi kecocokan antara individu, pekerjaaan,
kelompok kerja, dan organisasi. Proses seleksi merupakan rangkaian tahapan
khusus yang dimulai ketika pelamar melamar kerja dan diakhiri dengan
keputusan penerimaan yang digunakan untuk memutuskan pelamar
mana
yang akan diterima (Yullyanti, 2009:132).
Menurut Rothwell dan Kazanas (2003:335), langkah-langkah yang
dilakukan
organisasi
dalam proses rekrutmen dan seleksi karyawan adalah
sebagai berikut:
1)
Mengidentifikasi sumber bakat yang tepat.
2)
Menetapkan usaha perekrutan secara terus-menerus.
3)
Menetapkan persyaratan khusus yang ditetapkan untuk sebuah lowongan.
4)
Menarik individu yang melamar untuk sebuah lowongan.
5)
Melakukan penyaringan individu yang telah melamar.
6)
Mengadakan tes yang digunakan untuk menilai kekuatan dan kelemahan
relatif dari pelamar.
7)
Melakukan wawancara dengan kandidat pelamar yang menjanjikan.
8)
Mengecek latar belakang dari pelamar yang menjanjikan.
9)
Memberikan sebuah penawaran kepada pelamar yang menjanjikan.
10) Menempatkan dan melakukan orientasi kepada pelamar yang diterima.
2.2.2
Internet
Williams dan Sawyer (2007:17)
mendefinisikan
internet
sebagai
jaringan komputer di seluruh dunia yang menghubungkan ratusan bahkan
ribuan jaringan yang lebih kecil, seperti jaringan pendidikan, komersial,
nirlaba, militer, dan jaringan individual.
Sedangkan menurut Connolly dan
Begg (2010:1024), internet
merupakan sekumpulan jaringan komputer di
dunia yang saling terkoneksi.
  
31
2.2.3
World Wide Web (WWW)
Menurut Williams dan Sawyer (2007:17), World Wide Web (WWW)
atau yang sering disebut sebagai web merupakan suatu sistem interkoneksi
komputer internet (disebut server) yang mendukung dokumen-dokumen
berformat multimedia. Kata multimedia
berarti banyak media, berkaitan
dengan teknologi yang menyajikan informasi di lebih dari satu
media, seperti
teks, gambar bergerak maupun tidak bergerak, dan suara. Web dapat
menyediakan informasi dalam beragam bentuk.
Menurut Connolly dan Begg (2010:1028), web
adalah sebuah sistem
berbasis hypermedia
yang menyediakan sarana penelusuran informasi pada
internet
secara non-sequential
dengan menggunakan hyperlink.
Forouzan
(2010:658) mendefinisikan hypermedia sebagai istilah yang diterapkan untuk
dokumen yang berisi link
ke dokumen tekstual atau dokumen yang memuat
gambar, video, atau suara. 
2.2.4
Web Application
Menurut Murach dan Steelman (2008:4), aplikasi web (web
application)
merupakan sekumpulan halaman web
yang dihasilkan dalam
menanggapi permintaan pengguna. Internet memiliki banyak tipe aplikasi
web yang berbeda, diantaranya search engine,
toko online, situs berita,
discussion group, dan games.
Menurut Murach dan Steelman (2008:6), aplikasi web merupakan
jenis dari aplikasi client/server. Komponen dari aplikasi web disimpan baik di
komputer client maupun di komputer server. Untuk mengakses
sebuah web
application, diperlukan sebuah web browser yang berjalan di komputer client.
Web browser merupakan perangkat lunak yang memungkinkan pengguna
atau client untuk mencari dan mengakses beragam komponen web serta
berpindah dari satu halaman ke halaman web lainnya.
Contoh perangkat
lunak web browser yang sering digunakan saat ini adalah Microsoft Internet
Explorer, Mozilla Firefox, dan Google Chrome.
Aplikasi web tersimpan di
komputer server. Komputer server akan menjalankan perangkat lunak web
server
yang melayani
permintaan pengguna atau client dan mengirimkan
informasi berupa halaman web ke web browser
yang berjalan di komputer
client. Contoh perangkat lunak web server adalah Apache.
  
32
Saat ini, hampir semua aplikasi web bekerja dengan data yang
tersimpan di dalam sebuah basis data, sehingga server harus menjalankan
Database Management System (DBMS)
untuk dapat mengakses data dalam
basis data. Contoh DBMS yang sering digunakan untuk aplikasi web adalah
Oracle dan MySQL.
2.2.5
Web Design
Menurut Bear
(2013), web design adalah seni dan proses pembuatan
halaman web yang melibatkan estetika dan mekanisme operasi dari halaman
web walaupun berfokus pada tampilan dan keindahan
dari halaman web.
Beberapa aspek yang dapat dimasukkan dalam web design adalah grafis dan
pembuatan animasi, pemilihan warna, pemilihan font, desain navigasi, dan
pembuatan konten.
2.2.6
Hypertext Markup Language (HTML)
Menurut Williams dan Sawyer (2007:67), Hypertext Markup
Language (HTML) adalah sekumpulan perintah khusus (disebut tag atau
markup) yang digunakan untuk menentukan struktur, bentuk, dan link pada
dokumen ke dokumen multimedia lain di web.
2.2.7
Personal Home Page (PHP)
Menurut Welling dan Thomson (2009:2), PHP merupakan bahasa
server-side scripting yang dirancang khusus untuk web. Kode PHP dapat
dimasukkan ke dalam halaman HTML yang akan dieksekusi setiap kali
halaman tersebut dikunjungi. Kode PHP akan diinterpretasikan di web server
dan menghasilkan keluaran yang akan dilihat oleh pengunjung berupa
halaman HTML atau keluaran lainnya.
PHP memiliki beberapa keunggulan bila dibandingkan dengan bahasa
pemrograman web lainnya, yaitu:
1)
Performa yang tinggi
2)
Adanya integrasi dengan basis data 
3)
Memiliki library untuk berbagai web yang umum
4)
Merupakan bahasa pemrograman yang bersifat gratis (open source)
5)
Mudah dipelajari dan digunakan
  
33
6)
Mendukung object-oriented
7)
Dapat berjalan pada berbagai jenis sistem operasi
8)
Dapat diimplementasikan dengan mudah dengan menggunakan
sebuah
framework
2.2.8
MySQL
Menurut Welling dan Thomson (2009:3), MySQL merupakan
Relational Database Management System (RDBMS) yang sangat cepat.
Server
MySQL mengatur akses terhadap data untuk memastikan bahwa
beberapa pengguna dapat mengakses basis data bersamaan, menyediakan
akses yang cepat terhadap data, dan memastikan hanya pengguna yang
memiliki hak akses yang dapat mengakses data.
MySQL memiliki beberapa keunggulan, yaitu performa yang tinggi,
bersifat open source, mudah untuk digunakan, dan dapat berjalan pada
berbagai jenis sistem operasi.
2.2.9
Aturan Perancangan Antarmuka Pengguna
Williams dan Sawyer (2007:131)
mendefinisikan
antarmuka
pengguna (user interface)
sebagai layar tampilan yang bisa dikontrol dan
berfungsi sebagai jembatan bagi pengguna untuk berkomunikasi atau
berinteraksi dengan komputer.
Menurut Shneiderman dan Plaisant (2005:74-75),
terdapat delapan
aturan yang dikenal dengan sebutan eight golden rules of interface design.
Kedelapan aturan tersebut dapat dipertimbangkan untuk merancang
antarmuka pengguna yang baik. Isi dari kedelapan aturan tersebut adalah:
1)
Berusaha untuk konsisten 
Konsistensi dilakukan pada istilah-istilah yang digunakan pada prompt,
menu, dan layar bantuan.
Konsistensi juga dilakukan pada pewarnaan,
tata letak, huruf besar, jenis tulisan (font), dan sebagainya.
2)
Memenuhi kebutuhan universal
Dalam melakukan perancangan sistem sebaiknya kenali kebutuhan
pengguna. Dengan menambahkan fitur seperti penjelasan untuk pemula
dan shortcut untuk pengguna yang ahli, dapat memperkaya rancangan
antarmuka dan meningkatkan kualitas sistem yang dirasakan pengguna.
  
34
3)
Memberikan umpan balik yang informatif
Umpan balik sebaiknya disertakan untuk setiap aksi pengguna. Umpan
balik yang sederhana dapat diberikan untuk aksi yang sering dilakukan.
Umpan balik sebaiknya lebih substansial bila aksi pengguna merupakan
hal yang penting.
4)
Merancang dialog yang memberikan penutupan
Urutan tindakan sebaiknya diorganisasi
dalam suatu kelompok dengan
bagian awal, tengah, dan akhir. Umpan balik yang informatif
mengindikasikan bahwa cara yang dilakukan sudah benar
dan dapat
mempersiapkan kelompok tindakan selanjutnya.
5)
Memberikan pencegahan kesalahan
Sistem sebaiknya dirancang sedemikian rupa sehingga pengguna tidak
dapat membuat kesalahan yang fatal. Jika pengguna membuat kesalahan,
maka sistem dapat mendeteksi kesalahan tersebut dengan menawarkan
perintah sederhana, konstruktif, dan spesifik untuk pemulihan keadaan. 
6)
Memungkinkan pembalikan aksi yang mudah
Aksi pengguna sebaiknya dapat dibalikkan. Pengguna dapat kembali ke
keadaan sebelumnya ketika terjadi kesalahan, sehingga pengguna tidak
takut untuk mengeksplorasi pilihan-pilihan lain yang belum biasa
digunakan.
7)
Mendukung pusat kendali internal
Pengguna ingin menjadi pengontrol sistem dan sistem akan merespons
aksi yang dilakukan pengguna. 
8)
Mengurangi beban ingatan jangka pendek
Keterbatasan ingatan manusia membutuhkan tampilan yang sederhana,
tampilan beberapa halaman sebaiknya disatukan, dan diberikan waktu
yang cukup untuk pelatihan kode, mnemonic, dan urutan aksi.
2.2.10
Data Flow Diagram (DFD)
Menurut Whitten dan Bentley (2007:317), Data Flow Digaram (DFD)
adalah model proses yang digunakan untuk menggambarkan aliran data
melalui sebuah sistem dan tugas atau proses yang dilakukan oleh sistem. 
Suatu
DFD harus memiliki sedikitnya satu masukan atau keluaran
aliran data untuk suatu external entity dan suatu proses. Keluaran aliran data
  
35
biasanya memiliki nama yang berbeda dengan masukan aliran data untuk
suatu proses. Aliran data dalam DFD hanya satu arah dan setiap aliran data
terhubung sedikitnya ke satu proses (Ibrahim dan Yen, 2011:62). 
DFD memiliki beberapa tingkatan, diantaranya diagram konteks dan
diagram nol. Diagram konteks adalah diagram yang terdiri dari suatu proses
dan menggambarkan keseluruhan dari
suatu sistem. Diagram konteks
merupakan level
tertinggi dari DFD yang menggambarkan seluruh input ke
sistem atau output
dari sistem, sehingga diagram konteks akan memberi
gambaran tentang keseluruhan sistem. Dalam diagram konteks hanya ada satu
proses dan tidak boleh ada data store dalam diagram konteks (Saluky, 2013). 
Diagram konteks dapat dipecah menjadi diagram yang lebih rinci atau
yang dikenal dengan DFD level
nol. Jumlah dan nama aliran data maupun
external entity pada DFD level
nol harus sesuai dengan yang terdapat pada
diagram konteks (Ibrahim dan Yen, 2011:62-63). 
Tabel 2.1 Notasi pada DFD
Simbol
Keterangan
Process adalah tugas yang dilakukan oleh sistem
dalam merespons aliran data atau kondisi yang
masuk. 
Data flow
merepresentasikan masukan data ke
suatu proses atau keluaran data dari suatu proses. 
External entity adalah orang, organisasi, atau
sistem lain yang berinteraksi dengan sistem.
Data store adalah sekumpulan data yang disimpan
untuk penggunaan selanjutnya.
2.2.11
Diagram Alir (Flow Chart)
Diagram alir (flow chart) adalah diagram yang menggambarkan aliran
proses dari awal sampai akhir
(Proboyekti, 2009). Diagram alir memiliki
notasi yang melambangkan fungsi tertentu seperti yang terdapat pada Tabel
2.2.
  
36
Tabel 2.2 Notasi pada Diagram Alir (Flow Chart)
Simbol
Keterangan
Terminator
merupakan titik awal atau akhir dari proses
yang terjadi dalam diagram alir.
Document
merupakan dokumen atau laporan yang
digunakan.
Decision merupakan cabang dari proses yang terjadi
dalam diagram alir.
Manual operation
merupakan proses yang tidak dapat
dilakukan secara otomatis melainkan secara manual.
Flow line merupakan arah aliran kerja atau informasi.
Off-page connector merupakan penghubung diagram
alir ke halaman lain. 
2.3
Hasil Penelitian Terkait
Hasil penelitian terkait dengan skripsi ini yaitu sistem informasi manajemen
penerimaan CPNS (Calon Pegawai Negeri Sipil) wilayah Jawa Tengah berbasis web
yang ditulis oleh Dedy Agung Prabowo, Edi Noersasongko, dan Mohamad Sidiq,
serta dimuat pada Jurnal Teknologi Informasi, Volume 6 Nomor 2, Oktober 2010.
Dari jurnal tersebut, masalah yang dihadapi oleh Badan Kepegawaian Daerah
Provinsi Jawa Tengah adalah proses administrasi penerimaan Calon Pegawai Negeri
Sipil yang belum bersifat online, sehingga mengakibatkan proses administasi tidak
dapat berjalan dengan efektif dan efisien. Dari hasil penelitian tersebut dapat
disimpulkan bahwa dengan dikembangkannya Sistem Informasi Manajemen
Penerimaan CPNS, proses administrasi Penerimaan Calon Pegawai Negeri Sipil
dapat berjalan dengan efektif dan efisien karena sistem yang telah bersifat online dan
dapat diakses oleh seluruh lapisan masyarakat. Proses pengelolaan data kepegawaian
pun dapat dilaksanakan dengan cepat dan terintegrasi dengan data lainnya yang
mengakibatkan data tersebut dapat digunakan untuk pengambilan keputusan.
Selain pemerintahan, perusahaan kini mulai menerapkan sistem rekrutmen
secara online. Dalam jurnal E-Recruitment
yang telah dimuat pada International
Journal of Engineering and Advanced Technology
(IJEAT), Volume 1
Nomor
4,
April 2012, dan ditulis oleh Avinash S. Kapse, Vishal S. Patil, dan Nikhil V. Patil
  
37
dijelaskan bahwa perusahaan pun kini menggunakan sistem penerimaan (rekrutmen)
calon karyawan secara online karena
memberikan kesempatan yang lebih besar
dalam menemukan kandidat yang potensial dengan lebih cepat dan efektif
(Kapse,
Patil, dan Patil, 2012:85). 
Hal ini juga senada dengan Tommy Septian Purnomo di dalam jurnalnya
yang berjudul Rekrutment Online (E-Recruitment) Sebagai Suatu Inovasi dalam
Perekrutan Perusahaan, yang dimuat pada Jurnal JIBEKA, Volume 7 Nomor 3,
Agustus 2013. Purnomo (2013:56-58)
mengatakan
bahwa dengan menerapakan e-
recruitment maka perusahaan dapat melakukan penghematan biaya, memberikan
kemudahan dalam penggunaan bagi pelamar, dan proses rekrutmen dapat dilakukan
dengan lebih cepat. Beberapa perusahaan besar yang telah menerapkan sistem
rekrutmen secara online
(dikenal dengan e-recruitment)
adalah
Microsoft, Oracle,
dan Bank of Ireland. 
 
  
38