7/11/2011
Database Development (1) Conceptual Modeling Logical Design
Model Data
Hierarkis Jaringan Relasional
1
7/11/2011
Model Hierarkis
Node mempunyai hubungan secara hirarki satu dengan lainnya lainnya.. Setiap node induk (parent parent)) memiliki satu atau beberapa node anak (child child). hild)). hild ) Setiap S ti p child hild hanya h memiliki iliki satu t parent pparent.t. Dikenal pula sebagai model pohon Dr. Hendrik
Ir. Rahmat
Str kt r Data Struktur D t
Rudi
Asti
M d Numerik Metode N ik
Dina
Dina
Edi
S i ik II Statistika
Ita
Edi
Model Jaringan
Node menggambarkan data, setiap node dianggap setara (tidak mempunyai jenjang). jenjang). Setiap p node bisa memiliki hubungan g dengan g satu node atau lebih. lebih. Disebut juga model CODASYL (Conference on Data Systems Languages) Dr. Hendrik
Ir. Rahmat
Str kt r Data Struktur D t
Rudi
Asti
M d Numerik Metode N ik
Dina
Edi
S i ik II Statistika
Ita
2
7/11/2011
Model Relasional
Merupakan model data yang paling populer saat ini karena kemudahan dalam penerapan dan kemampuannya dalam mengakomodasi berbagai kebutuhan pengelolaan basisdata yang ada di dunia nyata Model berupa tabel berdimensi dua Memakai kunci tamu (foreign key key)) sbg penghubung dgn tabel lain NPM
NAMA_MHS
KODE_MK
NAMA_MK
55
Ashadi
DB001
Pengantar Basis Data
56
Rina
DB001
Basis Data Lanjut
57
Budi
PI001
Teknik Multimedia
NPM
KODE_MK
NILAI
55
DB001
A
55
PI001
B
56
DB001
B
57
DB001
A
Istilah Dasar Database Akademik Mahasiswa Atribut atau Field
Dosen
Domain Nilai (A, B, C, D, E)
Nilai Matakuliah NO_MHS Tabel Tuple atau Record
55
KODE_MK DB001
NILAI A
55
PI001
B
56
DB001
B
57
DB001
A
57
DB001
A
3
7/11/2011
Database Development Phases (Centralized Database) Data Requirements
Conceptual Data Modeling ERD Logical Database Design Relational DB Schema Physical Database Design
ERD Steps
Identifying Entity Type Determining Primary Keys & Other Attributes Adding Relationship Determining Cardinality
4
7/11/2011
Entitas Entitas (entity) adalah sebuah objek yang keberadaannya dapat dibedakan terhadap objek lain
Entitas dapat berupa orang orang,, benda benda,, tempat tempat,, kejadian kejadian,, konsep Contoh : • Orang : MAHASISWA, DOSEN, PEMASOK • Benda : MOBIL, MESIN, RUANGAN • Organisasi : NEGARA, DESA • Kejadian K j di : PENJUALAN, PENJUALAN REGISTRASI • Konsep : REKENING
Latihan Tentukan entitas apa saja yang terlibat dalam sistem pengelolaan :
Perpustakaan : layanan peminjaman & pengembalian buku.. Peminjam harus menjadi anggota perpustakaan buku perpustakaan..
Presensi karyawan : presensi kedatangan & kepulangan kepulangan..
Rental Mobil : layanan sewa mobil tanpa supir/ supir/dengan supir.. Mobil disewakan untuk umum supir umum..
5
7/11/2011
Atribut
Atribut adalah sifat atau karakteristik yang melekat dalam sebuah entitas Contoh : MAHASISWA = ((NPM NPM,, NamaMhs NamaMhs,, AlamatMhs AlamatMhs)) MOBIL = (NoMobil (NoMobil,, NamaMobil NamaMobil,, Cc)
Primary Key adalah atribut kunci yang berisi nilai unik
Relasi
Jenis relasi antara dua entitas : a) b) c) d)
One to One One to Many Many to One Many to Many
(c)
(d)
6
7/11/2011
Notasi ERD
Chen Notation (Peter Chen) Id
Alamat
PELANGGAN
Nobon
Nama
(0:N)
Memiliki transaksi
(1:1)
Tanggal
Jumlah
PENJUALAN
Crow’s Foot Notation (James Martin) pelanggan l Id Nama
penjualan Memiliki transaksi
Alamat
NoBon Tanggal Jumlah
Simbol Kardinalitas
7
7/11/2011
Contoh 1
Buatlah ERD yang menggambarkan hubungan antara DOSEN dengan PRODI (Program Studi). Studi). Setiap Prodi memiliki Ketua Prodi (berasal dari Dosen Dosen), ), dan seorang Dosen hanya bisa menjadi Ketua Prodi P di untukk satu Prodi P di saja. saja j .
Contoh 2
Buatlah ERD yang menggambarkan hubungan antara MAHASISWA dengan DOSEN (dalam (dalam konteks perwalian). perwalian). Sebagian dosen ditunjuk menjadi dosen wali.. Setiap dosen wali membina banyak wali mahasiswa mahasiswa, h i , tetapii setiap i mahasiswa h i h hanya memiliki seorang dosen wali wali..
8
7/11/2011
Latihan 1 Buatlah ERD untuk sistem pengelolaan perpustakaan k Æ layanan l peminjaman i j & pengembalian buku. buku. Peminjam harus menjadi anggota perpustakaan perpustakaan..
Latihan 2 Buatlah ERD untuk sistem pengelolaan presensi k karyawan Æ presensii kedatangan k d & kepulangan k l (tidak ada shift)
9
7/11/2011
Latihan 3 Buatlah ERD untuk sistem pengelolaan rental mobil bil Æ layanan l sewa mobil bil tanpa supir/ supir i /dengan d supir.. Untuk setiap transaksi rental hanya bisa supir menyewa satu mobil saja saja..
Latihan 4 Buatlah ERD untuk sistem pengelolaan warnet Æ layanan l rentall iinternet ((plus l print, i scan, burn b cd,, dll) cd dll) untuk member/non member/non--member.
10
7/11/2011
Varian Atribut
Atribut Komposit Atribut Bernilai Banyak Atribut Turunan
Atribut Komposit
Atribut yang dapat dipecah menjadi beberapa komponen Contoh : PELANGGAN (Kode (Kode, Kode, Nama Nama,, Alamat Alamat)) Kode
Nama
Alamat
1001
Ahmad Hidayat
Jl. Dago 96 Bandung 40132
Ø PELANGGAN (Kode (Kode,, Nama Nama,, Jalan Jalan,, Kota, KodePos) KodePos)
K d Kode
N Nama
J l Jalan
K t Kota
K d P KodePos
1001
Ahmad Hidayat
Jl. Dago 96
Bandung
40132
ENTITAS dibangun langsung dari kumpulan atribut yang telah diuraikan (dipecah)
11
7/11/2011
Atribut Bernilai Banyak
Atribut yang memiliki kemungkinan nilai lebih dari satu Contoh : PEMASOK ((Kode Kode,, Nama Nama,, Telepon Telepon) p )
Kode
Nama
Telepon
9001
Teddy Gunawan
022 2502121 081 2345678 088 7654321
Atribut bernilai banyak harus ditransformasikan menjadi sebuah entitas tit baru b PEMASOK ((Kode Kode,, Nama Nama))
TLP_PEMASOK ((Kode Kode,, Telepon Telepon))
Kode
Nama
Kode
Telepon
9001
Teddy Gunawan
9001
022 2502121
9001
081 2345678
9001
088 7654321
Atribut Turunan
Atribut yang bisa dihitung / diproses dari nilai atribut lainnya Contoh : Mahasiswa (NPM, Nama, Nama, TgLahir TgLahir,, Usia Usia)) NPM
Nama
TgLahir
Usia
2000110011
Rahmat Sanjaya
10 November 1990
19
Usia merupakan atribut turunan, turunan, karena bisa dihitung dari selisih tanggal l hi & tanggal lahir t l hari h i ini iini.i.
Semua atribut turunan tidak perlu disertakan dalam entitas.
12
7/11/2011
Varian Relationship
Unary relationship Binary relationship Tertiary relationship
Unary Relationship
Relasi yang terjadi pada entitas itu sendiri Membawahi Karyawan
TersusunAtas SukuCadang
IdKyw
IdParts
Nama
Deskripsi
Alamat
Harga
13
7/11/2011
Binary Relationship
Relasi yang terjadi pada dua entitas Supplier
Bahan Baku
IdSuplier
mensuplai
Nama
IdBahan NamaBahan
Alamat
Tertiary Relationship
Relasi yang terjadi pada tiga entitas Pemasok IdPemasok
Memasok TglKirim
NamaPerus
Gudang NoGudang Lokasi
Barang IdBarang NamaBarang Harga
14
7/11/2011
Aturan Transformasi ERD Menjadi Skema Database 1.
Setiap ENTITAS akan menjadi sebuah TABEL dalam database
2.
3.
4.
Primaryy Keyy (PK) ( ) entitas akan menjadi j PK tabel Semua ATRIBUT entitas akan menjadi atribut tabel (=FIELD)
RELASI 11--1 (one (one--to to--one one)) akan direpresentasikan dalam bentuk penambahan atribut Foreign Key (FK) ke masing masing--masing tabel tabel.. Atribut FK berasal dari atribut Primary Key (PK) di tabel pasangannya.. pasangannya RELASI 11--N (one (one one--to to--many many)) akan direpresentasikan dalam bentuk penambahan atribut FK ke tabel anak (child table). table). Atribut FK di tabel anak berasal dari atribut PK di tabel induk (parent table). table). RELASI M M--N (many (many--to to--many many)) akan diwujudkan dalam bentuk satu buah TABEL BARU yang terpisah dari dua entitas yang dihubungkannya.. dihubungkannya
One--toOne to-one Relationship ERD Dosen IdDosen
Prodi Menjadi Ketua Prodi
NamaDosen
KodeProdi NamaProdi
… SKEMA DATABASE Dosen
Prodi
IdDosen
KodeProdi
NamaDosen
NamaProdi
…
IdDosen *
KodeProdi *) IdDosen Ketua Prodi
15
7/11/2011
One--toOne to-many Relationship ERD Dosen IdDosen
Mahasiswa Menjadi dosen wali
NPM
NamaDosen
NamaMhs
…
… SKEMA DATABASE Dosen
M h i Mahasiswa
IdDosen
NPM
NamaDosen
NamaMhs
…
… IdDosenWali
Many--toMany to-many Relationship ERD Penjualan NoFaktur
Barang Terdiri atas
TglPenjualan
KdBarang NamaBarang Harga Stok
SKEMA DATABASE
Penjualan
DetilPenjualan
NoFaktur
NoFaktur
TglPenjualan
KdBarang JmlUnit
B Barang KdBarang NamaBarang Harga Stok
16
7/11/2011
Contoh 3
Dago Movie Rental menyewakan vcd & dvd film. Setiap penyewa p y harus menjadi j anggota gg terlebih dahulu. dahulu. Untuk transaksi peminjaman peminjaman,, anggota boleh meminjam maksimal 5 buah film selama seminggu. seminggu. Jika pengembalian melewati waktu seminggu, seminggu, maka anggota akan dikenakan denda Rp.1000 per hari keterlambatan untuk setiap judul yang dipinjam.. dipinjam Buatlah ERD & skema database relasional untuk pengelolaan data rental di atas atas..
Latihan Buatlah pemodelan data berupa ERD + SKEMA DATABASE untuk sistem sbb : 1.
Penjualan pada sebuah mini market • Tiap transaksi mencatat identitas kasir yang melayani.
2.
Penjualan (tunai) pada sebuah agen grosir • Agen hanya melayani pelanggan tetap. • Pelanggan harus memesan barang via fax terlebih dahulu. • Setiap order direalisasikan dengan sekali atau beberapa kali pengiriman barang. • Data order dicatat terpisah dari data realisasi pengiriman barangnya.
17