BAB II
PERANCANGAN BASIS DATA DGN TEKNIK ER_M
1.1. ER_M⇒ Salah satu model data yang dikembangkan berdasarkan obyek
⇒ Digunakan untuk menjelaskan hubungan antar data dalam basis data kepada pemakai secara logik
⇒ Didasarkan pada suatu persepsi bahwa real world terdiri atas obyek-obyek dasar yang mempunyai kerelasian antar obyek-obyek dasar tersebut
⇒ Digambarkan dalam bentuk ER_D
K
KoommppoonneennEERR__DD
1. Entitas:
⇒ obyek-obyek dasar yang terkait di dalam sistem
⇒ dapat berupa orang, benda, atau hal
⇒ keterangannya perlu disimpan di dalam basis data
⇒ Aturan penggambaran
⇒ Simbol
Isian entitas
⇒ menyatakan sebuah kemungkinan pada entitas:
⇒ Contoh:
⇒ Mahasiswa dengan NIM 02050001 ⇒ Mahasiswa bernama Rico
Himpunan entitas
⇒ menyatakan sekumpulan entitas dengan struktur/sifat yang sama
⇒ Contoh:
⇒ sejumlah mahasiswa jenjang sarjana ⇒ sejumlah mahasiswa jenjang diploma ⇒ semua mahasiswa
Entitas reguler
⇒ disebut juga entitas dominan
⇒ entitas yang keberadaannya tidak bergantung pada entitas yang lain
⇒ Contoh: ⇒ Mahasiswa ⇒ Mata_Kuliah ⇒ Dosen ⇒ Kabupaten ⇒ simbol Entitas dependen
⇒ disebut juga entitas tak bebas/entitas lemah (weak entity)/entitas subordinat
⇒ merupakan entitas yang keberadaannya bergantung pada entitas yang lain
⇒ Contoh:
⇒ Mahasiswa_Jenjang_Sarjana bergantung pada Mahasiswa ⇒ Mata_Kuliah_Wajib bergantung pada Mata_Kuliah ⇒ Wali_Mahasiswa bergantung pada Mahasiswa
⇒ Simbol
Entitas super type dan entitas sub type
⇒ Entitas super type: entitas yang mempunyai tingkatan lebih tinggi, membawahi entitas bagian
⇒ Entitas sub type: entitas yang lebih rendah, menjadi bagian entitas lain
⇒ Contoh:
⇒ Karyawan_Tetap dan Karyawan_Tidak_Tetap bagian dari Karyawan
⇒ Simbol
2
2.. AAttttrriibbuuttee
⇒ Sering disebut property
⇒ Merupakan keterangan-keterangan yang terkait pada entitas yang perlu disimpan sebagai basis data.
⇒ Berfungsi sebagai penjelas sebuah entitas ⇒ Aturan penggambaran
⇒ Simbol ⇒ Contoh:
Entitas
Atribut
Mahasiswa Kode_Angkatan, Kode_Program_Studi, Kode_Jenjang_Studi, Nomor, Nama_Mahasiswa, Tanggal_Lahir, Alamat_Lokal, Kode_Agama, Status
Dosen NIK, Nama_Dosen, Tanggal_Lahir, Alamat_Lokal, Kode_Golongan, Kode_Agama, Tanggal_SK, Nomor_SK, No_Telepon, Status
Mata Kuliah Kode_Mata_Kuliah, Nama_Mata_Kuliah, Sks, Smt, Status Angkatan Kode_Angkatan, Tahun_Angkatan
Jenjang Studi Kode_Jenjang_Studi, Nama_Jenjang_Studi
Program Studi Kode_Prodi, Nama_Prodi, Tanggal_SK, Nomor_SK, Status, Kode_Jurusan, Sks_Program_Studi
Jurusan Kode_Jurusan, Nama_Jurusan, Tanggal_SK, Nomor_SK, Kode_Fakultas Fakultas Kode_Fakultas, Nama_Fakultas,Tanggal_SK, No_SK
Golongan Kode_Golongan, Nama_Golongan, Gaji_Pokok Nilai Nilai, Mutu, Keterangan
Ruang Kode_Ruang, Kapasitas
Waktu Kode_Waktu, Hari, Jam_Mulai, Status
Wali_Mahasiswa Kode_Angkatan,
Kode_Jenjang_Studi, Kode_Jurusan, Nomor, Nama_Wali,
Alamat_Asal, Kode_Pekerjaan, Kode_Kabupaten
Kabupaten Kode_Kabupaten,
Nama_Kabupaten, Kode_Propinsi
Propinsi Kode_Propinsi,
Nama_Propinsi
Agama Kode_Agama,
Nama_Agama
Pekerjaan Kode_Pekerjaan,
Nama_Pekerjaan
Attribute:
1. Simple attribute: jika berisi sebuah komponen nilai/elementer Contoh:
⇒ Kode_Angkatan : 2002 (angkatan tahun 2002)
⇒ Kode_Program_Studi : 01(prodi Teknik Informatika)
⇒ Kode_Jenjang_Studi : 08 (jenjang studi sarjana)
⇒ Kode_Jurusan : 01 (jurusan Teknik Informatika)
⇒ Nomor : 1000 (nomor 2002) 2. Composite attribute: jika berisi lebih dari sebuah komponen nilai
Contoh:
⇒ Nama_Mahasiswa : Mawar Menur Melati
⇒ Tanggal_Lahir : 01-01-1980
3
3.. KKeerreellaassiiaannAAnnttaarrEEnnttiittaass ((RReellaattiioonnsshhiipp))
⇒ mendefinisikan hubungan antar dua buah entitas
⇒ adalah kejadian atau transaksi yang terjadi di antara dua buah entitas yang keterangannya perlu disimpan dalam basis data
⇒ Aturan penggambaran ⇒ Simbol
J
JeenniissKKeerreellaassiiaannAAnnttaarrEEnnttiittaass ((RReellaattiioonnsshhiipp))
1. one to one
2. many to one atau one to many 3. many to many
Kerelasian antar entitas:
⇒ Tidak dibatasi waktu ⇒ Tidak dibatasi geografis
⇒ Tergantung bussines rule, contoh
I
InnssttaannKKeerreellaassiiaannBBeerrggaannddaa
⇒ Jika terjadi dua kerelasian sekaligus di antara dua entitas
⇒ Contoh: Anggota meminjam Buku, Anggota mengembalikan Buku
K
KeerreellaassiiaannRReekkuurrssiiff
⇒ Jika sebuah entitas mempunyai kerelasian dengan entitas dirinya sendiri ⇒ Contoh: Mata_Kuliah mensyaratkan mata kuliah
K
KeerreellaassiiaannAAssoossiiaattiiff
⇒ Jika kerelasian di antara dua buah entitas mengandung beberapa informasi
⇒ Contoh: Pelanggan membeli Barang pada masa diskon akan diberikan diskon khusus Kerelasian Pelanggan membeli Barang mengandung informasi lain, yaitu
Tanggal_Beli dan Diskon yang kemudian diberi nama Pembeli.
M
MeennggggaammbbaarrEERR__DD
1. Identifikasikan setiap entitas yang terlibat 2. Identifikasikan setiap atribut pada setiap entitas
3. Identifikasikan setiap kerelasian berikut jenisnya yang terjadi di antara entitas 4. Gambarkan simbol entitas, atribut, dan kerelasian antar entitas sedemikian
sehingga dapat digambarkan dengan jelas / tidak saling bertabrakan 5. Cek ER_D yang terbentuk, dalam hal:
a. Kelengkapan entitas b. Kelengkapan atribut
c. Kelengkapan kerelasian antar entitas d. Jenis kerelasian antar entitas Jika kompleks, maka:
1. Cara 1:
o Gambarkan ER_D yang hanya memuat entitas dan kerelasian antar entitas saja.
o Rincian atribut ditampilkan secara terpisah, secara naratif atau tabel 2. Cara 2:
o Gambarkan ER_D secara terpisah-pisah bagian demi bagian 3. Cara 3:
o Gabungkan cara 1 dan cara 2 sekaligus
Keuntungan ER_D:
1. Memudahkan perancang dalam menganalisis sistem 2. Memudahkan perancang saat merancang basis data
3. Rancangan basis data yang didasarkan pada ER_D umumnya telah optimal 4. Penggunaan simbol grafis lebih mudah dipahami pemakai
Kelemahan ER_D:
1. Kebutuhan media yang sangat luas 2. Seringkali ER_D tampil sangat ruwet
1.2. CONTOH ER_M C
CoonnttoohhEERR__DD
Entitas yang berhubungan Entitas 1 Entitas 2
Nama
Kerelasian Kerelasian Jenis Representasi
Mahasiswa Mata_Kuliah mengikuti n-ke-n File KRS:
Kode_Angkatan, Kode_Jenjang_Studi, Kode_Program_Studi, Nomor, Kode_Mata_Kuliah, Tahun_Semester Mahasiswa mengikuti Mata_Kuliah
Nilai memperoleh 1-ke-1 File KHS:
Kode_Angkatan, Kode_Jenjang_Studi, Kode_Program_Studi, Nomor,
Kode_Mata_Kuliah, Tahun_Semester, Nilai Dosen Mata_Kuliah mengajar 1-ke-n File Dosen_Mengajar:
NIK, Kode_Mata_Kuliah, Tahun_Semester, Status
Dosen mengajar Mata_Kuliah
Ruang menggunakan 1-ke-n File Jadwal:
Kode_Mata_Kuliah, Kode_Ruang, Tahun_semester, Kode_Waktu Mahasiswa Angkatan mempunyai n-ke-1 Penghubung:
Kode_Angkatan dalam entitas Mahasiswa Mahasiswa Program_Studi memilih n-ke-1 Penghubung:
Kode_Program_Studi dalam entitas Mahasiswa Mahasiswa Jenjang_Studi memilih n-ke-1 Penghubung:
Kode_Jenjang_Studi dalam entitas Mahasiswa Mahasiswa Agama menganut Penghubung:
Kode_Agama dalam entitas Mahasiswa Mahasiswa Dosen_Wali mempunyai n-ke-1 File Dosen_wali:
Kode_Angkatan, Kode_Jenjang_Studi, Kode_Program_Studi, Nomor, NIK
Mahasiswa Wali_Mahasiswa mempunyai 1-ke-1 File Wali_Mahassiwa:
Kode_Angkatan, Kode_Jenjang_Studi, Kode_Program_Studi, Nomor, Nama_Wali, Alamat_Asal, Kode_Pekerjaan,
Kode_Kabupaten Jurusan Program_Studi membawahi 1-ke-n Penghubung:
Kode_Jurusan dalam entitas Program_Studi Fakultas Jurusan membawahi 1-ke-n Penghubung:
Kode_Fakultas dalam entitas Jurusan Dosen Golongan mempunyai n-ke-1 Penghubung:
Kode_Golongan dalam entitas Dosen Dosen Agama menganut n-ke-1 Penghubung:
Kode_Agama dalam entitas Dosen Wali Pekerjaan mempunyai n-ke-1 Penghubung:
Kode_Pekerjaan dalam entitas Wali_Mahasiswa Wali Kabupaten menempati n-ke-1 Penghubung:
Kode_Kabupaten dalam entitas Wali_Mahasiswa
Kabupaten Propinsi menempati n-ke-1 Penghubung:
Langkah selanjutnya: o Konversi ER_M ke LRS o Pengujian Normalisasi Menganut Menempati Mata_Kuliah Mengikuti Dosen Golongan Mempunyai Mengajar Mahasiswa Angkatan Jenjang Studi Program Studi Jurusan Fakultas Mempunyai Mempunyai Mempunyai Membawahi Membawahi Wali_Mahasiswa Pekerjaan Mempunyai Mempunyai Agama Menganut Menempati Kabupaten Propinsi Menempati Nilai Memperoleh Ruang Menempati