Ketergantungan Fungsional (KF)/ Functional Dependency (FD) Functional Dependency (FD) adalah ketergantungan yang terjadi antara atribut-atribut dalam suatu entiti. Basis data yang baik, dalam satu entiti/tabel hanya ada 1 ketergantungan fungsional (KF) atau disebut dengan Basis data normal Notasi KF : A B Artinya : atribut B tergantung pada A Contoh : KodeMk NamaMk (artinya atribut NamaMk tergantung pada atribut KodeMk) NIM Nama,Alamat,Telp (artinya atribut Nama,Alamat, Telp tergantung pada atribut NIM) Dalam format lain Notasi KF dapt dituliskan juga dalam bagan berikut : NIM Nama Alamat Telp NIM Mutu Kodemk 4/10/2017 Fathur'2011
Dalam hal menyusun supaya basis data menjadi normal maka diperlukan suatu proses normalisasi. Hal-hal yang menjadi acuan dasar dalam proses normalisasi adalah tujuan pembentukan basis data, diantaranya harus menghilangkan hal-hal berikut : 1. pengulangan informasi (redudancy) 2. potensi inkonsistensi data pada operasi update 3. hindari atribut yang tidak perlu disimpan (derive attribut) 4. tersembunyinya informasi tertentu Normalisasi Memperlihatkan langkah-langkah normalisasi yang dilakukan. Diuraikan dalam bentuk notasi dan diagram Ketergantungan Fungsional mapupun nilai majemuk bagi entiti-entiti yang teridentifikasi belum normal serta tahapan normalisasi yang dilakukan 4/10/2017 Fathur'2011
a. Bentuk Normal Pertama Digunakan untuk mengidentifikasi atribut-atribut bernilai ganda atau lebih dikenal dengan multivalued attribut. Entiti harus bernilai atomik. Jika terdapat entiti yanng belum atomik, maka digambarkan penyelesaiannya sehingga menjadi nomal pertama. Berikut diberikan contoh entiti yang belum atomik, karena atribut hobi bisa saja berisi lebih dari satu, sebagai contoh : NIM Nama Hobi 4/10/2017 Fathur'2011
b. Bentuk Normal Kedua Digunakan untuk mengidentifikasi atribut-atribut non key yang partially functional dependent. KdMk (PK) NamaMk sks NIM (FK) Nama KdMk (FK) Nilai NIM (PK) Alamat N M Mahaiswa ambil Mata kuliah NIM Nama KdMk NamaMk Nilai NIM Nama Kodemk NamaMk Nilai NIM Nama Kodemk NamaMk Nilai NIM Kodemk Nilai KF-3 NIM Nama KF-1 KodeMk NamaMk KF-2 4/10/2017 Fathur'2011
c. Bentuk Normal Ketiga Digunakan untuk mengidentifikasi atribut-atribut non key yang termasuk atribut hasi proses atribut lain (derived attribut) dan atribut non key yang terkait non key lainnya. NoPinjam (PK) Tanggal NoAnggota (FK) Nama Jumlah Frekuensi Bunga Noang (FK) NoPinjam(FK) NoAng (PK) Alamat M 1 Anggota Pinjam Pinjaman NoPinjam (PK) Tanggal NoAnggota (Fk) Nama Jumlah Frekuensi Bunga Tanggal NoPinjam NoAnggota Jumlah Frekuensi Bunga Nama Tanggal NoPinjam NoAnggota Jumlah Frekuensi Bunga Nama 4/10/2017 Fathur'2011
Logical Data Model (LDM) Menggambarkan ERD yang sudah mengalami normalisasi. MHS NIM (PK) Nama Alamat TmpLahir TglLahir KdJurusan ThnMasuk Status KRS NoKrs (PK1) (FK) NIM (PK2) (FK) ThAkad Semester StatusStudi PilihMK NoKRS (PK1)(FK) KodeMK (PK2)(FK) StatusUlang HMutu 4/10/2017 Fathur'2011
Database Schema Menggambarkan LDM yang sudah normal dalam relasi antar entiti (Relational Database) dengan mencantumkan tipe data dari tiap atribut serta status atribut yang PK/FK. Contoh : MHS NIM (PK) Char(10) (PK) Nama Varchar(40) Alamat Varchar(60) TmpLahir VarChar(15) TglLahir DateTime KdJurusan Char(4) ThnMasuk Char(4) Status INT KRS NoKrs (PK) Char(10) (PK) NIM Char(10) (FK) ThAkad Char(9) Semester Char(1) StatusStudi Char(1) PilihMK NoKRS (PK1)(FK) Char(10) KodeMK (PK2)(FK) Char(6) StatusUlang Char(1) HMutu Char(1) 4/10/2017 Fathur'2011
Spesifikasi Basis Data Berisikan uraian rinci semua tabel yang berada dalam Database Schema. Format spesifikasi basis data : Nama File : Nama Entiti/Tabel Media : Media yang digunakan Isi : Uraian semua atribut yang ada Primary Key : Atribut yang menjadi PK Panjang Record : Panjang sebuah record yg dihitung dari lebar masing-masing atribut Jumlah Record : rata-rata jumlah record per satuan waktu Struktur : No Nama Field Tipe Data Lebar Desimal Keterangan 4/10/2017 Fathur'2011
Primary Key (PK) : kunci utama yang bersifat unik, Jenis-jenis Key : Key merupakan elemen record yang dipakai untuk menemukan record pada waktu akses. Primary Key (PK) : kunci utama yang bersifat unik, untuk identifikasi sebuah record 2. Secondary Key : atribut yang bisa dijadikan pengganti PK, tidak unik (NIM, Nama, Alamat) 3. Candidate Key : field-field / atribut-atribut yang bisa dipilih menjadi Primary Key (NIM, Nama, NoKwit, jumlah) 4. Alternate Key : candidate key yang tidak terpilih menjadi Primary Key. (NIM, Nama, Nokwit) 5. Composite Key : Primary key yang dibentuk dari beberapa atribut 6. Foregin Key : Atribut yang bukan key, tapi menjadi key pada file lain (KdMk, NamaMK, KdDosen) 4/10/2017 Fathur'2011
Studi Kasus : Sistem Penjualan Kue Sebuah toko kue bergerak dalam penyaluran kue/makanan. Toko tersebut mempunyai beberapa rekanan yang dijadikan sebagai pemasok (tempat membeli stock kuenya). Data kue disimpan dalam tabel kue. Setiap saat toko tersebut dapat membeli kue ke rekanannya. Dalam setiap pembelian dapat membeli beberapa jenis kue (dicatat no. beli, tgl beli beserta kue-kue yg dibeli dan jumlahnya). Jika ada kue rusak/kadaluarsa maka dapat dikembalikan /retur (dicatat no retur, tgl beserta kue-kue dan jumlahnya). Kue yang ada di toko tsb dapat dijual ke konsumen. Setiap penjualan dapat terdiri dari beberapa kue (dicatat no.jual, tgl jual beserta kue-kue yang dijual dan jumlahnya). 4/10/2017 Fathur'2011