• Tidak ada hasil yang ditemukan

Analisis dan Perancangan Software Pengukuran Metrik Skala dan Kompleksitas Query Database

N/A
N/A
Protected

Academic year: 2021

Membagikan "Analisis dan Perancangan Software Pengukuran Metrik Skala dan Kompleksitas Query Database"

Copied!
12
0
0

Teks penuh

(1)

https://doi.org/10.28926/ilkomnika.v2i1.101 http://journal.unublitar.ac.id/ilkomnika

Analisis dan Perancangan Software Pengukuran Metrik Skala dan

Kompleksitas Query Database

Moh. Ariffudin1,*, Hafizzudin Sifaulloh2, Eka Manggala Putra3, Muhammad Ainul Yaqin4 Teknik Informatika, Universitas Islam Negeri Maulana Malik Ibrahim, Indonesia

1ariffudinnotresponding@gmail.com; 2picman.h@gmail.com; 3imphyku888@gmail.com

* corresponding author

PENDAHULUAN

Pengukuran perangkat lunak menjadi salah satu kebutuhan saat ini disaat meningkatnya pertumbuhan perangkat lunak yang beredar dan kemajuan akses terhadap internet ini membuat aplikasi mobile berlomba-lomba untuk membuat perangkat lunak yang dapat digunakan secara gratis maupun berbayar pada perangkat komunikasi. Pertumbuhan secara massif ini membuat sebuah pengukuran perangkat lunak menjadi sangat perlu dilakukan sebagai sarana untuk menilai kualitas sebuah perangkat lunak [1]. Walaupun hingga saat ini belum ada regulasi yang terstruktur dan spesifikasi untuk mengukur kualitas perangkat lunak yang beredar agar memenuhi standar kualitas tertentu, tidak membuat pengukuran perangkat lunak menjadi suatu hal yang kalah penting dibandingkan proses pembuatan dan pengujian perangkat lunak tersebut, karena fungsinya sangat krusial dalam penetuan kualitas perangkat lunak [2].

Sama seperti sebuah program, sebuah Query Database perlu diukur juga kompleksitasnya. Sejauh ini, insinyur perangkat lunak telah mengedepankan ratusan metrik untuk meningkatkan kualitas dari program perangkat unak mengabaikan Query Database. Padahal aspek data pada perangkat lunak penting karena ukuran data berkontribusi pada banyak kualitas sistem [3]. Maka diperlukam sebuah kompleksitas metriks yang dapat mengukur tingkat kerumitan dalam mendapatkan data, dilihat dari jumlah tabel, kolom,

statement, kedalaman dan fungsi logika yang digunakan pada Query Database [5].

Untuk menciptakan sebuah formula kompleksitas Query Database yang komprehensif dan sensitive terhadap pembuahan kecil haruslah menyertakan setiap metrik untuk Query

Database. Beberapa formul telah dianjurkan sebelumnya untuk menyelesaikan masalah ini.

Namun masih ada metrik yang belum disertakan didalamnya dan ada pula metriks yang

I N F O A R T I K E L A B S T R A K

Sejarah Artikel

Diterima: 18 Desember 2019 Direvisi: 13 Januari 2020 Diterbitkan: 30 April 2020

Kompleksitas Query Database dalam suatu sistem semakin meningkat seiring pertumbuhan data. Kompleksitas Query Database yang meningkat mengakibatkan kerumitan dalam mendapatkan data yang sesuai dengan kebutuhan. Insinyur perangkat lunak telah mengedepankan banyak metriks untuk meningkatkan kualitas dari program perangkat lunak, mengabaikan Query Database yang digunakan. Sehingga belum ada metriks yang dapat mengukur tingkat kerumitan dalam mendapatkan data. Padahal aspek data pada perangkat lunak penting karena ukuran data berkontribusi pada banyak kualitas sistem. Paper ini menggunakan metode GQM untuk mengidentifikasi metriksnya. Paper ini mengidentifikasi bahwa metriks untuk sebuah

