0% menganggap dokumen ini bermanfaat (0 suara)
66 tayangan35 halaman

BAB VI Basis Data

Basis data adalah kumpulan data yang saling terhubung. Terdapat beberapa model basis data seperti model hirarki, jaringan, relasional, dan berorientasi objek. Model relasional sering digunakan karena kelebihannya seperti mudah mengakses data, melakukan perubahan struktur, dan menggunakan bahasa SQL.

Diunggah oleh

ardykuncoro.o
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
66 tayangan35 halaman

BAB VI Basis Data

Basis data adalah kumpulan data yang saling terhubung. Terdapat beberapa model basis data seperti model hirarki, jaringan, relasional, dan berorientasi objek. Model relasional sering digunakan karena kelebihannya seperti mudah mengakses data, melakukan perubahan struktur, dan menggunakan bahasa SQL.

Diunggah oleh

ardykuncoro.o
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 35

SUMBER BELAJAR PENUNJANG PLPG 2017

MATA PELAJARAN/PAKET KEAHLIAN


REKAYASA PERANGKAT LUNAK

BAB VI
BASIS DATA

H W Herwanto

KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN


DIREKTORAT JENDERAL GURU DAN TENAGA KEPENDIDIKAN
2017
Kompetensi Dasar
1. Struktur Hirarki basisdata
2. Mengidentifikasi struktur hierarki basis data
3. Menjelaskan ERD
4. Menjelaskkan Normalisasi Data
5. Membuat Tabel

A. Materi

Basis data adalah mekanisme yang digunakan untuk menyimpan informasi atau data.
(Stephens dan Plew dalam Widyaningtyas, 2013 ). Basis data dapat juga diartikan sebagai
kumpulan data yang saling terhubung (relasi) dimana data tersebut membentuk suatu
informasi. Relasi antar data ditunjukkan dengan penanda yang disebut dengan key.

1.Struktur hirarkhi basis data


Hirarkhi Basis Data dari bagian paling kecil ke bagian yang besar dapat ditunjukkan pada
Gambar dibawah

Bit

Byte

Hirarkhi Basis Data Field

Record

File

Basis Data

1
Gambar Hirarki Basis Data

Berdasarkan Gambar tersebut dapat dijelaskan hirarkhi basis data sebagai berikut
(Santoso, 2012) :
1. Bit adalah suatu sistem angka biner yang terdiri atas dua macam nilai, yaitu 0 dan 1. Bit
adalah unit terkecil dari pembentuk data.
2. Byte adalah bagian terkecil yang dapat dialamatkan dalam memori. Byte merupakan
sekumpulan bit yang terdiri atas kombinasi delapan bit. Satu byte digunakan untuk
mengkodekan satu karakter dalam memori. Contoh: Kode ASCII untuk A ialah
01000001. Sehingga dapat dikatakan bahwa byte adalah kumpulan bit yang membentuk
satu karakter (huruf, angka, atau tanda). Dengan kombinasi 8 bit, dapat diperoleh 256
karakter (= 2 pangkat 8).
3. Field atau kolom adalah unit terkecil yang disebut data. Field dapat diartikan
sekumpulan byte yang mempunyai makna.

Nama NIS Sekolah


Devi 124562 SMKN 1 SUMBERPINTAR
Gambar Contoh Record

Berdasarkan Gambar 2 Devi yang merupakan field nama. Field dapat disebut juga
sebagai kumpulan karakter yang membentuk suatu kata.
4. Record atau baris adalah kumpulan item yang secara logis saling berhubungan. Setiap
record dapat dikenali oleh tanda pengenal yaitu field kunci. Gambar diatas merupakan
contoh dari record. Record adalah kumpulan kata yang membentuk suatu informasi,
misal gambar diatas memberikan informasi bahwa siswa bernama Devi memiliki NIS
124562 dan bersekolah di SMKN 1 SUMBERPINTAR.
5. File atau tabel adalah kumpulan record yang sejenis dan secara logiS berhubungan.
Pembuatan dan pemeliharaan file adalah faktor yang sangat penting dalam sistem
informasi manajemen yang menggunakan komputer. Sehingga dapat disimpulkan
bahwa tabel adalah kumpulan baris/record yang membentuk satu tabel yang berarti.
2
Contoh file ditunjukkan pada gambar berikut mengenai informasi siswa di sekolah
SMKN 1 SUMBERPINTAR.

Nama NIS Sekolah


Devi 124562 SMKN 1 SUMBERPINTAR
Ryanto 123456 SMKN 1 SUMBERPINTAR
Geraldi 125837 SMKN 1 SUMBERPINTAR
Gambar File Siswa SMKN 1 SUMBERPINTAR

6. Database atau basis data merupakan kumpulan file-file yang berhubungan secara logis
dan digunakan secara berkelanjutan pada operasi-operasi sistem informasi manajemen.
Semua database umumnya berisi elemen-elemen data yang disusun ke dalam file-file
yang diorganisasikan berdasarkan sebuah skema atau struktur tertentu, tersimpan di
hardware komputer. Manipulasi data untuk kegunaan tertentu dilakukan dengan
bantuan software. Jadi, database adalah suatu kumpulan tabel yang dipakai dalam
suatu lingkup perusahaan atau instansi untuk tujuan tertentu. Contoh database adalah
database sekolah yang meliputi file-file: siswa, guru, kurikulum, jadwal dan sebagainya.

2.Model – Model Basis Data


Terdapat beberapa model basis data, diantaranya yaitu model hirarki, model jaringan,
model relasional dan model berorientasi objek. Model-model tersebut memiliki karakteristik
yang berbeda.
1. Model Basis Data Hierarki

Model basis data hierarki adalah model basis data yang menyerupai bentuk pohon
dari atas ke bawah. Lapisan paling atas adalah induk bagi lapisan yang berada di bawahnya
yang disebut anak. Struktur pohon mewakili model hierarki pada penyimpanan komputer.
Lapisan
anak/ bawah

