6
  BAB 2                                                                                         
LANDASAN TEORI
2.1  
Data
Menurut Hoffer et al
(2009,p46), data adalah representasi dari objek-
objek dan kejadian yang disimpan yang memiliki makna dan kepentingan di
dalam lingkungan pengguna
2.2 
Basis Data (Database)
Disini Connolly dan Begg (2010, p65) menjelaskan bahwa basis data
(database) adalah kumpulan data yang terhubung secara logis yang digunakan
bersama-sama dan deskripsi dari data tersebut yang dirancang untuk memenuhi
kebutuhan informasi sebuah organisasi. Sedangkan bagi C.J. Date (2005, p10)
basis data merupakan sebuah koleksi data yang secara terus menerus digunakan
oleh sistem aplikasi suatu perusahaan.
Jadi berdasarkan pengertian-pengertian diatas dapat disimpulkan bahwa
database adalah kumpulan dari data yang saling berhubungan dan terintegrasi
yang digunakan untuk memenuhi kebutuhan informasi sebuah perusahaan.
Adapun  beberapa istilah penting dalam basis data menurut Connolly dan
Begg (2010, p144-146, p396) yaitu:
1.
Relasi
   
: Sebuah tabel dengan kolom dan baris
2.
Atribut   
: Kolom yang diberi nama pada sebuah relasi
  
7
3.
Relationship
: Asosiasi antar tabel
4.
Primary key   : Candidate key yang terpilih untuk    mengindentifikasi   
tuple secara unik dalam sebuah relasi
5.
Multiplicity    : Jumlah kejadian yang mungkin dari sebuah tipe entitas
yang berhubungan dengan kejadian  tunggal dari tipe entitas lain yang
berhubungan melalui relationship tertentu.
Lebih lanjut ,Connolly dan Begg (2010, p391) membahas tentang batasan
multiplicity yang diringkas dalam tabel 2.1
      Tabel 2.1 Batasan Multiplicity
Batasan
Multiplicity
Arti
0..1
Kejadian entitas nol atau satu.
1..1(atau hanya 1)
Kejadian entitas tepat satu
0..*(atau hanya *)
Kejadian entitas nol atau lebih
1..*
Kejadian entitas satu atau lebih
(Sumber: Connolly dan Begg,2010)
Connolly dan Begg (2010, p65) menerangkan bahwa relasi-relasi yang
berhubungan dihubungkan menggunakan asosiasi untuk membentuk sebuah
diagram yang dinamakan
Entity Relationship Diagram
(ERD). Notasi yang
digunakam pada ERD dapat dilihat pada gambar 2,2.
  
8
Gambar 2.1 Notasi Entity Relationship Diagram    (Connolly dan
Begg,2010)
2.3
Database Management System (DBMS)
Arti DBMS menurut Elmasri dan Navanthe (2005,p5) adalah sebuah
koleksi atau kumpulan program yang mengizinkan user untuk membuat dan
memelihara database. DBMS juga merupakan  suatu software sistem yang
memfasilitasi sebuah proses defining, constructing, manipulating dan sharing
Sedangkan menurut Connolly dan Begg (2010,p66),
DBMS adalah
sebuah sistem piranti lunak yang memungkinkan user
untuk mendefinisikan,
membuat, merawat, dan mengontrol akses ke dalam basis data.
Jadi dapat disimpulkan secara umum bahwa DBMS adalah suatu
aplikasi yang digunakan user untuk mendifinisikan, membangun, memelihara,
dan mengontrol akses basis data.
  
9
2.3.1
fasilitas dan komponen DBMS
Fasilitas yang disediakan oleh DBMS Connolly dan Begg
(2010,p66),  yaitu:
1. Data definition Language
(DDL) Memungkinkan pengguna
untuk membuat spesifikasi tipe data, mendefiniskan basis
data,struktur data dan constraint
data  untuk disimpan dalam
basis data. Constraint adalah peraturan konsistensi nilai pada
basis data yang tidak dapat dilanggar.
2. Data Manipulation Language
(DML) memungkinkan pengguna
untuk memasukkan
(insert),
memperbaharui
(update),
menghapus (delete) dan mengirim atau mengambil data dari basis
data.
3. Menyediakan kontrol akses basis data:
a.
Sistem keamanan (Security System),
yang mencegah agar
pengguna
yang tidak mempunyai hak akses tidak dapat
mengakses basis data.
b.
Sistem integritas (Integrity System) yang memelihara konsistensi
data yang disimpan.
c.
Sistem kontrol pada saat yang bersamaan       (Concurrency
Control),yang memperbolehkan shared akses terhadap basis data.
d.
Sistem kontrol perbaikan (Recovery Control System), yang
mengembalikan basis data ke keadaan sebelumnya yang
  
10
konsisten pada saat terjadi kegagalan pada piranti keras atau
piranti lunak
e.
Katalog yang dapat diakses pengguna (User Accessible Catalog),
yang berisi tentang deskripsi data pada basis data.
Sedangkan lima komponen penting yang dimiliki DBMS
Connolly dan Begg (2010,p68) yaitu:
1.
Hardware
(perangkat keras), dapat berupa single personal
computer, single mainframe, dan server.
2.
Software (perangkat lunak), memiliki komponen seperti DBMS
software dan progaram aplikasi beserta sistem operasi.
3.
Data, merupakan komponen terpenting dari DBMS khususnya
sudut pandang dari end user mengenai data.
4.
Prosedur, berupa panduan dan instruksi dalam membuat desain
dan menggunakan basis data.
5.
Manusia, adalah komponen terakhir yang terlibat dalam sistem
yang terdiri dari User
atau pengguna sistem dan programmer
sebagai pembuat progaram pada sistem.
2.4  
Fungsi DBMS
Disini terdapat 10 fungsi dari DBMS Menurut Connolly dan Begg (2010,
p99-104), yang terdiri atas:
  
