Anda di halaman 1dari 23

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah


Penggunaan teknologi informasi saat ini sangatlah penting, hal ini dapat
dilihat dari penerapan teknologi informasi khususnya dalam penerapan basis
data elektronik atau database yang tidak terbatas dalam bidang perdagangan
atau bisnis saja, melainkan juga dalam berbagai bidang lainnya seperti bidang
pendidikan (e-Learning), bidang sosial (social networking), bidang
perbankan (e-Banking) dan juga dibidang kesehatan. Berbagai keuntungan
diberikan teknologi informasi khususnya dalam penerapan basis data, yaitu
membuat proses pendataan dan penyebaran informasi menjadi lebih cepat dan
mudah. Dengan berbagai keuntungan yang ditawarkan teknologi ini membuat
teknologi informasi khususnya database banyak diterapkan dalam berbagai
bidang kehidupan manusia, termasuk kedalam bidang administrasi
pendidikan.
Perpustakaan adalah salah satu institusi dalam suatu lembaga
pendidikan yang menyediakan berbagai macan sumber daya informasi baik
buku, e-book maupun learning content lainnya serta menyediakan layanan
yang penting dalam mendukung proses pembelajaran, penelitian, dan
pengembangan pengetahuan bagi setiap anggotanya.
Untuk melakukan pendataan atau mencari data peminjam buku
perpustakaan maka petugas yang bertugas untuk mengatur data-data
peminjam buku dapat menginput atau mencari data peminjam buku tersebut
dengan menggunakan sistem database sehingga proses menginput data
peminjam buku atau mencari data peminjam buku bisa dilakukan dengan
lebih efektif. Sistem database yang digunakan untuk melakukan proses input
dan mencari data mahasiswa haruslah efektif dan tidak menyulitkan
penggunanya.
Berdasarkan analisis yang dilakukan terhadap proses pendataan dan
konsep basis data yang diterapkan oleh perpustakaan, dapat disimpulkan
bahwa perancangan basis data pada perpustakaan yang baik, yaitu basis data

1
yang mampu mengorganisir data peminjam buku, karyawan, dan data-data
lainnya menjadi suatu kumpulan data yang terhubung (interrelated data)
yang disimpan secara bersama-sama pada suatu media, sehingga mudah
digunakan atau dimanfaatkan kembali. Basis data yang dimaksud juga dapat
digunakan oleh satu atau lebih program aplikasi secara optimal, artinya data
yang disimpan tidak mengalami ketergantungan pada program yang akan
menggunakannya, data akan disimpan sedemikian rupa sehingga
penambahan, pengambilan, dan modifikasi dapat dilakukan dengan mudah
dan terkontrol. Perancangan basis data ini bertujuan untuk memenuhi
informasi yang berisikan kebutuhan-kebutuhan pemakai atau pengguna basis
data terebut, serta mendukung kebutuhan dalam pemerosesan data peminjam
buku.

1.2 Rumusan Masalah


Berdasarkan latar belakang diatas, maka permasalahan yang dapat
diambil adalah “Bagaimana Menganalisis dan Merancang Sistem Basis Data
Perpustakaan”.

1.3 Tujuan Penulisan


Tujuan dari laporan ini adalah melakukan analisis basis data mulai dari
pendataan peminjam buku, karyawan, buku. Kemudian data-data tersebut
akan dikumpulkan untuk dijadikan sumber atau referensi dalam membuat
suatu perancangan basis data. Setelah melakukan analisis basis data maka
dibuatlah suatu perancangan basis data dengan melakukan beberapa tahapan,
yaitu perancangan basis data secara konseptual, kemudian dilanjutkan dengan
perancangan basis data secara logis, dan terakhir perancangan basis data
secara fisis.

1.4 Manfaat
Adapun manfaat dari hasil analisis dan perancangan basis data yang
dilakukan adalah untuk supaya dapat mengetahui permasalahan-
permasalahan yang dihadapi dalam hal pendataan perpustakaan dan

2
memberikan solusi perancangan basis data yang dapat mengolah data menjadi
suatu kumpulan data yang terhubung dan dapat disimpan secara bersama-
sama pada suatu media, sehingga mudah digunakan atau dimanfaatkan
kembali.

3
BAB II
PERANCANGAN SISTEM DATABASE

