Kamis, 03 April 2014

PERANCANGAN BASIS DATA MENGGUNAKAN E-R DIAGRAM MANUAL



LAPORAN PRAKTIKUM SISTEM BASIS DATA
MODUL 3
PERANCANGAN BASIS DATA
MENGGUNAKAN E-R DIAGRAM MANUAL




Disusun oleh:
Nama          : Niski Robi Shahar
NIM            : L200120021
Kelas           : B



JURUSAN TEKNIK INFORMATIKA
FAKULTAS KOMUNIKASI DAN INFORMATIKA
UNIVERSITAS MUHAMMADIYAH SURAKARTA
2014



A.  Tujuan
1.        Mahasiswa mampu merancang basis data melalui tahap - tahap perancangannya.
2.        Mahasiswa mampu mewujudkan hasil perancangan basis data ke dalam diagram E-R secara manual

B.   Landasan Teori

Hubungan dapat dimodelkan secara :
1.        Kumpulan dari entity (entitas)
2.        Hubungan antar entity (entitas)

a. Entity Sets

Entity adalah suatu obyek yang dapat dikenali dari objek yang lain.
Contoh : seseorang yang khusus,perusahaan, peristiwa, tanaman dan lain – lain. Entity mempunyai atribut, contoh : seseorang mempunyai nama dan alamat. Kumpulan entity adalah suatu kumpulan entity dengan tipe yang sama yang berbagi properti yang sama pula. Contoh : kumpulan orang, perusahaan, tanaman, tempat hiburan dan lain – lain.

b.  Attributes

Entity ditampilkan oleh sekumpulan attribute, yang mana properti deskriptifnya dikuasai oleh seluruh anggota dalam kumpulan entity.
Tipe attribute:
1.  Simple (sederhana) dan composite (gabungan) attributes.
2. Single-valued (satu-fungsi) dan multi-valued (multi-fungsi) attributes.
Contoh : attribute multi-fungsi : nomor telephone.
3. Derived (asal) attributes : dapat diperhitungkan dari attribute lain.
Contoh : umur, tanggal kelahiran.

  c.  Relationship Sets

Relationship adalah kesesuaian antar beberapa entity. Relationship set adalah hubungan matematika antara entity n>2, tiap bagiannya diambil dari satuan entity {(e1, e2, … en) | e1 € E1, e2 € E2, …, en € En} dimana (e1, e2, …, en) adalah relationship. Attribute dapat merupakan property dari relationship set.

  d. Tingkatan Relationship Sets
Mengacu pada jumlah entity sets yang terlibat dalam relationship set. Relationship sets yang melibatkan dua entity sets adalah binary (atau tingkat dua).
Umumnya, hampir semua relationship sets dalam system database adalah binary.
Relationship sets mungkin melibatkan lebih dari dua entity sets.
Contoh : misal seorang pegawai bank bekerja (bertanggung jawab) dalam beberapa cabang, dengan tugas yang berlainan dalam setiap cabang yang berlainan pula. Maka di sini terdapat relationship set ternary antara entity sets pegawai (employee), tugas (job) dan cabang (branch).
Relationships antara lebih dari dua entity sets sangat jarang.
e.  Mapping Cardinalities (Kardinalitas Pemetaan)
Mengungkap jumlah entitas ke entitas yang lain bisa dihubungkan melalui relationship set. Cardinalitas pemetaan paling banyak digunakan dalam menggambarkan relationship set biner. Untuk relationship set biner cardinalitas pemetaan harus merupakan salah satu tipe berikut:
1.      One to one (satu ke satu)
2.      One to many (satu ke banyak)
3.      Many to one (banyak ke satu)
4.      Many to many (banyak ke banyak)
f. ERD (Entity Relationship Diagram)
Mencerminkan model database: hubungan antara entities (table-tabel) dan relationships (hubungan-hubungan) diantara entities tersebut.

g.   Aturan untuk Model Database
1. Tiap baris harus berdiri sendiri (independent): tidak tergantung baris-baris yang lain, dan urutan baris tidak mempengaruhi model database.
2. Tiap baris harus unik: tidak boleh ada 2 atau lebih baris yang sama.
3. Kolom harus berdiri sendiri (independent): tidak tergantung kolom-kolom yang lain, dan urutan kolom tidak mempengaruhi model database.
4. Nilai tiap kolom harus berupa satu kesatuan: tidak berupa sebuah daftar.
h.  Tahap Pembuatan Database
1.      Tentukan Entities
2.      Tentukan Attributes
3.      Tentukan relationships
4.      Pembuat ERD
5.      Proses normalisasi database
6.      Implementasi Database

C.  Alat dan Bahan
1.    Komputer dengan koneksi internet
2.    Program Lucidchart (Program Online)
3.    Modul Praktikum Sistem Basis Data