11
1.
Data storage, retrieval dan update
Sebuah DBMS harus menyediakan kemampuan untuk menyimpan
(store), memperoleh kembali (retrieve) dan memperbaharui (update) data
didalam basis data.
2.
Users-Accessible Catalog
Sebuah DBMS harus menyediakan sebuah katalog dimana deskripsi data
disimpan dan dapat diakses oleh pengguna.
3.
Transaction support
Sebuah DBMS harus menyediakan mekanisme yang akan menjamin
bahwa semua update bersamaan dengan suatu transaksi yang dibuat
4.
Concurrency Control Services
Sebuah DBMS harus menyediakan mekanisme untuk menjamin bahwa
basis data diupdate
secara benar ketika banyak pengguna sedang
mengupdate basis data pada saat yang bersamaan.
5.
Recovery Services
Sebuah DBMS harus menyediakan mekanisme untuk memperbaiki basis
data ketika timbul masalah.
6.
Authorization Services 
Sebuah DBMS harus menyediakan mekanisme untuk menjamin bahwa
hanya pengguna yang memiliki ijin yang dapat mengakses basis data.
  
12
7.
Support for Data Comunication
Sebuah DBMS harus mampu berintegrasi dengan piranti lunak
komunikasi.
8.
Integrity Services
Sebuah DBMS harus menyediakan peralatan untuk menjamin bahwa baik
data dalam basis data maupun perubahan terhadap data mengikuti
peraturan yang ada.
9.
Service to Promote Data Independence
Sebuah DBMS harus mempunyai fasilitas untuk mendukung indepedensi
program dari struktur aktual (sebenarnya) basis data.
10. Utility Services
DBMS harus menyediakan satu set fasilias pelayanan, seperti fasilitas
untuk  impor, memonitor, mengumpulkan dan merealokasikan sampah,
serta fasilitas untuk reorganisasi indeks.
2.5
Kelebihan dan kekurangan DBMS
Dalam menggunakan DBMS pasti ada kelebihan maupun
kekurangannya.Adapun kelebihan yang dimiliki DBMS menurut Connolly dan
Begg (2010, p77-81) ,yaitu:
1.
Mengurangi pengurangan data yang sama (data redudancy).
  
13
2.
Menciptakan data yang konsisten karena adanya pencegahan redudansi
data.
3.
Mampu mendapatkan semakin banyak informasi dari data yang sama.
4.
Data dapat digunakan secara bersama-sama (sharing data).
5.
Menambah integritas data, yang berarti keakuratan dan konsistensi dari
data yang tersimpan.
6.
Meningkatkan keamanan data.
7.
Meningkatnya kualitas penyimpanan data dengan menggunakan
standarisasi yang dibutuhkan.
8.
Dapat mengurangi biaya pengembangan sistem karena menggabungkan
data operasional semua bagian perusahaan hanya kedalam suatu database
dan program aplikasi.
9.
Mengurangi terjadinya konflik terhadap kebutuhan data antar user
departemen yang satu dengan yang lainnya.
10.
Meningkatkan kemampuan untuk mengakses data dan hasilnya.
11.
Meningkatkan produktivitas user.
12.
Memudahkan pemeliharaan data karena data bersifat independent.
13.
Meningkatkan
concurrency untuk mencegah hilangnya data atau
informasi saat dua atau lebih orang user mengakses data yang sama pada
waktu yang bersamaan.
14.
Meningkatkan pelayanan terhadap backup dan recovery service.
  
14
Sedangkan kekurangan DBMS adalah:
1.
Merupakan software yang kompleks sehingga perancang basis data harus
mengerti fungsi-fungsi yang ada untuk mendapatkan hasil rancangan
yang baik.
2.
Membutuhkan disk space/memory yang cukup besar untuk instalasinya.
3.
Biaya DBMS yang tergantung pada tipe DBMS yang digunakan.
4.
Biaya tambahan terhadap kebutuhan peragkat keras.
5.
Biaya tambahan lain sperti pelatihan para staff dan spesialis untuk
menjalankan sistem yang baru.
  
15
Database Planning
System Definition
Requirements Collection and Analysis
Conceptual Database Design
Logical Database Design
Database
Design
Physical Database Design
DBMS Selection
(
Optional
)
Application Design
Prototyping
(
Optional
)
Implementation
Data Conversion and
Loading
Testing
Operational Maintenance
2.6 
Siklus Basis Data
Dalam proses Perancangan basis data alangkah baiknya dilakukan
berdasarkan bagan siklus basis data dibawah ini:
Gambar  2.2 Siklus Database (Connolly, 2010 ,p314)
A.
Database planning, merencanakan bagaimana tahap-tahap dari aplikasi basis
data dapat di realisasikan dengan seefektif mungkin. Tahap ini bertujuan
untuk mendefinisikan mission statement dan mission objectives dari proyek
basis data.
Mission statement mendefinisikan tujuan utama dari aplikasi
  