3
hanya boleh memiliki satu lapisan induk yang ditunjukkan pada Gambar .

Gambar Struktur Model Hierarki (Darmawiguna, 2014)

Beberapa keuntungan dari model hierarki ini, yaitu :


 Dari segi konseptual model ini adalah model yang sederhana
 Keamaan basis data terjamin
 Pengaturan terhadap integritas data mudah dilakukan
 Lebih efisien apabila digunakan untuk basis data berskala besar

Model hierarki juga memiliki kekurangan dalam implementasinya. Kekurangan dari model
ini, adalah :
 Implementasi sangat rumit
 Pengelolaan yang sukar
 Terjadi redudancy data

2. Model Basis Data Jaringan


Model basis data jaringan merupakan pengembangan dari model hierarki. Dalam model
ini record-anak dapat memiliki lebih dari satu record induk. Sehingga antara record –anak
dan record-induk terdapat penghubung yang dapat bekerja secara searah ataupun dua arah.
Kelebihan dari model ini , yaitu :
 Dapat menangani lebih banyak macam relasi dibandingkan dengan model
hierarki
 Akses data lebih fleksibel
 Lebih mudah menangani data yang kompleks
 Akses data lebih cepat
 Mudah membentuk query yang kompleks untuk keperluan retrieve data
 Meningkatkan integritas basis data

4
Model jaringan juga memiliki kelemahan mengenai beberapa hal. Kelemahan tersebut,
yaitu :
 Modifikasi struktur basis data sulit dilakukan
 Sistem lebih rumit
 Perubahan struktur basis data yang telah terdefinisi akan berpengaruh
terhadap program yang mengakses basis data
Berikut merupakan gambaran dari model jaringan yang ditunjukkan pada Gambar berikut

Gambar Model Jaringan (Darmawiguna, 2014)

3. Model Basis Data Relasional


Model basis data relasional adalah model basis data yang sering digunakan. Model
ini memiliki prinsip yang didasarkan pada teori-relasional. Berkas data digambarkan dengan
tabel dua dimensi yang memiliki baris dan kolom. Tabel dapat membuat relasi dengan tabel lain
dengan menggunakan kunci. Gambaran model relasional ditunjukkan pada gambar berikut.

Gambar Model Relasional (Darmawiguna, 2014)

5
Kelebihan model relasional , yaitu :
 Data sangat cepat diakses
 Mudah melakukan perubahan terhadap struktur basis data
 Data dipresentasikan secara logis
 Mudah dalam mengimplementasikan integritas data
 Data lebih akurat
 Sudah menggunakan structure query language (SQL)
Kekurangan dari model ini, yaitu :
 Pada tabel yang berbeda harus dilakukan joined untuk retrieve data
 Pengguna harus memahami struktur dan prinsip kerja SQL
 Pengguna harus memahami relasi antar tabel

4. Model Basis Data Berbasis Objek


Model basis data dimana data didefinisikan, disimpan dan diakses menggunakan
pemrograman berorientasi objek (Darmawiguna, 2014). Prinsip dari model basis data ini
adalah adanya encapsulasi pada setiap data dimana data diibaratkan sebagai objek yang
berada dalam kapsul masing-masing sehingga objek satu dengan yang lain saling terpisah.
Model ini didefinisikan dengan menggunakan bahasa pemrograman berorientasi objek yaitu
bahasa Java. Gambaran model basis data berorientasi objek ditunjukkan pada Gambar
berikut.

6
Gambar model basis data berorientasi objek (Darmawiguna, 2014)

Kelebihan dari model basis data berorientasi objek, yaitu :


• Programmer hanya perlu memahami konsep orientasi objek untuk dapat
menggabungkan konsep orientasi objek dengan basis data relasional
• Sifat pewarisan dapat diterapkan dari satu objek ke objek lain, sehingga lebih efisien
• Model data berorientasi objek lebih kompatibel dengan pemrograman berorientasi
objek
Kekurangan model basis data berorientasi objek, yaitu pengguna harus memahami
konsep orientasi objek. Hal ini dikarenakan metode ini tidak dapat digunakan pada metode
pemrograman tradisional

3. Pengembangan Basis Data


Pengembangan basis data diperlukan untuk kebutuhan pengembangan program
atau perangkat lunak. Proses pengembangan basis data dapat dijelaskan sebagai berikut :
a. Penentuan Tujuan
Di awal tahap perlu dilakukan analisis mengenai kebutuhan untuk pengembangan
sistem basis data. Basis data yang diperlukan seperti apa dan tujuan
pengembangannya. Tujuan ditetapkan berdasarkan parameter pengguna dan data.

7
b. Ikatan (Binding)
Binding adalah ukuran fleksibilitas untuk pencapaian perancangan basisdata yang
efisien dan optimal . Ukuran tersebut meliputi, struktur file, model basis data, skema,
relasi, pemanggilan informasi, serta perawatan data dan integritas basis data.
c. Dokumentasi
Dokumentasi dalam pengembangan basis data berupa model basis data. Model ini
menentukan proses yang dibutuhkan untuk pembentukan file, perawatan file dan
pemanggilan informasi.
d. Pemrograman
Tahap akhir setelah perancangan basis data adalah implementasi dalam bentuk
coding program

a.Langkah-Langkah Pengembangan Basis Data.


Terdapat beberapa komponen yang terkait dalam pengembangan basis data.
Komponen tersebut meliputi file basis data, perangkat lunak, perangkat keras dan personil
atau oknum yang terlibat. Langkah-langkah pengembangan basis data :
1. Spesifikasi kebutuhan
• Definisi masalah dan studi kelayakan
• Rinci spesifikasi
2. Evaluasi alternatif
• Indikasi alternatif
• Seleksi alternatif
3. Desain
• Spesifikasi dan order perangkat keras
• Desain logik program
• Desain struktur data
• Desain prosedur untuk pemakai dan operator
• Definisi struktur organisasi pemakai
4. Implementasi
• Instalasi dan pengujian perangkat keras

