8
BAB 2
LANDASAN TEORI
2.1  Teori-Teori Umum
Teori-teori umum yang akan dibahas adalah sistem, data dan informasi, basis data,
sistem basis data, sistem manajemen basis data, Structured Query Language, Entity-
Relationship Modeling, normalisasi, metodologi perancangan basis data,
siklus hidup
basis data, Data Flow Diagram, bagan alir, internet, World Wide Web, terminologi
internet dan web, aturan perancangan antarmuka pengguna, PHP, MySQL, Apache web
server, dan YSlow.
2.1.1
Sistem
Menurut Williams dan Sawyer (2007: 510), sistem adalah kumpulan dari
komponen-komponen yang berhubungan dan berinteraksi untuk melakukan suatu tugas
guna mencapai suatu tujuan.
Menurut Pressman (2005: 155), sistem merupakan serangkaian atau tatanan
elemen-elemen yang diatur untuk mencapai tujuan yang telah ditentukan sebelumnya
melalui sebuah pemrosesan informasi.
Jadi, sistem adalah kumpulan beberapa komponen yang saling berhubungan dan
berinteraksi, serta menerima masukan dan menghasilkan keluaran
melalui suatu proses
transformasi yang terorganisasi guna mencapai tujuan bersama.
  
9
2.1.2
Data dan Informasi
Menurut Whitten
et. al.
(2004: 23), data adalah fakta mentah mengenai orang,
tempat, kejadian, dan hal-hal penting dalam organisasi. Sebuah data yang berupa fakta
mentah tidak akan beguna, kecuali bila digabungkan dengan data lain.
Menurut Hoffer (2009: 46),
data adalah sebuah fakta yang menjelaskan orang,
objek, ataupun kejadian. Contohnya adalah sebuah daftar dosen yang berisi kode dosen,
nama, dan alamat dapat dikualifikasikan sebagai data.
Menurut Whitten et. al. (2004: 23), informasi adalah data yang telah diproses atau
diorganisasi ulang menjadi bentuk yang berarti. Informasi dibentuk dari kombinasi data
yang diharapkan memiliki arti ke penerima.
Menurut McLeod dan Schell (2004: 10), informasi adalah data yang telah diproses
dan memiliki makna, biasanya menceritakan sesuatu hal kepada pengguna yang belum
diketahui sebelumnya.
2.1.3
Basis Data 
Teori basis data yang akan dibahas adalah definisi basis data, arsitektur basis data,
dan manfaat basis data.
Pada bagian definisi basis data akan dijelaskan beberapa
pengertian basis data yang dikemukakan oleh para ahli, sedangkan pada bagian arsitektur
basis data akan dijelaskan mengenai tingkatan-tingkatan yang ada pada arsitektur basis
data, dan pada bagian manfaat basis data akan dijelaskan beberapa manfaat yang dapat
diperoleh dengan adanya basis data.
a. Definisi Basis Data
Menurut Connolly dan Begg (2005: 15), basis data (database) adalah kumpulan
data yang berelasi secara logika
dan dirancang
untuk memenuhi kebutuhan informasi
  
10
yang dibutuhkan oleh sebuah organisasi. Di dalam basis data, semua data yang ada
diintegrasikan untuk menghindari terjadinya duplikasi data. Basis data dapat digunakan
oleh banyak departemen dan pemakai. Basis data tidak hanya menyimpan data
operasional, tetapi juga menyimpan deskripsi mengenai data tersebut. Deskripsi mengenai
data dikenal dengan sebutan kamus data atau metadata.
Menurut Hoffer (2009: 46),
basis data adalah kumpulan data yang terorganisasi
dan secara logika berkaitan. Terorganisasi
maksudnya adalah data distrukturkan sehingga
mudah untuk disimpan, dimanipulasi, dan diperoleh oleh pengguna.
Menurut Elmasri dan Navathe (2004: 4), basis data adalah kumpulan file
yang
saling berhubungan. Basis data memiliki beberapa sumber dimana data tersebut
diturunkan, beberapa berasal dari interaksi dengan dunia nyata.
Menurut Whitten et. al. (2004: 23), basis data adalah kumpulan file
yang saling
terkait. Sedangkan file adalah kumpulan record yang serupa.
Jadi, basis data adalah kumpulan data atau koleksi file
yang berfungsi untuk
menyimpan data yang saling berhubungan dan terstruktur sehingga mudah untuk
disimpan, diperoleh kembali, dimanipulasi, dan dapat memenuhi kebutuhan informasi
dari suatu organisasi.
b. Arsitektur Basis Data 
Menurut Connolly dan Begg (2005: 34), ada tiga tingkatan
arsitekur basis data
(Three Level ANSI-SPARC Architecture), yaitu: 
1) Tingkat Eksternal (External Level)
Tingkat eksternal menggambarkan apa yang dilihat oleh pengguna terhadap basis data.
Level ini mendeskripsikan bagian basis data yang berhubungan dengan tiap pengguna.
  
11
Setiap kumpulan pengguna
mempunyai pandangan
masing-masing, tergantung
kebutuhan informasi dari kumpulan pengguna tersebut.
2) Tingkat Konseptual (Conceptual Level)
Tingkat konseptual menggambarkan data apa saja yang disimpan dalam basis data dan
hubungan antar data tersebut.
3) Tingkat Internal (Internal Level)
Tingkat internal
merupakan representasi fisik dari basis data yang ada di dalam
komputer. Level ini menggambarkan bagaimana data disimpan dalam suatu basis data.
Tujuan utama dari tiga level ini adalah untuk mendapatkan dan memelihara
kemandirian data agar perubahan yang terjadi pada tingkat yang lebih rendah tidak
mempengaruhi tingkat yang lebih tinggi
sehingga aplikasi yang sudah ada tidak
terpengaruh oleh perubahan-perubahan yang terjadi pada basis data.
Dalam hal ini penulis menggunakan ketiga level arsitektur basis data sebagai dasar
dalam membangun suatu aplikasi basis data dengan tujuan agar setiap pandangan
pengguna
dalam basis data
dapat direpresentasikan secara nyata, seperti dalam halnya
setiap pengguna
mampu mengakses data yang sama tetapi memiliki pandangan
yang
berbeda satu sama lainnya.
c. Manfaat Basis Data
Manfaat basis data akan terlihat lebih nyata dalam multi-user environment, dimana
basis data yang digunakan akan lebih besar dan kompleks dibandingkan basis data yang
digunakan pada single-user environment.
  
12
Menurut Date (2004: 17), keuntungan dari penggunaan basis data yaitu:
1) Compactness 
Keberadaan basis data mengurangi penggunaan kertas yang cukup besar karena semua
data yang ada akan dicatat dan disimpan pada basis data tersebut.
2) Speed
Pemanfaatan basis data memungkinkan pengguna
untuk dapat menyimpan data,
melakukan manipulasi data, dan menampilkan kembali
data tersebut dengan lebih
cepat dan mudah dibandingkan jika pengguna
menyimpan data secara manual. Hal ini
akan menghemat waktu yang diperlukan dalam melakukan pencarian data.
3) Less drudgery
Keberadaan basis data membuat penulisan tangan menjadi semakin berkurang. Basis
data mampu menggantikan tugas-tugas yang biasa dilakukan oleh manusia sehingga
efisiensi dan efektivitas pekerjaan pun semakin meningkat.
4) Currency
Basis data mampu menyediakan informasi yang akurat dan up to date sehingga semua
kebutuhan informasi dapat terpenuhi dengan cepat pada saat dibutuhkan.
5) Protection
Meningkatkan keamanan dan perlindungan data, terutama terhadap kehilangan data
dan akses yang tidak diinginkan.
2.1.4
Sistem Basis Data
Menurut Connolly dan Begg (2005: 4), sistem basis data
merupakan kumpulan
dari program aplikasi yang berinteraksi dengan basis data. 
Menurut Elmasri dan Navathe (2004: 5), sistem basis data merupakan gabungan
basis data dengan sistem pengaturan basis data.
  
13
Menurut Date (2004: 6), sistem basis data
meliputi empat komponen yang antara
lain terdiri dari data, perangkat keras (hardware), perangkat lunak (software), dan
pengguna (user).
Jadi, sistem basis data merupakan kombinasi dari beberapa program aplikasi yang
saling berhubungan dengan basis data yang berjalan sehingga keseluruhan sistem tersebut
memungkinkan
pengguna untuk menelusuri kembali dan mengubah informasi
sesuai
kebutuhan.
2.1.5 
Sistem Manajemen Basis Data
Teori sistem manajemen basis data atau DBMS (Database Management System)
yang akan dibahas adalah definisi
yang dikemukakan oleh para ahli, komponen, fungsi,
serta keuntungan dan kerugian penggunaan sistem manajemen basis data. 
a. Definisi Sistem Manajemen Basis Data
Menurut Connolly dan Begg (2005: 16), sistem
manajemen basis data
merupakan
suatu sistem piranti lunak
yang memungkinkan pengguna untuk
dapat mendefinisikan,
menciptakan, mengatur, dan mengontrol akses ke dalam basis data.
Menurut Ramakrishnan dan Gehrke (2003: 8), sistem manajemen basis data
adalah
perangkat lunak yang dirancang
untuk membantu dalam memelihara dan
menggunakan koleksi data dalam jumlah yang besar.
Jadi, sistem manajemen basis data
adalah perangkat lunak yang dirancang untuk
memudahkan pengguna dalam mendefinisikan, menciptakan, memanipulasi, memelihara,
dan mengontrol akses ke dalam basis data.
  
