You are on page 1of 11

SISTEM MANAJEMEN BASIS DATA

ANALISIS DAN PERANCANGAN SISTEM


INFORMASI PENGGAJIAN
Dosen : Suwanto Raharjo, M.Kom

TUGAS UAS

Disusun Oleh:
Isnanto Adi Prasetyo (14.51.0624)

MAGISTER INFORMATIKA
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AMIKOM YOGYAKARTA
YOGYAKARTA
2015

ANALISIS DAN PERANCANGAN DATABASE

SISTEM INFORMASI PENGGAJIAN


Isnanto Adi Prasetyo
Magister STMIK AMIKOM YOGYAKARTA
Jl. Ring Road Utara, Condong Catur, Sleman, Yogyakarta. Telp : (0274) 884-201
Email : tyobeda@gmail.com

Abstrak
Suatu pernyataan mengatakan bahwa data merupakan hal yang amat penting bagi kehidupan.
Pernyataan ini tidak dapat di pungkiri lagi karena setiap harinya kita selalu menggunakan data dalam
merencanakan sesuatu, mempertimbangkan, hingga mengambil sebuah keputusan. Sering dengan
perkembangan teknologi, data sudah disimpan dalam bentuk digital kedalam database. Karena
pentingnya suatu data, suatu database diberi batasan hanya orang-orang tertentu yang boleh
mengaksesnya yang kita kenal sebagai hak akses. Pada tulisan ini peneliti mengambil subjek
penelitian sistem informasi penggajian untuk diteliti. Sistem penggajian merpakan sistem yang
mengatur tentang otomatisasi penghitungan gaji sesuai data kehadiran. Gaji merupakan suatu yang
rentan terhadap kehidupan yang dampaknya bisa dirasakan secara langsung. Kesalahan pada database
keuangan akan mengakibatkan kekacauan suatu organisasi, untuk itu sistem informasi penggajian
harus memiliki database yang baik, serta memiliki backup, atau data cadangan untuk mengembalikan
data yang hilang apabila suatu saat terjadi kesalahan yang tidak diinginkan yang mengakibatkan hilang
atau rusaknya data. Penelitian ini akan membahas tentang relasi antar tabel, cek konstrain, manajemen
user, keamanan, serta backup database. Hasil penelitian ini berupa saran untuk perancangan database
aplikasi sistem informasi penggajian.
Kata Kunci : Analisis, Database, Sistem Informasi Penggajian, Manajemen Pengguna .

1. Pendahuluan

database secara logika, 5)Perancangan database


secara disik, serta implementasi. Sekarwati
(2001) dalam Abdillah (2001:18).
Pengertian Sistem informasi dalam
Jogiyanto (2000:11) serta Eko Indrajit (2001:3),
secara sederhana Sistem Informasi merupakan
kumpulam
kompopnen
yang
saling
berhubungan untuk mengolah input (data)
menjadi output (informasi) sehingga dapat
memenuhi kebutuhan pemakai (Abdillah,
2006:11).
Namun dalam penelitian ini peneliti
menganalisis perancangan database Sistem
Informasi penggajian (Studi Kasus pada
Universitas Bina Darma, Palembang) oleh
Dosen Bina Darma Palembang, Leon Andhertti
Abdillah. Dalam penelitiannya perancangan
basis data ini melum membahas tentang
konstrain, manajemen user, manajemen
transaksi, keamanan, maupun proses backup
database nya. Sehingga lebih tepatnya peneliti
melanjutkan penelitian yang telah dilakukan
sebelumnya dengan metode dokumentasi.

Dampak teknologi yang berkembang


