Analisa
Perancangan
Sistem
Graphic Tools-2
ER-Diagram
LRS
Graphic Tools – 2
Perancangan
Basis Data
Definisi Basis Data
Database adalah sekumpulan data
store yang tersimpan dalam
magnetik disk, optical disk atau
mendia penyimpanan sekunder
lainnya.
Database
adalah
sekumpulan
program-program aplikasi umum
yang
bersifat
“batch”
yang
Database Management
System
Database yang disimpan dapat diakses
dengan
menggunakan
DataBase
management System.
Tujuan
DBMS
adalah
untuk
DBMS Lanj. 1
Pengelolaannya meliputi:
a) Pendefinisian
struktur
penyimpanan
b) Penyediaan mekanisme untuk
manipulasi informasi
Atribut
Merupakan sifat atau karakteristik suatu
entitas yang myediakan penjelasan detail
tentang entitas tersebut.
Contoh :
MAHASISWA: NIM, Nama, Alamat, Kota,
Kodepos
MOBIL : No_mobil, Warna , Jenis, CC
DOSEN : NID, Nama, Keahlian, Mata
Kuliah, Status
BUKU:
Kode_buku,
Nama_buku,
TUPLE / RECORD
Terdiri dari kumpulan atribut dan atribut tersebut
saling berkaitan dengan menginformasikan
tentang suatu entitas atau relasi secara lengkap
Nim Nama Alamat
000234 Ika Jalan raya 000653 Ryan Jalan sempit 000786 Okta Jalan setapak
Entity Relationship Diagram
(ER-Diagram)
Adalah
suatu
model
jaringan
yang
menggunakan
susunan
data
yang
disimpan dalam sistem secara abstrak
ER-Diagram tidak menyatakan bagaimana
memanfaatkan data, membuat data,
mengubah data dan menghapus data
Elemen ER_Diagram -1
Entity
Adalah sesuatu apa saja yang ada di dalam
sistem, nyata maupun abstrak dimana data
tersimpan atau dimana terdapat data.
Entitas diberi nama kata benda
orang,
benda, lokasi dan kejadian (ada unsur
waktu didalamnya)
Elemen ER_Diagram -2
Relationship
Adalah hubungan yang terjadi antara entitas. Diberi
nama dengan kata kerja dasar.
Himpunan relasi yaitu kumpulan semua relasi
diantara
entitas-entitas
yang
terdapat
dalam
himpunan entitas.
Elemen ER_Diagram -3
Atribut
Adalah
sifat
atau
karakteristik
yang
menjelaskan entitas dan relationship. Nilai
atribut:
1) Identifier (key)
untuk menentukan entity
secara unik
2) Descriptor (non atribut key)
untuk
menspesifikasikan karakteristik dari entity
yang tidak unik
Elemen ER_Diagram -4
•
Relationship Degree
jumlah entitas
yang
berpartisipasi
dalam
satu
relationship
•
Kardinalitas
(Cardinality)
Derajat Relationship -1
•
Unary Relationship
relasi yang terjadi
berasal dari entity yang sama
Pegawai
Menika
h
1
Derajat Relationship -2
•
Binary Relationship
relasi yang terjadi antara
dua entity yang berbeda
Mahasisw
a
Ambil
Kuliah
M N
Pegawai
Beker
ja
Departem
en
1 M
Contoh 1:
Derajat Relationship -3
•
Ternary Relationship
relasi yang terjadi dari
tiga tipe entitas secara sepihak
Mahasis
wa
KRS
Dose
n
Mata
Kuliah
Pabrik
cata
t
Gudan
g
Barang
Kardinalitas
•
One To One
dinyatakan dengan satu kejadian
pada entitas pertama, hanya mempunyai satu
hubungan dengan satu kejadian pada entitas yang
kedua dan sebaliknya
•
One to Many
atau
Many to One
satu kejadian
pada entitas yang pertama dapat mempunyai
banyak hubungan dengan kejadian pada entitas
yang kedua.
•
Many to Many
kejadian pada sebuah entitas
Notasi ER-diagram
•
Menyatakan
himpunan entitas
•
Menyatakan atribut
(atribut yang
bernilai key digaris
bawahi)
•
Menyatakan
himpunan relasi /
relasi saja
•
Garis
penghubung relasi
dan entitas
E
a
R
Kardinalitas relasi dapat dinyatakan dengan
banyaknya garis cabang atau dengan
Tahapan Pembuatan
ER_Diagram
•
Mengidentifikasi den menetapkan seluruh entitas
yang akan terlibat
•
Menentukan atribut-atribut key (primary key) dari
masing-masing entitas
Karyawan Pekerjaan Mandor
Karyawan Pekerjaan Mandor NIK Kode_Pk
rj
•
Mengidentifikasi dan menetapkan seluruh derajat/
kardinalitas relasi diantara entitas- entitas yang
ada beserta foreign key
Karyawan
Pekerjaan
Mandor
Melak
ukan Miliki
NIK
Kode_Pk rj NIK
NIM
Kode_Pk
rj Kode_Pkrj
•
Melengkapi entitas dan relasi dengan atribut
deskriptif non key
Karyawan Pekerjaan
Mandor Melak
ukan
Awasi
NIK Nm_Pkrj
Nm_Mnd
Kamus Data
•
Karyawan = {NIK, Nm_krywn, Alamat, Tgl_lhr,
Gol }
•
Pekerjaan = {Kd_Pkrj, Nm_Pkrj}
Transformasi ERD ke LRS
(Logical Record Structure)
Aturan dalam melakukan transformasi :
a.
Setiap entity akan diubah kebentuk
sebuah kotak dengan nama entity
berada diluar kotak dan atribut berada
didalam kotak
Transformasi-1a (One to
h @NO_SURAT_NIKAH
Transformasi-1b (One to
h @NO_SURAT_NIK
AH
Transformasi ERD One to One ke LRS
SUAMI
Transformasi-2 (One to
A @KODE_PROYEK
TGL_MULAI BIAYA
Transformasi ERD One to Many ke LRS
PEGAW AI
Transformasi-3 (Many to
Many)
@KODE_PELANGGAN
BELI @@[@KODE_PELANG
GAN]
Normalisasi
•
Normalisasi
adalah suatu proses memperbaiki /
membangun dengan model data relasional dan
secara umum lebih tepat dikoneksikan dengan
model data logika
•
Normalisasi
adalah proses pengelompokkan data
kedalam bentuk tabel/relasi untuk menyatakan
entitas dan hubungan mereka sehingga terwujud
satu bentuk database yang mudah untuk
dimodifikasi
•
Normalisasi
adalah proses untuk mengidentifikasi
Macam-macam
penyimpangan
•
Insertion Anomaly
merupakan error
atau kesalahan yang terjadi sebagai
akibat dari operasi menyisipkan tuple/
record pada sebuah relasi
•
Delete Anomaly
merupakan error atau
kesalahan
sebagai
akibat
operasi
pengahapusan terhadap record
•
Update Anomaly
merupakan error atau
Functional Dependency
Menggambarkan
hubungan
antara
atribut dengan relasi.
Jika A dan B adalah atribut dari relasi R.
B dikatakan bergantung functional
terhadap A (B
A), jika masing-masing
nilai dari A dalam relasi R berpasangan
secara tepat dengan satu nilai dari B
dalam relasi R
A B
NIK Nama Alamat Jabatan Gaji Kd_Cb
g Almt_Cbg No_telp SL2
1 John White Jl. Nanas Manager 30000 B5 Jl. Zeta 765825 SG3
7 Ann Beech Jl. Sawo Analist 12000 B3 Jl. Beta 876423 SG1
4 David Ford Jl. Apel Deputy 18000 B3 Jl. Beta 785345 SA9 Mary Howe Jl. Salak Assistan
t 9000 B7 Jl. Alpha 735672 SG5 Susan
Brand Jl. Melon Manager 24000 B3 Jl. Beta 834476 SL4
1 Julie Lee Jl. Jeruk Assistant 9000 B5 Jl. Zeta 836459
NIK Jabatan
Jabatan functional dependency
Terhadap NIK
(a)Jabatan memiliki ketergantungan fungsional Terhadap NIK (b)NIK tidak memilik ketergantungan fungsional terhadap
jabatan
NIK Jabatan
NIK tidak functional dependency
Terhadap Jabatan
•
Kardinalitas relasi antara NIK dan jabatan adalah
1:1. Kardinalitas relasi antara jabatan dan NIK
adalah 1:M. NIK adalah determinan dari KF
Identifikasi relasi Staff_Cabang:
NIK Nama
NIK Alamat
NIK Jabatan
NIK Gaji
NIK Kd_Cbg
NIK Almt_Cbg
NIK No_Telp
Kd_Cbg Almt_Cbg
Kd_Cbang No_Telp
Almt_Cbg Kd_Cbg
No_Telp Kd_Cbg
NIK Nama, Alamat,
Jabatan, Gaji, Kd_Cbg,
Almt_Cbg, No_telp
Bentuk Tidak Normal
Data dikumpulkan apa adanya sesuai dengan saat menginput.
No.Cu
st Nama PropNo_ erty
Alamat_p
roperty Tgl_pinjam Tgl_selesai Biaya No_Pemilik Nama_pe milik CR76 Badi PG4
PG1
CR56 Danu PG4
PG1
Tabel pelanggan_biaya memiliki multivalue
karena terdapat 2 nilai untuk No_property
yaitu PG4 dan PG16 untuk nama Pelanggan
(Badi)
Bentuk Normal Satu (INF)
Tahap penghilangan beberapa group elemen yang
berulang agar menjadi satu harga tunggal yang
berinteraksi diantara setiap baris pada tabel.
Syarat 1NF :
1.
Setiap data dibentuk kedalam flat file, data
dibentuk satu record satu nilai
2.
Tidak ada set atribut yang berulang atau bernilai
ganda
3.
Telah ditentukan primary key-nya
Dari tabel Pelanggan_Biaya dapat diidentifikasi kan Primary
key : No_Pelanggan, No_Property
No_Pe langg
an
Nam
a opertyNo_Pr Alamat_property Tgl_pinjam Tgl_selesai Biaya No_Pemili k
Nama _pemi
lik CR76 Badi PG4 Jl. Mawar /
07 Jakarta 1-juli-93 31-Aug-95 350 CO40 Ewin CR76 Badi PG16 Jl. Hasan /
12 jakarta 1-Sep-95 1-Sep-96 450 CO93 Durki CR56 Danu PG4 Jl. Mawar /
07 Jakarta 1-Sep-92 10-Jun_93 350 CO40 Ewin CR56 Danu PG16 Jl. Hasan /
12 jakarta 10-Oct-93 1-Dec-94 450 CO93 Durki
Bentuk Normal kedua
(2NF)
Jika A dan B adalah atribut dari suatu relasi, B dikatakan
sepenuhnya memiliki KF terhadap A. Contoh pada KF :
NIK, Nama
Kd_Cabang
Masing-masing nilai dari NIK, Nama berelasi dengan
Kd_Cabang. Relasi ini tidak memiliki KF sepenuhnya,
karena Kd_Cabang masih memilik KF pada himpunan
bagian (NIK, Nama).Kd_cabang adalah Full Functional
dependency hanya pada NIK
Syarat 2NF:
1.
Bentuk data telah memenuhi kriteria bentuk normal
kesatu
KF relasi Pelanggan_biaya :
No_Pelanggan, No_Property Tgl_pinjam, Tgl_selesai No_Pelanggan Nama
Relasi Pelanggan_Biaya belum memenuhi 2NF. Perlu dibuat
relasi baru (3 tabel) yaitu
No_pelangg
an Nama CR76 Badi CR56 danu a) Relasi Pelanggan
No_pelangg
CR76 PG4 1-juli-93 31-Aug-95
CR76 PG16 1-Sep-95 1-Sep-96
CR56 PG4 1-Sep-92 10-Jun_93
CR56 PG16 10-Oct-93 1-Dec-94
No_Proper
ty Alamat_property Biaya No_Pemilik Nama_pemilik
PG4 Jl. Mawar / 07 Jakarta 350 CO40 Ewin PG16 Jl. Hasan / 12 jakarta 450 CO93 Durki
b) Relasi Biaya
c) Relasi
Bentuk Normal ketiga
(3NF)
Suatu kondisi dimana A, B, C adalah atribut dari suatu
relasi sehingga A B dan BC, maka AC ( C
memiliki KF terhadap A melalui B, dan harus
dipastikan bahwa A tidak memiliki KF terhadap B
atau C.
NIK Kd_Cabang dan Kd_Cabang Alamat_Cabang
NIK Alamat_Cabang
Syarat 3NF:
1.
Bentuk data telah memenuhi kriteria 2NF
2.
Atribut Non-key harus tidak memiliki
KF yang terjadi
•
Tabel Pelanggan
No_Pelanggan
Nama
•
Tabel Biaya
No_Pelanggan, No_Property
Tgl_Pinjam,
Tgl_selesai
•
Tabel property_pemilik
No_Property
Alamat_property, Biaya,
No_pemilik,
Nama_pemilik
No_pemilik
Nama_pemilik
Bila digambarkan ke dalam tabel menjadi
No_Proper ty
Alamat_property Biaya No_pemilik
PG4 Jl. Mawar / 07
Jakarta 350 CO40 PG16 Jl. Hasan / 12
jakarta 450 CO93
No_pemilik Nama_pemilik
CO40 Ewin
CO93 Durki
(c-1) relasi property_untuk_pemilik
Hasil akhir Normalisasi
No_pelangg an
Nama
CR76 Badi CR56 danu a) Relasi
Pelanggan No_pelangg
an No_Property Tgl_pinjam Tgl_selesai CR76 PG4 1-juli-93
31-Aug-95
CR76 PG16 1-Sep-95 1-Sep-96
CR56 PG4 1-Sep-92 10-Jun_93
CR56 PG16 10-Oct-93 1-Dec-94
b) Relasi Biaya
No_Proper
ty Alamat_property Biaya No_pemilik
PG4 Jl. Mawar / 07
Jakarta 350 CO40 PG16 Jl. Hasan / 12
jakarta 450 No_pemiliCO93
k
Nama_pemi lik
CO40 Ewin CO93 Durki
(c-1) relasi property_untuk_pemilik
Boyce Code Normal Form
(BCNF)
Jika dan hanya jika setiap determinan adalah
Candidate key. Dari relasi Pelanggan, Biaya,
property_untuk_pemilik
dan
Pemilik
sudah
memenuhi BCNF karena hanya memiliki satu
determinan candidate key.
Meski relasi memiliki 3 determinan yaitu:
No_Pelanggan, No_Property
Tgl_Pinjam, Tgl_selesai
No_Pelanggan, Tgl_Pinjam
No_Property, Tgl_selesai
No_Property, Tgl_Pinjam
No_Pelanggan, Tgl_selesai
Contoh Kasus Normalisasi
a. Tabel Mahasiswa uji normalisasi hingga 2NF
Nm_Mh s
NIM Kd_Makul
Jones 6152
1 MAT231, ECO220, HST221 Diana 6130
0
HST221
Tony 6142
5 ENG202, MAT231 Paula 6123
0
MAT231, ENG202
Tabel
mahasiswa
belum
memenuhi 1NF karena masih
memiliki multivalue atribut, maka
perlu dikonversikan hingga nilai
atribut bernilai tunggal, dengan
cara menyusun kembali baris data
pada Kd_makul
Nm_Mh
s NIM Kd_Makul Jones 6152
1 MAT231 Jones 6152
1 ECO220 Jones 6152
1
HST221
Diana 6130
0 HST221 Tony 6142
5 ENG202 Tony 6142
5
MAT231
Paula 6123
0 ENG202 Paula 6123
0 MAT231 Bentuk tidak normal
Nm_Mhs NIM Jones 61521 Jones 61521 Jones 61521 Diana 61300 Tony 61425 Tony 61425 Paula 61230 Paula 61230
NIM Kd_Makul 61521 MAT231 61521 ECO220 61521 HST221 61300 HST221 61425 ENG202 61425 MAT231 61230 ENG202 61230 MAT231
Karena atribut Nm_Mhs bergantung secara fungsional
pada NIM dan atribut Kd_Makul juga bergantung pada NIM
maka perlu dipecah menjaadi 2 tabel untuk memenuhi
2NF
b. Tabel Mahasiswa-C
uji normalisasi hingga 3NF
Nm_Mh s
Nim Tgl_lhr Kd_Maku l
Makul SK S
Nila i
Bobo t
Jones 61521 12/05/87 MAT231 Kalkulus 3 B 3 Jones 61521 12/05/87 ECO220
Ekonomi-1 3 A 4
Jones 61521 12/05/87 HST221 History 2 B 3 Diana 61300 14/28/88 HST221 History 2 A 4 Tony 61425 11/01/86 ENG202 Bhs.
Inggris 2 C 2 Tony 61425 11/01/86 MAT231 Kalkulus 3 B 3 Paula 61230 06/14/87 ENG202 Bhs.
Inggris
3 B 3
Paula 61230 06/14/87 MAT231 Kalkulus 2 C 2
Sudah memenuhi bentuk 1NF karena tidak terdapat atribut yang bernilai ganda
Dari Tabel Mahasiswa-C didapat KF:
Nm_Mh
s Nim Tgl_lhr Jones 61521 12/05/87 Diana 61300 14/28/88 Tony 61425 11/01/86 Paula 61230 06/14/87
Kd_Makul Makul SKS MAT231 Kalkulus 3 ECO220 Ekonomi-1 3 HST221 History 2 ENG202 Bhs.
Inggris 3
Nim Kd_Makul Nilai Bobot 61521 MAT231 B 3
61521 ECO220 A 4 61521 HST221 B 3 61300 HST221 A 4 61425 ENG202 C 2 61425 MAT231 B 3 61230 ENG202 B 3 61230 MAT231 C 2 Tabel Mahasiswa-C1
Tabel Mahasiswa-C2
Nim Kd_Makul Nilai 61521 MAT231 B
61521 ECO220 A 61521 HST221 B 61300 HST221 A 61425 ENG202 C 61425 MAT231 B 61230 ENG202 B 61230 MAT231 C Nilai Bobo
t
A 4
B 3
C 2
D 1
E 0
Tabel Mahasiswa-C3A
Tabel Mahasiswa-C3B
Transformasi data store DFD ke ERD. LRS dan Spesifikasi Basis Data
RANCANGAN SISFO PERSEDIAAN BARANG
TEKNISI
E
R
-D
ia
g
ra
T
ra
n
sf
or
m
as
i
E
R
D
k
e
L
R
Transformasi LRS ke Tabel
No_Re
f Bagian Kode_Brg Nama_Brg Jumlah Unit
PK PK
Tabel-1 Permintaan Tabel-2
Persediaan
Unit Statu s
No_ref Spare_pa rt
PK PK PK
Tabel-3
Pengambilan
Tabel-4
Work_Order
Tabel-5 AMM Spare_p
art Tgl Kode_Brg Nama_Brg Jumlah Lokasi Nama No_Work_order
PK PK PK