BAB 2
LANDASAN TEORI
2.1 Teori-teori Database
2.1.1 Pengertian Basis data
Menurut Kristanto (1993, p1), basis data adalah kumpulan file-file
yang
saling berelasi, relasi tersebut biasa ditunjukkan dengan kunci dari tiap file yang
ada. Suatu basis data menunjukkan satu kumpulan data yang dipakai dalam satu
lingkup perusahaan, instansi.
Basis data adalah kumpulan data yang terhubung secara logika yang bisa
dipakai  secara  bersama  dan  deskripsi  mengenai  data  tersebut,  yang  didesain
untuk memenuhi kebutuhan informasi dari sebuah organisasi (Connolly, 2002,
p14).
Menurut Subekti (1998, p8), basis data adalah kumpulan terintegrasi dari
occurences
file/table yang
merupakan
representasi
data
dari
suatu
model
enterprise.
Berdasarkan beberapa pendapat diatas disimpulkan bahwa basis data
merupakan 
sekumpulan 
data 
yang 
saling 
berhubungan 
dan 
diolah 
untuk
memenuhi kebutuhan suatu organisasi.
7
  
8
2.1.2 Database Management System
a.   Pengertian Database Management System(DBMS)
Menurut Connoly dan Begg (2002,p16),
Database
Management
System
adalah
sebuah
sistem piranti
lunak
yang
memperbolehkan
pengguna mendefinisikan, membuat, memelihara, dan mengkontrol
pengaksesan ke basis data.
Menurut Kristanto (1994, p1),
suatu Database Management
System (DBMS) berisi satu koleksi data yang saling berelasi dan satu
set program untuk mengakses data terebut. Jadi DBMS terdiri dari
Database  dan  set  program
pengolah  untuk  menambah  data,
mengambil dan membaca data.
Menurut Kadir (1999, p16), DBMS diartikan sebagai suatu
program komputer yang digunakan untuk
memasukkan, menghapus,
memanipulasi,
dan
memperoleh
data
atau
informasi
dengan
praktis
dan efisien.
DBMS biasanya menyediakan fasilitas-fasilitas seperti :
1.   Memungkinkan
user
untuk
mendefinisikan
basis
data,
biasanya
melalui sebuah Data Definition Language (DDL).
2.   Memungkinkan user
untuk
meng-insert, update, delete data dari
basis data, biasanya melalui Data Manipilation Language (DML).
  
9
memungkinkan satu orang yang bisa mengakses data pada
menyediakan :
-
Sebuah 
Sistem  keamanan, 
mencegah 
user 
yang  tidak
terotorisasi untuk mengakses basis data.
-
Sistem
Integritas
memainkan
konsistensi
dari
penyimpanan basis data.
-
Sistem
Concurrency
Control,
memungkinkan
akses
database bersama.
-
Sistem 
Recovery 
Control, menyimpan
basis  data 
jika
terjadi kegagalan hardware atau software.
b.   Komponen Utama Database Management System (DBMS)
Komponen  utama  DBMS  dapat  dibagi  menjadi  4  macam,  Kadir
(1999,pp18-29).
Perangkat Keras
Berupa Komputer dan bagian-bagian didalamnya, seperti
processor, memori, harddisk. Komponen ilmiah pemrosesan
dan juga untuk menyimpan basis data.
Data
Data didalam basis data mempunyai sifat :
Terpadu
(integrated), berarti data dapat
dipakai
oleh
sejumlah
pengguna
dalam waktu
bersamaan.
Sifat
ini
biasanya terdapat pada sistem multi-user yang merupakan
kebalikan dari sistem
single-user, yakni sistem yang hanya
  
10
memungkinkan satu orang yang bisa mengakses data pada
satu waktu.
Pengguna
Pengguna dapat diklasifikasikan menjadi tiga kategori :
1.   Pengguna akhir / End-User
Pengguna akhir ada 2 macam :
1.   Pengguna aplikasi
Pengguna aplikasi adalah orang yang
mengoperasikan program aplikasi yang dibuat oleh
pemogram aplikasi.
2.   Pengguna Interaktif
Pengguna interaktif adalah orang yang dapat
memberikan
perintah-perintah
berasas tinggi pada
antarmuka basis data yang tersedia atau melakukan
perintah-perintah melalui antarmuka berbasis menu.
2.   Pemrograman aplikasi/ Programmer
Pemogram aplikasi adalah orang yang membuat program
aplikasi
yang
menggunakan
basis
data.
Program aplikasi
yang dibuat sesuai dengan kebutuhan pengguna.
  
11
3.   Administrasi basis data/ Database Administrator
Administrator basis data (DBA/ Database Administrator)
adalah  orang  bertanggung  jawab  terhadap  pengelolaan
basis data.
c.   Fungsi-fungsi DBMS
Beberapa
fungsi dari DMBS
yang
dikemukakan oleh Connolly dan
Begg (2002, P48), adalah sebagai berikut:
1.   Data Storage, retrieval, and update
Sebuah manajemen Sistem Basis Data
harus melengkapi atau
menyediakan
pengguna dengan kemampuan penyimpanan,
penelusuran kembali, dan mengubah data dalam basis data.
2.   A user-accessible catalog
Sebuah DBMS harus menyediakan catalog yang
mendeskripsikan lokasi penyimpanan
data
dan
dapat
diakses
oleh pengguna.
3.   Transaction Support
DBMS harus menyediakan sebuah mekanisme yang akan
menjamin 
setiap 
dari 
semua 
kegiatan  update
yang
berhubungan dengan transaksi maupun tidak.
  