Query Database meliputi jumlah tabel, kolom, statement, kedalaman

dan fungsi logika. Dari beberapa formula kompleksitas yang sudah pernah diajukan, kami hanya menghitung dari statement select dan diformulasikan dengan metode Analytic Hierarchy Process (AHP).

Kata Kunci

Skala metrik Kompleksitas Query database

(2)

opsional untuk diukur jika dilihat dari view data language (VDL). Sehingga saat ini digunakan untuk mengukur kompleksitas Query Database yang strukturnya hampir identik, maka hasil yang diperoleh bisa memiliki nilai yang sama

METODE

Vashistha dkk. dalam pengukuran kompleksitas Query Database menggunakan nilai perhitungan regression yang dikalikan dengan metriks Query Database yaitu tabel, kolom,

length, logika, statement dan runtime. Setelah itu, nilai yang sudah diukur kemudian

dijumlahkan untuk mendapatkan nilai kompleksitas Query Database [4]. Berikut ini adalah penjelasan metriks-metriks yang ada pada Query Database:

• Jumlah Tabel (T) : jumlah tabel dalam Query Database • Jumlah Kolom (K) : jumlah kolom dalam sebuah tabel • Length (L) : panjang Query string

• Kedalaman (Dp) : ukuran kedalaman sebuah tree Query

• Statement (S) : jumlah statement/expression yang digunakan dalam Query • Logika (Log) : jumlah fungsi logika/operator yang digunakan dalam Query • Runtime (Rt) : lama waktu yang diperlukan untuk menjalankan sebuah Query

Tabel 1. Metrik-metrik yang telah disertakan dalam formula kompleksitas

T K L Dp S Log Rt

Vashista

dkk., 2012 Ya Ya Ya Tidak Ya Ya Ya

Formula yang

kami ajukan Ya Ya Tidak Ya Ya Ya Tidak

Kami mengidentifikasi metriks menggunakan Goal Question Metric (GQM), yang akan menghasilkan metriks-metriks dalam pengukuran kompleksitas Query. Kemudian, metriks akan direpresentasikan menggunakan model Weighted Tree, diformulasikan dengan metode

Analytic Hierarchy Process (AHP).

Identifikasi Menggunakan GQM

Tabel 2. Hasil Identifikasi Menggunakan GQM

Pencapaian Objek : Formula kompleksitas Query Database

Pertanyaan Jawaban

Apa yang hasil Query Database? Tabel

Pertanyaan Jawaban

Apa yang membentuk sebuah tabel? Baris, kolom

Pertanyaan Jawaban

Apa saja yang terdapat pada baris dan kolom? Logika, statement, kedalaman

Pertanyaan Jawaban

Apa saja logika pada Query Database? AND, OR, XOR

Pertanyaan Jawaban

Apa saja metriks Query Database yang pernah diajukan? Tabel, kolom, statement, logika, kedalaman

(3)

Pertanyaan Jawaban

Apa saja metriks Query Database yang belum diajukan?

Statement yang hanya menggunakan select

Representasi Menggunakan Weighted Tree

Representasi metriks dengan menggunakan weighted tree dapat dilihat pada Gambar 1.

Node pada weighted tree merepresentasikan metriksnya.

Gambar 1. Weighted Tree Formulasi Metrik Menggunakan AHP

Dengan menggunakan metode Analytical Hierarchy Process (AHP), diperoleh bobot untuk setiap metriks yang terdapat dalam Query Database. Bobot untuk setiap metriks pada

Query Database disajikan dalam Tabel 3.

Tabel 3. Bobot setiap metrik menggunakan AHP

Metriks Bobot Tabel 0.40 Kolom 0.06 Logika 0.10 Kedalaman 0.17 Statement 0.27

Untuk penilaian bobot dari Query logika Database, kami menggunakan perhitungan

cognitive complexity [2]. Bobot logika dengan menggunakan cognitive complexity disajikan

dalam Tabel 4.

Tabel 4. Bobot Logika dengan Cognitive Complexity

Logika Bobot Keterangan