8
• Coding dan pengujian unit-unit program
• Konversi data
• Pembuatan dokumen prosedur
• Pelatihan pemakai
• Pengujian menyeluruh

b.Alat Bantu Dan Metode Dalam Pengembangan Basis Data


Alat bantu atau metode digunakan untuk memudahkan pengembangan basis data.
Alat yang digunakan untuk pengembangan basis data antara lain,
- diagram PERT,
- CPM,
- EasyCase dan
- S-Designor.
Sedangkan metode yang digunakan dapat berupa studi kelayakan dan analisis biaya
manfaat.

4.ENTITAS
Entitas memiliki peranan penting dalam sistem basis data. Entitas adalah sesuatu yang
dapat digambarkan oleh data. Menurut Mulyanto(2008), Entitas adalah individu yang
mewakili sesuatu yang nyata (eksistensinya) dan dapat dibedakan dari sesuatu yang lain.
Dapat berupa suatu elemen dari suatu lingkungan, suatu sumber daya atau sebuah transaksi
yang memiliki arti penting bagi suatu model yang akan dibangun.

1.Jenis-Jenis Entitas
Terdapat himpunan entitas yang tidak memiliki atribut-atribut pembentuk kunci utama.
Himpunan entitas tersebut disebut himpunan entitas lemah (weak entity set). Selain itu juga
terdapat himpunan entitas yang mempunyai kunci utama. Himpunan ini disebut himpunan
kuat (strong entity set). Entitas dikategorikan ada 2 jenis :
1. Entitas kuat, yaitu entitas yang keberadaanya tdk tergantung entitas lain.

9
2. Entitas lemah, yaitu entitas yang bergantung oleh keberadaan entitas lain.
Agar himpunan entitas lemah berarti, himpunan entitas lemah harus diasosiasikan
dengan entitas yang kuat atau disebut sebagai himpunan entitas pemilik. Setiap himpunan
entitas lemah bergantung keberadaannya (existence dependent) pada himpunan entitas
yang mengidentifikasi.
Contoh:
• Entitas Transaksi bergantung adanya entitas Rekening.
• Entitas Pekerjaan (task) bergantung adanya Proyek.
Entitas yang berdiri sendiri dapat mempunyai satu identifier unik yang mengidentifikasi
entitas-entitas itu. Identifier dari entitas yang bergantung selalu berupa identifier majemuk
(composite identifier) dimana salah satu bagian identifier adalah identifier induknya.
Kunci utama himpunan entitas lemah dibentuk dari kunci utama himpunan entitas
pengidentifikasi ditambah diskriminator (discriminator) himpunan entitas lemah.
Diskriminator (discriminator) himpunan entitas lemah adalah himpunan yang memberikan
tanda pembedaan terhadap entitas-entitas di himpunan entitas lemah itu. diskriminator
(discriminator) himpunan entitas lemah juga disebut kunci parsial himpunan entitas.

2.Jenis-Jenis Atribut Pada Sebuah Entitas


Atribut memberikan informasi lebih rinci mengenai jenis entitas. Atribut memiliki
struktur internal, yaitu tipe data. Jenis-jenis atribut dijelaskan sebagai berikut:
• Atribut Key
Atribut Key adalah satu atau gabungan dari beberapa atribut yang dapat membedakan
seluruh baris data ( Row/Record ) dalam table. Atribut ini bersifat unik. Hal ini
dikarenakan pada atribut yang dijadikan key tidak boleh ada baris data dengan nilai
yang sama
Contoh : Nomor pokok mahasiswa (NPM), NIM dan nomor pokok lainnya
• Atribut Simple
Atribut yang bernilai atomic dalam artian tidak dapat dipecah/ dipilah lagi
Contoh : Alamat, penerbit, tahun terbit, judul buku.
• Atribut Multivalue

10
Nilai dari suatu attribute yang memiliki lebih dari satu nilai (multivalue) dari atrribute
terkait.
Contoh : dari sebuah buku, yaitu terdapat beberapa pengarang.
• Atribut Composite
Atribut composite adalah atribut yang tersusun dari beberapa atribut yang lebih kecil
dan mempunyai arti tertentu. Atribut ini dapat dipecah lagi atau memiliki sub attribute.
Contoh : dari entitas nama yaitu nama depan, nama tengah, dan nama belakang
• Atribut Derivatif
Atribut yang tidak harus disimpan pada basis data atau atribut yang dihasilkan dari
atribut lain maupun dari suatu relasi, contohnya Total. Atribut ini dilambangkan dengan
bentuk oval yang bergaris putus-putus
• Atribut Harus Bernilai (mandatory attribute)
Atribut harus bernilai adalah atribut yang harus memiliki nilai, sehingga dapat dikatakan
tidak boleh bernilai kosong.
Contoh : no_identitas dan nama_customer harus ada nilainya dalam tabel customer.
• Atribut Nilai Null ( non-mandatory attribute )
Atribut nilai null adalah atribut yang nilainya boleh kosong (tidak memiliki nilai). Dapat
digunakan untuk menyatakan/mengisi atribut-atribut yang nilainya memang belum siap
atau nilainya tidak ada. Nilai null tidak sama dengan spasi.
• Atribut Turunan
Atribut turunan adalah atribut-atribut yang nilai-nilainya berasal dari pengolahan atau
diturunkan dari atribut tabel lain yang berhubungan. Atribut ini dapat ditiadakan dari
sebuah tabel, karena nilainya bergantung pada nilai yang ada di atribut lain.

3.Menentukan Primary Key Pada Entitas


