Anda di halaman 1dari 129

KATA PENGANTAR

Syukur Alhamdulillah saya ucapkan kehadirat Allah SWT, hanya berkat


taufiq dan hidayah Allah SWT semata penulis dapat menyusun modul mata kuliah
Analisis dan Perancangan Sistem Informasi. Salawat dan salam semoga tetap
dilimpahkan kepada Nabi besar Muhammad SAW.
Modul ini adalah materi kuliah dari mata kuliah Basis Data untuk mahasiswa
program studi Sistem Informasi Fakultas Ilmu Komputer dan Teknologi Informasi
di Universitas Muhammadiyah Sumatera Utara.
Modul mata kuliah ini sangat diperlukan bagi perkuliahan Sistem Informasi
di Perguruan Tinggi. Apalagi mata kuliah Basis Data merupakan salah satu mata
kuliah konsentrasi di program studi Sistem Informasi FIKTI UMSU. maka penulis
merasa mempunyai tanggung jawab yang cukup besar dalam menanamkan dan
memupuk nilai serta merupakan dasar yang essensial. Tentu dalam penyusunan ini
memiliki kekurangan dan kelemahan, akhirnya kepada bapak/ibu dosen dan para
pembaca kiranya dapat memberikan masukan dan saran untuk lebih baik
kedepannya.

Penulis

i|Modul Kuli ah A nali si Perancangan Si stem I nformasi


DAFTAR ISI

Kata Pengantar .............................................................................................. i

Daftar Isi ....................................................................................................... ii

I. Identitas ......................................................................................... iii


a. Nama Mata Kuliah .................................................................... iii
b. Kode Mata Kuliah..................................................................... iii
c. Jumlah SKS .............................................................................. iii
d. Nama Dosen / Team Teaching .................................................. iii
II. Pendahuluan .................................................................................. iv
a. Deskripsi Mata Kuliah .............................................................. iv
b. Capaian Pembelajaran Mata Kuliah .......................................... iv
c. Sub Capaian Pembelajaran Mata Kuliah ................................... v
III. Pembelajaran ................................................................................. 4
a. Kegiatan Pembelajaran Ke 1 ........................................... 1
b. Kegiatan Pembelajaran Ke 2 ........................................... 5
c. Kegiatan Pembelajaran Ke 3 ........................................... 19
d. Kegiatan Pembelajaran Ke 4 ........................................... 37
e. Kegiatan Pembelajaran Ke 5 ........................................... 52
f. Kegiatan Pembelajaran Ke 6 ........................................... 58
g. Kegiatan Pembelajaran Ke 7 ........................................... 63
h. Kegiatan Pembelajaran Ke 8 ........................................... 74
i. Kegiatan Pembelajaran Ke 9,10 ...................................... 84
j. Kegiatan Pembelajaran Ke 11,12 .................................... 98
IV. Penutup .......................................................................................... 122
V. Daftar Pustaka ............................................................................... 123

ii | M o d u l K u l i a h B a s i s D a t a
I. IDENTITAS

a. Nama mata kuliah


Basis Data

b. Kode mata kuliah

c. Jumlah sks 3 SKS

d. Nama dosen / team teaching


Fatma Sari Hutagalung, S.Kom, M.Kom

iii | M o d u l K u l i a h B a s i s D a t a
II. PENDAHULUAN

a. Deskripsi Mata Kuliah

Mata kuliah ini bertujuan untuk memberikan pemahaman kepada

mahasiswa tentang defenisi pemahaman konsep basis data. Dalam mata

kuliah ini dibahas secara mendetail tentang bagaimana cara membuat sebuah

database menggunakan MySQL dan CMD. Mengaplikasikan databse

,enggunakan ER Diagram, serta melengkapi database dengan kamus data.

Strategi perkuliahan antara lain Tanya jawab, menerangkan, diskusi dan

presentasi, serta projek akhir mahasiswa .

b. Capaian Pembelajaran Mata Kuliah Mahasiswa membuat pengelolaan

Sistem Informasi di dalam suatu organisasi secara benar, mandiri,

kolaboratif, dan bertanggungjawab yang berdasarkan nilai-nilai Al-Islam

Kemuhammadiyahan.

c. Sub Capaian Pembelajaran Mata Kuliah

1. Mahasiswa mampu menjelaskan konsep umum dan karateristik Basis

Data

2. Mahasiswa mampu menjelaskan ruang lingkup basis data

3. Mahasiswa mampu menjelaskan tentang model relational dan model

data, serta aturan bahasa yang digunakan

iv | M o d u l K u l i a h B a s i s D a t a
4. Mahasiswa memahami konsep Flowchart dan menggunakan Flowchart

dengan benar.

5. Mahasiwa mampu menjelaskan perintah-perintah SQL

6. Mahasiwa mampu menjelaskan contoh DBMS yang menggunakan

model data relasional

7. Mahasiswa mampu merancang sistem basis data dan bertanggung

jawab dengan sistem yang dirancang sesuai dengan nilai-nilai Al-

Islam Kemuhammadiyahan.

8. Mahasiswa mampu menganalisis sstem untuk menunjang kegiatan

penelitian.

v|Modul Kuli ah Basis Data


III. PEMBELAJARAN

A. Kegiatan Pembelajaran 1
1) Pengantar Kuliah Basis Data

2) Tujuan Materi Pembelajaran


a. Agar mahasiswa memahami perbedaan antara data dan informasi
b. Mahasiswa mampu menjelaskan konsep Sistem Informasi
c. Mahasiswa mengerti peranan basis data dalam pengembangan
Sistem Infromasi

3) Materi Prmbelajaran

Data dan Informasi


Data merupakan nilai (value) yang turut merepresentasikan
deskripsi dari suatu objek atau kejadian (event)
Informasi merupakan hasil dari pengolahan data dalam suatu
bentuk yang lebih berguna dan lebih berarti bagi penerimanya yang
menggambarkan suatu kejadian-kejadian yang nyata (fact) yang
digunakan untuk pengambilan keputusan
Data lebih bersifat historis, sedangkan informasi mempunyai
tingkatan yang lebih tinggi, lebih dinamis, serta mempunyai nilai
yang sangat penting
Sistem Informasi
o SI adalah suatu suatu sistem dalam suatu organisasi yang merupakan
kombinasi dari orang-orang, fasilitas, teknologi, media, prosedur dan
pengendalian untuk mendapatkan jalur komunikasi penting, memproses
tipe transaksi rutin tertentu, memberi sinyal kepada manajemen dan yang
lainnya terhadap kejadian-kejadian internal dan eksternal yang penting
dan menyediakan suatu dasar informasi untuk pengambilan keputusan
o SIM adalah sekumpulan elemen yang saling berhubungan, saling
berinteraksi dan bekerjasama antara berbagai bagian dengan cara-cara
tertentu untuk melakukan fungsi pengolahan data, pemasukan data, dan
menghasilkan keluaran berupa informasi yang berguna dan mempunyai
nilai nyata, sebagai dasar pengambilan keputusan, mendukung kegiatan
manajemen dan operasional dengan memanfaatkan berbagai sumberdaya
yang ada bagi proses tersebut guna mencapai tujuan organisasi

Komponen sistem informasi


Sistem infromasi terdiri dari beberapa komponen, antara lain :
o Hardware : CPU, Disk, Terminal, Printer

1|M o d ul K ulia h B asi s D ata


o Software : Sistem operasi, sistem basis data, program aplikasi
o Personil : Operator sistem, Penyedia masukan, Pengguna keluaran
o Data : data yang tersimpan dalam jangka waktu tertentu
o Prosedur : instruksi dan kebijaksanaan untuk mengoperasikan sistem
Basis data
Basis Data adalah suatu kumpulan data terhubung yang disimpan secara
bersama-sama pada suatu media, yang diorganisasikan berdasarkan sebuah
skema atau struktur tertentu, dan dengan software untuk melakukan manipulasi
untuk kegunaan tertentu

Operasi dasar basis data :


o Create database
o Drop database
o Create table
o Drop table
o Insert
o Retrieve / Search
o Update
o Delete

Pemanfaatan basis data :


o Salahsatu komponen penting dalam sistem informasi, kerana merupakan
dasar dalam menyediakan informasi
o Menentukan kualitas informasi : akurat, tepat waktu dan relevan.
o Mengurangi duplikasi data (data redundancy)
o Hubungan data dapat ditingkatkan
o Manipulasi terhadap data dengan cepat dan mudah
o Efisiensi penggunaan ruang penyimpanan

Penerapan basis data


o Tidak ada sistem informasi yang yang bisa dibangun tanpa adanya
basis data

Kriteria basis data :


o Bersifat data oriented dan bukan program oriented
o Dapat digunakan oleh beberapa program aplikasi tanpa mengubah
basis datanya
o Dapat berkembang dengan mudah, baik volume maupun strukturnya
o Dapat digunakan dengan cara berbeda-beda
o Kerangkapan data minimal

Sistem Manajemen Basis Data (DBMS)

2|M o d ul K ulia h B asi s D ata


Merupakan perangkat lunak yang didisain untuk melakukan penyimpanan dan
pengaturan basis data. DBMS juga menerapkan mekanisme pengamanan data,
pemakaian data secara bersama, pemaksaan keakuratan data, dll.

Mengapa menggunakan DBMS


DBMS diperlukan untuk :
a. Independensi data dan akses yang efisien
b. Mereduksi waktu pengembangan aplikasi
c. Integritas dan keamanan data
d. Administrasi keseragaman data
e. Akses bersamaan dan perbaikan dari terjadinya crash

Peranan basis data dalam pengembangan SIM


o SIM berperan sebagai sistem karena mempunyai ruang lingkup yang relatif
lebih luas dan lebih kompleks. Sedangkan sistem basis data merupakan
subsistem karena menjadi bagian dan berada di dalam SIM
o Sistem basis data adalah sistem informasi yang mengintegrasikan
kumpulan dari data yang saling berhubungan satu dengan yang lain dan
membuatnya tersedia untuk beberapa aplikasi yang bermacam-macam di
dalam suatu organisasi
o Keberadaan sistem basis data di dalam SIM adalah mutlak. SIM tidak akan
terwujud tanpa melibatkan basis data

3|M o d ul K ulia h B asi s D ata


Sistem basis data sebagai infrastruktur SIM

Keterangan :
DSS : Decission Support Systems
MIS : Management Information Systems
TPS : Transaction Processing Systems
DBMS : Database Management Systems
DBS : Database Systems

4) Evaluasi .
Jelaskan dengan bahasamu sendiri, apa perbedaan Data dan Informasi?
Dan apa kaitannya dengan basis data?

4|M o d ul K ulia h B asi s D ata


B. Kegiatan Pembelajaran 2
1) Pengenalan Basis Data

2) Tujuan Materi Pembelajaran


a. Agar mahasiswa mengerti dan memahami pembelajaran Basis Data
b. Mahasiswa memahami konsep basis data, memahami komponen
dalam basis data, serta menjelaskan keuntungan dan kerugian
dalam penggunaan basis data

3) Materi Pembelajaran
Basis data adalah kumpulan file-file yang mempunyai kaitan antara satu
file dengan file lain sehingga membentuk suatu bangunan data untuk
menginformasikan suatu perusahaan atau instansi dalam batasan tertentu.
Basis Data terdiri dari 2 kata, yaitu Basis dan Data. Basis dapat diartikan
sebagai markas atau gudang dimana tempat bersarang/berkumpul.
Sedangkan Data adalah represntasi fakta dunia nyata yang mewakili suatu
objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang,
hewan, peristiwa, konsep, keadaan, dan sebagainya, yang direkam dalam
bentuk angka, huruf, simbol, teks, gambar, bunyi, atau kombinasisnya.

Database management system (DBMS) adalah merupakan suatu


sistem software yang memungkinkan seorang user dapat mendefinisikan,
membuat, dan memelihara serta menyediakan akses terkontrol terhadap
data. Database sendiri adalah sekumpulan data yang berhubungan
dengan secara logika dan memiliki beberapa arti yang saling berpautan.
Sistem Basis Data merupakan suatu sistem menyusun dan mengelola
record-record menggunakan computer untuk menyimpan atau merekam
serta memelihara data operasional lengkap sebuah organisasi/perusahaan
sehingga mampu menyediakan informasi yang optimal yang diperlukan
pemakai untuk proses mengambil keputusan.

5|M o d ul K ulia h B asi s D ata


Tujuan Basis Data
Mengatur data sehingga diperoleh kemudahan, ketepatan dan kecepatan
dalam penggunaan kembali data tersebut.
Tidak adanya redundansi dan menjaga konsistensi data.
Pengaturan dalam pemilahan data sesuai dengan fungsi dan jenisnya.

Manfaat Penggunaan Basis Data:


Kecepatan dan Kemudahan (Speed) Dengan menggunakan basis data
pengambilan informasi dapat dilakukan dengan cepat dan mudah.
Kebersamaan Pemakaian (Sharability) Sebuah basis data dapat
digunakan oleh banyak user dan banyak aplikasi.
Pemusatan Kontrol Data Karena cukup dengan satu basis data untuk
banyak keperluan, pengontrolan terhadap data juga cukup dilakuan di
satu tempat saja.
Efisiensi Ruang Penyimpanan (Space) Dengan pemakain bersama,
kita tidak perlu menyediakan tempat penyimpanan diberbagai tempat,
tetapi cukup satu saja sehingga ini akan menghemat ruang
penyimpanan data yang dimilikioleh sebuah organisasi.
Keakuratan (Accuracy) Penerapan secara ketat aturan tipe data,
domain data, keunikan data, hubungan antara data, dan lain-lain, dapat
menekan keakuratan dalam pemasukan/penyimpanan data.
Ketersediaan (Availability) Dengan basis data kita dapat mem-backup
data, memilah-milah data mana yang masih diperlukan dan data mana
yang perlu kita simpan ke tempat lain.
Keamanan (Security) Kebanyakan DBMS dilengkapi dengan fasilitas
manajemen pengguna diberikan hak akses yang berbeda-beda sesuai
dengan pengguna dan posisinya. Basis data bisa diberikan
passwordnya untuk membatasi orang yang mengaksesnya.
Kemudahan dalam Pembuatan Program Aplikasi Baru Pengguna basis
data merupakan bagian dari perkembangan teknologi. Dengan adanya
basis data pembuatan aplikasi bisa memanfaatkan kemampuan dari

6|M o d ul K ulia h B asi s D ata


DBMS, sehingga pembuatan aplikasi tidak perlu mengurusi
penyimpanan data, tetapi cukup mengatur interface untuk pengguna.

Komponen Basis Data


Komponen Sistem Basis Data terdiri dari 6 Komponen , yakni :
1. Hadware Biasanya berupa perangkat komputer standar, media
penyimpan sekunder dan media komunikasi untuk sistem jaringan..
2. Operating System Yakni merupakan perangkat lunak yang
memfungsikan, mengendalikan seluruh sumber daya dan melakukan
operasi dasar dalam sistem komputer. Harus sesuai dengan DBMS
yang digunakan.
3. Database Yakni basis data yang mewakili sistem tertentu untuk
dikelola. Sebuah sistem basis data bisa terdiri dari lebih dari satu basis
data.
4. DBMS (Database Management System) Perangkat lunak yang
digunakan untuk mengelola basis data. Contoh kelas sederhana:
dBase, Foxbase, Rbase, MS. Access, MS. Foxpro, Borland Paradox.
Contoh kelas kompleks: Borland-Interbase, MS. SQL Server, Oracle,
Informix, Sybase.
5. User ( Pengguna Sistem Basis Data ) Orang-orang yang berinteraksi
dengan sistem basis data, mulai dari yang merancang sampai yang
menggunakan di tingkat akhir.
6. Optional Software Perangkat lunak pelengkap yang mendukung.
Bersifat opsional.

Keuntungan Pemakaian Sistem Basis Data


Mengurangi Redundansi, data yang sama pada beberapa aplikasi
cukup disimpan sekali saja.
Menghindarkan Inkonsistensi, karena redundansi berkurang,
sehingga umumnya update hanya sekali saja.
Terpeliharanya Integritas Data, Data tersimpan secara akurat

7|M o d ul K ulia h B asi s D ata


Data Dapat Diakai Bersama-sama, data yang sama dapat diakses
oleh beberapa user pada saat bersamaan.
Memudahkan Penerapan Standarisasi, menyangkut keseragaman
penyajian data.
Jaminan Sekuriti, Data hanya dapat diakses oleh yang berhak.
Menyeimbangkan kebutuhan, Dapat ditentukan prioritas suatu
operasi, misalnya antara update (mengubah data) dengan retrieval
(menampilkan data) di dahulukan update.

Kelemahan Sistem Basis Data


Selain keuntungan, basis data juga memiliki beberapa kelemahan, antara lain
Rumit Harapan akan fungsi yang baik dari sebuah basis data yang baik
membuat basis data menjadi software yang rumit. Perancang,
pengembang, DBA, basis data administrator, dan pengguna akhir
harus memahami fungsi basis data agar dapat mengambil manfaat dari
basis data. Kegagalan dalam memaminya akan menyebabkan
keputusan yang buruk bagi organisasi dan membahayakan organisasi
Biaya basis data Biayanya sangat mahal karena menyangkut biaya-
biaya untuk hardware and software.
Terdapat tambahan biaya hardware Harus menggunakan biaya
tambahan untuk hardware, storage, and network.
Terdapat biaya konversi Diperlukan biaya yang besar untuk berpindah
dari aplikasi/sistem yang lama ke dalam sistem dan hardware basis
data yang baru. Diperlukan pulan biaya untuk pelatihan staf untuk
menggunakan sistem yang baru ini serta tambahan biaya untuk
mempekerjakan staff khusus seperti DBA, dan lain-lain

Karakteristik Basis Data


Untuk mempelajari basis data lebih lanjut, terlebih dahulu kita harus mengetahui
karakteristik dari basis data itu sendiri. Karakteristik dari basis data antara lain:

8|M o d ul K ulia h B asi s D ata


Tujuan dari basis data adalah untuk membantu manusia agar dapat
melacak segala sesuatu yang dianggap penting.
Data disimpan pada tabel. Tabel terdiri dari baris dan kolom seperti yang
terlihat pada spreadsheet. Basis data memiliki beberapa tabel, dimana
setiap tabel menyimpan data tentang suatu hal yang berbeda.
Setiap baris dalam suatu tabel menyimpan data dari instance yang
berbeda. Misalnya pada tabel MAHASISWA:
Baris 1 menyimpan data untuk Pratama
Baris 2 menyimpan data untuk Parto
Baris 3 menyimpan data untuk Pardede
Setiap kolom dalam suatu tabel menyimpan karakteristik dari suatu
instance tersebut. Misalnya pada tabel MAHASISWA:
Kolom 1 menyimpan data untuk NPM seorang mahasiswa
Kolom 2 menyimpan data untuk namaMhsw seorang mahasiswa
Kolom 3 menyimpan data untuk Jurusan seorang mahasiswa 5
Basis data menyimpan data dan relasi.
Basis data hanya terdiri dari data tentang mahasiswa, mata kuliah, dosen,
dan nilai. Tetapi juga terdapat relasi(relationship) antara baris-baris pada
tabel-tabel di dalam basis data tersebut.