sangat cepat, khususnya dibidang komputer
mengakibatkan cepatnya proses pengiriman
maupun penerimaan suatu informasi. Kelebihan
yang luar biasa dari perkembangan teknologi
seudah semestinya dimanfaatkan oleh beragam
pihak untuk mengelola berbagai aktivitas
institusinya dengan baik, terencana, dan
terdokumentasi
dengan
maksimal
[1]
Dokumentasi suatu aktivitas maupun transaksi
dapan dilakukan dengan pemanfaatan teknologi
saat
ini
yaitu
Database.
Database
memungkinkan menyimpan banyak data, serta
menawarkan seguah fitur keamanaan agar
database tidak diakses oleh orang-orang tidak
memiliki hak atas akses database tersebut.
Micro lifecycle, merupakan proses
perancangan database yang memiliki kegiatankegiatan sebagai berikut : 1) Pengumpulan data
dan analisis, 2)Perancangan database secara
konseptual, 3)Pemilihan DBMS, 4)Perancangan
SMBD - ANALISIS DAN PERANCANGAN DATABASE
SISTEM INFORMASI PENGGAJIAN

Mengumpulkan dokumen dokumen yang terkait


dengan perancangan database, kemudian di
terapkan pada Sistem Informasi penggajian ini.
Pada tulisan ini peniliti juga membahas
proses Backup. Proses backup dalam teknologi
informasi mengacu pada pembuatan salinan
data, sehingga salinan tambahan tersebut dapat
digunakan untuk mengembalikan (restore)
semula setelah peristiwa kehilangan data.
Backup sangat berguna terutama untuk dua
tujuan: pertama untuk memulihkan keadaan
setelah bencana (disaster recovery); kedua
untuk mengembalikan sejumlah kecil file
setelah sengaja dihapus atau rusak. Kehilangan
data juga sangat umum, 66% pengguna internet
telah menderita kehilangan data yang serius .
Konsistensi data dalam proses backup harus
dijaga, sebelum melakukan backup data.
Mengecek
konsistensi
data
dengan
membandingkan data pada struktur direktori
dengan data pada blok, lalu apabila ditemukan
kesalahan, maka program backup akan
mencoba
memperbaiki.
Pengecekan
kekonsistenan
data
ini
yang
disebut
recovery[2].
Sehingga sebagai hasil akhir, diadapat
rancangan database Sistem Informasi yang
dilengkapi dengan pembahasan konstrain,
manajemen user, manajemen transaksi,
keamanan dan backup yang nantinya rancangan
ini bisa dijadikan rekomendasi untuk Sistem
Informasi yang serupa.
Yang menjadi batas penelitian ini ialah,
peneliti hanya melakukan penilitian hanya
sampai pada tahap analisis perancangan
database saja. DBMS yang digunakan adalah
MySQL.

Dalam melakukan penelitian ini penulis


melakukan urutan penelitian seperti yang
dijabarkan pada bagan berikut :

Gambar 1. Alur Penelitian

Keterangan alur penelitian adalah sebagai


berikut :
a. Analisis Rancangan Database
Menganalisis perancangan dtabase SI
penggajian yang telah diteliti sebelumnya.
Menganalisis aspek apa saja yang bisa
memaksimalkan fungsionalitas database
pada SI penggajian ini.
b. Melengkapi Dokumentasi
Studi dokumentasi ialah mempelajari
penelitian-penelitian sebelumnya yang
mungkin di terapkan pada objek yang
sedang diteliti ini.
c. Uji Coba Query
Uji coba dilakukan agar analisis yang telah
dilakukan bisa valid, sehingga query-query
yang
nantinya
dilakuakan
dalam
pembuatan database ini diuji coba dalam
aspek manajemen user, keamanan, maupun
backup.
d. Melengkapi Kajian Analisis
Kajian analisis menyangkut aspek : Tipe
Data, Konstrain, Manajemen User,
Manajemen Transaksi, Kemanan, Backup.
e. Hasil Evaluasi
Hasil
evaluasi
merupakan
hasil
perhitungan kuesioner.
f. Kesimpulan dan Saran