AND 4 Setiap AND mengaktifkan links yang keluar secara parallel,

AND-join yang sesuai, menyinkronkan aliran kontrol.

OR 7 Nilai atau bobotnya ditentukan dari percabangan logika

case, yang nantinya diikuti oleh eksekusi secara paralel. Hal

ini juga dapat dikatakan bahwa nilai dari logika OR merupakan gabungan dari nilai logika AND dan logika XOR yang menggunakan ‘ case’

(4)

XOR 2/3 Jika dalam suatu Query menggunakan logika ‘ if’ maka nilai XOR adalah 2. Sedangkan jika Query menggunakan logika ‘ case’ maka nilai XOR adalah 3

Pencarian Metrik Tabel

Pencarian metrik tabel bisa dicari apabila dibawah node from tidak merupakan statement

select. Misal:

Gambar 2. Bagian Weighted Tree (From)

Pada gambar diatas menunjukkan bahwa terdapat sebuah tabel dikarenakan tidak berupa

statement select.

Pencarian Metrik Kolom

Pencarian merik kolom mirip seperti mencari metrik tabel. Apabila dibawah statement

select tidak berupa statement select. Misal:

Gambar 3. Bagian Weighted Tree (Kolom)

Metrik kolom pada tree diatas ada lima dikarenakan tidak adanya statement select yang terdapat dibawah node select diatas.

Pencarian Metrik Logika

Metrik logika bisa dicari apabila setelah kondisi seletah where mempunyai logika, diantara logika tersebut adalah and, or dan xor. Misal:

Gambar 4. Bagian Weighted Tree (Logika)

Metrik logika tersebut ada satu dikarenakan adanya logika berupa and.

(5)

Pencarian metrik kedalaman dicari dengan banyaknya urutan berdasarkan vertikal

statement select yang ada pada tree. Misal:

Gambar 5. Bagian Weighted Tree (Kedalaman)

Metrik kedalaman pada tree diatas adalah dua. Dikarenakan adanya statement select yang ada pada tree diatas berada pada urutan pertama dan kedua berdasarkan urutan vertikal.

Pencarian Metrik Statement

Metrik statement didapat apabila statement tersebut berupa statement select.

HASIL DAN PEMBAHASAN Bagian Formula Metrik Kompleksitas

QC = (0.4*T) + (0.06*K) + (0.1*Log) + (0.17*Dp) + (0.27*S)

Studi Kasus

Query 1

SELECT `nama`, `kelas`, `alamat`, `nama_ayah ` FROM `siswa` WHERE `kelas` NOT IN (SELECT `kelas` FROM `siswa` WHERE `kelas` = 'X') AND `nama` IN (SELECT `nama ` FROM `siswa` WHERE `nama ` = 'Amir');

Query 2

SELECT `id`, `nama`, `kelas` FROM `siswa` ORDER BY `nama`, `kelas`;

Query 3

SELECT `id_siswa`, `nama_ayah`, `nama_ibu`, `alamat` FROM `siswa`ORDER BY `id_siswa`

Pengukuran Matriks Weighted Tree

Weighted tree pada masing-masing Query Database diatas bisa dilihat pada Gambar 6,

(6)

Gambar 6. Weighted Tree Query 1

Gambar 7. Weighted Tree Query 2

Gambar 8. Weighted Tree Query 3 Pencarian Metriks Tabel

Pencarian metrik tabel bisa dicari apabila dibawah node from tidak merupakan statement

select. Untuk pencarian metriks tabel pada Query 1, 2 dan 3 bisa dilihat pada Gambar 9, 10,

& 11.

Gambar 9. Weighted Tree Query 1 (Tabel)

Pada weighted tree diatas ditemukan tiga banyaknya tabel yang diberi tanda bold. Dikarenakan tiga nama tabel pada weighted tree tersebut sama maka tabel tersebut dijadikan hanya satu tabel.

(7)

Gambar 10. Weighted Tree Query 2 (Tabel)

Pada weighted tree diatas ditemukan satu banyaknya tabel yang diberi tanda bold dengan bobot sebesar 1 x 0.4.