NPM Nama Mahasiswa Jurusan No Tlp


01000 Adzkiya Sistem Informasi 0812
01001 Shezan Sistem Informasi 6327
01002 Athafa Mate-matika 5757
02003 Bunga Manajemen 9144
01004 Mawar Hukum 0822

MAHASISWA
NPM Nama Mahasiswa Jurusan No Tlp

9|M o d ul K ulia h B asi s D ata


01000 Adzkiya Sistem Informasi 0812
01001 Shezan Sistem Informasi 6327
01002 Athafa Mate-matika 5757
02003 Bunga Manajemen 9144
01004 Mawar Hukum 0822

MATAKULIAH
NPM Kode Matakuliah Semester Tahun Nilai
01000 ST-003 Genap 2019 A
01001 ST-003 Genap 2019 A
01002 AT-80 Ganjil 2017 C
02003 BG-88 Ganjil 2019 B
01004 MW-88 Ganjil 2018 A

Kode Matkul Nama Matkul Kode Dosen


ST-003 Bahasa FSH
Pemograman
ST-003 ALgoritma MT
AT-80 Matriks ASA
BG-88 Prinsip Manajemen HTG
MW-88 Pengenalan Hukum LTB
Perdata

DOSEN
Kode Dosen Nama Dosen Np telp
FSH Lia 0822
MT Putri 7216
ASA Firman 5757
HTG Ali 0812
LTB Asnur 6327

10 | M o d u l K u l i a h B a s i s D a t a
Konvensi Penamaan
Nama tabel ditulis dengan huruf besar semua, misalnya MAHASISWA – Nama
kolom ditulis dengan huruf awal huruf besar, dan jika diperlukan lebih dari 1 kata
maka huruf awal kata berikutnya dimulai dengan huruf besar. Misalnya
KodeDosen, NamaDosen, Nilai.

Konsep Dasar Basis


Data Data adalah fakta atau angka yang disimpan atau dicatat. Informasi adalah
data yang diolah dan disajikan sehingga memiliki suatu arti. Data pada tabel
MAHASISWA, MATA KULIAH, dan NILAI dapat menghasilkan informasi tentang
IPK mahasiswa. Basis data selain untuk mencatat atau menyimpan data-data,
juga dapat digunakan untuk membentuk suatu informasi. Basis data terdiri dari 2
tabel atau lebih dimana tabel-tabel tersebut saling berhubungan digunakan untuk
memenuhi kebutuhan para pemakai dalam suatu organisasi. Setiap tabel pada
basis data biasanya berisi tentang suatu hal. Sistem manajemen basis data
adalah perangkat lunak yang menciptakan, proses, dan mengelola basis data.
Contoh dari sistem manajemen basis data adalah Microsoft Access, SQL
Server, MySQL, ORACLE. Saat ini basis data yang banyak digunakan adalah
model basis data relasional. Model ini diperkenalkan oleh E.F. Codd pada tahun
1970, menggunakan matematika yang dikenal sebagai aljabar relasional. Saat ini
model relasional digunakan sebagai model standar untuk basis data komersial.
Tidak semua tabel dapat dikatakan sebagai relasi. Ada tabel-tabel yang bukan
sebuah relasi.

MAHASISWA
NPM Nama Mahasiswa Jurusan No Tlp
01000 Adzkiya Sistem Informasi 0812

11 | M o d u l K u l i a h B a s i s D a t a
01001 Shezan Sistem Informasi 6327
01002 Athafa Mate-matika 5757
02003 Bunga Manajemen 9144
01004 Mawar Hukum 0822

NPM Nama Mahasiswa Jurusan No Tlp


01000 Adzkiya Sistem Informasi 0812

01001 Shezan Sistem Informasi 6327


01002 Athafa Mate-matika 5757
02003 Bunga Manajemen 9144
01004 Mawar Hukum 0822

Ketergantungan Fungsional (Functional dependency)


Ketergantungan fungsional terjadi ketika nilai satu atribut (satu set atribut)
menentukan nilai atrubt kedua (nilai satu set atribut kedua).
Contohnya:
NPM NamaMahasiswa (dibaca NPM menentukan NamaMahasiswa atau
NamaMahasiswa bergantung secara fungsi pada NPM)
Ketergantungan fungsional bisa berdasarkan pada persamaan seperti pada:
TotalHarga= Jumlah x HargaSatuan (Jumlah, HargaSatuan) TotalHarga Tetapi
ketergantungan fungsional bukan persamaan.
Contoh: NPM NamaMahasiswa NPM Alamat NPM (NamaMahasiswa,
Alamat)

Determinant Pada ketergantungan fungsional


NPM NamaMahasiswa; atribut di sebelah kiri ketergantungan fungsional
disebut sebagai determinant.

12 | M o d u l K u l i a h B a s i s D a t a
Suatu determinant disebut unik jika dan hanya jika menentukan setiap
kolom lain dalam suatu relasi. Suatu determinan dapat disebut sebagai
composite determinant jika determinant dari suatu ketergantungan fungsional
terdiri dari lebih dari satu atribut.
Contoh: (NPM, KodeMatakuliah) (Nilai)
• Candidate key
Key adalah kombinasi dari satu atau lebih kolom yang digunakan untuk
mengidentifikasi baris-baris dalam suatu relasi. Candidate Key adalah key yang
menentukan semua kolom lain dalam suatu relasi.
Pada tabel MATAKULIAH, NamaMatkul adalah Candidate Key.
• Composite key adalah key yang terdiri dari dua atau lebih kolom.
• Primary keyAdalah candidat key yang dipilih sebagai primary key
sebagai sarana untuk mengidentifikasi baris-baris dalam sebuah relasi.
Dalam satu tabel hanya ada satu primary key.
Primary key dapat berupa composite key.
Primary key yang ideal biasanya pendek, berupa angka, dan
tidak pernah berubah.
• Surrogate key adalah kolom yang ditambahkan pada suatu tabel untuk
bertindak sebagai primary key. DBMS akan membuat nilai kolom tersebut
unik secara otomatis pada saat baris data pada tabel tersebut dibuat.
Contoh:
• Foreign key adalah kolom atau komposite kolom dimana kolom tersebut
merupakan primary key pada tabel lain (yang menjadi referensi). Contoh:
DOSEN(KodeDosen, NamaDosen, NoTelpon) MATAKULIAH(KodeMatKul,
NamaMatKul, KodeDosen)
• Referential integrity constraint Adalah penyataan yang membatasi nilai-
nilai foreign key ke nilai-nilai yang sudah ada sebagai primary key pada
relasi yang berhubungan.
Kode Matkul Nama Matkul Kode Dosen
ST-003 Bahasa Pemograman FSH
ST-003 ALgoritma MT

13 | M o d u l K u l i a h B a s i s D a t a
AT-80 Matriks ASA
BG-88 Prinsip Manajemen HTG
MW-88 Pengenalan Hukum Perdata LTB

Kode Dosen Nama Dosen Np telp


FSH Lia 0822
MT Putri 7216
ASA Firman 5757
HTG Ali 0812
LTB Asnur 6327

Normal form Tabel-tabel pada basis data harus memenuhi aturan normalisasi,
yaitu bebas dari ketergantungan struktural atau anomali yang disebabkan oleh
modifikasi data. Anomali ini disebut modification anomalies.
Modification Anomalies terdiri dari:
o Deletion anomaly Misalkan kita menghapus data dengan RepairNumber
2100. Data yang terhapus bukan hanya data tentang repair, tetapi data
tentang mesin juga akan terhapus (informasi tentang mesin Lathe dengan
AcuisitionPrice 4750 akan hilang). Dari kasus di atas, ketika kita
menghapus satu baris pada tabel tersebut, kita akan kehilangan 2 fakta
sekaligus (machine dan repair) karena struktur tabel tersebut memaksa
demikian. Kondisi tersebut dinamakan deletion anomaly.
o Insertion anomaly Pada tabel EQUIPMENT_REPAIR, misalkan kita ingin
memasukan data repair. Untuk memasukan data tersebut selain
diperlukan:
Data Repair, yaitu: RepairNumber, RepairDate, dan RepairAmount.
data Machine, yaitu: ItemNumber, Type, dan AcquisitionCost.
Artinya ketika kita hanya perlu memasukan data tentang satu entity
(repair), kita diharuskan memasukan data tentang entity lain
(machine) karena kondisi struktur tabelnya mengharuskan
demikian. Kondisi ini dinamakan insertion anomaly

14 | M o d u l K u l i a h B a s i s D a t a
Update anomaly. Pada tabel EQUIPMENT_REPAIR, misalkan kita akan
mengubah data (update). Misalkan kita akan mengubah data baris terakhir
menjadi: Terlihat bahwa “Drill Press” memiliki dua nilai AcquisitionCost yang
berbeda. Sehingga terjadi data inconsistency. Kondisi demikian dinamakan
update anomaly Bentuk normal terdiri dari: 1NF, 2NF, 3NF, BCNF, dan DK/NF
(akan dipelajari lebih lanjut pada pertemuan berikutnya).

Komponen Basis Data


Komponen sistem basis data terdiri dari:
1. User (pengguna) Pengguna sistem basis data
2. Aplikasi Basis Data Program komputer yang digunakan oleh user untuk bekerja.
3. DBMS Sistem manajemen basis data yang membuat, memproses, dan mengatur
basis basis datas.
4. Basis data Komponen Sistem Basis Data dengan SQL
User (pengguna) Pengguna sistem basis data
Aplikasi basis data Program komputer yang digunakan oleh user untuk
bekerja.
Structured Query Language (SQL) Bahasa standar (secara internasional)
yang dapat digunakan untuk melakukan query terhadap data pada semua
sistem basis data
DBMS Sistem manajemen basis data yang membuat, memproses, dan
mengatur basis data. basis datas.
Basis data Komponen Sistem Basis Data kelas Perusahaan (Enterprise-
class Database System) Komponen dari Enterprise-class Database
System terdiri dari:
o User (pengguna) Pengguna sistem basis data
o Database Application – Client/Server application Program aplikasi
diinstal di client dan terkoneksi dengan database server
Dikembangkan dengan Visual Basic, C++, atau Java – E-
commerce Program berjalan pada web server User
menggunakannya melalui Web browser (Internet Explorer atau

15 | M o d u l K u l i a h B a s i s D a t a
Firefox) Web server yang sering digunakan: IIS atau Apache
Dikembangkan dengan PHP, Java, Microsoft .Net – Reporting
Application

Istilah-istilah Basis data


Beberapa hal yang termaksud unsur-unsur dari basis data adalah sebagai
berikut:
1. Entititas Entititas adalah orang, tempat, kejadian atau konsep yang
informasinya direkam. Pada bidang kesehatan Entity adalah Pasien,
Dokter, Kamar
2. Field Setiap entity mempunyai atribut atau sebutan untuk mewakili suatu
entity. Seorang siswa dapat dilihat dari atributnya misalnya, NIM,
Nama_siswa, Alamat.
3. Record Record adalah kumpulan isi elemen data (atribut) yang saling
berhubungan menginformasikan tentang suatu entity secara lengkap.
Contoh Kumpulan atribut NIP, Nama, dan alamat berisikan
“01001245566”, Sanusi,Jl. Hati suci No 2 Kupang.
4. Data Value Merupakan data aktual atau infomasi yang disimpan ditiap
data elemen. Isi atribut disebut nilai data.
5. Kunci Elemen Data ( Key Data Element ) Tanda pengenal yang secara
unik mengidentifikasikan entitas dari suatu kumpulan entitas. Contoh
Entitas Mahasiswa yang mempunyai atribut-atribut npm, nama, alamat,
tanggal lahir menggunakan Kunci Elemen Data npm.

Perangkat lunak basis data yang banyak digunakan dalam pemrograman dan
merupakan perangkat basis data aras tinggi (high level):
Microsoft SQL Server
Oracle
Sybase
Interbase
XBase

16 | M o d u l K u l i a h B a s i s D a t a
Firebird
MySQL
PostgreSQL
Microsoft Access
dBase III
Paradox
FoxPro
Visual FoxPro
Arago
Force
Recital
dbFast
dbXL
Quicksilver
Clipper
FlagShip
Harbour
Visual dBase
Lotus Smart Suite Approach
db2
MongoDB
Selain perangkat lunak di atas, terdapat juga perangkat lunak pemrograman
basis data aras rendah (low level), diantaranya:
Btrieve
Tsunami Record Manager

Pengguna Basis Data

17 | M o d u l K u l i a h B a s i s D a t a
System Engineer Tenaga ahli yang bertanggung jawab atas pemasangan Sistem
Basis Data, dan juga mengadakan peningkatan dan melaporkan kesalahan dari
sistem tersebut kepada pihak penjual
Database Administrator (DBA) Tenaga ahli yang mempunyai tugas untuk
mengontrol sistem basis data secara keseluruhan, meramalkan kebutuhan akan
sistem basis data, merencanakannya dan Ada beberapa jenis (tipe) pemakai
terhadap suatu sistem basis data yang dapat dibedakan berdasarkan cara
mereka berinteraksi terhadap sistem :
1. Programmer aplikasi Pemakai yang berinteraksi dengan basis data melalui
Data Manipulation Language (DML), yang disertakan (embedded) dalam
program yang ditulis pada bahasa pemrograman induk (seperti C, pascal,
cobol, dll)
2. Pemakai Mahir (Casual User) Pemakai yang berinteraksi dengan sistem
tanpa menulis modul program. Mereka menyatakan query (untuk akses
data) dengan bahasa query yang telah disediakan oleh suatu DBMS
3. Pemakai Umum (End User / Naïve User) Pemakai yang berinteraksi
dengan sistem basis data melalui pemanggilan satu program aplikasi
permanen (executable program) yang telah ditulis (disediakan)
sebelumnya.
4. Pemakai Khusus (Specialized/Sophisticated User) Pemakai yang menulis
aplikasi basis data non konvensional, tetapi untuk keperluankeperluan
khusus seperti aplikasi AI, Sistem Pakar, Pengolahan Citra, dll, yang bias
saja mengakses basis data dengan atau tanpa DBMS yang bersangkutan.
Contoh penggunaan Aplikasi basis data dalam dunia bisnis

4) Evaluasi .
Jelaskan dengan singkat, konsep dari basis data?

18 | M o d u l K u l i a h B a s i s D a t a
C. Kegiatan Pembelajaran 3
1) Lingkungan Basis Data
2) Tujuan Materi Pembelajaran
a. Agar mahasiswa mengerti dan memahami lingkup basis data
b. Mahasiswa mampu menjelaskan perbedaan 3 arsitektur level basis
data
c. Mahasiswa mampu mengidentifikasi komponen perangkat lunak
DBMS
d. Mahasiswa mengetahui kamus-kamus basis data dan model-model
data.

3) Materi Pembelajaran

Pengorganisasian Basis Data


Organisasi File adalah suatu teknik atau cara yang digunakan untuk
menyatakan dan menyimpan record-record dalam sebuah file.
Ada 4 teknik dasar organisasi file, yaitu :
1. Organisasi File Sequential
Merupakan cara yang paling dasar untuk mengorganisasikan
kumpulan record-record dalam sebuah berkas. Dalam
organisasi berkas sequential, pada waktu record ini dibuat,
record-record direkam secara berurutan. Contoh : Lagu yang
ada dikaset.
2. Organisasi File Relative
Suatu berkas yang mengidentifikasikan record dengan key yang
diperlukan. Record tidak perlu tersortir secara fisik menurut nilai
key. Organisasi berkas relatif paling sering digunakan dalam
proses interaktif.Tidak perlu mengakses record secara berurutan
(consecutive). Sebaiknya disimpan dalam Direct Access Storage
Device (DASD) seperti magnetic disk/drum.
Contoh : Lagu yang ada pada CD (Compact Disk)

19 | M o d u l K u l i a h B a s i s D a t a
3. Indexed Sequential
Merupakan salah satu cara yang efektif untuk mengorganisasi
kumpulan record-record yang membutuhkan akses record
secara sequential maupun secara individu berdasarkan nilai key.
Contoh : Mencari arti kata dalam kamus.
4. Multi – Key
Merupakan organisasi yang dapat mempunyai sebuah file yang
di akses dengan banyak cara. Contoh : Sistem perbankan yang
memiliki banyak pemakai.

Pengorganisasian data dapat dibagi dalam enam tingkatan, yaitu :

1. Bit adalah suatu sistem angka biner yang terdiri atas dua macam nilai
saja, yaitu 0 dan 1. Sistem angka biner merupakan dasar dasar yang
dapat digunakan untuk komunikasi antara manusia dan mesin (komputer)
yang merupakan sekumpulan komponen elektronik dan hanya dapat
membedakan dua keadaan saja (on dan off). Jadi bit adalah unit terkecil
dari pembentuk data.
2. Byte adalah bagian terkecil yang dapat dialamatkan dalam
memori. Byte merupakan sekumpulan bit yang secara konvensional terdiri
atas kombinasi delapan bit. Satu byte digunakan untuk mengkodekan satu
buah karakter dalam memori. Contoh: Kode Ascii untuk J ialah 10101010.
Jadi 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 merupakan
sekumpulan byte yang mempunyai makna. Contoh: Joni yang merupakan
field nama. Jadi field ibarat kumpulan karakter yang membentuk suatu
kata.
4. Record atau baris adalah kumpulan item yang secara logic saling
berhubungan. Setiap record dapat dikenali oleh sesuatu yang

20 | M o d u l K u l i a h B a s i s D a t a
mengenalinya, yaitu field kunci. Gambar 1 merupakan contoh dari record.
Jadi record ibarat kumpulan kata yang membentuk satu kalimat yang
berarti, misal gambar 1 mewakili kalimat: Joni memenmpuh mata kuliah
MIS (kode IS101) dengan nilai A.

Gambar 1. Contoh Record

5. File atau tabel adalah kumpulan record yang sejenis dan secara logic
berhubungan. Pembuatan dan pemeliharaan file adalah faktor yang
sangat penting dalam sistem informasi manajemen yang memakai
komputer. Jadi tabel ibarat kumpulan baris/record yang membentuk satu
tabel yang berarti, misal gambar 2 mewakili tabel nilai mata kuliah MIS.

Gambar 2. Contoh File Kursus

6. Database merupakan kumpulan file-file yang berhubungan secara logis