“Primary Key” adalah field kunci / utama dari suatu tabel yang menandai field dimana
field tersebut tidak bisa diisi dengan data yang sama, / dengan kata lain Primary key
menjadikan tiap record memiliki identitas atau nilai yang unik.
Primary Key berfungsi untuk memudahkan menampilkan record hasil pencarian
(searching), pengurutan (sorting), dan berbagai operasi query lainnya. Dengan memilih

11
primary key operasi query berlangsung lebih cepat. Satu tabel tidak boleh memiliki lebih
dari satu primary key. Hal ini dikarenakan primary key merupakan variabel data yang
menjadi identitas utama dari tabel tersebut. Contoh penerapan primary ditunjukkan pada
gambar berikut :

Gambar Tabel Matakuliah


Dari gambar tersebut dapat diamati bahwa masing-masing data dibedakan berdasarkan
kolom kode_mtk. Ini berarti nilai pada kode_mtk harus bersifat unik. Berikut merupakan
aturan dalam pembuatan Primary Key adalah:
1. Tabel hanya memiliki satu primary key
2. Primary key tidak menggunakan bertipe BLOB
3. Nilai primary key bersifat unik dan tidak bernilai NULL
Setiap tabel dapat memiliki satu atau lebih field yang bernilai unik. Field – field tersebut
memiliki kemungkinan menjadi Primary Key dan disebut sebagai Candidate Key. Key yang
diperoleh dari beberapa field key disebut Composite Key.
Contoh penerapan Primary Key pada tabel Pegawai yang memiliki field :

12
 no induk
 No ktp
 Nama
 Tempat lahir
 Tanggal lahir
 Alamat
 Kota
No induk dan no ktp adalah Candidate Key dan untuk kunci utama (primary key)
adalah salah satu yang dipilih dari candidat key. Misalnya salah satu yang dipilih
menjadi primary key adalah No. Induk, maka primary key nya adalah no induk.

5. Relasi & Kardinalitas.

a.Menentukan Relasi Pada Sejumlah Entitas


Terdapat beberapa relasi antar entitas, antara lain (Kowal, 1992) :
1. One To One
Relasi ini adalah suatu entitas didalam himpunan entitas A
dihubungkan dengan paling banyak satu entitas didalam himpunan entitas
B,dan entitas didalam entitas himpunan B dihubungkan dengan paling
banyak satu entitas dalam himpunan entitas satu A. Gambar berikut
menunjukkan relasi one to one.

Gambar Relasi One to One

13
2. One To Many
One to Many adalah suatu entitas didalam himpunan entitas A
dihubungkan lebih dari satu entitas didalam himpunan entitas B,dan entitas
didalam himpunan entitas B hanya dapat dihubungkan dengan paling banyak
satu entitas dalam himpunan entitas A. Gambar berikut menunjukkan one to
many.

Gambar One to Many


3. Many To Many
Relasi Many to Many adalah suatu entitas didalam himpunan entitas
A dapat dihubuungkan lebih dari satu entitas didalam himpunan entitas
B,dan entitas didalam entitas himpunan B dapat dihubungkan lebih dari atu
entitas dalam himpunan entitas A. Gambar berikut menunjukkan relasi many
to many.

Gambar Many To Many

14
b.Bentuk Kardinalitas (Derajat Relasi)
Kardinalitas menjelaskan batasan jumlah keterhubungan satu Entitas dengan
Entitas lainnya. Kardinalitas juga menunjukkan jumlah maksimum entitas yang dapat
berelasi dengan entitas pada himpunan entitas yang lain. Kardinalitas merujuk
kepada hubungan maksimum yang terjadi dari himpunan entitas yang satu ke
himpunan entitas yang lain begitu juga sebaliknya. Contoh relasi satu - satu
ditunjukkan pada Gambar berikut.

Gambar Kardinalitasi 1 pada 1

Penjelasan dari gambar di atas adalah entitas suami hanya memiliki relasi 1
terhadap entitas istri. Jika digambarkan dalam bentuk tabel, maka tabelnya adalah
sebagai berikut:
Tabel suami, untuk merepsentasikan entitas suami ditunjukkan pada Gambar
berikut.

Gambar Tabel Suami.


Tabel istri, untuk merepresentasikan entitas istri ditunjukkan pada Gambar berikut.

Gambar Tabel Istri


Perhatikan kedua tabel di atas dengan seksama, pada tabel istri pada kolom NIP,
satu orang istri hanya berisi satu nip saja, bukan 2 atau lebih.

15
c.Menentukan Kardinalitas (Derajat Relasi) Pada Hubungan Antar Entitas
Terdapat beberapa analisa dalam menentukan kardinalitas antar entitas.
Berikut contoh dalam menentukan kardinalitas:
1. Misalkan menentukan kardinalitas pada sistem penilaian belajar yang di
dalamnya terdapat entitas siswa dan matapelajaran. Kita bisa menggunakan
pertanyaan:
• Bolehkah siswa mengambil pelajaran tertentu?
• Matapelajaran manakah yang boleh di ambil atau tidak diambil?
• Adakah kuota jumlah siswa pada mata pelajaran tertentu?
Tentu pertanyaan-pertanyaan tersebut mempunyai jawaban yang
berbeda-beda baik di masing-masing sekolah maupun dimasing-masing
universitas.
2. Jika aturan sekolah mempunyai aturan sebagai berikut :
• Suatu matapelajaran harus diajarkan minimal 1 pengajar dan maximal
banyak pengajar
• Seorang pengajar tidak boleh mengajar lebih dari satu pelajaran.
Maka hubungan kardinalitas entitasnya sebagai berikut:
One to many, karena 1 entitas matapelajaran bisa di ajarkan minimum 1
guru dan maximum n entitas guru, namun sebaliknya 1 entitas guru
minimum bisa mengajar 1 entitas matapelajaran dan maximum hanya 1
matapelajaran.
3. Entitas dengan derajat kardinalitas 1 adalah entitas lemah sehingga entitas
tersebut boleh digabung saja dengan entitas yang kuat (derajat kardinalitas
M).
Misalkan kalimat bolak-balik berikut ini :
“Satu mahasiswa memiliki satu kelas”
“Satu kelas memiliki lebih dari satu (banyak) mahasiswa”