Gambar 11. Weighted Tree Query 3 (Tabel)

Pada weighted tree diatas ditemukan satu banyaknya tabel yang diberi tanda bold dengan bobot sebesar 1 x 0.4. Setelah banyaknya tabel ditemukan, hasil dari pencarian metriks tabel bisa dilihat pada Tabel 5.

Tabel 5. Metriks dan Bobot Metriks Tabel (T)

Query 1 Query 2 Query 3

Banyaknya Tabel 1 1 1

Bobot 0.4 0.4 0.4

Pencarian Metriks Kolom

Pencarian merik kolom mirip bisa ditemukan apabila dibawah statement select tidak berupa statement select. Untuk pencarian metriks kolom pada Query 1, 2 dan 3 bisa dilihat pada Gambar 12, 13, & 14.

Gambar 12. Weighted Tree Query 1 (Kolom)

Pada weighted tree diatas ditemukan empat banyaknya kolom yang diberi tanda bold. Nama kolom tidak boleh sama, apabila nama kolom sama maka nama kolom tersebut dijadikan menjadi satu.

(8)

.

Gambar 13. Weighted Tree Query 2 (Kolom)

Pada weighted tree diatas ditemukan tiga banyaknya kolom yang diberi tanda bold dengan bobot 3 x 0.06.

Gambar 14. Weighted Tree Query 3 (Kolom)

Pada weighted tree diatas ditemukan empat banyaknya kolom yang diberi tanda bold dengan bobot 4 x 0.06. Setelah banyaknya tabel ditemukan, hasil dari pencarian metriks tabel bisa dilihat pada Tabel 6.

Tabel 6. Metriks dan Bobot Metriks Kolom (K)

Query 1 Query 2 Query 3

Banyaknya Kolom 4 3 4

Bobot 0.24 0.18 0.24

Pencarian Metriks Logika

Metriks logika bisa dicari apabila setelah kondisi seletah where mempunyai logika, diantara logika tersebut adalah and, or dan xor. Pencarian metriks logika pada Query 1, 2, & 3 bisa dilihat pada Gambar 15, 16 & 17.

Gambar 15. Weighted Tree Query 1 (Logika)

Pada Gambar 15 dinyatakan bahwa Query 1 hanya mempunyai satu logika yang berada dibawah where. Bobot logika yang dipunyai oleh Query 1 bernilai 1 x 4 dikarenakan bobot logika and bernilai 4.

(9)

Gambar 16. Weighted Tree Query 2 (Logika)

Metriks logika pada Query 2 tidak ada dikarenakan tidak adanya salah satu logika and, or & xor, maka bobot metriks logika yang dipunyai oleh Query 2 berjumlah 0.

Gambar 17. Weighted Tree Query 3 (Logika)

Setelah melihat weighted tree pada Gambar 17 dinaytakan bahawa Query 3 tidak mempunyai metriks logika diakrenakan tidak adanya logika yang terdapat dibawah where, maka bobot metriks logika pada Query 3 bernilai 0. Banyaknya logika dan bobot pada masing-masing Query 1, 2 & 3 bisa dilihat pada Tabel 7.

Tabel 7. Metriks dan Bobot Metriks Logika (L)

Query 1 Query 2 Query 3

Banyaknya Logika 1 0 0

Bobot 4 0 0

Pencarian Metriks Kedalaman

Pencarian metrik kedalaman dicari dengan banyaknya urutan berdasarkan vertikal

statement select yang ada pada tree. Pencarian metriks kedalaman pada Query 1, 2 & 3

diperoleh pada Gambar 18, 19 & 20.

Gambar 18. Weighted Tree Query 1 (Kedalaman)

Query 1 mempunyai dua kedalaman (depth), dikarenakan ada dua urutan vertikal pada statement select. Bobot yang dipunyai Query 1 bernilai 2 x 0.17.

(10)

Gambar 19. Weighted Tree Query 2 (Kedalaman)