16
basis data dan membantu menjelaskan tujuan dari proyek basis data dan
menyediakan alur yang lebih jelas untuk pembuatan aplikasi basis data yang
dibutuhkan secara efisien dan efektif. Sedangkan mission objectives
mengidentifikasikan sebuah tugas tertentu yang harus disediakan oleh basis
data. Database planning juga harus menyertakan perkembangan standar
yang mengatur bagaimana data dikumpulkan, bagaimna format
dispesifikasikan, dokumentasi penting apa yang dibutuhkan, bagaimana
desain dan implementasi harus dilanjutkan. (Connolly, 2010 ,p313).
B.
System definition, mendefinisikan lingkup dan batasan-batsan dari aplikasi
basis data, penggunaanya dan area aplikasi, mengidentifikasikan batasan
dari sistem dan bagaimana sistem tersebut berinteraksi dengan bagian lain
dari sistem informasi perusahaan. Batasan sistem tidak hanya mencakup
pengunaan dan area aplikasi saat ini,namun juga harus mencakup
penggunaan dan aplikasi mendatang.  (Connolly, 2010 ,p316).
C.
Requirement Collection and Analysis, merupakan tahapan pengumpulan dan
analisis dari kebutuhan-kebutuhan user dan area aplikasi, meliputi
pengumpulan dan analisis informasi mengenai bagian dari perusahaan akan
menggunakan basis data, informasi dikumpulkan untuk setiap user view
mencakup: (Connolly, 2010 ,p316).
1. Deskripsi data yang digunakan.
  
17
2. Rincian mengenai bagaimana data dapat digunakan atau
dihasilkan.
3. Kebutuhan tambahan lainnya untuk aplikasi basis data yang baru.
Informasi-informasi ini kemudian dianalisa untuk
mengidentifikasikan kebutuhan atau fitur yang akan disertakan
dalam aplikasi basis data. Ada tiga pendekatan yang dapat
digunakan untuk mengelola kebutuhan aplikasi basis data dengan
banyak user view yaitu:
1.
Centralized Approach, kebutuhan dari setiap user view digabung
menjadi sebuah set kebutuhan tunggal dari aplikasi basis data.
2.
View Integration Approach, kebutuhan dari setiap user view
digunakan untuk membuat model data terpisah untuk
mempresentasikan user view tersebut. Model data-model data
tersebut nantinya akan digabung pada tahapan database design.
3.
Kombinasi dari dua pendekatan diatas.
D.
Database design, proses perancangan dibagi menjadi tiga fase utama, yaitu:
(Connolly, 2010 ,p320)
1.
Perancangan basis data konseptual, yaitu
proses membangun
sebuah model informasi yang digunakan di sebuah perusahaan,
terbebas dari segala pertimbangan fisik.
  
18
Dalam membangun
model data konseptual lokal untuk
setiap view, langkah langkah perancangan basis data konseptual
adalah sebagai berikut:
a)
Identifikasi tipe entiti: mengidentifikasikan entiti-entiti
untuk model yang akan dibangun.
b)
Identifikasi tipe relasi: mengidentifikasi relasi yang terjadi
antar entiti.
c)
Identifikasi dan asosiasikan atribut dengan tipe entiti dan
relasi: mengidentifikasikan atribut-atribut yang dimiliki
oleh entiti maupun relasi.
d)
Tentukan domain  atribut: menentukan batasan nilai yang
valid bagi atribut atribut.
e)
Tentukan atribut-atribut candidate key
dan primary key:
mengidentifikasi candidate key
untuk setiap entiti, dan
kemudian menentukan primary key.
f)
Pertimbangkan penggunaan
enhanced modelling concepts
(opsional) : mempertimbangkan penggunaan konsep-
konsep seperti specialization generalization, aggregation,
ataupun composition.
g)
Perikasa model terhadap redudansi: mengecek apakah
terdapat redudansi pada model.
  
19
h)
Validasi model konseptual lokal terhadap transaksi
pengguna: memastikan bahwa model konseptual lokal
mendukung transaksi yang dibutuhkan.
i)
Tinjam kembali model data konseptual lokal bersama
dengan pengguna: meninjau model yang telah dibangun
guna memastikan bahwa model tersebut merupakan
representasi yang sesuai.
2.
Perancangan basis data logikal, yaitu proses membangun sebuah
model informasi yang digunakan di sebuah perusahaan
berdasarkan pada sebuah model data yang spesifik, tetapi terbatas
dari DBMS tertentu dan pertimbangan-pertimbangan fisikal
lainnya. 
Langkah-langkah perancangan basis data logikal adalah sebagai
berikut:
1.
Bangun dan validasi model data logikal lokal untuk setiap
view:
a)
Hilangkan fitur-fitur yang tidak kompatibel dengan
model relasional (opsional): melakukan perbaikan
terhadap model data konseptual lokal dengan
menghilangkan  fitur-fitur yang tidak kompatibel.
  
20
b)
Dapatkan relasi utuk model data logikal lokal:
membangun relasi untuk model data logikal lokasl
guna mempresentasikan entiti, dan atriut yang telah
diidentifikasi.
c)
Validasi relasi dengan menggunakan normalisasi.
d)
Validasi alidasi relasi terhadap transasksi pengguna
memastikan bahwa relasi pada model data logikal
lokal dapat mendukung transaksi yang dibutuhkan.
e)
Definisikan integrity constrains
mendefiniskan
batasan batasan yang meliputi required data, atribut
domain constarins, entity integrity, referential
integrity, serta General constraints.
f)
Tinjau kembali model data logikal lokal bersama
dengan pengguna meninjau model yang telah
dibangun guna memastikan bahwa model tersebut
merupakan representasi yang sesuai
2.
Bangun dan validasi model data logikal:
a)
Gabungkan model data logikal lokal kedalam model
global: mendapatkan suatu model data logikal global
dari organisai
b)
Validasi model data logikal global: memvalidasi relasi
dengan teknik  normalisasi dan
memastikan relasi
tersebut mendukung transaksi yang dibutuhkan.
  