16
Kata (entitas) “KELAS” selalu disebut dengan kata “satu”, sedangkan kata
(entitas) “MAHASISWA” pernah disebut dengan lebih dari satu (banyak).
Maka, di file MAHASISWA boleh berisi atribut KELAS, dan KELAS tidak perlu
menjadi file sendiri.
Gabungan/ kombinasi ketiga bentuk di atas, misalkan many to many to many.
Tapi, di sini tidak akan dibahas secara lebih lanjut. Contoh ditunjukkan pada
gambar berikut :

MAHASISWA M KRS N MT_KULIAH

DNS

DOSEN

Gambar Relasi many to many to many

Penggambaran ER dari kasus di atas (lanjutan dari DFD) dilakukan dengan cara :
(1) Data Store (penyimpan data) yang ada di DFD akan menjadi Entitas di dalam ERD;

(2) Tentukan atribut-atribut (secara logika) yang harus ada di dalam setiap

entitasnya;
(2) Tentukan serajat kardinalitasnya sesuai dengan peraturan yang berlaku di rental

tersebut (dalam hal ini, setiap Penyewa boleh menyewa film lebih dari satu);
(3) Tentukan kunci atribut di setiap entitasnya. Contoh ditunjukkan pada Gambar

berikut.

17
Jalan No_Rmh
Tgl_Pinj
RT/RW
Nama Alamat Jml_Dend Kd_Film
Kota Kd_Pos Tgl_kemb
Jud_Film
M N
No_Ang PENYEWA PINJAM FILM

Kd_Film
Jml_film Stock
Kota No_Ang Jns_Film
Jml_byr Hrg_sewa
No_Kwit

Gambar ERD dari Kasus di Atas

Derajat kardinalitas yang terjadi adalah M : N (many to many). Mengapa


tidak M:M, karena belum tentu “10 orang penyewa pasti menyewa 10 film.”
Karena tidak selalu M = M, maka dipilih M : N saja, jadi, suatu saat M boleh
= N, dan di saat lain boleh M  N.
Cara menentukan many to many-nya adalah dengan membuat dua
kalimat bolak-balik. Derajat kardinalitas kalimat pertama diletakkan di atas,
dan derajat kardinalitas kalimat kedua diletakkan di bawah.
Kalimat pertama : “satu orang penyewa boleh pinjam satu atau lebih
(judul) film.”

1 M
PENYEWA PINJAM FILM

Gambar . representasi kalimat pertama

Kalimat kedua : “satu (judul) film boleh dipinjam oleh satu atau lebih
penyewa”

18
1 M
PENYEWA PINJAM FILM
M 1

Gambar representasi kalimat kedua


Di antara derajat kardinalitas yang berada di atas dan bawah, dicari yang
terbesar (yang kecil dihapus), maka akan didapatkan M : M yang pada
akhirnya dilambangkan dengan M : N.

6. ERD

Entity Relationship Diagram (ERD) merupakan suatu model untuk menjelaskan


hubungan antar data dalam database berdasarkan objek-objek dasar data yang
mempunyai hubungan antar relasi. ERD dalam bentuk gambar atau simbol yang
mengidentifikasi tipe dari entitas di dalam suatu sistem yang diuraikan dalam data
dengan atributnya, dan menjelaskan hubungan atau relasi diantara entitas tersebut
(Mulyanto, 2008).
ERD dibuat untuk menggambarkan atau membuat model suatu database
dengan diagram yang sederhana sehingga memudahkan dalam membuat sebuah
database yang kompleks maupun yang sederhana. Dengan ERD ini juga akan
memudahkan pengguna dalam hal ini orang yang merancang database tersebut
dalam membuat perubahan didalam database jika sewaktu-waktu terjadi. Banyak
tools perancangan basis data menggunakan konsep ini.
Ada sejumlah konvensi mengenai Notasi ERD. Notasi klasik sering digunakan
untuk model konseptual. Berbagai notasi lain juga digunakan untuk menggambarkan
secara logis dan fisik dari suatu basis data, salah satunya adalah IDEF1X. Contoh ERD
ditunjukkan pada gambar berikut.

19
Gambar Contoh ERD

a.Komponen Penyusun ERD


Salah satu cara dalam pemodelan ERD adalah harus membuat gambar simbol
dan beberapa notasi yang menunjukkan makna desain ERD yang terdiri dari Entitas,
Atribut, dan juga Relasi.
a. Entitas
Entitas atau Entity merupakan suatu objek unik dan dapat diwujudkan ke dalam
basis data. Dalam proses visualisasi ERD, simbol entitas biasanya diwujudkan
dalam bentuk persegi panjang dalam posisi horizontal.
b. Atribut
Atribut berfungsi untuk memberikan informasi yang lebih rinci mengenai entitas,
hal ini dikarenakan setiap entitas memiliki elemen yang berfungsi memberikan
deskripsi karakteristik. Atribut digambarkan dengan simbol elips.
c. Relasi
Relasi atau Relationship (hubungan) adalah pola yang dipergunakan dalam ERD
dalam menghubungkan antar entitas, umumnya digambarkan dalam bentuk garis
lurus di mana kedua ujungnya menyentuh simbol-simbol entitas sebagai tanda
penghubung.

20
Komponen – komponen lebih lengkap mengenai ERD ditunjukkan pada gambar
berikut sebagai berikut.

Gambar Notasi ERD

b.Contoh penerapan ERD


Penerapan ERD ditunjukkan pada gambar berikut. Gambar tersebut menjelaskan
mengenai hubungan entitas mahasiswa yang mengambil KRS berdasarkan sajian
mata kuliah.