14
b. Komponen Sistem Manajemen Basis Data
Sistem manajemen basis data terdiri dari lima komponen utama, yaitu perangkat
keras, perangkat lunak,
data, prosedur, dan manusia. Gambar 2.1 menggambarkan lima
komponen utama sistem manajemen basis data.
Gambar 2.1 Komponen Utama Sistem Manajemen Basis Data
1) Hardware (Perangkat Keras)
Suatu DBMS menggunakan perangkat keras untuk menjalankan aplikasinya. Perangkat
keras yang digunakan dapat berupa PC (Personal Computer), mainframe, atau jaringan
komputer.
2) Software (Perangkat Lunak)
Komponen perangkat lunak meliputi perangkat lunak DBMS itu sendiri, program
aplikasi beserta sistem operasi,
termasuk perangkat lunak jaringan apabila DBMS
digunakan dalam sebuah jaringan.
3) Data
Data merupakan komponen yang paling penting dalam lingkungan DBMS, karena data
bertindak sebagai penghubung antara komponen mesin dan komponen manusia.
4) Prosedur
Prosedur merupakan instruksi dan aturan yang digunakan dalam perancangan dan
pemakaian suatu basis data.
  
15
5) Manusia
Komponen terakhir adalah manusia yang terlibat langsung dengan sistem tersebut.
Manusia tersebut dapat
berperan
sebagai programmer aplikasi,
pengguna akhir, DA
(Data Administrator), ataupun DBA (Database Administrator).
c. Fungsi Sistem Manajemen Basis Data
Menurut Connolly dan Begg (2005: 48), beberapa fungsi dari sistem manajemen
basis data adalah sebagai berikut:
1)
Data storage, retrieval, and update
Sebuah DBMS harus menyediakan kemampuan bagi pengguna untuk menyimpan,
menelusuri kembali, dan mengubah data yang ada dalam basis data.
2)
A user-accessible catalog
Sebuah DBMS harus menyediakan katalog yang dapat diakses oleh pengguna
dan
mendeskripsikan lokasi penyimpanan data dalam basis data.
3)
Transaction support
DBMS harus menyediakan mekanisme yang menjamin semua kegiatan perubahan
pada data yang berhubungan dengan transaksi dapat dikelola dengan baik.
4)
Concurrency control services
DBMS harus menyediakan sebuah mekanisme untuk menjamin bahwa basis data
terubah dengan benar ketika beberapa pengguna mengubah data tersebut pada waktu
yang bersamaan.
5)
Recovery service
DBMS harus menyediakan sebuah mekanisme untuk memperbaiki basis data yang
rusak karena suatu kejadian.
  
16
6)
Authorization service
DBMS harus menyediakan sebuah mekanisme untuk menjamin bahwa hanya
pengguna yang diberi otoritas yang dapat mengakses basis data.
7)
Support for data communication
DBMS harus mampu mendukung komunikasi data.
8)
Integrity service
DBMS harus menyediakan sebuah cara untuk menjamin bahwa data dalam basis data
telah mengikuti aturan-aturan integritas yang ada.
9)
Service to promote data independence
DBMS harus mencakup fasilitas-fasilitas yang mendukung program-program
independensi dari struktur basis data aktual.
10) Utility service
DBMS seharusnya menyediakan sekumpulan layanan utilitas agar basis data dapat
diatur atau dikelola secara efektif. Layanan utilitas ini biasanya meliputi:
a) Fasilitas mengimpor basis data;
b) Fasilitas memonitor penggunaan basis data dan operasi basis data;
c) Program analisis statistikal untuk analisis performa dan statistik pemakaian;
d) Fasilitas pengaturan kembali index.
d. Keuntungan dan Kerugian Penggunaan Sistem Manajemen Basis Data
Keuntungan dari penggunaan sistem manajemen basis data
menurut
Ramakrishnan dan Gehrke (2003: 9) antara lain:
1) Kemandirian data
Program aplikasi idealnya
memberikan rincian representasi data dan penyimpanannya,
sedangkan DBMS menyembunyikan rincian representasi data dan penyimpanannya.
  
17
2) Akses data yang efisien
DBMS menggunakan berbagai teknik
penyimpanan
dan pengambilan
data
sehingga
akses data dapat dilakukan secara efisien. 
3) Integritas dan keamanan data
Jika data selalu diakses melalui DBMS, maka DBMS dapat menjalankan batasan
integritas data. Sebagai contoh, sebelum memasukkan data gaji untuk pegawai, DBMS
dapat melakukan pemeriksaan apakah anggaran departemen mencukupi
atau tidak.
Selain itu, DBMS juga dapat menjalankan akses kontrol
bagi pengguna yang
berwenang untuk mengakses basis data.
4) Administrasi data
Ketika beberapa pengguna saling berbagi data dengan
memusatkan pada administrasi
data, tenaga profesional
dapat menawarkan peningkatan
kinerja
yang signifikan.
Tenaga profesional yang memahami sifat dasar pengelolaan data dan penggunaan data
oleh beberapa kelompok
pengguna
yang berbeda
dapat
mengatur representasi data
sehingga
meminimalkan redundansi dan melakukan tuning penyimpanan data yang
lebih baik.
5) Concurrent access dan crash recovery
DBMS melakukan penjadwalan akses data secara bersamaan sehingga pengguna
berpikir bahwa data diakses hanya oleh satu pengguna pada waktu tertentu.
Selanjutnya, DBMS akan melakukan proteksi bagi pengguna apabila terjadi kegagalan
sistem.
6) Mengurangi waktu pengembangan aplikasi
DBMS mendukung fungsi penting pada berbagai aplikasi yang mengakses data pada
DBMS. Hal ini berkaitan dengan antarmuka tingkat tinggi terhadap data dan
memberikan fasilitas pengembangan aplikasi secara cepat.
  
18
Sedangkan kerugian dari penggunaan sistem manajemen basis data
menurut
Connolly dan Begg (2005: 29) antara lain:
1) Kompleksitas
Banyaknya fungsi yang harus dimiliki oleh sebuah DBMS yang handal
membuat
DBMS menjadi sebuah perangkat lunak yang sangat kompleks.
2) Ukuran memori yang diperlukan lebih besar
Fungsi yang kompleks dan luas membuat DBMS menjadi perangkat lunak yang sangat
besar, memerlukan banyak ruang hardisk, dan jumlah memori yang besar untuk
berjalan.
3) Biaya dari DBMS
Biaya DBMS bervariasi, tergantung pada lingkungan dan fungsi yang disediakan.
Selain itu, terdapat pula biaya pemeliharaan tahunan untuk DBMS.
4) Biaya tambahan untuk perangkat keras
Kebutuhan tempat penyimpanan bagi DBMS dan basis data terkadang memerlukan
tempat penyimpanan tambahan. Untuk mencapai performa yang maksimal, mungkin
diperlukan untuk membeli mesin yang lebih besar lagi. Hal ini tentu memerlukan
tambahan biaya yang tidak sedikit, tergantung pada spesifikasi perangkat keras yang
diperlukan.
5) Biaya konversi
Dalam beberapa situasi, biaya DBMS dan perangkat keras tambahan mungkin tidak
signifikan dibandingkan dengan biaya mengonversi aplikasi yang ada untuk berjalan di
DBMS baru. Biaya ini juga mencakup biaya pelatihan pegawai untuk menggunakan
sistem baru dan mungkin biaya kerja staf spesialis untuk membantu proses konversi
dan menjalankan sistem baru.
  
19
6) Kinerja menurun akibat penggunaan DBMS
Pada dasarnya, sistem berbasis file digunakan untuk aplikasi yang spesifik sehingga
performa sistem sangat baik. Sedangkan
DBMS digunakan untuk melayani banyak
aplikasi sehingga beberapa aplikasi mungkin menjadi tidak secepat sebelumnya.
7) Kemungkinan gagal yang tinggi
Sentralisasi sumber daya meningkatkan kerentanan sistem,
karena semua pengguna
dan aplikasi bergantung pada ketersediaan DBMS. Kegagalan komponen tertentu dapat
menyebabkan terhentinya operasi.
2.1.6  Structured Query Language 
Menurut Connolly dan Begg (2005: 113),
SQL (Structured
Query Language)
adalah transform oriented
language, atau bahasa yang dirancang dengan penggunaan
relasi untuk mengubah masukan menjadi keluaran yang dibutuhkan.
Ada dua komponen utama dalam SQL, yaitu Data Definition Language dan Data
Manipulation Language.
a. Data Definition Language 
DDL (Data Definition Language) adalah bahasa yang mengizinkan pengguna
untuk menciptakan dan menghapus objek basis data, misalnya schema, table, view, index,
dan domain. Berikut ini adalah perintah
utama
yang ada di
dalam SQL untuk Data
Definition Language:
1) CREATE 
CREATE digunakan
untuk membuat
objek dalam basis data. Pada umumnya,
yang
memiliki
wewenang
untuk menggunakan perintah ini adalah DBA (Database
  
20
Administrator). Ia memiliki wewenang untuk CREATE schema,
CREATE domain,
CREATE table, dan CREATE view. 
2) ALTER 
ALTER digunakan untuk
mengubah
objek dalam basis data. Perubahan-perubahan
yang dapat dilakukan oleh perintah ini meliputi penambahan dan penghapusan kolom
dalam tabel, membuat dan menghapus batasan pada tabel, serta menetapkan dan
menghapus standar dari suatu kolom.
3) DROP 
DROP digunakan
untuk menghapus
objek dalam basis data. Perintah DROP dapat
dibagi menjadi dua tipe,
yaitu RESTRICT dan CASCADE. Apabila
pengguna
menggunakan tipe RESTRICT,
maka perintah DROP akan ditolak jika terdapat objek
lain
yang bergantung
pada
objek tersebut.
Sedangkan untuk tipe CASCADE, operasi
DROP dilakukan sesuai dengan perintah yang diinginkan. 
b. Data Manipulation Language 
DML (Data Manipulation Language) adalah bahasa yang mengizinkan pengguna
untuk memasukkan, memperbarui, menghapus, dan mengambil data dari basis data.
Berikut ini adalah perintah utama yang ada di dalam SQL untuk Data Manipulation
Language:
1) SELECT 
Perintah SELECT digunakan untuk mengambil
dan menampilkan
data yang
berasal
dari satu atau lebih tabel pada basis data.
Dalam penggunaannya, perintah SELECT
harus diikuti dengan klausa FROM. 
  
