Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
MODEL RELASI ENTITAS (E-R MODEL)
BAB 2 MODEL RELASI ENTITAS (E-R MODEL)
2
Tinjauan Desain Basis Data
Desain Konseptual (Dengan menggunakan ER-Model) Informasi apa yang dikandung oleh suatu entity dan relasi yang harus disimpan dalam basis data Batasan integritas (integrity constraint) dan aturan bisnis yang harus ditangani Skema basis data dalam ER Model dapat dipresentasikan dalam bentuk gambar (ER diagram). Memetakan ER Diagram ke dalam skema relasional.
3
Dasar-dasar ER Model Entiti : obyek dunia nyata yang dapat dibedakan dari obyek yang lain. Entiti digambarkan (dalam basis data) dengan menggunakan himpunan atribut. Himpunan entity : Kumpulan entity yang sejenis. Misal : himpunan data pegawai Semua entity dalam himpunan entity memiliki himpunan atribut yang sama Tiap himpunan entity memiliki kunci (key) Tiap atribut memiliki domain.
4
Dasar-dasar ER Model Relasi : Asosiasi diantara dua atau lebih entity. Misal : Ani bekerja di Departemen Farmasi
5
Dasar-dasar ER Model Himpunan Relasi : Himpunan relasi yang sejenis
Himpunan relasi n-ary R berelasi dengan sejumlah himpunan entity n E1 …En Himpunan entity yang sama dapat berpartisipasi dalam himpunan relasi yang berbeda, atau mempunyai peran yang berbeda dalam suatu himpunan yang sama.
6
Batasan Kunci (Key Constraints)
Pada suatu contoh kasus, seorang pegawai dapat bekerja pada beberapa departments; sebuah departement memiliki banyak pegawai Sebaliknya, tiap departement hanya memiliki seorang manager, yang berhubungan dengan key constraint pada Manages.
7
Batasan Kunci (Key Constraints)
8
Batasan partisipasi (Participation Constraints)
Apakah setiap departemen mempunyai seorang manager ? Jika semua departemen pasti mempunyai manager maka partisipasi Departements dalam Manages dapat dikatakan total. Sebaliknya jika tidak semua departement memiliki manager maka partisipasinya adalah partial.
9
Entiti Lemah Entiti lemah dapat diidentifikasi secara unik jika terdapat peran kunci utama(primary key) yang berasal dari atau dimiliki oleh entity yang lain (owner). Himpunan entity owner dan entity lemah harus berartisipasi dalam himpunan relasi one-to-many (satu owner, banyak entity lemah).
10
Hirarki ISA (‘is a’) Seperti pada C++, dan bahasa pemrograman yang lain, suatu atribut dapat diturunkan. Jika kita deklarasikan A ISA B, setiap entity A juga termasuk entity B. Overlap constraints : Bolehkah seorang pegawai mempunyai status sebagai pegawai dengan hitungan gaji perjam (Hourly_Emps) sama halnya seperti pegawai dengan perjanjian kontrak (Contract_Emps) ? (Boleh/Tidak) Covering constraints : Apakah setiap entity Employees juga merupakan entity Hourly_Emps dan Contract_Emps ? Alasan menggunakan ISA : Untuk menambahkan deskripsi atribut yang lebih spesifik pada subclass. Untuk mengidentifikasi entity yang berpartisipasi dalam suatu relasi.
11
Aggregasi Digunakan pada saat kita perlu memodelkan apa saja yang terlibat dalam suatu himpunan relasi. Aggregasi membolehkan kita untuk memperlakukan suatu himpunan relasi sebagai himpunan entity untuk tujuan partisipasi dalam relasi yang lain.
12
Aggregasi vs. relasi ternary
Monitors adalah relasi yang distinct dengan deskripsi atribut. Juga dapat dikatakan bahwa tiap sponsorship dimonitor oleh kebanyakan seorang pegawai. Desain Konseptual dengan menggunakan ER Model Pilihan desain : Haruskan konsep dimodelkan sebagai entity atau atribut ? Haruskah konsep dimodelkan sebagai entity atau relasi ? Identifikasi relasi : binary atau ternary ? atau aggregasi ? Batasan dalam ER Model : Semakin banyak semantic data yang dapat ditangkap. Tapi beberapa batasan tidak dapat ditangkap dalam ER diagram.
13
Entiti vs. Atribut Haruskah informasi alamat (address) menjadi atribut dari Employee atau menjadi entity (dihubungkan ke Employee oleh suatu relasi) ? Tergantung pada penggunaan yang kita inginkan dari informasi alamat tersebut, dan juga tergantung pada semantic data. Jika terdapat beberapa address per Employee, maka address harus menjadi suatu entity (nilai dari atribut tidak bisa diset, atau diinisialisasi). Jika struktur dari address (kota, jalan, dll) dianggap penting, maka address tersebut juga harus dimodelkan sebagai suatu entity (karena nilai suatu atribut harus atomic).
14
Entiti vs. Atribut Works_In2 tidak mengijinkan seorang employee untuk bekerja pada suatu departement dalam dua atau lebih periode. Sama dengan permasalahan menyimpan beberapa address untuk seorang employee : Kita perlu menyimpan beberapa nilai dari deskripsi atribut untuk tiap instance dari relasi berikut ini.
15
Entiti vs. Relasi ER diagram diatas akan OK jika seorang manager mengambil budget yang terpisah pada tiap departemen. Apa yang terjadi jika manager mengambil budget yang dikover dari semua departemen ? Penyimpanan redundant untuk dbudget yang disimpan pada tiap departemen.
16
Relasi Binary vs. Ternary
Jika policy dimiliki hanya oleh satu orang employee : Key constraint pada policies mengartikan bahwa suatu keb ijakan (policy) diterapkan untuk hanya dapat mengkover satu orang dependent Apa yang merupakan constraint tambahan pada diagram yang kedua berikut ini ?
17
Relasi Binary vs. Ternary
Contoh sebelumnya telah mengilustrasikan suatu kasus pada saat dua relasi binary lebih baik dibandingkan satu relasi ternary. Contoh yang lain : relasi ternary Contracts berelasi dengan himpunan entity Parts, Departments dan Suppliers, yang memiliki atribut deskriptif qty. Tidak ada kombinasi relasi relasi biner yang layak untuk menggantikan subsitusi ini : S ‘dapat mensupply’ P, D ‘memerlukan’ P, dan D ‘berurusan dengan’ S. Dapatkah diandaikan bahwa D memiliki perjanjian untuk membeli P dari S ? Bagaimana cara kita merecord qty ?
18
Ringkasan : Desain Konseptual dan ER-Model
Desain Konseptual memenuhi persyaratan dalam analisa kebutuhan (requirements analysis). ER Model paling banyak digunakan dalam desain konseptual Konstruksinya ekspresif, paling dekat dengan cara manusia berpikir tentang aplikasi yang akan mereka kerjakan. Elemen dasar : entity, relasi, dan atribut (dari entity dan relasi). Beberapa elemen tambahan : entity lemah, hirarki ISA, dan aggregasi Catatan : Terdapat banyak variasi dalam ER Model. Beberapa macam batasan integritas (integrity constraints) dapat dinyatakan dalam ER Model : batasan kunci (key constraints), batasan partisipasi (participation constraints), dan overlap/covering constraints untuk hirarki ISA. Beberapa foreign key constraints juga secara implisit dinyatakan dalam definisi himpunan relasi. Beberapa constraints semisal functional dependencies tidak dapat dinyatakan dalam ER Model. Constraints memegang peranan penting dalam membentuk suatu desain basis data yang baik.
19
Ringkasan : Desain Konseptual dan ER-Model
Desain ER bersifat subyektif. Terdapat banyak cara untuk memodelkan suatu scenario. Pilihannya meliputi : Entiti vs. atribut, entity vs. relasi, relasi binary atau n-ary, menggunakan hirarki ISA atau tidak, menggunakan aggregasi atau tidak. Untuk memastikan suatu basis data didesain dengan bagus : skema relasional yang dihasilkan harus bisa dianalisa dan diperbaiki di waktu mendatang. Informasi functional dependencies dan teknik normalisasi juga diperlukan dalam hal ini (akandibahas pada bab selanjutnya).
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.