DAFTAR ISI
Daftar Isi ………...……………………………………....…….........................…
Kata
Pengantar………...……………………………....………..................………
Pendahuluan ………...…………………………….....……....................…………
Basisdata ………...……………………………….………….........................……
Pengertian
Basis data ………...…………………..………...........…………………
Hikari
Data ………...…………………………..………….........................………
Model
Koseptual Basis Data ………...………………………………………………
Relasi
(Relastion) ………...…………………………………............………………
Field (Atribut) Kunci………...……………………………….............………………
Key ………...…………………………………………………................................
Domain ………...…………………………………………………...........................
Kamus
Data (Data Dictionary) ………...………………………………..……………
Pendefinisian
Data Element dalam Kamus Data ………...………..................………
Implementasi
Kamus Data ………...………………………………………….………
Kebergantungan
Fungsi ………...…………………………………....……….………
Teknik
Normalisasi ………...……………………………………...........….…………
Tahapan
Normalisasi ………...……………………………………........…..…………
Penerapan
Bentuk Normalisasi ………...………………………………..………….
Referensi ………...………………………………………………............................……
KATA PENGANTAR
Rasa syukur yang
dalam kami sampaikan ke hadiran Tuhan Yang Maha Pemurah, karena berkat
kemurahanNya makalah ini dapat kami selesaikan sesuai yang diharapkan. Dalam
makalah ini kami membahas “Relational Model & Ketergantungan
Fungsi”.
Makalah ini
dibuat dalam rangka syarat penilai dengan mata kuliah “SISTEM BASIS DATA” , dan
diharapkan dapat memberikan pengetahuan mengenai Relation Model dan Ketergantungan Fungsi.
Demikian makalah
ini Kami buat semoga bermanfaat,
Jakarta,
20 april 2012
Kelompok 3
“Relational
Model & Ketergantungan Fungsi”
Pendahuluan
Perancangan merupakan suatu hal yang sangat penting dalam pembuatan basis
data. Permasalahan yang dihadapi pada waktu perancangan yaitu bagaimana basis
data yang akan dibangun ini dapat memenuhi kebutuhan saat ini dan masa yang
akan datang. Untuk itu diperlukan perancangan basis data baik secara fisik
maupun secara konseptualnya. Perancangan konseptual akan menunjukkan entity dan
relasinya berdasarkan proses yang diiginkan oleh organsisasinya. Untuk
menentukan entity dan relasinya perlu dilakukan analisis data tentang informasi
yang ada dalam spesifikasi di masa yang akan datang.
Suatu basis data dibangun berdasarkan kebutuhan informasi dalam
suatu organisasi, oleh sebab itu pada umumnya perancangan basis data dimulai dari pengamatan kebutuhan informasi. Proses perancangan basis
data , dibagi menjadi 3 tahapan yaitu :
1. Perancangan
basis data secara konseptual, tahapan ini merupakan upaya untuk membuat
model yang masih bersifat konsep..
2. Perancangan
basis data secara logis, merupakan tahapan untuk memetakan model konseptual
kemodel basis data yang akan dipakai (modal relasional, hirarkis, atau
jaringan). Perancangan ini tidak bergantung pada DBMS yang akan dipakai, itulah
sebabnya perancangan basis data secara logis terkadang disebut pemetaan model
data.
3. Perancangan
basis data secara fisis, merupakan tahapan untuk menuangkan perancangan
basis data yang bersifat logis menjadi basis data fisis yang tersimpan pada
media penyimpanan eksternal (yang spesifik terhadap DBMS yang dipakai ).
Basisdata
Beberapa pengertian basisdata :
ü Basisdata merupakan
kumpulan tabel-tabel atau
files yang saling berelasi.
ü
Basisdata merupakan kumpulan data non-redundant
yang dapat digunakan bersama (shared) oleh system aplikasi yang berbeda atau basis data merupakan kumpulan data non
redundant yang saling terkait satu sama lainya yang dinyatakan oleh atribut-atribut kunci dari table-tabelnya.
Karena tidak semua
pengguna basisdata terlatih dengan baik dan penggunanya terbagi dalam beberapa
tingkatan, maka kompleksitas basisdata akan tersembunyi dari para penggunanya
melalui beberapa level abstraksi data, yaitu :
·
Level
Fisik : merupakan tingkatan terendah dalam
abstraksi data yang menunjukkan bagaimana data disimpan, yang pada umunya tidak
terlihat oleh oleh pengguna atau programmer aplikasinya
·
Level
konseptual : mengambarkan data apa saja yang sebenarnya (secara
fungsional) disimpan didalam basisdata beserta relasi-relasinya didalam basisdata, dimana
administrator basisdata (DBA) membangun dan mengolah basisdata, contohnya:
penguna akan mengetahui bahwa data penjualan disimpan didalam tabel-tabel barang, produksi, keuangan,
marketing
·
Level
View : merupakan tingkatan tertinggi, yaitu pengguna aplikasi dan
programmer hanya mengenal struktur data.
Data dapat dinyatakan dalam
bentuk angka, karakter atau simbol, sehingga bila data dikumpulkan dan saling
berhubungan maka dikenal dengan istilah basis data (database) [Ramez2000].
Sedangkan menurut George Tsu-der Chou basis data merupakan
kumpulan informasi bermanfaat yang diorganisasikan ke dalam aturan yang khusus.
Informasi ini adalah data yang telah diorganisasikan ke dalam bentuk yang
sesuai dengan kebutuhan seseorang [Abdul1999].
Menurut Encyclopedia of
Computer Science and Engineer, para ilmuwan di bidang informasi menerima
definisi standar informasi yaitu data yang digunakan dalam pengambilan
keputusan.
Definisi lain dari basis data
menurut Fabbri dan Schwab adalah sistem berkas terpadu yang dirancang terutama
untuk meminimalkan duplikasi data.
Menurut
Ramez Elmasri mendefinisikan basis data lebih dibatasi pada arti implisit yang
khusus, yaitu:
a. Basis data merupakan penyajian suatu aspek dari dunia
nyata (real world).
b. Basis data merupakan kumpulan data dari berbagai sumber
yang secara logika
mempunyai arti implisit.
Sehingga data yang terkumpul secara acak dan tanpa
mempunyai arti, tidak dapat disebut basis
data.
c. Basis data perlu dirancang, dibangun dan data
dikumpulkan untuk suatu tujuan.
Basis
data dapat digunakan oleh beberapa user dan beberapa aplikasi yang
sesuai dengan kepentingan user.
Dari
beberapa definisi-definisi tersebut, dapat dikatakan bahwa basis data mempunyai
berbagai sumber data dalam pengumpulan data, bervariasi derajat interaksi
kejadian dari dunia nyata,dirancang dan dibangun agar dapat digunakan oleh
beberapa user untuk berbagai kepentingan [Waliyanto2000]
Hirarki
Data
Data
diorganisasikan kedalam bentuk elemen data (field), rekaman (record),
dan berkas (file).
Definisi
dari ketiganya adalah sebagai berikut:
- Elemen data adalah satuan data terkecil yang tidak dapat dipecah lagi menjadi unit lain yang bermakna. Misalnya data siswa terdiri dari NIS, Nama, Alamat, Telepon atau Jenis Kelamin.
- Rekaman merupakan gabungan sejumlah elemen data yang saling terkait. Istilah lain dari rekaman adalah baris atau tupel.
·
Berkas
adalah himpunan seluruh rekaman yang bertipe sama.
Model Konseptual Basisdata
Perancangan model konseptual basis data dalam sebuah organisasi menjadi tugas
dari Administrator basis data. Model konseptual merupakan kombinasi beberapa
cara untuk memproses data untuk beberapa aplikasi. Model konseptual tidak
tergantung pada aplikasi individual, DBMS digunakan, Hardware komputer dan
model fisiknya.
Pada perancangan model konseptual basis data ini penekanan dilakukan pada
struktur data dan relasi antara file. Pada perancangan model konseptual ini
dapat dilakukan dengan menggunakan model data relasional.
Relasi (Relation)
Relasi
Adalah Sekumpulan data yang disimpan secara terstruktur, dan
melakukan operasi-operasi atas data atas permintaan penggunanya.
Basis Data Relasional menggunakan tabel dua dimensi yang terdiri atas baris dan kolom
untuk memberi gambaran sebuah berkas data.
Derajat
Relationship
o Menjelaskan jumlah entity yang
terlibat dalam suatu relationship
- Unary Degree
(Derajat satu) : hanya satu entity yang
terlibat
- Binary Degree
(Derajat dua) : menghubungkan dua entity
- Ternary Degree
(Derajat tiga) : menghubungkan tiga entity
Cardinality
Ratio Constraint
o Menjelaskan batasan jumlah relasi
suatu entity dengan entity lainnya
o Jenis rasio kardinalitas :
- One to one
(1:1)
- One to
many/many to one (1: M / M:1)
- Many to many
(M : N)
o Batasan kardinalitas
- Kardinalitas Minimum Adalah jumlah
minimum instansiasi relasi B yang berasosiasi dengan setiap instansiasi entitas
A
- Kardinalitas Maksimum Adalah jumlah
maksimum instansiasi relasi B yang berasosiasi
dengan setiap instansiasi entitas A
Participation Constraint
o Menjelaskan apakah keberadaan suatu entity tergantung pada hubungannya
dengan entity lain
- Total participation, yaitu keberadaan
suatu entity tergantung pada hubungannya dengan entity lain. Di dalam diagram
ER digambarkan dengan dua garis
penghubung antara entity dengan relationship.
- Partial participations, yaitu
keberadaan suatu entity tidak tergantung pada hubungan dengan entity lain. Di
dalam diagram ER digambarkan dengan satu garis penghubung
antara entity
dengan relationship.
Field (Atribut) Kunci
setiap file selalu terdapat kunci dari file berupa
field atau satu set field yang dapat mewakili record. Misalnya Nomor Pokok
Mahasiswa (NPM) merupakan kunci dari tabel mahasiswa suatu Perguruan Tinggi,
setiap pencarian cukup dengan menyebut nomor mahasiswa tersebut maka dapat
diketahui identitas mahasiswa lainnya seperti nama, alamat dan atribut lainnya.
Nomor Pegawai (NIP) bagi data dosen, NIK untuk data
karyawan, Kode_Kuliah untuk data Mata kuliah, dan lain sebagainya.
Jenis Atribut Pada Entitas
Atribut yang melekat pada suatu entitas ada bermacam
tipe seperti yang akan dijelaskan sebagai berikut :
- Atribut Sederhana : atribut sederhana merupakan atribut atomik yang tidak dapat lagi dipecah menjadi atribut lain. Contoh
Entitas mahasiswa mempunyai
atribut sederhana berupa NIM, Nama Mahasiswa .
- Atribut Komposit : atribut komposit merupakan atribut yang masih dapat dipecah menjadi sub-sub atribut yang masing-masing memiliki arti tersendiri.
Contoh : entitas mahasiswa mempunyai
atribut alamat. Alamat disini dapat dipecah menjadi sub atribut seperti
nama_kota, kode_pos.
- Atribut Bernilai Tunggal : yaitu atribut yang hanya memiliki satu nilai untuk setiap barisnya.
Contoh : entitas mahasiswa
mempunyai atribut NPM, Nama, Alamat isi data dari atribut ini hanya boleh diisi
dengan 1 data. Setiap mahasiswa hanya memiliki 1 NPM, 1 Nama, 1 Alamat.
- Atribut Bernilai Jamak : yaitu atribut yang boleh memiliki lebih dari satu nilai untuk setiap barisnya.
Contoh : entitas mahasiswa mempunyai
atribut Hobby isi data dari atribut ini boleh lebih dari 1 data. Mahasiswa
Roshita memiliki NPM 13402021 beralamat di Jalan Garuda 32 Yogyakarta memiliki
Hobby (Olah Raga, Nyanyi, Masak dan Nonton TV)
- Atribut Harus Bernilai : yaitu atribut yang harus memiliki nilai data untuk setiap barisnya. Biasanya atribut seperti ini sudah ditetapkan dalam perancangan tabelnya sehingga jika dalam pengisian dokosongi akan terjadi kesalahan.
Contoh : entitas mahasiswa
mempunyai atribut NPM dan Nama_Mahasiswa yang harus diisi datanya, sebab jika
tidak diisi akan terjadi kekacauan dalam basis data.
- Atribut Bernilai Null : yaitu atribut yang boleh tidak memiliki nilai data untuk setiap barisnya.
Contoh : entitas mahasiswa
mempunyai atribut Alamat, Hobby, Nama_Pacar yang boleh untuk tidak diisi tetapi
kalau diisi akan lebih baik,
- Atribut Turunan : yaitu atribut yang nilai-nilainya diperoleh dari pengolahan atau dapat diturunkan dari atribut lain yang berkaitan.
Contoh : entitas mahasiswa
mempunyai atribut IPK yang diperoleh dari pengolahan atribut Nilai pada tabel
(entitas Nilai) dengan kode NIM mahasiswa yang sama dan diproses sehingga
menghasilkan IPK untuk mahasiswa yang bersangkutan.
KEY
KEY Adalah sejumlah atribut yang mengidentifikasi
record/baris dalam sebuah relation secara unique.
Beberapa jenis key:
o Super Key : satu atribut atau kumpulan
atribut yang secara unik mengidentifikasi sebuah
record
di dalam relasi atau himpunan dari satu atau lebih entitas yang dapat
digunakan untuk mengidentifikasi secara unik sebuah entitas dalam entitas set.
o Candidate Key : atribut-atribut yang
menjadi determinan yang dapat dijadikan identitas record pada sebuah relation
bisa terdapat satu atau lebih candidate key
o Primary key : candidate key yang menjadi identitas record
karena dapat mengidentifikasi record secara unik / suatu kolom dimana nilai unik digunakan untuk mengidentifikasi setiap baris
di dalam tabel.
Karakteristik Kunci Utama (Primary Key) :
1. Mandatory
2. Unique
3. Stable
4. Short
o Altenate key : candidate key yang
tidak dijadikan primary key
o Composite key : key yang terdiri dari 2 atribut atau lebih.
Atribut-atribut tersebut bila berdiri sendiri tidak menjadi identitas record,
tetapi bila dirangkaikan menjadi satu kesatuan akan dapat mengidentifikasi secara
unik.
o Foreign key : non key atribut pada sebuah relation yang juga menjadi key (primary) atribut di relation lainnya. Foreign key biasanya digunakan sebagai penghubung antara record-record dan kedua relation tersebut / nilai kolom pada suatu tabel yang diperlukan untuk memenuhi nilai kolom dari kunci utama pada tabel lain.
Domain
Domain merupakan koleksi dari segala kemungkinan atas nilai-nilai atribut yang
dimiliki
Domain adalah identifikasi String yang mendifinikasikan wilayah otonomi administrasi, wewenang , atau kontrol di Internet.
Nama Domain dibentuk dengan aturan dan prosedur dari Domain Name System (DNS).
Nama Domain Digunakan dalam konteks berbagai jaringan dan aplikasi spesifik penamaan dan pengalaman tujuan. Secara umum, nama domain merupakan Internet Protocol (IP) / Sumber Daya, Seperti komputer pribadi yang dingunakan untuk mengakses internet, komputer server hosting Situs web, atau situs web itu sendiri atau layanan lain yang dikomunikasikan melalui internet.
Nama domain yang diselenggarakan ditingkat bawahan (sub-Domain) dari DNS Root Domain, yang tak bernama. Set pertama tingkat nama domain adalah top-level domain (TLD), termasuk top-level-domain-generik (gTLD), seperti domain-domain terkemuka com, net,dan, org, dan kode Negara top-level (ccLTDs).
Dibawah ini Domain tingkat atas dalam Hirarki DNS adalah nama Domain tingkat kedua dan ketiga yang biasanya terbuka untuk reservasi oleh penggunaan akhir yang ingin menghubungkan jaringan area lokal ke internet, menciptakan sumber daya internet lainnya yang dapat diakses publik atau menjalankan situs web, pendaftaran nama-nama Domain ini biasanya di kelola oleh pendaftaran nama domain yang menjual jasa mereke kepada publik.
Kamus Data (Data Dictionary)
Kamus data adalah suatu daftar data elemen yang
terorganisir dengan definisi yang tetap dan sesuai dengan sistem, sehingga user
dan analis sistem mempunyai pengertian yang sama tentang input, output, dan
komponen data strore.
Kamus data ini sangat membantu
analis sistem dalam mendefinisikan data yang mengalir di dalam sistem, sehingga
pendefinisian data itu dapat dilakukan dengan lengkap dan terstruktur.
Pembentukan kamus data dilaksanakan dalam tahap analisis dan perancangan suatu
sistem.
Pada tahap analisis, kamus data
merupakan alat komunikasi antara user dan analis sistem tentang data yang
mengalir di dalam sistem, yaitu tentang data yang masuk ke sistem dan tentang
informasi yang dibutuhkan oleh user. Sementara itu, pada tahap perancangan
sistem kamus data digunakan untuk merancang input, laporan dan database.
Pembentukan kamus data di dasarkan atas alur yang terdapat pada DFD. Alur data pada DFD ini bersifat global, dalam arti hanya menunjukan nama alur datanya tanpa menunjukan struktur dari alur data itu. Untuk menunjukan struktur dari alur data secara terinci maka dibentuklah kamus data yang didasarkan pada alur data didalam DFD.
Form Kamus Data
Suatu sistem dapat diuraikan ke dalam 4 form kamus data yang menerangkan isi database sistem dalam bentuk hirarki seperti yang digambarkan sebagai berikut :
Pembentukan kamus data di dasarkan atas alur yang terdapat pada DFD. Alur data pada DFD ini bersifat global, dalam arti hanya menunjukan nama alur datanya tanpa menunjukan struktur dari alur data itu. Untuk menunjukan struktur dari alur data secara terinci maka dibentuklah kamus data yang didasarkan pada alur data didalam DFD.
Form Kamus Data
Suatu sistem dapat diuraikan ke dalam 4 form kamus data yang menerangkan isi database sistem dalam bentuk hirarki seperti yang digambarkan sebagai berikut :
Dari gambar di atas tampak bahwa data flow dan data store ada pada
level tertinggi. Di sini lebih baik menganggap data flow dan data store sebagai
file dari data. Selanjutnya struktur data yang ada pada data flow dan data
store terletak pada level kedua atau middle level. Di sini struktur data
dianggap sebagai record data. Yang terakhir adalah data element yang terletak
pada level terendah, karena data element merupakan bagian dari struktur data.
Di sini data element dianggap sebagai field.
Data Flow Dictionary Entry
Data flow dictionary entry ini menerangkan setiap data flow pada DFD.
Data flow ini dapat berupa:
a. Satu struktur yang terdiri dari satu elemen data
tunggal.
b. Satu struktur yang terdiri dari satu paket elemen
data.
c. Multiple struktur.
Berdasarkan uraian di atas, maka hubungan antara alur data pada DFD dan
alur data pada elemen kamus data adalah one to one relationship (relasi
satu-satu). Jika DFD berisi 40 alur data, maka kamus data harus mempunyai 40
elemen alur data.
Data flow dictionary entry berisi hanya summary data atau data
ringkasan, dan menerangkan alur yang mengidentifikasikan dari mana alur itu
berasal dan kemana alur itu menuju.
Data Store
Dictionary Entry
Data store dictionary enty
menerangkan setiap data store yang unik dalam DFD. Jika data store yang sama
muncul lebih dari satu, maka hanya satu bentuk tunggal yang akan digunakan.
Seperti
halnya data flow dictionary entry, data store dictionary entry hanya berisi
summary data.
Data
Structure Dictionary Entry
Data structure dictionary entry ini dilengkapi dengan setiap
struktur yang ada pada bentuk data store dan data flow.
Tujuan dari data structure
dictionary entry adalah untuk menghubungkan summary description (deskripsi
ringkasan) dari data flow dan data strore dictionary entry ke deskripsi detail
dari data element dictionary entry.
Data Element Dictionary Entry
Data element dictionary entry
menyediakan dasar untuk skema database. Bentuk ini menyediakan data element
dictionary (DED) dari kamus data yang berdasarkan komputer.
Bentuk elemen data digunakan oleh
setiap elemen data, termasuk semua struktur, baik yang ada pada data flow
maupun data store. Hanya bentuk tunggal yang digunakan untuk masing-masing
elemen data, walaupun elemen data itu muncul beberapa kali di dalam sistem.
Tujuan dari data element
dictionary entry adalah untuk menstandarkan deskripsi dari suatu elemen
sehingga elemen itu direferensikan dengan cara yang sama setiap kali digunakan.
Hal ini sangat penting, khususnya jika suatu sistem
dikembangkan dan dimaintain oleh sekelompok user dan information specialists.
Jadi mereka dapat menggunakan istilah yang sama untuk satu elemen yang sama
pula, dan tidak akan ada penggunaan istilah yang berbeda untuk elemen yang
sama.
Pendefinisian Data Elemen Dalam Kamus Data
Kamus
data mendefinisikan data elemen dengan cara :
Ø Menguraikan arti dari alur data
dan data store dalam DFD
Ø Menguraikan komposisi paket data
pada alur data ke dalam alur yang lebih elementary (kecil) contoh : alamat
langganan yang terdiri dari nama jalan, kota dan kode pos.
Ø Menguraikan komposisi paket data
dalam data store.
Ø Menspesifikasikan nilai dan unit
informasi dalam alur data dan data store.
Ø Menguraikan hubungan yang terinci
antara data strore dalam suatu entity relationship diagram (ERD)
Notasi “=“
Elemen data elementary adalah suatu dekomposisi yang tidak
mempunyai arti dalam konteks lingkungan user.
Contoh :
Nama = Nama_Depan + Nama_Belakang
Nama_Depan dan Nama_Belakang dari contoh di atas tidak
mempunyai arti, dan tidak ada komentar yang ditunjukan dengan “* *“
Contoh :
Current_Height = *Unit : 150 Cm*
Notasi “ ( ) “
Berdsarkan contoh di atas dapat diberikan kamus datanya
sebagai berikut :
Nama_Langganan = (Title) + Nama_Depan + (Nama_Tengah) +
Nama_Belakang
Customer_Address = (Shipping_Address) + (Billing_Address)
Notasi “ { } “
Notasi ini digunakan untuk menggambarkan suatu komponen
data secara berulang
Contoh :
Order = Customer_Name + Shipping_Address + 1{item}10
Notasi “ [ ] “
Contoh :
Jenis_Kelamin = [ Pria I Wanita ]
Notasi “ * * “
Contoh
:
Contoh : Data Flow untuk Perhitungan Pajak
Penjualan = *Jumlah penjualan selama satu tahun*
*Dalam ribuan rupiah*
Pajak
rate = *Satuan pajak yang berlaku
ditentukan oleh pemerintah dalam %*
Jumlah
Pajak = *Jumlah pajak yang harus dibayar
hasil perkalian dari sales*
*pajak rate dalam ribuan
rupiah*
Notasi “
Alias “
Contoh :
Client
= Alias untuk customer.
Contoh Kasus :
Ø
Kamus data dari slip
order di atas adalah :
ORDER = TOP
HEADER + ISI + FOOTER
*Slip Order yang valid*
TOP HEADER=
NOMOR+NAMA_LANGGANAN+ALAMAT+TANGGAL_ORDER+
UNTUK_DIKIRIM_PADA_TANG-GAL+
ALAMAT_PENGIRIMAN
NOMOR = *nomor
order terdiri dari 8 digit*
NAMA_LANGGANAN= (Title) + Nama_Depan + Nama_Belakang
ISI = 1{NO+NAMA_BARANG+NOMOR_BARANG+JUMLAH_BARANG
+HARGA_SATUAN+JUMLAH}10
NO =
*Nomor unit dari barang yang diorder*
*maksimum 10 macam setiap order formulir*
NOMOR_BARANG = * 10 digit *
HARGA_SATUAN = * dalam rupiah*
FOOTER =
TOTAL+DISCOUNT+PAJAK+TOTAL_AKHIR
TOTAL =
*Total dari jumlah barang yang diorder*
DISCOUNT = *Jumlah
potongan yang dibentuk untuk pembelian > 3 macam*
PAJAK =
*Jumlah pajak penjualan yang harus dibayar oleh langganan*
*Total dikali persentase pajak penjualan*
TOTAL_AKHIR = *Jumlah yang harus dibayar oleh langganan*
*Total ditambah pajak dikurang discount*
IMPLEMENTASI
KAMUS DATA
Kamus data dapat diimplementasikan dengan menggunakan
beberapa pendekatan, diantaranya :
1. Automatisasi kamus data
2. Manual
kamus data.
3. Hybrid
kamus data.
Automatisasi kamus data
Pembuatan kamus data dapat dilakukan secara automatissasi
dengan menggunakan program kamus data prosessor, yang berfungsi :
Menerima definisi sebagai input yang mendukung alur data,
elemen data, file-file, proses dan memberikan format dan prosedur definisi
contoh :
Paket
ISDOS
Sebagai
paket program kamus data
contoh :
ISFOD
Manual Kamus Data
Kamus data ini dibuat secara manual atau dengan kata lain
pembuatan kamus data ini dilakukan dengan :
ü
Membuat
kartu indeks untuk masing-masing item yang didefinisikan
ü
Menulis
nama item tersebut dan tingkatannya.
ü
menulis
definisi dengan menggunakan operator-operator.
ü
Menggunkan
bagian belakang dari kartu untuk membuat catatan tentang
karakteristik fisik
ü
Membuat
masing-masing satu kartu untuk suatu nama alias
ü
Membuat
satu entry untuk masing-masing satu istilah
ü
Membuat
entry secara berurutan.
Hybrid Kamus Data
Cara lain dalam membuat kamus data adalah dengan
mengembangkan kamus data yang dibuat secara manual dengan menggunakan tool-tool
yang sederhana.
Kebergantungan
Fungsi
Kebergantungan Fungsi didefinisikan sebagai hubungan antara
satu relasi dengan relasi lainnya.
Misalnya :
sebuah relasi R, atribut Y dan R adalah bergantung fungsi pada atribut X dari R
jika dan hanya jika setiap nilai X dalam R punya hubungan dengan tepat satu
nilai Y dalam R (dalam setiap satu waktu). File relasi pegawai atribut berisi : No Pegawai, No KTP, Nama, Tempat
Lahir, Tgl Lahir, Alamat, Kota. Isi dari atribut nama bergantung pada No
Pegawai. Jadi dapat dikatakan bahwa atribut nama bergantung secara fungsi pada
No Pegawai dan Nomor Pegawai menunjukkan secara fungsi nama. jika anda mengetahui
no pegawai maka anda dapat menentukan nama pegawai tersebut.
Isi dari atribut nama bergantung pada No Pegawai.
Jadi dapat dikatakan bahwa atribut nama bergantung secara fungsi pada No
Pegawai dan Nomor Pegawai menunjukkan secara fungsi nama. jika anda mengetahui
no pegawai maka anda dapat menentukan nama pegawai tersebut. Notasi untuk kebergantungan
fungsi ini adalah
Teknik Model Data Relasional ada 2 yaitu :
•
Teknik Normalisasi
•
Teknik Entity Relationship
Namun yang akan dibahas lebih lanjut adalah Teknik Normalisasi.
Teknik Normalisasi
Beberapa pengertian mengenai normalisasi :
Ø Istilah
Normalisasi berasal dari E. F.Codd, salah seorang perintis teknologi basis
data. selain dipakai sebagai metodologi tersendiri untuk menciptakan struktur
tabel 9 relasi) dalam basis data (dengan tujuan utnuk mengurangi kemubaziran
data) , normalisasi terkadang hanya diipakai sebagai perangkat verifikasi
terhadap tabel-tabel yang dihasilkan oleh metodologi lain ( misalnya E-R).
Normalisasi memberikan panduan yang sangat membantu bagi pengembang untuk
mencegah penciptaan struktur tabel yang kurang fleksibel atau mengurangi
keflekxibelan.
Ø Kroenke
mendefinisikan normalisasi sebagai proses untuk mengubah suatu relasi yang
memiliki masalah tertentu ke dalam dua buah relasi atau lebih yang tida
memiliki masalah tersebut. Masalah yang dimaksud oleh kroenke ini sering
disebut dengan istilah anomali.
Ø Normalisasi merupakan sebuah teknik dalam
logical desain sebuah basis data / database, teknik pengelompokkan atribut dari
suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi).
Ø Normalisasi adalah suatu proses memperbaiki / membangun dengan model data
relasional, dan secara umum lebih tepat dikoneksikan dengan model data logika.
Proses normalisasi adalah proses pengelompokan data elemen menjadi
tabel-tabel yang menunjukkan entity dan relasinya. Pada proses normalisasi
dilakukan pengujian pada beberapa kondisi apakah ada kesulitan pada saat
menambah/menyisipkan, menghapus, mengubah dan mengakses pada suatu basis data.
Bila terdapat kesulitan pada pengujian
tersebut maka perlu dipecahkan relasi pada beberapa tabel lagi atau dengan
kata lain perancangan basis data belum optimal.
Tujuan dari normalisasi itu sendiri adalah untuk menghilangkan
kerangkapan data, mengurangi kompleksitas, dan untuk
mempermudah pemodifikasian data.
Tahapan Normalisasi
- Bentuk Normal Kesatu (1 NF / First Normal Form)
Bentuk Bentuk Normal Kesatu mempunyai ciri yaitu
setiap data dibentuk dalam file
flat, data dibentuk dalam satu record demi satu record dan nilai dari field berupa “atomic value”. Tidak
ada set atribut yang berulang ulang atau
atribut bernilai ganda (multi value). Tiap field hanya satu pengertian,
bukan merupakan kumpulan data
yang mempunyai arti mendua. Hanya satu arti saja dan juga bukanlah pecahan kata kata sehingga artinya lain.
Atom adalah zat terkecil yang masih memiliki sifat
induknya, bila dipecah lagi maka
ia tidak memiliki sifat induknya.
Contoh :
Kelas (Kode Kelas, Nama Kelas, Pengajar)
Ini merupakan bentuk 1NF karena tidak ada yang
berganda dan tiap atribut satu
pengetian yang tunggal
Contoh Data :
Mahasiswa (NPM, Nama, Dosen Wali, Semester1,
Semester2 Semester3)
Mahasiswa yang punya NPM, Nama, Dosen Wali
mengikuti 3 mata kuliah. Di sini ada perulangan semester sebanyak 3 kali. Bentuk seperti ini bukanlah
1NF.
2. Bentuk Normal Kedua
(2NF)
Bentuk Normal kedua mempunyai
syarat yaitu bentuk data telah memenuhi kriteria
bentuk Normal Kesatu. Atribut bukan kunci haruslah bergantung secara fungsi pada kunci utama,
sehingga untuk membentuk Normal Kedua haruslah
sudah ditentukan kunci-kunci field. Kunci field harus unik dan dapat mewakili atribut lain yang menjadi
anggotanya. Dari contoh relasi
mahasiswa pada bentuk Normal Kesatu, terlihat bahwa kunci utama adalah NPM. Nama Mahasiswa dan Dosen Wali bergantung pada NPM, Tetapi Kode Semester bukanlah
fungsi dari Mahasiswa maka file siswa
dipecah menjadi 2 relasi yaitu :
Relasi Mahasiswa
dan
Relasi Ambil
Kuliah
3. Bentuk Normal Ketiga (3NF)
Untuk menjadi bentuk Normal
Ketiga maka relasi haruslah dalam bentuk Normal Kedua dan semua atribut bukan
primer tidak punya hubungan yang transitif. Artinya setiap atribut bukan kunci
harus bergantung hanya pada kunci primer secara menyeluruh. Contoh pada bentuk
Normal kedua di atas termasuk juga bentuk Normal Ketiga karena seluruh atribut
yang ada di situ bergantung penuh pada kunci primernya.
Boyce-Codd Normal Form
(BNCF)
Boyce-Codd Normal Form
mempunyai paksaan yang lebih kuat dari bentuk Normal ketiga. Untuk menjadi
BNCF, relasi harus dalam bentuk Normal Kesatu dan setiap atribut dipaksa
bergantung pada fungsi pada atribut super key.
Pada contoh dibawah ini
terdapat relasi Seminar,
Kunci Primer adalah NPM + Seminar.
Siswa boleh mengambil satu atau dua seminar. Setiap seminar membutuhkan 2
pembimbing dan setiap siswa dibimbing oleh salah satu diantara 2 pembimbing
seminar tersebut. Setiap pembimbing hanya boleh mengambil satu seminar saja.
pada contoh ini NPM dan Seminar menunjukkan seorang Pembimbing.
Relasi Seminar
Bentuk Relasi Seminar adalah
bentuk Normal Ketiga, tetapi tidak BCNF karena Kode Seminar masih bergantung
fungsi pada Pembimbing, jika setiap Pembimbing dapat mengajar hanya satu
seminar. Seminar bergantung pada satu atribut bukan super key seperti yang
disayaratakan oleh BCNF. Maka relasi Seminar harus dipecah menjadi dua yaitu :
Penerapan
Bentuk Normalisasi
Proses perancangan basis data dapat dimulai dari
dokumen dasar yang dipakai dalam sistem sesungguhnya. Kadang-kadang basis data
dibentuk dari sistem nyata yang mempunyai bentuk masih belum menggambarkan
entitas-entitas secara baik. Sebagai contoh basis data yang dibangun dari
daftar faktur pembelian sebagai berikut :
Langkah Pertama
Bentuklah menjadi tabel Un-Normalized, dengan
mencantumkan semua field data yang
ada.
Menuliskan semua data yang akan direkam, bagian yang
doubel tidak perlu dituliskan. Terlihat record-record yang tidak lengkap, sulit
untuk membayangkan bagaimana bentuk record yang harus dibentuk untuk merekam
data tersebut.
Langkah Kedua
Ubahlah menjadi bentuk Normal Kesatu dengan
memisahkan data pada field-field yang tepat dan bernilai atomik, juga seluruh
record harus lengkap datanya. Bentuk file masih flat.
Dengan bentuk Normal Kesatu ini telah dapat dibuat
satu file dengan 11 field yaitu No faktur, Kode Suplier, Nama Suplier, Kode
Barang, Nama Barang, Tanggal, Jatuh Tempo, Quntity, Harga, Jumlah, Total.
Namun bentuk Normal Kesatu ini mempunyai banyak
kelemahan diantaranya yaitu :
•
Penyisipan data
Kode Suplier dan Nama
Suplier tidak bisa ditambahkan tanpa adanya transaksi pembelian.
•
Penghapusan data
Jika salah satu record
dihapus maka semua data yang ada di situ akan terhapus juga.
•
Pengubahan data
Data suplier ditulis
berkali-kali (Kode dan Nama). Jika suatu saat terjadi perubahan Nama suplier
maka harus mengganti semua record yang ada data supliernya. Bila tidak maka
akan terjadi inkonsistensi.
•
Redundansi
Field jumlah merupakan
redundansi karena setiap harga dikalikan kuantitas hasilnya adalah jumlah,
sehingga field ini dapat dibuang. Bila tidak maka dapat mengakibatkan
inkonsistensi jika terjadi perubahan harga.
Langkah Ketiga
Pembentukan Normal Kedua dengan mencari field kunci
yang dapat dipakai sebagai patokan dalam pencarian dan yang mempunyai sifat
yang unik. Melihat kondisi dari permasalahn faktur di atas dapat diambil kunci
kandidat sbb :
§ No
faktur
§ Kode
Suplier
§ Kode
Barang
Buatlah tiga tabel dengan kunci tersebut, lihatlah
kebergantungan fungsional field lain terhadap kunci, maka didapatkan tabel sebagai
berikut :
Dengan pemecahan seperti di atas maka sebagian dari
pertanyaan pengujian pada bentuk normal kesatu yaitu masalah penyisipan,
penghapusan dan pengubahan dapat dijawab. Data suplier dapat ditambahkan kapan
saja tanpa harus ada transaksi pembelian.
Namun permasalahan masih ada yaitu pada tabel nota.
§ Field Kuantitas dan Harga tidak
bergantung peenuh pada kunci primer nomor nota, ia juga bergantung fungsi pada
kode barang. Hal ini disebut sebagai kebergantungan yang transitif dan harus
dipisahkan dari tabel.
§ M = redundansi masih terjadi, yaitu
setiap kali satu nota yang terdiri dari 5 macam barang yang dibeli maka 5 kali
pula nota dituliskan ke nomor nota, tanggal nota, tempo dan total. Ini harus
dipisahkan bila terjadi penggandaan tulisan yang berulang-ulang.
Langkah Ke 4
Bentuk normal ketiga mempunyai syarat setiap tabel
tidak mempunyai field yang bergantung transitif, harus bergantung penuh pada
kunci utama. Maka terbentuklah tabel sebagai berikut :
Langkah Ke-5
Pengujian di sini untuk memastikan kebenaran isi
tabel dan hubungan antara tabel tersebut. Ujian bahwa setiap tabel haruslah
punya hubungan dengan tabel yang lainnya. Bila tidak ada penghubungan antar
tabel maka dapat dikatakan perancangan untuk membuat satu basis data adalah
gagal.
Langkah Ke-6 Relasi Antar tabel
Gambarkan hubungan relasi antar file yang ada sebagai
berikut :
Pengertian relasi di atas adalah
§ Satu
supplier punya banyak nota
§ Nota
punya relasi dengan suplier bukan sebaliknya suplier punya relasi terhadap
nota.
§ Satu
nota punya banyak transaksi barang
§ Satu
barang terjadi beberapa kali transaksi pembelian barang.
Langkah Ke-7
Permasalahan di atas hanya terbatas pada satu dokumen
Faktur pembelian barang, padahal pada kenyataannya tentu faktur tersebut
mempunyai dokumen pelengkap misalnya nota penjualan barang, laporan stok
barang, laporan penjualan, laporan pembelian dan masih banyak lagi laporan dan dokumen
data enty lainya.
Dengan langkah-langkah perancangan seperti di atas
maka diperoleh field-field untuk melengkapi tabel-tabel yang ada dalam satu
basis data. Misalnya tabel barang dengan bertambahnya field yang lain menjadi :
Daftar Pustaka
Ali,
Muhammad. 1995. Materi Kuliah Basis Data. Jakarta.
Encyclopedia of Computer Science and Engineer
Abdul. 1999. George
Tsu-der Chou
Ramez. 2000. Real
world
Waliyanto. 2000. System
Basis data
Tidak ada komentar:
Posting Komentar