2. Metode Penelitian
Metode pengumpulan data yang digunakan
dalam penelitian ini adalah :
a. Metode Kearsipan / Documentation.
Penulis mengumpulkan dara dengan cara
membaca serta mempelajari data dan arsip
terdahulu. Data berupa aspek-aspek
teoritis bisa digali pada tahap ini.
b. Metode Kepustakaan / Library.
Penulis melakukan pengumpulan data
dengan cara membaca dan mempelajari
buku-buku pustaka yang ada untuk
referensi bahan referensi.

3. Pembahasan
Pembahasan dilakukan sesuai dengan alur
penelitian yang telah dibuat.
1.

Penelitian sebelumnya merancang database


dengan skema konseptual, dengan menganalissi
kebutuhan pengguna, maka didapat 7 tabel yang
saling berelasi, adapun tabel-tabel yang

Alur Penelitian
SMBD - ANALISIS DAN PERANCANGAN DATABASE
SISTEM INFORMASI PENGGAJIAN

Analisis Rancangan Database

dimaksu adalah : 1) Tabel Golongan, 2) Tabel


Jabatan Fungional Akademik, 3) Tabel Jabatan
Struktural, 4) Tabel Jabatan Khusus, 5) Tabel
Pendidikan, 6) Tabel Dosen, dan 7) Tabel Gaji,
sehingga didapat ERD sebagai berikut:

Gambar 2. ERD SI Penggajian

Gambar 3. Notasi Ratio Cardinality (1-1,1-N,N1,N-N)

Gambar 5.ERD SI Penggajian Baru

Pada rancangan ERD yang baru telah


dilengkapi dengan tipe data serta Primary Key,
maupun Foreign key untuk tiap tabel. Serta
sedikit penyesuaian terhadap tabel gaji. Relasi
antara Tabel dosen dengan tabel gaji adalah
many to many karena setiap dosen memiliki
banyak gaji pada periode yang berbeda, dan
setiap gaji pada periode yang sama bisa dmiliki
oleh banyak dosen, jadi merupakan entitas
lemah. Sehingga muncul tabel baru, detail_gaji
dengan tambahan kolom periode yang
merupakan periode tanggal gajian.
Pada Gambar.5 Juga diperbarui dengan
munculnya tabel baru, yaitu tabel potongan,
tabel potongan ini akan menyimpandatan
potongan gaji tiap karyawan, sehingga tidak
lagi menginputkan secara manual potongan gaji
setiap karyawan seperti yang diterapkan pada
sistem sebelumnya.

Gambar 4. Relasi Antar Tabel SI Penggajian

Dari Gambar 2 dan 4 penulis mencoba


mendesain ulang ERD beserta tipe data yang
digunakan untuk setiap baris entitas. Dalam
perancangan ERD, peneliti menggunakan
DBDesigner 4.0. sehingga tidak perlu
melakukan listing code.

SMBD - ANALISIS DAN PERANCANGAN DATABASE


SISTEM INFORMASI PENGGAJIAN

Gambar 7. Keterangan Tipe data

Constraint
Dengan batasan atau konstrain type,
maupun not null, data bisa masuk dengan
persyaratan tertentu, sesuai dengan ukuran
maksimal maupun tipe datanya. Contsraint cek
dibuat ketika pembuatan sebuah tabel.
Pada mySQL peneliti mencoba hanya
beberapa jenis constraint yang bisa diterapkan :
contoh :

Gambar 6.Relasi Antar Tabel

Setelah dianalisis dan desain ulang relasi


tabel seperti pada gambar 6 Sedangkan untuk
keterangan seteiap tabel akan dijabarkan pada
gambar berikut ini.

Mysql > CREATE TABLE Gaji (


SlipGaji int (11) Primary key
not null,
NIDN int(10) unique not null,
HonorMgjr decimal(12) not null,
SKS int(3) not null,
Id_potongan int(11) unique not
null
);

Constraint dia atas hanya membatasi


