Anda di halaman 1dari 16

TEKNIK NORMALISASI DALAM PERANCANGAN BASIS DATA RELASIONAL

Fakultas Ilmu Komputer
Resi Try Adeline 09071003056 Sistem Informasi 6B

Universitas sriwijaya 2010

......................................... 3 Basisdata ......................... 3 Kebergantungan Fungsi .............................................................................................................................................................................................................. 11 Referensi ...................................................................... 16 Resi Try Adeline | Fakultas Ilmu Komputer 2 .............................................................................................................. 2 Pendahuluan................................................................................... 7 Penerapan Bentuk Normalisasi ..................................................................................................................................................................................DAFTAR ISI Daftar Isi......................... 6 Teknik Normalisasi ................... 3 Model Konseptual Basisdata ..................................

Perancangan basis data secara logis. Suatu basis data dibangun berdasarkan kebutuhan informasi dalam suatu organisasi.TEKNIK NORMALISASI DALAM PERANCANGAN BASIS DATA RELASIONAL Pendahuluan Perancangan merupakan suatu hal yang sangat penting dalam pembuatan basis data. 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 merupakan kumpulan data non-redundant yang dapat digunakan bersama (shared) oleh system aplikasi yang berbeda atau basis data merupakan Resi Try Adeline | Fakultas Ilmu Komputer 3 . tahapan ini merupakan upaya untuk membuat model yang masih bersifat konsep. Untuk itu diperlukan perancangan basis data baik secara fisik maupun secara konseptualnya. Perancangan basis data secara konseptual. Permasalahan yang dihadapi pada waktu perancangan yaitu bagaimana basis data yang akan dibangun ini dapat memenuhi kebutuhan saat ini dan masa yang akan datang. 2. hirarkis. 3. merupakan tahapan untuk memetakan model konseptual kemodel basis data yang akan dipakai (modal relasional. Untuk menentukan entity dan relasinya perlu dilakukan analisis data tentang informasi yang ada dalam spesifikasi di masa yang akan datang. Perancangan basis data secara fisis . oleh sebab itu pada umumnya perancangan basis data dimulai dari pengamatan kebutuhan informasi. Basisdata Beberapa pengertian basisdata :  Basisdata merupakan kumpulan tabel-tabel atau files yang saling berelasi.. Proses perancangan basis data . dibagi menjadi 3 tahapan yaitu : 1. itulah sebabnya perancangan basis data secara logis terkadang disebut pemetaan model data. Perancangan ini tidak bergantung pada DBMS yang akan dipakai. atau jaringan). Perancangan konseptual akan menunjukkan entity dan relasinya berdasarkan proses yang diiginkan oleh organsisasinya.

Pada perancangan model konseptual ini dapat dilakukan dengan menggunakan model data relasional. setiap pencarian cukup dengan menyebut nomor mahasiswa tersebut maka dapat diketahui identitas mahasiswa lainnya seperti nama. Model Konseptual Basisdata Perancangan model konseptual basis data dalam sebuah organisasi menjadi tugas dari Administrator basis data. DBMS digunakan. Misalnya Nomor Pokok Mahasiswa (NPM) merupakan kunci dari tabel mahasiswa suatu Perguruan Tinggi. 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. Model konseptual merupakan kombinasi beberapa cara untuk memproses data untuk beberapa aplikasi. Resi Try Adeline | Fakultas Ilmu Komputer 4 . contohnya: penguna akan mengetahui bahwa data penjualan disimpan didalam tabel-tabel barang. yaitu pengguna aplikasi dan programmer hanya mengenal struktur data. Karena tidak semua pengguna basisdata terlatih dengan baik dan penggunanya terbagi dalam beberapa tingkatan. yaitu : • Level Fisik : merupakan tingkatan terendah dalam abstraksi data yang menunjukkan bagaimana data disimpan. Hardware komputer dan model fisiknya. marketing • Level View : merupakan tingkatan tertinggi. Field (Atribut) Kunci setiap file selalu terdapat kunci dari file berupa field atau satu set field yang dapat mewakili record. Pada perancangan model konseptual basis data ini penekanan dilakukan pada struktur data dan relasi antara file. Model konseptual tidak tergantung pada aplikasi individual. keuangan. maka kompleksitas basisdata akan tersembunyi dari para penggunanya melalui beberapa level abstraksi data. alamat dan atribut lainnya. produksi. dimana administrator basisdata (DBA) membangun dan mengolah basisdata.kumpulan data non redundant yang saling terkait satu sama lainya yang dinyatakan oleh atribut-atribut kunci dari table-tabelnya.