dan digunakan secara rutin 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 dan dengan
software untuk melakukan manipulasi data untuk kegunaan tertentu. Jadi,
suatu database adalah menunjukkan suatu kumpulan tabel yang dipakai
dalam suatu lingkup perusahaan atau instansi untuk tujuan tertentu.
Contoh suatu database adalah database akademik yang berisi file-file:
mahasiswa, dosen, kurikulum, dan jadwal yang diperlukan untuk
mendukung operasi sistim informasi akademik. Contoh suatu database
sederhana ditunjukkan oleh gambar 3.

21 | M o d u l K u l i a h B a s i s D a t a
Gambar 3. Contoh Database Kepegawaian

Hirarki semua data diatas ditunjukkan pada gambar 4.

Gambar 4. Hierarki Data

22 | M o d u l K u l i a h B a s i s D a t a
3 Level Basis Data

Gambar 5 Arsitektur 3 Level Basis Data

1. Conceptual view merupakan pandangan yang berkaitan dengan


permasalahan data-data apa saja yang diperlukan untuk disimpan
dalam basis data dan penjelasan mengenai hubungan antar data yang
satu dengan lainnya. Conceptual view dapat disetarakan dengan
schema, dilakukan database administrator
2. Physical view merupakan bentuk implementasi dari conceptual view,
yaitu pandangan tentang bagaimana data disimpan dalam media
penyimpan data
3. User view dapat disejajarkan dengan sub-schema.

Level pandang akan berbicara mengenai bagaimana basis data digunakan. Level
pandang yang baik mempunyai kualifikasi sebagai berikut:
 Program yangdipakai harus bersifat user-friendly
 Penggunaan data base harus mempunyai tutorial yang tertulis, sehingga
jelas bagaimana cara mengolah data base yang baik.

23 | M o d u l K u l i a h B a s i s D a t a
 Panduan juga harus dapat bersifat online/terintregasi dengan program
pengolah basis datanya.

Model Dasar Basis Data


Hierarkis Lebih dikenal dengan model pohon

Gambar 6 Hierarkis

Jaringan
Tiap anak bisa memiliki lebih dari satu orang tua.

Gambar 7 Jaringan

24 | M o d u l K u l i a h B a s i s D a t a
Relasional
Menggunakan model berupa tabel berdimensi dua (yang disebut relasi atau
tabel), memakai kunci tamu (foreign key) sebagai penghubung dengan tabel lain.

25 | M o d u l K u l i a h B a s i s D a t a
Perangkat Lunak dari DBMS

Gambar 7 Perangkat Lunak DBMS

Fungsi DBMS
 Penyimpanan Data, Retrieval, dan Update.
 Sebuah User-diakses Katalog.
 Dukungan transaksi.
 Layanan Kontrol konkurensi.
 Recovery Services.
 Layanan otorisasi.
 Dukungan untuk Komunikasi Data.
 Layanan integritas.
 Layanan untuk Mempromosikan data Kemerdekaan.
 Utilitas Jasa.

26 | M o d u l K u l i a h B a s i s D a t a
Bahasa DBMS
Semua DBMS paling tidak mempunyai dua macam perintah yang
digunakan untuk mengelola dan mengorganisasikan data, yaitu :

 Bahasa Defines Data (DDL/Data Definition Language), dan


 Bahasa Manipulasi Data (DML/Data Manipulation Language)
Selain kedua macam perintah di atas, pada kebanyak DBMS sekarang
juga terdapat perintah yang tergolong DCL (Data Control Language) yang
berkaitan dengan pengaturan sekuritas terhadap basis data
1. Bahasa Definis Data (DDL)
DDL adalah perintah-perintah yang biasa digunakan oleh
administrator basis data (DBA untuk mendefiniskan skema ke
DBMS. Skema adalah deskripsi lengkap tentang struktur medan,
rekaman, dan hubungan data pada basis data. Tugas utama skema
adalah menjabarkan struktur basis data kepada DBMS.
2. Bahasa Manipulasi Data (DML)
DML adalah perintah-perintah yang digunakan untuk mengubah,
memanipulasi, dan mengambil data pada basis data. Tindakan
seperti menghapus, mengubah dan mengabil data menjadi bagian
dari DML. DML pada dasarnya dibagi menjadi 2 :
 Prosedural, yang menuntut pengguna menentukan data apa
saja yang diperlukan dan bagaimana cara mendapatkannya.
 NonProsedural, yang menuntut pengguna menentukan data
apa saja yang diperlukan tetapi tidak perlu menyebutkan
cara mendapatkannya.

Kamus Data (data dictionary)


kamus data (data dictionary) adalah suatu penjelasan tertulis tentang
suatu data yang berada di dalam database atau suatu daftar data elemen yang
terorganisir dengan definisi yang tetap dan sesuai dengan sistem, sehingga user

27 | M o d u l K u l i a h B a s i s D a t a
dan analis sistem mempunyai pengertian yang sama tentang input, output, dan
komponen data strore.

kamus data pertama berbasis kamus dokumen tersimpan dalam suatu bentuk hard
copy dengan mencatat semua penjelasan data dalam bentuk yang dicetak. Walau
sejumlah kamus berbasis dokumen masih ada, praktik yang umum saat ini ialah
mempergunakan kamus data yang berbasis komputer. Pada kamus data berbasis
komputer, penjelasan data dimasukkan ke dalam komputer dengan memakai Data
Description Language (DDL) dari sistem manajemen database, sistem kamus atau
peralatan CASE Kamus data tidak perlu dihubungkan dengan diagram arus data dan
formulir-formulir kamus data dirancang untuk mendukung diagram arus data.

Kamus Data merupakan katalog fakta tentang data dan kebutuhan-kebutuhan


informasi dari suatu sistem informasi. Kamus data selain digunakan untuk
dokumentasi dan mengurangi redudansi, juga dapat digunakan untuk:
1. Memvalidasi diagram aliran data dalam hal kelengkapan dan keakuratan
2. Menyediakan suatu titik awal untuk mengembangkan layar dan laporan-
laporan
3. Menentukan muatan data yang disimpan dalam file-file
4. Mengembangkan logika untuk proses-proses diagram aliran data

Kamus data ini sangat membantu analis sistem dalam mendefinisikan data yang
mengalir di dalam sistem, sehingga pendefinisian data itu dapat dilakukan

28 | M o d u l K u l i a h B a s i s D a t a
dengan lengkap dan terstruktur. Pembentukan kamus data dilaksanakan dalam
tahap analisis dan perancangan suatu sistem.

Elemen-Elemen Data
Kamus data harus mencerminkan keterangan yang jelas tentang data yang akan
direkam. Untuk keperluan tujuan ini, kamus data harus memuat:
 Nama Arus Data
Karena kamus data didasarkan pada aliran data di DFD, maka nama
dari arus data juga harus dicatat di KD.
 Alias
Alias atau nama lain dari data dapat ditulis jika ada nama lain. Alias
perlu ditulis karena data yang sama memiliki nama yang berbeda untuk
orang atau departemen satu dengan yang lain. Misalnya, penjualan
faktur dan bagian pembuat berlangganan sebut sebagai bukti faktur,
sedangkan persediaan gudang menyebutnya salinan permintaan.
Kedua faktur dan meminta salinan persediaan ini memiliki struktur data
yang sama, namun memiliki struktur yang berbeda.
 Bentuk Data
Bentuk data, telah diketahui bahwa aliran data dapat mengalir :
1. Dari luar kesatuan proses, aliran data biasanya disimpan dalam
dokumen atau bentuk.
2. Hasil dari proses persatuan ke luar, aliran data biasanya terdapat
dalam laporan media atau query tampilan layar atau cetakan
dokumen;
3. Hasil dari proses ke proses lain, aliran data biasanya dalam bentuk
variabel atau parameter yang diperlukan oleh penerima;
4. Hasil dari proses yang dicatat untuk penyimpanan data, aliran data
biasanya dalam bentuk variabel.
5. Dari menyimpan data dibaca oleh suatu proses, aliran data
biasanya dalam bentuk bidang (item data).

29 | M o d u l K u l i a h B a s i s D a t a
Dengan demikian bentuk arus data yang dapat berupa : dokumen dasar
atau formulir, dokumen, cetakan komputer, laporan tercetak, tampilan di
layar, variabel, parameter, bidang.

 Data Flow
Aliran data menunjukkan dari mana arus data dan mana data akan
menuju. Informasi ini harus dicatat di KD sehingga Anda dapat dengan
mudah mencari arus data di DAD.
 Penjelasan
Untuk lebih memperjelas lagi tentang makna dari arus data yang
dicatat di KD, maka penjelasan dapat diisi dengan deskripsi dari aliran
data. Sebagai contoh, nama aliran data Salinan Permintaan
Persediaan, dapat digambarkan sebagai salinan faktur penjualan untuk
meminta barang gudang.
 Periode
periode ini menunjukkan ketika aliran data ini. Periode harus dicatat di
KD karena dapat digunakan untuk mengidentifikasi ketika input data
harus dimasukkan ke dalam sistem, ketika proses program harus
dilakukan dan kapan laporan-laporan harus dihasilkan.

 Volume
Volume perlu dicatat di KD adalah tentang volume rata-rata dan
volume puncak aliran daa. Rata-rata volume menunjukkan jumlah rata-
rata aliran data dalam jangka waktu tertentu dan volume puncak
menunjukkan volume tertinggi. Volume ini digunakan untuk
mengidentifikasi besarnya penyimpanan eksternal yang akan
digunakan, kapasitas dan jumlah perangkat input, perangkat
pengolahan dan perangkat output.

 Struktur Data
Struktur data menunjukkan aliran data yang tercatat di KD terdiri dari
data item-item.

30 | M o d u l K u l i a h B a s i s D a t a
Simbol-Simbol Kamus Data

No Simbol Uraian

1 = Terdiri dari, mendefinisikan, diuraikan menjadi

2 + Dan

Menunjukkan suatu elemen yang bersifat pilihan (opsional). Elemen-


elemen yang bersifat pilihan ini bisa dikosongkan pada layar masukan
3 ()
atau bisa juga dengan memuat spasi atau nol untuk field-field numeric
pada struktur file.

Menunjukkan elemen-elemen repetitive, juga disebut kelompok


berulang atau tabel-tabel. Kemungkinan bisa ada satu atau beberapa
elemen berluang di dalam kelompok tersebut. Kelompok berulang bisa
4 {}
mengandung keadaan-keadaan tertentu, seperti misalnya, jumlah
pengulangan yang pasti atau batas tertinggi dan batas terendah untuk
jumlah pengulangan.

Menunjukkan salah satu dari dua situasi tertentu. Satu elemen bisa ada

sedangkan elemen lainnya juga ada, tetapi tidak bisa kedua-duanya


5 []
ada seara bersamaan. Elemen-elemen yang ada di dalam tanda
kurung ini saling terpisah satu sama lain. (dengan kata lain, memilih
salah satu dari sejumlah alternatif, seleksi)

6 ** Komentar

7 @ Identifikasi atribut kunci

31 | M o d u l K u l i a h B a s i s D a t a
8 | Pemisah sejumlah alternatif pilihan antara simbol [ ]

Contoh Kamus Data

32 | M o d u l K u l i a h B a s i s D a t a
MODEL DATA
Secara umum Model data yaitu suatu cara untuk menjelaskan bagaimana
pemakai dapat melihat data secara logik, maksudnya pemakai atau user
bisa mengetahui dan membaca data secara pasti, dengan model data
pemakai atau user bisa mengerti apa sebenarnya isi data tersebut.

Model Data Berbasis Obyek


Merupakan himpunan data dan relasi yang menjelaskan hubungan logik
antara data dalam basis data berdasarkan objek datanya.
Model data berbasis objek dibagi menjadi 2, yaitu:
 Entity Relationship Diagram
ERD adalah Pemodelan data / sistem dalam database. ER
Diagram menggambarkan tipe objek mengenai data itu di
manajemen, serta relasi antara objek tersebut. ER Model dibuat
berdasarkan persepsi atau pengamatan dunia nyata yang terdiri
atas entitas dan relasi antara entitas-entitas tersebut. Contoh:

 Schemantic Diagram
Relasi antar objek dinyatakan dengan kata-kata
(semantic). Contoh :

33 | M o d u l K u l i a h B a s i s D a t a
Model Data Berbasis Record”
Model ini mendasarkan pada record untuk menjelaskan kepada user
tentang hubungan logik antar data dalam basis data
Model data berbasis record dibagi menjadi 3, yaitu:
1. Relational Model
Menjelaskan tentang hubungan logik antar data dalam basis data dengan
memvisualisasikan dalam bentu tabel-tabel yang terdiri dari sejumlah baris
dan kolom yang menunjukkan atribut tertentu.Contoh :

Keterangan :
- Jumlah Kolom disebut degree, ada 2
- Baris disebut atribut, ada 3

34 | M o d u l K u l i a h B a s i s D a t a
- Tiap baris disebut record / tuple, ada 3 record
- Banyaknya baris dalam satu tabel disebut cardinality
2. Hirarchycal Model (Tree structure)
Menjelaskan tentang hubungan logik antar data dalam basis data
dalam bentuk hubungan bertingkat (hirarki) Elemen penyusunnya
disebut node, yang berupa rinci data, agregat data, atau record.
Contoh :

3. Network Model (Plex Structure)


Hampir sama dengan model hirarki, dan digambarkan sedemikian
rupa sehingga child pasti berada pada level yang lebih rendah
daripada parent. Sebuah child dapat mempunyai lebih dari satu parent

35 | M o d u l K u l i a h B a s i s D a t a
Model data berbasis fisik
Merupakan model data yang digunakan untuk menjelaskan kepada
pemakai bagaimana data-data tersebut disimpan dan dimasukan dalam
media penyimpanan secara fisik, yang lebih berorientasi pada mesin
Ada 2 model, yaitu:
1. Unifying Model
2. Frame Memory

36 | M o d u l K u l i a h B a s i s D a t a
D. Kegiatan Pembelajaran 4
1) Model Rational Basis Data
2) Tujuan Materi Pembelajaran
a. Mahasiswa mampu menjelaskan struktur data relational
b. Mahasiswa memahami mengidentifikasikan komponenperangkat
lunak dari DBMS dan menjelaskan fungsinya
3) Materi Pembelajaran

Model Relasional
Model relasional merupakan model yang paling sederhana sehingga mudah
digunakan dan dipahami oleh pengguna, serta yang paling populer saat ini.
Model ini menggunakan sekumpulan tabel berdimensi dua (yang disebut
relasi atau tabel), dengan masing-masing relasi tersusun atas tupel atau baris
dan atribut. Relasi dirangcang dengan menggunakan kunci tamu untuk
berhubungan dengan relasi lain.

Pengertian Model Data Relasional


Model Data Relasional adalah suatu model basis data yang menggunakan
tabel dua dimensi, yang terdiri atas baris dan kolom untuk menggambarkan
sebuah berkas data. Model ini menunjukkan cara
mengelola/mengorganisasikan data secara fisik dalam memory sekunder,
yang akan berdampak pula pada bagaimana kita mengelompokkan data dan
membentuk keseluruhan data yang terkait dalam sistem yang kita buat.
Pada model relasional, basis data akan disebar ( dipilah-pilih) ke dalam
berbagai tabel 2 dimensi. Setiap tabel selalu terdiri atas lajur mendatar yang
disebut dengan baris data (row/record) dan lajur vertikal biasa disebut dengan
kolom (column/field). Disetiap pertemuan baris data dan kolom itulah, item-
item data (satuan data terkecil) ditempatkan. Dalam kehidupan kita sehari –
hari, Tabel merupakan bentuk natural (alamiah) dalam menyatakan fakta /

37 | M o d u l K u l i a h B a s i s D a t a
data yang sering kita gunakan. Itulah sebabnya, model ini lebih mudah kita
terapkan ketimbang model basis data yang lain.
Pada model relasional, jumlah tupel suatu relasi disebut kardinalitas dan
jumlah atribut suatu relasi disebut derajat (degree)atau terkadang
disebut arity. Relasi yang berderajat satu (hanya memiliki satu atribut)
disebut unary. Relasi yang berderajat dua disebut binary dan relasi yang
berderajat tiga disebut ternary. Relasi yang berderajat n disebut n-ary.
Ada beberapa sifat yang melekat pada suatu relasi:
1. Tak ada tupel (baris) data yang kembar
2. Urutan tuple tidaklah penting (tupel-tupel dapat dipandang dalam
sembarang urutan)
3. Setiap atribut memiliki nama yang unik
4. Letak atribut bebas ( urutan atribut tidak penting)
5. Setiap atribut memiliki nilai tunggal dan jenisnnya sama untuk semua
tupel
Sebagaimana dikatakan didepan, tupel-tupel yang terdapat pada suatu
relasi tidak ada yang kembar. Sesungguhnya bagian yang
menyebabkan tidak adannya tupel yang kembar adalah yang disebut
kunci primer. Kunci primer adalah kunci kandidat yang dipilih sebagai
kunci utama untuk mengidentifikasi baris dalam tabel. Sebagai contoh
pada relasi yang terlihat pada gambar 1.

38 | M o d u l K u l i a h B a s i s D a t a
Gambar 1relasi, recors ,attribut, kolom dan berbagai istilah lain

Penjelasan :
No Nama Keterangan

Attribut properti yang dimiliki setiap entitas yang akan disimpan


datannya

Field name/field Kolom pada sebuah relasi (field)

1 baris data kumpulan dari data item yang saling berhubungan


(row/record) dengan obyek tertentu

2 Relasi Sebuah tabel yang terdiri dari beberapa kolom dan


beberapa baris

3 kolom Data item/elemen data


(column/field)

4 Domain Kumpulan nilai yang valid untuk satu atau lebih atribut

5 Derajat (degree) Jumlah atribut dalam sebuah relasi (jumlah field)

39 | M o d u l K u l i a h B a s i s D a t a
Karakteristik Tabel
1. Pengurutan record dalam suatu tabel
 Tabel didefinisikan sebagai satu set Record
 Record dalam suatu Tabel tdk mempunyai urutan tertentu
2. Pengurutan Nilai dalam suatu Record
Suatu n-record mrp ordered-list (suatu list terurut) dari n nilai;
sehingga urutan-urutan nilai dalam suatu record menjadi pentin
3. Nilai-nilai dalam Record
Setiap nilai dalam suatu Record merupakan satu nilai yang utuh (tidak dapat
dipecah menjadi komponen-komponen yang lebih kecil dalam kontek model
Tabel) Composite dan multivalued attribute tdk diperbolehkan dalam model
relasional.
 attribute2 multivalued harus dipisahkan menjadi Tabel2 yang terpisah
 attribute2 composite harus disajikan oleh simple attributes yang