sebatas panjang karakter serta tipe karakter dan
juga syarat data harus terisi ataupun tidak.
Untuk penelusuran konstrain yang lebih jauh
peneliti menggunakan DBMS SQL Server 2008
untuk melakukan uji coba.
Berikut ini adalah konstraint yang
dibutuhkan agar data yang masuk bisa
difilterisasi sehingga data menjadi valid.
Tabel 1. Cek Konstrain
Tabel Gaji
NIDN
=10 Digit
alter table gaji
add constraint cekNIDN
check (NIDN=10)
HonorMengajar
Honor >= 0
alter table gaji
add constraint cekHonor
check (HonorMgjr =>0)
SKSMengajar
<= 100
alter table gaji
add constraint cekSKS
check (SKS>=0 and SKS<=100)

Untuk setiap data yang berupa uang


menggunakan cek konstrain >0 , karena uang
tidak diperbolehkan memiliki nilai minus.

SMBD - ANALISIS DAN PERANCANGAN DATABASE


SISTEM INFORMASI PENGGAJIAN

Manajemen User
Manajemen Pengguna dimaksudkan untuk
membatasi pengguna dengan hak akses tertentu
dalam mengakses data dalam database. Hal ini
dapat menghindari hal yang tidak diinginkan,
salah satunya manipulasi data, ataupun
hilangnya suatu data. Untuk itu database
sangatlah penting untuk dibatasi hak aksesnya.
Hak akses dalam MySQL dibagi menjadi
(Select) melihat data, (insert) memasukkan
data, (update) mengubah data, serta (delete)
menghapus data. Dengan perintah GRANT
(Memberi hak akses) atau REVOKE (mencabut
Hak Akses). Sedangkan IDENTIFIED untuk
memberikan password pada suatu user.

'keuangan'@'localhost' IDENTIFIED BY
'timeismoney';
mysql> GRANT SELECT ON
dbpenggajian.dosen TO 'keuangan
@'localhost';
mysql> GRANT SELECT ON
dbpenggajian.golongan TO 'keuangan
@'localhost';
mysql> GRANT SELECT ON
dbpenggajian.jabatanstrutktural TO
'keuangan @'localhost';
mysql> GRANT SELECT ON
dbpenggajian.jabatanfungsional TO
'keuangan @'localhost';
mysql> GRANT SELECT ON
dbpenggajian.jabatankhusus TO 'keuangan
@'localhost';
mysql> GRANT SELECT ON
dbpenggajian.pendidikan TO 'keuangan
@'localhost';
mysql> GRANT SELECT ON
dbpenggajian.gaji TO 'keuangan
@'localhost';
mysql> GRANT SELECT ON
dbpenggajian.detail_gaji TO 'keuangan
@'localhost';
mysql> GRANT SELECT, UPDATE ON
dbpenggajian.potongan TO 'keuangan
@'localhost';

Tabel 3.Hak Akses Dosen


Dosen
Golongan
Jabatan Struktural
Jabatan Fungsional
Jabatan Khusus
Pendidikan
Potongan
Gaji
Detail Gaji

mysql> CREATE USER 'dosen'@'localhost'


IDENTIFIED BY 'dosen123';
mysql> GRANT SELECT ON
dbpenggajian.dosen TO
'dosen@'localhost';
mysql> REVOKE ALL ON
dbpenggajian.jabatanstruktural TO
'dosen@'localhost';
mysql> REVOKE ALL ON
dbpenggajian.jabatanfungsionall TO
'dosen@'localhost';
mysql> REVOKE ALL ON
dbpenggajian.jabatankhusus TO
'dosen@'localhost';
mysql> REVOKE ALL ON
dbpenggajian.pendidikan TO
'dosen@'localhost';
mysql> REVOKE ALL ON
dbpenggajian.potongan TO
'dosen@'localhost';
mysql> REVOKE ALL ON dbpenggajian.gaji
TO 'dosen@'localhost';
mysql> GRANT SELECT ON

Gambar 8. Manajemen User

Pada gambar 8, peneliti membagi user atau


