Selasa, 31 Maret 2015

MODUL 4 BASIS DATA

Yusuf Faisal Agus Saputro / L200130038

 MODUL 4
PERANCANGAN E-R DIAGRAM
MENGGUNAKAN DBDESAIGNER

Tujuan :
1. Mahasiswa mampu merancang basis data melalui tahap-tahap perancangannya.
2. Mahasiswa mampu mewujudkan hasil perancangan basis data ke dalam diagram E-R menggunakan DBDesigner.

B. LandasanTeori
Database dapatdimodelkansebagai :

1. Kumpulan dari entity (entitas)
2. Hubunganantar entity (entitas)

Entity
Entity atau disebuat juga dengan entitas merupakan segala sesuatu yang dapat  digambarkan oleh data. Entity Sets merupakan kumpulan entitas yang sejenis. Entity mempunyai atribut.

Attributes
Attribute merupakan kumpulan diantara semua entitas-entitas yang terdapat pada himpunan. Tipe attribute :
1. Simple (sederhana) dan composite (gabungan) attributes.
2. Single-valued (satu-fungsi) dan multi-valued (multi-fungsi) attributes.
3. Derived (asal) attributes.

Relationship Sets
Relationship adalah kesesuaian antar beberapa entity. Relationship sets adalah hubungan matematika antara entity n>2, tiap bagiannya diambil dari satuan entity.

Tingkatan Relationship Set
Relationship sets yang melibatkan dua entity sets adalah binary (tingkatdua).

Mapping Cardinalities (CardinalitasPemetaan)
1.  One to one (satukesatu)
2. One to many (satukebanyak)
3. Many to one (banykakesatu)
4. Many to many  (banyakkebanyak)

ERD (Entity Relationship Diagram)
Merupakan hubungan antara entities (tabel-tabel) dan relationships (hubungan-hubungan) di antara entities tersebut.

Aturanuntuk Model Database
1. Tiap baris harus berdiri sendiri (independent)
2. Tiap baris harus unik
3. Kolom harus berdiri sendiri
4. Nilai tiap kolom harus berupaa satu kesatuan

TahapPembuatan Database
1. Tentukan Entities
2. Tentukan Attributes
3. Tentukan relationships
4. Pembuat ERD
5. Proses normalisasi database
6. Implementasi Database

C. AlatdanBahan
1. Komputer dengan system operasi Windows XP
2. Program aplikasi DBDesaigner
3. Modul Praktikum Sistem Basis Data

D. Langkah-langkahPraktikum
1. Menggambar ER Diagram dengan menggunakan DBDesaigner :
a. Jalankan aplikasi DB Desaigner
b. Klik button new table ,kemudian klik pada area kerja sehingga akan menghasilkan tabel baru.
c. Double klik pada tabel baru untuk membuka tabel editor, ganti nama pada table name dengan nama nasabah, kemudian isikan atribut tabel dengan data seperti pada langkah nomor 2 yaitu sebagai berikut :
 Coloumn Name
 Data Type
 id_nasabah
 Interger
 nama_nasabah
 Varchar(45)
 alamat_nasabah
 Varchar(255)

d. Klik pada coloumn name id_nasabah untuk mengeset id_nasabah menjadi primary key sehingga berubah menjadi

e. Klik untuk menutup table editor sehingga table nasabah menjadi :

f. Lakukan langkah b sampai e untuk membuat tabel rekening, cabang_bank dan transaksi.


g. Setelah semua tabel dibuat, hubungkan setiap tabel dengan tabel lain dengan button sebagai berikut :

h. Ubah nama relationshop dengan membuka relationship editor, sehingga setelah selesai hasil akhir menjadi seperti berikut :

E. Analisa
Dari percobaan di atas dapat disimpulkan bahwa DBDesaigner adalah sebuah tools yang baik untuk membuat database, memudahkan dan lebih cepat membuat database menggunakan aplikasi ini dibandingkan dengan cara manual. Pada aplikasi ini database dibuat dengan menggunakan entitas-entitas beserta atribut-atributnya, dan dihubungkan antara data satu dengan data yang lainnya.
Tugas
1. Dari tugas pada modul 3 soal nomer 1 dan 2 , buatlah rancangan basis data dari tahap 1 sampai tahap 4. Gunakan program DB Designer untuk membuat ER Diagram.