membentuknya
4. Struktur table
 Terdiri atas bagian heading dan body
 Bagian heading sebagai himpunan attribute
 Bagian body sebagai himpunan tuple (record), dengan tiap tuplenya
adalan himpunan
 Pasangan attribut (field) dan nilainnya
 Nilai setiap attribut diambil dari domain tertentu
 Setiap tuple diidentifikasikan unik oleh primary key

Atribut Kunci dari Relasi


1. SUPERKEY : satu atau lebih atribut (kumpulan atribut) yang dapat
membedakan setiap baris data dalam tabel secara unik.
Berdasarkan contoh relasi sebelumnya, maka SUPERKEY-nya adalah :
{nim, nama_mhs} dan {nim}.

40 | M o d u l K u l i a h B a s i s D a t a
2. CANDIDATE KEY : relasi mungkin mempunyai lebih dari satu key. Masing-
masing disebut CANDIDATE KEY.
3. PRIMARY KEY (PK) : CANDIDATE KEY yang digunakan untuk
mengidentifikasikan tuple yang unik pada suatu relasi. Berdasarkan contoh
sebelumnya, maka PRIMARY KEY-nya adalah nim.
4. FOREIGN KEY (FK) : suatu schema relasi dapat memiliki atribut
yang menunjuk ke PRIMARY KEY dari relasi lain. Atribut ini disebut
FOREIGN KEY.

Keuntungan & kelemahan model data reasional


Keuntungan lain menggunakan model data relasional dibandingkan dengan
model data herarkhi dan jaringan adalah:
1. model data rasional lebih luas dibandingkan yang lain .nilai data dalam tabel
tidak ada pembatasan dalam berbagai proses pencarian data . hal ini tidak
terdapat pada model data herarkhi dan jaringan dimana manipulasi data
dibatasi oleh bagaimana struktur data dibuat.
2. Model data relasional mempunyai latar belakang teori matematik. Hal ini akan
memudahkan dalam pembentukan hubungan matematis sebagai dasar dalam
prosedur pemrosesan data disamping pemrograman komputer . sebab
bagaimanapun juga dalam pelaksanaan sistem harus dilakukan dalam
bahasa program tertentu .
3. Pengorganisasian model relasional sangat sederhana , sehingga mudah
dipahami .
4. Basis data yang sama biasanya dapat disajikan lebih sedikit terjadi data
rangkap (Redun-dansy data) dengan menggunakan model relasional
dibandingkan dengan model data herarkhi dan jaringan.

Sedangkan kelemahannya adalah :


1. Lebih sulit dalam implementasinya terutama untuk data dala,m jumlah
besar dan tingkat kompleksitasnya tinggi.

41 | M o d u l K u l i a h B a s i s D a t a
2. Proses pencarian informasinya lebih lambat. Hal ini disebabkan beberapa
tabel tidak dihubungkan secara fisik (seperti pada model hirarkhi atau
jaringan).dalam manipulasi data menggunakan beberapa tabel akan
memerlukan waktu yang lama , karena tabel-tabel haus dihubungkan
terlebih dahulu.

StudiKasus
Untuk mengilustrasikan model data relasional secara lebih nyata , berikut kita
ambil sebuah contoh basis data sederhana yang berkaitan dengan
pendidikan(akademik). Basis data ini terdiri atas tiga (3) buah tabel yaitu.
Mahasiswa, Mata Kuliah, dan Nilai.
Berikut adalah contoh data yang akan kita gunakan pada penggunaan model
data atau database model relasional.
1. Model Perancangan Database relasional table

Gambar 2relasional tabel


Keterangan :
 Tanda * menandakan bahwa field tersebut merupakan kunci primer
dalam suatu tabel.
 Tanda ** menandakan bahwa field tersebut merupakan kunci
secondary ( kunci tamu) yang menghubungkan antara satu tabel
dengan tabel lainnya.

42 | M o d u l K u l i a h B a s i s D a t a
2. Desain fisik table
 Mahasiswa
Nim Nama Alamat

10296832 Joni Ardiansyah Semarang

10296126 Siti Ummiati Semarang

31296500 Nur Isroati Hidayah Semarang

41296525 Tegar Priya Gahara Semarang

50096487 Siti Ummiati Semarang


Tabel 1 bentuk fisik tabel mahasiswa

Karakteristik dari tabel Mahasiswa:


 data mahasiswa memiliki 3 buah kolom data
 kolom 1 berisi data string/alphanumerik dengan lebar tetap,
yaitu 8 digit/char.
 Kolom 2 berisi data string dengan lebar maksimum 30 digit.
 Kolom 3 berisi data string dengan lebar maksimum 20 digit.
Dari karakteristik di atas, kita bisa menetapkan struktur data tabel
Mahasiswa:
 nama kolom/field.
 Tipe data.
 Lebar (banyaknya dgiti maksimum yang bisa ditampung).
Jadi, struktur tabel Mahasiswa :
Nama Tipe Lebar
Kolom

Nim Int 8

Nama Char 30

Alamat Char 20
Tabel 2 bentuk fisik struktur tabel mahasiswa

43 | M o d u l K u l i a h B a s i s D a t a
 Mata Kuliah
Kd_matakul Mata_kul Sks

KK021 P. Basis Data 2

KD132 Rekayasa perangkat 3


lunak

KU122 Pengolahan citra 2


Tabel 3 bentuk fisik tabel mata kuliah

Karakteristik dari tabel Mata Kuliah:


 data mata kuliah memiliki 3 buah kolom data
 kolom 1 berisi adta string/alphanumerik dengan lebar tetap, yaitu 5
digit/char.
 Kolom 2 berisi data string dengan lebar maksimum 30 digit.
 Kolom 3 berisi data integer dengan lebar maksimum 1 digit.
Dari karakteristik di atas, kita bisa menetapkan struktur data tabel Mata
Kuliah:
 nama kolom/field.
 Tipe data.
 Lebar (banyaknya dgiti maksimum yang bisa ditampung).
Jadi, struktur tabel Mata Kuliah :
Nama Kolom Tipe Lebar

Kd_matakul Char 5

Mata_kul Char 30

Sks Numeric 1
Tabel 4 bentuk fisik struktur tabel mahasiswa

44 | M o d u l K u l i a h B a s i s D a t a
 Nilai

Nim Kd_matakul Uas Uts Nil_akhir

10296832 KK021 60 75 B

10296126 KD132 70 90 B

31296500 KK021 55 40 B

41296525 KU122 90 80 C

21196353 KU122 75 75 A

50095487 KD132 80 0 B

10296832 KD132 40 30 C
Tabel 5 bentuk fisik tabel nilai

Karakteristik dari tabel Nilai:


 data mata kuliah memiliki 5 buah kolom data
 kolom 1 berisi data int dengan lebar maksimal 8 digit.
 kolom 2 berisi adta string/alphanumerik dengan lebar tetap, yaitu 5
digit/char.
 Kolom 3 berisi data integer dengan lebar maksimum 1 digit.
 Kolom 4 berisi data integer dengan lebar maksimum 1 digit.
 Kolom 5 berisi data integer dengan lebar maksimum 1 digit.
Dari karakteristik di atas, kita bisa menetapkan struktur data tabel Nilai:
 nama kolom/field.
 Tipe data.
 Lebar (banyaknya dgiti maksimum yang bisa ditampung).
Jadi, struktur tabel Nilai :
Nama Kolom Tipe Lebar

Nim Int 8

Kd_matakul Char 5

45 | M o d u l K u l i a h B a s i s D a t a
Uas Numeric 1

Uts Numeric 1

Nil_akhir Numeric 1
Tabel 6 bentuk fisik struktur tabel nilai

BAHASA PADA MODEL DATA RELASIONAL


Menggunakan bahasa query pernyataan yang diajukan untuk mengambil
informasi terbagi 2, yaitu:
1. .Bahasa Formal :
Bahasa query yang diterjemahkan dengan menggunakan symbol-
simbol matematis.
Contohnya: Aljabar Relasional dan Kalkulus Relasional.
a. Aljabar Relasional
Bahasa query procedural, pemakai menspesifikasikan data apa
yang dibutuhkan dan bagaimana untuk mendapatkannya.

b. Kalkulus Relasional
Bahas query non-prosedural, pemakai menspesifikasikan data
apa yang dibutuhkan tanpa menspesifikasikan bagaimana untuk
menapatkannya. Terbagi 2:
1. Kalkulus Relasional Tupel
2. Kalkulus Relasional Domain
2. Bahasa Komersial
Bahasa query yang dirancang sendiri oleh programmer menjadi suatu
program aplikasi agar pemakai lebih mudah menggunakannya (user
friendly). Contohnya:
 QUEL Berbasis pada bahasa kalkulus relational
 QBE Berbasis pada bahasa kalkulus relational
 SQLBerbasis pada bahasa kalkulus relational dan aljabar
relational

46 | M o d u l K u l i a h B a s i s D a t a
4) Evaluasi
1. Tentukan Relation Key pada diagram dibawah ini

2. Buat tabel-tabel dan keterhunbungannya :


 Siswa, pelajaran, guru dengan minimal masing-masing
mempunyai 5 record/tuple/baris.
 Buat tabel baru untuk keterhubungannya.
 Tunjukan attribut kunci yang ada.
 ERD

47 | M o d u l K u l i a h B a s i s D a t a
Jawaban

1. Relation Key :
Entitas Account
Candidat Key : Account_number, balance
Primary Key : account_number
Alternate Key : balance
Foreign Key : –
Entitas Branch
Candidat Key : branch-name, branch-city, assets
Primary Key : branch-name
Alternate Key : branch-city, assets
Entitas Customer
Candidat Key : customer-name, customer-street, customer-city
Primary Key : customer-name
Alternate Key : customer-street, customer-city
Entitas Loan
Candidat Key : loan-number, amount
Primary Key : loan-number
Alternate Key : amount

2.

48 | M o d u l K u l i a h B a s i s D a t a
49 | M o d u l K u l i a h B a s i s D a t a
50 | M o d u l K u l i a h B a s i s D a t a
51 | M o d u l K u l i a h B a s i s D a t a
E. Kegiatan Pembelajaran 5
1) Structured Query Language (SQL)

2) Tujuan Materi Pembelajaran


a. Agar mahasiswa mengerti dan memahami konsep SQL

3) Materi Pembelajaran

Structured Query Language (SQL)


Structured Query Language (SQL) adalah sistem manajemen database
relasional (RDBMS) yang dirancang untuk aplikasi dengan arsitektur
client/server. Istilah client, server, dan client/server dapat digunakan untuk
merujuk kepada konsep yang sangat umum atau hal yang spesifik dari
perangkat keras atau perangkat lunak.

Sejarah kemunculan SQL

Bila berbicara mengenai sejarah munculnya dan pengertian SQL dapat


mengacu pada artikel dari Jhonny Oracle yang merupakan salah seorang
peneliti di IBM. Artikel tersebut membahas mengenai ide pembuatan
sebuah basis data relasional yang muncul di tahun 1970, tepatnya pada
bulan Juni. Pada artikel tersebut juga dibahas mengenai kemungkinan di
masa mendatang untuk menciptakan sebuah bahasa data yang standar.
Oleh karena itulah kemudian muncul istilah SEQUEL yang mengacu pada
singkatan dari Structured English Query Language.

Selang beberapa waktu, IBM lantas mencanangkan proyek basis data


relasional SEQUEL dan karena namanya cukup sulit dieja maka disingkat
menjadi SQL. Setelah proses standardisasi selesari tahun 1986, lalu SQL
mengalami perbaikan tahun 1989. Tahun 1992 muncul versi SQL92 dan di
tahun 1999 dengan berbagai pembaharuan muncullah SQL99. Namun,

52 | M o d u l K u l i a h B a s i s D a t a
dalam dunia IT SQL yang sering digunakan mereferensikan pada SQL92.
Meski begitu, sampai sekarang pun sebenarnya tidak ada sebuah server
berbasis data yang menggunakan maupun mendukung SQL99. Ini lebih
tergantung pada dialek masing-masing server yang digunakan.

Beberapa jenis perintah SQL yang perlu diketahui

 Data Definition Language (DDL)


Jenis perintah dasar yang pertama adalah Data Definition Language atau
biasa disingkat dengan DDL. Perintah dasar ini sebenarnya merupakan
perintah paling mendasar dari bahasa SQL. Tujuannya untuk membuat
struktur sebuah database. Kemudian, perintah dasar DDL masih dibedakan
lagi ke dalam setidaknya lima jenis perintah yakni bisa kamu lihat di bawah ini.

o Perintah Create: sebuah perintah yang bisa kamu gunakan ketika


membuat sebuah database yang baru, baik itu berupa tabel baru
atau sebuah kolom baru. Kamu bisa membuat
sebuah query dengan contoh ‘CREATE DATABASE
nama_database.
o Perintah Alter: biasa digunakan ketika seseorang ingin mengubah
struktur tabel yang sebelumnya sudah ada. Bisa jadi dalam hal ini
adalah seperti nama tabel, penambahan kolom, mengubah,
maupun menghapus kolom serta menambahkan atribut lainnya.
o Perintah Rename: dapat kamu gunakan untuk mengubah sebuah
nama di sebuah tabel ataupun kolom yang ada. Bila kamu
menggunakan perintah ini maka query-nya menjadi ‘RENAME
TABLE nama_tabel_lama TO nama_tabel_baru”
o Perintah Drop: Bisa kamu gunakan dalam menghapus baik itu
berupa database, table maupun kolom hingga index.
o Perintah Show: perintah DDL ini digunakan untuk menampilkan
sebuah tabel yang ada.

53 | M o d u l K u l i a h B a s i s D a t a
Pada contoh perintah di atas memiliki arti bahwa akan di buat suatu table baru
bernama Buku_Perpus yang memiliki kolom entitas seperti id yang di beri
primary key atau tidak bisa sama dengan data lainya, di sana akan di buat
juga kolom Kode_buku dengan tipe data varchar yang memiliki kapasitas
tampung sebanyak 20 karakter dan dapat di kosongkan dengan mencatumkan
kode NULL, Selain itu ada juga Judul_buku yang bertipe data Varchar dengan
kapasitas tampung 225 karakter dan tidak boleh kosong dengan kode NOT
NULL. Terakhir ada tanggal_terbit dengan tipe data DATE dan boleh di
kosongkan dengan kode NULL.

 Data Manipulation Language (DML)


Berikutnya dalam pengertian SQL, dikenal dengan adanya Data
Manipulation Language (DML). Seperti namanya, perintah dasar SQL ini
bertujuan untuk memanipulasi data yang ada dalam sebuah database.
Perintah dalam DML juga terbagi ke dalam empat jenis. Beberapa di
antaranya adalah insert, select, update, dan delete.
o Perintah Insert: Kamu bisa menggunakan perintah ini untuk
memasukkan sebuah record baru di dalam sebuah
tabel database.
o Perintah Select: Pada perintah ini kamu dapat
menggunakannya dalam menampilkan maupun mengambil
sebuah data pada tabel. Data yang diambil pun tidak hanya
terbatas pada satu jenis saja melainkan lebih dari satu tabel
dengan memakai relasi.

54 | M o d u l K u l i a h B a s i s D a t a
o Perintah update: Ini dapat kamu gunakan ketika ingin
melakukan pembaruan data di sebuah tabel. Contohnya saja
jika ada kesalahan ketika memasukkan sebuah record. Kamu
tidak perlu menghapusnya dan bisa diperbaiki menggunakan
perintah ini.
o Perintah Delete: Perintah DML ini dapat digunakan ketika kamu
ingin menghapus sebuah record yang ada dalam sebuah tabel.

Pada contoh perintah DML (Data Manipulation Language) di atas terdapat


tiga perintah yang memiliki fungsi berbeda, pada baris pertama adalah
perintah yang berfungsi untuk menapilkan data, di sana terdapat perintah
utamanya adalah SELECT yang artinya menampilkan, kemudian di ikuti
kode bintang yang artinya ‘semua’. Di ikuti kode FROM Buku yang
memiliki arti dari Table Buku, Jika di baca secara lengkap akan berbunyi
Menampilkan seluruh data yang terdapat pada table buku.

Kemudian pada baris kedua terdapat perintah yang menggunakan kode


utama UPDATE Buku yang artinya akan mengubah data yang sudah ada
pada table buku, di ikuti dengan SET Judul_buku = ‘Programmer’, yang
artinya data yang sudah ada akan di ubah dengan kata ‘Programmer’. lalu
apa yang akan di ubah? yaitu terdapat pada kode terakhir WHERE
id=’123′, judul buku yang akan di ubah dengan ‘programmer’ adalah judul
buku yang memiliki id 123.

55 | M o d u l K u l i a h B a s i s D a t a
Terakhir ada baris kode yang berfungsi untuk menambahkan data, di sana
terdapat fungsi INSERT INOT Buku, yang artinya data akan di masukan ke
dalam table Buku yang di ikuti dengan nama-nama kolomnya secara urut.
Kemudia di ikuti Values dengan isi data sesuai urutan nama kolomnya,
terakhir di tutup dengan tanda petik dua pada setiap perintah SQL.

 Data Control Language (DCL)

Perintah dasar berikutnya adalah Data Control Language atau DCL.


Perintah SQL ini digunakan khususnya untuk mengatur hak apa saja yang
dimiliki oleh pengguna. Baik itu hak terhadap sebuah database ataupun
pada tabel maupun field yang ada. Melalui perintah ini, seorang admin
database bisa menjaga kerahasiaan sebuah database. Terutama untuk
yang penting. DCL berdasarkan perintah dasarnya terbagi dalam dua
perintah utama yakni:
o Perintah Grant: Perintah ini biasanya digunakan ketika
admin database ingin memberikan hak akses ke user lainnya. Tentu
pemberian hak akses ini dapat dibatasi atau diatur. Dalam hal ini
admin pun dapat memberikan akses mengenai perintah dalam DML
di atas.
o Perintah Revoke: Kebalikannya dari Grant, Revoke terkadang
sering digunakan untuk mencabut maupun menghapus hak akses
seorang pengguna yang awalnya diberikan akses oleh admin
database melalui perintah Grant sebelumnya.
o
Selain ketiga jenis perintah SQL, terdapat juga 2 jenis SQL tambahan
: Transaction Control Language, dan Programmatic SQL.
 Transaction Control Language (TCL) adalah perintah SQL
untuk proses transaksi. Proses transaksi ini digunakan untuk
perintah yang lebih dari 1, namun harus berjalan semua, atau
tidak sama sekali. Misalnya untuk aplikasi critical seperti transfer
uang dalam sistem database perbankan. Setidaknya akan ada 2

