Bab 4 DESAIN DATABASE (MODEL RELASIONAL DAN DESKRIPSI ATRIBUT)
4.1. Tujuan desain database.
Basis data (database) merupakan kumpulan dari data yang saling berhubungan 
satu dengan yang lainnya, tersimpan di simpanan luar komputer dan digunakan
perangkat lunak tertentu untuk memanipulasinya. Database merupakan salah 
satu komponen yang penting di sistem informasi, karena berfungsi sebagai 
basis penyedia informasi bagi para pemakainya. Penerapa database dalam 
sistem informasi disebut dengan database system. Sistem basis data 
(database system) ini adalah suatu sistem informasi yang mengintegrasikan
kumpulan dari data yang saling berhubungan satu dengan lainnya dan 
membuatnya tersedia untuk beberapa aplikasi yang bermacam-macam di dalam 
suatu organisasi.
Tujuan dari desain database adalah untuk menentukan data-data yang 
dibutuhkan dalam sistem, sehingga informasi yang dihasilkan dapat 
terpenuhi dengan baik. Terdapat beberapa alasan mengapa desain database 
perlu untuk dilakukan, salah satu adalah untuk menghindari pengulangan data.
Adapun metode untuk meminimasi pengulangan data (data redudancy) antara 
lain dengan :
a. Normalisasi.
b. Dekomposisi lossless.
   Diperlukan jika ada indikasi bahwa tabel yang kita buat tidak baik 
   (terjadi pengulangan informasi, potensi inkonsistensi data pada operasi
   pengubahan, tersembunyinya informasi tertentu) dan diperlukan supaya 
   jika tabel-tabel yang didekomposisi kita gabungkan kembali dapat       
   menghasilkan tabel awal sebelum didekomposisi, sehingga diperoleh tabel 
   yang baik. 
c. ERD (Entity Relationship Diagram).
d. Menentukan kardinalitas relasi.
Terdapat beberapa pengertian tentang key sehubungan dengan normalisasi dan 
ERD, antara lain :
a. Superkey adalah gugus dari sejumlah atribut entiti yang dapat digunakan
   untuk mengidentifikasi obyek secara unik.
b. Candidate key adalah superkey dengan jumlah atribut minimal dan dapat
   berdiri sendiri.
c. Primary key adalah superkey yang dipilih oleh desainer atau administrator
   basis data.
4.2. Normalisasi.
Adalah proses yang berkaitan dengan model data relational untuk 
mengorganisasi himpunan data dengan ketergantungan dan keterkaitan yang 
tinggi atau erat. Hasil dari proses normalisasi adalah himpunan-himpunan 
data dalam bentuk normal (normal form). Ada beberapa bentuk normal, yaitu :
a. Bentuk Normal I (First Normal Form / 1-NF).
b. Bentuk Normal II (Second Normal Form / 2-NF).
c. Bentuk Normal III (Third Normal Form / 3-NF).
d. Bentuk Normal IV (Fourth Normal Form / 4-NF).
e. Bentuk Normal Boyce-Codd (Boyce-Codd Normal Form / BCNF).
f. Project-Join Normal I Form (PJNF).
g. Domain-Key Normal I Form (DKNF).
h. Bentuk Normal V (Fifth Normal Form / 5-NF).
Kegunaan normalisasi :
a. Meminimasi pengulangan informasi.
b. Memudahkan indentifikasi entiti / obyek.
4.3. Bentuk Normal I (First Normal Form / 1-NF).
Suatu relasi memenuhi 1-NF jika dan hanya jika setiap atribut dari relasi
tersebut hanya memiliki nilai tunggal dalam satu baris atau record.
Tabel 4.1 : Bentuk tidak Unnormalized Form (Non 1-NF table) Tabel 4.2 : Bentuk 1-NF table
4.4. Bentuk Normal II (Second Normal Form / 2-NF).
Suatu relasi memenuhi 2-NF jika dan hanya jika :
a. Memenuhi 1-NF.
b. Setiap atribut yang bukan kunci utama tergantung secara fungsional
   terhadap semua atribut kunci dan bukan hanya sebagian atribut.