pengguna menjadi 3 bagian, yaitu bagian
keuangan, Divisi IT, dan Dosen.
Tabel 2.Hak Akses Bagian keuangan
Dosen
Golongan
Jabatan Struktural
Jabatan Fungsional
Jabatan Khusus
Pendidikan
Potongan
Gaji
Detail Gaji

Select
Select
Select
Select
Select
Select
Select, update
Select
Select

mysql> CREATE USER

SMBD - ANALISIS DAN PERANCANGAN DATABASE


SISTEM INFORMASI PENGGAJIAN

Select
REVOKE
REVOKE
REVOKE
REVOKE
REVOKE
REVOKE
REVOKE
Select

b) Gagal transaksi dikatakan aborted dan


basis data harus dikembalikan ke keadaan
sebelum
dilakukannya
transaksi.
Transaksi seperti ini di sebut rollback atau
undone. Transaksi yang digagalkan akan
dapat
dilakukan
rollback
yang
menyebabkan mulai kembali.

dbpenggajian.detail_gaji TO
'dosen@'localhost';

Tabel 4.Hak Akses Divisi IT


Dosen
Golongan
Jabatan Struktural
Jabatan Fungsional
Jabatan Khusus
Pendidikan
Potongan
Gaji
Detail Gaji

GRANT ALL
GRANT ALL
GRANT ALL
GRANT ALL
GRANT ALL
GRANT ALL
GRANT ALL
GRANT ALL
GRANT ALL

Keamanan

Masalah keamanan merupakan salah


satu aspek penting dari sebuah sistem
Sayang sekali masalah keamanan ini sering
kali kurang mendapat perhatian dari para
pemilik dan pengelola sistem informasi.
Seringkali masalah keamanan berada di
urutan kedua, atau bahkan di urutan terakhir
dalam daftar hal-hal yang dianggap penting.
Apabila menggangu performansi dari
sistem, seringkali keamanan dikurangi atau
ditiadakan (Dowd & McHenry, 1998: 2428) yang dikutip oleh Rahardjo (2005: 1).
Keamanan itu tidak dapat muncul
demikian saja. Dia harus direncanakan.
Ambil contoh berikut. Jika kita membangun
sebuah rumah, maka pintu rumah kita harus
dilengkapi dengan kunci pintu. Jika kita
terlupa memasukkan kunci pintu pada
budget perencanaan rumah, maka kita akan
dikagetkan bahwa ternyata harus keluar
dana untuk menjaga keamanan[3].

mysql> CREATE USER 'ITdiv'@'localhost'


IDENTIFIED BY 'miminmomon123';
mysql> GRANT ALL ON dbpenggajian.* TO
'ITdiv@'localhost';

Manajemen Transaksi
Manajemen transaksi merupakan sebuah
aksi maupun serangkaian aksi yang dilakukan
oleh pengguna atau aplikasi yang mengakses
atau mengubah isi dari basis data. Sebuah
transaksi adalah sebuah unit kerja yang logis
dari suatu basis data. Sedangkan program
aplikasi merupakan serangkaian transaksi tanpa
pengolahan basis data di dalamnya. Transaksi
selalu mengubah basis data dalam satu keadaan
yang konsisten ke keadaan konsisten lainnya,
walaupun terjadi pelangggaran konsistensi data
selama transaksi berjalan. [4]
Karena aplikasi ini merupakan sebuah sub
sistem dari aplikasi Sistem Informasi akademik
maka aplikasi ini tidak begitu memerlukan
manajemen transaksi. Manajemen transaksi
disini memungkinkan untuk memilih tindakan
apa yang akan dijadikan pemicu berubahnya
suatu data dalam tabel. Jadi apabila sistem ini
sudah terintegrasi dengan sistem presensi,
dalam kampus tertentu presensi kehadiran
doasen dibatasi 30 sampai 45 menit waktu
login/ presensi dosen. Ketika dosen terlambat
melakukan presensi, maka tidak akan bisa
melakukan login. Dan harus menghubungi
bagian yang memiliki hak akses untuk
membukakan presensi.

