Pemodelan data merupakan teknik untuk mendefinisikan persyaratan bisnis untuk sebuah
database. Pemodelan data menggunakan Entity Relationship Diagram (ERD) untuk menjelaskan data dalam konteks entitas dan hubungan yang digambarkan oleh data tersebut. ERD memungkinkan perekayasa perangkat lunak mengidentifikasi objek data dan hubungannya dengan menggunakan notasi grafis. Pada konteks analisis terstruktur, ERD menetapkan semua data yang dimasukkan, ditransformasi, dan diproduksi pada suatu aplikasi.
Entity Relationship Diagram (ERD) merupakan gambaran sistematis model data yang berisi himpunan entitas dan himpunan relasi yang masing-masing dilengkapi dengan atribut-atribut yang merepresentasikan seluruh fakta. Berikut adalah notasi-notasi yang digunakan dalam ERD.
1. Entitas
Entitas merupakan sesuatu yang diperlukan bisnis untuk menyimpan data. Entitas merupakan sesuatu atau objek di dunia nyata yang dapat dibedakan dari sesuatu atau objek lainnya. Entitas dapat berupa orang, tempat, objek, peristiwa, dan konsep. Entitas disimbolkan dengan persegi panjang seperti diperlihatkan pada Gambar 2.5.
Entitas
2. Atribut
Atribut merupakan sifat atau karakteristik deskriptif suatu entitas. Simbol untuk menyatakan suatu atribut biasa diperlihatkan pada Gambar 2.6.
Gambar 2.6 Simbol Atribut Biasa Atribut dapat dibagi secara logis menjadi tiga jenis, yaitu: a. Atribut Komposit
Atribut komposit merupakan atribut yang dapat dipecah menjadi atribut-atribut lainnya. Simbol atribut komposit diperlihatkan pada Gambar 2.7.
Gambar 2.7 Simbol Atribut Komposit
b. Atribut Bernilai Banyak
Atribut berniali banyak merupakan atribut yang memiliki nilai lebih dari satu untuk suatu entitas tertentu. Simbol atribut bernilai banyak diperlihatkan pada Gambar 2.8.
Gambar 2.8 Simbol Atribut Bernilai Banyak c. Atribut Turunan
Atribut turunan merupakan atribut yang nilainya bisa didapatkan dari atribut yang lainnya. Simbol atribut turunan diperlihatkan pada Gambar 2.9.
Gambar 2.9 Simbol Atribut Turunan 3. Hubungan (relation)
Hubungan merupakan asosiasi bisnis alami antara satu entitas atau lebih. Hubungan dapat menyatakan kejadian yang menghubungkan entitas atau hanya persamaan logika yang ada di antara entitas. Hubungan selalu dibaca dari entitas induk (yang memiliki kardinalitas minimum) ke entitas anak (yang memiliki kardinalitas maksimum). Simbol hubungan diperlihatkan pada Gambar 2.10.
Gambar 2.10 Simbol Hubungan
Di dalam ERD terdapat tingkatan hubungan antar entitas dilihat dari segi banyak atau tidaknya hubungan antar entitas tersebut. Hal ini disebut konsep kardinalitas. Kardinalitas merupakan spesifikasi dari sejumlah peristiwa dari satu objek yang dapat dihubungkan ke sejumlah peristiwa dari objek yang lain. Kardinalitas mendefinisikan jumlah maksimum dari hubungan objek yang ikut serta didalam sebuah hubungan. Tetapi tidak memberikan sebuah indikasi apakah objek data tertentu harus berpartisipasi didalam hubungan atau tidak. Kardinalitas relasi yang terjadi diantara dua himpunan entitas dapat berupa:
1. Satu ke satu (1:1)
Suatu kejadian dari entitas ‘A’ dapat berhubungan dengan satu dan hanya satu kejadian pada entitas ‘B’ dan sebuah kejadian dari entitas ‘B’ hanya dapat berhubungan dengan satu kejadian pada entitas ‘A’.
2. Satu ke banyak (1:N)
Suatu kejadian dari entitas ‘A’ dapat berhubungan dengan satu atau lebih kejadian dari entitas ‘B’, tetapi sebuah kejadian dari entitas ‘B’ hanya dapat berhubungan dengan satu kejadian dari entitas ‘A’.
Suatu kejadian dari entitas ‘A’ dapat berhubungan dengan satu atau lebih kejadian dari entitas ‘B’, sementara sebuah kejadian dari entitas ‘B’ dapat berhubungan dengan satu atau lebih kejadian dari entitas ‘A’.
Modalitas mendefinisikan jumlah minimum dari hubungan objek yang ikut serta dalam sebuah hubungan. Modalitas dari suatu hubungan adalah 0 (nol) jika tidak ada kebutuhan eksplisit untuk hubungan yang terjadi atau hubungan tersebut bersifat opsional. Modalitas bernilai satu jika suatu kejadian dari hubungan merupakan perintah.
Karena semua hubungan bersifat dua arah, maka kardinalitas dan modalitas harus didefinisikan untuk setiap hubungan. Notasi grafis yang digunakan untuk menggambarkan kardinalitas dan modalitas diperlihatkan pada Tabel 2.1.
Tabel 2.1 Notasi Kardinalitas dan Modalitas
2.7 Normalisasi
Elemen-elemen data dipelajari untuk membuat struktur database menjadi lebih efisien. Proses ini disebut normalisasi yang tugasnya adalah menyesuaikan data sehingga memenuhi serangkaian bentuk-bentuk normal.
Normalisasi dapat dipahami sebagai tahapan-tahapan yang masing-masing berhubungan dengan bentuk normal. Bentuk normal adalah keadaan relasi yang dihasilkan dengan menerapkan aturan sederhana berkaitan dengan konsep kebergantungan fungsional
Interpretasi Modalitas Kardinalitas Notasi Grafis
Tepat satu 1 1
Nol atau satu 0 1
Satu atau lebih 1 > 1
Nol, satu atau lebih 0 > 1
(functional dependency) pada relasi yang bersangkutan. Secara garis besar, tahapan normalisasi adalah sebagai berikut:
1. Bentuk Normal Pertama (1NF/First Normal Form)
Bentuk normal pertama adalah suatu bentuk relasi dimana atribut bernilai banyak (multivalues attribute) telah dihilangkan sehingga akan dijumpai nilai tunggal pada perpotongan setiap baris dan kolom pada tabel.
2. Bentuk Normal Kedua (2NF/Second Normal Form)
Semua kebergantungan fungsional yang bersifat sebagian (partial functional dependency) telah dihilangkan dengan cara membuat field bukan kunci (non key field) bergantung sepenuhnya pada field kunci (primary key).
3. Bentuk Normal Ketiga (3NF/Third Normal Form)
Semua kebergantungan transitif (transitive dependency) telah dihilangkan dengan cara membuat field yang masih bergantung pada field lain hanya bergantung pada primary key.
4. Bentuk Normal Boyce-Codd (BCNF/Boyce Codd Normal Form)
Semua anomali yang tersisa dari hasil penyempurnaan kebergantungan fungsional telah dihilangkan.
5. Bentuk Normal Keempat (4NF/Fourth Normal Form)
Semua kebergantungan bernilai banyak (multivalued dependencies) telah dihilangkan.
6. Bentuk Normal Kelima (5NF/Fifth Normal Form)
Pada bentuk 5NF, semua anomali yang tertinggal telah dihilangkan.
Langkah-langkah normalisasi terus dilakukan dalam tahapan analisis model data sehingga tidak ditemukan anomali-anomali lagi (baik anomali penyisipan, penghapusan, maupun pembaharuan). Pada praktiknya, normalisasi hingga 3NF seringkali sudah cukup memadai untuk menghilangkan anomali-anomali tersebut, namun bentuk BCNF, 4NF dan 5NF juga dilakukan untuk lebih mengefisienkan perancangan database. Tetapi tidak ada standar baku sampai sejauh mana perlu melaksanakan langkah-langkah normalisasi.