21
c)
Periksa untuk perkembangan di masa yang akan
datang: memperkirakan apakah di masa yang akan
datang akan ada perubahan berarti serta menentukan
apakah model yang telah dibangun dapat
mengakomodasi perubahan tersebut.
d)
Tinjau kembali model data logikal global bersama
dengan pengguna: meninjau model yang telah
dibangun guna memastikan bahwa model tersebut
merupakan represntasi yang sesuai.
3.
Perancangan basis data fisikal, yaitu proses menghasilkan sebuah
deskripsi dari pengimplementasian basis data pada media
penyimpanan sekunder, yang mendeskripsikan hubungan dasar,
pengorganisasian file, dan indeks yang digunakan untuk
memperoleh akses ke data secara efisien serta segala batasan
integritas dan ukuran-ukuran keamanan yang berhubungan.
Langkah-langkah perancangan basis data fisikal adalah sebagai
berikut:
1.
Terjemahkan model data logikal global terhadap DBMS
yang telah ditentukan
a)
Rancang relasi dasar: menentukan bagaimana relasi
dasar akan dipresentasikan pada DBMS target
b)
Rancang representasi dari data yang telah didapat:
menetukan bagaimana merepresentasikan data-data
  
22
yang terdapat pada model data logikal global kedalam
DBMS target.
c)
Rancang General
constraints: merancang General
constraints terhadap DBMS target.
2.
Rancang representasi fisik
a)
Analisa transaksi:guna memahami fungsionalitas dari
transaksi yang akan berjalan didalam basis data serta
menganalisa transaksi yang penting.
b)
Pilih organisasi file: menentukan organisasi file yang
efisien untuk setiap basis relasi.
c)
Pilih indeks: menentukan apakah penggunaan indeks
akan dapat meningkatkan performa dari sistem.
d)
Perkirakan kebutuhan disk space: memperkirakan
kapasitas disk space yang akan dibutuhkan oleh basis
data.
3.
Rancang user view: merancang user view
yang telah
didefinisikan pada tahap pengumpulan kebutuhan dan
analisis pada daur hidup aplikasi basis data.
4.
Rancang mekanisme keamanan: merancang mekanisme
keamanan pada basis data.
5.
Pertimbangkan penggunaan dari redudansi terkontrol:
menentukan apakah penggunaan redudansi secara
terkontrol akan dapat meningkatkan performa sistem.
  
23
6.
Lakukan pengawasan dan pemeliharaan terhadapa sistem
operasi: mengawasi sistem operasional dan meningkatkan
performa sistem guna memperbaiki rancangan-rancangan
yang kurang sesuai atau sebagai refleksi adanya perubahan
kebutuhan.
E.
DBMS selection (optional), tahapan ini bertujuan untuk memilih DBMS
yang paling cocok untuk aplikasi basis data, meliputi:
(Connolly, 2010
,p325).
1 Define terms of reference of study, cakupan penelitian          
mengenai pemilihan DBMS menyatakan tujuan dan lingkup
penelitian dan tugas-tugas yang harus dilakukan, meliputi deskripsi
kriteria ( berdasarkan spesifikasi kebutuhan pengguna) untuk
mengevaluasi produk DBMS, daftar DBMS yang tersedia dan
batasan-batasan dan jadwal waktu untuk penelitian.
2. Shortlist two or three product, kriteria-kriteria yang dianggap kritis
untuk keberhasilan implementasi dapat digunakan untuk evaluasi
data DBMS tersedia.
3. Evaluate products, ada banyak fitur yang dapat digunakan untuk
mengevaluasi sebuah produk DBMS, semua bobot nilai dari fitur-
fitur tersebut dijumlahkan untuk mendapatkan nilai sebuah produk
DBMS tertentu yang akan dibandingkan dengan nilai produk
  
24
DBMS lainnya. Produk DBMS yang terpilih adalah produk dengan
nilai tertinggi.
4.  Recommend selection and produce report, tahap akhir dari
pemilihan DBMS adalah untuk mendokumentasikan proses dan
untuk menyediakan laporan dan 
rekomendasi mengenai produk
DBMS tertentu.
F.
Aplication design, bertujuan untuk merancang antar muka pemakai dan
program-program aplikasi yang menggunakan dan memproses basis data.
Application design berjalan secara pararel dengan database design,. Fungsi-
fungsi yang dinyatakan dalam spesifikasi kebutuhan pengguna harus
terdapat di dalam racangan aplikasi untuk basis data, meliputi perancangan
program aplikasi yang mengakses basis data dan perancangan transaksi
(metode akes basis data). Selain itu antarmuka aplikasi basis data harus
dirancang dengan baik agar dapat menyajikan informasi secara user friendly
(Connolly, 2010 ,p329).
G.
Prototyping (optional), adalah membangun sebuah model yang bekerja dari
aplikasi basis data, dimana memungkinkan perancang atau pengguna untuk
memvisualisasikan dan mengevaluasikan bagaimana sistem akhir akan
terlihat dan berfungsi. Tujuan utama dari pengembangan prototipe aplikasi
basis data adalah untuk memungkinkan user
untuk menggunakan prototipe
tersebut untuk menidentifikasikan fitur-fitur sistem yang berjalan dengan
baik atau tidak, dan jika mungkin untuk menyarankan peningkatan atau
  