21
Gambar Contoh Penerapan ERD

Umumnya urutan metodologi ERD dapat dijelaskan secara singkat pada tabel berikut
:
1. Penentuan entitas Menentukan peran, kejadian, lokasi, dan
konsep bagaimana menggunakan
penyimpanan data
2. Penentuan relasi Menentukan hubungan antar-pasangan
entitas dengan matriks relasi

3. Gambar ERD sementara Entitas digambarkan dengan kotak,


sedangkan relasi digambarkan dengan
garis

4. Isi kardinalitas Menentukan banyaknya kejadian suatu


entitas untuk kejadian entitas yang
berhubungan
5. Penentuan primary key Menentukan atribut yang digunakan
untuk mengidentifikasikan satu dan hanya
satu kejadian pada setiap entitas
6. Penggambaran ERD berdasarkan Menghilangkan relasi many to many dan
kunci memasukkan primary dan kunci tamu
pada masing-masing entitas
7. Penentuan atribut Menentukan field-field yang diperlukan
sistem
8. Pemetaan atribut Memasangkan atribut dengan entitas
yang sesuai
9. Penggambaran ERD dengan Mengatur ERD dari langkah 6 dengan
atribut menambahkan entitas atau relasi yang
ditemukan pada langkah 8
22
10. Periksaan atau evaluasi hasil ERD sudah menggambarkan sistem yang
akan dibangun atau belum

7. Normalisasi Basis Data

Normalisasi adalah suatu teknik untuk mengorganisasi data ke dalam


tabel-tabel untuk memenuhi kebutuhan pemakai di dalam suatu organisasi.
Tujuan dari normalisasi itu sendiri antara lain untuk menghilangkan kerangkapan
data, untuk mengurangi kompleksitas, dan untuk mempermudah pemodifikasian
data. Normalisasi merupakan teknik analisis data yang mengorganisasikan
atribut-atribut data dengan cara mengelompokkan sehingga terbentuk entitas
yang non-redundant, 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.
Setiawan (2015) mengungkapkan bahwa normalisasi adalah proses
mendesain struktur Database dan teknik analisis data yang mengorganisasikan
atribut data dengan cara mengelompokkan sehingga terbentuk entitas yang
non-redundant, stabil, serta fleksibel sehingga menghasilkan sebuah table yang
normal. Ada juga yang berpendapat normalisasi adalah proses penyusunan tabel
– tabel yang tidak redundan (dobel), yang dapat menyebabkan anomali yaitu
proses basis data yang memberikan efek samping yang tidak diharapkan
(misalnya menyebabkan data tidak konsisten atau membuat data hilang ketika
data yang lain dihapus).
Normalisasi database biasanya difungsikan untuk memastikan bahwa
database yang dibuat berkualitas sangat baik. Tahap Normalisasi dimulai dari
tahap paling ringan (1NF) hingga yang paling ketat (5NF). Biasanya hanya sampai
23
pada tingkat 3-NF (Bentuk Normal Ketiga) , karena sudah cukup memadai untuk
menghasilkan tabel-tabel yang berkualitas baik. Selanjutnya merancang DAD
dengan Program EasyCase yang disebut juga Diagram Alir Data (DAD) yang terdiri
dari: Diagram Context (DAD Konteks Sistem), terkadang ada yang menyebut
diagram konteks sebagai diagram level 0 sampai Diagram Level (level 0, 1, 2, 3,
dst), dapat digambarkan dengan program case tool disertai Kamus Aliran Data
yang mendeskripsikan data yang mengalir dalam aliran data.
Jika data dalam database tersebut belum di normalisasi maka akan terjadi 3
kemungkinan yang akan merugikan sistem secara keseluruhan:
1. INSERT Anomali : Situasi dimana tidak memungkinkan memasukkan beberapa
jenis data secara langsung di database.
2. DELETE Anomali: Penghapusan data yang tidak sesuai dengan yang
diharapkan, artinya data yang harusnya tidak terhapus mungkin ikut
terhapus.
3. UPDATE Anomali: Situasi dimana nilai yang diubah menyebabkan
inkonsistensi database, dalam artian data yang diubah tidak sesuai dengan
yang diperintahkan atau yang diinginkan.

Adapun tujuan kita melakukan proses normalisasi database :


1. Untuk menghilangkan dan mengurangi redudansi data
2. Memastikan dependensi data (Data berada pada tabel yang tepat).
3. Mengeliminasi adanya duplikasi informasi,
4. Memudahkan pengubahan struktur tabel,
5. Memperkecil pengaruh perubahan struktur database.

Proses Normalisasi antara lain:


• Data diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan
persyaratan tertentu ke beberapa tingkat.

24
• Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel
tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai
memenuhi bentuk yang optimal.
Tahapan Normalisasi menurut Setiawan (2015) antara lain:
1. Bentuk Tidak Normal
Bentuk ini iyalah kumpulan data yang akan direkam, tidak ada
keharusan mengikukti format tertentu, bisa saja data tidak lengkap atau
terduplikasi (rangkap). Contoh pada Tabel berikut yaitu Pelanggan Biaya
sebagai berikut:
No_pela Nomor Alamat Nama_p
Nama Tgl_pinjam Tgl_selesai Biaya No_pemilik
nggan property property emilik

CR76 Badi PG4 Jl.Aai/07, 1-Jul-93 31-Aug-95 350 CO40 Ewin

Jakarta

PG16 Jl. Huzai/12, 1-Sep-96 1-Sep-96 450 CO93 Durki

Jakarta

CR56 Siraju PG4 Jl.Aai/07, 1-Sep-92 10-Jun-93 350 CO40 Ewin

ddin Jakarta

PG36 Jl. Azhar /49, 10-Oct-93 1-Dec-94 375 CO93 Durki

Jakarta

PG16 Jl. Huzai/12, 1-jan-95 10-Aug-95 450 CO93 Durki

Jakarta