Nama Mahasiswa . Contoh : entitas mahasiswa mempunyai atribut NPM dan Nama_Mahasiswa yang harus diisi datanya. Mahasiswa Roshita memiliki NPM 13402021 beralamat di Jalan Garuda 32 Yogyakarta memiliki Hobby (Olah Raga. • Atribut Bernilai Tunggal : yaitu atribut yang hanya memiliki satu nilai untuk setiap barisnya. Masak dan Nonton TV) • Atribut Harus Bernilai : yaitu atribut yang harus memiliki nilai data untuk setiap barisnya. 1 Alamat. Resi Try Adeline | Fakultas Ilmu Komputer 5 . sebab jika tidak diisi akan terjadi kekacauan dalam basis data. Alamat disini dapat dipecah menjadi sub atribut seperti nama_kota. • Atribut Bernilai Null : yaitu atribut yang boleh tidak memiliki nilai data untuk setiap barisnya. Biasanya atribut seperti ini sudah ditetapkan dalam perancangan tabelnya sehingga jika dalam pengisian dokosongi akan terjadi kesalahan. Alamat isi data dari atribut ini hanya boleh diisi dengan 1 data. Contoh : entitas mahasiswa mempunyai atribut NPM. kode_pos. Contoh : entitas mahasiswa mempunyai atribut alamat. Contoh Entitas mahasiswa mempunyai atribut sederhana berupa NIM. Nama. Kode_Kuliah untuk data Mata kuliah. NIK untuk data karyawan.Nomor Pegawai (NIP) bagi data dosen. • 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 Hobby isi data dari atribut ini boleh lebih dari 1 data. • Atribut Bernilai Jamak : yaitu atribut yang boleh memiliki lebih dari satu nilai untuk setiap barisnya. Setiap mahasiswa hanya memiliki 1 NPM. Nyanyi. 1 Nama. 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.

Jadi dapat dikatakan bahwa atribut nama bergantung secara fungsi pada No Pegawai dan Nomor Pegawai menunjukkan secara fungsi nama. Jadi dapat dikatakan bahwa atribut nama bergantung secara fungsi pada No Pegawai dan Nomor Pegawai menunjukkan secara fungsi nama. Nama_Pacar yang boleh untuk tidak diisi tetapi kalau diisi akan lebih baik. File relasi pegawai atribut berisi : No Pegawai. Notasi untuk kebergantungan fungsi ini adalah Teknik Model Data Relasional ada 2 yaitu : • • Teknik Normalisasi Teknik Entity Relationship Namun yang akan dibahas lebih lanjut adalah Teknik Normalisasi. Tempat Lahir. 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. Resi Try Adeline | Fakultas Ilmu Komputer 6 . • Atribut Turunan : yaitu atribut yang nilai-nilainya diperoleh dari pengolahan atau dapat diturunkan dari atribut lain yang berkaitan. Isi dari atribut nama bergantung pada No Pegawai. 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). No KTP. Misalnya : sebuah relasi R. Alamat. Nama. Kebergantungan Fungsi Kebergantungan Fungsi didefinisikan sebagai hubungan antara satu relasi dengan relasi lainnya. jika anda mengetahui no pegawai maka anda dapat menentukan nama pegawai tersebut.Contoh : entitas mahasiswa mempunyai atribut Alamat. Tgl Lahir. Isi dari atribut nama bergantung pada No Pegawai. Kota. jika anda mengetahui no pegawai maka anda dapat menentukan nama pegawai tersebut. Hobby.