12
4.   Concurrency Control Services
DBMS  harus  menyediakan  sebuah  mekanisme  untuk
menjamin
bahwa database
ter-update
dengan
benar
ketika
beberapa
pengguna
meng-update
database pada waktu yang
bersamaan.
5.   Recovery Services
DBMS harus menyediakan sebuah mekanisme untuk
memperbaiki basis data yang rusak karena sesuatu kejadian.
6.   Authorization Services
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    ber-integrasi    dengan    software
komunikasi.
8.   Integrity Services
DBMS 
harus 
menyediakan  sebuah 
cara 
untuk 
menjamin
bahwa
data dalam basis
data dan perubahan
data,
keduanya
mengikuti aturan-aturan yang tepat.
9.   Service to Promote Data Independence
DBMS harus meliputi fasilitas-fasilitas yang mendukung
program-program independensi dari struktur basis data actual.
10. Utility Services
DBMS seharusnya menyediakan satu set pelayanan fasilitas.
  
13
2.1.3. Data Definition Language
DDL
adalah
perintah-perintah
yang
bisa
digunakan
oleh administrator
basis  data  (DBA) 
untuk 
mendefinisikan  skema  ke  DBMS.  Skema  adalah
deskripsi
lengkap
tentang
struktur
medan,
rekaman,
dan
hubungan
data
pada
basis data. Tugas utama skema adalah menjabarkan struktur basis data kepada
DBMS.
DDL juga dipakai untuk mendefinisikan sub-skema. Sub-skema adalah
pandangan (view) bagi pengguna terhadap basis
data.
Sub-skema
merupakan
himpunan
bagian
dari
skema.
Dengan kata
lain,
sub-skema
bisa
mencakup
sebagian atau seluruh bagian skema.
DDL  juga  digunakan  untuk  menciptakan,  mengubah,  dan  menghapus
basis data.
2.1.4. Data Manipulation Language
DML adalah perintah-perintah yang digunakan untuk mengubah,
memanipulasi,   dan   mengambil   data   pada   basis   data.   Tindakan   seperti
menghapus, mengubah, dan mengambil data menjadi bagian dari DML.
Pada dasarnya DML dibagi menjadi dua:
1.   Prosedural, yang menuntut pengguna menentukan data apa saja yang
dibutuhkan dan bagaimana cara mendapatkannya.
2.   Non prosedural,
yang
menuntut pengguna
menentukan data apa saja
yang diperlukan, tetapi tidak menyebutkan cara mendapatkannya.
DML  non  prosedural  ini  menawarkan  kemudahan  bagi  pengguna
  
14
dalam
mempelajarinya
dan
juga dalam
mengggunakannya
daripada
DML prosedural.
2.1.5.   Normalisasi
a.   Pengertian Normalisasi
Menurut  Connolly  dan  Begg  (2002,  P376)  normalisasi  adalah
suatu teknik
untuk
menghasilkan
seperangkat relasi dengan properti
yang diinginkan, dengan data yang diberikan oleh suatu perusahaan.
Tujuan utama dari suatu normalisasi adalah untuk mengurangi
terjadinya data ganda dan mengurangi masalah yang terjadi pada satu
relasi atau lebih yang dikenal dengan anomali.
b.   Proses Normalisasi
Pertama
kali
dikembangkanoleh E.F.
Codd
(1972b).
Proses
normalisasi sering dilakukan sebagai rangkaian test suatu hubungan
untuk
menentukan apakah memenuhi atau melanggar kebutuhan dari
bentuk normal yang ditentukan.
Sebuah
tabel
yang
belum dinormalisasi
disebut
dengan
Unnormalize Form (UNF). UNF adalah
sebuah
tabel
yang memiliki
satu atau lebih repeating groups (Connolly, 2002, p387).
1. Normalisasi Pertama (1st NF)
Untuk
membentuk
normalisasi
pertama
(1NF)
repeating group
harus
dihilangkan.
Untuk
mentransfer
tabel unnormalize
ke
tabel
normalisasi pertama kita harus mencari dan memindahakan data-data
  