56 | M o d u l K u l i a h B a s i s D a t a
perintah, yaitu mengurangi uang nasabah A, dan menambah
uang nasabah B. Namun jika terjadi kesalahan sistem, kedua
transaksi ini harus dibatalkan. Tidak bisa hanya satu perintah
saja. Termasuk ke dalam TCL adalah perintah : COMMIT,
ROLLCABK, dan SET TRANSACTION.
 Programmatic SQL berkaitan dengan sub program (stored
procedure) maupun penjelasan mengenai struktur database.
Contoh perintah seperti : DECLARE, EXPLAIN, PREPARE, dan
DESCRIBE.

Fungsi SQL

Keberadaan SQL dalam mengelola sebuah database memberikan fungsi


tersendiri. Bagi seorang admin, adanya SQL dapat memungkinkan kamu untuk
mengakses maupun mengubah database. Kamu pun bisa menjalankan
sebuah query maupun mengambil data yang dibutuhkan. Termasuk pula
memperbarui atau menyisipkan data dalam database.

SQL juga bisa digunakan untuk menghapus sebuah data pada database. Fungsi
lainnya adalah untuk membuat sebuah prosedur baru dan ini akan tersimpan
dalam sebuah database. Selain itu juga bisa mengatur hak akses dalam tabel,
prosedur, maupun hal-hal penting lainnya.

57 | M o d u l K u l i a h B a s i s D a t a
F. Kegiatan Pembelajaran 6
Normalisasi

1) Tujuan Materi Pembelajaran


Mahasiswa memahami konsep basis data, memahami komponen
dalam basis data, serta menjelaskan keuntungan dan kerugian dalam
penggunaan basis data

2) Materi Pembelajaran

Normalisasi ( normalize)
 Normalisasi merupakan salah satu cara pendekatan atau teknik yang
digunakan dalam membangun desain logic database relation dengan
menerapakan sejumlah aturan dan kriteria standard.
 Tujuan dari normalisasi adalah untuk menghasilakan struktur tabel
yang normal atau baik.
 Teknik normalisasi adalah upaya agar desain logik tabel-tabel berada
dalam bentuk normal(normal form) yang dapat didefinisikan dengan
menggunakan ketergantungan fungsi (functional dependency).
 Aturan-aturan normalisasi dinyatakan dalam istilah bentuk normal.
 Bentuk normal adalah suatu aturan yang dikenakan pada relasi-
relasi atau tabel-tabel dalam database dan harus dipenuhi oleh
relasi atau tabel tersebut pada level-level normalisasi. Suatu
relasi dikatakan dalam bentuk normal tertentu jika memenuhi
kondisi tertentu juga.
 Proses Normalisasi ‰ Data diuraikan dalam bentuk tabel,
selanjutnya dianalisis berdasarkan persyaratan tertentu ke
beberapa tingkat. ‰ Apabila tabel yang diuji belum memenuhi
persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi
beberapa tabel yang lebih sederhana sampai memenuhi bentuk
yang optimal

58 | M o d u l K u l i a h B a s i s D a t a
Beberapa bentuk normalisasi diantaranya adalah bentuk tidak normal
(unnormalize), bentuk normal pertama (1NF), bentuk normal kedua
(2NF), normal ketiga (3NF), dan seterusnya.

1. Bentuk Tidak Normal (unnormalize)


Bentuk tidak normal (unnormalized) merupakan kumpulan data yang direkam
tidak ada keharusan dengan mengikuti suatu format tertentu. Pada bentuk tidak
normal terdapat repeating group (Pengulangan Group), sehingga pada kondisi ini
data menjadi permasalahan dalam melakukan manipulasi data (insert, update,
dan delete) atau biasa disebut anomali.

Contoh:

Normal Pertama (1 NF)

Dalam relational database tidak diperkenankan adanya repeating group karena


dapat berdampak terjadinya anomali. Oleh karena itu tahap unnormal akan
menghasilkan bentuk normal tahap pertama (1 NF) yang dapat di definisikan
sebagai berikut:

Normal pertama (1 NF), suatu relasi atau tabel memenuhi normal pertama jika
dan hanya jika setiap setiap atribut dari relasi tersebut hanya memiliki nilai
tunggal dalam satu baris (record).

Tiap field hanya satu pengertian, bukan merupakan kumpulan kata yang
mempunyai arti ganda dan tidak ada set atribut yang berulang-ulang atau atribut
bernilai ganda.

59 | M o d u l K u l i a h B a s i s D a t a
Pada data tabel sebelumnya data belum normal sehingga harus diubah kedalam
bentuk normal pertama dengan cara membuat baris berisi kolom jumlah yang
sama dan setiap kolom hanya mengandung satu nilai.

Berikut perubahannya:

Bentuk normalisasi pertama (1 NF) ini mempunyai ciri yaitu setiap data dibentuk
file datar atau rata (flat file), data dibentuk dalam satu record demi satu record
dan nilai-nilai dari field-field berupa nilai yang tidak dapat dibagi-bagi lagi.

Normal Kedua (2 NF)

Dalam perancangan database relational tidak diperkenankan adalah


partial functional dependency kepada primary key, karena dapat berdampak
terjadinya anomali. Oleh karena itu tahap normalisasi pertama akan
menghasilkan bentuk normal kedua (2 NF) yang dapat didefinisikan sebagai
berikut:

Normalisasi kedua (2 NF), suatu relasi memenuhi relasi kedua jika dan hanya jika
relasi tersebut memenuhi normal pertama dan setiap atribut yang bukan kunci
(non key) bergantung secara fungsional terhadap kunci utama (Primary key).

60 | M o d u l K u l i a h B a s i s D a t a
Berikut perubahannya:

Bentuk normal kedua ini mempunyai syarat yaitu bentuk data yang telah
memenuhi kriteria bentuk normal pertama.
Atribut bukan kunci haruslah bergantung secara fungsional pada kunci utama
(primary key), sehingga untuk membentuk normal kedua haruslah sudah
ditentukan kunci-kunci field.

Normal Ketiga (3 NF)

Dalam perancangan database relational tidak diperkenankan adanya transitive


dependency karena dapat berdampak terjadinya anomali. Oleh karena itu harus
dilakukan normalisasi tahap ketiga (3 NF) yang dapat didefinisikan sebagai
berikut:
Normalisasi ketiga (3 NF), suatu relasi memenuhi normal ketiga jika dan hanya
jika relasi tersebut memenuhi normal kedua dan setiap atribut bukan kunci (non
key) tidak mempunyai transitive functional dependency kepada kunci utama
(primary key).

61 | M o d u l K u l i a h B a s i s D a t a
Berikut perubahannya:

Bentuk normal ketiga (3 NF) ini relasi haruslah dalam bentuk normal kedua dan semua
atribut bukan kunci utama tidak punya hubungan transitif. Artinya setiap atribut bukan
kunci harus bergantung hanya pada primary key secara keseluruhan, dan bentuk
normalisasi ketiga sudah didapat tabel yang optimal.

62 | M o d u l K u l i a h B a s i s D a t a
G. Kegiatan Pembelajaran 7
Model Data Entity Relationship Diagram
1) Tujuan Materi Pembelajaran
a. Mahasiswa memahami konsep dari ERD
b. Mahasiswa mampu membuat pemodelan data dengan diagram
ERD
2) Materi Pembelajaran

MODEL DATA
PENGERTIAN MODEL DATA
Sekumpulankonsep-konsep untuk menerangkan data, hubungan-hubungan
antara data dan batasanbatasan data yang terintegrasi di dalam suatu
organisasi.
JENIS-JENIS MODEL DATA
1. Model data berbasis objek
Model data berbasis objek menggunakan konsep entitas, atribut dan
hubungan antar entitas. Terdiri dari :
 Entity Relationship model (E-R MODEL)
Model untuk menjelaskan hubungan antar data dalam basis
data berdasarkan suatu persepsi bahwa real word terdiri dari
objek-object dasar yang mempunyai hubungan atau relasi
antara objek-objek tersebut.
E-R MODEL berisi ketentuan /aturan khusus yang harus
dipenuhi oleh isi database. Aturan terpenting adalah
MAPPING CARDINALITIES, yang menentukan jumlah
entity yang dapat dikaitkan dengan entity lainnya melalui
relationship-set.

BINARY MODEL
Pemetaan data dengan menggunakan 0 dan 1, atau true dan
false dengan kondisi tertentu atau hanya dalam alternatif.

63 | M o d u l K u l i a h B a s i s D a t a
2. Model data Konseptual
Model yang dibuat berdasarkan anggapan bahwa dunia nyata terdiri
dari koleksi obyek-obyek dasar yang dinamakan entitas (entity) serta
hubungan (relationship) antara entitas-entitas itu. Biasanya
direpresentasikan dalam bentuk Entity Relationship Diagram.
Manfaat Penggunaan CDM dalam perancangan database :
 Memberikan gambaran yang lengkap dari struktur basis data
yaitu arti, hubungan, dan batasan batasan .
 Alat komunikasi antar pemakai basis data, designer, dan analis.

3. Model data fisik


Digunakan untuk menguraikan data pada internal level
Beberapa model yang umum digunakan :
 Unifying model
Model ini menggabungkan memori dan transaksi database
dalam satu kesatuan model.
 Frame memory
Frame Memory adalah sebuah virtual view dari tempat
penyimpanan sekunder yang digunakan untuk mendukung
penyimpanan record database

4. model data berbasis record


Model ini berdasarkan pada record untuk menjelaskan kepada user
tentang hubungan logic antar data dalam basis data.

5. Model Hirarki
Dimana data serta hubungan antar data direpresentasikan dengan
record dan link (pointer), dimana record-record tersebut disusun

64 | M o d u l K u l i a h B a s i s D a t a
dalam bentuk tree (pohon), dan masing-masing node pada tree
tersebut merupakan record/grup data elemen dan memiliki hubungan
cardinalitas 1:1 dan 1:M.

PERBEDAAN DENGAN OBJECT BASED DATA MODEL


Pada record based data model disamping digunakan untuk menguraikan
struktur logika keseluruhan dari suatu database, juga digunakan untuk
menguraikan implementasi dari system database ( higher level description
of implementation).

BASIS DATA

Basis data atau kerap disebut “database” merupakan kumpulan informasi


yang disimpan secara sistematis dalam perangkat komputer sehingga
dapat dicari dan diperiksa melalui suatu program komputer saat informasi
tertentu sedang dibutuhkan. Ketika mendokumentasikan data atau proses
hingga menjadi database, kamu dapat meningkatkan pemahaman atas
sistem tersebut dengan melihatnya dari beberapa perspektif. Oleh karena
itu, agar dapat menjadi sistem database yang rapi dan terstruktur, kamu
membutuhkan Entity Relationship Diagram (ERD), yaitu sebuah model
untuk menyusun database agar dapat menggambarkan data yang
mempunyai relasi dengan database yang akan didesain.

Diagram ER biasanya berhubungan langsung dengan diagram data


flow untuk menampilkan konten data store. Ketiga hal tersebut dapat
membantu memvisualisasikan bagaimana data saling terhubung dan
berguna untuk mengonstruksi basis data relasional. Saat kamu ingin mulai
membuat ERD, ada beberapa istilah umum dan simbol ERD yang perlu
kamu pahami terlebih dulu.

65 | M o d u l K u l i a h B a s i s D a t a
 Entity Relationship Diagram (ERD) untuk mendokumentasikan data
perusahaan dengan mengidentifikasi jenis entitas (entity) dan
hubungannya.
 ERD merupakan suatu model jaringan yang menggunakan susunan
data yang disimpan pada sistem secara abstrak.
 ERD juga menggambarkan hubungan antara satu entitas yang memiliki
sejumlah atribut dengan entitas yang lain dalam suatu sistem yang
terintegrasi.
 ERD digunakan oleh perancang sistem untuk memodelkan data yang
nantinya akan dikembangkan menjadi database.
 Model data ini juga akan membantu pada saat melakukan analisis dan
perancangan database, karena model data ini akan menunjukkan
bermacam-macam data yang dibutuhkan dan hubungan antar data.
 ERD ini juga merupakan model konseptual yang dapat
mendeskripsikan hubungan antara file yang digunakan untuk
memodelkan struktur data serta hubungan antar data

66 | M o d u l K u l i a h B a s i s D a t a
Selain dari simbol diatas, sebenarnya ada simbol lain lagi yaitu entitas
asosiatif, atribut derivat, dan lainnya. Akan tetapi secara garis besar ERD
terdiri dari atas tiga komponen, yaitu entitas (entity), atribut (attribute), dan
relasi atau hubungan (relation). Entitas merupakan dasar yang terlibat
dalam sistem. Atribut atau field berperan sebagai penjelas dari entitas, dan
relasi atau hubungan yang terjadi antara dua entitas..
Komponen penyusun ERD:
1. Entitas
Kumpulan objek yang dapat diidentifikasikan secara unik atau saling
berbeda. Simbol dari entitas biasanya digambarkan dengan persegi panjang.
Selain itu, ada juga “Entitas Lemah” yang dilambangkan dengan gambar persegi
panjang kecil di dalam persegi panjang yang lebih besar. Disebut entitas lemah
karena harus berhubungan langsung dengan entitas lain sebab dia tidak dapat
teridentifikasi secara unik.

Untuk menggambarkan entitas dilakukan dengan cara mengikuti aturan berikut


 Entitas dinyatakan dengan simbol persegi panjang.
 Nama entitas berupa kata benda tinggal
 Nama entitas sebisa mungkin menggunakan nama yang mudah dipahami
dan menyatakan maknanya dengan jelas.

2. Atribut
Setiap entitas pasti mempunyai elemen yang disebut atribut yang berfungsi
untuk mendeskripsikan karakteristik dari entitas tersebut. Atribut kunci merupakan

67 | M o d u l K u l i a h B a s i s D a t a
hal pembeda atribut dengan entitas. Gambar atribut diwakili oleh simbol elips dan
terbagi menjadi beberapa jenis:
1. Atribut kunci (key): atribut yang digunakan untuk menentukan entitas
secara unik. Contoh: NPWP, NIM (Nomor Induk Mahasiswa).
2. Atribut simpel: atribut bernilai tunggal yang tidak dapat dipecah lagi
(atomic). Contoh: Alamat, tahun terbit buku, nama penerbit.
3. Atribut multinilai (multivalue): atribut yang memiliki sekelompok nilai
untuk setiap entitas instan. Contoh: nama beberapa pengarang dari
sebuah buku pelajaran.
4. Atribut gabungan (composite): atribut yang terdiri dari beberapa
atribut yang lebih kecil dengan arti tertentu. Contoh: nama lengkap
yang terbagi menjadi nama depan, tengah, dan belakang.
5. Atribut derivatif: atribut yang dihasilkan dari atribut lain dan tidak
wajib ditulis dalam diagram ER. Contoh: usia, kelas, selisih harga.

Atribut berfungsi sebagai penjelas sebuah entitas untuk mengambarkan


atribut yang dilakukan dengan mengikuti aturan sebagai berikut:
 Atribut dinyatakan dengan simbol ellipse.
 Nama atribut ditulis dalam simbol ellipse.
 Nama atribut berupa kata benda tunggal.
 Nama atribut sebisa mungkin menggunakan nama yang mudah
dipahami dan padat menyatakan maknanya dengan jelas.
 Atribut dihubungkan dengan entitas yang sesuai dengan
menggunakan garis.

68 | M o d u l K u l i a h B a s i s D a t a
3. RELASI (relation)
Relasi atau hubungan adalah kejadian atau transaksi yang terjadi di antara dua
entitas yang keterangannya perlu disimpan dalam database.
Aturan penggambaran relasi antar entitas adalah:
 Relasi dinyatakan dengan simbol belah ketupat.
 Nama relasi dituliskan di dalam simbol belah ketupat.
 Relasi menghubungkan dua entitas.
 Nama relasi menggunakan kata kerja aktif (diawali awalan me) tunggal.
 Nama relasi sebisa mungkin menggunakan nama yang mudah dipahami
dan dapat menyatakan maknanya dengan jelas.

VARIAN RELASI
#1 Relasi Binery
Relasi binary merupakan relasi yang terjadi antara 2 himpunan
entitas yang berbeda. Relasi ini merupakan relasi yang umum digunakan.
Relasi antara mahasiswa mengambil matakuliah yang menunjukkan binery
relation.

69 | M o d u l K u l i a h B a s i s D a t a
#2 Relasi Unary
Relasi Unary merupakan variasi relasi yang terjadi dari sebuah
himpunan entitas ke himpunan entitas yang sama, dan unary sering
disebut dengan relasi tunggal. Relasi antara dosen dan mendampingi
yang menunjukkan unary relation.

#3 Relasi N-ary
Relasi N-ary merupakan relasi dari 3 entitas atau lebih. Relasi ini
untuk menghubungkan dari tiga entitas yang dimasukan ke relasi multi
entitas. N-ary relation menunjukkan secara lebih jelas bahwa bahwa
beberapa entitas berpartisipasi dalam sebuah relasi tunggal.
Bentuk relasi semacam ini sebisa mungkin dihindari karena akan
mengaburkan derajat relasi yang ada dan akan menyebabkan
perencanaan database semakin kompleks.

70 | M o d u l K u l i a h B a s i s D a t a
4. Garis
Garis yang menghubungkan antar atribut untuk menunjukkan hubungan
entitas pada diagram ER.

Langkah-langkah membuat ERD


1. Identifikasi entitas
Langkah pertama dalam membuat ERD adalah mengidentifikasi semua
entitas yang akan kamu gunakan. Tulislah dalam sebuah persegi panjang
dengan deskripsi singkat tentang informasi apa yang akan disimpan.
Gambarlah sebuah persegi untuk setiap entitas yang terpikirkan olehmu,
jangan lupa berikan space di sekitar kotak untuk informasi lainnya nanti.
2. Identifikasi dan deskripsikan relasi entitas
Cari dua entitas yang sekiranya mempunyai hubungan. Jika sudah
ditemukan, buatlah garis yang menghubungkan keduanya. Selanjutnya,
bagaimanakah kedua entitas tersebut berhubungan? Kamu bisa membuat
simbol diamond untuk mendeksripsikan hubungan kedua entitas tersebut.
3. Tambahkan atribut
Jangan lupa tambahkan atribut kunci untuk setiap entitas dengan
menggunakan simbol oval. Ingat beberapa perbedaan atribut yang sudah
disebutkan di atas.
4. Penuhi diagram
Setelah kamu sudah membuat beberapa contoh entitas yang
terhubungkan oleh garis dan membuat diamond di antara kedua entitas
tersebut, berarti semua hubungan telah mempunyai deskripsi masing-
masing. Mungkin tidak setiap entitas mempunyai hubungan, atau

71 | M o d u l K u l i a h B a s i s D a t a
beberapa di antaranya malah memiliki relasi yang banyak, tapi itu tidak
masalah, tetap lanjutkan ERD-mu.