21
2) INSERT
Perintah INSERT digunakan untuk memasukkan
data baru ke dalam basis data.
Sebelum perintah INSERT digunakan, pengguna perlu membuat tabel terlebih dahulu
dengan menggunakan perintah CREATE pada DDL.
3) UPDATE
Perintah
UPDATE digunakan untuk memperbarui data dalam basis data. Dalam
penggunaannya,
perintah UPDATE harus diikuti dengan klausa SET
untuk
menspesifikasikan nama kolom yang ingin diperbaharui.
4) DELETE 
Perintah DELETE digunakan untuk menghapus data dalam basis data. Dalam
penggunaannya, perintah DELETE harus diikuti dengan klausa FROM untuk
menentukan nama tabel yang datanya akan dihapus.
2.1.7  Entity-Relationship Modeling
Menurut Connolly dan Begg (2005: 342), ER Modeling
(Entity-Relationship
Modeling) adalah salah satu model yang dapat digunakan untuk
mendapatkan
pemahaman
yang tepat terhadap
data dan bagaimana penggunaannya di dalam suatu
perusahaan.
Entity-Relationship Modeling
menggunakan pendekatan top-down,
dimulai
dengan mengidentifikasikan data yang penting. Data yang
penting itu disebut entitas,
dimana hubungan di antaranya
harus
direpresentasikan dalam model dan kemudian
ditambahkan beberapa atribut dan batasan.
Kebalikan dari pendekatan top-down, pendekatan bottom-up
dimulai dengan
mengidentifikasikan data item (atribut
dan
relasi), kemudian mengidentifikasikan
  
22
entitasnya.
Oleh karena itu, pendekatan bottom-up tidak efektif
digunakan untuk
pembuatan ER Modeling skala besar.
Ada lima komponen
dalam
ER Modeling, yaitu
tipe entitas, tipe relasi, atribut,
keys, dan structural constraints.
 
a. Tipe Entitas
Tipe entitas
adalah sekumpulan objek dengan properti yang sama,
yang
diidentifikasi oleh perusahaan, dan memiliki keberadaan yang
independen. Keberadaan
tipe entitas
dapat berupa keberadaan fisik
(physical existence) atau abstrak
(conceptual
existence). Tipe entitas dapat diklasifikasikan menjadi dua jenis, yaitu:
1) Strong entity, yaitu tipe entitas
yang keberadaannya
tidak bergantung pada entitas
lainnya. Strong entity disebut juga sebagai parent, owner, ataupun dominant.
2) Weak entity, yaitu tipe entitas
yang keberadaannya
bergantung pada entitas lainnya.
Weak entity disebut juga sebagai child, dependent, ataupun subordinate.
b. Tipe Relasi
Tipe relasi
adalah sekumpulan asosiasi antara entitas-entitas
yang ada dan
mempunyai arti.
Relasi
mewakili atau menghubungkan antara dua atau lebih entitas
(Atzeni et. al., 2003: 165).
Relationship occurrence adalah sekumpulan asosiasi yang dapat diidentifikasikan
secara unik, yang meliputi satu kejadian dari setiap entitas yang berpartisipasi.
Derajat dari tipe relasi adalah jumlah dari entitas yang berpartisipasi dalam sebuah
relasi
tertentu. Entitas yang berpartisipasi dalam sebuah relasi disebut sebagai participant
dalam relasi tersebut. 
  
23
Recursive relationship adalah sebuah relasi
dimana entitas
yang sama dapat
berpartisipasi lebih dari satu kali dengan peran yang berbeda.
c. Atribut
Atribut merupakan sifat-sifat atau properti dari sebuah entitas atau relasi.
Atribut
menggambarkan sifat dasar dari entitas dan hubungannya (Atzeni et. al., 2003: 168).
Domain atribut adalah kumpulan nilai yang diperbolehkan untuk satu atau lebih
atribut.
Ada tiga jenis atribut yang biasa digunakan dalam ER Modeling, yaitu:
1) Simple dan Composite Attributes
Simple attribute adalah atribut yang terdiri dari satu komponen tunggal yang
keberadaannya independen.
Atribut ini sering disebut
juga sebagai atomic attribute.
Simple attribute tidak dapat dibagi lagi menjadi komponen yang lebih kecil. Composite
attribute adalah atribut yang terdiri dari
banyak komponen yang keberadaannya
independen. Atribut ini dapat dibagi
menjadi komponen lain yang lebih kecil, yang
masing-masing memiliki keberadaan yang independen.
2) Single-Valued dan Multi-Valued Attributes
Single-valued attribute adalah atribut yang memiliki nilai tunggal untuk setiap
kejadian. Multi-valued attribute adalah atribut yang memiliki banyak nilai untuk setiap
kejadian.
3) Derived Attributes
Derived attribute adalah atribut yang nilainya dihasilkan dari satu atau beberapa atribut
lainnya dan tidak harus berasal dari satu entitas.
  
24
d. Keys
Ada lima jenis keys yang biasa digunakan dalam ER Modeling, yaitu:
1) Candidate Key
Candidate key
merupakan sejumlah kecil atribut dari entitas yang dapat
mengidentifikasikan setiap kejadian dari entitas tersebut secara unik. 
2) Primary Key
Primary key merupakan candidate key yang dipilih untuk mengidentifikasikan setiap
kejadian dari entitas secara unik. Pemilihan primary key pada suatu entitas didasarkan
pada pertimbangan panjang atribut, jumlah minimal
atribut yang dibutuhkan,
serta
tingkat keunikannya.
3) Alternate Key
Alternate key merupakan kumpulan candidate key yang tidak terpilih menjadi primary
key.
4) Composite Key
Composite key merupakan candidate key yang terdiri dari dua atau lebih atribut.
5) Foreign Key
Foreign key merupakan sebuah atribut atau sekumpulan atribut pada suatu relasi yang
sama atau sesuai dengan candidate key dari relasi lainnya.
e. Structural Constraints
Ada dua komponen
dalam
structural constraints, yaitu
multiplicity
serta
cardinality dan participation constraints.
Berikut ini adalah penjelasan dari masing-
masing komponen:
  
25
1) Multiplicity
Multiplicity adalah jumlah kejadian
yang mungkin terjadi pada sebuah entitas yang
berhubungan dengan kejadian
dari entitas
lainnya melalui suatu relasi.
Derajat relasi
yang biasa digunakan adalah binary relationship. Ada tiga tipe binary
relationship
yang biasanya digunakan, yaitu:
a)
Derajat hubungan one-to-one (1:1)
Derajat hubungan 1:1 terjadi bila tiap anggota suatu
entitas hanya boleh
berpasangan dengan satu anggota dari
entitas yang lain. Begitu pula
sebaliknya,
anggota dari entitas yang lain hanya boleh berpasangan dengan satu anggota dari
entitas tersebut.
b) Derajat hubungan one-to-many (1:*)
Derajat hubungan 1:* terjadi bila tiap anggota suatu entitas boleh memiliki
pasangan
lebih dari satu anggota dari entitas lain. Dan sebaliknya, anggota dari
entitas yang lain hanya boleh berpasangan dengan satu anggota dari entitas tersebut.
c)
Derajat hubungan many-to-many (*:*)
Derajat hubungan *:* terjadi apabila tiap anggota suatu entitas boleh memiliki
pasangan
lebih dari satu anggota dari entitas lain dan anggota dari entitas yang lain
juga boleh memiliki pasangan lebih dari satu anggota dari entitas tersebut.
2) Cardinality dan Participation Constraints
Menurut Connolly dan Begg (2005: 363), pada dasarnya multiplicity terdiri atas dua
batasan yang berbeda, yaitu:
a)
Cardinality, mendeskripsikan nilai maksimum dari
relasi
yang mungkin terjadi
untuk entitas yang ikut serta pada relasi tersebut.
b) Participation, menentukan apakah semua atau hanya
beberapa entitas yang ikut
berpartisipasi
dalam sebuah
relasi. Participation constraint dibagi menjadi
dua
  
26
jenis, yaitu
mandatory participation dan optional participation. Mandatory
participation melibatkan semua entitas
pada relasi
tertentu.
Sedangkan optional
participation melibatkan beberapa entitas pada relasi tertentu.
2.1.8  Normalisasi
Menurut Connolly dan Begg (2005: 388), normalisasi adalah suatu teknik yang
digunakan untuk menghasilkan seperangkat relasi yang memiliki properti
yang sesuai
dengan kebutuhan perusahaan. Tujuan utama dari normalisasi adalah untuk mengurangi
terjadinya redundansi data dan mengurangi masalah yang terjadi pada suatu relasi, yang
dikenal dengan sebutan anomaly.
Anomaly adalah suatu masalah yang timbul, seperti data ganda, data hilang,
tempat penyimpanan memori yang boros, dan data yang tidak konsisten akibat dari proses
penghapusan data, pembaruan data, pemasukan data, dan pergantian data. 
Berikut ini adalah beberapa tingkatan normalisasi:
a.
Unnormalized Form (UNF)
Unnormalized Form (UNF) adalah suatu tabel yang terdiri dari
satu atau lebih
kelompok berulang (repeating group). Kelompok berulang adalah sebuah atribut atau
himpunan atribut di dalam tabel yang memiliki lebih dari satu nilai untuk keberadaan
tunggal.
b.
First Normal Form (1NF)
Suatu relasi dikatakan 1NF jika titik temu tiap baris dan kolom pada relasi tersebut
mengandung satu dan hanya satu nilai. Atau dapat dikatakan sebuah relasi akan berada
dalam bentuk 1NF jika kelompok perulangan
telah hilang. Proses-proses
yang
dilakukan untuk mengubah UNF menjadi 1NF adalah sebagai berikut:
  