2.1 Definisi
Universitas adalah jenjang pendidikan lanjutan dari sekolah menengah
atas. Dalam universitas ini, terdapat berbagai fakultas. Dan di dalam fakultas
terdapat berbagai jurusan. Di dalam jurusan sendiri ada berbagai komponen
seperti mahasiswa dan dosen. Kita ambil contoh di jurusan teknik elektro.
Mahasiswa teknik elektro diharuskan untuk mengurus berbagai berkas ketika
hendak melakukan kerja praktek. Beberapa berkas yang diperlukan biasanya
nilai-nilai mata kuliah, identitas mahasiswa tersebut dan dosen pembimbing.
Sehingga dibuatlah sistem informasi jurusan. Sistem informasi jurusan
digunakan untuk mempermudah dalam pengelolaan data pada jurusan teknik
elektro. Sistem ini tentunya sudah menggunakan metode komputerisasi.
Karena dengan penggunaan metode komputerisasi, proses penginputan data,
proses pengambilan data maupun proses pengupdatean data sangat mudah,
cepat dan akurat.

2.2 Penentuan Atribut dan Entitas Database


A. Objek
Objek merupakan hal umum yang menjadi pokok atau sumber
daya yang akan digunakan pada database. Objek pada database teknik
elektro yang dipakai dalam laporan ini berupa:
1. Member
2. Petugas
3. Jabatan
4. Buku
5. Rak
6. Peminjaman

4
B. Penentuan Entitas
Entitas (entity) adalah sebuah objek yang keberadaannya dapat
dibedakan terhadap objek lain. Dalam laporan ini digunakan entitas
berupa :
1. Member : Menyimpan informasi identitas dari anggota
perpustakaan
2. Petugas : Menyimpan informasi identitas dari petugas
perpustakaan
3. Jabatan : Menyimpan informasi jabatan di perpustakaan
4. Buku : Menyimpan informasi buku di perpustakaan
5. Rak : Menyimpan informasi rak buku di perpustakaan.
6. Peminjaman : Menyimpan informasi dari transaksi dan history
peminjaman
C. Penentuan Atribut
Atribut identik dengan istilah “kolom data” tetapi dapat
menunjukkan fungsinya sebagai pembentuk karakteristik (sifat-sifat)
yang melekat dalam sebuah tabel. Pada penerapan aturan normalisasi,
bisa berdampak pada penghilangan atau penambahan kolom tertentu,
atau bahkan dapat memebentuk suatu tabel baru.
1. Member
 id_member
 nama_member
 jenis_kelamin
 alamat
 no_telp
2. Petugas
 id_petugas
 nama_petugas
 jenis_kelamin
 alamat
 no_telp
 kode_jabatan

5
3. Jabatan
 kode_jabatan
 nama_jabatan
 gaji
4. Buku
 id_buku
 judul_buku
 penulis
 penerbit
 tahun_terbit
5. Rak
 kode_rak
 nama_rak
6. Peminjaman
 id_member
 nama_member
 jenis_kelamin
 alamat
 not_telp
 id_buku
 judul_buku
 id_petugas
 tgl_pinjam
 tgl_kembali

6
D. Hubungan atau Relasi
Relasi tabel adalah hubungan sebuah tabel dengan tabel lainnya.
Sehingga tabel tidak lagi berdiri sendiri, melainkan dapat dihubungkan
antara satu dengan yang lainnya dan menjadi satu kesatuan.
Ada dua buah kolom yang diperlukan untuk menghubungkan
sebuah tabel dengan tabel lainnya. Kolom yang pertama, yaitu kolom
primary key (kunci utama) pada tabel yang satu. Kolom yang kedua
adalah foreign key (kunci asing) pada tabel lainnya.
 Petugas memiliki jabatan:
Tabel utama: petugas
Tabel kedua: jabatan
Relationship: Many-to-one (M:1)
Attribute penghubung: kode_jabatan (FK kode_jabatan di tabel
jabatan)
 Buku ditempatkan di rak:
Tabel utama: buku
Tabel kedua: rak
Relationship: Many-to-one (M:1)
Attribute penghubung: kode_buku (FK kode_buku di tabel rak)
 Member melakukan peminjaman dan pengembalian buku:
Tabel utama: un_peminjaman
Tabel kedua: buku
Relationship: One-to-many (1:M)
Attribute penghubung: id_buku (FK id_buku di tabel buku)
 Member melakukan peminjaman dan pengembalian:
Tabel utama: un_peminjaman
Tabel kedua: member
Relationship: One-to-one (1:1)
Attribute penghubung: id_member (FK id_member di tabel
member)

7
 Buku yang dapat dipinjam dan dikembalikan:
Tabel utama: un_peminjaman
Tabel kedua: buku
Relationship: One-to-one (1:1)
Attribute penghubung: id_buku (FK id_buku di tabel buku)
 Petugas melayani peminjaman:
