Tujuan
Pelajaran ini mencakup tujuan yang mengikuti:
mendefinisikan dan memberikan contoh subtipe.
mendefinisikan dan memberikan contoh supertype.
menyatakan aturan yang berkaitan dengan entitas dan subtipe, dan contoh memberi
masing-masing.
menerapkan aturan supertipe dan subtipe dengan mengevaluasi ketepatan diagram Er
yang mewakilinya.
menerapkan aturan supertipe dan subtipe dan memasukkannya ke dalam diagram bila
perlu.
Tujuan.
supertipe dan subtipe sering terjadi di dunia nyata:
jenis pesanan makanan (makan di, untuk pergi).
jenis tas belanjaan (kertas, plastik).
jenis pembayaran (cek, tunai, kredit).
Anda biasanya dapat mengaitkan "pilihan" dari sesuatu dengan suertype dan subtipe.
misalnya, apa yang akan menjadi metode pembayaran tunai, cek atau kartu kredit ?.
memahami contoh dunia nyata membantu kita memahami bagaimana dan kapan
memodelkannya.
Mengevaluasi entitas.
sering kali beberapa instance dari suatu entitas memiliki atribut dan / atau hubungan
yang tidak dimiliki oleh instance lain.
pencitraan bisnis yang perlu melacak pembayaran dari pelanggan. pelanggan dapat
membayar dengan uang tunai, dengan cek, atau dengan kartu kredit.
Haruskah kita membuat entitas pembayaran tunggal berupa uang tunai, cek, dan kartu
kredit?
dan apa yang terjadi jika di masa depan kami memperkenalkan metode pembayaran
keempat?
Membagi sebuah entitas.
terkadang masuk akal untuk membagi entitas menjadi subtipe. Ini mungkin terjadi
ketika sekelompok instance memiliki properti khusus, seperti atribut atau hubungan
yang hanya ada untuk grup itu.Dalam hal ini, entitas disebut "supertipe" dan masing-
masing kelompok disebut "subtipe".
Karakteristik subtipe.
subtipe:
mewarisi semua atribut dari supertype.
mewarisi semua hubungan supertype.
biasanya memiliki atribut atau hubungan sendiri.
ditarik dalam supertype.
tidak pernah hidup sendiri.
mungkin memiliki subtipe sendiri.
Contoh supertype.
ujian adalah supertpe dari kuis, ujian tengah semester, dan final.
subtipe memiliki beberapa atribut yang sama.
atribut umum ini terdaftar di tingkat supertype.
hal yang sama berlaku untuk hubungan.
subtipe mewarisi semua atribut dan hubungan entitas supertipe.
Selalu lebih dari satu subtipe.
1. ketika model ER selesai, subtipe tidak pernah berdiri sendiri. dengan kata lain, jika
suatu entitas memiliki subtipe, subtipe kedua juga harus ada. ini masuk akal.
2. subtipe tunggal persis sama dengan supertipe.
3. ide ini mengarah pada dua aturan subtipe:
lengkap: setiap instance dari supertype juga merupakan instance dari salah satu
subtipe. semua subtipe terdaftar tanpa kelalaian.
saling eksklusif: setiap instance dari supertype adalah turunan hanya satu subtipe yang
mungkin.
4. pada tahap pemodelan konseptual, adalah praktik yang baik untuk memasukkan
subtipe lain untuk memastikan bahwa subtipe Anda lengkap - bahwa Anda
menyerahkan setiap instance dari supertype.
Subtipe selalu ada
entitas apa pun dapat subtipe dengan membuat aturan yang membagi instance menjadi
grup. Tetapi bisa subtipe bukanlah masalahnya, memiliki alasan untuk subtipe adalah
masalahnya. Ketika ada kebutuhan dalam bisnis untuk menunjukkan persamaan dan
perbedaan antara contoh, maka subtipe.
Mengidentifikasi subtipe dengan benar.
Saat memodelkan supertipe dan subtipe, Anda dapat menggunakan tiga pertanyaan
untuk melihat apakah subtipe diidentifikasi dengan benar:
Apakah subtipe ini semacam supertipe?
sudahkah dibahas semua kemungkinan kasus? (lengkap).
apakah setiap instance cocok menjadi satu dan hanya satu subtipe? (saling eksklusif).
Subtipe bersarang.
Anda dapat membuat subtipe sarang.
untuk kemudahan membaca - "keterbacaan" - Anda biasanya akan menampilkan
subtipe dengan hanya dua level, tetapi tidak ada aturan yang akan menghentikan Anda
untuk melampaui dua level.
Ringkasan
dalam pelajaran ini, Anda seharusnya belajar bagaimana:
mendefinisikan dan memberikan contoh subtipe.
mendefinisikan dan memberi contoh supertype.
nyatakan aturan yang berkaitan dengan entitas dan subtipe dan berikan masing-
masing contoh.
menerapkan aturan supertipe dan subtipe dengan mengevaluasi keakuratan diagram
ER yang mewakilinya.
menerapkan aturan supertipe dan subtipe dan memasukkannya ke dalam diagram bila
perlu.
4.2 Mendokumentasikan Aturan Bisnis (Documenting Business Rules)
Tujuan.
Salah satu tujuan utama pemodelan data adalah untuk memastikan bahwa semua
informasi yang diperlukan untuk menjalankan bisnis diakui.
Mengidentifikasi dan mendokumentasikan aturan bisnis adalah kunci untuk memeriksa
model data Anda untuk akurasi dan kelengkapan.
Penting untuk menyadari bahwa tidak semua aturan bisnis dapat diwakili dalam ERD.
beberapa aturan bisnis harus diterapkan oleh pemrograman.
Aturan bisnis struktural dan prosedural.
Aturan struktural bisnis menunjukkan jenis informasi yang akan disimpan dan bagaimana
elemen-elemen informasi saling berhubungan.
aturan prosedural menangani prasyarat, langkah, proses, atau persyaratan alur kerja suatu
bisnis.
banyak aturan bisnis prosedural terkait dengan waktu: peristiwa A harus terjadi sebelum
acara B.
aturan bisnis struktural hampir selalu dapat digambarkan dalam ERD.
beberapa aturan bisnis prosedural tidak dapat dibuat diagramnya, tetapi masih harus
didokumentasikan sehingga dapat diprogramkan nanti.
Contoh aturan prosedural.
aturan bisnis prosedural terkait dengan alur kerja atau proses.
berikut adalah beberapa contoh proses yang harus diikuti dalam skenario departemen
sumber daya manusia:
beberapa karyawan kami diharuskan menghadiri acara pelatihan wajib. Peristiwa ini
terjadi di salah satu lokasi perusahaan yang ada dan karyawan melakukan perjalanan ke
lokasi untuk mengambil bagian dalam pelatihan.
persetujuan untuk semua permintaan perjalanan ke acara pelatihan harus ditandatangani
oleh manajer karyawan sebelum karyawan dapat mendaftar untuk acara tersebut.
Aturan bisnis yang digambarkan dalam ERD.
Skenario departemen sumber daya manusia:
beberapa karyawan kami diharuskan menghadiri acara pelatihan wajib. acara-acara ini
berlangsung di salah satu lokasi perusahaan yang ada, dan karyawan pergi ke lokasi untuk
mengambil bagian dalam pelatihan.
Mendokumentasikan aturan.
dalam proses pengembangan model data konseptual, tidak semua aturan bisnis dapat
dimodelkan.
beberapa aturan seperti dua yang tercantum di bawah ini harus diterapkan dengan
memprogram proses yang berinteraksi dengan data:
setiap karyawan yang lemburnya melebihi 10 jam per minggu harus dibayar 1,5 kali dari
tarif jam.
cumtomer yang saldo rekeningnya sudah lewat 90 hari tidak akan diizinkan untuk
mengisi pesanan tambahan.
Ringkasan.
dalam pelajaran ini, Anda seharusnya belajar bagaimana:
mendefinisikan dan menyusun aturan bisnis struktural.
mendefinisikan dan menyusun aturan bisnis prosedural.
mengakui bahwa beberapa aturan bisnis akan memerlukan pemrograman.
diagram aturan bisnis ketika mereka dapat diwakili dalam model ER.
Section 5 – Dasar Relasi
Objektivitas
Tujuan
- Sekali suatu kelas telah dialokasikan untuk seorang guru, akankah kelas akan ditransfer
ke guru lainnya, mungkinkah di pertengahan semester?
- Biasanya iya, karea jika tidak, apa yang harus dilakukan untuk guru aslinya jika sedang
sakit?
- Beberapa klub kesehatan mengizinkan keanggotaannya diganti darri satu orang ke
lainnya, tetapi klub kesehatannya tidak mengizinkan
- Aturan bisnis ini normal ditentukan oleh apa yang lebih efesien dan lebih menguntungkan
untuk klub.
Ulasan Relasi
- Mari kita ulas sebuah simple relasi antara EMPLOYEE dan DEPARTMENT.
- Pilihan :
Haruskah setiap employee ditugaskan pada setiap DEPARTMENT?
Haruskah setiap department bertanggungjawab untuk setiap employee?
- Kardinalitas
Berapa banyak employee’s yang bertanggungjawab department
Berapa banyak department yang menugasi employee?
- Sifat yang tidak dapat diganti : seorang student dapat mengeluarkan receipt untuk
membayar uang sekolah, mengambil sertifikat ujian, atau pembelian barang di toko buku.
- Sekali sebuah receipt dikeluarkan, tidak dapat digantikan oleh student lainnya.
Objektivitas
- Mengenali dan memberikan contoh dari hubungan one-to-one
- Mengenali dan memberikan contoh dari hubungan one-to-many
- Mengenali dan memberikan contoh dari hubungan many-to-many
- Mengenali kelebihan relasi dan menghapusnya dari ERD
Tujuan
One-to-Many (1:M)
- Tipe Variasi dari relasi 1:M paling umum dalam sebuah ER model.
Many-to-Many (M:M)
- Tipe Variasi dari relasi M:M paling umum, terutama pada versi pertama dari sebuah ER
Model
-
One-to-One (1:1)
- Biasanya kamu akan menemukan beberapa tipe dari relasi 1:1 di setiap ER Model.
- Pada salah satu akhir dari relasi 1:1, umumnya terjadi ketika peran dimodelkan.
- Relasi 1:1 (dari semua variasi) juga terjadi ketika beberapa dari entitas merepresentasikan
tahapan variasi proses.
Kelebihan relasi
- Namun, hati-hati dalam menyimpulkan bahwa sebuah relasi berlebihan berdasarkan
strukturnya sendiri.
- Baca relasi untuk memeriksa
- ERD tidak menunjukkan bahwa relasi berlebihan
Kata kunci : Many-to-Many, One-to-Many, One-to-One, Kelebihan
5.3 Menyelesaikan Relasi Many-to-Many
Objektivitas
- Mengindetifikasikan atribut milik relasi M:M
- Mendemonstrasikan langkah-langkah untuk menyelesaikan sebuah relasi M:M dengan
menggunakan entitas titik potong
Tujuan
- Pelajaran ini akan membantu kamu memenuhi model, mungkin membutuhkan untuk
membuat entitas baru atau relasi baru berdasarkan kebutuhan bisnis
- Ini juga akan membantu kamu menetapkan ruang lingkup dari data model, model yang
penting untuk bisnis.
- Di sebuah sekolah , seorang student mungkin belajar satu atau lebih subjects
- Setiap subject mungkin dipelajari oleh satu atau lebih student.
- Ketika seorang student mendaftar sebuah subject , kita ingin mencatat nilai yang mereka
capai pada subject itu
- Entitas mana yang mana menjadi milik atribut “Grade” ?
- Jika kita menginput “Grade” pada entitas student, bagaimana jika itu untuk subject?
- Jika kita menginput “Grade” pada entitas subject, bagaimana jika itu untuk student tidak
pada tingkatnya?
-
Larangan relasi
- UID (unique identifier) dari ttik potong entitas jarang berasal dari relasi yang orisinil dan
tereprensentasikan lagi
- Pada kasus ini, relasi berasal dari entitas orisinal ke relasi baru
Kata kunci :
Relasi dilarang, titik potong entitas
5.4 Persyaratan CRUD
Analisis CRUD
- Jalan terbaik untuk validasi sebuah ERD adalah dengan analisis CRUD
- CRUD merupakan akronim dari Create, Retrieve, Update, Delete
- Ada empat fungsi dasar
- Bagaian untuk mememriksa data model untuk kelengkapan akurasi untuk meyakinkan
semua fungsi CRUD ditampilkan di ERD
Fungsi Create
- Selama wawancara klien dan ketika menulis scenario bisnis dan aturan, lihat kata kunci :
input, enter, load, import, record, dan create
- Semua diindikasikan bahwa data yang tersimpan dibuat dalam database dalam satu waktu
- Ulasan tentang persyaratan untuk kata kunci ini
- Apakah akun data model untuk semua berfungsi?
Fungsi Retrieve
- Selama wawancara klien dan ketika menulis scenario bisnis dan aturan, lihat kata kunci :
View, report, bring up, print, find, read, dan look up
- Semua poin ini untuk mengambil informasi dari database
- Ulasan syarat untuk kata kunci ini
- Apakah akun data model untuk semua berfungsi?
Fungsi Update
- Selama wawancara klien dan ketika menulis scenario bisnis dan aturan, lihat kata kunci :
Change, modify, alter, update
- Semua poin ini untuk mengupdate informasi dari database
- Ulasan syarat untuk kata kunci ini
- Apakah akun data model untuk semua berfungsi?
Fungsi Delete
- Selama wawancara klien dan ketika menulis scenario bisnis dan aturan, lihat kata kunci :
Dircard, remove, trash, purge, delete
- Semua poin ini untuk menghapus informasi dari database
- Ulasan syarat untuk kata kunci ini
- Apakah akun data model untuk semua berfungsi?
SECTION 6 – UIDS DAN NORMALISASI
ID student telah dipilih sebagai UID primer dalam kedua entitas student
Entitas pertama memiliki UID sekunder
Identifikasi : Database vs. Dunia Nyata
Unique identifier membuat kemungkinan untuk kita membedakan satu hal pada
sebuah entitas dari yang lainnya
Sebagaimana yang kita lihat selanjutnya, hal ini menjadi primary key pada
sebuah database
Sebuah primary key memungkinkanmu untuk mengakses catatan/data spesifik
dalam sebuah database
Dalam dunia nyata, terkadang tidak mudah untuk membedakan satu hal dari
yang lainnya.
Sejak banyak ruang kelas di dalam bangunan sekolah, ruang kelas merupakan
multi-valued dan terjadi violasi 1NF
Apabila sebuah atribut merupakan multi-valued, buat sebuah entitas tambahan
dan relasikan ke entitas original (asli) dengan relasi 1 to many
1NF Violation
Periksa entitas
Apakah terdapat multi-valued atribut?
Ketika semua atribut dalam sebuah entitas adalah single-valued, entitas dapat
dikatakan menjadi first normal form
e
Garis Relasi Second Normal Form
UID untuk akun adalah gabungan ID dari sebuah barred relationship yang terdiri
atas nomor akun dan nomor bank
Apakah balance merupakan sebuah properti dari nomor akun, nomor bank, atau
keduanya?
Apakah date opened merupakan sebuah properti dari nomor akun, nomor bank,
atau keduanya?
Order ERD
Apakah yang salah dari diagram di bawah?
Model kedua, dengan entitas state baru, merupakan third normal form
7.1 ARC
Objective (Tujuan)
Purpose / Tujuan
Arc (busur) dalam pemodelan data membantu desainer menjelaskan hubungan eksklusif
atau lintas hubungan
Semakin eksplisit Anda dapat menentukan persyaratan klien, semakin akurat
implementasi akhir Anda
Setiap bisnis memiliki batasan nilai atribut mana dan hubungan mana yang diizinkan
Pembatasan ini disebut kendala
Mereka dapat merujuk pada satu atribut entitas, atau hubungan antara entitas
Kita sudah tahu tentang beberapa macam kendala; misalnya, setiap karyawan harus
bekerja di satu dan hanya satu departemen
Dalam pelajaran ini, kita akan melihat jenis kendala lain - eksklusif atau kendala
Hubungan yang saling eksklusif kadang-kadang ada antara entitas dan juga dikenal
sebagai eksklusif atau hubungan
Eksklusif atau hubungan adalah hubungan antara satu entitas dan dua (atau lebih) entitas
lain di mana hanya satu dari hubungan itu yang bisa ada pada suatu waktu
di ERD, kami memodelkan jenis hubungan ini dengan Arc
Eksklusif atau Hubungan
Sebagai contoh, acara pelatihan dapat diselenggarakan oleh pelatih di rumah atau
perusahaan pelatihan eksternal
Setiap acara pelatihan harus diselenggarakan oleh satu dan hanya satu in-house trainer
atau satu dan hanya satu perusahaan pelatihan
Contoh lain : Papan iklan adalah ruang iklan yang dapat menampilkan film, produk, atau
pengumuman publik. Ini mungkin mengandung iklan tentang hanya satu saja dalam satu
waktu
Setiap "fitur" memiliki karakteristik atau atributnya sendiri
Arc memberitahu pembaca diagram bahwa hanya satu dari "fitur" ini yang akan memiliki
hubungan dengan setiap instance dari papan iklan
Arc (busur) adalah cara untuk mewakili hubungan yang saling eksklusif di ERD
Arc (busur) ini mewakili eksklusif atau hubungan - masing-masing keanggotaan harus
dipegang oleh satu perusahaan atau harus dipegang oleh satu pelanggan, tetapi tidak
keduanya
Arc (busur) diwakili pada ERD sebagai garis padat dengan ujung melengkung
Sebuah lingkaran digambar pada busur untuk setiap hubungan yang merupakan bagian
dari Arc (busur)
Arcs
Contoh 2 : Sebuah acara dapat diadakan di rumah pribadi atau ruang publik
Jika entitas yang terkait melalui busur serupa, mungkin ada kasus untuk membuat super /
subtipe tanpa busur
Dalam hal ini, baik rumah pribadi maupun ruang publik adalah tipe tempat, dan mereka
memiliki atribut yang hampir sama, sehingga mereka bisa menjadi Supertype dan subtipe
Contoh 3 : Di rumah pelatihan dan perusahaan pelatihan bukanlah jenis acara pelatihan,
dan mereka tidak memiliki atribut yang sama. ini yang terbaik untuk dimodelkan dengan
busur
Terminologi
Summary (Ringkasan)
Objective (Tujuan)
Seringkali, peran diatur oleh hierarki -- pada pekerjaan (manajer, kepala kru, petugas
front-counter, pembuat makanan), atau di sekolah (kepala sekolah atau kepala sekolah,
asisten kepala sekolah atau asisten kepala sekolah, guru, staf).
Data hierarkis sangat umum
Memahaminya akan membantu Anda menjadi model :
Bagan organisasi bisnis
Struktur bangunan
Pohon keluarga
Dan banyak hierarki lain yang ditemukan di dunia nyata
Suatu hubungan tidak bisa sekaligus hierarkis dan rekursif pada saat yang sama
Mana yang menurut Anda lebih baik?
Hierarkis: struktur hierarkis lebih eksplisit dan lebih mudah dipahami kebanyakan orang
karena sangat mirip dengan bagan organisasi
Setiap entitas dapat memiliki atribut dan hubungan wajibnya sendiri, jika bisnis
membutuhkan ini (alih-alih semua atribut dan hubungan opsional, seperti yang Anda
miliki dalam rekursif)
Dengan cara ini, model data Anda benar-benar mencerminkan aturan bisnis
Rekursif: hubungan rekursif cenderung lebih sederhana karena Anda hanya
menggunakan satu entitas
Diagram Anda akan kurang "sibuk"
Namun, mereka kurang spesifik - Anda tidak dapat memiliki atribut atau hubungan wajib
kecuali mereka wajib dalam semua hal pada entitas
Konvensi Gambar
Terminologi
Summary (Ringkasan)