D.   Langkah Kerja
Rancanglah sebuah database untuk menyelesaikan masalah berikut:
Suatu perusahaan software diminta membuatkan basis data yang akan menangani data-data perbankan. Data-data yang ditanganinya adalah: data pribadi mengenai nasabah, data account deposit yang dimiliki oleh nasabah, cabang bank di mana nasabah membuka depositnya, dan data transaksi yang dilakukan nasabah. Nasabah boleh mempunyai lebih dari satu account deposit, dan satu account deposit boleh dimiliki oleh lebih dari satu nasabah sekaligus (join account).
Langkah – langkah perancangan database perbankan :
1.    Menentukan entities (object-object dasar) yang perlu ada didatabase.
a.    Nasabah           : menyimpan semua data pribadi semua nasabah.
b.    Rekening         : menyimpan informasi semua rekening yang telah dibuka
c.    Cabang_bank  : menyimpan informasi tentang semua cabang bank
d.   Transaksi         : menyimpan informasi tentang semua transaksi yang telah terjadi
2.   Menentukan attributes (sifat-sifat) mesing-masing entity sesuai kebutuhan database.
a.    Nasabah
·      id_nasabah              : nomor id untuk nasabah (integer) PK
·      nama_nasabah         : nama lengkap nasabah (varchar(45))
·      alamat_nasabah       : alamat lengkap nasabah (varchar(255))
b.    Rekening
·      no_rekening            : nomor rekening (integer) PK
·      pin                           : Personal Identification Number (varchar(10))
·      saldo                       : Jumlah saldo rekening dalam Rp (integer)
c.    Cabank_bank
·      kode_cabang           : kode untuk cabang bank (varchar(10)) PK
·      nama_cabang          : nama lengkap cabang bank (varchar(20))
·      alamat_cabang        : alamat lengkap cabang bank (varchar(255))

d.    Transaksi
·      no_transaksi            : nomor transaksi (integer) PK
·      jenis_transaksi         : kredit atau debit (varchar(10))
·      tanggal                    : tanggal terjadinya transaksi (date)
·      jumlah                     : besarnya transaksi dalam Rp (integer)

3.    Menentukan relationship (hubungan) diantara entities tersebut.
 

Nasabah
Rekening
Cabang_bank
Transaksi
Nasabah
-
m : n
-
1 : n
Rekening

-
n : 1
1 : n
Cabang_bank


-
-
Transaksi



-








Hubungan
a.    nasabah memiliki rekening :
·      Tabel utama : nasabah, rekening
·      Tabel kedua : nasabah_has_rekening
·      Relationship : Many-to-many (m : n)
·  Attribute penghubung : id_nasabah, no_rekening (FK id_nasabah, no_rekening, dinasabah_has_rekening)
b.    nasabah melakukan transaksi :
·      Tabel utama : nasabah
·      Tabel kedua : transaksi
·      Relationship : One-to-many (1 : n)
·      Attribute penghubung : id_nasabah, (FK id_nasabah, di transaksi)
c.    cabang_bank menangani rekening :
·      Tabel utama : cabang_bank
·      Tabel kedua : rekening
·      Relationship : One-to-many (1 : n)
·      Attribute penghubung : kode_cabang (FK kode_cabang di rekening)
d.    rekening terlibat dalam transaksi :
·         Tabel utama : rekening
·         Tabel kedua : transaksi
·         Relationship : One-to-many (1 : n)
·      Attribute penghubung : no_rekening (FK no_rekening, di transaksi)

4.    Menggambar E-R Diagram Manual :




 











 
                 
E.  Analisa
Dari percobaan di atas dapat disimpulkan bahwa membuat database dengan E-R Diagram lebih mudah dan praktis untuk digunakan. E-R Diagram memudahkan menghubungkan hubungan data yang satu dengan data yang lain.
Untuk membuat E-R diagram ada 4 tahap yang harus dilakukan, yaitu
1.    Menentukan entitas
2.    Menentukan attribute
3.    Menentukan relationship
4.    Menggambar E-R diagram.


F.  Tugas
1.    Buatlah rancangan sebuah database untuk menangani data-data kuliah. Data-data yang akan ditanganinya adalah: data pribadi mengenai mahasiswa, data pribadi mengenai dosen, data mata kuliah dan data ruang kelas. Mahasiswa boleh mengambil lebih dari satu mata kuliah, dan satu mata kuliah boleh diambil oleh lebih dari satu mahasiswa sekaligus (joint account).
Buatlah ER Diagram manual untuk kasus tersebut dari tahap 1 sampai tahap 4!
a.    Menentukan entitas
·      Mahasiswa : menyimpan semua data mahasiswa
·      Dosen          : menyimpan semua data pribadi dosen
·      Mata kuliah : menyimpan informasi tentang semua mata kuliah
·      Ruang          : menyimpan inforamasi tentang semua ruang kelas.
b.    Menentukan attributes
·      Mahasiswa
1. NIM Mahasiswa            : nomor induk mahasiswa (varchar(15)) PK
2. Nama Mahasiswa           : nama lengkap mahasiswa (varchar(45))
·      Mata kuliah
1.  Kode MK           : kode mata kuliah (varchar(15)) PK
2. Nama MK          : nama mata kuliah (varchar(40))
3.  Jumlah SKS       : jumlah sks mata kuliah (integer)
·      Dosen
1.  NIK Dosen        : nomor induk kepegawaian dosen (varchar(15)) PK
2.  Nama_Dosen     : nama lengkap dosen (varchar(45))
3.  MK yang diampu : Mata kuliah yang diampu dosen (Varchar(20))
·      Ruang
1.  kode_ruang_kelas : identitas kelas seperti gedung, lantai dan nomor ruang (varchar(10)) PK
2. kapasitas_ruang_kelas : jumlah kursi atau kapasitas maksimal yang dapat ditampung (integer).
c.    Menentukan relationship (hubungan) diantara entities tersebut.

