tugas individual basis data

Upload: lutfi

Post on 19-Jul-2015

73 views

Category:

Documents


0 download

TRANSCRIPT

Tugas Individual Perancangan Basis Data

NAMA NIM KELAS

: : :

Lutfi Abdillah 30311114 PCA1101

1. Normalisasi Normalisasi adalah proses menganalisa functional dependency diantara atribut-atribut dan proses dekomposisi relasi yang memiliki anomaly-anomali (kelainan) sehingga dapat menghasilkan relasi yang terstruktur dengan baik. Manfaat proses normalisasi adalah: 1. Meminimalisir insert, update dan delete anomalies dan membantu dalam memelihara data tetap konsisten dalam basis data. 2. Untuk menghindari data redundancy dengan hanya menyimpan setiap data sekali dalam basisdata. 3. Membantu untuk menyimpan data ke dalam bentuk yang mudah untuk diubah secara akurat. 4. Untuk memfasilitasi dalam menjaga constraint data.

1. Insertion, Deletion, and Updation AnomalySebuah anomali dalam tabel adalah struktur dimana jika terdapat operasi normal dalam basisdata dan apabila dieksekusi dapat menyebabkan beberapa informasi hilang atau menyebabkan harus melakukan pencarian seluruh data dalam tabel. 1.1 Insertion Anomaly Insert anomaly adalah penambahan data yang terjadi akibat adanya tuple yang bernilai kosong/null, agar baris yang kosong/null dapat berelasi dengan baik. 1.2 Deletion anomaly Deletion anomaly adalah akibat terjadinya pernghapusan salah satu data yang menyebabkan seluruh baris data ikut terhapus. 1.3 Updation anomaly Updation anomaly adalah ketika suatu tuple nilainya kita ubah, maka tuple pada kolom berikut dan sesudahnya tidak akan ikut berubah nilainya, sehingga terjadi ketidak konsistenan data atau data bervariasi.

2. Konsep mengenai keyKey adalah satu atau lebih atribut yang digunakan untuk mengidentifikasi sebuah baris data dalam suatu tabel dan membuat baris data tersebut menjadi bersifat unik dan berbeda dengan atribut lainnya. Key dibagi menjadi tiga, yaitu: 2.1 Super key Superkey adalah sekumpulan atribut dalam sekumpulan entitas yang mampu mengidentifikasi entitas tersebut secara unik. Superkey merepresentasikan sebuah batasan untuk mencegah dua anggota entitas memiliki nilai yang sama untuk atribut-atributnya. 2.2 Candidate key Candidate key adalah kombinasi atribut yang paling minimal dari super key. Sebuah candidate key dalam sebuah skema relasi adalah sekumpulan atribut yang paling minimal dan nilainya mampu mengidentifikasi dan membedakan baris data yang satu dengan yang lain dalam sebuah tabel. 2.3 Primary Key Primary key diambil dari salah satu dari candidate key. Dan primary key haruslah unik dan tidak boleh ada baris data yang kosong/null.

3. FUNCTIONAL DEPENDENCIESFunctional dependency atau kebergantungan fungsional adalah constraint atau batasan/ ketentuan antara 2 buah himpunan atribut pada sebuah tabel.

4. PARTIAL FUNCTIONAL DEPENDENCYPartial functional dependency terjadi ketika: 1. Dalam sebuah tabel terdapat candidate key yang memiliki composit atribut (anggota himpunan atribut minimal 2). Asumsikan: (B,C) 2. B A dan B adalah bagian dari candidate key Dengan kata lain: Jika (B,C) adalah candidate key dan B A Maka A bergantung secara parsial terhadap (B,C) atau (B,C) menentukan A secara parsial

5. TRANSITIVE FUNCTIONAL DEPENDENCYTransitive functional dependency terjadi: Jika A B dan B C Maka A C Dengan kata lain: A bergantung secara transitif terhadap C melalui B A menentukan C secara transitif melalui B

