1 Model Data Entity Relationship Minggu 22 Desain Basis Data dan Diagram ER Analisis Persyaratan Desain database konseptual Desain database logika Per...
Entitas: obyek dalam dunia nyata Set entitas : sekumpulan entitas Entitas dapat digambarkan dengan sekumpulan atribut. Key : kumpulan minimal dari atribut yang nilainya secara unik mengidentifikasi entitas
Dasar Model ER v v v
Hubungan : kumpulan dua entitas atau lebih Set hubungan: satu set n-tuples Sebuah hubungan bisa mempunyai atribut deskriptip. ssn
name
Employees
lot
name
ER Model Basics (Contd.) name
Employees
v
v
dname lot
did Works_In
lot
Employees
since ssn
ssn
budget Departments
supervisor
subordinate
Reports_To
Hubungan: contoh yang menyatakan seseorang bekerja di pharmacy department. Set Hubungan : kumpulan hubungan yang serupa.
Batasan Key
since name ssn
v
Gambar disamping menunjukkan seorang pekerja dapat bekerja di beberapa departemen dan sebuah departemen dapat mempunyai beberapa pekerja.
dname lot
Employees
did
Manages
budget
Departments
Jenis-jenis hubungan
1-to-1
1-to Many
Many-to-1
Many-to-Many
Batasan Partisipasi v v
v
Satu departement hanya boleh mempunyai satu manajer. Total : partisipasi dari set entitas departement dalam set hubungan manages. Parsial : partisipasi yang tidak total since name ssn
dname did
lot Employees
Manages
Works_In
since
budget Departments
Weak Entity v
Weak entity diidentifikasi secara unik hanya dengan memperhatikan beberapa atribut. – –
Set owner dan set weak entity harus terlibat dalam set hubungan one-to-many. Set weak entity harus terlibat secara total dalam mengidentifikasi set hubungan..
name ssn
lot
Employees
cost
Policy
pname
age
Dependents
name ssn
Hirarki Kelas
lot
Employees hourly_wages
hours_worked ISA contractid
Hourly_Emps
v v v
Contract_Emps
Batasan overlap: menentukan apakah dua subkelas boleh berisi entitas yang sama. Batasan Covering : entitas dalam subkelas secara kolektif menyertakan semua entitas dalam superkelas. Alasan mendasar identifikasi subkelas (ISA): – –
Menambahkan atribut deskriptif untuk entitas dalam subkelas. Mengidentifikasi sekumpulan entitas dalam beberapa hubungan.
name ssn
Agregasi v
v
Digunakan untuk memodelkan hubungan antara kumpulan entitas dan hubungan. Agregasi memperbolehkan kita mengindikasikan satu set hubungan
lot Employees
Monitors
since
started_on pid
pbudget Projects
until
did
Sponsors
dname budget Departments
Desain Konseptual dengan Model ER v
v
v
v
Haruskah konsep tersebut dimodelkan sebagai entitas atau atribut? Haruskah konsep tersebut dimodelkan sebagai entitas atau hubungan? Haruskah kita menggunakan hubungan binary atau ternary? Haruskah kita menggunakan agregasi?
Entitas vs. atribut v
v
Tidak jelas apakah sebuah sifat akan dimodelkan sebagai atribut atau set entitas? Alternatif: u u
Mencatat lebih dari satu alamat untuk seorang pekerja Mendapatkan struktur alamat dalam diagram ER.
Entitas vs. Atribut (lanj.) from
name ssn Employees
v
v
to dname
lot
did Works_In2
budget Departments
Seorang pekerja dapat bekerja di sebuah departemen lebih dari satu periode waktu. Perlunya mencatat beberapa alamat utk tiap pekerja.
Entitas vs. Hubungan v
Seorang manajer menerima dbudget terpisah utk tiap departement.
since name ssn
dbudget
lot Employees
dname
did
Departments
Manages2
name ssn
budget
dname lot
Employee
did Manages3
budget Departments
since apptnum
Mgr_Appts dbudget
Binary vs. Ternary Relationships name ssn
v
v
Sebuah policy tidak bisa digunakan secara bersama-sama oleh dua atau lebih pekerja Tiap policy harus dimiliki oleh beberapa pekerja
pname
lot Employees
Dependents
Covers
Bad design
age
Policies policyid
cost
name
pname
ssn
lot
age
Dependents
Employees Purchaser
Beneficiary
Better design policyid
Policies cost
Desain Konseptual untuk Persahaan Besar v
v v
Desain konseptual lebih dari sekadar menggambarkan fragmen kecil dalam aplikasi diagram ER Metodologi yang digunakan Mengembangkan skema konseptual terpisah
Unified Modeling Language v
v
v
v
v
Pemodelan bisnis : proses bisnis yang melibatkan aplikasi perangkat lunak Pemodelan sistem : identifikasi persyaratan untuk aplikasi perangkat lunak. Pemodelan database konseptual : konstruksi paralel dengan konstruksi ER Pemodelan Database Fisik : UML menyediakan gambar untuk desain database fisik Pemodelan Sistem Perangkat keras : menggambarkan konfigurasi perangkat keras yang digunakan