basis-data-l08-enhanced-entity-relationship ... - WordPress.com

13 downloads 61 Views 718KB Size Report
Generalisasi adalah pendekatan bottom-up yang tujuannya adalah mengidentifikasi superclass dari subclass-subclass yang ada. pri.and.ari@2010  ...
Enhanced ER Modeling Techniques

Yusuf Priyandari @Agustus 2010

Contents

2

1

Click to add Title

2

Click to add Title

3

Click to add Title

4

Click to add Title

pri.and.ari@2010

Tahap Pengembangan Basis Data  Model 1

1

2

3

Topics discussed 4

6 3

5

7 pri.and.ari@2010

1. Keterbasatasan ER  Pemodelan ER memiliki kelemahan untuk perancangan basis data yang kompleks dengan jumlah atribut/data dan relasi yang sangat banyak.  Salah satu upaya mengatasi kelemahan tersebut adalah dengan mengadopsi konsep Enhanced ER (EER) di dalam perancangan basis data.  Konsep EER yang banyak dipakai adalah “Specialization/Generalization”  Konsep “Specialization/Generalization” berkaitan dengan tipe entitas khusus yang dikenal sebagai superclass dan subclass, dan proses pewarisan atribut (attribute inheritance) 4

pri.and.ari@2010

2. Superclass dan Subclass  Superclass.  Sebuah entitas yang mencakup/memiliki satu atau beberapa kelompok instans yang berbeda.  Gabungan dari beberapa subclass yang sejenis  Ex: Staff { Manager, Supervisor, Sales }

 Subclass.  Sebuah kelompok instans dari sebuah entitas.  Ex: Manager, Supervisor, Sales

5

pri.and.ari@2010

3. Relasi Superclass/Subclass  Relasi antara superclass dengan beberapa subclassnya adalah one-to-one (1:1). Ex: Staff – Manager.  Setiap anggota sebuah subclass pasti juga anggota superclass, tetapi memiliki perbedaan properti (attribute) ataupun perilaku (behavior).  Penggunaan superclass/subclass dimaksudkan untuk mengakomodir adanya entitas yang memiliki banyak kesamaan atribut, namun ada perbedaan pada beberapa atribut secara khusus. Ex: Manager secara khusus punya atribut kepemilikan kendaraan, disamping memiliki sejumlah atribut yang sama dengan staff pada umumnya. 6

pri.and.ari@2010

3. Relasi Superclass/Subclass  .

7

pri.and.ari@2010

4. Pewarisan Atribut  Sebuah instans dalam sebuah subclass/superclass merepresentasikan suatu objek nyata.  Oleh karenanya, sebuah anggota subclass mewarisi atributatribut yang berkaitan dengan superclass, namun juga memiliki atribut yang spesifik untuk subclass tersebut.  Ex: SalesPersonnel  Specific: salesArea, vehicleLicenseNo, carAllowance  General: staffNo, name, dll

 Sebuah subclass yang memliki beberapa superclass disebut a shared subclass. Dengan kata lain, sebuah anggota a shared subclass pasti anggota suatu superclass. Konsekuensinya, atribut-atribut superclass diwariskan oleh shared subclass tersebut, yang kemungkinan juga memiliki atribut tambahan sendiri. Hal ini disebut multiple inheritance. 8 pri.and.ari@2010

5. Proses Spesialisasi/Generalisasi  Spesialisasi:  Proses memaksimasi perbedaan antar anggota dalam sebuah entitas dengan mengidentifikasi berbagai karakteristik yang berbeda.  Spesialisasi adalah pendekatan top-down yang bertujuan untuk mendefinisikan sejumlah subclass-subclass yang terkait dengan superclass.

 Generalisasi:  Proses meminimasi perbedaan antar entitas dengan mengidentifikasi berbagai karakteristik yang sama.  Generalisasi adalah pendekatan bottom-up yang tujuannya adalah mengidentifikasi superclass dari subclass-subclass yang ada.

9

pri.and.ari@2010

5. Proses Spesialisasi/Generalisasi

10

pri.and.ari@2010

5. Proses Spesialisasi/Generalisasi

11

pri.and.ari@2010

6. Batasan pd Spesialisasi/Generalisasi  Ada dua batasan yang dkiterapkan pada relasi superclass/subclass:  Batasan partisipasi (participation constraint)  Disjoint constraint.  Batasan partisipasi (participation constraint)  Menentukan apakah setiap instans di superclass harus ada/berpartisipasi sebagai anggota sebuah subclass.  Bentuk partisipasi:  Mandatory : setiap instans di superclass juga harus menjadi anggota sebuah subclass  Optional : sebuah anggota superclass tidak perlu menjadi anggota subclass manapun. 12

pri.and.ari@2010

6. Batasan pd Spesialisasi/Generalisasi  Disjoint constraint  Mendeskripsikan relasi antara anggota-anggota suatu subclass dan mengindikasikan apakah memungkinkan bagi sebuah anggota superclass untuk menjadi anggota dari satu, atau beberapa subclass.  Disjoint constraint diterapkan jika superclass memiliki lebih dari satu subclass.  Jika suatu subclass bersifat disjoint, maka sebuah instans dapat menjadi anggota sebuah subclass saja, dan sebaliknya untuk nondisjoint.  Gunakan “or” untuk menandakan disjoint, dan  Gunakan “and” untuk menandakan nondisjoint 13

pri.and.ari@2010

6. Batasan pd Spesialisasi/Generalisasi

14

pri.and.ari@2010

6. Batasan pd Spesialisasi/Generalisasi  Pilihan yang tersedia untuk merepresentasikan relasi superclass/subclass yang didasarkan pada partisipasi dan batasan.

15

pri.and.ari@2010

Studi Kasus

THE STAYHOME VIDEO RENTALS

16

pri.and.ari@2010

Hasil Identifikasi Super/Subclass  .

17

pri.and.ari@2010

Diskusi

18

pri.and.ari@2010

Tugas Mandiri  

19

Buatlah secara berkelompok rangkuman desain tabel-tabel untuk StayHome. Misal, dari alur cerita desain tabel Branch, diperoleh:

pri.and.ari@2010

Tugas Mandiri 

Hasil rangkuman desain tabel Branch yang dibuat di Excell sbb:



Untuk tipe data, tidak perlu terlalu spesifik berdasarkan aplikasi DBMS yang akan digunakan (misal, Integer, Char, Varchar, dll untuk MySQL), cukup berbentuk umum saja dahulu.

20

pri.and.ari@2010

21

21

pri.and.ari@2010

Tugas Mandiri 

Gunakan semua informasi yang ada di buku termasuk yang terdapat di Lampiran C, misal: ERD final untuk StayHome.



Dikumpulkan 24 jam sebelum waktu perkuliahan berikutnya. Dikumpulkan melaui email:



[email protected]

22

pri.and.ari@2010

Tugas Mandiri  Baca buku [1] chapter 12, 13, 15, dan 16

23

pri.and.ari@2010