Jawab :

Langkah-langkah perancangan:
1) Menentukan entitas:
· dosen: menyimpan semua data pribadi semua dosen.
· mahasiswa: menyimpan semua data pribadi semua mahasiswa.
· mata_kuliah: menyimpan informasi tentang semua mata kuliah yang ada.
· ruang_kelas: menyimpan informasi tentang semua ruang kelas yang digunakan.

2) Menentukan attributes:
· dosen:
o   nama_dosen : nama lengkap dosen (varchar(50))
o   NIK : nomor induk kepegawaian dosen (varchar(20)) PK
o   Alamat : alamat tempat tinggal dosen (varchar(255))
o   no_HP : nomor handphone dosen (integer)
· mahasiswa:
o   nama_mahasiswa : nama lengkap mahasiswa (varchar(50))
o   NIM : nomor induk mahasiswa (char(10)) PK
o   Alamat : alamat tempat tinggal mahasiswa (varchar(255))
o   tempat_lahir : kota tempat lahir mahasiswa (varchar(20))
o   tgl_lahir : tanggal, bulan dan tahun lahir mahasiswa (varchar(20))
· mata_kuliah:
o   nama_mk : nama mata kuliah (varchar(40))
o   kode_mk : kode mata kuliah (varchar(15)) PK
o   jumlah_sks : jumlah sks mata kuliah (integer)
o   kelas : kelas dan jam pada mata kuliah (varchar(2))
o   jadwal: jadwal kuliah mata kuliah meliputi hari dan jam (varchar(20))

· ruang_kelas:
o   id_kelas : identitas kelas seperti gedung, lantai dan nomor ruang (varchar(5)) PK
o   kapasitas : jumlah kursi atau kapasitas maksimal yang dapat ditampung (integer)

3)      Menetukan relationship antar entitas:


mahasiswa
Dosen
mata_kuliah
ruang
mahasiswa
-
n:1
m:n
-
dosen

-
1:n
-
mata_kuliah


-
1:1
ruang



-


Hubungan:
·         dosen membimbing oleh mahasiswa:
o   Tabel utama : dosen
o   Tabel kedua : mahasiswa
o   Relationship : one to many (1 : n)
o   Attribute penghubung : NIK (FK NIK di mahasiswa)
·         mahasiswa mengambil mata_kuliah:
o   Tabel utama: mahasiswa, mata_kuliah
o   Tabel kedua: mahasiswa_has_mata_kuliah
o   Relationship: many to many (m:n)
o   Attribute penghubung: NIM, kode_mk (FK NIM, kode_mk di mahasiswa_has_mata_kuliah)
·         dosen mengampu mata_kuliah:
o   Tabel utama: mata_kuliah
o   Tabel kedua: dosen
o   Relationship: many to one (n:1)
o   Attribute penghubung: kode_mk (FK kode_mk di dosen)
·         mata_kuliah menempati ruang_kelas:
o   Tabel utama: ruang_kelas
o   Tabel kedua: mata_kuliah
o   Relationship: many to one (n:1)
o   Attribute pendukung: id_kelas (FK id_kelas di mata_kuliah)


2. Ambil contoh sembarang database. Buatlah rancangan ER Diagram manuual database tersebut dari tahap 1 sampai tahap 4, dengan ketentuan database minimal mengundang 4 buah entitas.

Perusahaan kecil

1) Menentukan entitas:
· Direktur: menyimpan semua data pribadi Direktur.
· Manager Keuangan: menyimpan semua data pribadi semua Manager Keuangan.
· Manager Pemasaran: menyimpan semua data pribadi semua Manager Pemasaran.
· Manager Operasional: menyimpan semua data pribadi semua Manager Pemasaran.
. Produk: menyimpan semua data tentang produk yang dibuat.

2) Menentukan attributes:

· Direktur:
o Nama: nama pada Direktur (varchar(50))
o NIK: identitas pada pasien (char(10)) PK
o Pekerjaan_Direktur: data tentang pekerjaan pasien (varchar(45))
o Alamat: alamat pada pasien (varchar 70))

· Manager Keuangan:
Pekerjaanpekerjaan yang dimiliki Manager Keuangan (varchar(50))
o Nama: nama pada Manager Keuangan (varchar(20))
o NIK: nomor induk Manager Keuangan (varchar(20))PK