27
1) Pilih satu atau sekumpulan atribut sebagai key untuk unnormalized table;
2) Identifikasi kelompok perulangan yang terdapat pada unnormalized table;
3) Hilangkan
kelompok perulangan
yang ada,
dengan cara memindahkan kelompok
perulangan
tersebut ke dalam relasi
baru
yang terpisah dan meninggalkan
salinan
dari primary key.
c.
Second Normal Form (2NF)
Relasi dikatakan 2NF jika relasi tersebut telah berada pada 1NF dan setiap atribut yang
bukan primary key memiliki ketergantungan penuh
(fully functionally dependent)
terhadap primary key.
Ketergantungan penuh
terjadi jika A dan B
merupakan atribut
dari suatu relasi, dan B dikatakan bergantung penuh terhadap A (A
B), namun bukan
merupakan subset dari A. Proses-proses yang dilakukan untuk mengubah 1NF menjadi
2NF adalah sebagai berikut:
1) Identifikasi primary key untuk relasi 1NF;
2) Identifikasi ketergantungan fungsional dalam relasi;
3) Jika terdapat ketergantungan parsial terhadap primary key, maka hilangkan dengan
menempatkannya dalam relasi yang baru dan meninggalkan salinan dari primary
key.
d.
Third Normal Form (3NF)
Suatu relasi dikatakan 3NF jika relasi tersebut berada dalam bentuk 1NF dan 2NF,
serta tidak ada atribut yang bukan primary key bergantung secara transitif (transitively
dependent) terhadap primary key. Ketergantungan transitif
terjadi dalam kondisi
dimana A, B, dan C merupakan atribut dari suatu relasi, serta A
B dan B
C. Maka
dapat dikatakan C bergantung secara transitif terhadap A melalui B.
Proses-proses
yang dilakukan untuk mengubah 2NF menjadi 3NF adalah sebagai berikut:
  
28
1) Identifikasi primary key untuk relasi 2NF;
2) Identifikasi ketergantungan fungsional dalam relasi;
3) Jika terdapat ketergantungan transitif terhadap primary key, maka hilangkan dengan
menempatkannya dalam relasi yang baru dan meninggalkan salinan dari primary
key.
2.1.9  Metodologi Perancangan Basis Data
Menurut Connolly dan Begg (2005: 291), perancangan basis data merupakan
suatu proses menciptakan rancangan basis data yang akan mendukung operasi dan tujuan
perusahaan.
Metodologi perancangan basis data terdiri dari tahapan-tahapan yang
membimbing perancang
dalam menggunakan teknik yang tepat pada setiap tahapan
pembuatan proyek, terutama dalam merencanakan, melaksanakan, mengatur, dan
mengevaluasi perkembangan perancangan basis data.
Terdapat tiga tahapan utama dalam perancangan basis data, yaitu perancangan
basis data konseptual (conceptual database design), perancangan basis data logikal
(logical database design), dan perancangan basis data fisikal (physical database design).
2.1.9.1  Perancangan Basis Data Konseptual
Perancangan basis data konseptual adalah proses membangun sebuah model dari
data yang digunakan di perusahaan dan terlepas dari semua pertimbangan fisikal.
Langkah-langkah yang dilakukan dalam perancangan basis data konseptual
adalah
sebagai berikut:
  
29
a.
Mengidentifikasi tipe entitas
Menentukan dan mendefinisikan objek-objek utama yang menjadi perhatian utama dari
pengguna. Identifikasi entitas ini terdiri dari nama entitas, deskripsi dari entitas, alias,
dan kejadian. Salah satu metode dalam mengidentifikasi entitas adalah dengan melihat
rincian kebutuhan pengguna.
b.
Mengidentifikasi tipe relasi
Mengidentifikasi semua relasi yang ada antara masing-masing entitas. Identifikasi
relasi ini terdiri dari nama entitas, multiplicity, dan nama relasi.
c.
Mengidentifikasi dan mengasosiasikan atribut dengan tipe entitas atau relasi
Menghubungkan atribut dengan entitas atau relasi yang sesuai. Identifikasi atribut ini
terdiri dari nama entitas, atribut, deskripsi dari atribut, tipe data, nulls, dan multi
valued.
d.
Menentukan domain atribut
Domain yang ditetapkan untuk setiap atribut meliputi kumpulan nilai yang
diperbolehkan, ukuran, dan format dari setiap atribut tersebut.
e. Menentukan candidate, primary, dan alternate key
Mengidentifikasi satu atau lebih atribut untuk menjadi candidate key. Kemudian jika
terdapat lebih dari satu candidate key, maka pilihlah salah satu menjadi primary key
dan yang lainnya menjadi alternate key.
f.
Mempertimbangkan penggunaan enhanced modeling concept (optional)
Mempertimbangkan penggunaan enhanced modeling concept, seperti spesialisasi,
generalisasi, agregasi, dan komposisi.
g.
Memeriksa redundansi pada model data konseptual
Untuk menguji model data dari redundansi, yang harus dilakukan adalah sebagai
berikut:
  
30
1) Memeriksa ulang relasi one-to-one (1:1);
2) Menghilangkan relasi yang berulang.
h.
Memvalidasi model data konseptual dengan transaksi pengguna
Memastikan bahwa model data konseptual dapat mendukung transaksi yang
diperlukan. Dilakukan dengan mendeskripsikan transaksi
dan menggunakan jalur
transaksi.
i.
Melakukan tinjauan model data konseptual dengan pengguna
Memastikan model data konseptual sudah sesuai dengan kebutuhan pengguna
dan
dapat menjadi representasi nyata dari kebutuhan perusahaan.
2.1.9.2  Perancangan Basis Data Logikal
Perancangan basis data logikal adalah proses membangun sebuah model data yang
digunakan di perusahaan berdasarkan pada sebuah model data
yang
spesifik, tetapi
terlepas dari DBMS tertentu dan pertimbangan fisikal lainnya.
Langkah-langkah yang dilakukan dalam perancangan basis data logikal
adalah
sebagai berikut:
a.
Membuat relasi untuk model data logikal
Membuat relasi dalam model data logikal yang dapat menggambarkan entitas, relasi,
dan atribut yang telah diidentifikasi.
b.
Memvalidasi relasi dengan normalisasi
Normalisasi adalah suatu teknik yang digunakan untuk menghasilkan seperangkat
relasi yang memiliki properti yang sesuai dengan kebutuhan perusahaan. Tujuan utama
dari normalisasi adalah untuk mengurangi terjadinya redundansi data dan mengurangi
masalah yang terjadi pada suatu relasi yang dikenal dengan sebutan anomaly.
  
31
c.
Memvalidasi relasi dengan transaksi pengguna
Memastikan model data logikal yang telah dibuat dapat mendukung transaksi yang
dibutuhkan, seperti yang ada dalam rincian kebutuhan pengguna.
d.
Menentukan integrity constraints
Integrity constraints yang perlu dipertimbangkan adalah:
1) Data tidak boleh berupa null;
2) Domain constraint dari setiap atribut;
3) Multiplicity;
4) Primary key dari entitas tidak boleh berupa null;
5) Jika foreign key berisi suatu nilai, maka nilai tersebut harus menunjuk kepada tuple
yang ada pada relasi parent;
6) General constraints.
e.
Melakukan tinjauan model data logikal dengan pengguna
Pengguna
diminta untuk memeriksa kembali model data
logikal untuk memastikan
bahwa model data logikal tersebut sudah sesuai untuk menjadi representasi nyata dari
kebutuhan perusahaan.
f.
Menggabungkan model data logikal menjadi model global (optional)
Meskipun setiap model data logikal haruslah benar, dapat dipahami, dan tidak ambigu,
setiap model tersebut hanya mewakili sebagian dari basis data yang lengkap. Oleh
karena itu,
harus dilakukan penggabungan model data logikal menjadi model global
yang digunakan untuk memecahkan konflik antar view dan overlap yang ada.
g.
Memeriksa pertumbuhan di masa mendatang
Menduga apakah terjadi perubahan yang signifikan di
masa depan dan untuk menaksir
apakah model data logikal dapat menyesuaikan dengan perubahan tersebut.
  
32
2.1.9.3  Perancangan Basis Data Fisikal
Perancangan basis data fisikal adalah proses untuk menghasilkan suatu deskripsi
implementasi dari suatu basis data pada penyimpanan sekunder, juga menjelaskan relasi
dasar, pengaturan file dan index yang digunakan untuk mencapai akses data yang efisien,
integrity constraints, serta mekanisme keamanan.
Langkah-langkah yang dilakukan dalam perancangan basis data fisikal adalah
sebagai berikut:
a.
Menerjemahkan model data logikal untuk target DBMS 
Menghasilkan skema basis data yang saling berelasi dari model data logikal, yang
dapat diimplementasikan pada target DBMS. Dimulai dari merancang relasi dasar,
representasi dari derived data, dan general constraints.
b.
Merancang file organizations dan indexes
Menentukan organisasi file
yang paling baik untuk menyimpan relasi dasar dan index
yang diperlukan untuk mencapai akses data yang efisien, serta
bagaimana relasi dan
tuple
disimpan pada penyimpanan sekunder. Berikut ini adalah empat tahapan dalam
merancang organisasi file dan index:
1) Menganalisis transaksi;
2) Memilih file organizations;
3) Memilih indexes;
4) Mengestimasi kebutuhan disk space.
Salah satu jenis index yang dapat dibuat untuk mempercepat pencarian data di dalam
basis data
adalah clustered index.
Menurut Ciocola dan Georgescu (2011: 14),
clustered index adalah index yang terdiri dari data di dalam tabel yang disusun secara
fisikal. Ketika membuat clustered index
pada sebuah tabel, baris-baris data disusun
  