selain dipakai sebagai metodologi tersendiri untuk menciptakan struktur tabel 9 relasi) dalam basis data (dengan tujuan utnuk mengurangi kemubaziran data) . dan untuk mempermudah pemodifikasian data. Normalisasi memberikan panduan yang sangat membantu bagi pengembang untuk mencegah penciptaan struktur tabel yang kurang fleksibel atau mengurangi keflekxibelan. salah seorang perintis teknologi basis data. dan secara umum lebih tepat dikoneksikan dengan model data logika.  Normalisasi adalah suatu proses memperbaiki / membangun dengan model data relasional. Bila terdapat kesulitan pada pengujian tersebut maka perlu dipecahkan relasi pada beberapa tabel lagi atau dengan kata lain perancangan basis data belum optimal. F. Masalah yang dimaksud oleh kroenke ini sering disebut dengan istilah anomali. Tujuan dari normalisasi itu sendiri adalah untuk menghilangkan kerangkapan data. menghapus. teknik pengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi).Codd. mengubah dan mengakses pada suatu basis data. Pada proses normalisasi dilakukan pengujian pada beberapa kondisi apakah ada kesulitan pada saat menambah/menyisipkan. normalisasi terkadang hanya diipakai sebagai perangkat verifikasi terhadap tabel-tabel yang dihasilkan oleh metodologi lain ( misalnya E-R). Resi Try Adeline | Fakultas Ilmu Komputer 7 .  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.  Normalisasi merupakan sebuah teknik dalam logical desain sebuah basis data / database.Teknik Normalisasi Beberapa pengertian mengenai normalisasi :  Istilah Normalisasi berasal dari E. Proses normalisasi adalah proses pengelompokan data elemen menjadi tabel-tabel yang menunjukkan entity dan relasinya. mengurangi kompleksitas.

Contoh : Kelas (Kode Kelas. Bentuk Normal Kesatu (1 NF / First Normal Form) 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”.Tahapan Normalisasi 1. Nama Kelas. Hanya satu arti saja dan juga bukanlah pecahan kata kata sehingga artinya lain. Tiap field hanya satu pengertian. Pengajar) Ini merupakan bentuk 1NF karena tidak ada yang berganda dan tiap atribut satu pengetian yang tunggal Contoh Data Resi Try Adeline | Fakultas Ilmu Komputer 8 . Atom adalah zat terkecil yang masih memiliki sifat induknya. Tidak ada set atribut yang berulang ulang atau atribut bernilai ganda (multi value). bukan merupakan kumpulan data yang mempunyai arti mendua. bila dipecah lagi maka ia tidak memiliki sifat induknya.

Nama. Dari contoh relasi mahasiswa pada bentuk Normal Kesatu.Mahasiswa (NPM. 2. Semester1. Nama. Kunci field harus unik dan dapat mewakili atribut lain yang menjadi anggotanya. Nama Mahasiswa dan Dosen Wali bergantung pada NPM. terlihat bahwa kunci utama adalah NPM. Bentuk seperti ini bukanlah 1NF. Dosen Wali mengikuti 3 mata kuliah. Semester2 Semester3) Mahasiswa yang punya NPM. Atribut bukan kunci haruslah bergantung secara fungsi pada kunci utama. Di sini ada perulangan semester sebanyak 3 kali. Bentuk Normal Kedua (2NF) Bentuk Normal kedua mempunyai syarat yaitu bentuk data telah memenuhi kriteria bentuk Normal Kesatu. Dosen Wali. Tetapi Kode Semester bukanlah fungsi dari Mahasiswa maka file siswa dipecah menjadi 2 relasi yaitu : Relasi Mahasiswa Dan Resi Try Adeline | Fakultas Ilmu Komputer 9 . sehingga untuk membentuk Normal Kedua haruslah sudah ditentukan kunci-kunci field.