·Manager Pemasaran:
Pekerjaanpekerjaan yang dimiliki Manager Pemasaran (varchar(50))
o Nama: nama pada Manager Pemasaran (varchar(20))
o NIK: nomor induk Manager Pemasaran (varchar(20))PK

· Manager Operasional:
Pekerjaan: pekerjaan yang dimiliki Manager Operasional (varchar(50))
o Nama: nama pada Manager Operasional (varchar(20))
o NIK: nomor induk Manager Operasional (varchar(20))PK

· Produk:
o Nama: nama produk (varchar(40))
o Kode: kode pada produk (varchar(15)) PK

3) Menetukan relationship antar entitas:

Hubungan:
· Direktur mengatur kerja semua manager:
o Tabel utama: Direktur
o Tabel kedua: Manager Keuangan
o Tabel ketiga: Manager Pemasaran
o Tabel keempat: Manager Operasional
o Relationship: one to many (n:1)
o Attribute penghubung: NIK (FK NIK di Direktur)

Manager Pemasaran mengatur produk yang dipasarkan.
o Tabel utama: Manager Pemasaran
o Tabel kedua: Produk
o Relationship: one to many (n:1)

o Attribute penghubung: NIK, kode produk (FK kode produk)

4) Menggambar ER Diagram:





Selasa, 24 Maret 2015

Modul 3 BASIS DATA

PERANCANGAN BASIS DATA
MENGGUNAKAN E-R DIAGRAM MANUAL

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. Dasar Teori
Database dapat dimodelkan sebagai:
1. Kumpulan dari entity (entitas)
2. Hubungan antar entity (entitas)
- Entity Sets
Entity adalah suatu obyek yang dapat dikenali dari obyek yang lain. Contoh: seseorang yang khusus, perusahaan, tanaman, dan lain-lain.
- Attributes
Entity ditampilkan oleh sekumpulan attribute, yang mana properti deskriptipnya dikuasai oleh seluruh anggota dalam kumpulan entity.
Tipe attribute:
1. Sederhana dan gabungan attribute
2. Satu fungsi dan multi fungsi
3. Asal attribute

- Relationship Sets
Relationship adalah kesesuaian antar beberapa entity. Relationship setadalah hubungan matematika antara entity n > 2, tiap bagiannya diambil dari satuan entity.

- Tingkatan Relationship Sets
Mengacu pada jumlah entity set yang terlibat dalam relationship set.Relationship sets yang melibatkan dua entity sets adalah binary (atau tingkat dua). Umumnya hampir semua relationship set dalam sistem database adalah binary.

- Mapping Cardinalities (Cardinalitas Pemetaan)
Menangkap jumlah entitas ke entitas yang lain yang bisa dihubungkan melalui relationship set. Cardinalitas pemetaan paling banyak digunakan dalam menggambarkan relationship sets biner. Untuk relationship set biner cardinalitas pemetaan harus merupakan salah satudari 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)

- ERD: Entity Relationship Diagram
Mencerminkan model database: hubungan antara entities (tabel-tabel) dan relationships (hubungan-hubungan) di antara entities tersebut.
1. Rectangles melambangkan set-set entitas.
2. Diamonds
3. Lines menghubungkan atribut dengan set-set entitas serta set-set entitas dengan set-set hubungan (relationship).
4. Ellipses mewakili attributes.
- Aturan untuk Model Database
1. Tiap baris harus berdiri sendiri.
2. Tiap baris harus unik.
3. Kolom harus berdiri sendiri.
4. Nilai tiap kolom harus berupa satu kesatuan.
- Tahap Pembuatan Database

1. Tahap 1: Tentukan Entities.
Sifat-sifat entity:
a. Signifikan
b. Umum
c. Fundamental
d. Unitary

2. Tahap 2: Tentukan Atribut.
Tentukan attributes (sifat-sifat) masing-masing entity sesuai kebutuhan database:
a. Tentukan sifat-sifat (fields atau kolom) yang dimiliki tiap entity, serta tipe datanya.
b. Attribute yang sesuai harus:
                                                 1.Signifikan
                                                 2.Bersifat langsung