25
bahkan fitur-fitur baru pada aplikasi basis data. Ada dua tipe strategi
prototipe yang umum digunakan:  (Connolly, 2010 ,p333).
1.  Requirements prototyping, menggunakan sebuah prototipe
untuk menentukan kebutuhan-kebutuhan dari aplikasi
basis
data yang diusulkan dan ketika kebutuhan-kebutuhan tersebut
sudah lengkap, maka prototipe tersebut dibuang.
2. Evolutionary prototyping, digunakan untuk tujuan yang sama
seperti Requirements prototyping tetapi prototipe tersebut tidak
dibuang tetapi
dikembangkan lebih lanjut menjadi sebuah
aplikasi basis data yang berjalan.
H Implementation, bertujuan untuk membuat definisi-definisi  eksternal,
konseptual dan internal basis data dan program-program aplikasi,
implementasi basis data dicapai menggunakan data definition language
(DDL) dari DBMS yang dipilih atau sebuah Graphical user interface (GUI)
yang menyediakan fungsionalitas yang sama sementara menyembunyikan
statement-statement
DDL tingkat rendah. Statement-statement
DDL
digunakan untuk menciptakan struktur basis data dan file-file kosong basis
data.  Sebagian dari program aplikasi ini adalah transaksi-transaksi basis
data yang diimplementasikan menggunakan data manipulation language
(DML) . (Connolly, 2010 ,p333).
  
26
i.
Data conversion and loading, bertujuan mengambil data dari sistem yang
lama untuk diterapkan di sistem yang baru. Tahapan ini dibutuhkan hanya
ketika sistem basis data baru menggantikan sistem yang lama. Saat ini,
DBMS pada umumnya telah memiliki sebuah utilitas yang dapat memuat
file-file yang telah ada ke basis data yang baru. Utilitas ini biasanya
membutuhkan spesifikasi file sumber dan basis data tujuan, dan secara
otomatis merubah data sesuai format file basis data yang baru. (Connolly,
2010 ,p334).  
J.
Testing, bertujuan agar aplikasi
basis data diuji untuk mencari error
dan
validasi terhadap kebutuhan-kebutuhan yang telah dispesifikasikan oleh
user. Proses pengujian dilakukan sesuai metode, jikalau pengujian berhasil,
akan ditemukan
error pada program aplikasi dan mungkin pada struktur
basis data. Testing juga dapat mendemonstrasikan bahwa basis data dan
program aplikasi bekerja sesuai spesifikasi dan kebutuhan performa.
(Connolly, 2010 ,p334).
K.
Operational maintenance, bertujuan agar aplikasi basis data
diimplementasikan secara penuh.
Sistem secara terus-menerus di monitor
dan dirawat. Ketika diperlukan, kebutuhan-kebutuhan yang baru
dimasukkan ke dalam aplikasi basis data melalui tahapan siklus basis data
yang terdahulu. Operational maintenance meliputi aktifitas-aktifitas berikut:
(Connolly, 2010 ,p335).
  
27
1. Memonitor performa sistem. Jikalau performansi berada di
bawah level yang diterima maka dibutuhkan tuning
atau
reorganisasi basis data.
2. Memelihara dan meningkatkan aplikasi basis data (jika
diperlukan). Kebutuhan-kebutuhan baru dimasukkan ke dalam
aplikasi basis data melalui tahapan siklus basis data yang
terdahulu.
2.7
Pemodelan Entity-Relationship (E-R Modeling)
Bagi C.J.Date (2005,p111),entity relationship diagram (ERD) merupakan
sebuah teknik untuk menggambarkan struktur logikal basis data dalam bentuk
diagram. Dan menurut (Silberschatz et al,2002,p25). Pemodelan  Entity
Relationship
merupakan pemodelan data tigkat tinggi yang termasuk dalam
pendekatan top down dalam  perancangan basis data. Pemodelan ini didasarkan
pada persepsi dunia nyata yang terdiri atas sekumpulan obek-objek dasar yang
disebut dengan entiti, serta relationship diantara objek objek tersebut 
2.7.1
  
Entity
Entity didefinisikan sebagai sekumpulan objek pada dunia
nyata yang memiliki properti yang sama. Representasi
diagramatik dari entity adalah berupa persegi panjang berlabel
nama dari entity.
  
28
                             Nama Relationahip   
       
2.7.2
  Relationship (Relasi)
Relationship didefinisikan sebagai hubungan yang terjadi
antar entity, representasi diagramatik dari relationship adalah
berupa garis
lurus
yang menghubungkan dua buah entity, atau
lebih dikenal dengan istilah binary relationship (relasi biner).
Gambar 2.3 Representasi Diagramatik dari Relationship
Terdapart tiga jenis relasi biner (Kroenke,2010,p149) yaitu:
1.
Relasi biner 1:1 (one to one)
Relasi ini terjadi jika suatu instance entity
tunggal berelasi
dengan instance entity tunggal lainnya
Gambar 2.4 relationship 1:1 (Connolly & Begg)
ENTITY 1
ENITIY 2
    A  
    B
C
D
r1
r2
  
   D.
29
A.
B.
C.
r1
r2
r3
D
E
F
2.
Relasi biner 1:* (one to many)
Relasi ini terjadi jika suatu instance entity
tunggal berelasi
dengan lebih dari satu instance enitity lainnya
        
   Gambar 2.5  relationship 1:* (Connolly & Begg)
