76fe0 04 teknik normalisasi (2)

Desain Database
Dengan Teknik NORMALISASI

Pengetahuan Awal







Data vs Informasi
Attribut (Field)
Baris/Tupel (Record)
Relasi/Tabel
Basis Data (Database)
Attribute Key  Primary Key, Foreign Key

Barang
Kode_Barang


Kumpulan Table Pada “Koperasi
ABC” Karyawan
Nama_Barang

satuan

Harga

NIK

Nama_Karyawan

Bagian

40000

K1001

Agus Haryanto


Personalia

Botol

3000

K1002

Amri Setiadi

Kasir

Kecap ABC

Botol

2000

K1003


Mahdiyansyah

Sales

B004

Susu Bendera 400 gr

Kotak

15000

K1004

Yuri Irawan

Sales

B005


Rinso 1 Kg

Plastik

12000

K1005

Rachmat Nasir S

Sales

B001

Indomie Kari Ayam

Kardus

B002


Saus ABC 50 ml

B003

Detail_Pjl

H_Pjl

No_Fa
k

Kode_Barang

F0001

B001

Indomie Kari Ayam

Kardus


F0001

B002

Saus ABC 50 ml

Botol

F0002

B001

Indomie Kari Ayam

Kardus

F0002

B003


Kecap ABC

Botol

F0003

B001

Indomie Kari Ayam

Kardus

Nama_Barang

Satuan

Harga

Jumla

h

40000

1

3000

2

40000

5

2000

3

40000


2

No_Fak

Tgl_Fak

NIK

F0001

01/10/2004

K1001

F0002

02/10/2004

K1002


F0003

03/10/2004

K1003

Normalisasi
Teknik Normalisasi merupakan teknik
pengelompokan data elemen menjadi tabeltabel yang menunjukkan Relasi/Tabel dan
Hubungan antar Tabel.
Definisi

Syarat Normalisasi yang Optimal
adalah telah teruji dengan baik dalam beberapa
kondisi.
Apakah sudah tidak ada kesulitan pada saat;
•menambah,
•menghapus,
•membaca dan
•mengubah isi database dengan beberapa

relasi/tabel yang ada

Normalisasi
1. Mengidentifikasi hubungan antar Atribut/Field
2. Mengkombinasikan Atribut untuk membentuk
Relasi/Tabel

Tujuan

3. Mengkombinasikan Relasi/Tabel untuk membentuk
Database
4. Menghindari terjadiya anomali (kejadian menyimpang)
dan
inkonsistensi data karena terjadinya:
* Penambahan Record
* Modifikasi isi Atribut/Field
* Pengahupusan Record

Normalisasi
Kolom / Atribut / Field
Baris / Record / Tupel adalah kumpulan atribut-atribut yang
berelasi secara logika

Struktur
Relasi
(Tabel)

Candidate Key merupakan atribut-atribut dalam suatu table yang
mungkin dapat mengidentifikasikan secara unik suatu kejadian
spesifik dari entity. Jika satu kunci kandidat berisi lebih dari satu
atribut, maka kunci tersebut disebut Composite Key.
Primary Key merupakan suatu atribut yang tidak hanya
mengidentifikasikan secara unik kejadian spesifik, namun juga
dapat mewakili setiap kejadian dari suatu entity
Foreign Key merupakan atribut atau satu set atribut yang
digunakan untuk melengkapi suatu relationship (hubungan antar
table) yang menunjuk ke table induknya. Foreign Key berada
pada entity (table) anak, yang sama dengan Primary Key entity
(table) induk relasinya