Setelah diagrammu sudah penuh, pastikan kembali hal-hal yang tadinya kamu
ragukan, apakah entitas dan atribut yang belum mempunyai hubungan memang perlu
ditulis? Jika tidak, kamu bisa menghapus atau mengubah nama entitas tersebut. Berikut
ini ada beberapa tips agar ERD-mu efektif dan mudah dipahami:

1. Pastikan nama entitas hanya muncul sekali dalam setiap diagram.


2. Namai setiap entitas, relasi, dan atribut pada program.
3. Uji kembali dengan teliti relasi antarentitas. Apakah mereka dibutuhkan? Atau
adakah hubungan-hubungan yang terlewatkan? Buanglah relasi yang
berulang. Jangan gabungkan relasi dengan satu sama lain.
4. Gunakan warna terang yang berbeda untuk menandai porsi penting ERD-mu.

72 | M o d u l K u l i a h B a s i s D a t a
73 | M o d u l K u l i a h B a s i s D a t a
A. Kegiatan Pembelajaran 8
Kamus Data

1) Tujuan Materi Pembelajaran


a. Mahasiswa mampu dan memahami konsep dasar kamus data,
serta mampu membuat kamus data

2) Materi Pembelajaran

Kamus data (data dictionary)


Kamus data (data dictionary) adalah suatu penjelasan tertulis tentang
suatu data yang berada di dalam database atau 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 pertama berbasis kamus dokumen tersimpan dalam suatu


bentuk hard copy dengan mencatat semua penjelasan data dalam bentuk yang
dicetak. Walau sejumlah kamus berbasis dokumen masih ada, praktik yang
umum saat ini ialah mempergunakan kamus data yang berbasis komputer. Pada
kamus data berbasis komputer, penjelasan data dimasukkan ke dalam komputer
dengan memakai Data Description Language (DDL) dari
sistem manajemen database, sistem kamus atau peralatan CASE Kamus data

74 | M o d u l K u l i a h B a s i s D a t a
tidak perlu dihubungkan dengan diagram arus data dan formulir-formulir kamus
data dirancang untuk mendukung diagram arus data.

Kamus Data merupakan katalog fakta tentang data dan kebutuhan-kebutuhan


informasi dari suatu sistem informasi. Kamus data selain digunakan untuk
dokumentasi dan mengurangi redudansi, juga dapat digunakan untuk:

1. Memvalidasi diagram aliran data dalam hal kelengkapan dan


keakuratan
2. Menyediakan suatu titik awal untuk mengembangkan layar dan
laporan-laporan
3. Menentukan muatan data yang disimpan dalam file-file
4. Mengembangkan logika untuk proses-proses diagram aliran data
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.

Elemen-Elemen Data
Kamus data harus mencerminkan keterangan yang jelas tentang
data yang akan direkam. Untuk keperluan tujuan ini, kamus data
harus memuat:
 Nama Arus Data
Karena kamus data didasarkan pada aliran data di DFD, maka
nama dari arus data juga harus dicatat di KD.
 Alias
Alias atau nama lain dari data dapat ditulis jika ada nama lain.
Alias perlu ditulis karena data yang sama memiliki nama yang
berbeda untuk orang atau departemen satu dengan yang lain.
Misalnya, penjualan faktur dan bagian pembuat berlangganan
sebut sebagai bukti faktur, sedangkan persediaan gudang
menyebutnya salinan permintaan. Kedua faktur dan meminta
75 | M o d u l K u l i a h B a s i s D a t a
salinan persediaan ini memiliki struktur data yang sama, namun
memiliki struktur yang berbeda.
 Bentuk Data
Bentuk data, telah diketahui bahwa aliran data dapat mengalir :
1. Dari luar kesatuan proses, aliran data biasanya
disimpan dalam dokumen atau bentuk.
2. Hasil dari proses persatuan ke luar, aliran data
biasanya terdapat dalam laporan media atau query
tampilan layar atau cetakan dokumen;
3. Hasil dari proses ke proses lain, aliran data biasanya
dalam bentuk variabel atau parameter yang diperlukan
oleh penerima;
4. Hasil dari proses yang dicatat untuk penyimpanan
data, aliran data biasanya dalam bentuk variabel.
5. Dari menyimpan data dibaca oleh suatu proses, aliran
data biasanya dalam bentuk bidang (item data).
Dengan demikian bentuk arus data yang dapat berupa :
dokumen dasar atau formulir, dokumen, cetakan komputer, laporan
tercetak, tampilan di layar, variabel, parameter, bidang.
 Data Flow
Aliran data menunjukkan dari mana arus data dan mana data
akan menuju. Informasi ini harus dicatat di KD sehingga Anda
dapat dengan mudah mencari arus data di DAD.
 Penjelasan
Untuk lebih memperjelas lagi tentang makna dari arus data yang
dicatat di KD, maka penjelasan dapat diisi dengan deskripsi dari
aliran data. Sebagai contoh, nama aliran data Salinan
Permintaan Persediaan, dapat digambarkan sebagai salinan
faktur penjualan untuk meminta barang gudang.

76 | M o d u l K u l i a h B a s i s D a t a
 Periode
periode ini menunjukkan ketika aliran data ini. Periode harus
dicatat di KD karena dapat digunakan untuk mengidentifikasi
ketika input data harus dimasukkan ke dalam sistem, ketika
proses program harus dilakukan dan kapan laporan-laporan
harus dihasilkan.
 Volume
Volume perlu dicatat di KD adalah tentang volume rata-rata dan
volume puncak aliran daa. Rata-rata volume menunjukkan
jumlah rata-rata aliran data dalam jangka waktu tertentu dan
volume puncak menunjukkan volume tertinggi. Volume ini
digunakan untuk mengidentifikasi besarnya penyimpanan
eksternal yang akan digunakan, kapasitas dan jumlah perangkat
input, perangkat pengolahan dan perangkat output.
 Struktur Data
Struktur data menunjukkan aliran data yang tercatat di KD terdiri
dari data item-item.

Menggambarkan Struktur Data (kamus data komposit)


Pada kebanyakan sistem dalam dunia nyata (dimana kita bekerja), kadang-
kadang elemen data terlalu kompleks utuk didefinisikan. Kekompleksan tersebut
seharusnya diuraikan melalalui sejumah elemen data yang lebih sederhana.
Kemudian elemen dat yang lebih sederhana tersebut didefinisikan kembali
hingga nilai dan satuan yang relevan (yang sifatnya elementer). Pendefinisian
tersebut menggunakan notasi yang umumnya digunakan dalam menganalisas
sistem dengan menggunakan sejumlah symbol yaitu:

77 | M o d u l K u l i a h B a s i s D a t a
Simbol-Simbol Kamus Data

No Simbol Uraian

1 = Terdiri dari, mendefinisikan, diuraikan menjadi

2 + Dan

Menunjukkan suatu elemen yang bersifat pilihan (opsional).


Elemen-elemen yang bersifat pilihan ini bisa dikosongkan pada
3 ()
layar masukan atau bisa juga dengan memuat spasi atau nol untuk
field-field numeric pada struktur file.

Menunjukkan elemen-elemen repetitive, juga disebut kelompok


berulang atau tabel-tabel. Kemungkinan bisa ada satu atau
beberapa elemen berluang di dalam kelompok tersebut. Kelompok
4 {}
berulang bisa mengandung keadaan-keadaan tertentu, seperti
misalnya, jumlah pengulangan yang pasti atau batas tertinggi dan
batas terendah untuk jumlah pengulangan.

Menunjukkan salah satu dari dua situasi tertentu. Satu elemen bisa
ada
sedangkan elemen lainnya juga ada, tetapi tidak bisa kedua-duanya
5 []
ada seara bersamaan. Elemen-elemen yang ada di dalam tanda
kurung ini saling terpisah satu sama lain. (dengan kata lain, memilih
salah satu dari sejumlah alternatif, seleksi)

6 ** Komentar

7 @ Identifikasi atribut kunci

8 | Pemisah sejumlah alternatif pilihan antara simbol [ ]

78 | M o d u l K u l i a h B a s i s D a t a
Cara Pemakaian Simbol Kamus Data
Contoh-contoh dari pemakaian simbol-simbol di atas, adala

Contoh 1:
Tembusan Permintan Persediaan =
Kode Langganan +
Nama Langganan +
Tanggal Penjualan +
Nomor Faktur +
1{ Informasi Barang }5 +
Total Penjualan +
( Potongan Penjualan) +
Pajak Penjualan +
Total Dibayar +
Jenis Penjualan
Informasi Barang =
Kode Barang +
Nama Barang +
Unit Jual +
Harga Satuan +
Total Harga
Jenis Penjualan = [ Cash | Credit ]
Contoh 2:
Dua diagram alir data di bawah ini dan masukan-masukan kamus data yang
berhubungan untuk memproduksi pembayaran cek pegawai.

79 | M o d u l K u l i a h B a s i s D a t a
Struktur Data:
Record Pegawai =
Nomor Pegawai +
Informasi Pribadi +
Informasi Gaji +
Informasi Pembayaran Saat Ini +
Informasi Gaji Tahunan Sampai Hari Ini
Record File Waktu =
Nomor Pegawai +
Nama Pegawai +
Jam Kerja
Pembayaran Cek Gaji =
Nomor Pegawai +
Nama Pegawai +
Alamat +
Jumlah Pembayaran Saat Ini +
Jumlah Gaji Tahunan Sampai Saat Ini

80 | M o d u l K u l i a h B a s i s D a t a
Informasi Gaji =
Perhitungan Pembayaran +
Jumlah Tanggungan
Jumlah Pembayaran Saat Ini =
Gaji Kotor +
Potongan Pajak Pemerintah +
Potongan Pajak Negara Bagian +
Potongan Pajak Jaminan Sosial +
Gaji Bersih
Contoh 3:
Nama = gelar+nama_pertama+nama_tengah+nama_akhir
Gelar = [Tuan|Nyonya|Nona|Doktor|Profesor]
Nama_pertama = karakter_valid
Nama_tengah = karakter_valid
Nama_akhir = karakter_valid
Karakter_vald = [A-Z|a-z|0-9|’|-| ]

Implementasi Kamus Data


Kamus data dapat diimplementasikan dengan menggunakan beberapa
pendekatan, diantaranya :

 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 :

81 | M o d u l K u l i a h B a s i s D a t a
1. Analisis Sistem Informasi Halaman 9 dari 13
2. KAMUS DATA
3. ISFOD

 Manual Kamus Data


Kamus data ini dibuat secara manual atau dengan kata lain pembuatan
kamus data ini dilakukan dengan :
1. Membuat kartu indeks untuk masing-masing item yang
didefinisikan
2. Menulis nama item tersebut dan tingkatannya.
3. menulis definisi dengan menggunakan operator-operator.
4. Menggunkan bagian belakang dari kartu untuk membuat
catatan tentang karakteristik fisik
5. Membuat masing-masing satu kartu untuk suatu nama alias.
6. Membuat satu entry untuk masing-masing satu istilah.
7. 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.

Sistem Kamus Data Komersial


Terdapat beberapa sistem kamus data yang telah dikembangkan oleh beberapa
sistem house dan tersedia secara komersial. Beberapa diantaranya adalah:
 Control 2(XX) olch MR1 Systems
 Data Catalogue oleh Synergctics
 Data Dictionary olehCincom
 Datamanager oleh MSP Inc.
 DB/DC Dictionary olch IBM
 Dictionary 204 oleh Computer Corporation of America
 IDMS Dictionary oleh Arthur Anderson
 UCC TEN oleh University Computing Co.
82 | M o d u l K u l i a h B a s i s D a t a
Disamping sistem kamus data yang dijual ini, beberapa paket DBMS juga
menyediakan program untuk membuat kamus data. Paket DBMS FoxBase+ versi
2.10 untuk computer mikro juga menyediakan suatu program untuk menghasilkan
dokumentasi sistem yang lengkap termasuk kamus data. Kelemahan dari kamus
data yang dihasilkan oleh paket ini adalah kamus data untuk dokumentasi sistem
yang telah selesai dibuat, bukan pada tahap analisis.

Contoh Kamus Data

83 | M o d u l K u l i a h B a s i s D a t a
H. Kegiatan Pembelajaran 9 dan 10
Entity Relationship Diagram

1) Tujuan Materi Pembelajaran


a. Mahasiswa mampu dan mengerti menjelaskan konsep ERD
b. Mahasiswa mampu menjelaskan hubungan atribut dan entitas

2) Materi Pembelajaran

ENTITY RELATIONSHIP DIAGRAM (ERD)


Konsep Dasar Model Entity Relationship
Model Entity Relationship diperkenalkan pertama kali oleh P.P. Chen pada
tahun 1976. Model ini dirancang untuk menggambarkan persepsi dari
pemakai dan berisi obyek-obyek dasar yang disebut entity dan hubungan
antar entity-entity tersebut yang disebut relationship. Pada model ER ini
semesta data yang ada dalam dunia nyata ditransformasikan dengan
memanfaatkan perangkat konseptual menjadik sebuah diagram, yaitu
diagram ER ( Entity Relationship)

Diagram Entity-Relationship melengkapi penggambaran grafik dari


struktur logika . Dengan kata lain Diagram E-R menggambarkan arti dari aspek
data seperti bagaimana entity-entity, atribut-atribut dan relationship-relationship
disajikan. Sebelum membuat Diagram E-R , tentunya kita harus memahami
betul data yang diperlukan dan ruang lingkupnya. Di dalam pembuatan diagram
E-R perlu diperhatikan penentuan sesuatu konsep apakah merupakan suatu
entity, atribut atau relationship.

 Tipe Entity
Entity adalah obyek yang dapat dibedakan dengan yang lain dalam
dunia nyata. Entity dapat berupa obyek secara fisik seperti orang,

84 | M o d u l K u l i a h B a s i s D a t a
rumah, atau kendaraan. Entity dapat pula berupa obyek secara
konsep seperti pekerjaan , perusahaan, dan sebagainya.
Tipe entity merupakan sekumpulan obyek dalam dunia nyata yang
mempunyai properti yang sama atau berasal dari entity yang sejenis.
Terdapat dua tipe Entity, Entity Kuat dan Entity Lemah. Entity kuat
adalah entity yang keberadaanya tidak tergantung pada entity lain,
misalkan tipe entity pegawai atau cabang. Sedangkan Entity Lemah
keberadaanya tergantung pada entity lain, misalkan tipe entity
tanggungan, dimana keberadaannya tergantung dari pegawai . Entity
disajikan dalam bentuk persegi panjang, entity kuat disajikan dengan
perseg panjang dengan satu garis, sedangkan entity lemah disajikan
dengan persegi panjang dobel .

ATRIBUT
Atribut adalah karakteristik dari entity atau relationship, yang menyediakan
penjelasan detail tentang entity atau relationship tersebut. Nilai Atribut merupakan
suatu data aktual atau informasi yang disimpan pada suatu atribut di dalam suatu
entity atau relationship. Atribut digambarkan dalam bentuk oval.
Jenis-jenis atribut :
 Key
Atribut yang digunakan untuk menentukan suatu entity secara unik.
 Atribut Simple
Atribut yang bernilai tunggal.
 Atribut Multivalue
Atribut yang memiliki sekelompok nilai untuk setiap instan entity.

85 | M o d u l K u l i a h B a s i s D a t a
 Atribut Composite
Suatu atribut yang terdiri dari beberapa atribut yang lebih kecil yang
mempunyai arti tertentu.

 Atribut Derivatif
Suatu atribut yang dihasilkan dari atribut yang lain.

86 | M o d u l K u l i a h B a s i s D a t a
Relationship
Relationship adalah hubungan yang terjadi antara satu atau lebih entity.
Relationship set adalah kumpulan relationship yang sejenis.

Derajat dari relationship


Derajat dari relationshp menjelaskan jumlah entity yang
berpartisipasi dalam suatu relationship. Terdapat tiga jenis derajat
dari relationship, unary degree (derajat satu), binary degree (derajat
dua) dan ternary degree (derajat tiga).
 Unary Degree (Derajat Satu)

 Binary Degree (Derajat Dua)

 Ternary Degree (Derajat Tiga)

87 | M o d u l K u l i a h B a s i s D a t a
Cardinality Ratio Constraint
Cardinality ratio contraint merupakan menjelaskan batasan jumlah
keterhubungan satu entity dengan entity lainnya. Terdapat tiga Jenis
cardinality ratio contraints, satu pada satu (1:1), satu pada banyak
(1:N/ N:1) dan banyak pada banyak (M:N).

88 | M o d u l K u l i a h B a s i s D a t a
89 | M o d u l K u l i a h B a s i s D a t a
Participation Constraint
Participation constraint merupakan batasan yang menjelaskan apakah
keberadaan suatu entity tergantung pada hubungannya dengan entity lain
Terdapat 2 macam participation constraint , total participation contraints
dan partial participation constraints
 Total participant constraints
Keberadaan suatu entity tergantung pada hubungannya dengan entity
lain.

Partial Participation
Keberadaan suatu entity tidak tergantung pada hubungannya dengan
entity lain.

Weak entity
Weak Entity adalah suatu Entity dimana keberadaan dari entity
tersebut tergantung dari keberadaan entity lain. Entity yang merupakan
induknya disebut Identifying Owner dan relationshipnya disebut
Identifying Relationship. Weak Entity selalu mempunyai Total
Participation constraint dengan Identifying Owner.

90 | M o d u l K u l i a h B a s i s D a t a
91 | M o d u l K u l i a h B a s i s D a t a
Transformasi dari ERD ke Database Relasional
1. Setiap tipe Entity dibuat suatu relasi yang memuat semua atribut
simple, sedangkan untuk atribut composite hanya dimuat komponen-
komponennya saja.

2. Setiap relasi yang mempunyai atribut multivalue, buatlah relasi


baru dimana Primary Keynya merupakan gabungan dari Primary
Key dari relasi tersebut dengan atribut multivalue.

3. Setiap Unary Relationship 1:N, pada relasi perlu ditambahkan


suatu foreign key yang menunjuk ke nilai primary keynya.

92 | M o d u l K u l i a h B a s i s D a t a
4. Setiap Unary Relationship M:N, buatlah relasi baru dimana primary
keynya merupakan gabungan dari dua atribut dimana keduanya
menunjuk ke primary key relasi awal dengan penamaan yang
berbeda.

5. Setiap Binary Relationship 1:1, dimana Participation Constraint


keduanya total, buatlah suatu relasi gabungan dimana Primary
Keynya dapat dipilih salah satu.

6. Setiap Binary Relationship 1:1 dan salah satu Participation


Constraintnya Total, maka Primary Key pada relasi yang
Participation Constraintnya Partial menjadi Foreign Key pada relasi
yang lainnya.