Metriks kedalaman yang dipunyai Query 2 berjumlah satu karena pada weighted tree diatas hanya mempunyai satu urutan vertikal pada statement select. Bobot kedalaman yang dipunyai Query 2 berjumlah 1 x 0.17.

Gambar 20. Weighted Tree Query 3 (Kedalaman)

Pada weighted tree diatas dinyatakan bahwa Query 3 hanya mempunyai satu metriks kedalaman karena pada weighted tree diatas hanya mempunyai satu urutan vertikal pada statement select. Bobot kedalaman yang dipunyai Query 3 berjumlah 1 x 0.17. Setelah banyaknya metriks dan bobot pada metriks kedalaman, maka disimpulkan pada Tabel 8.

Tabel 8. Metriks dan Bobot Metriks Kedalaman (Dp)

Query 1 Query 2 Query 3

Banyaknya Logika 2 1 1

Bobot 0.34 0.17 0.17

Pencarian Metriks Statement

Metrik statement didapat apabila statement tersebut berupa statement select. Bisa dilihat pada setiap Query 1, 2 & 3.

Query 1

SELECT `nama`, `kelas`, `alamat`, `nama_ayah ` FROM `siswa` WHERE `kelas` NOT IN (SELECT `kelas` FROM `siswa` WHERE `kelas` = 'X') AND `nama` IN (SELECT `nama ` FROM `siswa` WHERE `nama ` = 'Amir');

Statement yang dipunyai pada Query 1 adalah tiga dikarenakan adanya tiga statement select pada Query tersebut, maka bobot metriks statement pada Query 1 berjumlah 3 x 0.27.

Query 2

SELECT `id`, `nama`, `kelas` FROM `siswa` ORDER BY `nama`, `kelas`;

Pada Query 2 dinyatakan bahwa Query 2 hanya memiliki satu metriks statement, maka bobot metriks statement yang dimiliki adalah 1 x 0.27.

(11)

Query 3

SELECT `id_siswa`, `nama_ayah`, `nama_ibu`, `alamat` FROM `siswa`ORDER BY `id_siswa`

Pada Query 3 dinyatakan bahwa Query 3 memiliki satu metriks statement, maka bobot metriks statement yang dimiliki adalah 1 x 0.27. Setelah jumlah metriks dan bobot statement diperoleh, jumlah metriks dan bobot metriks statement bisa dilihat pada Tabel 9.

Tabel 9. Metriks dan Bobot Metriks Statement (S)

Query 1 Query 2 Query 3

Banyaknya Logika 3 1 1

Bobot 0.91 0.27 0.27

Hasil Pengukuran

Setelah hasil pengukuran metriks dan bobot yang dimiliki setia Query, maka jumlah metriks yang dimiliki setiap Query tersebut disajikan pada Tabel 10.

Tabel 10. Banyaknya Metriks.

Query 1 Query 2 Query 3

Tabel 1 1 1

Kolom 4 3 4

Logika 1 0 0

Statement 3 1 1

Kedalaman 2 1 1

Adapun jumlah bobot metriks yang dimiliki setiap Query disajikan pada Tabel 11.

Tabel 11. Jumlah Bobot Metriks.

Query 1 Query 2 Query 3

Tabel 0.4 0.4 0.4

Kolom 0.24 0.18 0.24

Logika 0.4 0 0

Statement 0.91 0.27 0.27

Kedalaman 0.34 0.17 0.17

Jumlah kompleksitas yang berdasarkan formula yang kami ajukan disajikan pada Tabel 12.

Tabel 12. Jumlah Kompleksitas Query.

Query 1 Query 2 Query 3

Tabel 0.16 0.16 0.16

Kolom 0.0144 0.0108 0.0144

Logika 0.04 0 0

Statement 0.1547 0.0459 0.0459

Kedalaman 0.0918 0.0459 0.0459

Hasil perbandingan pengukuran dengan menggunakan tiga formula kompleksitas disajikan dalam Tabel 13.

(12)

Tabel 13. Hasil Pengukuran Formula Komplelsitas.