Tabel utama: un_peminjaman
Tabel kedua: petugas
Relationship: One-to-one (1:1)
Attribute penghubung: id_petugas (FK id_petugas di tabel
petugas)

Tabel 1. Relasi Antar Tabel


un_
member petugas jabatan buku rak
peminjaman
member … … … … 1:1

petugas M:1 … … 1:1

jabatan … … …
buku M:1 1:1
rak …
un_peminjaman

8
BAB III
ANALISA DAN PEMBAHASAN

3.1 Conceptual Data Model (CDM/ERD)


ERD sistem informasi dengan data seperti pada Bab sebelumnya dapat
dilihat pada Gambar 1.

Gambar 1. Conceptual Data Diagram (ERD)

9
3.2 Diagram Relasi
Conceptual Data Model pada sub bab sebelumnya dapat ditransformasikan
menjadi Physical Data Model seperti pada Gambar 2.

Gambar 2. Physical Data Model (Diagram Relasi)

3.3 Struktur Tabel dan Contoh Data


Untuk membuat Database perpustakaan menngunakan phpmyadmin,
yaitu dengan cara create database kemudian berikan nama db_perpustakaan
seperti pada Gambar 3.

Gambar 3. Tampilan Untuk Membuat Database

Setelah berhasil dibuat maka akan muncul tampilan untuk


menambahkan tabel seperti pada Gambar 4.

10
Gambar 4. Tampilan Untuk Menambahkan Tabel

Kali ini kita akan menambahkan tabel menggunakan fungsi Query.


Berikut ini adalah struktur data dan contoh data untuk masing-masing tabel
beserta Query-nya yang akan dimiliki oleh database perpustakaan.

3.5.1 Tabel Member


1. Query

CREATE TABLE

`member` ( `id_member` INT(3) NOT NULL AUTO_INCREMENT ,

`nama_member` VARCHAR(30) NOT NULL ,

`jenis_kelamin` VARCHAR(6) NOT NULL ,

`alamat` VARCHAR(30) NOT NULL ,

`no_telp` VARCHAR(15) NOT NULL ,

PRIMARY KEY (`id_member`)) ENGINE = InnoDB;

2. Tampilan Tabel
Berikut merupakan tampilan tabel setelah diisi oleh data-data member
perpustakaan.
Tabel 2. Member

11
3. Analisa
Pada tabel member, ‘id_member’ adalah primary key yang
menggunakan Auto Increment.

3.5.2 Tabel Buku


1. Query

CREATE TABLE

`buku` ( `id_buku` INT(3) NOT NULL AUTO_INCREMENT ,

`judul_buku` VARCHAR(30) NOT NULL ,

`penulis` VARCHAR(30) NOT NULL ,

`penerbit` VARCHAR(30) NOT NULL ,

`tahun_terbit` YEAR NOT NULL ,

`kode_rak` INT(2) NOT NULL ,

PRIMARY KEY (`id_buku`)) ENGINE = InnoDB;

ALTER TABLE `buku` ADD FOREIGN KEY (`kode_rak`)

REFERENCES `rak`(`kode_rak`)

ON DELETE RESTRICT ON UPDATE RESTRICT;

2. Tampilan Tabel
Berikut merupakan tampilan tabel yang telah diisi oleh data-data buku
yang ada di perpustakaan.
Tabel 3. Buku

12
3. Analisa
Pada tabel buku, ‘id_buku’ menjadi primary key, Kemudian ‘kode_rak’
merupakan foreign key. Dapat dilihat pada tabel tersebut. bahwa satu
buku hanya dapat memiliki satu rak, namun satu rak bisa memiliki lebih
dari satu buku. Sehingga hubungan relasinya adalah M:1.

3.5.3 Tabel Rak


1. Query

CREATE TABLE

`rak` ( `kode_rak` INT(2) NOT NULL AUTO_INCREMENT ,

`nama_rak` VARCHAR(30) NOT NULL ,

PRIMARY KEY (`kode_rak`)) ENGINE = InnoDB;

2. Tampilan Tabel
Berikut merupakan tampilan tabel yang telah diisi oleh data-data buku
yang ada di perpustakaan.
Tabel 4. Rak

3. Analisa
Pada tabel rak, ‘kode_rak’ menjadi primary key yang menggunakan
auto increment, serta tabel tersebut memiliki column ‘nama_rak’
bertipe data varchar dengan length 30.

13
3.5.4 Tabel Petugas
1. Query

CREATE TABLE `petugas`