33
kembali pada disk berdasarkan kata kunci yang dijadikan index secara berurutan. Oleh
karena itu, hanya ada satu clustered index yang dapat dibentuk dalam satu tabel. 
c.
Merancang mekanisme keamanan
Merancang mekanisme keamanan untuk basis data yang ditetapkan oleh pengguna
selama
proses pengumpulan kebutuhan perusahaan dan tingkatan dalam siklus hidup
basis data.
d.
Mempertimbangkan petunjuk controlled redundancy
e.
Memonitor dan memperbaiki sistem operasional
Memonitor dan meningkatkan performa dari sistem dengan memperbaiki rancangan
yang tidak sesuai dengan kebutuhan.
2.1.10  Siklus Hidup Basis Data
Menurut Connolly dan Begg (2005: 283),
siklus hidup basis data
atau
DBLC
(Database Life Cycle) merupakan komponen yang terpenting dalam sistem basis data.
Pada aplikasi basis data berskala kecil yang jumlah penggunanya
sedikit, siklus
hidup pengembangan aplikasi basis datanya tidak akan terlalu kompleks. Sebaliknya bila
aplikasi dibuat dalam skala yang lebih
besar atau kompleks dengan jumlah pengguna
antara puluhan sampai ribuan, serta menggunakan ratusan queries dan program aplikasi,
siklus hidup
pengembangan aplikasi basis datanya pun akan menjadi lebih kompleks.
Gambar 2.2 menggambarkan tahapan DBLC. 
  
34
Gambar 2.2 Tahapan DBLC
  
35
Berikut ini adalah Tabel 2.1 yang berisi rangkuman
aktivitas utama yang
dilakukan pada setiap tahapan DBLC:
Tabel 2.1 Tahapan dan Aktivitas Utama DBLC
Tahapan DBLC
Aktivitas Utama
Database Planning
Merencanakan bagaimana tahapan dari DBLC dapat terealisasi
dengan efektif dan efisien.
System Definition
Menspesifikasikan ruang lingkup dari sistem basis data.
Requirements Collection
and Analysis
Mengumpulkan dan menganalisis kebutuhan dari sistem basis
data yang baru.
Database Design
Perancangan basis data konseptual, logikal, dan fisikal.
DBMS Selection
Memilih DBMS yang sesuai dengan sistem basis data.
Application Design
Merancang
antarmuka pengguna
dan program aplikasi yang
akan memproses basis data.
Prototyping (optional)
Membangun model untuk sistem basis data yang
memungkinkan perancang
untuk memvisualisasikan dan
mengevaluasi sistem akhir.
Implementation
Membuat definisi fisikal dari basis data dan aplikasinya.
Data Conversion and
Loading
Memasukkan data lama ke dalam basis data baru dan
mengubah koneksi dari aplikasi lama ke sistem basis data
baru.
Testing
Basis data diperiksa kembali untuk mengetahui kesalahan dan
divalidasi terhadap kebutuhan pengguna.
Operational
Maintenance
Sistem basis data diimplementasikan secara keseluruhan dan
diperiksa secara berkesinambungan. Saat dibutuhkan,
kebutuhan baru dapat ditambahkan melalui tahapan DBLC.
  
36
Berikut ini adalah penjelasan dari masing-masing
tahapan DBLC yang ada pada
Gambar 2.2:
a.
Database Planning
Database planning
adalah merencanakan bagaimana langkah-langkah dari DBLC
dapat diterapkan dalam sistem basis data secara efektif dan efisien. Ada tiga isu pokok
dalam merumuskan suatu strategi sistem informasi, yaitu:
1) Mengidentifikasikan rencana dan tujuan dengan menentukan sistem informasi yang
diperlukan;
2) Mengevaluasi sistem informasi yang ada sekarang untuk
menentukan kekuatan dan
kelemahan yang ada;
3) Memperkirakan peluang IT yang mungkin menghasilkan keuntungan kompetitif.
b.
System Definition
System definition menjelaskan cakupan dan batasan-batasan dari sistem basis data dan
pandangan pengguna
yang utama.
Pandangan pengguna
sangat diperlukan untuk
mengidentifikasikan informasi-informasi yang dibutuhkan oleh pengguna. Pandangan
pengguna akan mendefinisikan apa saja yang harus ada dalam suatu sistem basis data.
c.
Requirements Collection and Analysis
Requirements collection and analysis
adalah
proses pengumpulan dan analisis
informasi tentang bagian organisasi yang akan didukung oleh aplikasi basis data, serta
menggunakan informasi tersebut
untuk mengidentifikasikan kebutuhan pengguna
terhadap sistem yang baru. Teknik pencarian fakta adalah teknik yang digunakan untuk
mendapatkan informasi yang dibutuhkan. 
  
37
Ada lima teknik pencarian fakta yang biasanya digunakan, yaitu:
1) Pemeriksaan dokumen (examining documentation)
Dokumentasi dapat digunakan untuk membantu menyediakan
informasi perusahaan
berkaitan dengan masalah yang sedang
dihadapi. Dengan mempelajari dokumen,
formulir, laporan
dan file yang berhubungan dengan sistem yang ada,
pemahaman
tentang sistem dapat dengan mudah diperoleh.
2) Wawancara
Dengan wawancara, maka informasi akan didapatkan langsung dari individu-
individu yang bersangkutan. Tujuan dilakukan wawancara adalah untuk
menemukan fakta, memverifikasi, mengklarifikasi, menampilkan antusiasme,
melibatkan pengguna akhir, mengidentifikasi kebutuhan, dan mendapatkan opini
dari orang yang berkepentingan.
3) Observasi
Observasi adalah salah satu teknik yang paling efektif untuk memahami sebuah
sistem. Dengan teknik observasi, informasi dapat ditemukan dengan berpartisipasi
dan mengawasi sistem yang ada secara langsung.
4) Penelitian
Penelitian adalah suatu teknik yang dilakukan dengan meneliti aplikasi dan masalah
yang ada. Sebagai tambahan, dapat digunakan majalah-majalah, buku-buku, dan
internet
sebagai sumber informasi. Dari hasil riset, akan didapatkan informasi
tentang bagaimana masalah serupa dapat dipecahkan.
5) Kuesioner
Kuesioner adalah salah satu cara pengumpulan fakta dari sejumlah orang dengan
menggunakan suatu dokumen. Teknik ini sangat efisien ketika ingin mengumpulkan
informasi dari banyak orang.
  
38
d.
Database Design
Database design merupakan proses menciptakan rancangan untuk basis data yang akan
mendukung operasi dan tujuan perusahaan.
Proses perancangan basis data dibagi
menjadi tiga tahapan utama, yaitu:
1) Perancangan basis data konseptual;
2) Perancangan basis data logikal;
3) Perancangan basis data fisikal.
e.
DBMS Selection
Menurut Connolly dan Begg (2005: 296), tahapan dalam DBMS selection, yaitu:
1) Mempelajari DBMS yang ada dan yang sesuai dengan kriteria kebutuhan pengguna;
2) Membatasi pilihan DBMS menjadi dua atau tiga pilihan saja;
3) Mengevaluasi produk DBMS;
4) Merekomendasikan produk DBMS yang terbaik dan membuat dokumentasi dari
tahapan pemilihan tersebut.
f.
Application Design
Application design adalah merancang antarmuka pengguna dan program aplikasi yang
akan memproses basis data. Harus dipastikan bahwa semua kebutuhan pengguna
tersedia di dalam rancangan aplikasi basis data.
g.
Prototyping (optional)
Prototyping adalah proses membangun sebuah model kerja dari aplikasi basis data.
Tujuan utama prototyping adalah memungkinkan pengguna
menggunakan prototype
untuk mengidentifikasi fitur-fitur yang bekerja dengan baik pada sistem, atau fitur-fitur
yang masih kurang, dan memberikan masukan fitur-fitur baru ke dalam aplikasi basis
data.
  
39
h.
Implementation
Implementation merupakan realisasi fisik dari basis data dan rancangan
aplikasi.
Implementasi basis data dapat dicapai dengan menggunakan:
1) DDL (Data Definition Language), digunakan untuk membuat skema basis data atau
file basis data yang masih kosong dan juga untuk mengimplementasikan pandangan
pengguna yang diinginkan;
2) Third Generation Language atau Fourth Generation Language (3GL atau 4GL)
digunakan untuk membuat program aplikasi, termasuk transaksi basis data yang
disertakan dengan menggunakan DML (Data Manipulation Language).
i.
Data Conversion and Loading
Data conversion and
loading merupakan pemindahan data yang ada dan
mengonversikannya dengan beberapa aplikasi, agar dapat dijalankan pada basis data
yang baru. Tahapan ini dibutuhkan hanya ketika sistem basis data yang baru
menggantikan sistem yang lama. Pada saat ini, DBMS
sangat bermanfaat untuk
memanggil file yang sudah ada ke dalam basis data yang baru.
j.
Testing
Testing adalah suatu proses eksekusi program aplikasi dengan tujuan untuk mencari
kesalahan, dengan menggunakan strategi tes yang direncanakan dan data yang
sesungguhnya.
Apabila ditemukan adanya kesalahan, maka akan dilakukan perbaikan
terhadap basis data dan aplikasi yang telah dibuat sebelumnya.
k.
Operational Maintenance
Operational maintenance merupakan proses mengawasi dan memelihara sistem setelah
dilakukannya instalasi. Aktivitas yang terdapat pada operational maintenance yaitu:
1) Mengawasi kinerja sistem;
2) Memelihara dan memperbarui aplikasi basis data (jika dibutuhkan).
  
40
2.1.11  Data Flow Diagram 
Menurut Whitten et. al.
(2004: 326), DFD (Data Flow Diagram)
adalah model
proses yang digunakan untuk menggambarkan aliran data melalui sebuah sistem dan
tugas atau pengolahan yang dilakukan oleh sistem. Tabel 2.2 berisi notasi-notasi yang ada
pada DFD.
Tabel 2.2 Notasi pada DFD
Simbol
Keterangan
Process
adalah kerja yang dilakukan sebagai respon terhadap aliran
data masuk atau kondisi. Sinonimnya adalah transformasi.
Data Flow
menunjukkan input
data ke proses atau output
data (atau
informasi) dari proses.
External Agent
mendefinisikan orang, unit organisasi, sistem lain, atau
organisasi lain, yang berada di luar lingkup proyek tetapi
berinteraksi dengan sistem.
Data Store
adalah inventori data yang ditujukan untuk penggunaan
selanjutnya. Sinonimnya adalah file dan basis data.
2.1.12  Bagan Alir 
Menurut Indrajani (2011: 22), bagan alir (flow chart) merupakan grafik atau bagan
arus yang menggambarkan langkah-langkah penyelesaian suatu masalah. Fungsi lain dari
bagan alir yaitu untuk menggambarkan tahapan-tahapan penyelesaian suatu masalah
secara sederhana, rapi, dan jelas, serta dapat membantu para pembuat aplikasi
untuk
  