Kriteria 1st NF: Tidak ada atribut (kolom) pada tabel yang bersifat multi-value. Tidak memiliki lebih dari satu atribut/kolom dengan domain yang sama.

Kriteria 2nd NF: Sudah memenuhi 1nf. Tidak memiliki Partial Functional Dependency.

Kriteria 3rd NF: Sudah memenuhi 2nf. Tidak ada Transitive Functional Dependency.

Kriteria BCNF: Memenuhi 3rd NF . Untuk semua FD yang terdapat di tabel, ruas kiri dari FD tersebut adalah superkey. Jarang ada kasus dimana tabel yang memenuhi 3rd NF tapi tidak memenuhi BCNF.

NO_NOTA NT00175

TGL 13Apr2012

NO_BRG BSKR BBRY

NT00176

13Apr2012

BBRY BLCO BLKJ

NT00177

14Apr2012

BSKR BLKJ

NT00178

15Apr2012

BLCO BLKJ

NM_BRG Brownies Kukus Srikaya Brownies Kukus Blueberry Brownies Kukus Blueberry Pisang Bolen Cokelat Pisang Bolen Keju Brownies Kukus Srikaya Pisang Bolen Keju Pisang Bolen Cokelat Pisang Bolen Keju

NO_TYPE BROW BROW BROW BLEN BLEN BROW BLEN BLEN BLEN

NM_TYPE Brownies Brownies Brownies Pisang Bolen Pisang Bolen Brownies Pisang Bolen Pisang Bolen Pisang Bolen

HRG_BRG 28,000 30,000 30,000 24,000 26,000 28,000 26,000 24,000 26,000

QTY 1 2 1 2 2 5 5 2 2

DISC 10% 10% 10% 0 0 10% 0 0 0

TOT_ITEM 25,200 54,000 27,000 48,000 52,000 126,000 130,000 48,000 52,000

TOT_PYMNT 79,200

127,000

256,000

100,000

*Bukti bahwa tabel tersebut tidak nornal 1. adanya baris data yang kosong/null 2. terdapat insert anomaly 3. terdapat deletion anomali. Contoh (jika kita menghapus tuple ke 9 dari NO_BRG, maka data-data yang tidak ingin kita hapus akan ikut terhapus dan akan kehilangan Pisang Bolen dengan QTY 2.sehingga terjadi deletion anomali) 4. terdapat update anomaly. Contoh (apabila tuple ke 2 dari atribut NO_BRG kita ubah namanya dari BSKR menjadi BKSR, maka data atribut NO_BRG yang namanya sama dengan BSKR tidak ikut berubah. Sehingga terjadi update anomaly) *Kesimpulannya table tersebut belum normal.

NO_NOTA NT00175 NT00175 NT00176 NT00176 NT00176 NT00177 NT00177 NT00178 NT00178

TGL 13Apr2012 13Apr2012 13Apr2012 13Apr2012 13Apr2012 14Apr2012 14Apr2012 15Apr2012 15Apr2012

NO_BRG BSKR BBRY BBRY BLCO BLKJ BSKR BLKJ BLCO BLKJ

NM_BRG Brownies Kukus Srikaya Brownies Kukus Blueberry Brownies Kukus Blueberry Pisang Bolen Cokelat Pisang Bolen Keju Brownies Kukus Srikaya Pisang Bolen Keju Pisang Bolen Cokelat Pisang Bolen Keju

NO_TYPE BROW BROW BROW BLEN BLEN BROW BLEN BLEN BLEN

NM_TYPE Brownies Brownies Brownies Pisang Bolen Pisang Bolen Brownies Pisang Bolen Pisang Bolen Pisang Bolen

HRG_BRG 28,000 30,000 30,000 24,000 26,000 28,000 26,000 24,000 26,000

QTY 1 2 1 2 2 5 5 2 2