3.   Relasi biner *:* (many to many)
Relasi ini terjadi jika banyak instance entity berelasi dengan
banyak instance entity lainnya.
    Gambar 2.6  relationship *:* (Connolly & Begg)
A.
B.
C.
r1
r2
r3
r4
D
E
F
G
  
30
2.7.3
   Atribut (Atribut)
Atribut
merupakan properti dari suatu entity
maupun
relationship . Atribut bisa bernilai tunggal (single-valued)
ataupun bernilai jamak (multi valued).
Primary key
Primary key
didefinisikan candidate key
yang
dipilih guna secara unik megidentifikasikan suatu entity.
(Connolly, 2010, p381)
Candidate key
Candidate key didefinisikan sebagai jumlah minimal
dari atribut-atribut yang nilainya dapat secara unik
mengidentifikasikan suatu entity. (Connolly, 2010, p381)
Composite key
Composite key
didefinisikan sebagai candidate key
yang terdiri atas dua atau lebih atribut. (Connolly, 2010,
p382)
Langkah-langkah yang harus  dilakukan untuk membuat
sebuah ERD antara lain: 
1. Menentukan entiti
Menentukan peran, kejadian, lokasi, hal nyata dan konsep
dimana penggunaan untuk menyimpan data. Entiti
  
31
berguna untuk menentukan peran, kejadian, lokasi, hal
nyata dan konsep penggunaan untuk database.
2. Menentukan relasi
Menentukan hubungan antara pasangan entitas dengan     
menggambarkan matriks relasi.
3. Gambar ERD sementara
Pada tahap ini, entitas digambarkan dengan kontak dan   
relasi digambarkan dengan garis.
4. Isi kardinalitas
Menentukan jumlah kejadian suatu entitas
untuk sebuah
kejadian pada entitas yang berhubungan.
5. Tentukan primary key
Menentukan atribut yang mengidentifikasikan satu
kejadian masing-masing entitas.
6. Gambar ERD berdasarkan primary key
Pada tahap ini, relasi many to many
dihilangkan. Lalu,
primary key dan foreign key dimasukkan ke dalam entity
masing-masing.
7. Menentukan atribut
Menentukan field-field yang dibutuhkan oleh system.
8. Pemetaan atribut
  
32
Apabila atribut telah ditentukan, atribut-atribut yang sudah
ditentukan sebelumnya dimasukkan ke dalam entity yang
sesuai.
9. Gambar ERD dengan atribut
Melakukan langkah no. 6 dengan menambahkan atribut
dan relasi-relasi yang ditemukan.
10. Periksa hasil
Pada tahap ini, ERD yang sudah dibuat harus diperiksa
kembali untuk memeriksa apakah ERD yang sudah dibuat
sesuai dan menggambarkan sistem yang dibangun.
2.8 
Normalisasi
Menurut Connolly dan Begg (2010,p416) normalisasi adalah sebuah
teknik untuk menghasilkan sekumpulan relasi dengan properti yang diinginkan,
yang akan memberikan kebutuhan data bagi perusahaan. Tujuan utama dari suatu
normalisai adalah untuk mengurangi terjadinya redudansi data dan mengurangi
masalah yang terjadi pada relasi atau lebih dikenal anomaly.
Anomaly
adalah suatu masalah yang timbul seperti data ganda, data
hilang, tempat pemborosan memori, dan data yang tidak konsisten akibat proses
penghapusan data, pembaruan data, pemasukan data dan penggantian data.
  
33
Tujuan normalisasi adalah sebagai berikut:
1.
Menghilangkan kumpulan relasi dari inserting, updating, dan delete
dependency yang tidak diharapkan.
2.
Membuat model relasional yang lebih informatif.
3.
Membuat sekecil mungkin terjadinya data rangkap.
4.
Menghindarkan adanya data yang tidak konsisten terutama bila
dilakukan penghapusan atau penambahan data sebagai akibat adata
data rangkap.
Menurut Connolly dan Begg (2010, p428), proses normalisasi meliputi:
1.
First Normal Form (1NF)
Bentuk normal pertama biasa dikenakan pada relasi (tabel) yang
belum ternormalisasi, Relasi yang belum ternormalisasi adalah relasi
yang memiliki atribut yang berulang. Untuk mentransformasi suatu
relasi yang belum ternormalisasi ke dalam bentuk normal pertama
dilakukan dengan cara mengidentifikasikan dan menghilangkan
repeating group
yang terdapat dalam relasi. Suatu relasi dikatakan
dalam bentuk normal pertama jika dan hanya jika setiap atribut
bernilai tunggal untuk setiap baris.
  
34
2.
Second Normal Form (2NF)
Bentuk normal kedua didefinisikan berdasarkan ketergantungan
fungsional. Suatu relasi berada dalam bentuk normal kedua jika dan
hanya jika:
a.
Berada dalam bentuk normal pertama.
b.
Semua atribut composite key memiliki ketergantungan
sepenuhnya terhadap primary key.
3. Third Normal Form (3NF)
Suatu relasi dikatakan dalam bentuk normal ketiga (3NF) jika:
a.
Berada dalam bentuk normal kedua.
b.
Setiap atribut composite key
tidak memiliki
ketergantungan transitif (Transitive dependency) terhadap
primary key. Transitive dependency terjadi ketika sebuah
atribut composite key
tergantung pada satu atau lebih
atribut composite key.
2.9 
Tipe Data
Tipe data adalah variable yang menentukan bagaimana bit-bit mewakili
nilai-nilai  yang disimpan dalam memori komputer. (Microsoft)
Adapun ukuran bytes yang disimpan dalam memori komputer dari beberapa tipe
data yaitu:
  