( `id_petugas` INT(3) NOT NULL AUTO_INCREMENT ,

`nama_petugas` VARCHAR(30) NOT NULL ,

`jenis_kelamin` VARCHAR(6) NOT NULL ,

`alamat` VARCHAR(30) NOT NULL ,

`no_telp` VARCHAR(15) NOT NULL ,

`kode_jabatan` INT(2) NOT NULL ,

PRIMARY KEY (`id_petugas`)) ENGINE = InnoDB;

ALTER TABLE `petugas` ADD FOREIGN KEY (`kode_jabatan`)

REFERENCES `jabatan`(`kode_jabatan`)

ON DELETE RESTRICT ON UPDATE RESTRICT;

2. Tampilan Tabel
Berikut merupakan tampilan tabel setelah diisi oleh data-data para
petugas perpustakaan.
Tabel 5. Petugas

14
3. Analisa
Pada tabel petugas, ‘id_petugas’ adalah primary key, dan
‘kode_jabatan’ adalah foreign key yang menghungkan dengan tabel
jabatan. Relasi pada tabel petugas dan tabel jabatan adalah 1:M dimana
satu orang petugas hanya boleh memiliki satu jabatan, sedangakan satu
jabatan boleh dimiliki oleh lebih dari satu orang petugas.

3.5.5 Tabel Jabatan


1. Query
CREATE TABLE `jabatan`

( `kode_jabatan` INT(2) NOT NULL AUTO_INCREMENT ,

`nama_jabatan` VARCHAR(35) NOT NULL ,

`gaji` VARCHAR(10) NOT NULL ,

PRIMARY KEY (`kode_jabatan`)) ENGINE = InnoDB;

2. Tampilan Tabel
Berikut merupakan tampilan tabel setelah diisi oleh data-data jabatan
para petugas perpustakaan.
Tabel 6. Jabatan

3. Analisa
Pada tabel jabatan, ‘kode_jabatan’ merupakan primary key yang
menggunakan auto increment, pada tabel tersebut terdapat column
‘nama_jabatan’ bertipe data varchar dengan length 35 dan column
‘gaji’ bertipe data varchar bertipe data varchar dengan length 10.

15
3.5.6 Tabel Peminjaman
1. Query

CREATE TABLE `peminjaman`

( `id_member` INT(3) NOT NULL ,

`nama_member` VARCHAR(30) NOT NULL ,

`jenis_kelamin` VARCHAR(6) NOT NULL ,

`alamat` VARCHAR(30) NOT NULL ,

`no_telp` VARCHAR(15) NOT NULL ,

`id_pinjam` INT(5) NOT NULL AUTO_INCREMENT ,

`id_buku` INT(3) NOT NULL ,

`judul_buku` VARCHAR(30) NOT NULL ,

`id_petugas` INT(2) NOT NULL ,

`tgl_pinjam` DATE NOT NULL ,

`tgl_kembali` DATE NOT NULL ,) ENGINE = InnoDB;

ALTER TABLE `peminjaman`

ADD FOREIGN KEY (`id_member`)

REFERENCES `member`(`id_member`) ON DELETE

RESTRICT ON UPDATE RESTRICT;

ALTER TABLE `peminjaman`

ADD FOREIGN KEY (`id_buku`)

REFERENCES `buku`(`id_buku`) ON DELETE

RESTRICT ON UPDATE RESTRICT;

ALTER TABLE `peminjaman`

ADD FOREIGN KEY (`id_petugas`)

REFERENCES `petugas`(`id_petugas`) ON DELETE

RESTRICT ON UPDATE RESTRICT;

16
2. Tampilan Tabel
Berikut merupakan tampilan tabel setelah diisi oleh data-data jabatan
para petugas perpustakaan.

Tabel 7. Peminjaman

3. Analisa
Pada tabel tersebut foreign keynya adalah ‘id_member’, ‘Id_buku’, dan
‘id_petugas’, yang masing-masing terhubung atau terelasi dengan tabel
member, buku, dan petugas. Relasi yang dibentuk sama yaitu 1:1
dimana satu ‘id_meber’, satu ‘id_buku’ dan satu ‘id_petugas’ hanya
boleh memiliki satu ‘tgl_pinjam’ dan ‘tgl_kembali’.

17
3.4 Normalisasi Tabel
Normalisasi merupakan sebuah teknik dalam logical desain sebuah
basis data yang mengelompokkan atribut dari suatu relasi sehingga
membentuk struktur relasi yang baik (tanpa redudansi).
Normalisasi adalah proses pembentukan struktur basis data sehingga
sebagian besar ambiguity bisa dihilangkan. Dalam kasus ini kami mencoba
menormalisasi tabel berikut :
 Unnormal Form