Tabel Pelanggan Biaya

Untuk mentransformasikan tabel yang belum ternomalisasi di atas menjadi


tabel yang memenuhi kriteria 1NF adalah kita harus merubah seluruh atribut yang
multivalue menjadi atribut single value, dengan cara menghilangkan repeating
group pada tabel di atas. Repeating Group (elemen data berulang) adalah

25
(No_Property, Alamat_Property,Tgl_Pinjam, Tgl_Selesai, Biaya, No_Pemilik,
Nama_Pemilik).

a.Bentuk Normal Pertama (1NF)

Ciri-cirinya adalah Setiap data di bentuk dalam flat file dan Tidak ada set
atribut yang berulang –ulang. Membentuk sebuah tabel menjadi Un-Normalized,
dengan mencantumkan data yang ada pada semua field. Membentuk Normal
Pertama (1 Normal First) dengan flat table yang memisahkan data pada field-field
yang tepat bernilai atomik, dan yang melengkapi atribut/ field yg ada.
Syarat normal ke satu (1-NF) antara lain:
• Pada setiap data dibentuk dalam sebuah flat file, data dibentuk dalam satu
demi satu record, nilai dari field itu berupa “atomic value”.
• Tidak ada set atribute yang berulang(duplikat).
• Ditentukannya primary key untuk tabel / relasi.
• Tiap atribut hanya memiliki satu pengertian.
Langkah pertama yang dilakukan pada Tabel Pelanggan Biaya (pada Tabel
1) tersebut adalah menghilangkan elemen data yang berulang dengan data-data
Pelanggan yang sesuai pada setiap baris. Hasil dari tabel yang telah memenuhi
bentuk normal pertama dapat dilihat pada Tabel 2. kita dapat mengidentifikasi
primary key untuk relasi Pelanggan_Biaya yang masih memiliki composite key
(No_Pelanggan, No_Property).
Pada kasus ini kita akan memperoleh primary key yang bersifat composite
key. Relasi Pelanggan_Biaya dapat didefinisikan sebagai berikut. Pelanggan_Biaya
=(No_Pelanggan, No_Property, Nama, Alamat_Property, Tgl_Pinjam, Tgl_Selesai,
Biaya,No_Pemilik, Nama_Pemilik). Berikut ditunjukkan pada gambar berikut.

No_pela Nomor Alamat Nama_p


Nama Tgl_pinjam Tgl_selesai Biaya No_pemilik
nggan property property emilik

26
CR76 Badi PG4 Jl.Aai/07, 1-Jul-93 31-Aug-95 350 CO40 Ewin

Jakarta

CR56 Siraju PG36 Jl. Azhar /49, 10-Oct-93 1-Dec-94 375 CO93 Durki

ddin Jakarta

CR56 Siraju PG4 Jl. Huzai/12, 1sEP-95 10-Jun-93 350 CO40 Ewin

ddin Jakarta

Gambar contoh tabel

b.Bentuk Normal Kedua (2NF)

Bentuk normal kedua ini iyalah didasarinya atas konsep full functional
dependency(ketergantungan fungsional sepenuhnya) yang dapat didefinisikan.
Syarat normal kedua (2-NF) sebagai berikut.
• Bentuk data ini telah dapat memenuhi kriteria bentuk normal yang
pertama.
• Atribute bukan Primary key (bukan kunci utama) haruslah memiliki
ketergantungan fully functional dependency (fungsional sepenuhnya) pada
primary key.
Adapun kita bisa melakukan Bentuk normal kedua (2NF) jika :
1. Harus telah berbentuk normal pertama (1NF).
2. Pada sebuah tabel semua atribut yang tidak termasuk dalam primary key
memiliki ketergantungan fungsional pada primary key secara utuh. Suatu
atribut dikatakan ketergantungan fungsional jika harga pada atribut
tersebut menentukan harga dari atribut yang lain.
No_pelanggan Nomor property Tgl_pinjam Tgl_selesai

CR76 PG4 1-Jul-93 31-Aug-95

27
CR76 PG16 1-Sep-95 1-Sep-96

CR56 PG416 1-Jan-95 10-Aug-95

CR56 PG36 10-Oct-93 1-Dec-94

CR56 PG4 1sEP-95 10-Jun-93

Nomor Alamat
No_pelanggan Nama Biaya No_pemilik Nama_pemilik
property property

CR76 Badi PG4 Jl.Aai/07, 350 CO40 Ewin

Jakarta

CR76 Badi PG16 Jl. 450 CO93 Durki

Huzai/12,

Jakarta

CR56 Siraju PG416 Jl.Aai/07, 450 CO93 Durki

ddin Jakarta

CR56 Siraju PG36 Jl. Azhar 375 CO93 Durki

ddin /49,

Jakarta

CR56 Siraju PG4 Jl. 350 CO40 Ewin

ddin Huzai/12,

Jakarta

Gambar contoh bentuk tabel N2

c.Bentuk Normal Ketiga (3NF)

28
Walaupun relasi 2-NF memiliki redudansi yang lebih sedikit dari relasi
1-NF, namun relasi tersebut masih mendapat kemungkinan mengalami kendala
bila terjadi anomaly peremajaan (update) terhadap relasi tersebut.
Syarat normal ketiga (Third Normal Form / 3 NF) sebagai berikut:
• Bentuk data ini telah dapat memenuhi kriteria bentuk normal yang kedua.
• Atribute bukan primary key harus tidak memiliki ketergantungan pada
transitif, artinya suatu atribut bukan primary key itu tidak boleh memiliki
ketergantungan fungsional (functional dependency) pada atribut yang
bukan Primary key lain, seluruh atribut bukan primary key pada suatu
relasi hanya memiliki ketergantungan fungsional terhadap primary key
yang di relasikan saja.
Berikut contoh penerapan 3NF :
No_pelangga Nomor Alamat Nama_pemili
Nama Biaya No_pemilik
n property property k

