Anda di halaman 1dari 4

BAB V DESAIN E-R LANJUT

5.1 Partisipasi Entity dalam Relationship Entity 5.2 Entity Kuat dan Entity Lemah Kita menyebut entity info pada Gb. 6.7 sebagai entity Lemah yang keberadaannya tergantung pada keberadaan entity barang. Dengan kata lain bila kita meniadakan suatu barang dengan kode_barang tertentu maka otomatis informasi (info) mengenai barang tersebut juga hilang seketika. Kita sebut entity barang ini sebagai Entity Kuat Penanda sedangkan relationship punya kita sebut sebagai Relationship Penanda Entity Lemah. Ciri khas dari Entity Lemah ini adalah tidak mempunyai kunci primer yang asli, atau ada kunci tetapi merupakan kunci tambahan hasil rekayasa. Kunci tambahan ini disebut Atribut Pembeda yang dalam penerapannya bertipe increment (nilai urut naik). Kunci primer yang terbentuk selalu berupa Kunci Primer Gabungan, dengan salah satu kunci primernya berasal dari kunci primer Entity Kuat. Dalam kasus mini market ini kita memberikan Atribut Pembeda berupa no_info. Kunci primernya hasilnya yaitu: Kunci Primer Gabungan (Atribut Pembeda, kunci primer Entity Kuat Penanda) yang dalam kasus ini adalah (no_info, kode_barang). 5.3 Agregat Kasus berikutnya adalah agregat, yang terjadi bila sebuah entity ternyata merupakan .. 5.4 Relationship Berderajat 3

Umumnya relationship yang terdapat dalam suatu basis data kebanyakan adalah relationship biner. Relationship tersier atau lebih sangat jarang terjadi. Bila ada relationship tersier maka dianjurkan untuk diubah ke relationship biner. Pada kasus relationship status keluarga di atas maka setelah diubah ke bentuk relationship biner hasilnya menjadi seperti terlihat pada Diagram E-R di bawah ini: 5.5 Spesialisasi Pada dasarnya teori-teori yang telah kita pelajari sebelumnya sudah mencukupi buat kita untuk menyelesaikan berbagai permasalahan sistem basis data pada kasus-kasus nyata. Namun demikian ada beberapa kasus yang jarang kita temui saat merancang sistem basis data sederhana, yang memerlukan perlakuan tertentu, seperti bila suatu entity terpecah ke dalam beberapa spesialisasi tertentu. Kasus pertama adalah bila sebuah himpunan entity (yang selanjutnya kita sebut sebagai Entity Level Tinggi) ternyata terdiri dari beberapa sub entity. Setiap sub entity (selanjutnya kita sebut sebagai Entity Level Rendah) mewarisi seluruh atribut dari entity di atasnya (disebut sebagai Atribut Turunan seperti telah dijelaskan pada Bagian 3.2). Selain mempunyai Atribut Turunan tersebut setiap Entity Level Rendah ini juga mempunyai atribut tambahan yang merupakan ciri khasnya. Spesialisasi digambarkan dengan segitiga berlabel ISA (contoh kasusnya pelanggan is a orang). Spesialisasi digunakan pada proses perancangan yang bersifat top-down (dari atas ke bawah), dari suatu entity yang umum kemudian dipecah-pecah menjadi entity-entity yang lebih khusus / special. Gambar 3.21 memperlihatkan bila Entity Level Tinggi orang terbagi ke dalam 2 macam spesialisasi, yaitu Entity Level Rendah pelanggan dan pegawai. Selanjutnya entity pegawai juga bisa dipandang sebagai Entity Level Tinggi yang terdiri dari 2 spesialisasi yaitu Entity Level Rendah supervisor dan biasa. Dari gambar bisa diketahui bahwa supervisor mempunya atribut spesialnya yaitu tunjangan dan juga seluruh atribut turunannya dari entity-entity di atasnya yaitu entity pegawai dan orang. Sehingga entity supervisor dan atributnya bisa dituliskan sebagai berikut: supervisor = (ktp, nama, alamat, gaji, lembur)

nam a k tp o ra n g a la m a t

IS A

t o t _ b e la n ja p e la n g g a n pegawai

g a ji

IS A

tu n ja n g a n s u p e r v is o r b ia s a

le m b u r

Gambar 5.5 Spesialisasi 5.6 Generalisasi Generalisasi merupakan suatu proses perancangan yang berkebalikan dari spesialisasi. Generalisasi bersifat bottom-up (dari bawah ke atas), yaitu beberapa Entity Level Rendah yang mempunyai atribut yang sama disatukan ke dalam suatu Entity Level Tinggi. Penggambaran Diagram E-R dari generalisasi sama dengan spesialisasi. Untuk pembentukan tabel dari proses spesialisasi / generalisasi ada 2 cara: Jelaskan !!!

Anda mungkin juga menyukai