Laporan praktikum normalisasi membahas proses normalisasi tabel faktur pembelian barang dari bentuk awal yang tidak normal menjadi bentuk normal satu. Tabel awal memiliki kelemahan seperti tidak fleksibel untuk diupdate, insert, dan delete, serta mengandung redundansi data. Proses normalisasi menghasilkan tabel normal satu yang masing-masing baris hanya berisi satu transaksi, sehingga fleksibel untuk dioperasikan dan bebas dari redundansi.
Obat Aborsi jakarta WA 082223109953 Jual Obat Aborsi Cytotec Asli Di jakarta
Laporan praktikum modul 5 (normalisasi)
1. LAPORAN PRAKTIKUM
SISTEM & TEKNOLOGI BASIS DATA
MODUL V
NORMALISASI
DISUSUN OLEH
NAMA : DEVI
NIM : 2012081043
KELAS : TI2012A
LABORATORIUM KOMPUTER
FAKULTAS ILMU KOMPUTER
UNIVERSITAS KUNINGAN
2013
2. I. DASAR TEORI
TEKNIK NORMALISASI DALAM PERANCANGAN BASIS DATA
RELASIONAL
Pendahuluan
Perancangan merupakan suatu hal yang sangat penting dalam pembuatan
basis data. Permasalahan yang dihadapi pada waktu perancangan yaitu bagaimana
basis data yang akan dibangun ini dapat memenuhi kebutuhan saat ini dan masa
yang akan datang. Untuk itu diperlukan perancangan basis data baik secara fisik
maupun secara konseptualnya. Perancangan konseptual akan menunjukkan entity
dan relasinya berdasarkan proses yang diiginkan oleh organsisasinya. Untuk
menentukan entity dan relasinya perlu dilakukan analisis data tentang informasi
yang ada dalam spesifikasi di masa yang akan datang.
Suatu basis data dibangun berdasarkan kebutuhan informasi dalam suatu
organisasi, oleh sebab itu pada umumnya perancangan basis data dimulai dari
pengamatan kebutuhan informasi. Proses perancangan basis data , dibagi menjadi
3 tahapan yaitu :
1. Perancangan basis data secara konseptual, tahapan ini merupakan upaya untuk
membuat model yang masih bersifat konsep..
2. Perancangan basis data secara logis, merupakan tahapan untuk memetakan
model konseptual kemodel basis data yang akan dipakai (modal relasional,
hirarkis, atau jaringan). Perancangan ini tidak bergantung pada DBMS yang
akan dipakai, itulah sebabnya perancangan basis data secara logis terkadang
disebut pemetaan model data.
3. Perancangan basis data secara fisis, merupakan tahapan untuk menuangkan
perancangan basis data yang bersifat logis menjadi basis data fisis yang
tersimpan pada media penyimpanan eksternal (yang spesifik terhadap DBMS
yang dipakai ).
Basisdata
Beberapa pengertian basisdata :
Basisdata merupakan kumpulan tabel-tabel atau files yang saling berelasi.
3. Basisdata merupakan kumpulan data non-redundant yang dapat digunakan
bersama (shared) oleh system aplikasi yang berbeda atau basis data
merupakan kumpulan data non redundant yang saling terkait satu sama lainya
yang dinyatakan oleh atribut-atribut kunci dari table-tabelnya.
Karena tidak semua pengguna basisdata terlatih dengan baik dan
penggunanya terbagi dalam beberapa tingkatan, maka kompleksitas basisdata
akan tersembunyi dari para penggunanya melalui beberapa level abstraksi data,
yaitu :
Level Fisik : merupakan tingkatan terendah dalam abstraksi data yang
menunjukkan bagaimana data disimpan, yang pada umunya tidak terlihat
oleh oleh pengguna atau programmer aplikasinya
Level konseptual : mengambarkan data apa saja yang sebenarnya (secara
fungsional) disimpan didalam basisdata beserta relasi-relasinya didalam
basisdata, dimana administrator basisdata (DBA) membangun dan
mengolah basisdata, contohnya: penguna akan mengetahui bahwa data
penjualan disimpan didalam tabel-tabel barang, produksi, keuangan,
marketing
Level View : merupakan tingkatan tertinggi, yaitu pengguna aplikasi dan
programmer hanya mengenal struktur data.
Model Konseptual Basisdata
Perancangan model konseptual basis data dalam sebuah organisasi menjadi
tugas dari Administrator basis data. Model konseptual merupakan kombinasi
beberapa cara untuk memproses data untuk beberapa aplikasi. Model konseptual
tidak tergantung pada aplikasi individual, DBMS digunakan, Hardware komputer
dan model fisiknya. Pada perancangan model konseptual basis data ini penekanan
dilakukan pada struktur data dan relasi antara file. Pada perancangan model
konseptual ini dapat dilakukan dengan menggunakan model data relasional.
Field (Atribut) Kunci
setiap file selalu terdapat kunci dari file berupa field atau satu set field yang
dapat mewakili record. Misalnya Nomor Pokok Mahasiswa (NPM) merupakan
4. kunci dari tabel mahasiswa suatu Perguruan Tinggi, setiap pencarian cukup
dengan menyebut nomor mahasiswa tersebut maka dapat diketahui identitas
mahasiswa lainnya seperti nama, alamat dan atribut lainnya.
Nomor Pegawai (NIP) bagi data dosen, NIK untuk data karyawan, Kode_Kuliah
untuk data Mata kuliah, dan lain sebagainya.
Jenis Atribut Pada Entitas
Atribut yang melekat pada suatu entitas ada bermacam tipe seperti yang akan
dijelaskan sebagai berikut :
Atribut Sederhana : atribut sederhana merupakan atribut atomik yang tidak
dapat lagi dipecah menjadi atribut lain. Contoh
Entitas mahasiswa mempunyai atribut sederhana berupa NIM, Nama
Mahasiswa .
Atribut Komposit : atribut komposit merupakan atribut yang masih dapat
dipecah menjadi sub-sub atribut yang masing-masing memiliki arti tersendiri.
Contoh : entitas mahasiswa mempunyai atribut alamat. Alamat disini dapat
dipecah menjadi sub atribut seperti nama_kota, kode_pos.
Atribut Bernilai Tunggal : yaitu atribut yang hanya memiliki satu nilai untuk
setiap barisnya.
Contoh : entitas mahasiswa mempunyai atribut NPM, Nama, Alamat isi data
dari atribut ini hanya boleh diisi dengan 1 data. Setiap mahasiswa hanya
memiliki 1 NPM, 1 Nama, 1 Alamat.
Atribut Bernilai Jamak : yaitu atribut yang boleh memiliki lebih dari satu nilai
untuk setiap barisnya.
Contoh : entitas mahasiswa mempunyai atribut Hobby isi data dari atribut ini
boleh lebih dari 1 data. Mahasiswa Roshita memiliki NPM 13402021
beralamat di Jalan Garuda 32 Yogyakarta memiliki Hobby (Olah Raga,
Nyanyi, Masak dan Nonton TV)
Atribut Harus Bernilai : yaitu atribut yang harus memiliki nilai data untuk
setiap barisnya. Biasanya atribut seperti ini sudah ditetapkan dalam
perancangan tabelnya sehingga jika dalam pengisian dokosongi akan terjadi
kesalahan.
5. Contoh : entitas mahasiswa mempunyai atribut NPM dan Nama_Mahasiswa
yang harus diisi datanya, sebab jika tidak diisi akan terjadi kekacauan dalam
basis data.
Atribut Bernilai Null : yaitu atribut yang boleh tidak memiliki nilai data untuk
setiap barisnya.
Contoh : entitas mahasiswa mempunyai atribut Alamat, Hobby, Nama_Pacar
yang boleh untuk tidak diisi tetapi kalau diisi akan lebih baik,
Atribut Turunan : yaitu atribut yang nilai-nilainya diperoleh dari pengolahan
atau dapat diturunkan dari atribut lain yang berkaitan.
Contoh : entitas mahasiswa mempunyai atribut IPK yang diperoleh dari
pengolahan atribut Nilai pada tabel (entitas Nilai) dengan kode NIM
mahasiswa yang sama dan diproses sehingga menghasilkan IPK untuk
mahasiswa yang bersangkutan.
Kebergantungan Fungsi
Kebergantungan Fungsi didefinisikan sebagai hubungan antara satu relasi
dengan relasi lainnya.
Misalnya : sebuah relasi R, atribut Y dan R adalah bergantung fungsi pada atribut
X dari R jika dan hanya jika setiap nilai X dalam R punya hubungan dengan tepat
satu nilai Y dalam R (dalam setiap satu waktu). File relasi pegawai atribut berisi :
No Pegawai, No KTP, Nama, Tempat Lahir, Tgl Lahir, Alamat, Kota. Isi dari
atribut nama bergantung pada No Pegawai. Jadi dapat dikatakan bahwa atribut
nama bergantung secara fungsi pada No Pegawai dan Nomor Pegawai
menunjukkan secara fungsi nama. jika anda mengetahui no pegawai maka anda
dapat menentukan nama pegawai tersebut.
Isi dari atribut nama bergantung pada No Pegawai. Jadi dapat dikatakan bahwa
atribut nama bergantung secara fungsi pada No Pegawai dan Nomor Pegawai
menunjukkan secara fungsi nama. jika anda mengetahui no pegawai maka anda
dapat menentukan nama pegawai tersebut. Notasi untuk kebergantungan fungsi ini
adalah
6. Teknik Model Data Relasional ada 2 yaitu :
• Teknik Normalisasi
• Teknik Entity Relationship
Namun yang akan dibahas lebih lanjut adalah Teknik Normalisasi.
Teknik Normalisasi
Beberapa pengertian mengenai normalisasi :
Istilah Normalisasi berasal dari E. F.Codd, salah seorang perintis teknologi
basis data. selain dipakai sebagai metodologi tersendiri untuk menciptakan
struktur tabel 9 relasi) dalam basis data (dengan tujuan utnuk mengurangi
kemubaziran data) , normalisasi terkadang hanya diipakai sebagai perangkat
verifikasi terhadap tabel-tabel yang dihasilkan oleh metodologi lain ( misalnya
E-R). Normalisasi memberikan panduan yang sangat membantu bagi
pengembang untuk mencegah penciptaan struktur tabel yang kurang fleksibel
atau mengurangi keflekxibelan.
Kroenke mendefinisikan normalisasi sebagai proses untuk mengubah suatu
relasi yang memiliki masalah tertentu ke dalam dua buah relasi atau lebih
yang tida memiliki masalah tersebut. Masalah yang dimaksud oleh kroenke ini
sering disebut dengan istilah anomali.
Normalisasi merupakan sebuah teknik dalam logical desain sebuah basis data /
database, teknik pengelompokkan atribut dari suatu relasi sehingga
membentuk struktur relasi yang baik (tanpa redudansi).
Normalisasi adalah suatu proses memperbaiki / membangun dengan model
data relasional, dan secara umum lebih tepat dikoneksikan dengan model data
logika.
Proses normalisasi adalah proses pengelompokan data elemen menjadi tabel-
tabel yang menunjukkan entity dan relasinya. Pada proses normalisasi dilakukan
pengujian pada beberapa kondisi apakah ada kesulitan pada saat
menambah/menyisipkan, menghapus, mengubah dan mengakses pada suatu basis
7. data. Bila terdapat kesulitan pada pengujian tersebut maka perlu dipecahkan relasi
pada beberapa tabel lagi atau dengan kata lain perancangan basis data belum
optimal.
Tujuan dari normalisasi itu sendiri adalah untuk menghilangkan kerangkapan
data, mengurangi kompleksitas, dan untuk mempermudah pemodifikasian data.
Tahapan Normalisasi
8. II. PRAKTIKUM DAN PEMBAHSAN
1. Kasus Faktur Pembelian Baran
Bentuk UnNormalized
Caranya : Masukan semua field data yang ada
PT. Adiguna Komputer Faktur Pembelian
Barang
Jl. Siliwangi 300
Cijoho – Kuningan
Kode Supplier : G01 Tanggal : 09/03/06
Nama Supplier : Grafika Nomor : 201
Kode Nama Barang Stok Harga Jumlah
B01 DVD-RW 10 990.000 9.900.000
B02 HUB 10 455.000 4.550.000
Total Faktur 14450000
Jatuh Tempo : 12/03/06
PT. Adiguna Komputer Faktur Pembelian
Barang
Jl. Siliwangi 300
Cijoho – Kuningan
Kode Supplier : H02 Tanggal : 02/02/06
Nama Supplier : ACC Nomor : 199
Kode Nama Barang Stok Harga Jumlah
D01 TV-Combo 10 260.000 2.600.000
TotalFaktur 2600000
Jatuh Tempo : 12/03/06
9. No.
Faktur
Kode.
Suppli
er
Nama
Suppli
er
Kode
Baran
g
Nama
Baran
g
Tanga
l
Jatuh
Temp
o
Sto
k
Harga Jumla
h
Total
199 H02 ACC D01
Tv-
Comb
o
02/02/
06
12/03/
06
10
260.00
0
2.600.
000
2.600.
000
201 G01
Grafik
a
B01
DVD-
RW
09/03/
06
12/03/
06
10
990.00
0
9.900.
000
14.450
.000
B02 HUB
09/03/
06
12/03/
06
10
455.00
0
4.550.
000
Keterangan:
Masih ada record yang tidak lengkap. Maka tabel diatas harus diubah
menjadi bentuk normal satu 1NF
Normal Satu 1NF
No.
Faktu
r
Kod
e.
Sup
plier
Nam
a
Sup
plier
Kod
e
Bar
ang
Nam
a
Bar
ang
Tan
gal
Jatu
h
Tem
po
St
ok
Har
ga
Jum
lah
Tota
l
199 H02 ACC D01
Tv-
Com
bo
02/0
2/06
12/0
3/06
10
260.
000
2.60
0.00
0
2.60
0.00
0
201 G01
Graf
ika
B01
DV
D-
RW
09/0
3/06
12/0
3/06
10
990.
000
9.90
0.00
0
14.4
50.0
00
201 G01
Graf
ika
B02
HU
B
09/0
3/06
12/0
3/06
10
455.
000
4.55
0.00
0
Pembahasan:
Bentuk normal ke satu di atas memiliki kelemahan, yaitu :
1. Proses Inserting
10. Tidak dapat memasukan kode dan nama supplier saja tanpa ada
transaksi pembelian sehingga supplier baru dapat masuk jika ada
transaksi penghapusan.
2. Proses Deleting
Bila satu record diatas dihapus, misalnya Nomor faktur 199, maka
akibatnya data supplier H02 (ACC) ikut terhapus, padahal data
supplier tersebut masih diperlukan.
3. Proses Updating
Kode dan nama Supplier dituis berulang-ulang, bila suatu saat terjadi
perubahan nama supplier maka harus mengganti disemua record jika
ada yang terlewat maka akan berakibat inkonsistensi data.
4. Redunansi
Field jumlah merupakan redudancy, karena setiap kali harga dikalikan
dengan stok akan menghasilkan jumlah jika tidak dibuang maka
mengakibatkan inkonsistensi data. Tidak konsisten dikasus ini
disebabkan karena bila ada perubahan harga, hanya data harga yang
diubah sedangkan data jumlah tidak maka nilai jumlah tidak sama
dengan stok dikalikan harga.
Bentuk Bentuk Normal Kesatu mempunyai ciri yaitu setiap data
dibentuk dalam file flat, data dibentuk dalam satu record demi satu
record dan nilai dari field berupa “atomic value”. Tidak ada set atribut
yang berulang ulang atau atribut bernilai ganda (multi value). Tiap
field hanya satu pengertian, bukan merupakan kumpulan data yang
mempunyai arti mendua. Hanya satu arti saja dan juga bukanlah
pecahan kata kata sehingga artinya lain.
Maka dengan melihat kelemahan itu bentuk normal ke satu ini
harus dirubah ke dalam bentuk normal ke dua 2NF.
Bentuk normal ke dua 2NF
Pembentukan normal ke dua dengan cara mencari kunci-kunci field yang
sifatnya unik.
11. Dari tabel diatas dapat diambil kunci kandidat yaitu:
No Factur
Kode Supplier
Kode Barang
Dimana setiap filed bergatung penuh kepada Primary Key, maka bentuk
normal ke dua sebagai berikut:
Tabel Supplier
Tabel Barang
Tabel Nota
Pembahasan:
Bentuk Normal kedua mempunyai syarat yaitu bentuk data telah
memenuhi kriteria bentuk Normal Kesatu. Atribut bukan kunci
haruslah bergantung secara fungsi pada kunci utama, sehingga untuk
membentuk Normal Kedua haruslah sudah ditentukan kunci-kunci
12. field. Kunci field harus unik dan dapat mewakili atribut lain yang
menjadi anggotanya.
Namun permasalahan masih ada! yaitu pada tabel NOTA :
Field stok dan harga tidak bergantung penuh pada kunci Primary
No Factur tetapi berganrung fungsi pada kode barang. Hal ini
disebut dengan ketergantungan yang transitif dan harus dipisahkan
dalam dua tabel.
Masih terdapat redudancy, yaitu setiap kali satu nota yan terdiri
dari 5 macam barang yang dibeli maka 5 kali pula dituliskan nomor
faktur, tanggal, tempo dan total. Ini harus pula dipisahkan bila
terjadi penggandaan berulang-ulang.
Bentuk Normal ketiga 3NF
Bentuk 3NF mempunyai syarat setiap tabel tidak mempunyai field yang
bergantung transitif, harus bergantung penuh pada kunci utama.
Maka terbentuklah tabel sebagai berikut:
Tabel Supplier
Tabel Barang
Tabel Nota
Tabel Transaksi
13. Pembahasan:
Untuk menjadi bentuk Normal Ketiga maka relasi haruslah dalam
bentuk Normal Kedua dan semua atribut bukan primer tidak punya
hubungan yang transitif. Artinya setiap atribut bukan kunci harus
bergantung hanya pada kunci primer secara menyeluruh. Contoh pada
bentuk Normal kedua di atas termasuk juga bentuk Normal Ketiga karena
seluruh atribut yang ada di situ bergantung penuh pada kunci primernya.
14. III.TUGAS PRAKTIKUM
Buatlah Bentuk Normalisasi dari dokumen berikut ini
Bentuk UnNormalized
Caranya : Masukan semua field data yang ada
Kartu Pengobatan Masyarakat
No Pasien : 1234/PO/IV/99 Tanggal Pendaftaran : 1 Mei 1999
Data Pasien dari, NOPEN : 1000019999 Nama Pasien : Bactiar Jose
Alamat Pasien, Jalan : Kebon Jeruk No,27 Kelurahan : Palmerah
Kecamatan : Kemanggisan Wilayah : Jakarta Barat
Kode Pos : 11530 Telepon : 5350999
Tgl
Periksa
Kode
Dokter
Nama
Dokter
Kode
Sakit
Deskripsi
sakit
Kode
Obat
Nama
Obat
Dosis
1/5/99 D01 Dr
Zurmaini
S11 Tropicana B01
B02
Sulfa
Anymiem
3dd1
4dd1
4/7/99 D01 Dr
Zurmaini
S12 Ulcer
Triombis
B01
B03
Sulfa
Supralin
3dd2
3dd1
4/4/99 D02 Dr
Harjono
S12 Ulcer
Triombis
B01
B03
Adrenalin 4dd2
7/8/99 D04 Dr
Mahendra
S12 Ulcer
Triombis
B01
B03
Sulfa
Anymiem
Supralin
3dd2
4dd2
3dd1
Penerima Pasien
Ttd
(Agus)
15. Bentuk Normal Pertama (1NF)
Pembahasan:
Bentuk Bentuk Normal Kesatu mempunyai ciri yaitu setiap data
dibentuk dalam file flat, data dibentuk dalam satu record demi satu record
dan nilai dari field berupa “atomic value”. Tidak ada set atribut yang
berulang ulang atau atribut bernilai ganda (multi value). Tiap field hanya
satu pengertian, bukan merupakan kumpulan data yang mempunyai arti
mendua. Hanya satu arti saja dan juga bukanlah pecahan kata kata
sehingga artinya lain.
Namun bentuk Normal Kesatu ini mempunyai banyak kelemahan
diantaranya yaitu :
• Penyisipan data
No Pendaftaran dan Nama Pasien tidak bisa ditambahkan tanpa adanya
transaksi pengobatan.
• Penghapusan data
Jika salah satu record dihapus maka semua data yang ada di situ akan
terhapus juga.
• Pengubahan data
Data pasien ditulis berkali-kali (no pasien dan nama pasien). Jika suatu
saat terjadi perubahan Nama pasien maka harus mengganti semua
record yang ada data supliernya. Bila tidak maka akan terjadi
inkonsistensi.
16. Bentuk Normal Kedua (2NF)
No Pasien
KodeDokter
KodeSakit
TabelPasien TabelDokter
TabelPenyakit
* No Pasien
NamaPasien
NOPEN
Alamat
KodePos
TglDaftar
Telepon
* KodeDokter
NamaDokter
TglPeriksa
* KodeSakit
DeskripsiSakit
KodeObat
NamaObat
Dosis
**No Pasien
**KodeDokter
17. Pembahasan:
Bentuk Normal kedua mempunyai syarat yaitu bentuk data telah
memenuhi kriteria bentuk Normal Kesatu. Atribut bukan kunci haruslah
bergantung secara fungsi pada kunci utama, sehingga untuk membentuk
Normal Kedua haruslah sudah ditentukan kunci-kunci field. Kunci field
harus unik dan dapat mewakili atribut lain yang menjadi anggotanya.
Namun permasalahan masih ada! yaitu pada tabel NOTA :
Nama obat dan dosis tidak bergantung penuh pada kunci Primary Kode
Sakit tetapi berganrung fungsi pada kode Obat. Hal ini disebut dengan
ketergantungan yang transitif dan harus dipisahkan dalam dua tabel.
Masih terdapat redudancy
Bentuk Normal Ketiga (3NF)
Bentuk 3NF mempunyai syarat setiap tabel tidak mempunyai field yang
bergantung transitif, harus bergantung penuh pada kunci utama. Maka
terbentuklah tabel sebagai berikut:
18. Pembahasan:
Untuk menjadi bentuk Normal Ketiga maka relasi haruslah dalam
bentuk Normal Kedua dan semua atribut bukan primer tidak punya
hubungan yang transitif. Artinya setiap atribut bukan kunci harus
bergantung hanya pada kunci primer secara menyeluruh. Contoh pada
bentuk Normal kedua di atas termasuk juga bentuk Normal Ketiga karena
seluruh atribut yang ada di situ bergantung penuh pada kunci primernya.
Terlihat bahwa atribut yang bukan key pada setiap tabel diatas bergantung
pada primary key.
19. IV. KESIMPULAN
Dari praktikum diatas dapat diambil kesimpulan bahwa normalisasi
bertujuan untuk menghilangkan kerangkapan data, untuk mengurangi
kompleksitas dan untuk mempermudah pemodifikasian data. Dan pembuatan
normalisasi pada sebuah kasus mempunyai tahapan – tahapan sebagai berikut :
Tahapan Normalisasi
Bentuk Tidak Normal
Menghilangkan perulangan group
Bentuk Normal Pertama (1NF)
Menghilangkan ketergantungan sebagian
Bentuk Normal Kedua (2NF)
Menghilangkan ketergantungan transitif
Bentuk Normal Ketiga (3NF)
Menghilangkan anomali-anomali hasil dari
ketergantungan fungsional
Bentuk Normal Boyce-Codd (BCNF)
Menghilangkan Ketergantungan Multivalue
Bentuk Normal Keempat (4NF)
Menghilangkan anomali-anomali yang tersisa
Bentuk Normal Kelima
20. V. DAFTAR PUSTAKA
Ali, Muhammad. 1995. Materi Kuliah Basis Data. Jakarta.
http://ranykusnaningsih.blogspot.com/2009/02/teknik-perancangan-basis-
data.html
http://teknik-informatika.com/perancangan-basis-data/
www.google.com