Tabel 8. Unnormal Form
id_ nama_ jenis_ no_ Id_ id_ tgl_ tgl_
alamat judul_buku
member member kelamin telp buku petugas pinjam kembali
0811
Irza Nur Wono 2019- 2019-
1 Pria 2345 4 Little Love 7
Fauzi giri 01-01 02-03
6789
0812
Siti Marta Trias 2019- 2019-
6 Wanita 2930 3 7
Mayna pura Muslimatika 01-02 01-05
3124
0859
Stevanus Tangge 2019- 2019-
2 Pria 8765 4 Little Love 9
Enggar rang 01-02 01-04
4321
Lancar Java
5 Dan
0811
Irza Nur Wono Javascript 2019- 2019-
1 Pria 2345 9
Fauzi giri Desain 2D 01-03 01-06
6789
2 Dengan
Autocad
Indonesian
9 Architects

0854 Anak Muda


Danu Teman 2019- 2019-
10 Pria 1455 Miliarder 8
Cahya ggung 10 01-05 01-07
5200 Saham

Trias
3
Muslimatika
0822 Desain 2D
Rexy Sema 2019- 2019-
9 Pria 4566 2 Dengan 7
Datu rang 01-07 01-08
6120 Autocad
Hukum
0854
Harits Sema Perikatan 2019- 2019-
3 Pria 1787 6 7
Izzudin rang dan 01-07 01-09
4551
Perjanjian

18
 First Normal Form
Tabel 9. First Normal Form 1

Tabel 10. First Normal Form 1

Tabel 11. First Normal Form 2

19
 Second Normal Form
Tabel 12. Second Normal Form 1

Tabel 13. Second Normal Form 2

20
3.5 Fungsi Join
3.5.1 Join Tabel petugas & jabatan
1. Query

select id_petugas, nama_petugas,


jenis_kelamin, alamat,no_telp,
nama_jabatan, gaji from petugas
inner join jabatan on petugas.kode_jabatan
= jabatan.kode_jabatan

2. Tampilan Tabel
Tabel 14. Tabel hasil join petugas & jabatan

3. Analisa
Hasil join antara petugas dan jabatan di atas menggunakan
foreign key ‘kode_jabatan’ pada masing-masing tabel, menunjukkan
bahwa relasi-relasi dan foreign key pada tabel-tabel tersebut sudah
berelasi dengan baik pada database sehingga dapat memudahkan admin
untuk menampilkan dan mengelola entitas-entitas dari tabel yang
diinginkan.

3.5.1 Join Tabel buku & rak


1. Query

select id_buku, judul_buku, penulis,


nama_rak from rak
inner join buku on buku.kode_rak =
rak.kode_rak

21
2. Tampilan Tabel
Tabel 15. Tabel hasil join buku & rak

3. Analisa
Hasil join antara buku dan rak di atas menggunakan foreign key
‘kode_rak’ pada masing-masing tabel, menunjukkan bahwa relasi-
relasi dan foreign key pada tabel-tabel tersebut sudah berelasi dengan
baik pada database sehingga dapat memudahkan admin untuk
menampilkan dan mengelola entitas-entitas dari tabel yang diinginkan.

22
BAB IV
KESIMPULAN

1. Sistem informasi perpustakaan diperlukan bagi suatu perpustakaan agar dapat


memudahkan proses administrasi, peminjaman buku serta pencarian data
buku, member, petugas dan peminjaman.
2. Database Sistem Informasi perpustakaan hanya dapat dinormalisasi hingga
Second Normalitation Form (2NF). Karena tidak semua tabel dapat
dinormalisasi hingga 3NF.
3. Terdapat relasi 1:1 (One to One) pada database sistem informasi
perpustakaan yaitu ketika satu atribut hanya dapat terhubung dengan satu
atribut lainnya yaitu peminjaman-buku, peminjaman-petugas dan
peminjaman-member.
4. Terdapat relasi M:1 (Many to One) pada database sistem informasi
perpustakaan yaitu ketika satu atribut dapat menangani atau terhubung ke
banyak atribut yaitu buku-rak dan petugas-jabatan.
5. Relasi dan foreign key dalam database dapat dibuktikan dengan melakukan
Query join tabel petugas yang dapat di join dengan tabel jabatan karena sama-
sama memiliki ‘kode_jabatan’ sebagai keynya.

23

Anda mungkin juga menyukai