Mahasiswa
Mata Kuliah
Dosen
Ruang
Mahasiswa
-
m : n
n : 1
n : 1
Mata Kuliah

-
n : 1
1 : n
Dosen

1 : n
-
1 : 1
Ruang



-

Hubungan
1.    Mahasiswa mengambil mata kuliah
·      Tabel utama : mahasiswa, mata kuliah
·      Tabel kedua : mahasiswa_take_makul
·      Relationship : many to many
·      Attribute : NIM, kode MK (FK NIM, kode MK di mahasiswa_take_makul)
2.    Mahasiswa dibimbing dosen
·      Tabel utama : mahasiswa, dosen
·      Tabel kedua : dosen
·      Relationship : many to one
·      Attribute : NIM, nama (FK NIM, nama di mahasiswa_teach_dosen)
3.    Mata kuliah menempati ruang kelas
·      Tabel utama : MK, ruang
·      Tabe kedua : ruang
·      Relationship : many to one
·      Attribute : nama ruang (FK nama ruang di ruang kelas)
4.    Dosen mengampu mata kuliah
·      Tabel utama : dosen, maku
·      Tabel kedua : makul
·      Relationship : one to many
·      Attribute : nama, kode MK (FK nama, kode MK di dosen_teach_makul)
5.    Dosen menempati ruang kelas
·      Tabel utama : dosen, ruang kelas
·      Tabel kedua : ruang kelas
·      Realtionship : one to one
                        .    Attribute : nama ruang (FK nama ruang di dosen_place_ruang)
d.    Menggambar E-R Diagram manual :


2.  Ambil contoh sembarang database (harus berbeda setiap mahasiswa). Buatlah rancangan ER Diagram manual database tersebut dari tahap 1 sampai 4 dengan keetentuan database mengandung 4 buat entitas.
a.    Menentukan entitas
·      Anggota      : menyimpan semua data pribadi anggota
·      Buku           : menyimpan informasi tentang semua buku
·      Pinjam         : menyimpan informasi tentang semua peminjaman buku
·      Petugas       : menyimpan semua data pribadi petugas
b.   Menentukan attributes
·      Anggota
a. Id­_anggota         : nomor anggotaperpustakaan (integer)PK
b. Nama_anggota   : nama lengkap anggota (varchar(45))
c. Alamat_anggota : alamat lengkap anggota (varchar(225))
·      Buku
a. Kode_buku        : kode buku (integer) PK
b. Judul_buku        : nama buku (varchar(45))
c. Pengarang          : nama pengarang buku (varchar(45))
·      Peminjaman
a. No_peminjaman : nomor peminjaman buku (integer)PK
b. Tgl_pinjam         : tanggal peminjaman buku (date)
c. Tgl_kembali       : tanggal kembali peminjaman buku (date)
 ·      Petugas
a. Id_petugas         : nomor identitas petugas (integer)PK
b. Nama_petugas   : nama lengkap petugas (varchar(45))
c. Alamat_petugas  : alamat lengkap petugas (varchar(255))

c.    Menentukan relationship (hubungan) diantara entities tersebut.

Petugas
Anggota
Buku
Peminjaman
Petugas

1 : n
-
-
Anggota


1 : n
1 : 1
Buku




Peminjaman





Hubungan
1.    Petugas melayani anggota
·      Tabel utama : petugas
·      Tabel kedua : anggota
·      Relationship : one to many
·      Attribute     : Id_petugas (FK Id_petugas di anggota)
2.    Anggota meminjam buku
·      Tabel utama : Anggota
·      Tabel kedua : Buku
·      Relationship : one to many
·      Attribute : Id_anggota (FK Id_anggota di buku)
3.    Anggota melakukan peminjaman
·      Tabel utama : Anggota
·      Tabe kedua : peminjaman
·      Relationship : one to one
·   Attribute : Id_anggota (FK Id_anggota dipeminjaman)

      d.   Menggambar ER Diagram manual

 




 



Tidak ada komentar:

Posting Komentar