41
memecahkan masalah ke dalam bagian-bagian kecil.
Tabel 2.3
berisi notasi-notasi yang
ada pada bagan alir.
Tabel 2.3 Notasi pada Bagan Alir
Simbol
Keterangan
Document
menggambarkan semua jenis dokumen, merupakan formulir
yang digunakan untuk mencatat data.
Connector 
penghubung bagian-bagian flow chart di halaman lain.
Jika untuk menggambarkan flow chart
suatu sistem
diperlukan lebih dari satu halaman, simbol ini harus
digunakan untuk menunjukkan ke
mana dan bagaimana flow
chart terkait satu dengan lainnya.
Manual Operation 
menggambarkan pekerjaan manual.
Decision
menggambarkan keputusan yang harus dibuat dalam proses
pengolahan data. 
Flowline
merepresentasikan alur kerja.
Terminal Point
merepresentasikan awal atau akhir flow chart.
  
42
2.1.13  Internet
Menurut Connolly dan Begg (2005: 994), internet
adalah sekumpulan jaringan
komputer yang saling terkoneksi.
Menurut Williams dan Sawyer (2007: 17), internet
disebut sebagai induk dari
semua jaringan, karena internet
menghubungkan ratusan bahkan ribuan jaringan yang
lebih kecil di seluruh dunia. Jaringan yang lebih kecil dapat berupa jaringan pendidikan,
komersial, militer, bahkan jaringan individual.
2.1.14  World Wide Web 
Menurut Connolly dan Begg (2005: 998), World Wide Web
(WWW) adalah
sistem berbasis hypermedia
yang menyediakan penelusuran informasi pada internet
secara tidak berurutan dengan menggunakan hyperlinks.
Menurut Williams dan Sawyer (2007: 17), World Wide Web
atau yang sering
disebut web adalah komponen internet yang berupa multimedia. Web didefinisikan
sebagai sistem interkoneksi komputer internet
(disebut server)
yang mendukung
dokumen-dokumen berformat multimedia. Kata multimedia yang berarti banyak media,
berkaitan dengan teknologi yang menyajikan informasi di lebih dari satu media, misalnya
teks, gambar tidak bergerak, gambar bergerak, dan suara. Dengan kata lain, web
menyediakan informasi dalam beragam bentuk.
2.1.15  Terminologi Internet dan Web
Terminologi internet
dan web
yang akan dibahas yaitu web browser, Uniform
Resource Locator,
hypertext, Hypertext Markup Language, Transmission Control
Protocol/Internet Protocol, dan Hypertext Transfer Protocol.
  
43
a. Web Browser
Menurut Williams dan Sawyer (2007: 64), web browser atau yang sering disebut
browser
adalah perangkat lunak yang memungkinkan pengguna untuk mencari dan
mengakses beragam komponen web.
Menurut Turban et. al. (2004: 483), web browser adalah aplikasi perangkat lunak
yang digunakan oleh pengguna untuk mengakses web. Web browser
menjadi alat akses
umum karena memberikan tampilan yang sama pada berbagai sistem operasi.
b. Uniform Resource Locator  
Menurut Williams dan Sawyer (2007: 66), URL (Uniform Resource Locator)
adalah kumpulan karakter yang menunjuk pada potongan informasi khusus di bagian
mana saja pada web. Dengan kata lain, URL adalah alamat situs web yang unik (tidak ada
dua situs berbeda yang memiliki alamat sama).
Menurut Turban et. al. (2004: 483), URL
adalah sekumpulan karakter yang
mengidentifikasikan alamat dari suatu sumber yang spesifik pada web.
c. Hypertext
Menurut Williams dan Sawyer (2007: 68), hypertext adalah koneksi ke dokumen
atau halaman web lain yang berisi informasi terkait. Hypertext sering juga disebut
hyperlink, hotlink, atau link.
Menurut Whitten et. al. (2004: 627), hypertext dibuat untuk menavigasi di dalam
dan di antara halaman situs web. Kata, istilah, atau frasa yang ditandai sebagai sebuah
hypertext biasanya diformat sebagai teks bergaris bawah dengan warna tertentu.
  
44
d. Hypertext Markup Language  
Menurut Williams dan Sawyer (2007: 67), HTML (Hypertext Markup Language)
adalah sekumpulan perintah khusus (disebut
tag
atau markup) yang dipakai untuk
menentukan struktur, bentuk, dan link pada dokumen ke dokumen multimedia lain di web.
Menurut Turban et. al. (2004: 482), HTML
merupakan bahasa standar bagi web
yang memformat dokumen dan menyatukan link
dynamic hypertext ke penyimpanan
dokumen lain pada komputer yang sama ataupun berbeda. 
e. Transmission Control Protocol/Internet Protocol 
Menurut Williams dan Sawyer (2007: 62), TCP/IP (Transmission Control
Protocol/Internet Protocol) adalah protokol yang memungkinkan
semua komputer
menggunakan data yang ditransmisikan melalui internet. TCP/IP digunakan pada semua
transaksi internet, mulai dari mengirim email sampai dengan mengunduh
gambar dari
suatu situs web.
Menurut Turban et. al. (2004: 469), TCP/IP adalah sebuah protokol yang
memungkinkan untuk mengirim file
yang berisi informasi melalui jaringan, dengan
jaminan file akan terkirim dengan utuh.
f. Hypertext Transfer Protocol 
Menurut Williams dan Sawyer (2007: 66), HTTP (Hypertext Transfer Protocol)
adalah aturan komunikasi yang memungkinkan browser tersambung ke web server.
Menurut Connolly dan Begg (2005: 998), HTTP
menjelaskan bagaimana client
dan server berkomunikasi. HTTP merupakan sebuah protokol yang digunakan untuk
mentransfer halaman web melalui internet.
  
45
2.1.16  Aturan Perancangan Antarmuka Pengguna
Menurut Shneiderman
dan Plaisant
(2010: 88), ada delapan aturan yang dapat
digunakan sebagai petunjuk dasar yang baik dalam merancang antarmuka pengguna.
Delapan aturan ini lebih dikenal dengan sebutan Eight Golden Rules of Interface Design.
Isi dari kedelapan aturan tersebut adalah sebagai berikut:
a. Berusaha untuk konsisten 
Konsistensi dilakukan pada urutan tindakan, perintah, dan istilah-istilah yang
digunakan pada prompt, menu, serta layar bantuan.
b. Memungkinkan pengguna untuk menggunakan shortcut
Ada kebutuhan dari pengguna yang sudah ahli untuk meningkatkan kecepatan interaksi
sehingga diperlukan adanya singkatan (shortcut), tombol fungsi, dan fasilitas makro.
c. Memberikan umpan balik yang informatif
Untuk setiap tindakan pengguna, sebaiknya disertakan suatu sistem umpan balik.
Untuk tindakan yang sering dilakukan dan tidak terlalu penting, dapat diberikan umpan
balik yang sederhana. Tetapi ketika tindakan tersebut merupakan hal yang penting,
maka umpan balik sebaiknya lebih substansial.
d. Merancang dialog yang memberikan penutupan (keadaan akhir)
Urutan
tindakan sebaiknya diorganisir
dalam suatu kelompok dengan bagian awal,
tengah, dan akhir. Umpan balik yang informatif akan mengindikasikan bahwa cara
yang dilakukan sudah benar dan dapat mempersiapkan kelompok tindakan selanjutnya.
e. Memberikan pencegahan kesalahan
Sebaiknya sistem dilengkapi dengan pencegahan kesalahan agar tidak terjadi kesalahan
yang fatal oleh pengguna. Jika terjadi kesalahan, sistem dapat mendeteksi kesalahan
tersebut dengan cepat dan memberikan pencegahan kesalahan, serta umpan balik yang
mudah dipahami oleh pengguna.
  
46
f. Memungkinkan pembalikan aksi yang mudah
Dengan adanya pembalikan aksi yang mudah, kekhawatiran
pada pengguna akan
berkurang, karena pengguna mengetahui bahwa kesalahan yang dilakukan dapat
dibatalkan. Dengan demikian pengguna tidak takut untuk mengeksplorasi pilihan-
pilihan lain yang belum biasa digunakannya.
g. Mendukung pusat kendali internal
Pengguna lebih menginginkan menjadi pengontrol sistem dan sistem akan merespon
tindakan yang dilakukan pengguna, daripada sistem yang mengontrol pengguna.
Sebaiknya sistem dirancang sedemikian rupa
sehingga pengguna tidak menjadi
responden, melainkan inisiatornya.
h. Mengurangi beban ingatan jangka pendek
Manusia memiliki keterbatasan ingatan jangka pendek
sehingga
membutuhkan
tampilan yang sederhana, serta diberikan waktu yang cukup untuk pelatihan kode,
mnemonic, dan urutan tindakan.
2.1.17  PHP
Menurut Welling dan Thomson
(2005: 2), PHP adalah sebuah scripting pada
lingkungan server yang dirancang khusus untuk web. Kode PHP dapat disatukan dalam
halaman yang berisi tag-tag
HTML yang akan dieksekusi setiap halaman tersebut
dikunjungi. 
Beberapa keunggulan PHP dibandingkan dengan bahasa scripting lainnya adalah
sebagai berikut:
a.
Performa yang tinggi
PHP sangat efisien, menggunakan sebuah server yang tidak mahal dan dapat melayani
jutaan hits setiap harinya.
  