35
Tabel 2.2 Ukuran Tipe Data Sql Server (Microsoft)
Type data
Storage Size (Bytes)
Char
n
Varchar
n+2
Integer
4
DateTime
8
2.10   State Transiition Diagram (STD)
Menurut Pressman (2001,302), state transition diagram
(STD) menunjukkan
bagaimana sistem bertingkah laku sebagai akibat dari kejadian eksternal. Untuk
melakukannya STD menunjukkan berbagai model tingkah laku disebut state sistem dan
cara di mana transisi dibuat dari state satu ke state lainnya. STD berfungsi sebagai dasar
untuk pemodelan tingkah laku.
Ada dua macam simbol yang umum digunakan untuk menggambarkan proses
dalam STD yaitu: 
a.
Gambar persegi panjang menunjukkan state dari sistem.
b.
Gambar panah menunjukkan transisi antar state.Tiap panah diberi label
dengan ekspresi aturan. Label diatas sebagai input dan label dibawah sebagai
output.
2.11
Microsoft SQL Server
Menurut Allen G. Taylor (2003,p2), Microsoft SQL Server adalah sebuah
sistem manajemen basis data relasional (RDBMS) produk microsoft. Umumnya
SQL server digunakan di dunia bisnis yang memiliki basis data berskala kecil
  
36
sampai dengan menengah. Tetapi kemudian berkembang dengan digunakannya
SQL server pada basis data besar.
2.12
Visual Basic
Menurut Burrows (2000,p7), Visual Basic adalah sebuah program yang
didesain khusus untuk memfasilitasi kebutuhan programmer
dalam
pengembangan sebuah program baru. Visual basic meneyediakan dua hal untuk
digunakan oleh programmer, yaitu programming tools
yang digunakan oleh
programmer untuk menentukan komponen-komponen dalam program yang
sedang dibuat, dan programming language
yang memungkinkan programmer
untuk membuat perintah-perintah untuk dikerjakan oleh program yang sedang
dibuat.
2.13
Pelatihan karyawan
2.13.1
   Pengertian Pelatihan
Menurut Mondy (2008,p210), pelatihan adalah aktivitas-aktivitas
yang dirancang untuk memberi pada para pembelajar pengetahuan dan
keterampilan yang dibutuhkan untuk perkerjaan mereka saat ini.
Sedangkan, pelatihan menurut Rivai dan Sagala (2009,p212)
adalah proses secara sistematis mengubah tingkah laku pegawai untuk
mencapai tujuan organisasi. Pelatihan berkaitan dengan keahlian dan
kemampuan pegawai untuk melaksanakan pekerjaan saat ini. Pelatihan
memiliki orientasi saat ini dan membantu pegawai untuk mencapai
  
37
keahlian dan kemampuan tertentu agar berhasil dalam melaksanakan
pekerjaannya.
Jadi, dapat disimpulkan bahwa, pelatihan adalah suatu kegiatan
dan proses untuk meningkatkan keahlian dan kemampuan dalam
pekerjaannya saat ini agar tercapainya tuuan organisasi.
2.13.2  Tujuan pelatihan karyawan
Tujuan dari pelatihan menurut beach dalam buku   Sofyandi
(2008,p114) adalah:
1. Reduce learning time to reach acceptable performance,
maksudnya dengan adanya pelatihan maka jangka waktu yang
digunakan karyawan untuk memperoleh keterampilan akan lebih
cepat. Karyawan akan lebih cepat pula menyesuaikan diri dengan
pekerjaan yang dihadapinya.
2. Improve performance on present job, Pelatihan bertujuan untuk
meningkatkan pretasi kerja karyawan dalam menghadapi
pekerjaan-pekerjaan yang sedang dihadapi.
3.  Attitude formation, pelatihan diharapkan dapat membentuk sikap
dan tingkah laku para karyawan dalam melakukan perkerjaanya.
Dititikberatkan pada peningkatan partisipasi dari para karyawan,
kerjasama antar karyawan dan loyalitas terhadap perusahaan.
  
38
4. Aid in solving operating problem, pelatiham membantu
memecahkan masalah-masalah operasional perusahaan sehari-
hari, seperti mengurangi kecelakaan kerja, mengurangi absen,
mengurangi labor turnover, dan lain-lain.
5. fill manpower needs, pelatihan tidak hanya mempunyai tujuan
jangka pendek, tetapi juga jangka panjang yaitu mempersiapkan
karyawan memperoleh keahlian dalam bidang tertentu yang
dibutuhkan perusahaan.
6.
Benefits to employee themselves, dengan pelatihan diharapkan
para karyawan akan mempunyai kemampuan dan pengetahuan
yang tinggi sehingga karyawan tersebut akan semakin berharga
bagi perusahaan. Selain itu juga akan menambah nilai dari
karyawan tersebut yang akan membuat karyawan yang
bersangkutan memperoleh merasa aman dalam melakukan
pekerjaan sehingga menimbulkan kepuasaan dalam dirinya.
2.13.3  Metode pelatihan karyawan
Beberapa metode
yang dapat digunakan untuk memenuhi
kebutuhan pelatihan organisasi dan mencapai tujuannya  (Byars dan
rue,2006,p167-169):
  