CR76 Badi PG4 Jl.Aai/07, 350 CO40 Ewin

Jakarta

CR76 Badi PG16 Jl. Huzai/12, 450 CO93 Durki

Jakarta

CR56 Siraju PG416 Jl.Aai/07, 450 CO93 Durki

ddin Jakarta

CR56 Siraju PG36 Jl. Azhar /49, 375 CO93 Durki

ddin Jakarta

CR56 Siraju PG4 Jl. Huzai/12, 350 CO40 Ewin

ddin Jakarta

No_pemilik Nama_pemilik

CO40 Ewin

CO93 Durki

29
Gambar contoh bentuk tabel N3

d.Bentuk Normal Boyce-Codd (BCNF)


Menghilangkan Ketergantungan Multivalue
e.Bentuk Normal Keempat (4NF)
Syarat 4-NF iyalah:
• Bila dan hanya bila telah berada dalam bentuk BCNF dan tidak ada
multivalued dependency nontrivial.
• Multivalued dependency (MVD) dipakai dalam bentuk normal keempat (
4NF ).
• Dependensi ini dipakai untuk menyatakan hubungan satu ke bantak (one
to many).
f.Bentuk Normal Kelima (5NF)
Dependensi gabungan mendasari bentuk pada normal kelima. Suatu
relasi R ( X,W,Z)dapat memenuhi dependensi gabungan dan jika gabungan
dari proyeksi A, B, C dengan A, B, C merupakan sub sub himpunan dari atribut
– atribut R. Dependensi gabungan di atas sesuai dengan notasi beikut :
• (A, B, C )
• dengan A = XY, B = YZ, C = ZX

8. Pembuatan Basis Data

Database adalah sebuah media utama yang harus dibuat dalam membangun
sebuah basis data agar nantinya dapat kita letakkan beberapa tabel dengan
field-fieldnya. Perintah yang digunakan untuk menciptakan database pada MySQL
dengan Syntax berikut :
CREATE DATABASE nama_database;

30
Pada contoh tersebut dibuat database dengan nama us_states untuk melihat
database yang ada pada MySQL dapat menggunakan Syntaks berikut :
SHOW DATABASES;
Contoh:

Setelahnya kita ciptakan tabel. Tabel adalah obyek utama yang harus ada
pada sebuah basis data karenadi dalamnya semua data akan disimpan. Tabel
terletak padasebuah database, sehingga pembuatan tabel dilakukan setelah

31
sebuah data asetelah dibuat. Dalam tabel terdapat baris dan kolom. Baris
diistilahkan dengan recordset dan kolom dengan field.

Untuk membuat sebuah tabel atau lebih, database harus diaktifkan dulu
karena tabel akan dimasukkan ke dalam database yang akan diaktifkan. Syntaks
untuk mengaktifkan Database adalah:
USE nama_database;
Contoh :
MySQL> use pendaftaran;
Database changed
Setelah masuk ke dalam database anda dapat membuat sebuah tabel atau lebih.
Untuk membuat tabel dapat menggunakan syntaks di bawah ini:
CREATE TABLE nama_tabel ( field-1 type(length), field-2 type(length),
field-3 type(length), …… ….(….));
Contoh:
MySQL> create tabledata_diri (
-> no int(3),
-> nama varchar(35),
-> alamat varchar(60),
-> email varchar(40),
-> no_telepon varchar(15),
-> sex char(1));

32
Query OK,0 rows affected (0.08 sec)

Pada contoh diatas, query OK menyatakan bahwa pembuatan tabel dengan


nama data_diri berhasil dibuat, untuk melihat tabel yang ada pada database dapat
menggunakan Syntaks berikut:
SHOWTABLES;
Contoh:

B.Sumber :

Materi dalam sumber belajar ini disusun/ dirujuk/ diadaptasi/ disalin/ disarikan dari :
1. http://lib.mdp.ac.id/ebook/Karya%20Umum/Diktat_Sistem_Basis_Data.pdf
2. http://www.slideshare.net/edysmartnow/arsitektur-model-basis-data : Bahan
Ajar Arsitektur dan Model Basis Data. Universitas Pendidikan Ganesha. Oleh
Darmawiguna, I Gede Mahendra.
3. http://power.lecture.ub.ac.id/files/2015/03/Modul-Basis-Data-I-2-Model-Data.p
df. : Modul Database Model Data. Universitas Brawijaya.
4. http://eprints.dinus.ac.id/6320/1/c-2-SBD.pdf. : Sistem Basis Data. Oleh: Salam,
Abu.
5. http://pbsabn.lecture.ub.ac.id/2012/05/hierarki-data-data-hierarchy/: Hierarki
Data. Oleh Santoso, Purnomo Budi.
6. Widyaningtyas, Triyanna. 2013. Materi Pengantar Basis Data. Universitas Negeri
Malang
7. Mulyanto. 2008. Rekayasa Perangkat Lunak. Kemdikbud
8. Widyaningtyas, Triyanna. 2012. Bahan Ajar Basis Data Relasional. Universitas
Negeri Malang
33
9. http://www.infokah.com/cara-membuat-erd-tahapan-dan-studi-kasus/ : Cara
Membuat ERD Tahapan dan Studi Kasus.
10. http://ruherdi.blogspot.co.id/2013/06/kardinalitas-dalam-erd.html: Kardinalitas
Dalam ERD.
11. https://www.academia.edu/5734373/Dfd_erd_kardinalitas_normalisasi_.DOC?a
uto=download: Behavior Models, Specifying User’s Expectations, Oleh Kowal,
James
12. http://www.gurupendidikan.com/pengertian-basis-data-dan-normalisasi-lengka
p: Pengertian Basis Data dan Normalisasi Lengkap. Diakses pada 13 Juli 2016.
Oleh: Setiawan Parta.

34

Anda mungkin juga menyukai