IJCCS, Vol.x, No.x, Julyxxxx, pp. 1~5 ISSN: 1978-1520
1
EVALUASI BASIS DATA SISTEM INFORMASI MANAJEMEN UNIVERSITAS COKROAMINOTO PALOPO (SIMUNCP) Nahrun Hartono1, Rusmala2 1,2 Program Studi Teknik Informatika, Universitas Cokroaminoto Palopo e-mail:
[email protected],
[email protected]
Abstrak Basis data merupakan bagian penting dari sistem informasi salah satu peran sistem basis data yaitu sebagai sumber informasi bagi Sistem Informasi. Sistem Informasi Manajemen Universitas Cokroaminoto Palopo (SIMUNCP) merupakan aplikasi berbasi web yang menggunakan MySQL sebagai sistem basis datanya. Evaluasi dilakukan untuk mengidentifikasi kesalahan kesalahan yang ada pada basis data SIMUNCP, setelah dilakukan evaluasi pada basis data tersebut maka dapat diketahui bahwa pada basis data tersebut terdapat beberapa kesalahan kesalahan yang secara keseluruhan dari kesalahan tersebut pada basis data SIMUNCP sangat memungkinkan terjadinya kesalahan dalam penambahan data (insert), kesalahan dalam pengubahan data (update) dan kesalahan dalam penghapusan data (delete). Maka dari itu dilakukan perancangan basis data baru dengan mengacu pada hasil evaluasi yang telah dilakukan. Setelah itu dilakukan pengujian kualitas data pada aspek akurasi dan aspek non duplikat, pengujian dilakukan dengan mengeksekusi query, setiap query yang dieksekusi akan menghasilkan record dan kolom hasilnya kemudian dibandingkan antara basis data baru setelah evaluasi dengan basis data lama sebelum evaluasi. Kata kunci—basis data, evaluasi, kualitas data
Abstract The database is an importan part of the information system, the one of character database is as sources of information for information system. Cokroaminoto Palopo University’s information system (SIMUNCP) is aplication base on web that use MySQL as database in it system. The evaluation is done for indentifiction the errors that be present in database of SIMUNCP, after done the evaluation about database that can be cognizat of the database there is some faults that overall of error in database SIMUNCP, more possible the mistake happen in adding data (insert), the fault in changing data (update) and the fault in removing data (delete). Thererore, have to design a new database based on evaluation result that have been conducted. After that, do the testing of quality data about accurateness aspect and non duplicating aspect. The testing is done by axecuting a query, each query that execute will produce the record and column, then the results are compared between a new datebase with after evaluate with the former database before evaluation. Keywords—database, evaluation, data quality
1. PENDAHULUAN ebutuhan akan akses data yang cepat dan fleksibel merupakan hal yang sangat penting diera modern saat ini dimana semua kebutuhan kebutuhan manusia telah terdigitalisasi, manusia telah meminimalisir penggunaan kertas dan digantikan dengan data data digital yang di simpan pada komputer sebagai pusat data. Sistem penyimpanan dan pengelolaan data
K
Received June1st,2012; Revised June25th, 2012; Accepted July 10th, 2012
2
ISSN: 1978-1520
sering disebut sebagai Sistem Manajemen Basis Data (SMBD). Sama halnya dengan data data hardcopy maka sistem basis data juga ditujukan untuk menyimpan, mencari, penggunaan dan pembagian hak akses data [1]. Basis data memiliki peran yang sangat penting bagi Sistem Informasi Manajemen (SIM), salah satu peran sistem basis data yaitu sebagai sumber informasi bagi Sistem Informasi Manajemen, mengimplikasikan bahwa basis data yang digunakan harus mampu memenuhi kebutuhan berbagai informasi bagi para penggunanya [2]. Secara umum sistem basis data terbagi menjadi beberapa komponen yaitu data, hardware, software dan user. Basis data dalam perancangannya memiliki aturan tersendiri dan menggunakan bahasa pemrograman tersendiri untuk mengelolanya. SQL atau disebut juga dengan SEQUEL (Structured English Query Language) merupakan bahasa pemrograman yang memiliki tujuan khusus dan dirancang untuk mengelola data dalam Sistem Manajemen Basis Data (SMBD), atau untuk pengolahan aliran data dalam Sistem Manajemen Basis Data Relasional (SMBDR). SQL memiliki tiga bagian utama yaitu bahasa pemrograman untuk mendefinisikan data (Data Definition Language-DDL), untuk manipulasi dan akses data (Data Manipulation LanguageDML) dan bagian yang digunakan untuk pengawasan/kontrol pemakai (Data Control Language) [3]. Tabel, kolom dan record merupakan elemen penting dalam basis data, ketiga elemen tersebut tidak dapat dipisahkan satu sama lain, dan tidak menutup kemungkinan dalam satu basis data terdapat banyak tabel, didalam tabel memiliki bayak kolom dan kolom-kolom tersebut berisi record-record (data) [4]. Sistem Informasi Manajemen Universitas Cokroaminoto Palopo (SIMUNCP) adalah sebuah aplikasi web yang diimplementasikan pada jaringan Local Area Network (LAN) dan menggunakan MySQL sebagai sistem manajemen basis datanya. Dikarenakan tidak adanya dokumentasi yang menjelaskan rancangan serta alur data hal ini menyebabkan sulitnya menambahkan fitur untuk meningkatkan fungsionalitas aplikasi SIMUNCP maupun mengintegrasikan aplikasi aplikasi baru pada basis data SIMUNCP. pada penelitian sebelumnya yang dilakukan oleh M. Fachrurrozi yang berjudul Peningkatan Fungsionalitas Perangkat Lunak Melalui Restrukturisasi Data, membahas tentang perbaikan fungsi dari perangkat lunak dengan melakukan perbaikan pada basis data perangkat lunak, pendeteksian kesalahan pada basis data lama dilakukan dengan metode database smell, hasilnya kemudian dijadikan rujukan untuk merancangan basis data baru untuk diimplementasikan pada aplikasi lalu kemudian dilakukan pengujian, pengujian dilakukan terhadap basis data baru dengan menggunakan data lama yang telah dipindahkan [5]. Saat ini basis data SIMUNCP berkisar kurang lebih 245 megabyte, salah satu hal yang menjadi masalah pada basis data SIMUNCP yang digunakan saat ini adalah persoalan penginputan data dimana terkadang user salah melakukan penginputan data khususnya nim mahasiswa, sementara basis data yang digunakan saat ini tidak menyediakan fitur constraint check. Fitur constraint check sendiri berfungsi untuk membatasi penginputan data pada basis data, user akan dipaksa memasukkan data sesuai dengan format/aturan pada constraint check yang telah dibuat. Sebagai contoh adalah penggunaan constraint check untuk membatasi penginputan nim mahasiswa, dimana nim mahasiswa pada Universitas Cokroaminoto Palopo adalah sepuluh karakter angka, dengan menggunakan constraint check maka user akan dipaksa mengikuti aturan tersebut, selain itu pembatasan penginputan data juga dapat mencegah terjadinya eksploitasi antar muka aplikasi ke suatu basis data. Kesalahan dalam pembuatan program antar muka yang melakukan komunikasi ke server basis data dapat menyembabkan munculnya kerawanan keamanan terhadap data yang disimpan. Injeksi SQL melalui program antar muka dapat dilakukan jika terjadi kesalahan pemograman. Akar penyebab dari injeksi SQL adalah ketidakcukupan validasi masukan [6]. Maka dari itu perlu dilakukan evaluasi pada basis data tersebut agar dapat diketahui kesalahan kesalahan apa saja yang ada pada basis data SIMUNCP, yang kemudian hasil evaluasi tersebut dijadikan rujukan untuk merancang basis data baru.
IJCCS Vol. x, No. x, July201x : first_page–end_page
IJCCS
ISSN: 1978-1520
3
2. METODE PENELITIAN Pada penelitian ini akan dilakukan evaluasi pada basis data SIMUNCP dengan jumlah tabel sebanyak 105 tabel dan 2104 field. Evaluasi dilakukan dengan menganalisis struktur dari basis data SIMUNCP guna mendapatkan informasi penggunaan key dan relasi, selanjutnya adalah melakukan identifikasi query query yang digunakan oleh aplikasi SIMUNCP guna mendapatkan tabel dan kolom apa saja pada basis data yang digunakan oleh aplikasi SIMUNCP. Hasil evaluasi kemudian dijadikan rujukan untuk merancang basis data baru dengan melakukan perbaikan perbaikan pada basis data lama. Hasil dari rancangan basis data baru setelah evaluasi kemudian dibandingkan dengan basis data lama sebelum evaluasi dengan mengeksekusi query, adapun aspek yang dibandingkan adalah aspek non duplikat dan aspek akurasi. Aspek non duplikat dilakukan dengan membandingkan hasil eksekusi query SELECT yang akan menghasilkan data pada kolom yang terseleksi dan hasil eksekusi SELECT dengan klausa GROUP BY yang akan menghasilkan data yang sebenarnya pada kolom yang terseleksi, query tersebut dieksekusi pada basis data baru setelah evaluasi dan basis data lama sebelum evaluasi. Adapun tabel yang dilakukan pengujian adalah tabel yang menyimpan data mahasiswa yaitu pada tabel mhsw dan tabel yang menyimpan data dosen yaitu pada tabel dosen, kedua tabel tersebut dipilih karena diasumsikan bahwa seharusnya tabel tersebut tidak terdapat data data duplikat. Aspek yang kedua adalah aspek akurasi, untuk aspek akurasi pengujian dilakukan pada akurasi baris dan akurasi kolom hal tersebut dilakukan dengan mengesekusi join query yang didapatkan dari source code aplikasi SIMUNCP, setiap query yang dieksekusi akan menghasilkan jumlah baris record dan jumlah kolom, hasil tersebut kemudian dilakukan perbandingan antara basis data lama sebelum evaluasi dengan basis data baru setelah evaluasi. 3. HASIL DAN PEMBAHASAN Pada penelitian ini dilakukan evaluasi basis data SIMUNCP yang akan menjadi rujukan untuk merancangan basis data baru. Setelah itu dilakukan pengujian pada aspek akurasi dan pengujian pada aspek non duplikat. Berdasarkan hasil analisis dan identifikasi key pada basis data SIMUNCP maka dapat diketahui bahwa: 1). Terdapat 14 tabel pada basis data yang tidak menggunakan primary key. Primary key sendiri merupakan satu atau lebih nilai pada kolom untuk membuat sebuah record unik. 2). Tidak adanya penggunaan foreign key pada semua tabel. foreign key berguna untuk menjamin integritas referensial dan untuk memastikan nilai pada suatu kolom (atau kumpulan kolom) sesuai dengan nilai yang ada pada tabel lain. 3). Berdasarkan query yang ada pada source code aplikasi SIMUNCP maka diketahui bahwa terdapat 11 tabel yang tidak digunakan. Secara keseluruhan hasil evaluasi pada basis data yang digunakan SIMUNCP saat ini sangat memungkinkan terjadinya kesalahan penambahan data (insert), kesalahan pengubahan data (update), kesalahan dalam penghapusan data (delete). Setelah dilakukan evaluasi pada basis data SIMUNCP selanjutnya adalah melakukan perancangan basis data baru dan melakukan perbaikan perbaikan dari hasil evaluasi yang dilakukan sebelumnya, secara umum perbedaan struktur basis data sebelum dan setelah evaluasi ditunjukkan pada tabel 1. No 1 2 3 4
Tabel 1 Perbedaan struktur basis data sebelum dan setelah evaluasi Perbedaan Setelah Sebelum Keterangan Evaluasi Evaluasi Primary Key Ya Ya Sebelum evaluasi terdapat 14 tabel yang tidak menggunakan Primary Key Foreign Key Ya Tidak Check Contstraint Ya Tidak Jumlah Tabel 94 105 Beberapa tabel setelah evaluasi tidak digunakan/dirancangan karena tidak disebutkan pada source code aplikasi Title of manuscript is short and clear, implies research results (First Author)
4 5
Jumlah Kolom
ISSN: 1978-1520 1132
2104
Beberapa kolom tidak digunakan/tidak dirancangan pada basis data baru, karena tidak disebutkan di source code aplikasi dan memiliki informasi yang sama pada tabel yang saling berelasi
Dapat dilihat bahwa terdapat perbedaan antara basis data sebelum evaluasi dengan basis data setelah dilakukan evaluasi, basis data baru dirancang dengan menggunakan PostgreSQL hal ini dikarenakan basis data tersebut merupakan aplikasi basis data open source yang mendukung fitur check constraint. Check constraint sendiri digunakan untuk membatasi penambahan data pada basis data [7]. Setelah melakukan perancangan basis data baru, hal selanjutnya yang dilakukan adalah memindahkan data data yang ada ke basis data yang baru dirancang, pemindahan data dilakukan dengan eksport dan import. Setelah semua data berhasil dipindahkan selanjutnya dilakukan pengukuruan kualitas data. Pengukuran kualitas data untuk aspek non duplikat dilakukan dengan membandingkan hasil pengujian pada basis data lama sebelum evaluasi dengan basis data baru setelah evaluasi, sedangkan untuk aspek akurasi hanya dilakukan pada basis data baru setelah evaluasi. Hal ini disebabkan karena tidak adanya pembanding akurasi pada basis data sebelum evaluasi, sedangkan pada basis data baru setelah evaluasi dapat diukur tingkat akurasinya dengan menjadikan basis data lama sebelum evaluasi sebagai pembanding. Query pengujian aspek akurasi akan berbeda antara basis data lama sebelum evaluasi dengan basis data baru setelah evaluasi, hal ini disebabkan karena adanya perubahan struktur pada basis data yang baru, namun perubahan query tersebut tidak akan mempengaruhi informasi yang dihasilkan. Pengukuran kualitas data aspek akurasi dilakukan dengan mengeksekusi 51 query yang dieksekusi pada basis data sebelum dan setelah evaluasi, hasil pengujian kualitas data aspek akurasi baris dan akurasi kolom ditunjukkan pada gambar 1.
Gambar 1. Hasil pengukuran kualitas data aspek akurasi Pada gambar 1 ditunjukkan grafik hasil pengujian untuk aspek akurasi baris pada basis data baru setelah evaluasi adalah sebesar 0.99 atau dengan nilai persentase sebesar 99% sedangkan untuk aspeka kurasi kolom pada basis data baru setelah evaluasi adalah sebeser 0.84 atau dengan nilai persentasi sebesar 84%. Pengukuran kualitas data aspek non duplikat dilakukan pada data mahasiswa yang terdapat pada tabel mhsw dan data dosen yang terdapat pada tabel dosen, yang seharusnya data mahasiswa dan data dosen tidak terjadi duplikasi. Untuk mengukur aspek non duplikat pada data tersebut dilakukan dengan mengeksekusi query, adapun query yang digunakan untuk pengujian kualitas data aspek non duplikat yaitu dengan mengeksekusi query SELECT tanpa
IJCCS Vol. x, No. x, July201x : first_page–end_page
IJCCS
ISSN: 1978-1520
5
klausa GROUP BY dan query SELECT dengan klausa GROUP BY. Hasil pengukuran kualitas data aspek non duplikat ditunjukkan pada gambar 2.
Gambar 2. Hasil pengujian kualitas data aspek non duplikat Pada gambar 2 dapat dilihat bahwa pada data mahasiswa untuk basis data lama sebelum evaluasi dihasilkan nilai sebesar 0.96 atau dengan nilai persentase sebesar 96% dan untuk data dosen dihasilkan nilai 0.99 atau dengan nilai persentase sebesar 99% yang berarti terdapat data yang duplikat pada data mahasiswa dan data dosen sedangkan pada basis data baru setelah evaluasi untuk data mahasiswa dihasilkan nilai 1 atau dengan nilai persentase 100% dan untuk data dosen juga dihasilkan nilai 1 dengan nilai persentase 100% yang berarti pada basis data baru setelah evaluasi dilakukan tidak terdapat lagi data mahasiswa dan data dosen yang duplikat. 4. KESIMPULAN Evaluasi basis data dilakukan untuk mendapatkan kemungkinan kesalahan kesalahan yang dapat terjadi pada basis data SIMUNCP, evaluasi dilakukan dengan mengidentifikasi struktur basis data SIMUNCP serta mengidentifikasi query pada source code aplikasi untuk mengetahui tabel dan kolom apa saja pada basis data yang digunakan oleh aplikasi SIMUNCP. Setelah dilakukan evaluasi maka dapat disimpulkan bahwa pada basis data tersebut sangat memungkinkan terjadinya kesalahan dalam penambahan data (insert), kesalahan dalam pengubahan data (update), serta kesalahan dalam penghapusan data (delete). Hasil evaluasi kemudian dijadikan rujukan untuk merancang basis data baru untuk memperbaiki kesalahan kesalahan tersebut. Setelah basis data baru dirancang selajutnya memidahkan data data yang ada dibasis data lama, lalu kemudian dilakukan pengujian kualitas data. Hasil pengujian kualitas data pada basis data baru setelah evaluasi untuk aspek akurasi baris adalah 99% hasil ini tidak mencapai 100% disebabkan karena adanya perubahan struktur pada basis data baru setelah evaluasi sehingga beberapa data perlu dilakukan penyesuaian saat proses import data ke basis data baru setelah evaluasi. Sama halnya dengan aspek akurasi kolom yang tidak mencapai nilai 100% hal tersebut disebabkan terjadi perubahan jumlah kolom pada basis data baru setelah evaluasi, perubahan tersebut disebabkan karena beberapa kolom pada tabel tertentu di basis data lama sebelum evaluasi memiliki nilai yang sama pada tabel lain, sehingga kolom kolom tersebut tidak dirancang. Untuk hasil pengujian kualitas data untuk aspek non duplikat pada basis data lama untuk data mahasiswa dan dosen yaitu senilai 96% dan 99% yang berarti masih terdapat data yang duplikat pada data mahasiswa dan data dosen hal ini disebabkan tidak adanya constraint unique pada tabel yang menyimpan data mahasiswa dan data dosen, sedangkan pada basis data baru setelah evaluasi diberikan constraint unique pada tabel yang menyimpan data mahasiswa dan dosen sehingga setelah dilakukan pengujian dihasilkan nilai 100% yang berarti tidak ada lagi data mahasiswa dan data dosen yang duplikat. Title of manuscript is short and clear, implies research results (First Author)
6
ISSN: 1978-1520 5. SARAN
Dari keseluruhan pemaparan pada penelitian ini dapat disimpulkan bahwa pada penelitian dilakukan evaluasi basis data untuk mengidentifikasi kesalahan kesalahan yang ada pada basis data, hasil evaluasi tersebut kemudian dijadikan acuan untuk merancang basis data baru. Setelah itu dilakukan pengujian kualitas data aspek akurasi dan aspek non duplikat, sedangkan untuk aspek aspek lain seperti integritas turunan, kelengkapan data dan konsistensi data belum dilakukan pengujian, hal ini merupakan keterbatasan pengetahuan penulis dan keterbatasan waktu sehingga penelitian ini masih terdapat banyak kekurangan, penulis berharap penelitian ini menjadi acuan untuk penelitian selanjutnya yang menyangkut tentang evaluasi basis data dan pengukuran kualitas data. DAFTAR PUSTAKA [1] Utami, E., & Raharjo, S. (2006). RDBMS dengan PostgreSQL di GNU/Linux. Yogyakarta: Andi. [2] Raharjo, S., Sutanta, E., & Utami, E. (2007). Analisis aspek-aspek kualitas schema database (studi kasus pada database akademik ista yogyakarta). Seminar Nasional Teknologi (pp. D1 -D13). Yogyakarta: SNT Amikom. [3] Darmanto, E. (2015). Analisa Optimalisasi Bahasa SQL Berdasarkan Relational Algebra pada Kasus Rekapitulasi Mahasiswa Layak Wisuda. Jurnal SIMETRIS , 6 (2), 405-414. [4] Nugroho, B. (2008). Panduan Lengkap Menguasai Perintah SQL. Jakarta Selatan: MediaKita. [5] Fachrurrozi, M. (2013). Peningkatan Fungsionalitas Perangkat Lunak Melalui Restrukturisasi Data (Studi Kasus: Sistem Informasi Akademik Fakultas Ilmu Komputer UNSRI). Jurnal GENERIC , 4 (1), 33-38. [6] Raharjo, S. (2013). Integrity Constraint Basis Data Relasional dengan Menggunakan PL/PGSQL dan CHECK Constraint. Seminar Nasional Teknologi Informasi dan Multimedia. Yogyakarta. [7] Hartono, N., Utami, E., & Amborowati, A. (2016). Migrasi dan Optimalisasi Database Sistem Informasi Manajemen Universitas Cokroaminoto Palopo. Jurnal Buana Informatika, 7(4).
IJCCS Vol. x, No. x, July201x : first_page–end_page