Jika suatu relasi memenuhi 1-NF dan relasi tersebut memiliki tepat satu
atribut yang membentuk kunci utama, maka relasi tersebut memenuhi 2-NF.
Rasionalisasi 2-NF :
a. Memiliki semantik yang lebih eksplisit dari 1-NF.
b. Mencegah beberapa kondisi anomali  dalam update data.
Tabel 4.3 : Bentuk 2-NF table (satisfying 1-NF).
Ketergantungan fungsional dilakukan untuk :
a. StudentID => Student, BirthDate (SC1).
b. CourseID => Course, Credit (SC2).
c. StudentID, CourseID => Grade (SC3, SC3A).
d. Grade => Weight (SC3B).
Tabel 4.4 : Tabel yang memenuhi 2-NF.
Tabel 4.5 : Tabel yang memenuhi 3-NF.
Akhirnya semua tabel SC1, SC2, SC3A, SC3B berada dalam kondisi  3-NF, 
sehingga semua databases mengalami kondisi 3-NF.
4.5. Bentuk Normal III (Third Normal Form / 1-NF).
Suatu relasi memenuhi bentuk III (3-NF) jika dan hanya jika :
a. Relasi tersebut memenuhi 2-NF.
b. Setiap atribut bukan kunci tidak tergantung secara fungsional kepada 
   atribut bukan kunci yang lain dalam relasi tersebut.
Suatu relasi yang memenuhi 2-Nf dan hanya memiliki satu atribut bukan kunci
selalu memenuhi 3-NF.
4.6. Bentuk Normal Boyce-Codd (Boyce-Codd Normal Form / BCNF).
Suatu relasi memenuhi BCNF jika dan hanya jika setiap determinan yang ada
pada relasi tersebut adalah kunci kandidat (candidate keys).
Determinan adalah gugus atribut dimanaa satu atau lebih atribut lain
tergantung secara fungsional.
4.7. Model Hubungan atau Relasi Entiti (Entity Realtionship (E-R) Model).
Model relasi entiti didasarkan pada persepsi dunia nyata yang terdiri dari
himpunan obyek dasar yang disebut entiti dan relasi antar entiti.
Entiti adalah obyek yang dapat diidentifikasi secara unik.
Entiti dikarakterisasi dan dipresentasikan dengan suatu gugus atribut. 
Contoh gugus atribut dari entiti PEKERJA adalah nama, tanggal lahir, NIP,
golongan/pangkat.
Sekelompok entiti yang memiliki karakterisasi entiti disebut gugus entiti
(entity set).
Setiap entiti dari gugus tersebut disebut anggota gugus (member of set). 
Contoh gugus entiti adalah gugus entiti pegawai bank, gugus entiti nasabah
bank. Dari beberapa gugus tadi mungkin terjadi suatu relasi, misalnya relasi
antara gugus bank dengan gugus nasabah bank.
Berdasarkan jumlah gugus yang terlibat maka relasi antar entiti dibedakan
menjadi :
a. Relasi biner (binary), yaitu relasi antar 2 gugus entiti.
b. Relasi trio (ternary), yaitu relasi antar 3 gugus entiti.
c. Relasi N-ary, yaitu relasi antar n gugus entiti.
Khusus untuk relasi biner maka relasi antar anggota dari dua gugus yang
terlibat (kardinalitas relasi biner) dapat bersifat :
a. Relasi 1-1 (one-to-one relationship).
   Adalah satu entiti anggota gugus diasosiasikan dengan tepat satu entiti
   anggota gugus yang lain. 
b. Relasi 1-banyak (one-to-many relationship).
   Adalah satu entiti anggota gugus diasosiasikan dengan satu atau lebih
   entiti anggota gugus yang lain. Sebaliknya satu entiti anggota gugus 
   yang lain tersebut diasosiasikan dengan tepat satu entiti anggota gugus
   pasangannya.