DISC 10% 10% 10% 0 0 10% 0 0 0

TOT_ITEM 25,200 54,000 27,000 48,000 52,000 126,000 130,000 48,000 52,000

TOT_PYMNT 79,200 79,200 127,000 127,000 127,000 256,000 256,000 100,000 100,000

1NF 2NF -

: Sudah tidak ada atribut yang bersifat multi value Sudah tidak ada domain yang bernilai sama dan baris yang null/kosong : Sudah memenuhi 1NF (YA) Adanya Partial Fungsional Dependency ? (Iya ada). Fd: NO_NOTA --> TOT_PYMNT Fd: NO_BRG--> NM_BRG, NO_TYPE, NM_TYPE, HRG_BRG, DISC Fd: NO_NOTA NO_BRG, TGL, QTY, TOT_ITEM

1. Tabel NotaNO_NOTA NT00175 NT00175 NT00176 NT00176 NT00176 NT00177 NT00177 NT00178 NT00178 TOT_PYMNT 79,200 79,200 127,000 127,000 127,000 256,000 256,000 100,000 100,000

2. Tabel Detail Barang NO_BRG BSKR BBRY BBRY BLCO BLKJ BSKR BLKJ BLCO BLKJ NM_BRG Brownies Kukus Srikaya Brownies Kukus Blueberry Brownies Kukus Blueberry Pisang Bolen Cokelat Pisang Bolen Keju Brownies Kukus Srikaya Pisang Bolen Keju Pisang Bolen Cokelat Pisang Bolen Keju NO_TYPE BROW BROW BROW BLEN BLEN BROW BLEN BLEN BLEN NM_TYPE Brownies Brownies Brownies Pisang Bolen Pisang Bolen Brownies Pisang Bolen Pisang Bolen Pisang Bolen HRG_BRG 28,000 30,000 30,000 24,000 26,000 28,000 26,000 24,000 26,000 DISC 10% 10% 10% 0 0 10% 0 0 0

3. Tabel Detail Transaksi NO_NOTA NT00175 NT00175 NT00176 NT00176 NT00176 NT00177 NT00177 NT00178 NT00178 NO_BRG BSKR BBRY BBRY BLCO BLKJ BSKR BLKJ BLCO BLKJ TGL 13-Apr-12 13-Apr-12 13-Apr-12 13-Apr-12 13-Apr-12 14-Apr-12 14-Apr-12 15-Apr-12 15-Apr-12 QTY 1 2 1 2 2 5 5 2 2 TOT_ITEM 25,200 54,000 27,000 48,000 52,000 126,000 130,000 48,000 52,000

Identifikasi 3rd Nf : Sudah memenuhi 2nd NF ?ya Tidak mengandung transitif functional defedency? Perlu identifikasi - Table nota tidak terdapat transitif functional defedency - Table detail barang

NO_BRG -> NO_TYPE, NM_TYPE, NM_BRG, DISC, HRG_BRG NO_TYPE -> NM_TYPE NO_BRG -> NM_TYPE *NM_TYPE bergantung secara transitive kepada NO_BRG melalui NM_TYPE Tabel Detail Barang 1-1 NO_BRG BSKR BBRY BLCO BLKJ NO_TYPE BROW BROW BLEN BLEN NM_BRG Brownies Kukus Srikaya Brownies Kukus Blueberry Pisang Bolen Cokelat Pisang Bolen Keju Diskon 10% 10% 0 0 HRG_BRG 28,000 30,000 24,000 26,000

Tabel Detail Barang 1-2 NO_TYPE BROW BLEN NM_TYPE Brownies Pisang Bolen

Identifikasi boyce codd Normal Form (BCNF) Sudah memenuhi 3 rd NF ? Ya Untuk semua FD yang terdapat di tabel, ruas kiri dari FD tersebut adalah super key ? tidak ada *kesimpulan: table di atas tersebut sudah normal pada 3NF