93 | M o d u l K u l i a h B a s i s D a t a
7. Setiap Binary Relationship 1:1, dimana kedua Participation
Constraintnya partial, maka selain kedua relasi perlu dibuat relasi
baru yang berisi Primary Key gabungan dari Primary Key kedua
tipe Entity yang berelasi.

8. Setiap Binary Relationship 1 : N, dimana tipe Entity yang bersisi


N mempunyai Participation Constraint Total, maka Primary Key pada
relasi yang bersisi 1 dijadikan Foreign Key pada relasi yang bersisi N.

94 | M o d u l K u l i a h B a s i s D a t a
9. Setiap Binary Relationship 1 : N, dimana tipe Entity yang
bersisi N mempunyai Participation Constraint partial, buatlah relasi
baru dimana Primary Keynya merupakan gabungan dari Primary
Key kedua tipe Entity yang berelasi.

10. Setiap Binary Relationship M:N, buatlah relasi baru dimana Primary
Keynya merupakan gabungan dari Primary Key kedua tipe Entity yang
berelasi.

95 | M o d u l K u l i a h B a s i s D a t a
11. Setiap Ternary Relationship, buatlah relasi baru dimana Primary
Keynya merupakan gabungan dari Primary Key ketiga tipe Entity
yang berelasi.
Setiap tipe Weak Entity, dibuat suatu relasi yang memuat semua
atributnya dimana Primary Keynya adalah gabungan dari Partial Key
dan Primary Key dari relasi induknya (identifying owner).

12. Setiap tipe Weak Entity, dibuat suatu relasi yang memuat semua
atributnya dimana Primary Keynya adalah gabungan dari Partial Key
dan Primary Key dari relasi induknya (identifying owner).

96 | M o d u l K u l i a h B a s i s D a t a
EVALUASI
1. Apa yang dimaksud dengan participation constraint dan jelaskan.
2. Jelaskan perbedaan strong entity (entity kuat) dan weak entity (entity lemah),
kemudian berikan contoh.
3. Jelaskan proses transformasi dari ERD ke Database Relational
4. Buatlah perancangan ERD untuk perkuliahan kemudian trasnformasikan ke
dalam database relasional

97 | M o d u l K u l i a h B a s i s D a t a
I. Kegiatan Pembelajaran 11 dan 12
Ketergantungan Fungsional dan Normalisasi

1) Tujuan Materi Pembelajaran


a. Mahasiswa memahami konsep ketergantungan fungsional dengan
mengidentifikasi jenis normalisasi
b. Mahasiswa mampu memahami aturan pemebentukan bentuk
normal 1 2 dan 3 dengan melakukan proses normalisasi

2) Materi Pembelajaran

Ketergantungan (dependency)
Ketergantungan merupakan konsep yang mendasari normalisasi.
Dependency menjalankan hubungan antara atribut atau secara lebih
khusus menjelaskan nilai suatu atribut yang menentukan nilai atribut
lainnya.
Dependency akan mencari acuan untuk pendekomposisian data ke
dalam bentuk paling efisien.
1. Functional Dependency

Ketergantungan fungsional (functional dependency) adalah suatu


kondisi dimana satu atribut atau beberapa atribut dari suatu relasi yang
keberadaannya bergantung pada atribut lain. ketergantungan
fungsional didefinisikan sebagai berikut:
Suatu atribut Y mempunyai ketergantungan fungsional terhadap atribut
X jika dan hanya jika setiap nilai X berhubungan dengan sebuah nilai
Y.
Definisi diatas biasanya dituangkan dalam bentuk notasi: X => Y
Artinya :
X secara fungsional tergantung Y
Y secara fungsional menentukan X

98 | M o d u l K u l i a h B a s i s D a t a
Contoh:

Sebagai keterangan mengenai notasi diatas bahwa sebelah kiri notasi


disebut determinant, sedangkan bagian sebelah kanan disebut dependent.
Relasi ini mengandung atribut kode_barang, nama_barang, dan qty.
Artinya kode_barang secara fungsional menentukan nama_barang, telah
terlihat bahwa untuk kode_barang yang sama dan nama_barang juga
sama, sehingga kode_barang => nama_barang.

2. Dependency Transitive
Ketergantungan transitive (dependency transitive) adalah ketergantungan
secara fungsional suatu atribut kepada atribut lainnya melalui atribut yang
lain pula.
Misalnya R adalah relasi yang memiliki 3 atribut A, B, dan C yang memiliki
ketergantungan fungsional:

A => B

B => C
Artinya fungsional dependency => C disebut dependency transitive.
Contoh:

99 | M o d u l K u l i a h B a s i s D a t a
Pada relasi di atas terdapat ketergantungan transitif antara:
no_faktur => kode_pelanggan
kode_pelanggan => nama
Sehingga dapat dinotasikan:
no_faktur => kode_pelanggan => nama

3. Trivial Dependency
Ketergantungan trivial (trivial dependency) terjadi apabila suatu relasi
terdapat banyak set fungsional dependency, maka dapat dilakukan
penghapusan trivial dependency.
Misalnya relasi sebagai berikut:

Suatu trivial fungsional dependency jika dan hanya jika bagian sebelah
kiri, maka himpunan tersebut ditulis sebagai berikut:
{no_faktur, kode_barang} => no_faktur.
Sebaliknya,
non trivial fungsional dependency adalah fungsional dependency bukan
trivial, dan yang sebetulnya adalah bentuk integrity rules / constrains
(aturan-aturan integritas).

Ketergantungan Fungsional

Atribut Y pada relasi R dikatakan tergantung fungsional pada atribut X (R,X


R,Y), jika dan hanya jika setiap nilai X pada relasi R mempunyai tepat satu nilai Y
pada R.Misal, terdapat skema database Pemasok_barang. Dengan tabel
pemasok (No_pem, Na_pem)

100 | M o d u l K u l i a h B a s i s D a t a
Ketergantungan fungsional dari tabel Pemasok_barang adalah : No_pem
Na_pem (nama pemasuk tergantung secara fungsional dari Nomer pemasok)

Ketergantungan Fungsional Penuh


Atribut Y pada relasi R dikatakan tergantung fungsional penuh pada atribut X
pada relasi R, jika Y tidak tergantung pada subset dari X (bila X adalah key
gabungan). Contoh tabel Kirim_barang (No_pem, Na_pem, No_bar, Jumlah)

Ketergantungan fungsionalnya adalah:


A. No_pem > Na_pem No_bar
B. No_pem > Jumlah (tergantung penuh terhadap keynya)

Ketergantungan Transitif
Atribut Z pada relasi R dikatakan tergantung transitif pada atribut X, jika atribut
Y tergantung pada atribut X pada relasi R dan atribut tergantung pada atribut
Y pada relasi R. Contoh perhatikan tabel dibawah ini:

101 | M o d u l K u l i a h B a s i s D a t a
Ketergantungan fungsional:
A. No_pem > Kode_kota
B. Kode_kota > Kota, maka
C. No_pem > Kota

Contoh Lain Ketergantungan Fungsional


Diberikan sebuah tabel T berisi paling sedikit 2 buah atribut, yaitu A dan B. Kita
dapat menyatakan notasi berikut ini:

A>B
Yang berarti A secara fungsional menentukan B atau B secara fungsional
tergantung pada A, jika dan hanya jika setiap kumpulan baris (row) yang ada di
tabel T, pasti ada 2 baris data (row) di tabel dengan nilai A yang sama, maka nilai
B pasti juga sama. Definisi yang paling formal untuk itu adalah:

A. Diberikan 2 row r1 dan r2 dalam tabel T dimana A > B.


B. Jika r1(A) = r2(A) maka r1(B) = r2(B)

Dengan melihat data di atas dan dengan pertimbangan intuisi kita, maka
ketergantungan fungsional yang dapat kita ajukan adalah:

1. Nim > nama_mhs yang berarti bahwa atribut nama_mhs hanya tergantung pada
atribut nim. Hal ini dibuktikan dari fakta : untuk setiap nilai nim yang sama maka
pasti nilai nama_mhsnya juga sama.

102 | M o d u l K u l i a h B a s i s D a t a
2. Nama_kul, nim > indeks_nilai yang berarti bahwa atribut indeks_nilai
tergantung pada atribut nama_kul dan nim secara bersama–sama, memang kita
tidak dapat menunjukkan fakta, bahwa untuk setiap nilai nama_kul dan nim yang
sama, maka nilai indeks_nilainya juga sama, karena nama_kul, nim merupakan
key (sehingga bersifat unik) untuk tabel tersebut. Tetapi, ketergantungan
fungsional tersebut sesuai dengan pengertian bahwa setiap indeks_nilai
diperuntukkan pada mahasiswa tertentu untuk mata kuliah tertentu yang
diambilnya.

Tanpa memperhatikan pengertian ketergantungan secara alamiah terhadap tabel


tersebut, kita juga dapat mengajukan sejumlah ketidaktergantungan (non KF)
dengan hanya melihat fakta yang ada, yaitu:

1. Nama_kul (tanda panah di coret) nim yang artinya atribut nim tidak tergantung
pada atribut nama_kul. Buktinya terlihat pada row 1 dan row 2 : dengan nilai
nama_kul yang sama, tapi nilai nimnya berbeda.
2. Nim (tanda panah di coret) nideks_nilai yang artinya atribut indeks_nilai tidak
bergantung pada atribut nim. Buktinya terlihat pada row 1 dan row 3 : dengan
nilai nim yang sama, tapi nilai indeks_nilai berbeda.

Memahami Functional Dependency (Ketergantungan Fungsional) Antar


Atribut dalam Suatu Relasi
Konsep penting yang menjadi dasar melakukan normalisasi relasi-relasi dalam
perancangan sistem database adalah functional dependency atau
ketergantungan fungsional. Tanpa memahami konsep functional
dependency atau ketergantungan fungsional kita tidak bisa melakukan proses
normalisasi dengan baik dan benar. Functional dependency atau ketergantungan
fungsional adalah suatu konsep yang menjelaskan tentang
relationship/asosiasi/hubungan antara atribut-atribut dalam suatu relasi.

Misalnya, jika A dan B adalah kumpulan atribut (bisa satu atau lebih atribut)
dalam suatu relasi R, maka B disebut bergantung secara fungsional (functionally

103 | M o d u l K u l i a h B a s i s D a t a
dependent) pada A (dituliskan dengan A --> B), apabila setiap nilai A
terasosiasi tepat dengan satu nilai dari B (ingat, A dan B adalah atribut-atribut di
dalam relasi R). Representasi dalam bentuk diagramnya adalah seperti berikut:

Representasi dalam bentuk diagram, atribut-atribut B bergantung pada atribut-atribut A


(A menentukan B)

Di dalam representasi functional dependency (atau kebergantungan fungsional A


--> B), atribut-atribut yang disebelah kiri disebut dengan determinan. Jadi,
representasi gambar di atas adalah: atribut-atribut B bergantung secara
fungsional pada atribut-atribut A, dan atribut-atribut A disebut dengan determinan
(atau A menentukan B).

Contoh functional dependency (kebergantungan fungsional) yang mengacu pada


sampel data relasi ‘StaffBranch’ berikut:

Contoh relasi StaffBranch

104 | M o d u l K u l i a h B a s i s D a t a
Contoh ketergantungan fungsional antar atribut dalam relasi StaffBranch

Jika kita mengacu pada sampel data pada relasi di atas, maka kita bisa
mengidentifikasi salah satu contoh functional dependency (kebergantungan
fungsional) seperti berikut:
staffNo --> sName
sName --> staffNo
Namun identifikasi functional dependency seperti di atas adalah mengacu pada
sampel data yang ada (data sementara saja) dalam relasi 'StaffBranch',
sebaliknya apabila kita mempertimbangkan kemungkinan terhadap nilai data
untuk semua nilai data pada masa-masa mendatang pada atribut 'staffNo' dan
'sName', maka identifikasi functional dependency yang benar seharusnya adalah

staffNo --> sName


Jadi cara terbaik untuk mengidentifikasi functional dependency adalah dengan
memahami dengan baik tentang ‘arti/makna’ atau ‘semantik’ dari
hubungan/relationship/asosiasi antar atribut (bukan hanya dengan mengalisa
data sementara saja).

105 | M o d u l K u l i a h B a s i s D a t a
Functional dependency atau kebergantungan fungsional terdiri dari tiga
jenis:
1. Full functional dependency (kebergantungan fungsional
penuh)
2. Partial dependency (kebergantungan sebagian)
3. Transitive dependency (kebergantungan transitif)
Beberapa karakteristik dalam full functional
dependency (kebergantungan penuh) adalah sebagai berikut:
Jumlah atribut yang menjadi determinan yang digunakan untuk
menjaga ketergantungan atribut-atribut yang berada di sisi
sebelah kanan, seharusnya seminimal mungkin.
Bila A dan B adalah kumpulan atribut (bisa satu atau lebih
atribut) di dalam suatu relasi, B disebut bergantung secara
penuh (full functional dependency) pada A, apabila B
bergantung secara penuh pada A, dan bukan bergantung pada
subset/sebagian (salah satu atribut) A
Ada hubungan/relationship/asosiasi one-to-one antara atribut-
atribut pada sisi sebelah kiri (determinan) dan yang di sisi
sebelah kanan dari functional dependency
Harus benar/akurat sepanjang waktu (tidak hanya sementara
waktu saja) untuk seluruh nilai data mendatang
Mari kita lihat contoh berikut ini dan masih mengacu pada relasi StaffBranch di
atas:
staffNo, sName --> branchNo

contoh identifikasi functional dependency (kebergantungan fungsional) di atas


adalah benar, karena setiap nilai dari (staffNo, sName) ter-asosiasi dengan tepat
hanya satu nilai dari ‘branchNo’. Tetapi, ‘brachNo’ secara fungsional juga
bergantung pada sebagian/subset dari (staffNo, sName), yaitu ‘staffNo’. Jadi
contoh di atas ini adalah apa yang disebut sebagai partial depedency atau
kebergantungan parsial/sebagian.

106 | M o d u l K u l i a h B a s i s D a t a
Selain full functional dependency (kebergantungan penuh) dan partial
dependency (kebergantungan sebagian), satu lagi jenis kebergantungan yang
perlu untuk didentifikasi adalah transitive dependency atau kebergantungan
transitif.

Transitive dependency atau kebergantungan transitif adalah suatu kondisi


dimana A, B, dan C masing-masing adalah kumpulan atribut (bisa satu atau lebih
atribut) dalam suatu relasi sedemikian rupa sehingga apabila A --> B dan B --> C,
maka C disebut bergantung secara transitif (transitively dependent) pada A
melalui B, asalkan A tidak bergantung secara fungsional pada B atau C.

Mari kita lihat contoh functional dependency yang mengacu pada relasi
‘StaffBranch’ di atas:

staffNo --> sName, position, salary, branchNo, bAddress

branchNo --> bAddress

dalam contoh di atas, ‘bAddress’ bergantung pada ‘branchNo’, tetapi ‘branchNo’


juga bergantung pada ‘staffNo’. Maka bisa dikatakan bahwa ‘bAddress’
bergantung secara transitif pada ‘staffNo’ melalui 'branchNo'. Jadi transitive
dependency (kebergantungan transitif) teridentifikasi pada contoh di atas.

Proses Normalisasi
Setelah memahami konsep functional dependency atau ketergantungan
fungsional, barulah kita bisa melakukan proses normalisasi. Jadi secara
definisi, proses normaliasi adalah penerapan teknik formal yang digunakan
dalam menganalisa suatu relasi berdasarkan primary key (kunci primer)
dan functional dependency (ketergantungan fungsional) antara atribut-atribut
dalam relasi tersebut.

107 | M o d u l K u l i a h B a s i s D a t a
Secara teori, bentuk normal suatu relasi bisa sampai ke tingkat lima 5NF, yaitu
1NF – 2NF – 3NF/BCNF – 4NF – 5NF. Tetapi secara praktik dalam dunia nyata,
relasi dalam suatu database sudah dibilang baik kalau sudah mencapai 3NF
(bentuk normal ketiga).

Tingkatan normalisasi

Proses normalisasi kita mulai dengan mengidentifikasi semua jenis functional