39
1. On-the-Job Training dan Job Rotation
On-the-Job Training
(OJT)  biasanya diberikan oleh karyawan
senior atau manajer. Karyawan diperlihatkan cara melakukan
pekerjaan dan diperbolehkan untuk melakukannya dibawah
pengawasan pelatih. Salah satu dari On-the-Job Training adalah
job rotation, disebut juga sebagai cross training. Dalam job
rotation, individu belajar beberapa pekerjaan yang berbeda dalam
unit kerja atau departemen dan melakukan setiap pekerjaan untuk
periode waktu tertentu.
2.  Apprenticeship Training
Memberikan instruksi, baik di dalam maupun di luar pekerjaan,
dalam aspek praktis dan teoritis dari kebutuhan kerja dalam suatu
pekerjaan yang sangat terampil.
3. Classroom Training
Metode pelatihan yang paling terkenal, berguna untuk dapat
cepat menyampaikan informasi kepada kelompok besar dengan
sedikit atau tanpa pengetahuan subjek.
3. Virtual Classroom
Virtual Classroom adalah mengajar online dan lingkungan belajar
yang mengintegrasikan chat room, desktop video conferencing.
Situs web dan distribusi email kedalam sistem berbasis kuliah.
  
40
2.13.4  Faktor-faktor yang perlu dipertimbangkan dan   berperan dalam
pelatihan dan pengembangan
Beberapa faktor yang perlu dipertimbangkan dan berperan dalam
pelatihan dan pengembangan (Rivai dan Sagala,2009,p226):
1.
Cost-efectiveness (efektivitas biaya),
2.
Materi program yang dibutuhkan.
3.
Prinsip-prinsip pembelajaran.
4.
Ketepatan dan kesesuaian fasilitas.
5.
Kemampuan dan preferansi peserta pelatihan.
6.
Kemampuan dan preferansi infrastruktur pelatihan.
  Alasan latihan personal perlu diselenggarakan oleh organisasi
perusahaan (Wexley & Yulk dalam buku Sutrisno (2009,p72-73)):
1.
Seleksi personel tidak selalu menjamin akan personel
tersebut cukup terlatih dan bisa memenuhi persyaratan
perkejaannya secara cepat. Kenyataannya, banyak diantara
mereka herus mempelajari pengetahuan, keterampilan, dan
sikap-sikap yang diperlakukan setelah mereka diterima di
dalam pekerjaan.
2.
Bagi personel yang sudah senior kadang-kadang perlu ada
penyegaran dengan latihan-latihan kerja. Hal ini disebabkan
berkembangnya kapasitas pekerjaan, cara mengoperasikan
mesin-mesin dan teknisnya, untuk promosi dan mutasi.
  
41
3.
Manajemen sendiri menyadari bahwa program latihan yang
efektif dapat berakibat: peningkatan produktivitas,
mengurangi absen, mengurangi labor turn over dan
peningkatan kepuasan kerja.
2.13.5    Evaluasi pelatihan
 
Program pelatihan bisa dievaluasi berdasarkan informasi yang
bisa diperoleh pada lima tingkatan (Faustino Cardoso Gomes dalam
buku Yuniarsih dan Suwatno )(2009,p138-139):
1.
Reaction
Ukuran mengenai reaksi ini didesain untuk mengetahui opini
dari para peserta mengenai program pelatihan. Usaha untuk
mendapatkan opini dari para peserta tentang pelatihan ini,
terutama didasarkan pada beberapa alasan utama seperti:
Untuk mengetahui sejauh mana peserta merasa puas
dengan program.
Untuk maksud diadakannya beberapa revisi atas
program pelatihan.
Untuk menjamin agar para peserta yang lain
bersikdap reseptif untuk program pelatihan.
  
42
2.
Learning
Informasi yang ingin diperoleh melalui jenis evaluasi ini
adalah untuk mengetahui seberapa jauh peserta menguasai
konsep-konsep, pengetahuan, dan keterampilan-keterampilan
yang diterima
selama pelatihan. Ini biasanya
dilakukan
dengan mengadakan test tertulis (essay  atau multiple choice),
tes performasi dan latihan latihan simulasi. Pertanyaan
disusun sedemikian rupa sehingga mencakup semua is imateri
dari semua program latihan.
3.
Behaviors
Perilaku dari peserta, sebelum dan sesudah pelatihan dapat
dibandingkan guna mengetahui tingkat pengaruh pelatihan
terhadap perubahan performasi mereka. Perilaku atau
performasi dari para peserta dapat diukur berdasarkan sistem
evaluasi performasi guna mendapatkan tingkat performasi
para peserta yang dikumpulkan oleh para supervisor masing-
masing untuk dibandingkan dengan performasi sesudah
latihan.
4.
Organizational Result
Tujuan dari pengumpulan informasi pada level ini adalah
untuk menguji dampak pelatihan terhadap kelompok kerja
atau organisasi secara keseluruhan. Data bisa dikumpulkan
  
43
sebelum dan sesudah pelatihan atas dasar kriteria
produktivitas, pergantian absen, kecelakaan-kecelakaan,
keluhan-keluhan, perbaikan kualitas, kepuasan klien, dan
sejenis lainnya.
5.
Cost Creativity
Ini dimaksud untuk mengetahui besarnya biaya yang
dihabiskan bagi program pelatihan, dan apakah besarnya
biaya untuk pelatihan tersebut terhitung kecil atau besar
dibandingkan biaya yang timbul dari permasalahan yang
dialami organisasi. Kriteria ini diukur dengan membantu
biaya program dengan biaya permasalahan. Biaya
permasalahan (problem cost) adalah biaya yang dpat dilihat,
kerugian-kerugian ekonomi yang dialami oleh suatu
organisasi sebagai akibat dari penggunaan pegawai yang tidak
terlatih.