1 / 19

BAB 2

BAB 2. MODEL RELASI ENTITAS (E-R MODEL). 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

nova
Télécharger la présentation

BAB 2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. BAB 2 MODEL RELASI ENTITAS (E-R MODEL)

  2. TinjauanDesain Basis Data • DesainKonseptual (Denganmenggunakan ER-Model) • Informasiapa yang dikandungolehsuatu entity danrelasi yang harusdisimpandalambasis data • Batasanintegritas (integrity constraint) danaturanbisnis yang harusditangani • Skemabasis data dalam ER Model dapatdipresentasikandalambentukgambar (ER diagram). • MemetakanER Diagram kedalamskemarelasional.

  3. Dasar-dasar ER Model • Entiti : obyekdunianyata yang dapatdibedakandariobyek yang lain. Entitidigambarkan(dalam basis data) denganmenggunakanhimpunanatribut. • Himpunanentity : Kumpulan entity yang sejenis. Misal: himpunan data pegawai • Semuaentity dalamhimpunan entity memilikihimpunanatribut yang sama • Tiaphimpunan entity memilikikunci (key) • Tiapatributmemilikidomain.

  4. Dasar-dasar ER Model • Relasi : Asosiasidiantaraduaataulebihentity. Misal: AnibekerjadiDepartemenFarmasi

  5. Dasar-dasar ER Model • Himpunan Relasi : Himpunan relasi yang sejenis • Himpunanrelasi n-aryR berelasidengansejumlahhimpunan entity n E1 …En • Himpunan entity yang sama dapat berpartisipasi dalam himpunan relasi yang berbeda, atau mempunyai peran yang berbeda dalam suatuhimpunan yang sama.

  6. BatasanKunci (Key Constraints) • Padasuatucontohkasus, seorangpegawaidapatbekerjapadabeberapa departments; sebuahdepartementmemilikibanyakpegawai • Sebaliknya, tiapdepartementhanyamemilikiseorang manager, yang berhubungandengankey constraint padaManages.

  7. BatasanKunci (Key Constraints)

  8. Batasanpartisipasi (Participation Constraints) • Apakahsetiapdepartemenmempunyaiseorang manager ? • Jikasemuadepartemenpastimempunyai manager makapartisipasiDepartementsdalam Manages dapatdikatakan total. Sebaliknyajikatidaksemuadepartementmemiliki manager makapartisipasinyaadalah partial.

  9. EntitiLemah • Entitilemahdapatdiidentifikasisecaraunikjikaterdapatperankunciutama(primary key) yang berasaldariataudimilikioleh entity yang lain (owner). • Himpunanentity owner dan entity lemahharusberartisipasidalamhimpunanrelasi one-to-many (satu owner, banyak entity lemah).

  10. Hirarki ISA (‘is a’) • Sepertipada C++, danbahasapemrograman yang lain, suatuatributdapatditurunkan. • Jikakitadeklarasikan A ISA B, setiap entity A jugatermasuk entity B. • Overlap constraints : Bolehkahseorangpegawaimempunyai status sebagaipegawaidenganhitungangajiperjam (Hourly_Emps) samahalnyasepertipegawaidenganperjanjiankontrak (Contract_Emps) ? (Boleh/Tidak) • Covering constraints : Apakahsetiap entity Employees jugamerupakanentity Hourly_EmpsdanContract_Emps ? • Alasanmenggunakan ISA : • Untukmenambahkandeskripsiatribut yang lebihspesifikpada subclass. • Untukmengidentifikasi entity yang berpartisipasidalamsuaturelasi.

  11. Aggregasi • Digunakanpadasaatkitaperlumemodelkanapasaja yang terlibatdalamsuatuhimpunanrelasi. • Aggregasi membolehkan kita untuk memperlakukan suatu himpunan relasi sebagaihimpunan entity untuktujuanpartisipasidalamrelasi yang lain.

  12. Aggregasi vs. relasi ternary • Monitors adalahrelasi yang distinct dengandeskripsiatribut. • Jugadapatdikatakanbahwatiapsponsorship dimonitorolehkebanyakanseorangpegawai. • DesainKonseptualdenganmenggunakan ER Model • Pilihandesain: • Haruskankonsepdimodelkansebagai entity atauatribut? • Haruskahkonsepdimodelkansebagai entity ataurelasi? • Identifikasirelasi : binary atau ternary ? atauaggregasi ? • Batasandalam ER Model : • Semakinbanyak semantic data yang dapatditangkap. Tapibeberapabatasantidakdapatditangkapdalam ER diagram.

  13. Entiti vs. Atribut • Haruskahinformasialamat (address) menjadiatributdari Employee ataumenjadientity (dihubungkankeEmployee olehsuaturelasi) ? • Tergantungpadapenggunaan yang kitainginkandariinformasialamattersebut, danjuga tergantung pada semantic data. • Jikaterdapatbeberapaaddress per Employee, maka address harusmenjadisuatuentity (nilaidariatributtidakbisadiset, ataudiinisialisasi). • Jikastrukturdariaddress (kota, jalan, dll) dianggappenting, makaaddress tersebutjugaharusdimodelkansebagaisuatu entity (karenanilaisuatuatributharus atomic).

  14. Entiti vs. Atribut • Works_In2 tidakmengijinkanseorang employee untukbekerjapadasuatudepartement dalam dua atau lebih periode. • Samadenganpermasalahanmenyimpanbeberapaaddress untukseorangemployee : Kita perlumenyimpanbeberapanilaidarideskripsiatributuntuktiap instance darirelasiberikutini.

  15. Entiti vs. Relasi • ER diagram diatasakan OK jikaseorang manager mengambil budget yang terpisahpadatiapdepartemen. • Apayang terjadijika manager mengambil budget yang dikoverdarisemuadepartemen ? • Penyimpananredundant untukdbudget yang disimpanpadatiapdepartemen.

  16. Relasi Binary vs. Ternary • Jikapolicy dimilikihanyaolehsatuorang employee : • Key constraint pada policies mengartikanbahwasuatukebijakan (policy) diterapkanuntukhanyadapatmengkoversatuorangdependent • Apayang merupakan constraint tambahanpada diagram yang keduaberikutini ?

  17. Relasi Binary vs. Ternary • Contohsebelumnyatelahmengilustrasikansuatukasuspadasaatduarelasibinary lebihbaikdibandingkansaturelasi ternary. • Contohyang lain : relasi ternary Contracts berelasidenganhimpunan entity Parts, Departments dan Suppliers, yang memilikiatributdeskriptif qty. Tidakadakombinasirelasirelasibiner yang layakuntukmenggantikansubsitusiini : • S ‘dapatmensupply’ P, D ‘memerlukan’ P, dan D ‘berurusandengan’ S. Dapatkahdiandaikanbahwa D memilikiperjanjianuntukmembeli P dari S ? • Bagaimanacarakitamerecordqty ?

  18. Ringkasan : Desain Konseptual dan ER-Model • DesainKonseptualmemenuhipersyaratandalamanalisakebutuhan (requirements analysis). • ER Model paling banyakdigunakandalamdesainkonseptual • Konstruksinyaekspresif, paling dekatdengancaramanusiaberpikirtentangaplikasi yang akan mereka kerjakan. • Elemendasar : entity, relasi, dan atribut (darientity dan relasi). • Beberapaelementambahan : entitylemah, hirarki ISA, dan aggregasi • Catatan: Terdapatbanyakvariasidalam ER Model. • Beberapamacambatasanintegritas (integrity constraints) dapatdinyatakandalam ER Model : batasankunci (key constraints), batasanpartisipasi (participation constraints), dan overlap/covering constraints untukhirarki ISA. Beberapaforeign key constraints jugasecaraimplisitdinyatakandalamdefinisihimpunanrelasi. • Beberapa constraints semisal functional dependencies tidak dapat dinyatakandalam ER Model. • Constraints memegangperananpentingdalammembentuksuatudesain basis data yang baik.

  19. Ringkasan : Desain Konseptual dan ER-Model • Desain ER bersifatsubyektif. Terdapatbanyakcarauntukmemodelkansuatu scenario. Pilihannyameliputi: • Entiti vs. atribut, entity vs. relasi, relasi binary atau n-ary, menggunakanhirarki ISA atautidak, menggunakanaggregasiatautidak. • Untukmemastikansuatu basis data didesaindenganbagus : skemarelasionalyang dihasilkanharusbisadianalisadandiperbaikidiwaktumendatang. Informasifunctional dependencies dantekniknormalisasijugadiperlukandalamhalini (akandibahaspadababselanjutnya).

More Related