c. Relasi banyak-1 (many-to-one relationship).
   Adalah satu entiti anggota gugus diasosiasikan dengan satu atau lebih
   entiti anggota gugus yang lain dan berlaku pula sebaliknya.
4.8. Menterjemahkan ERD ke Tabel
4.9. Tipe file.
Database dibentuk dari kumpulan file. File di dalam pemrosesan aplikasi 
dapat dikategorikan ke dalam beberapa tipe, diantaranya yaitu sebagai 
berikut :
1. File induk (master file).
   Didalam aplikasi, file ini merupakan file yang penting. File ini tetap
   terus ada selama hidup dari sistem informasi. File induk dapat dibedakan
   lagi menjadi :
   a. File induk acuan (reference master file), yaitu file induk yang
      recordnya relatif statis, jarang berubah nilainya. Contoh dari file 
      ini adalah file daftar gaji, file daftar matakuliah.
   b. File induk dinamik (dynamic master file), yaitu file induk yang nilai
      dari record-recordnya sering berubah atau sering dimutakhirkan 
      (updated) sebagai akibat dari suatu transaksi. Contoh file ini adalah       file induk persediaan, file induk langganan dan lain sebagainya.
2. File transaksi (transaction file).
   File transaksi disebut juga dengan nama file input (input file). 
   File ini digunakan untuk merekam data hasil dari suatu transaksi yang 
   terjadi. Misalnya nilai unit suatu barang dapat diketahui dari file 
   induk persediaan. File induk ini hanya menunjukkan status unit akhir 
   dari barang yang dimaksud. Sedang uni akhir ini berasal dari transaksi- 
   transaksi yang pernah terjadi. Untuk melihat transaksi-transaksi yang
   mempengaruhi nilai di file induk, maka dapat dilihat pada file
   transaksinya. Contoh file transaksi yang lain adalah file transaksi 
   penjualan yang berisi data tentang transaksi penjualan yang terjadi. 
   Biasanya file transaksi memuat rekaman tanggal dari transaksinya yang 
   menunjukkan kapan transaksi tersebut terjadi.
3. File laporan (report file).
   File ini disebut juga dengan file output (output file), yaitu file yang 
   berisi dengan informasi yang akan ditampilkan. File ini dibuat untuk 
   mempersiapkan pembuatan suatu laporan dan biasanya dilakukan bila 
   printer belum siap atau masih digunakan oleh proses yang lain.
4. File sejarah (history file).
   File sejarah dibuat judan dengan file arsip (archival file), yaitu file 
   yang berisi dengan data masa lalu yang sudah tidak aktif lagi, tetapi    
   perlu disimpan untuk keperluan mendatang.
5. File pelindung (backup file).
   File pelindung merupakan salinan dari file-file yang masih aktif di 
   database pada suatu saat tertentu. File ini digunakan sebagai cadangan 
   atau pelindung bila file database yang aktif rusak atau hilang.
6. File kerja (working file).
   File kerja disebut juga dengan nama file sementara (temprorary file) 
   atau scratch file. File ini dibuat oleh suatu  proses program secara 
   sementara karena memori komputer tidak mecukupi atau untuk menghemat 
   pemakaian memori selama proses  dan akan dihapus bila proses telah 
   selesai.
4.10. Akses dan organisasi file.
Akses file (access file) adalah suatu metode yang menunjukkan bagaimana 
suatu program komputer akan membaca record-record dari suatu file. 
File dapat diakses dengan dua cara yaitu secara urut (sequential access) 
atau secara langsung (direct access atau random access). Metode akses urut 
(sequential access method) dilakukan dengan membaca atau menulis suatu 
record di file dengan membaca terlebih dahulu mulai dari record pertama, 
urut sampai dengan record yang diinginkan. Metode akses langsung (direct 
access method) dilakukan dengan cara langung membaca record pada posisinya 
di file tanpa membaca dari record pertama terlebih dahulu.
Organisasi file adalah pengaturan dari record secara logika didalam file 
dihubungkan satu dengan yang lainnya. File dapat diorganisasikan secara 
urut (sequential organization) atau secara acak (random organization). 
Walaupun organisasi file dan pengaksesan file dapat dipandang secara 
terpisah, tetapi biasanya pembahasan mengenai organisasi file menyangkut 
keduanya, yaitu sebagai berikut :
a. File urut (sequential file) merupakan file dengan organisasi urut 
   (sequential organization) dengan pengaksesan secara urut (sequential 
   access).