47
b.
Tampilan ke banyak sistem basis data
PHP memiliki koneksi ke banyak DBMS, antara lain Adabas D, Ingres, Oracle, dBase,
InterBase, Ovrimos, Empress, FrontBase, PostgreSQL, mSQL, Solid, HyperWave,
Direct MS-SQL, Sybase, IBM DB2, MySQL, Velocis, Informix, ODBC, dan Unix
dbm.
c.
Memiliki library untuk berbagai web yang umum
PHP dilengkapi dengan banyak library
yang memudahkan pengguna untuk membuat
sebuah website yang umum.
d.
Biaya yang murah
Dengan sifatnya yang open source, maka PHP menjadi salah satu bahasa pemrograman
yang bersifat gratis.
e.
Mudah dipelajari dan digunakan
Sintaks-sintaks PHP menyerupai sintaks-sintaks dari bahasa pemrograman lainnya
seperti C, C++, Java, dan Perl sehingga lebih mudah dipelajari dan digunakan.
f.
PHP dapat digunakan hampir di semua sistem operasi
PHP dapat berjalan hampir di semua jenis sistem operasi, antara lain pada LINUX dan
varian UNIX, Microsoft Windows, MAC OS X, serta RISC OS. 
g.
PHP bersifat cross platform
PHP dapat berjalan pada beberapa jenis web server, antara lain Apache, Microsoft
Internet Information Services, Personal web server, Netscape, Iplanet server, Caudium,
Xitami, OmniHTTPd, dan sebagainya.
h.
Ketersediaan kode sumber
Pengguna diberikan akses ke kode sumber PHP
sehingga bebas untuk menambahkan
ataupun memodifikasinya.
  
48
i.
PHP adalah program yang bersifat open source
Karena bersifat open source, siapapun dapat mengubah dan menambahkan fungsi-
fungsi baru secara bebas. Oleh karena itu, PHP memiliki siklus hidup yang sangat
singkat atau selalu up to date dan mengikuti perkembangan teknologi internet.
2.1.18  MySQL
Menurut Welling dan Thomson (2005: 3), MySQL adalah sistem manajemen basis
data yang berhubungan dan sangat cepat. Sebuah basis data memungkinkan untuk
menyimpan, mencari,  mengurutkan, dan menerima data secara efisien. MySQL bersifat
multi user, multithread server,
dan menggunakan SQL atau bahasa pemrograman yang
terstruktur.
Beberapa keunggulan MySQL dibandingkan dengan DBMS lainnya adalah
sebagai berikut:
a.
Open source software
MySQL dilengkapi dengan kode sumber yang lengkap. Ini berarti pengguna
dapat
mempelajari kode sumber tersebut dan mengubahnya sesuai dengan kebutuhan
pengguna. Karena merupakan perangkat lunak open source, dapat ditemukan banyak
dukungan dari perangkat lunak lain.
b.
SQL support
Hal ini dikarenakan MySQL mendukung SQL, yaitu sebuah bahasa yang digunakan
untuk membuat query data dari sebuah basis data.
c.
Super performance and reliability
MySQL memiliki performa yang sangat cepat dan terpercaya, bahkan di lingkungan
yang memiliki kebutuhan yang kompleks.
  
49
d.
Ease of use
MySQL merupakan sebuah manajemen relasi basis data yang sederhana namun
memiliki fitur-fitur yang kuat. MySQL juga mudah untuk dikonfigurasi dan digunakan,
dilengkapi dengan aplikasi client atau server, serta dilengkapi dengan tools lain yang
berfungsi untuk memudahkan administrasi basis data.
2.1.19  Apache Web Server
Menurut Whitten et. al. (2004: 486), web server
melayani permintaan halaman
website internet
ataupun intranet. Server
ini berkomunikasi dengan fat client
dan thin
client dengan memberikan kepada client tersebut dokumen-dokumen dalam format seperti
HTML dan data dalam format seperti XML.
Cara kerja web
melibatkan komunikasi
antara dua komputer, satu sebagai server, dan satu sebagai client. Server akan
mengirimkan file ketika client memintanya.
Apache
merupakan salah satu contoh perangkat lunak web server
yang
dikembangkan oleh Apache Software Foundation. Apache adalah web server
yang dapat
dijalankan di banyak sistem operasi (Unix, BSD, Linux, Microsoft Windows, Novell
Netware, serta platform lainnya) yang berguna untuk melayani dan memfungsikan situs
web. Protokol yang digunakan untuk melayani fasilitas web ini adalah HTTP.
Apache memiliki fitur-fitur canggih,
seperti pesan kesalahan yang dapat
dikonfigurasi dan
didukung oleh sejumlah antarmuka pengguna berbasis grafik (GUI)
yang memudahkan penanganan server.
  
50
2.1.20  YSlow
Menurut Zakas (2012), YSlow adalah add-on
dari Firefox yang terintegrasi
dengan Firebug. YSlow dapat digunakan untuk menganalisis performa halaman website
Berikut ini adalah beberapa aturan yang digunakan oleh YSlow untuk
menghasilkan halaman website dengan performa tinggi:
a.
Meminimalisasi HTTP requests
Waktu respon dapat diminimalisasi dengan cara mengurangi jumlah komponen pada
halaman
website
sehingga akan mengurangi HTTP
request
untuk menerjemahkan
halaman tersebut. Cara untuk mengurangi HTTP request adalah menggabungkan file,
menggabungkan script, dan menggabungkan CSS.
b.
Menghindari src atau href kosong
Src
atau href
yang kosong akan memperlambat dan menghambat server dengan
meminta halaman yang tidak pernah ada.
c.
Menambahkan header expires
Halaman website
dapat menjadi kompleks dengan semakin banyaknya script,
stylesheet, gambar, dan flash. Dengan adanya header expires, semua komponen
tersebut menjadi cacheable
sehingga meminimalisasi HTTP
request
yang tidak
diperlukan.
d.
Mengompres komponen dengan gzip
Kompresi dapat mengurangi waktu respon dengan cara mengurangi ukuran HTTP
response. Gzip adalah metode kompresi yang efektif untuk mengurangi ukuran respon
sampai dengan 70%.
e.
Meletakkan CSS pada bagian atas
Meletakkan CSS pada bagian atas (head) dokumen akan membuat halaman website
dapat diakses lebih cepat.
  
51
f.
Meletakkan JavaScript pada bagian bawah
JavaScript menghambat unduhan paralel, artinya ketika sebuah script
diunduh,
browser
tidak dapat mengunduh komponen lain. Oleh karena itu, script
harus
diletakkan pada bagian bawah dokumen.
g.
Menghindari ekspresi CSS
Ekspresi CSS akan dievaluasi secara terus-menerus, yaitu ketika halaman
diterjemahkan dan
diperbarui.
Contoh
ekspresi CSS adalah
background-color:
expression((new Date()).getHours()%2 ? "#B8D4FF" : "#F08A00");
h.
Membuat JavaScript dan CSS secara eksternal
Membuat dokumen JavaScript dan CSS secara eksternal akan mempercepat loading
halaman website, karena dokumen-dokumen tersebut disimpan oleh browser.
i.
Memperkecil ukuran JavaScript dan CSS
Memperkecil ukuran JavaScript dan CSS dapat dilakukan dengan cara mengurangi
spasi, baris baru, dan tabulasi.
j.
Menghilangkan duplikasi JavaScript dan CSS 
JavaScript dan CSS yang terduplikasi akan membuat HTTP
request
yang tidak
diperlukan dan menyebabkan duplikasi dalam pengeksekusian JavaScript.
k.
Mengonfigurasi tag entitas (ETags)
ETags adalah mekanisme web server dan browser
yang digunakan untuk menentukan
apakah suatu komponen di dalam cache browser
sesuai dengan komponen yang ada
pada server sumbernya.
l.
Menghindari kesalahan HTTP 404 (Not Found)
Kesalahan HTTP 404 menyebabkan pemakaian server yang tidak diperlukan. 
m. Jangan mengatur ukuran gambar pada HTML
Mengatur dimensi gambar dengan atribut width
dan height
pada elemen image dapat
memperlambat waktu respon.
  
52
2.2  Teori-Teori Khusus 
Teori-teori khusus yang
akan dibahas adalah
sistem informasi kepegawaian,
penerimaan pegawai, pendataan pegawai, absensi pegawai, cuti pegawai, penilaian
pegawai, pelatihan pegawai, dan penempatan pegawai. 
2.2.1
Sistem Informasi Kepegawaian
Menurut Yogaswara et. al. (2010: 71), sistem informasi kepegawaian adalah
segala unsur-unsur dalam administrasi kepegawaian yang membantu terealisasinya
pengelolaan manajemen di suatu organisasi, yang dapat membantu dan mempermudah
pekerjaan yang dilakukan oleh pegawai di dalam organisasi tersebut.
Menurut Wiblen et. al. (2010: 253), sistem informasi kepegawaian secara umum
digunakan sebagai sistem yang memungkinkan organisasi dalam membuat sebuah sistem
terpusat yang memampukan pegawai dan manajer untuk mengakses informasi yang
berhubungan dengan pegawai. Ada beberapa manfaat yang dapat diperoleh melalui
penerapan sistem informasi kepegawaian, yaitu dapat mengurangi biaya organisasi
melalui automatisasi kegiatan-kegiatan manual yang merupakan rutinitas pegawai, dapat
menangani dan
memfasilitasi komunikasi antar level di dalam organisasi, meningkatkan
efisiensi, membantu mengelola beragam informasi berbeda mengenai pegawai di dalam
organisasi, dan menyediakan sarana untuk membantu pengambilan keputusan yang
berkaitan dengan manajemen sumber daya manusia. Sistem informasi kepegawaian
mengubah data menjadi informasi yang diperlukan untuk operasional bisnis dan
pengambilan keputusan.
  