Artinya setiap atribut bukan kunci harus bergantung hanya pada kunci primer secara menyeluruh.Relasi Ambil Kuliah 3. relasi harus dalam bentuk Normal Kesatu dan setiap atribut dipaksa bergantung pada fungsi pada atribut super key. Boyce-Codd Normal Form (BNCF) Boyce-Codd Normal Form mempunyai paksaan yang lebih kuat dari bentuk Normal ketiga. Relasi Seminar Bentuk Relasi Seminar adalah bentuk Normal Ketiga. Bentuk Normal Ketiga (3NF) Untuk menjadi bentuk Normal Ketiga maka relasi haruslah dalam bentuk Normal Kedua dan semua atribut bukan primer tidak punya hubungan yang transitif. Contoh pada bentuk Normal kedua di atas termasuk juga bentuk Normal Ketiga karena seluruh atribut yang ada di situ bergantung penuh pada kunci primernya. Siswa boleh mengambil satu atau dua seminar. Untuk menjadi BNCF. pada contoh ini NPM dan Seminar menunjukkan seorang Pembimbing. Kunci Primer adalah NPM + Seminar. Setiap pembimbing hanya boleh mengambil satu seminar saja. tetapi tidak BCNF karena Kode Seminar masih bergantung fungsi pada Pembimbing. Setiap seminar membutuhkan 2 pembimbing dan setiap siswa dibimbing oleh salah satu diantara 2 pembimbing seminar tersebut. Pada contoh dibawah ini terdapat relasi Seminar. jika setiap Resi Try Adeline | Fakultas Ilmu Komputer 10 .

Pembimbing dapat mengajar hanya satu seminar. Kadang-kadang basis data dibentuk dari sistem nyata yang mempunyai bentuk masih belum menggambarkan entitas-entitas secara baik. Sebagai contoh basis data yang dibangun dari daftar faktur pembelian sebagai berikut : Langkah Pertama Bentuklah menjadi tabel Un-Normalized. Resi Try Adeline | Fakultas Ilmu Komputer 11 . Seminar bergantung pada satu atribut bukan super key seperti yang disayaratakan oleh BCNF. dengan mencantumkan semua field data yang ada. Maka relasi Seminar harus dipecah menjadi dua yaitu : Penerapan Bentuk Normalisasi Proses perancangan basis data dapat dimulai dari dokumen dasar yang dipakai dalam sistem sesungguhnya.

Jika suatu saat terjadi perubahan Nama suplier maka harus mengganti semua record yang ada data supliernya. Pengubahan data Data suplier ditulis berkali-kali (Kode dan Nama). Terlihat record-record yang tidak lengkap. Bila tidak maka dapat mengakibatkan inkonsistensi jika terjadi perubahan harga. Resi Try Adeline | Fakultas Ilmu Komputer 12 . Tanggal. Langkah Kedua Ubahlah menjadi bentuk Normal Kesatu dengan memisahkan data pada field-field yang tepat dan bernilai atomik. Jumlah. Namun bentuk Normal Kesatu ini mempunyai banyak kelemahan diantaranya yaitu : • Penyisipan data Kode Suplier dan Nama Suplier tidak bisa ditambahkan tanpa adanya transaksi pembelian. Harga. Nama Barang. Jatuh Tempo.Menuliskan semua data yang akan direkam. Total. Quntity. • Redundansi Field jumlah merupakan redundansi karena setiap harga dikalikan kuantitas hasilnya adalah jumlah. juga seluruh record harus lengkap datanya. Dengan bentuk Normal Kesatu ini telah dapat dibuat satu file dengan 11 field yaitu No faktur. Nama Suplier. Kode Suplier. bagian yang doubel tidak perlu dituliskan. Bentuk file masih flat. sehingga field ini dapat dibuang. • • Penghapusan data Jika salah satu record dihapus maka semua data yang ada di situ akan terhapus juga. Bila tidak maka akan terjadi inkonsistensi. Kode Barang. sulit untuk membayangkan bagaimana bentuk record yang harus dibentuk untuk merekam data tersebut.