Query 1 Query 2 Query 3 Metode

Vashistha dkk., 2016 -0.0010 -0.0009 -0.0010 Regresi

Formula yang kami

ajukan 0.4609 0.2626 0.2662

AHP

KESIMPULAN

Paper ini telah mengindentifikasi bahwa metriks yang dijadikan untuk sebuah Query

Database adalah: jumlah tabel, kolom, logika, kedalaman dan statement Query. Formula

kompleksitas yang disajikan pada paper ini dapat direpresentasikan menggunakan model weighted tree. Bentuk formula kompleksitas dapat dilihat pada persamaan QC = (0.4*T) + (0.06*K) + (0.1*Log) + (0.17*Dp) + (0.27*S). Setelah dilakukan pengujian dengan membandingan hasil pengukuran yang diperoleh menggunakan formula kompleksitas dari peneliti lain, ditemukan bahwa formula kompleksitas yang kami ajukan lebih komprehensif dan lebih sensitif terhadap perubahan kecil.

REFERENSI

[1] M. A. Yaqin, R. Sarno, and A. C. Fauzan, “Scalability measurement of business process model using business processes similarity and complexity,” Int. Conf. Electr. Eng. Comput. Sci. Informatics, vol. 4, no. September, pp. 306–312, 2017, doi: 10.11591/eecsi.4.1033.

[2] G. Volker, and R. Laue. "Adopting the cognitive complexity measure for business process models." 2006 5th IEEE international conference on cognitive informatics. Vol. 1. IEEE, 2006. [3] P. Mario, C. Calero, and M. Genero. "Table oriented metrics for relational Databases." Software

Quality Journal 9.2 (2001): 79-97.

[4] V. Aditya, and S. Jain. "Measuring Query complexity in SQLShare workload." Proceedings of the

2019 international conference on management of data. 2016.

[5] A. Yunus, A. C. Fauzan, A. N. Faizin, and K. Sabbihatul, “Analisis Control Flow Complexity Untuk Komparasi Kompleksitas Proses Bisnis Penerimaan Mahasiswa Baru Universitas Nahdlatul Ulama Blitar Berbasis Petri Net Modelling Language,” Ilk. J. Comput. Sci. Appl. Informatics, vol. 1, no. 2, pp. 39–46, 2019.

Gambar

Tabel  Pertanyaan
Tabel 3. Bobot setiap metrik menggunakan AHP
Gambar 2. Bagian Weighted Tree (From)
Gambar 5. Bagian Weighted Tree (Kedalaman)
+7

Referensi

Dokumen terkait

Pastikan objek line tetap aktif, pilih panel Modify lalu pada rollout Modifier List pilih Lathe.. Ubah viewport menjadi Prespective, lalu atur parameter Lathe seperti pada

Analisis hidrologi distribusi normal banyak digunakan untuk menganalisis frekuensi curah hujan, analisis statistik dari distribusi curah hujan tahunan, debit

To communicate we must express propositions with a particular illocutionary force, and in doing so we perform particular kinds of action such as stating, promising, warning, and

Klasifikasi Permainan Interaktif Elektronik adalah sudah sejalan dengan tujuan dari upaya perwujudan nyata dari peran pemerintah untuk melindungi hak anak – anak

Berdasarkan uraian tersebut, maka judul dalam penelitian ini adalah mengetahui pengaruh pelayanan, harga dan lokasi terhadap kepuasan konsumen rental mobil Indo

Lewat fenomenologi, Husserl mau mengembalikan kemampuan rasional manusia dalam bentuk kesadaran yang hadir dan mengarahkan diri kepada objek, sedemikian hingga

[Gambaran hitung leukosit pre operatif pada tiap-tiap tingkat keparahan apendisitis akut anak berdasarkan klasifikasi Cloud di RSUD Arifin Achmad Priovinsi Riau periode

Dalam bingkai pers pembangunan yang memberikan kebebasan semu terhadap jurnalis, maka sesungguhnya semua informasi yang didifusikan oleh media, telah melalui