dependency dalam suatu relasi. Pada umumnya kita memiliki relasi yang pada
awalnya berada pada kondisi 1NF (bentuk normal pertama). Namun terkadang
bisa juga kita menemui atau mulai dari keadaan UNF (unnormalized form). [Untuk
contoh lebih detil tentang proses normalisasi bisa dipelajari dan dipahami dalam
posting tulisan tentang: "Contoh proses normalisasi relasi dari UNF – 1NF – 2NF
– dan 3NF"].

Bila relasi dalam kondisi 1NF (atau bentuk normal pertama), maka kita perlu
mengidentifikasi keberadaan ‘partial dependency’. Bila ditemukan ‘partial
dependency’ maka kita harus menghilangkan ‘partial dependency’ ini. Cara
menghilangkan ‘partial dependency' adalah dengan memindahkan atribut yang
bergantung secara parsial tersebut menjadi relasi yang baru beserta copy dari
atribut atau determinant yang menjadi bagian dari primary key pada relasi
asalnya. Bila semua relasi sudah tidak mengandung ‘partial dependency’ maka
semua relasi sudah berada dalam kondisi 2NF (atau bentuk normal kedua).
Untuk menuju ke 3NF, kita perlu mengidentifikai keberadaan ‘transitive
dependency’ atau ketergantungan transitif. Apabila ditemukan adanya ‘transitive
dependency’ atau ketergantungan transitif dalam suatu relasi, maka kita harus

108 | M o d u l K u l i a h B a s i s D a t a
menghilangkan keberadaan ‘transitive dependency’ itu. Cara menghilangkan
‘transitive dependency’ adalah dengan memindahkan atribut-atribut yang
bergantung secara transitif tersebut beserta ‘copy’ dari ‘determinant’ dari relasi
orisinalnya ke suatu relasi yang baru. Bila semua relasi sudah tidak mengandung
baik ‘partial dependency’ maupun ‘transitive dependency’, maka semua relasi itu
sudah berada dalam 3NF.

Proses mengidentifikasi semua functional dependencies diantara semua atribut-


atribut dalam suatu relasi akan menjadi mudah apabila kita memahami dengan
baik semantik/arti/maksud dari setiap atribut dan relationship/asosiasi antara
atribut-atribut itu. Keterangan atau informasi seperti ini seharusnya didapatkan
dari perusahaan/organisasi dalam bentuk diskusi dengan para pengguna
dan/atau dokumentasi, misalnya spesifikasi requirements dari para pengguna.
Namun apabila informasi/keterangan seperti itu tidak ada maka si database
desainer harus menggunakan logikanya dan/atau pengalamannya untuk
mengidentifikasi semantik/arti/maksud dari atribut-atribut beserta
relationship/asosiasi antar atribut tersebut.
Contoh proses identifikasi functional dependencies (ketergantungan fungsional)
dalam relasi ‘StaffBranch’ di atas adalah seperti berikut:
staffNo --> sName, position, salary, branchNo, bAddress
branchNo --> bAddress
bAddress --> branchNo
branchNo, position --> salary
bAddress, position --> salary
catatan: dengan mencoba memahami semantik hubungan/asosiasi/relationship
antar atribut dari relasi di atas kita berasumsi bahwa posisi dan ‘branch’ atau
cabang menentukan gaji atau ‘salary’ dari staff.

Contoh lain – yaitu dengan menggunakan sampel data untuk


mengidentifikasi functional dependencies:

109 | M o d u l K u l i a h B a s i s D a t a
contoh identifikasi ketergantungan fungsional dengan menggunakan sampel data dalam
sampel relasi

Dari identifikasi di atas bisa kita dapatkan:

A --> C (fd1)

C --> A (fd2)

B--> D (fd3)

A, B --> E (fd4)

Mengidentifikasi primary key dengan menggunakan functional dependency.

Selain untuk melakukan proses normalisasi, identifikasi functional


dependencies juga digunakan untuk mengidentifikasi primary key. Jadi salah satu
tujuan utama dalam mengidentifikasi berbagai functional dependency adalah juga
untuk menetapkan integrity constraints (atau konstrain integritas) yang harus
berlaku pada suatu relasi. Salah satu integrity constraint atau konstrain integritas
penting yang perlu untuk dipikirkan pertama kali adalah identifikasi

110 | M o d u l K u l i a h B a s i s D a t a
terhadap candidate keys, dimana salah satunya (kalau lebih dari satu) akan
dipilih menjadi primary key dari relasi tersebut.

Jadi, apabila ada atribut yang menjadi determinan dan atribut ini menjadi
determinan terhadap semua atribut yang lain dalam suatu relasi maka atribut ini
akan dipilih sebagai ‘candidate key’. Dan apa bila ada beberapa ‘candidate key’
kita akan pilih salah satunya untuk menjadi ‘primary key’.
Kembali pada contoh relasi ‘StaffBranch’, identifikasi terhadap relasi ini
menghasilkan lima ketergantungan fungsional (functional dependency). Daftar
determinan dari identifikasi tersebut adalah sebagai berikut:

staffNo, branchNo, bAdress, (branchNo, position), dan (bAddress,position)

kemudian, untuk mengidentifikasi candidate keys, kita perlu mencari dan


menemukan atribut (atau kelompok atribut) yang secara unik bisa
mengidentifikasi setiap baris dalam relasi tersebut. Dan semua atribut yang
bukan bagian dari candidate key se harusnya bergantung secara fungsional
pada candidate key ini. Jadi, untuk menemukan candidate key, kita perlu
menemukan determinan dimana semua atribut lainnya bergantung pada
determinan tersebut. Dalam relasi ‘StaffBranch’, satu-satunya candidate key dan
karena itu berarti pasti menjadi primary key adalah ‘staffNo’, karena semua
atribut yang lain dalam relasi itu bergantung pada ‘staffNo’.

Dalam contoh lain yang mengacu ke sampel relasi di atas, daftar


determinan dalam sampel relasi setelah identifikasi functional dependency seperti
di atas adalah:

A, B, C, dan (A,B)

111 | M o d u l K u l i a h B a s i s D a t a
Namun demikian, satu-satunya determinan yang menentukan semua
atribut dalam sampel relasi tersebut adalah atribut (A,B). Maka atribut (A,B) dipilih
sebagai primary key.

Kapan atau dimana Normalisasi digunakan dalam perancangan basis data?

Pada dasarnya normalisasi merupakan teknik yang formal yang bisa


digunakan di tahap manapun dalam perancangan sistem database. Namun pada
umumnya ada dua pendekatan tentang penggunaan normalisasi. Yang pertama
adalah pendekatan 'bottom-up' dan yang kedua disebut pendekatan 'top-down'.
Coba perhatikan gambar ilustrasi di bawah ini:

Pendekatan bottom-up dan top-down dalam menggunakan normalisasi dalam


perancangan basis data

Seperti bisa dilihat pada gambar di atas, pendekatan 1 (approach 1)


menunjukkan kapan/dimana normalisasi digunakan sebagai teknik 'standalone'
dalam perancangan basis data sementara pada pendekatan 2 (approach 2)
menunjukkan kapan/dimana normaliasi bisa digunakan sebagai teknik validasi
untuk mengecek struktur relasi-relasi yang dihasilkan dengan pendekatan top-
down seperti ER modeling. Tidak perlu dipusingkan pendekatan mana yang

112 | M o d u l K u l i a h B a s i s D a t a
digunakan, tujuan keduanya adalah sama yaitu menghasilkan relasi-relasi yang
terdesain dengan baik yang memenuhi data requirements perusahaan.

Gambar ilustrasi diatas juga menunjukkan contoh berbagai sumber data


yang bisa digunakan untuk perancangan basis data. Meskipun spesifikasi users’
requirements adalah sumber data yang pada umumnya lebih diutamakan, tetapi
mungkin juga untuk merancang basis data berdasarkan informasi yang diambil
langsung dari sumber data lainnya seperti form-form atau report-report
tradisional seperti yang dilustrasikan dalam posting tulisan tentang: “Contoh
proses normalisasi relasi dari UNF – 1NF – 2NF – dan 3NF”.

Gambar di atas juga menunjukkan bahwa sumber data yang sama bisa
juga digunakan untuk kedua pendekatan tersebut, namun demikian, meskipun
hal itu secara prinsip betul, pada praktinya pendekatan yang diambil cenderung
ditentukan oleh ukuran, batas, kompleksitas basis data yang digamnarkan dalam
sumber data dan oleh preferensi dan keahlian dari si desainer basis data. Pilihan
untuk menggunakan normalisasi sebagai teknik bottom-up (pendekatan 1)
seringkali lebih terbatas yang disebabkan oleh tingkat detil yang ingin dikelola
oleh si desainer basis data, tetapi keterbatasan semacam itu tidak akan terjadi
ketika normalisasi digunakan sebagai teknik validasi (pendekatan 2) karena si
desainer basis data hanya berfokus pada bagian dari basis data, misalnya suatu
relasi tunggal, pada satu waktu. Jadi, tidak peduli berapa besar ukuran atau
kompleksitas basis data, normalisasi bisa diterapkan dan tetap berguna.

113 | M o d u l K u l i a h B a s i s D a t a
bagaimana melakukan normalisasi mulai dari UNF (atau Unnormalized
Form) – 1NF – 2NF – dan 3NF.

Dari form tradisional ke tabel/relasi UNF


Kadang-kadang kita membuat relasi mulai dari 1NF tetapi terkadang juga dari
UNF. Contoh disini akan kita mulai dari UNF saja supaya terlihat lebih lengkap.
Perhatikan gambar form tradisional berikut:

Contoh form tradisional yang akan dikonversi menjadi bentuk tabel berbentuk kolom dan
baris

Kasus di atas adalah mengambil contoh dari perusahaan penyewaan


properti ‘DreamHome’. Kita akan menganalisa dari form tradisional yang
digunakan di perusahaan ‘DreamHome’. Dari hasil observasi dan analisa
terhadap form tersebut, kemudian kita konversi menjadi bentuk tabel seperti
berikut:

Tabel hasil konversi dari form tradisional sebelumnya (tabel yang belum dinormalisasi)

114 | M o d u l K u l i a h B a s i s D a t a
Gambar tabel di atas tersebut adalah dalam bentuk unnormalized table,
atau tabel/relasi yang belum dilakukan normalisasi. Dalam contoh tersebut, nama
relasi/tabel adalah 'ClientRental'. Dan klien dengan clientNo CR76 yang bernama
John Kay, sudah pernah bertransaksi dua kali dari hasil observasi form tersebut.
Sehingga klien dengan clientNo CR76 yang bernama John Kay memiliki bagian
yang berulang (perhatikam atribut-atribut porpertyNo, pAddress, rentStart,
rentFinish, rent, ownerNo, oName) untuk klien yang sama. Sehingga data tentang
clientNo dan cName terlihat kosong atau tidak dituliskan pada transaksi yang
kedua, karena akan berisi data yang sama (berulang). Demikian juga untuk klien
dengan clientNo CR56 yang bernama Aline Stewart. Jadi tabel tersebut disebut
dalam kondisi UNF (atau unnormalized form) apabila tabel tersebut berisi satu
atau lebih bagian yang berulang. Tabel semacam itu biasanya dihasilkan dari
proses mengonversi form tradisional menjadi suatu tabel dalam bentuk kolom
dan baris.

Dari UNF ke 1NF

Untuk mengonversi tabel dari UNF ke 1NF (normal bentuk pertama), yang perlu
kita lakukan adalah: 1) menunjuk satu atau beberapa atribut untuk dijadikan
sebagai ‘key’ dalam tabel UNF tersebut, 2) kemudian mengidentifikasi bagian
yang berulang dalam tabel UNF tersebut, 3) dan setelah mengidentifikasi bagian
yang berulang, kita perlu menghilangkan bagian yang berulang tersebut.

Untuk mengonversi tabel dari UNF menjadi 1NF, yang berarti juga
menghilangkan bagian yang berulang dalam tabel UNF, ada dua cara, yaitu:
1. Dengan mengisi data yang benar ke kolom/baris yang kosong yang
berisi data yang berulang. Cara ini disebut dengan “flattening”.
2. Memisahkan data yang berulang bersama dengan ‘copy’ atribut yang
kita tunjuk sebagai ‘key’ ke relasi/tabel yang lain.

115 | M o d u l K u l i a h B a s i s D a t a
Contoh dari cara yang pertama adalah seperti dalam gambar berikut:

UNF ke 1NF dengan menggunakan cara pertama atau "flattening"

Contoh dari cara yang kedua adalah seperti gambar dibawah ini:

UNF ke 1NF dengan cara yang kedua, memisahkan bagian yang berulang ke
tabel/relasi baru beserta 'copy' dari 'key' nya

Hasil relasi dari UNF ke 1NF dengan cara yang kedua. Yang digarisbawah adalah
atribut yang menjadi 'key'

Semua contoh tabel/relasi di atas adalah dalam keadaan 1NF. Jadi secara
definisi, 1NF adalah relasi dimana interseksi/perpotongan antara kolom-
dan-baris hanya berisi tepat satu nilai data saja.

Dari 1NF ke 2NF

Untuk mengonversi dari 1NF ke 2NF kita akan menggunakan contoh tabel/relasi
‘ClientRental’ pada gambar di atas (lihat gambar tabel 'ClientRental' di atas).

116 | M o d u l K u l i a h B a s i s D a t a
Kemudian yang kita lakukan adalah mengidentifikasi semua ketergatungan
fungsional (functional dependencies). Berikutnya, untuk mengonversi dari 1NF-
ke-2NF, fokus perhatian kita adalah pada ada atau tidaknya ketergantungan
parsial/sebagian (partial dependency). Apabila kita menemukan adanya
ketergantungan parsial/sebagian (partial dependency), maka kita harus
menghilangkan ketergantungan parsial/sebagian tersebut. Cara menghilangkan
‘partial dependency' adalah dengan memindahkan atribut yang bergantung
secara parsial tersebut menjadi relasi yang baru beserta copy dari atribut
atau determinant yang menjadi bagian dari primary key pada relasi asalnya. Bila
semua relasi sudah tidak mengandung ‘partial dependency’ maka semua relasi
sudah berada dalam kondisi 2NF (atau bentuk normal kedua).

Coba perhatikan kembali gambar tabel/relasi ‘ClientRental’ di atas, dan kemudian


perhatikan proses identifikasi seperti dalam gambar di bawah berikut ini:

Proses identifikasi ketergantungan fungsional (functional dependencies) pada


tabel/relasi 'ClientRental'

Hasil identifikasi berbagai ketergantungan fungsional (functional dependencies) antar


atribut dalam tabel/relasi 'ClientRental'

Dari hasil proses identifikasi seperti di atas kita temukan ada dua ketergantungan
parsial/sebagian (partial dependency), yaitu pada fd2 dan fd3. Jadi untuk
117 | M o d u l K u l i a h B a s i s D a t a
mengonversi tabel/relasi ‘ClientRental’ ke dalam bentuk relasi-relasi dalam 2NF
(bentuk normal kedua), kita perlu memecah atau memindahkan atribut-atribut
yang diidentifikasi dalam fd2 dan fd3 menjadi relasi/tabel baru beserta ‘copy’ dari
atribut yang menjadi bagian dari ‘primary key’ dari tabel/relasi aslinya. Setelah
kita pecah atau pindahkan, hasil relasi-relasinya adalah seperti dalam gambar
berikut:

Gambar tabel-tabel hasil proses normalisasi 1NF ke 2NF

Gambar relasi-relasi hasil proses normalisasi 1NF ke 2NF (garisbawah adalah primary
key)

Jadi setelah mengalami pemecahan/pemisahan, ketiga relasi di atas


tersebut sudah dalam keadaan 2NF (bentuk normal kedua), karena tidak ada
ketergantungan parsial antar atribut dalam suatu tabel/relasi. Apabila dalam
tabel/relasi yang kita analisa tidak terdapat ketergantungan parsial (partial
dependency) sejak awal, berarti tabel/relasi tersebut sudah berada pada keadaan
2NF.

118 | M o d u l K u l i a h B a s i s D a t a
Dari 2NF ke 3NF
Untuk mengonversi dari 2NF dari ke 3NF (bentuk normal ketiga), caranya adalah
sama dengan langkah di atas (dari 1NF ke 2NF). Hanya saja yang harus kita
identifikasi adalah ada atau tidaknya ketergantungan transitif (transitive
dependency) antar atribut dalam suatu relasi. Kita akan analisa dan identifikasi
dari ketiga tabel/relasi yang sudah berada dalam 2NF di atas, yaitu tabel/relasi
‘Client’, ‘Rental’, dan ‘PropertyOwner’. Hasil proses identifikasi adalah seperti
gambar di bawah berikut:

Proses identifikasi ketergantungan fungsional pada relasi 'Client', 'Rental', dan


'PropertyOwner'

Pada fd5 dan fd6 ada tanda ‘ (fd5’ dan fd6’) yang artinya bahwa ada
perubahan atribut dalam ketergantungan fungsional yang diidentifikasi oleh fd5
dan fd6. Perubahan ini disebabkan karena ada proses normalisasi pada level
sebelumnya, yaitu dari 1NF ke 2NF. Dampak dari proses tersebut adalah
perubahan atribut (karena atributnya dipindah ke tabel/relasi baru) yang
mengalami ketergantungan fungsional yang teridentifikasi pada proses
sebelumnya.

Dari hasil identifikasi di atas, ternyata kita temukan adanya


ketergantungan transitif (transitive dependency), yaitu pada fd4 (perhatikan pada
tabel PropertyOwner). Jadi untuk mengonversi ke keadaan 3NF, kita harus
menghilangkan ketergantungan transitif (transitive dependency) tersebut. Cara
menghilangkan ketergantungan transitif sama seperti langkah sebelumnya, yaitu
atribut-atribut yang berada dalam ketergantungan transitif (transitive dependency)

119 | M o d u l K u l i a h B a s i s D a t a
dipindahkan ke tabel/relasi yang baru beserta ‘copy’ dari atribut yang menjadi
‘determinant’ pada tabel/relasi aslinya.
Hasil dari pemecahan/pemindahan atribut yang menjadi ketergantungan transitif
tersebut adalah seperti berikut di bawah ini:

Hasil pemecahan/normalisasi 2NF ke 3NF dari tabel 'PropertyOwner' menjadi tabel


'PropertyForRent' dan 'Owner'

Hasil relasi proses normalisasi 2NF ke 3NF pada relasi 'PropertyOwner' menjadi
'PropertyForRent' dan 'Owner'

Setelah semua table/relasi mengalami pemecahan dan tidak lagi


ditemukan ketergantungan parsial/sebagian dan ketergantungan transitif, maka
semua tabel/relasi sudah bisa dikatakan dalam keadaan 3NF (bentuk normal
ketiga). Apabila sejak awal ada relasi yang tidak mengandung ketergantungan
parsial maupun ketergantungan transitif, berarti tabel/relasi tersebut bisa
dikatakan sudah berada dalam keadaan 3NF

Jadi hasil akhir semua tabel/relasi setelah mengalami proses normalisasi


adalah seperti gambar di bawah berikut ini:

120 | M o d u l K u l i a h B a s i s D a t a
Hasil akhir tabel-tabel setelah proses normalisasi dari 1NF-2NF-dan-3NF

Hasil akhir relasi-relasi setelah proses normalisasi dari 1NF-2NF-dan-3NF (garis


bawah adalah primary key)

Tahap demi tahap pemecahan tabel/relasi mulai dari 1NF-2NF-dan-3NF

121 | M o d u l K u l i a h B a s i s D a t a
IV. PENUTUP

Modul Mata Kuliah ini disusun untuk memudahkan dosen program studi Sistem

Informasi dalam melaksanakan pembelajaran yang lebih berkualitas dan dalam

rangka peningkatan kualitas lulusan Fakultas Ilmu Komputer dan Teknologi

Informasi Universitas Muhammadiyah Sumatera Utara. Agar peningkatan kualitas

tersebut dapat tercapai diperlukan penetapan standar capaian pembelajaran, standar

isi, standar proses, dan standar evaluasi pembelajaran. Keempat stardar tersebut

harus dikembangkan dalam wujud modul. Semoga dengan adanya modul

matakuliah ini pembelajaran analisis perencanaan sistem informasi menjadi lebih

berkualitas

122 | M o d u l K u l i a h B a s i s D a t a
DAFTAR PUSTAKA

1. Connoly, T., & Begg, c. (2010). database system; a practical approach to

design, implementation and management (5th ed.). Harlow :Addison wesley

2. Indrajani. (2011). Perancangan Basis Data Dalam All In 1, ISBN 978-979-

27-9980-4, Jakarta: Elex Media Computindo

3. Indrajani. (2011). Bedah Kilat 1 Jam – Pengantar dan Sistem Basis Data,

ISBN 978-979-27-9695-7, Jakarta: Elex Media Computindo

4. O'Brien, J. (2003). Introduction To Information Systems (11th ed.). New

York: Mc Graw Hill

5. Connoly, Thomas M., Begg, Carolyn E., and Strachan, Anne D., Database

System. A practical pproach to Design, Implementation, and Management,

Addison Wesley Company, 1996.

6. 14.David M. Kroenke, Basis data Processing, Fundamentals, Design and

Implementation, 12nd Edition, Prentice-Hall Int’l Edition, 2012

123 |Modul Kuliah Basis Data

Anda mungkin juga menyukai