Data suplier dapat ditambahkan kapan saja tanpa harus ada transaksi pembelian. Ini harus dipisahkan bila terjadi penggandaan tulisan yang berulang-ulang. Resi Try Adeline | Fakultas Ilmu Komputer 13 .  Field Kuantitas dan Harga tidak bergantung peenuh pada kunci primer nomor nota. lihatlah kebergantungan fungsional field lain terhadap kunci. yaitu setiap kali satu nota yang terdiri dari 5 macam barang yang dibeli maka 5 kali pula nota dituliskan ke nomor nota. penghapusan dan pengubahan dapat dijawab. maka didapatkan tabel sebagai berikut : Dengan pemecahan seperti di atas maka sebagian dari pertanyaan pengujian pada bentuk normal kesatu yaitu masalah penyisipan.Langkah Ketiga Pembentukan Normal Kedua dengan mencari field kunci yang dapat dipakai sebagai patokan dalam pencarian dan yang mempunyai sifat yang unik. tempo dan total. Hal ini disebut sebagai kebergantungan yang transitif dan harus dipisahkan dari tabel. Melihat kondisi dari permasalahn faktur di atas dapat diambil kunci kandidat sbb :    No faktur Kode Suplier Kode Barang Buatlah tiga tabel dengan kunci tersebut. ia juga bergantung fungsi pada kode barang.  M = redundansi masih terjadi. tanggal nota. Namun permasalahan masih ada yaitu pada tabel nota.

Bila tidak ada penghubungan antar tabel maka dapat dikatakan perancangan untuk membuat satu basis data adalah gagal.Langkah Ke 4 Bentuk normal ketiga mempunyai syarat setiap tabel tidak mempunyai field yang bergantung transitif. harus bergantung penuh pada kunci utama. Maka terbentuklah tabel sebagai berikut : Langkah Ke-5 Pengujian di sini untuk memastikan kebenaran isi tabel dan hubungan antara tabel tersebut. Resi Try Adeline | Fakultas Ilmu Komputer 14 . Ujian bahwa setiap tabel haruslah punya hubungan dengan tabel yang lainnya.

padahal pada kenyataannya tentu faktur tersebut mempunyai dokumen pelengkap misalnya nota penjualan barang. Dengan langkah-langkah perancangan seperti di atas maka diperoleh field-field untuk melengkapi tabel-tabel yang ada dalam satu basis data. laporan pembelian dan masih banyak lagi laporan dan dokumen data enty lainya. laporan stok barang. laporan penjualan.Langkah Ke-6 Relasi Antar tabel Gambarkan hubungan relasi antar file yang ada sebagai berikut : Pengertian relasi di atas adalah   Satu supplier punya banyak nota Nota punya relasi dengan suplier bukan sebaliknya suplier punya relasi terhadap nota.   Satu nota punya banyak transaksi barang Satu barang terjadi beberapa kali transaksi pembelian barang. Langkah Ke-7 Permasalahan di atas hanya terbatas pada satu dokumen Faktur pembelian barang. Misalnya tabel barang dengan bertambahnya field yang lain menjadi : Resi Try Adeline | Fakultas Ilmu Komputer 15 .

1995.com/perancangan-basis-data/ www.com Resi Try Adeline | Fakultas Ilmu Komputer 16 .com/2009/02/teknik-perancangan-basis-data. Materi Kuliah Basis Data.blogspot. Jakarta.REFERENSI Ali.google.html http://teknik-informatika. http://ranykusnaningsih. Muhammad.