53
2.2.2
Penerimaan Pegawai
Menurut Noe
et. al.
(2006: 70), penerimaan pegawai adalah proses pencarian
kandidat pelamar sebagai pegawai potensial.
Menurut Dessler (2005: 152), proses penerimaan pegawai adalah sebagai berikut:
a.
Melakukan perencanaan dan peramalan pekerja untuk menentukan posisi yang akan
diisi;
b.
Membangun kandidat-kandidat yang akan mengisi posisi tersebut dengan melakukan
perekrutan;
c.
Meminta pelamar mengisi formulir pendaftaran;
d.
Melakukan berbagai teknik seleksi pelamar, seperti tes tertulis, investigasi latar
belakang pelamar, dan ujian
fisik untuk mengidentifikasikan kandidat yang
diharapkan;
e.
Menginformasikan kandidat-kandidat yang terpilih kepada supervisor
yang
bertanggung jawab atas pekerjaan tersebut;
f.
Melakukan seleksi akhir kandidat dengan melakukan wawancara dengan supervisor
dan pihak-pihak lain yang terkait untuk mengambil keputusan akhir kandidat mana
yang akan mengisi posisi tersebut.
2.2.3
Pendataan Pegawai
Menurut Grafh (2012), pendataan pegawai adalah proses mengumpulkan data
pegawai yang bekerja di suatu perusahaan atau organisasi. Data yang dikumpulkan dapat
berupa nama lengkap, alamat tempat tinggal, pendidikan, dan lain-lain.
  
54
2.2.4
Absensi Pegawai
Menurut Tresnani dan Munir (2012: 257), absensi adalah suatu pendataan
kehadiran, bagian dari pelaporan aktivitas suatu institusi, atau komponen institusi itu
sendiri yang berisi data kehadiran yang disusun dan diatur sedemikian rupa sehingga
mudah untuk dicari dan dipergunakan apabila sewaktu-waktu diperlukan oleh pihak yang
berkepentingan.
Sistem absensi terbagi menjadi dua
kelompok, yaitu sistem absensi manual dan
sistem absensi otomatis. Sistem absensi otomatis memiliki keunggulan sebagai berikut:
a.
Lebih akurat dan lebih cepat dalam waktu pencatatan, proses, dan menghasilkan
laporan;
b.
Mengurangi faktor kesalahan manusia;
c.
Mengurangi biaya sumber daya manusia;
d.
Akses yang lebih baik terhadap data aktivitas pegawai;
e.
Laporan yang lebih fleksibel dan dapat dihasilkan secara cepat dan mudah;
f.
Data dapat digunakan untuk perangkat lunak lainnya;
g.
Fitur-fiturnya dapat diperluas, seperti pelacakan pegawai secara online.
2.2.5
Cuti Pegawai
Menurut Subekhi dan Jauhar (2012: 189), cuti merupakan salah satu bentuk
kompensasi tak langsung berupa tunjangan yang diberikan perusahaan kepada pegawai.
Tunjangan adalah sebuah penghargaan tidak langsung yang diberikan untuk seorang
pegawai atau sekelompok pegawai sebagai bagian dari keanggotaan organisasi.
Menurut Notoatmodjo (2009: 150), cuti merupakan salah satu bentuk kompensasi
perusahaan berupa pembayaran upah untuk waktu tidak bekerja (time off benefits). Time
  
55
off benefits
berarti
pegawai
akan tetap memperoleh kompensasi atau pembayaran,
walaupun dalam periode tertentu pegawai tersebut tidak bekerja.
2.2.6
Penilaian Pegawai
Menurut Grubb (2007: 2), penilaian kinerja pegawai adalah suatu proses
menilai
bagaimana pegawai secara individu melakukan pekerjaannya dan bagaimana pegawai
tersebut dapat meningkatkan kinerjanya dan berkontribusi pada kinerja organisasi.
Menurut Nurmianto et. al. (2006: 42), tujuan penilaian kinerja pegawai terbagi
menjadi dua tujuan pokok, yaitu:
a.
Tujuan administrasi personalia
1) Menjadi dasar pembuatan keputusan manajemen mengenai promosi, mutasi,
demosi, dan pemberhentian pegawai;
2) Menjadi dasar dalam pemberian balas jasa;
3) Menjadi dasar dalam menetapkan program pendidikan dan pelatihan guna
mendukung unit-unit kerja organisasi;
4) Menjadi dasar penetapan kriteria-kriteria untuk seleksi dan penetapan pegawai;
5) Memberikan data mengenai produktivitas organisasi secara keseluruhan atau unit-
unit kerja, khususnya individu-individu pegawai.
b.
Tujuan bimbingan dan konseling
1) Merupakan forum bimbingan dan konseling antara atasan dan bawahannya untuk
memperbaiki atau mengembangkan kecakapan pegawai;
2) Mengidentifikasikan kelebihan atau kekurangan pegawai yang menjadi salah satu
dasar pertimbangan dalam melibatkan pegawai pada program pelatihan dan
pengembangan pegawai;
  
56
3) Sebagai alat untuk meningkatkan motivasi kerja pegawai sehingga dapat dicapai
kinerja yang lebih baik dalam rangka pencapaian tujuan unit kerja dan organisasi;
4) Sebagai alat untuk
mendorong atau membiasakan para atasan atau pejabat penilai
mengamati perilaku kerja pegawai sebagai totalitas sehingga dapat mengetahui
minat, kemampuan, dan kebutuhan pegawai.
Menurut Roberts (2003: 90), salah satu metode penilaian kinerja pegawai yang
baik
adalah berdasarkan konsep penilaian kinerja participatory
(participatory
performance appraisal). Konsep penilaian kinerja participatory adalah proses
penilaian
dimana pegawai turut berpartisipasi memberikan penilaian atas kinerjanya
sendiri.
Berikut ini adalah beberapa konsep mengenai penilaian pegawai participatory:
a.
Partisipasi pegawai merupakan cara yang efektif dalam meningkatkan kemandirian
pegawai terkait dengan pekerjaannya. Hal ini membangun keyakinan dan kepercayaan
diri pada kemampuan pegawai. Dengan adanya partisipasi pegawai di dalam penilaian,
pegawai akan termotivasi untuk bertumbuh menjadi lebih baik di dalam pekerjaannya.
b.
Partisipasi dalam penilaian membuat
pegawai memiliki peranan
di
dalam proses
penilaian. Dengan adanya partisipasi pegawai, ketika pegawai tidak menyetujui
penilaian yang diberikan, pegawai memiliki hak untuk membantah penilaian tersebut.
Sedangkan, ketika pegawai merasa bahwa proses penilaian adil,
maka pegawai akan
menerima penilaian tersebut, walaupun nilainya rendah.
c.
Pegawai memiliki informasi yang valid, unik, dan relevan mengenai kinerjanya, yang
mungkin tidak terlihat oleh penilai. Dengan demikian, ketika pegawai berpartisipasi di
dalam proses penilaian, kualitas dan kuantitas informasi penilaian kinerja menjadi
lebih akurat dan valid.
  
57
d.
Di dalam sistem penilaian participatory, pegawai memiliki partisipasi di dalam proses
penilaian dan
melibatkan ego sebagai seorang penilai demi keberhasilan sistem
penilaian. Karena pegawai memiliki wewenang untuk menilai dirinya sendiri, maka
pegawai akan menetapkan target kinerja yang lebih tinggi daripada biasanya. 
e.
Partisipasi pegawai yang tinggi akan menghasilkan atmosfer kerjasama dan dukungan
dari pegawai terhadap atasan sebagai penilai
sehingga mengurangi
ketegangan akibat
penilaian, sifat defensif, dan konflik antara penilai dengan yang dinilai.
2.2.7
Pelatihan Pegawai
Menurut Mangkunegara (2003: 50), pelatihan pegawai adalah suatu proses
pendidikan jangka pendek yang menggunakan proses sistematis dan terorganisasi, dimana
pegawai akan
mempelajari pengetahuan dan keterampilan teknis dalam
tujuan yang
terbatas.
Menurut Obisi (2011: 83), pelatihan pegawai terdiri dari dua jenis, yaitu:
a.
On-the-job Training
On-the-job training diberikan oleh supervisor atau manajer untuk membantu pegawai
menyesuaikan diri dengan pekerjaannya dan menugaskan pekerjaan yang sesuai
dengan kemampuan pegawai. 
b.
Off-the-job Training
Off-the-job training merupakan pelatihan yang dilakukan di luar pekerjaan. Off-the-job
training
dapat dilakukan dengan
latihan kelompok, pembentukan tim, pelatihan
outdoor, dan workshop. Di dalam off-the-job training terdapat aspek pengajaran, role
playing, studi kasus, diskusi, dan simulasi.
Menurut Arthur dan Winston (2003: 235), untuk mengukur efektivitas pelatihan
pegawai perlu dilakukan evaluasi pelatihan pegawai. 
  
58
Ada tiga jenis kriteria evaluasi pelatihan pegawai:
a.
Kriteria Pembelajaran (Learning Criteria)
Kriteria pembelajaran mengukur seberapa banyak yang dipelajari pegawai dari
program pelatihan yang dilaksanakan.
b.
Kriteria Perilaku (Behavioral Criteria)
Kriteria ini mengukur seberapa besar perubahan yang terjadi di dalam performa
pegawai terkait dengan pekerjaannya setelah mengikuti pelatihan pegawai.
c.
Kriteria Hasil (Results Criteria)
Kriteria ini mengukur kegunaan dan manfaat yang didapatkan dalam program
pelatihan ini untuk organisasi.
2.2.8
Penempatan Pegawai
Menurut Rivai dan Sagala (2009: 198), penempatan adalah penugasan kembali
seorang pegawai kepada pekerjaan barunya. Dalam alur ini terdapat tiga jenis penting dari
penempatan yaitu promosi, mutasi, dan demosi.
Menurut Rivai dan Sagala (2009: 199), promosi terjadi jika seorang pegawai
dipindahkan dari satu bidang tugas ke bidang tugas lainnya yang lebih tinggi
tingkatannya, baik tingkat gaji, tanggung jawab, maupun tingkat strukturalnya.
Mutasi terjadi jika seorang pegawai dipindahkan dari satu bidang tugas ke bidang
tugas lainnya yang hampir sama tingkatannya, baik tingkat gaji, tanggung jawab, maupun
tingkat strukturalnya.
Demosi terjadi jika seorang pegawai dipindahkan dari satu bidang tugas ke bidang
tugas
lainnya yang lebih rendah tingkatannya, baik tingkat gaji, tanggung jawab, maupun
tingkat strukturalnya.