15
yang berulang (repeating group). Suatu hubungan dikatakan
normal
pertama jika:
a.   setiap dari baris dan kolom berisi atribut yang bernilai tunggal
b.   kunci primer telah ditentukan
c.   atribut nilai banyak (multi value) telah dihilangkan
2. Normalisasi Kedua (2
nd
NF)
Normalisasi
kedua
(2 NF)
adalah
sebuah
relasi
pada
1NF
dan
setiap
atribut
yang
non-primary-key
adalah fully
functionally
dependent pada primary key. Kondisi fully functionally dependent
dapat diciptakan dengan menghilangkan partial dependency.
Suatu hubungan berada dalam bentuk normal kedua jika:
a.   Berada pada bentuk normal pertama
b. Atribut 
bukan 
kunci 
primer 
(non-primary-key
telah
dihilangkan atau semua atribut bukan kunci primer bergantung
funsional sepenuhnya kepada kunci primer.
3. Normalisasi Ketiga (3rd NF)
Normalisasi
ketiga
(3NF)
dilakukan
dengan cara
melihat
apakah
terdapat atribut bukan key tergantung fungsional
terhadap atribut bukan
key yang lain (Transitive Dependence). Dengan cara yang sama, maka
setiap ketergantungan transitif dipisahkan.
Suatu hubungan berada dalam bentuk normal ketiga jika:
a.   Berada pada normal pertama dan normal kedua.
b.   Setiap atribut bukan kunci tidak memiliki dependency transitif
terhadap kunci primer.
  
16
4.   Boyce-Codd normal form (BCNF)
Aturan bentuk normal Boyce-Codd (BCNF) menurut Connoly dan
Begg (p398), “A relation is in BCNF, if and only if, every determinant is
a
candidate key”.
Yang
dapat
diartikan,
“sebuah
relasi
disebut
BCNF,
jika dan hanya jika setiap determinannya adalah sebuah candidate key”.
Untuk
menguji
apakah
suatu
relasi
sudah
dalam BCNF,
dilakukan
identifikasi   semua   determinan   dan   memastikan   bahwa   determinan
tersebut
adalah candidate
key. Determinan adalah sebuah atribut, atau
kumpulan
atribut, dimana
beberapa atribut yang lain masih bergantung
secara fungsional penuh (fully functionally dependent).
Perbedaan antara 3NF dan BCNF dalam full
functional dependency
A-> B, 3NF
mengijinkan ketergantungan
ini dalam sebuah relasi jika
B
adalah atribut primary key dan A bukan candidate key. Sedangkan dalam
BCNF
ketergantungan
ini
tetap
ada
di
dalam sebuah
relasi, dimana
A
harus sebuah candidate key.
5.   Normalisasi Keempat (4
th
NF)
Aturan  bentuk  normal  ke-empat  (4NF)  menurut  Connoly  dan
Begg (pp407 – 408), “A relation that is in Boyce-Codd normal form and
contains no nontrivial multi-valued dependencies”. Yang dapat diartikan,
“Sebuah
relasi
dalam Boyce-Codd normal
form (BCNF)
dan
tidak
mengandung
ketergantungan
multi-valued
nontrivial (nontrivial
multi-
valued dependencies).”
Bentuk  normal  ke-empat  (4NF)  merupakan  bentuk  yang  lebih
kuat dari BCNF dimana 4NF mencegah relasi dari nontrivial multi-valued
  
17
dependency dan
data
redundancy.
Normalisasi
dari
BCNF
ke
4NF
meliputi
pemindahan
multi-valued dependency
dari
relasi
dengan
menempatkan
atribut
dalam sebuah
relasi
baru
bersama
dengan
determinan.
Multi-valued dependency (MVD) menggambarkan ketergantungan
antara atribut dan dalam suatu relasi.
6.   Normalisasi Kelima (5th NF)
Aturan bentuk normal ke-lima (5NF) menurut Connoly dan Begg
(p410), “A relation that has no join dependency”. Yang dapat diartikan,
“sebuah relasi yang tidak mempunyai ketergantungan gabungan (join
dependency)”.
Join dependency menggambarkan sebuah tipe ketergantungan.
Sebagai contoh, untuk sebuah relasi R dengan subset-subset atribut dari R
yang dimisalkan dengan A,B,……..,Z, sebuah relasi R menunjukkan join
dependency, jika dan
hanya 
jika,  setiap 
nilai  dari 
R  sama  dengan
gabungan dari proyeksi-proyeksinya pada A,B,……...,Z.
  
18
2.1.6.   4th GL (Generation Language)
Fourth-generation  language  meliputi bahasa pemograman yang kecil.
4GL adalah non prosedural: pengguna menjelaskan apa yang dikerjakan,
bukan
bagaimana.
Pengguna
tidak
harus menjelaskan langkah-langkah
yang
dibutuhkan
program untuk
melakukan
tugas,
tetapi
malahan
menjelaskan parameter-parameter untuk peralatan yang menggunakan
mereka untuk meghasilkan program aplikasi. Fourth-generate languages
meliputi:
Bahasa presentasi, seperti bahasa query dan report generators
Bahasa khusus, seperti spreadsheet dan database language
Application generators yang menjelaskan, insert, update, dan
retrieve data dari database ke aplikasi yang dibuat
Bahasa level tinggi yang digunakan untuk menghasilkan kode
aplikasi
  
19
2.1.7.   Siklus Hidup Aplikasi Database
Gambar 2.1 Siklus hidup aplikasi database
(Sumber : Connoly dan Begg, 2002, p297)
  
20
2.1.7.1.Database Planning
Database planning adalah merencanakan bagaimana tahap-tahap
dari lifecycle dapat direalisasikan dengan cara yang paling efisien
dan efektif. Perencanaan basis data harus terintegrasi dengan
sistem informasi (Connolly, 2002, p273).
1. Identifikasi rencana dan
tujuan perusahaan dengan penentuan
sistem informasi yang diperlukan
2.
Evaluasi  sistem  informasi  yang  sekarang  digunakan 
untuk
menentukan kelemahan dan kekuatannya.
3.
Penilaian  tentang  peluang  IT  yang 
mungkin 
menghasilkan
keuntungan yang kompetitif
Perencanaan  database
juga 
harus 
meliputi 
pengembangan
strandar pengumpulan data, bagaimana penetapan format,
dokumentasi  yang  diperlukan,  bagaimana  design  dan
implementasi diproses.
2.1.7.2. System Definition
System
definition menspesifikasikan
jangkauan
dan
batasan dari
aplikasi basis data, penggunaaannya, dan lingkungan aplikasi.
2.1.7.3. Requirements Collection and Analysis
Proses pengumpulan dan analisis informasi mengenai bagian dari
organisasi yang akan mendukung aplikasi basis data dan
menggunakan informasi ini untuk mengidentifikasikan kebutuhan
user pada sistem baru.
  
21
Pada  bagian  ini  dilakukan  pengumpulan  dan  analisa  informasi
mengenai bagian-bagian dari enterprise yang akan menggunakan
atau  terkait  dengan  basis  data 
yang  akan  dibuat.  Untuk 
itu
digunakan teknik yang disebut dengan fact finding techniques.
Terdapat   lima   teknik   fact  finding  yang   umum   digunakan
(Connolly, 2002, p305):
1.
Mengevaluasi dokumen
2.
Interview
3.
Mengobservasi
jalannya
kegiatan
kerja
pada
perusahaan
4.
Research riil
5.
Quesioner
2.1.7.4. Database Design
Database design adalah proses membuat sebuah desain untuk
sebuah
basis
data
yang
mendukung kegiatan operasional suatu
enterprise (Connolly, 2002, p279) pada bagian ini dibagi menjadi
tiga tahap yaitu konseptual, logikal, dan fisikal.
2.1.7.4.1.   Conceptual Database Design
Fungsi dari tahap ini adalah untuk membuat
representasi konseptual dari basis data, termasuk
identifikasi
entity-entity
yang
penting, relationship,
atribut.   Pada   tahap   ini   dibagi   menjadi   beberapa
langkah, yaitu:
Langkah 1. Bangun lokal konseptual data model untuk
  
22
setiap view
Langkah 1.1. Tentukan tipe entity
Langkah 1.2. Tentukan tipe relationship
Langkah 1.3. Tentukan dan hubungkan atribut dengan
entity atau tipe relationship
Langkah 1.4. Menentukan domain atribut
Langkah 1.5. Menentukan atribut candidate dan
primary key
Langkah 1.6. Pertimbangkan penggunaan konsep
permodelan yang lebih tinggi (langkah
optional)
Langkah 1.7. Memeriksa model akan kemungkinan
redundancy
Langkah 1.8. Validasikan model konseptual lokal akan
transaksi pengguna
Langkah 1.9. Membahas ulang model data konseptual
lokal dengan pengguna
2.1.7.4.2.   Logical Database Design
Tahapan ini memetakan model konseptual ke sebuah
model logiKal yang dipengaruhi oleh model data yang
menjadi
tujuan
basis
data.
Dalam logical
database
design, model data yang telah diperoleh dalam
conceptual
database
design
diubah
dalam bentuk
logical
model dimana data
yang ada dipengaruhi oleh
  
23
model data yang menjadi tujuan basis data. (contoh:
relational model). Hal ini dilakukan untuk
menterjemahkan  presentasi  konseptual  ke  dalam
bentuk
struktur
logic
dalam basis data. Logical
data
model
merupakan sumber
informasi dalam merancang
physical database. Logical
database
design
memberikan sarana yang membantu para perancang
dalam 
merancang  fisikal database.  Pada 
tahap  ini
dibagi menjadi beberapa langkah, yaitu:
Langkah  1.  Bangun  dan  validasi  lokal  logical  data
model untuk setiap view
Langkah 1.1. Buang hal-hal yang tidak cocok
dengan model relational
Langkah 1.2. Buat relations untuk logical data
model
Langkah 1.3. Ubah data tidak normal dengan
menggunakan normalisasi
Langkah 1.4. Validasi relations berlawanan dengan
transaksi pengguna
Langkah 1.5. Definisikan integrity constraints
Langkah 1.6. Tinjau kembali lokal logical data
model dengan pengguna
Langkah 2.
Bangun dan validasi global logical data
model
  
24
Langkah 2.1. Ubah logical data model menjadi
global model
Langkah 2.2  Validasi global logical data model
Langkah 2.3. Perhatikan pertumbuhan kedepan
Langkah 2.4. Tinjau kembali global logical data
model dengan pengguna
2.1.7.4.3.   Physical Database Design
Pada
tahapan
ini
memungkinkan
perancang database
untuk membuat keputusan mengenai bagaimana
database akan diimplementasikan. Oleh karena itu,
Physical
database
design harus
disesuaikan
dengan
DBMS yang spesifik. Pada tahapan ini dibagi menjadi
beberapa langkah:
Langkah  1. 
Terjemahkan  global  data 
model 
untuk
target DBMS
Langkah 1.1. Desain tabel
Langkah 1.2. Desain representasi data turunan
Langkah 1.3. Desain enterprise constraints
Langkah 2. Desain representasi physical
Langkah 2.1. Analisa transaksi
Langkah 2.2. Pilih organisasi file
Langkah 2.3. Pilih index
  
25
Langkah 2.4. Perkirakan kebutuhan kapasitas
tempat penyimpanan
Langkah 3. Desain user views
Langkah 4. Desain mekanisme keamanan
2.1.7.5. DBMS Selection
Yaitu  memilih 
DBMS 
(Database Management System)  yang
sesuai
untuk
aplikasi-aplikasi
basis
data. Berikut
ini
adalah
langkah-langkah
utama
dalam memilih
DBMS
(Connolly, 2002,
p284)
1. Menggambarkan
cakupan
tugas
berdasarkan
kebutuhan
perusahaan
2. Membuat perbandingan mengenai dua atau tiga produk DBMS
3. Mengevaluasi produk-produk DBMS tersebut
4. Merekomendasikan  pemilihan  DBMS  dan  membuat  laporan
hasil dari evaluasi produk DBMS tersebut.
2.1.7.6. Application Design
Yaitu merancang antar muka dan program aplikasi yang
menggunakan dan memproses basis data (Connolly, 2002, p287)
  
26
2.1.7.7. Prototyping
Membangun
model
kerja
dari
aplikasi basis data yang
memperbolehkan
perancang atau pengguna untuk
memvisualisasikan dan
mengevaluasi bagaimana
sistem akhirnya
akan tampak dan berfungsi.
Ada dua cara strategi membuat prototype (Connolly, 2002, p291),
yaitu:
1.   Requirement Prototyping
Menggunakan
prototype untuk menentukan kebutuhan
suatu aplikasi basis data yang dibutuhkan
dan ketika
kebutuhan dirasakan sudah lengkap maka
prototype
tersebut tidak digunakan lagi.
2.   Evolutionary Prototyping
Digunakan untuk tujuan yang sama, perbedaannya adalah
bahwa prototype tidaklah dibuang tetapi dikembangkan
lebih lanjut sehingga menjadi aplikasi basis data tersebut.
2.1.7.8. Implementation
Implementasi
merupakan
perwujudan fisik dari basis data dan
desain aplikasi
(Connolly,
2002,
p292). Implementasi basis data
dicapai
dengan
menggunakan Data Definition Language
(DDL)
dari DBMS yang telah dipilih atau dengan menggunakan
Graphical User Interface (GUI),
masing-masing
menyediakan
fungsi ketika menyembunyikan pernyataan (statement) DDL yang
low-level.   Pernyataan   (statement)   DDL   digunakan   untuk
  
27
menciptakan struktur basis data dan mengosongkan file yang
terdapat dalam basis data tersebut. User view juga diterapkan pada
langkah implementasi.
2.1.7.9. Data Conversion dan Loading
Pemindahan data
yang
ada
ke
dalam basis
data
yang
baru
dan
mengubah aplikasi yang sedang berjalan agar dapat digunakan
dalam basis data yang baru (Connolly, 2002, p293).
2.1.7.10. Testing
Testing 
adalah 
suatu 
proses 
melaksanakan 
program  aplikasi
dengan tujuan mencari kesalahan dan divalidasi untuk kebutuhan
yang dispesifikasikan oleh pengguna (Connoly, 2002, p293). Jika
data riil diharapkan untuk digunakan,
maka adalah penting untuk
mempunyai back up. Setelah pengujian diselesaikan, maka sistem
aplikasi dan basis data ini telah siap untuk digunakan.
2.1.7.11. Operational Maintenance
Pada  tahap  pemeliharaan  (maintenance),  yang  melibatkan
aktivitas berikut (Connolly, 2002, p293):
a. Monitoring
Performance
dari
sistem.
Jika
performance
jatuh
dibawah
suatu
tingkatan
yang
bisa diterima,
penyetelan
atau
reorganisasi basis data mungkin diperlukan.
  
28
b. Maintaining dan meningkatkan mutu aplikasi basis data (ketika
diperlukan).
Kebutuhan baru
disatukan
kedalam aplikasi
basis
data dengan mengikuti langkah-langkah sebelumnya yang
terdapat dalam database lifecyle.
2.1.8.   Desain Konseptual, Logikal dan Fisik Database
2.1.8.1.Desain Konseptual Database
Perancangan
konseptual
merupakan proses konstruksi suatu
informasi yang digunakan dalam sebuah organisasi.
Fase perancangan konseptual bermula dari pembuatan data model
konseptual dari organisasi, yang sepenuhnya bebas
mengimplementasikan rincian-rincian seperti mengenal sasaran
dari manajemen sistem basis data (DBMS), program-program
aplikasi,  bahasa  pemrograman,  platform  perangkat  keras,
persoalan kinerja, atau pertimbangan fisik lainnya.
2.1.8.2.Desain Logikal Database
Perancangan basis data logikal adalah proses konstruksi suatu
informasi
yang digunakan dalam sebuah perusahaan berdasarkan
pada sebuah
model
data
yang
spesifik,
tetapi bebas
dari
fakta-
fakta DBMS dan pertimbangan-pertimbangan fisik lainnya.
Fase perancangan basis data
secara logikal memetakan model
perancangan konseptual pada sebuah model logikal, yang mana
dipengaruhi oleh model data untuk target basis data (Contoh:
model relational).
Model data
logikal
adalah
sumber
informasi
  
29
bagi fase perancangan fisik,
menyediakan perancangan fisik
dengan wahana untuk pembuatan penjualan yang sangat penting
untuk sebuah perancangan basis data yang efisien.
2.1.8.3. Desain Fisik Database
Perancangan basis data secara
fisik
merupakan proses pembuatan
deskripsi dari implementasi basis data pada media penyimpanan
sekunder dan fase ini mendeskripsikan dasar relasi, berkas
organisasi
dan
indeks
untuk
mencapai pengaksesan data yang
efisien, dan beberapa batasan hubungan yang utuh dan tingkatan
keamanan.
Fase perancangan basis data secara fisik memperbolehkan
perancang membuat keputusan-keputusan berdasarkan pada
bagaimana basis data diimplementasikan. Agar, perancangan
fisikal
ditoleransi
untuk
sebuah
manajemen
Sistem Basis
Data
yang spesifik. Ada timbal balik antara perancangan logikal dan
fisikal, karena keputusan-keputusan yang diambil selama
perancangan fisikal mengembangkan kinerja yang bisa
mempengaruhi model data logikal.
  
30
2.2 Teori Penjadwalan
Penjadwalan  (timetabling)  adalah  suatu  kegiatan  administratif  utama
pada sebagian besar institusi. Kegiatan operasional institusi akan bergantung
sepenuhnya pada jadwal (timetable) yang dibuat. Menurut Burke, E., Petrovic, S.
(2002) dan Wren (1996) didefinisikan penjadwalan sebagai berikut:
“Timetabling is the allocation, subject to constraints, or given resources
to objects being placed in space time, in such way to satisfy as nearly as possible
a set of desirable objectives.”
Berdasarkan definisi diatas, penjadwalan adalah pengalokasian sumber
daya pada objek-objek yang ada pada ruang waktu dan bergantung pada kendala
dan sedemikian sehingga sedapat mungkin memenuhi kondisi-kondisi tertentu.
Dalam proses
penjadwalan,
sumber
daya
yang
ada
harus
dialokasikan
secara optimal, efektif dan efisien, serta sedapat
mungkin
memenuhi kebutuhan
yang ada
namun biaya
yang dikeluarkan harus pantas. Penjadwalan
merupakan
masalah yang sangat sulit dan telah menjadi bahan penelitian di bidang Teknik
Riset Operasional (TRO) dan Intelegensia Semu (IS). Menurut Fang (1994, p1),
sulitnya penjadwalan disebabkan oleh beberapa hal antara lain:
1. Penjadwalan
merupakan
masalah
NP-Complete
(Non-deterministic
Polynomial
Complete),  yaitu  suatu  permasalahan  dimana  dengan
bertambahnya variable secara linear maka waktu yang diperlukan untuk
memecahkan
masalah
itu bertambah
secara
ekponensial. Hal
ini
sering
disebut
juga
Combinatorial
Explosion,
selain itu
ruang solusi
yang
mungkin
(space
of
possible
solutions)
untuk
kebanyakan
masalah
riil
  
31
terlalu  besar  untuk  dilakukan  brute-force search atau  pencarian  yang
tidak terarah (undirected search).
2.   Teknik pencarian tingkat tinggi dengan menggunakan berbagai heuristic
untuk  memangkas  search  space  tidak  menjamin  dihasilkannya  suatu
solusi
yang
optimal
dan
sangat
sulit
untuk
mendesain
suatu
heuristic
yang efektif.
3.
Masalah
penjadwalan
sering
menjadi
rumit
karena
adanya special
constraints.
4.   Penjadwalan di dunia nyata sering melibatkan constraint yang tidak dapat
dipresentasikan atau bahkan tidak dapat dengan tepat dinyatakan.
2.2.1 Constraints Penjadwalan
Di dalam penjadwalan dikenal dua macam constraint (persyaratan), yaitu
hard constraints dan soft constraints. Hard constraints adalah
constraint
yang
tidak boleh dilanggar sama sekali sedangkan soft constraints adalah constraints
yang
lebih
bersifat
preference, yang
sedapat
mungkin
dipenuhi.
Pelanggaran
terhadap satu hard constraints saja akan
menyebabkan timetable
menjadi tidak
berguna
sedangkan
pelanggaran
terhadap soft constraints masih
bisa
diterima
namun
akan
menimbulkan
ketidaknyamanan
pihak
yang
memakai timetable
tersebut, berikut ini adalah beberapa contoh hard constraints dan soft constraints
di dalam course timetabling untuk institusi pendidikan. (Fang, 1994, p1).
  
32
Contoh hard constraints:
1.   Dosen  hanya  dapat  mengajar  pada  hari,  waktu  dan  mata  kuliah
tertentu sesuai dengan pilihannya (teacher’s avaibility).
2.   Mahasiswa dan dosen hanya bisa berada pada satu tempat pada satu
waktu.
3.   Satu  ruangan  hanya  bisa  dipakai  oleh  satu  mata  kuliah  saja  pada
waktu tertentu.
4.   Kapasitas 
ruangan 
harus 
lebih 
besar 
atau 
sama  dengan 
jumlah
mahasiswa yang mengambil kelas tersebut.
Contoh soft constraints:
1.   Jumlah
maksimum
dan
minimum
shift
dosen
mengajar
dan
mahasiswa mengikuti mata kuliah dalam satu hari.
2.   Shift  yang   diikuti   oleh   mahasiswa   dalam   satu   hari   sebaiknya
berurutan dan berada dalam satu gedung atau satu ruangan.
3.   Mata  kuliah  tertentu  sebaiknya  memakai  ruangan  yang  memiliki
fasilitas tertentu.
2.3 Teori Penilaian
2.3.1.  Pengertian,  fungsi,  dan  tujuan  penilaian  hasil  dan  proses  belajar
mengajar.
Belajar dan mengajar sebagai suatu proses mengandung tiga unsur
yang
dapat
dibedakan,
yakni
tujuan
pengajaran
(instruksional),
  
33
pengalaman 
(proses) 
belajar-mengajar,  dan 
hasil 
belajar. 
Hubungan
ketiga unsur tersebut digambarkan dalam diagram 1.
Tujuan Instruksional
(a)
(c)
Pengalaman Belajar
Hasil Belajar
Gambar 2.2 Hubungan pengajaran (instruksional), pengalaman (proses)
belajar-mengajar, dan hasil belajar
(Sumber : Sudjana, 1991, p2)
Dari diagram diatas dapat ditarik kesimpulan bahwa kegiatan
penilaian dinyatakan
oleh garis (c), yakni suatu tindakan atau kegiatan
untuk melihat sejauh mana tujuan-tujuan instruksional telah dapat dicapai
atau
dikuasai
oleh
siswa
dalam bentuk
hasil-hasil
belajarnya
yang
memperlihatkan   setelah   mereka   menempuh   pengalaman   belajarnya
(proses belajar mengajar).
Tujuan instruksional pada hakikatnya adalah perubahan tingkah
laku yang diinginkan pada diri siswa.
Ditinjau dari sudut bahasa, penilaian diartikan sebagai proses
menentukan nilai suatu objek. Untuk dapat menentukan suatu
nilai atau
harga suatu objek diperlukan adanya ukuran atau kriteria. Misalnya untuk
dapat  mengatakan  baik,  sedang,  kurang,  diperlukan  adanya  ketentuan
atau ukuran yang jelas bagaimana
yang baik, yang sedang, dan yang
kurang. Jadi, ciri penilaian adalah adanya objek atau program yang dinilai
  
34
dan
adanya
kriteria
sebagai
dasar
untuk
membandingkan
antara
kenyataan atau apa adanya dengan kriteria atau apa harusnya.
Dengan
demikian
inti
penilaian
adalah
proses memberikan
atau
menentukan 
nilai 
kepada 
objek 
tertentu 
berdasarkan 
suatu 
kriteria
tertentu. Penilaian hasil belajar adalah proses pemberian nilai terhadap
hasil-hasil belajar yang dicapai siswa dengan materi-materi tertentu. Hal
ini
mengisyaratkan
bahwa
objek
yang dinilainya
adalah
hasil
belajar
siswa.
Hasil
belajar
siswa
pada
hakekatnya
adalah
perubahan
tingkah
laku. Dalam penilaian hasil belajar, peranan tujuan
instruksional
yang
berisi rumusan kemampuan dan tingkah laku yang diinginkan dikuasai
siswa menjadi unsur penting sebagai dasar dan acuan penilaian. Penilaian
proses
belajar
adalah
upaya
memberi nilai terhadap kegiatan belajar
mengajar
yang dilakukan oleh
siswa
dan
guru
dalam mencapai
tujuan-
tujuan
pengajaran.
Dalam
penilaian
ini
dilihat
sejauh
mana
keefektifan
dan efisiennya dalam mencapai tujuan pengajaran atau perubahan tingkah
laku siswa.
Penilaian berfungsi sebagai:
a.   Alat
untuk
mengetahui
tercapai
tidaknya
tujuan
instruksional.
b.   Umpan balik bagi perbaikan proses belajar mengajar.
c.   Dasar 
dalam 
menyusun 
laporan 
kemajuan 
belajar
siswa pada para orang tuanya.
Tujuan penilaian adalah untuk:
  
35
dan
adanya
kriteria
sebagai
dasar
untuk
membandingkan
antara
sehingga dapat diketahui kelebihan dan kekurangannya
dalam berbagai bidang studi atau
mata pelajaran
yang
ditempuhnya.
b. Mengetahui
keberhasilan
proses
pendidikan
dan
pengajaran
di     sekolah     yakni     seberapa     jauh
keefektifannya
dalam mengubah
tingkah
laku
para
siswa ke arah tujuan pendidikan yang diharapkan.
c.   Menentukan tindak
lanjut penilaian,
yakni
melakukan
perbaikan
dan
penyempurnaan
dalam hal
program
pendidikan
dan       pengajaran       serta       strategi
pelaksanaannya.
d.   Memberikan pertanggungjawaban (accountability) dari
pihak sekolah kepada pihak yag berkepentingan.
2.3.2 Jenis dan sistem penilaian
Dilihat dari fungsinya jenis penilaian ada beberapa macam
yaitu:
1. 
Penilaian
formatif, adalah penilaian yang dilaksanakan
pada
akhir
program   belajar  
mengajar   untuk   melihat   tingkat
keberhasilan proses belajar mengajar itu sendiri.
2.  Penilaian sumatif, adalah penilaian yang dilaksanakan pada
akhir unit program, yaitu akhir caturwulan, akhir semester dan
akhir tahun.
  
36
3.   Penilaian
diagnostik,
adalah penilaian
yang
bertujuan
untuk
melihat
kelemahan-kelemahan
siswa
serta
faktor
penyebabnya.
4.
Penilaian
selektif,
adalah
penilaian yang bertujuan untuk
keperluan seleksi, misalnya ujian saringan masuk ke lembaga
pendidikan tertentu.
5.   Penilaian perempatan, adalah penilaian
yang ditujukan untuk
mengetahui ketrampilan prasyarat yang diperlukan bagi suatu
program belajar
dan
penguasaan
belajar
seperti
yang
di
programkan sebelum memulai kegiatan belajar untuk program
itu.
2.3.3
Prinsip dan Prosedur Penilaian
Prinsip
penilaian
yang
dimaksudkan
antara
lain
adalah
sebagai
berikut:
a.
Dalam menilai
hasil
belajar
hendaknya
dirancang
sedemikian rupa sehingga jelas abilitas yang harus
dinilai, materi penilaian, alat penilaian, dan interpretasi
hasil penilaian.
b.
Penilaian hasil belajar hendaknya menjadi bagian
integral dari proses belajar mengajar
c.
Agar diperoleh hasil belajar yang objektif dalam
pengertian menggambarkan prestasi
dan
kemampuan
siswa
sebagaimana     adanya,    
penilaian    
harus
  
37
3.   Penilaian
diagnostik,
adalah penilaian
yang
bertujuan
untuk
komprehensif.
d.   Penilaian   hasil   belajar   hendaknya   diikuti   dengan
tindak lanjutnya.
Ada  beberapa  langkah  yang  dapat  dijadikan  pegangan
dalam melaksanakan proses penilaian hasil belajar, yakni:
a.   Merumuskan atau mempertegas tujuan-tujuan pengajaran.
b.   Mengkaji kembali
materi
pengajaran
berdasarkan kurikulum
dan silabus mata pelajaran.
c. 
Menyusun alat-alat penilaian, baik tes maupun non-tes yang
cocok digunakan dalam menilai
jenis-jenis tingkah
laku
yang
tergambar dalam tujuan pengajaran.
d.
Menggunakan hasil-hasil penelitian sesuai dengan tujuan
penilaian tersebut, yakni untuk kepentingan pendeskripsian
kemampuan siswa, kepentingan perbaikan pengajaran,
kepentingan bimbingan belajar, maupun kepentingan
laporan
pertanggungjawaban pendidikan.
2.4. Teori Absensi
Di
lingkungan
suatu
lembaga
pendidikan setiap
hari
hadir
sejumlah
besar
manusia, terdiri dari orang-orang
yang berstatus Pimpinan Sekolah dan staf, guru-guru,
para murid dan karyawan  atau pegawai tata usaha. Jumlah yang cukup banyak itu tidak
memungkinkan  untuk  mengetahui  kehadiran  atau
ketidakhadirannya,  baik  sepanjang
hari
maupun pada
jam-jam tertentu selama
kegiatan
lembaga
pendidikan
berlangsung.
Untuk itu diperlukan daftar hadir atau absensi, yang biasanya dibedakan antara:
  
38
a.   Daftar hadir guru dan pegawai.
b.   Daftar hadir murid-murid
Dari
segi
administratif daftar
tersebut
dapat
memberikan
data
yang
sangat
berharga bagi pimpinan dalam menilai partisipasi setiap personal dalam kerjasama, baik
secara keseluruhan maupun dalam kegiatan-kegiatan tertentu. Dalam keadaan seperti itu
daftar hadir berfungsi sebagai alat bantu dalam mengadakan control.
Dari segi pendidikan, daftar hadir memiliki arti yang tak kalah pentingnya, baik
untuk pembinaan suatu pendidikan secara profesional maupun dalam memelihara tata
tertib atau disiplin secara kontinyu. Pada gilirannya sewaktu-waktu semua data tersebut
sangat berguna untuk kegiatan perencanaan, bimbingan dan pengarahan, koordinasi dan
komunikasi. Misalnya sulit dilakukan perencanaan yang baik bilamana tidak tersedia
data tentang jumlah murid dan guru yang akan dikenai kurikulum tertentu antara lain
untuk menetapkan berapa lokal diperlukan setiap tingkatan kelas, siapa saja guru yang
akan bertugas disetiap kelas dan bagaimana pengaturannya dan lain-lain.
2.5 Teori Pembayaran
Pembayaran adalah berpindahnya hak pemilikan atas sejumlah uang atau dana
dari pembayar kepada penerimanya, baik langsung maupun melalui media jasa
perbankan.
Pembayar adalah seseorang atau suatu perusahaan yang bersedia melepaskan hak
pemilikannya atas sejumlah uang atau dana kepada penerima.
Peneriman (payee) adalah seseorang atau suatu perusahaan yang menerima
pemilikan atas sejumlah uang atau dana dari pembayar.
Salah satu pembayaran yang terjadi dalam kegiatan sekolah dan merupakan dana
dari sumber sekolah sendiri  adalah Sumbangan Pembinaan Pendidikan (SPP) yang
  
39
diperoleh dari setiap siswa, yang besarnya tergantung pada kategori bagi setiap sekolah.
Demi tertibnya pengelolaan dana ini bagi sekolah negeri termasuk perguruan tinggi
disetorkan lebih dahulu kepada pemerintah, yang kemudian disalurkan kembali ke
sekolah oleh Departemen Pendidikan dan Kebudayaan. Sedang untuk sekolah swasta
dikelola sendiri, baik langsung oleh Kepala Sekolah maupun Yayasan/ Badan
Penyelenggara Sekolah.
2.6 State Transition Diagram (STD)
State Transition Diagram (STD) adalah suatu diagram yang menggambarkan
perubahan dari suatu keadaan selama pemrosesan suatu finite-state.
Notasi yang digunakan dalam diagram transisi adalah sebagai berikut :
 
State
State adalah kumpulan keadaan atau atribut yang mencirikan seseorang
atau suatu benda pada waktu tertentu, bentuk keberadaan tertentu atau kondisi
tertentu. State disimbolkan dengan segiempat.
 
Perubahan state (State Transition
State Transition merupakan suatu petunjuk perubahan keadaan yang
disimbolkan dengan panah berarah.
Perubahan State
Keadaan 1
Keadaan 2
  
40
 
Kondisi dan Aksi
Kondisi adalah suatu kejadian pada lingkungan yang dapat dideteksi oleh
sistem. Sedangkan aksi adalah yang dilakukan oleh sistembila terjadi perubahan.
Merupakan reaksin terhadap kondisi. Aksi akan menghasilkan keluaran, tampilan
pesan ke layar, menghasilkan kalkulasi, dan lain-lain (Kowal, 1988, p329).
2.7 Bagan Alir (Flowchart)
Banyak cara untuk menggambarkan bagan alir dokumen suatu
sistem, namun dalam buku karangan Mulyadi (2001, pp60-63) dipilihkan satu
cara yang sekarang secara luas digunakan oleh para analisis sistem untuk
melukiskan bagan alir dokumen suatu sistem.
Berikut ini adalah simbol-simbol standar dengan maknanya masing-masing.
Tabel 2.1 Simbol-simbol Bagan Alir(Flowchart)
Simbol
Nama
Keterangan
Dokumen
Menggambarkan semua jenis
dokumen, yang merupakan formulir
yang digunakan untuk merekam data
terjadinya suatu transaksi.
Dokumen dan
tembusannya
Menggambarkan dokumen asli dan
tembusannya. Nomor lembar dokumen
dicantumkan di sudut kanan atas.
Berbagai
dokumen
Menggambarkan berbagai jenis
dokumen yang digabungkan bersama
didalam suatu paket. Nama dokumen
  
41
dituliskan didalam masing-masing
simbol dan nomor lembar dokumen
dicantumkan di sudut kanan atas
simbol dokumen yang bersangkutan.
Catatan
Menggambarkan catatan akuntansi
yang digunakan untuk mencatat data
yang direkam sebelumnya didalam
dokumen atau formulir.
Penghubung
pada halaman
yang sama (on-
page connector)
Karena keterbatasan ruang hal kertas
untuk menggambar, maka diperlukan
simbol penghubung untuk
memungkinkan aliran dokumen
tertentu di suatu lokasi pada halaman
tertentu dan kembali berjalan di lokasi
lain pada halaman yang sama. Dengan
memperlihatkan nomor yang
tercantum didalam simbol penghubung
pada halaman yang sama, dapat
dikatakan aliran dokumen dalam
sistem yang digambarkan dalam bagan
alir.
Penghubung
pada halaman
Menunjukkan kemana dan bagaimana
bagan alir terkait satu dengan lainnya.
  
42
yang berbeda
(off-page
connector)
Nomor yang tercantum dalam simbol
penghubung menunjukkan bagaimana
bagan alir yang tercantum pada hal
tertentu terkait dengan bagan alir yang
tercantum pada hal yang lain.
Kegiatan manual
Uraian singkat kegiaan manual
dicantumkan didalam simbol ini.
Keterangan,
komentar
Untuk menambahkan keterangan guna
memperjelas pesan yang disampaikan
dalam bagan alir.
Arsip sementara
Menunjukkan tempat penyimpanan
dokumen. Terdapat dua tipe arsip
dokumen : arsip sementara dan arsip
permanent. Arsip semenara adalah
tempat penyimpanan dokumen yang
dokumennya akan diambil kembali di
arsip tersebut di masa yang akan
datang untuk keperluan pengolahan
lebih lanjut terhadap dokumen tersebut
untuk pengurutan pengarsipan
dokumen digunakan simbol berikut ini
A = menurut abjad.
N = menurut nomor urut.
  
43
T = kronologis, menurut tanggal
Arsip permanen
Menggambarkan arsip permanen yang
merupakan tempat penyimpanan
dokumen yang tidak akan diproses lagi
dalam sistem yang bersangkutan.
Mulai/ berakhir
(terminal)
Menggambarkan awal dan akhir suatu
sistem.
Keputusan
Menggambarkan keputusan yang harus
dibuat dalam proses pengolahan data.
Keputusan yang dibuat ditulis dalam
simbol.