Normalisasi
Functional Dependency
Jika terdapat sebuah relasi R(A, B), dimana atribut B adalah
bergantung fungsi pada atribut A, jika dan hanya jika setiap nilai
A mempunyai hubungan dengan tepat satu nilai B dalam setiap
satu waktu (bila setiap nilai yang berlaku pada B dapat
ditentukan oleh A). Dimana dalam notasi ditulis sebagai berikut:
A  B atau B = f(A).
Contoh:
Nama Pegawai bergantung secara fungsi pada NIP, dan NIP
dapat menunjukkan secara fungsi dari sebuah Nama
Pegawai dalam keseluruhan isi tabel Pegawai, maka dalam
notasinya dapat ditulis sebagai berikut:
NIP  Nama Pegawai atau Nama Pegawai = f(NIP).

Normalisasi

Fully Functional Dependency
Sebuah Relasi R( A, B, X ), dimana X tergantung fungsional pada AB.
X dinyatakan tergantung fungsional penuh (fully functional dependency)
bila tidak terjadi: A  X atau B  X, melainkan hanya AB  X.

Normalisasi

Unnormalized Form

Bentuk ini merupakan kumpulan data yang akan direkam,
tidak ada keharusan mengikuti suatu format tertentu
(format bebas), bisa saja tidak lengkap atau terduplikasi.
Data dikumpulkan apa adanya sesuai dengan
kedatangannya.

1st Normal Form/1NF
BentukBentuk
Normalisasi

Sebuah relasi berada dalam 1NF, jika relasi tersebut tidak
berisi atribut yang berulang-ulang (repeating groups).

2nd Normal Form/2NF
Sebuah Relasi adalah dalam 2NF, jika Relasi tersebut
dalam 1NF dan untuk setiap atribut bukan kunci (non-key)
adalah tergantung fungsional kepada Primary Key (PK).

3rd Normal Form/3NF
Sebuah Relasi adalah dalam 3NF, jika Relasi tersebut dalam
1NF dan 2NF dan untuk setiap atribut NK (non-key) tidak
punya hubungan yang transitif, atau setiap atribut NK
haruslah hanya bergantung pada PK, atau tidak bergantung
fungsional kepada NK attribute yang lainnya.

Normalisasi
Petunjuk pengembangan Relasi hingga 3NF:
1. Tentukan atribut-atribut dalam relasi
2. Kelompokkan atribut yang secara logis mempunyai hubungan
dalam relasi
3. Pilih CK (Candidate Key)
4. Bila ada RG (Rrepeating Group), normalisasikan terlebih dahulu
5. Pilih PK
6. Identifikasikan ketergantungan fungsional
7. Dekomposisi relasi selagi ada atribut NK yang belum
tergantung sepenuhnya terhadap PK
8. Kombinasikan relasi dengan PK yang identik
9. Temukan ketergantungan transitif (atribut yang tergantung
pada lebih dari 1 kunci)
10.Dekomposisi relasi sampai tidak ada ketergantungan transitif

Normalisasi
Kasus 1: 
Riwayat Pendidikan Formal Pegawai
NIP
Nama
Alamat
Telp.
Level
SD
SMP
.
.
S3

: ………………………………
: ………………………………
: ………………………………
  ………..…………………….
: …………….………
Nama Sekolah

Tahun

Nilai Rata­Rata

Normalisasi
Kasus 2:
Order Barang ke Vendor dari Banyak Departemen
No. Order : …………
Tanggal : ……………….
Kd. Vendor : …………
Nama
: …………………………………..……………………
Alamat
: ………………………………….…
  ………………………………….…
Telp.
: ……………….
Kode 

Deskripsi

Qty

Dept.

Nama Deprtement

Normalisasi
Kasus 3:
Penjualan Barang Tiap Sales Ke Banyak 
Pelanggan
No. Jual
     : …………
                                 Tanggal  : ………..……….
Kd. Pelanggan  : …………
Nama
     : …………………………………..……………….…
Alamat
     : ………………………………….………………..…   Telp.  : ……..………….
Kd. Sales         : …………   Nama Sales  : …………………………………….……………….
Kode 

Deskripsi

Qty

Harga

Total Kotor
Discount
Total Bersih

Total

TERIMA KASIH