c. Tentukan attribute yang menjadi Primary Key untuk entity yang bersangkutan.
d. Jika satu attribute tidak cukup, gabungan beberapa attribute bisa menjadi Composite Primary Key.
e. Jika Composite Primary Key banyak sebaiknya menambahkanattribute buatan yang menjadi Primary Key yang tunggal.

3. Tahap 3: Tentukan Relationships.
Menentukan hubungan-hubungan antar entitas:
a. Tentukan jenis hubungan di antara entity yang satu dengan entitas yang lain.
b. Macam hubungan ada 3:
                                           1. One to one (1:1)
                                           2. One to many (1:n)
                                           3. Many to many (m:n)
c. Dalam membentuk hubungan di antara 2 entitas, tentukan attributenama yang digunakan     untuk menghubungkan kedua entitas tersebut.
d. Tentukan entity mana yang menjadi tabel utama dan mana yang menjadi tabel kedua.
e. Attribute (dari tabel utama) yang menghubungkannya dengan tabel kedua                             menjadi Foreign Key di tabel kedua.

4. Tahap 4: Pembuatan ERD.
a. Buat Entity Relationship Diagram (ERD) berdasarkan hasil dari Tahap 1-3.
b. Ada berbagai macam notasi untuk pembuatan ERD.
c. Menggunakan software khusus untuk menggambar ERD.

5. Tahap 5: Proses normalisasi database.

6. Tahap 6: Implementasi Database.

C. Alat Bahan
1. Komputer dengan sistem operasi Windows XP
2. Modul Praktikum Sistem Berkas dan Basis Data

D. Langkah Kerja
Rancanglah sebuah database untuk menyelesaikan masalah berikut:
Suatu perusahaan software diminta membuktikan basis data yang akan menangani data-data perbankan. Data-data yang ditanganinnya adalah: data pribadi mengenai nasabah, data accoun membauka depositnya, dan data nasabah, cabang bank di mana nasabah mebuka 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 (joint account).
Langkah-langkah perancangan database perbankan:

1. Menentukan entities (object-object) yang perlu ada di database.
· Nasabah: menyimpan semua data pribadi semua nasabah.
· Rekening: menyimpan informatika semua rekening yang telah dibuka.
· Cabang_bank: menyimpan informasi semua cabang bank
· Transaksi: menyimpan informasi tentang semua transaksi yang telah terjadi

2. Menentukan antribut masing-masing entity sesuai kebutuhan database
- Nasabah:
o   Id_nasabah
o   Nama_nasabah
o   Alamat_nasabah
- Rekening:
o   No_rekening
o   Pin
o   saldo
- Cabang_bank:
o   Kode_cabang
o   Nama_cabang
o   Alamat_cabang
- Transaksi:
o   No_transaksi
o   Jenis_transaksi
o   Tanggal
o   Jumlah

3.Menggambar ER Diagram manual:



E. Analisa

Dengan menggunakan  ERD, dapat mempermudah kita untuk melihat hubungan antar entitas serta memodelkan struktur data dan hubungan antar data. ERD juga bisa diigunakan untuk mendokumentasikan data yang ada dengan cara mengidentifikasikan tiap entitas dan hubungannya.

F. Tugas

1. Buat rancangan sebuah database untuk menangani data-data kuliah. Data-data yang akan ditanganinya adalah: data pribadi mengenai mahasiswa, data pribadimengenai dosen, data matakuliah 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- tahap 4!
1) Menentukan entitas:
· Mahasiswa: menyimpan semua data pribadi semua mahasiswa.
· Dosen: menyimpan semua data pribadi semau dosen.
· Matakuliah: menyimpan informasi tentang semua mata kuliah yang ada.
· Ruang: menyimpan informasi tentang semua ruang kelas yang digunakan.

2) Menentukan attributes:

· Mahasiswa:
o   NAMA_MAHASISWA : nama lengkap mahasiswa (varchar(20))
o   NIM : nomor induk mahasiswa (char(10)) PK
o   ALAMAT : alamat lengkap mahasiswa (varchar(30))

· Dosen:
o   NAMA_DOSEN : nama lengkap dosen (varchar(20))
o   NIK/NIP : nomor induk kepegawaian dosen (varchar(20)) PK
o   ALAMAT : alamat lengkap mahasiswa (varchar(30))

