Pemodelan Database

advertisement
Pemodelan Database
Yessy Asri, ST., MMSI
Model Data


Menyatakan hubungan antardata dalam
database
Ada tiga macam model data dasar



Hierarkis
Jaringan
Relasional
Model Hierarkis

Dikenal pula sebagai model pohon
Dosen
Siti Nurbaya
Pengantar
Basis Data
Rudi
Asti
Dosen
Ashadi
Pemrograman
C
Dina
Dina
Edi
Matematika I
Ita
Edi
Model Jaringan


Disebut juga model CODASYL
Setiap anak bisa memiliki lebih dari satu orangtua
Dosen
Siti Nurbaya
Pengantar
Basis Data
Rudi
Asti
Dosen
Ashadi
Pemrograman
C
Dina
Edi
Matematika I
Ita
Model Relasional



Merupakan model data
yang paling populer
saat ini
Menggunakan model
berupa tabel
berdimensi dua (yang
disebut relasi atau
tabel)
Memakai kunci tamu
(foreign key) sebagai
penghubung dengan
tabel lain
Nama Dosen
Kelas
Mahasiswa
Siti Nurbaya
Pengantar
Basis Data
Rudi
Siti Nurbaya
Pengantar
Basis Data
Asti
Siti Nurbaya
Pengantar
Basis Data
Dina
Siti Nurbaya
Pemrograma
nC
Dina
Siti Nurbaya
Pemrograma
nC
Edi
Ashadi
Matematika I
Ita
Ashadi
Matematika I
Edi
Konsep Dasar Basis Data

Field



Field merupakan implementasi dari suatu atribut data.
Field merupakan unit terkecil dari data yang berarti(meaningful
data) yang disimpan dalam suatu file atau basis data.
Record



Field-field tersebut diorganisasikan dalam record-record
Record merupakan koleksi dari field-field yang disusun dalam
format yang telah ditentukan.
Selama desain sistem, record akan diklasifikasikan sebagai
fixed-length record atau variable-length record.
Konsep Dasar Basis Data(1)

Selama desain sistem, record akan diklasifikasikan sebagai
fixed-length record atau variable-length record.
•
•

Fixed-length record: tiap instance record punya field, jumlah field, dan
ukuran logik yang sama
Variable-length record : mengijinkan record-record yang berbeda
dalam file yang sama memiliki panjang yang berbeda.
File dan Tabel
 Record-record yang serupa diorganisasikan dalam grup-grup
yang disebut file. Jadi file merupakan kumpulan semua kejadian
dari struktur record yang diberikan.
 Tabel merupakan ekivalen basis data relasional dari sebuah file.
 Beberapa tipe File meliputi :
Operasi dasar pada Database




Menambah data
Membaca data
Mengubah data
Menghapus data
Kunci(key)


Kunci merupakan elemen record yang dipakai untuk menemukan
record tersebut pada waktu akses atau bisa digunakan untuk
identifikasi tiap record.
Jenis-jenis kunci :
 Superkey
 Candidat key
 Primary key
 Alternate key
 Foreign key
 External key
Kunci(key) (1)


Superkey : kumpulan atribut dari suatu tabel yang dapat digunakan
untuk mengidentifikasi entity atau record dari tabel tersebut secara unik
Candidate key : superkey dengan jumlah atribut minimal. Candidat key
ini tidak boleh berisi atribut dari tabel yang lain
Candidat key
ID_cus
Name
No.of Pay
Amount
112233
Tim
890
9000
112231
Gabry
891
8000
112241
Holy
895
10000
Kunci(key) (2)

Primary key :Salah satu atrribut dari candidat key dapat dipilih
menjadi primary key dengan 3 kriteria sbb :





Key tersebut lebih natural untuk dijadikan acuan
Key tersebut lebih sederhana
Key tersebut cukup uniqe
Alternate key :Setiap atribut dari candidate key yang tidak terpilih
sebagai primary key akan dinamakan alternate key. Pada contoh
sebelumnya bila untuk primary key dipilih ID_Cus maka alternate
key nya adalah No.of Pay
Foreign key : merupakan sembarang atribut yang menunjuk
kepada primary key pada tabel lain.

Akan terjadi pada suatu relasi yang memiliki kardinalitas one to many
atau many to many
Kunci(key) (3)

Foreign key (cont’)
KODE
MK
SKS
KDDosen
TEL 100
Fisika
3
D-101
TEL 200
Isyarat
2
D-109
TEL 210
T.Kendali
2
D-101
Primary key
Foreign key
KD-Dosen Nama_Dosen
D-100
Badu,S.T
D-101
Ir.Thomas
D-109
Harry,S.T,M.T
Primary key
Tahapan Perancangan
Database

Perancangan secara konseptual




Perancangan secara logis


Diagram konteks
DFD
Model ER
Translasi model ER ke Model Relasional
Perancangan secara fisik

Penciptaan database, relasi, dan hal-hal terkait ke
dalam bentuk fisik
Diagram Konteks


Merupakan gambaran kasar aliran informasi
dan data yang akan dilakukan oleh system
database yang akan dirancang
Diagram ini hanya menjelaskan secara
umum gambaran aliran konteks dari
rancangan system yang akan dibuat.
Contoh DFD Konteks
Bagian
Penjualan
Laporan
penjualan
Manajer
Keuangan
Daftar rencana
pembayaran
Persetujuan
Transfer
Sistem
Pembayaran
Royalti
Bank
Bukti transfer
Surat
pemberitahuan
Pengarang
DFD (Data Flow Diagram)

DFD merupakan detail rancangan dari
diagram konteks yang sudah dibuat yang
sudah memuat rancangan table database
yang akan diimplementasikan pada database
yang akan dibuat
Contoh DFD
Laporan penjualan
1
Mencatat
buku terjual
Data buku terjual
Catatan royalti
Jadwal pembayaran
Royalti terbayar
Waktu pembayaran
2
Membuat
Laporan royalti
Jatuh tempo
Royalti
belum
terbayar
Royalti
belum
terbayar
Ringkasan
royalti
Transfer
Data
pengarang
Pengarang
Daftar rencana
pembayaran
Persetujuan
3
Memproses
pembayaran
Nomor
rekening
Rekening bank
Pembayaran
Bukti transfer
Surat pemberitahuan
Entity Relationship Diagram(ERD)



ERD merupakan model jaringan yang menggunakan susunan
data yang disimpan dalam sistem secara abstrak
ERD menekankan pada struktur dan relationship data,
berbeda dengan DFD(Data Flow Diagram) yang merupakan
model jaringan fungsi yang akan dilaksanakan sistem
Biasanya digunakan oleh profesional sistem untuk
berkomunikasi dengan pemakai eksekutif tingkat tinggi dalam
perusahaan yang tidak tertarik pada pelaksanaan operasi
sistem sehari-hari, namun lebih kepada :
 Data apa saja yang diperlukan untuk bisnis mereka?
 Bagaimana data tersebut berelasi dengan data lainnya?
 Siapa saja yang diperbolehkan mengakses data tsb?
Simbol dalam Diagram E-R
ENTITAS
Kardinalitas:
Selalu hanya satu
Hubungan
Satu atau banyak
Nol atau satu
Atribut
Nol, satu, atau banyak
Garis bawah: Kunci atau
pengenal (identifier)
Contoh ERD
PELANGGAN
PEMASOK
Mengirim
Mengirim
Memasok
PESANAN
KIRIMAN
Memasok
BARANG
Berisi
Digunakan_
pada
PRODUK
Latihan
Rancanglah diagram E-R dari kasus aplikasi database
sederhanauntuk sistem informasi akademis suatu universitas.
Dengan ketentuan sebagai berikut :
Entities yang dimuat adalah :
 mahasiswa: menyimpan semua informasi pribadi mengenai
semua mahasiswa
 dosen: menyimpan semua informasi pribadi mengenai semua
dosen
 mata_kuliah: menyimpan semua informasi mengenai semua
mata kuliah yang ditawarkan
 ruang: menyimpan semua informasi mengenai ruang kelas yang
digunakan

Normalisasi


Normalisasi merupakan teknik analisis data yang
mengorganisasikan atribut-atribut data dengan cara
mengelompokkan sehingga terbentuk entitas yang nonredundant, stabil, dan fleksible
Normalisasi dilakukan sebagai uji coba pada suatu relasi secara
berkelanjutan untuk menentukan apakah relasi itu sudah baik,
yaitu dapat dilakukan proses insert,update,delete, dan modifikasi
pada satu atau beberapa atribut tanpa mempengaruhi integritas
data dalam relasi tersebut.
Normalisasi: 1NF, 2NF, 3NF


Bentuk Normal ke Satu(1NF)

Syarat :
1.
Tidak ada set atribut yang berulang atau bernilai ganda.
2.
Telah ditentukannya primary key untuk tabel atau relasi.
3.
Tiap atribut hanya memiliki satu pengertian.

Tiap atribut yang dapat memiiki banyak nilai sebenarnya
menggambarkan entitas atau relasi yang terpisah.
Bentuk Normal ke Dua(2NF)

Syarat :
1.
Bentuk data telah memenuhi kriteria bentuk normal ke satu.
2.
Atribut bukan kunci(non-key attribute) haruslah memiliki
ketergantungan fungsional sepenuhnya pada primary key.
Normalisasi: 1NF, 2NF, 3NF (1)

Bentuk Normal ke Tiga(3NF)
 Syarat :
1. Bentuk data telah memenuhi kriteria bentuk normal ke dua.
2. Atribut bukan kunci(non-key attribute) tidak boleh memiliki
ketergantungan fungsional terhadap atribut bukan kunci lainnya.
Seluruh atribut bukan kunci pada suatu relasi hanya memiliki
ketergantungan fungsional terhadap primary key di relasi itu saja.
Contoh Normalisasi :
Diberikan tabel Mahasiswa di bawah ini, akan dilakukan
normalisasi sampai bentuk normal ke tiga
Perhatikan bahwa tabel di atas sudah dalam bentuk
normal ke Satu(1NF)
Contoh(cont’)
Bentuk Normal ke dua(2NF) :
Belum memenuhi kriteria 3NF,
Karena atribut non-key Nilai dan
Bobot masih memiliki ketergantungan fungsional.
Contoh(cont’)
Bentuk Normal ke tiga(3NF) :
Download