b. File urut berindeks (indexed sequential file) atau sering disebut dengan 
   ISAM (indexed sequential access method) merupakan file dengan organisasi
   urut (sequential organization) dengan pengaksesan secara langsung 
   (direct access).
c. File akses langsung (direct access file) atau disebut dengan file alamat 
   langsung (direct address file) merupakan file dengan organisasi acak 
   (random organization) dengan pengaksesan langsung (direct access).
Organisasi file seperti ini  disebut dengan organisasi file tradisional atau 
konvensional, karena telah ada sebelum struktur database dikembangkan. 
Organisasi file database dapat berbentuk struktur data berjenjang 
(hierarchical data structure), struktur data jaringa (network data structure) 
dan struktur data hubungan (relational data structure). Struktur data 
hubungan merupakan organisasi file database yang terbaru dan mudah dipahami. 
Struktur data hubungan mempunyai karakteristik sebagai berikut :
a. File dalam bentuk tabel yang persis dengan file urut.
b. Hubungan antara record didasarkan pada nilai dari field kunci, bukan 
   berdasarkan alamat atau pointer.
Struktur data hubungan makin banyak digunakan pada paket-paket DBMS, seperti
misalnya Dbase, Foxbase, Sql dan sebagainya.
4.11. Langkah-langkah desain database.
Untuk tahap desain database yang perlu dilakukan adalah mengidentifikasi 
terlebih dahulu file-file yang diperlukan dalam sistem informasi yang 
dibangun. File-fila database yang dibutuhkan oleh sistem dapat dilihat pada 
desain model yang digambarkan dalam bentuk diagram arus data (DFD). 
Langkah-langkah desain database secara umum adalah sebagai berikut :
a. Menentukan kebutuhan file database untuk sistem yang baru.
   File yang dibutuhkan dapat ditentukan dari DAD sistem baru yang telah 
   dibuat.
b. Menentukan parameter daru file database.
   Setelah file-file yang dibutuhkan telah dapat ditentukan, maka parameter 
   dari file selanjutnya juga dapat ditentukan. Parameter tersebut, meliputi: 
   · Tipe dari file : file induk, file transaksi, file sementara (temporary).
   · Media dari file : hardisk, disket, pita magnetik, CD.
   · Organisasi dari file :  fila sequential, random, berindek.
   · Field kunci dari file.
Analis sistem dapat menggunakan formulir berikut untuk mengidentifikasi file
database yang akan didesain, sebagai berikut :
Tabel 4.6 : Tabel identifikasi kebutuhan file.
Tabel 4.7 : Tabel identifikasi atribut (field) dalam sebuah file.
Daftar Pustaka
1. Fathansyah, Ir, Basis Data, Penerbit Informatika, Bandung, 1995.
2. HM, Jogiyanto, Analysis and Disain Sistem Informasi (Pendekatan
   terstruktur), Penerbit Andi Offset, Yogyakarta, 1995.
3. Martin, Merle P., Analysis and Design of Business Information
   System, Macmillan Publishing Company, New York, 1991.
4. Pohan, Husni Iskandar, Pengantar Perancangan Sistem, Penerbit
   Erlangga, Jakarta, 1997.
Ke Menu
Last update 24 Oktober 00
Rabu, 20 Oktober 2010
bab 4
Posted by RIE- on 17.43



0 komentar:
Posting Komentar