Pengendalian kontrol terhadap hak akses,


atau keamanan dalam suatu sistem sangatlah
diperlukan
untuk
meminimalisasi
penyalahgunaan atau kesalahan sistem sera
untuk menjamin keamanan data yang akan
dihasilkan.Kemanan dalam basis data bisa
diperketat dengan penggunaan hak akses,
maupun enkripsi data.[4]
Backup
Backup sangat berguna terutama untuk dua
tujuan: pertama untuk memulihkan keadaan
setelah bencana (disaster recovery); kedua
untuk mengembalikan sejumlah kecil file
setelah sengaja dihapus atau rusak. Mengacu
pada penelitian yang dialkukan tentang metode
replikasi serta MySQL Dump untuk backup.
Peniliti memilih metode replikasi karena

Transaksi dapat menghasilkan salah satu


outputnya sebagai berikut. [4]
a) Sukses transaksi dikatakan commited
dan basis data mencapai keadaan baru
atau berikutnya. Transaksi yang commited
tidak dapat digagalkan.
SMBD - ANALISIS DAN PERANCANGAN DATABASE
SISTEM INFORMASI PENGGAJIAN

Tabel 6. Setting Slave

memiliki performa yang baik, lebih cepat dan


menggunakan resource komputer lebih sedikit.
Replikasi merupakan cara untuk melakukan
penggandaan serta penyebaran data dan objekobjek database dari satu database ke database
lain dan melaksanakan sinkronisasi antara
database sehingga konsistensi data dapat
terjamin (Anonim, 2010). Replikasi dapat
dipahami sebagai teknik pengkopian database
dan pengelolaan objek-objek database dalam
suatu jaringan komputer yang dapat membentuk
suatu sistem database terdistribusi untuk
menjaga konsistensi data secara otomatis. [2]

4. Kesimpulan
Dalam menganalisis rancangan database
sistem penggajian ini peneliti menemukan
beberapa
aspek
yang
masih
bisa
dimaksimalisasi kan. Diantaranya adalah,
penambahan hak akses (manajemen user),
maksimalisasi tipe data, keamanan yang
mencakaup manajemen transaksi, dan regulasi
backup.
5. Saran

Gambar 9. Proses Replikasi Database

Terkait SI Penggajian ini penelitian bisa


dilanjutkan ketahap implementasi program
dengan menggunakan database yang telah
dianalisis dari berbagai aspek.

Pada gambar 9 tampak terdapat komputer


yang dijadikan master (tempat data pertama
disimpan), dan slave(tempat data yang nantinya
akan dipindahkan sebagai backup). Proses

backup replikasi dikendalikan berdasarkan


setting seperti pada Tabel 5 dan Tabel 6.
Setting dilakukan terhadap file my.cnf pada
PC-1 dan PC-2.

Daftar Pustaka:

Tabel 5. Setting Master

SMBD - ANALISIS DAN PERANCANGAN DATABASE


SISTEM INFORMASI PENGGAJIAN

SMBD - ANALISIS DAN PERANCANGAN DATABASE


SISTEM INFORMASI PENGGAJIAN

[2] Tawar.

2011. Perbandingan Metode


Backup Database MySQL antara
Replikasi dan MySQLDump , JUSI Vol
1, No1. Universitas Akhmad Dahlan
Yogyakarta.
[3] Alamsyah,
Ilham.
Pengelolaan
Keamanan Database Pada Data
Kepegawaian.
Sekolah
Tinggi
Teknologi Garut.
[4] Rahmantoko,
Beni.
2010.
Sistem
Informasi Penualan pada toko Bangunan
Bintang Besar Wates. Naskah Pulblikasi.
STMIK AMIKOM Yogyakarta.
[5] Indrajani 2014, Database System Case
Study All In One. PT. Elex Media
Komputindo.
Jakarta.

SMBD - ANALISIS DAN PERANCANGAN DATABASE


SISTEM INFORMASI PENGGAJIAN