· Matakuliah:
o   NAMA_MK : nama mata kuliah (varchar(40))
o   JUMLAH_SKS : jumlah sks mata kuliah (integer)
o   KODE_MK : kode mata kuliah (varchar(15)) PK

· Ruang:
o   NAMA_RUANG: identitas kelas seperti gedung, lantai dan nomor ruang (char(5)) PK
o   KAPASITAS : jumlah kursi atau kapasitas maksimal yang dapat ditampung (integer)

3) Menetukan relationship antar entitas:

Mahasiswa
Dosen
Matakuliah
Ruang
Mahasiswa
-
n:1
m:n
-
Dosen

-
n:1
-
Matakuliah


-
1:1
Ruang



-

Hubungan:
· Mahasiswa dibimbing oleh Dosen:
o   Tabel utama: dosen
o   Tabel kedua: mahasiswa
o   Relationship: many to one (n:1)
o   Attribute penghubung: NIK/NIP (FK NIK/NIP di dosen)

· Mahasiswa mengambil Matakuliah:
o   Tabel utama: Mahasiswa, Matakuliah
o   Tabel kedua: mhs_ambil_mk
o   Relationship: many to many (m:n)
o   Attribute penghubung: NIM, KODE_MK (FK NIM, KODE_MK)

· Dosen mengampu Matakuliah:
o   Tabel utama: Matakuliah
o   Tabel kedua: Dosen
o   Relationship: many to one (n:1)
o   Attribute penghubung: NIK/NIP(FK Kode_mk di Matakuliah)

· Matakuliah menempati Ruang:
o   Tabel utama: Ruang
o   Tabel kedua: Matakuliah
o   Relationship: 1:1
o   Attribute pendukung: Nama(FK Nama di Ruang)

4) Menggambar ER Diagram:
2. Ambil contoh sembarang database. Buatlah rancangan ER Diagram manuual database tersebut dari tahap 1 sampai tahap 4, dengan ketentuan database minimal mengundang 4 buah entitas.

Perusahaan kecil

1)      Menentukan entitas:
· Direktur: menyimpan semua data pribadi Direktur.
· Manager Keuangan: menyimpan semua data pribadi semua Manager Keuangan.
· Manager Pemasaran: menyimpan semua data pribadi semua Manager Pemasaran.
· Manager Operasional: menyimpan semua data pribadi semua Manager Pemasaran.
. Produk: menyimpan semua data tentang produk yang dibuat.

2) Menentukan attributes:

· Direktur:
o Nama: nama pada Direktur (varchar(50))
o NIK: identitas pada pasien (char(10)) PK
o Pekerjaan_Direktur: data tentang pekerjaan pasien (varchar(45))
o Alamat: alamat pada pasien (varchar 70))

· Manager Keuangan:
Pekerjaanpekerjaan yang dimiliki Manager Keuangan (varchar(50))
o Nama: nama pada Manager Keuangan (varchar(20))
o NIK: nomor induk Manager Keuangan (varchar(20))PK

·Manager Pemasaran:
Pekerjaanpekerjaan yang dimiliki Manager Pemasaran (varchar(50))
o Nama: nama pada Manager Pemasaran (varchar(20))
o NIK: nomor induk Manager Pemasaran (varchar(20))PK

· Manager Operasional:
Pekerjaan: pekerjaan yang dimiliki Manager Operasional (varchar(50))
o Nama: nama pada Manager Operasional (varchar(20))
o NIK: nomor induk Manager Operasional (varchar(20))PK

· Produk:
o Nama: nama produk (varchar(40))
o Kode: kode pada produk (varchar(15)) PK

3) Menetukan relationship antar entitas:

Hubungan:
· Direktur mengatur kerja semua manager:
o Tabel utama: Direktur
o Tabel kedua: Manager Keuangan
o Tabel ketiga: Manager Pemasaran
o Tabel keempat: Manager Operasional
o Relationship: one to many (n:1)
o Attribute penghubung: NIK (FK NIK di Direktur)

Manager Pemasaran mengatur produk yang dipasarkan.
o Tabel utama: Manager Pemasaran
o Tabel kedua: Produk
o Relationship: one to many (n:1)
o Attribute penghubung: NIK, kode produk (FK kode produk)

4)      Menggambar ER Diagram: