• Tidak ada hasil yang ditemukan

Evaluasi Spesifikasi Kebutuhan Perangkat Lunak Berdasarkan Software Quality Model

N/A
N/A
Protected

Academic year: 2021

Membagikan "Evaluasi Spesifikasi Kebutuhan Perangkat Lunak Berdasarkan Software Quality Model"

Copied!
8
0
0

Teks penuh

(1)

Evaluasi Spesifikasi Kebutuhan Perangkat Lunak Berdasarkan Software Quality Model

Cahya Bagus Sanjaya

Abstraksi

Spesifikasi Kebutuhan Perangkat Lunak (SKPL) adalah proses memformailisasikan sekumpulan kebutuhan dari perangkat lunak sehingga SKPL yang baik merupakan faktor yang sangat penting untuk menunjang pembuatan perangkat lunak dengan fungsionalitas tinggi. Oleh karena itu pengukuran dan evaluasi SKPL sangat dibutuhkan agar perangkat lunak sesuai dengan kebutuhan.

Dalam paper ini penulis menggunakan attribute-attribute yang ada pada Software quality Model untuk dijadikan dasar pengklasifikasian SKPL dengan menggunakan metode naïve bayes dan TF-IDF untuk pembobotan.

Hasil dari penelitian ini adalah poin-poin yang telah terpenuhi ataupun belum terpenuhi dalam dokumen SKPL. Sehingga memudahkan seorang Requirement Engineering untuk melakukan perubahan pada SKPL yang telah dibuat.

Kata kunci: SKPL, Software Quality Model, naïve Bayes, TF-IDF.

1. Latar Belakang.

Spesifikasi Kebutuhan Perangkat Lunak (SKPL) merupakan salah satu aktivitas yang dilakukan ketika merekayasa kebutuhan.

Spesifikasi kebutuhan merupakan suatu proses memformalisasikan sekumpulan kebutuhan, baik fungsional maupun non- fungsional, dari suatu system yang hendak dibangun ke dalam suatu dokumen [1]. Suatu SKPL yang baik merupakan faktor yang sangat penting untuk menunjang proses pembuatan perangkat lunak dengan fungsionalitas yang tinggi dengan pemeliharaan yang rendah. Untuk itu penting adanya evaluasi SKPL agar perangkat lunak yang dibangun sesuai dengan kebutuhan.

Tujuan dari pembuat perangkat lunak adalah untuk menciptakan perangkat lunak yang berkualitas. Tujuan tersebut dapat dicapai dengan melakukan penilaian terhadap kualitas perangkat lunak. Penilaian kualitas perangkat lunak melibatkan banyak komponen. Komponen-komponen yang dilibatkan dalam penilaian sangat bergantung pada model yang digunakan dalam

melakukan penilaian. Software Quality Model merupakan model yang digunakan untuk menentukan komponen yang terlibat dalam penilaian [3].

Penelitian sebelumnya telah mencoba untuk melakukan evaluasi SKPL dengan mendeteksi dan menunjukkan potensi kekurangan sintaksis dan semantik yang dapat menyebabkan masalah ketika dokumen persyaratan bahasa alami berubah dalam dokumen yang lebih formal [5]. Berdasarkan penelitian tersebut pada paper ini penulis mengajukan metode untuk melakukan evaluasi SKPL berdasarkan Software Quality Model sehingga seorang requirement engineering dapat mengetahui sejauh mana poin-poin dalam SKPL terpenuhi atau tidak berdasarkan Software Quality Model yang dipilih untuk membangun perangkat lunak.

Berdasarkan tujuan dari penyusunan paper ini maka hipotesa awal dari penulis adalah “evaluasi Spesifikasi Kebutuhan Perangkat Lunak (SKPL) dapat dilakukan berdasarkan Software Quality Model dengan menggunakan metode naïve bayes classifier”.

(2)

Dalam paper ini penulis membagi menjadi beberapa bagian. Bagian 2 menjelaskan tentang penelitian sebelumnya untuk mendukung penelitian ini. Bagian 3 berisi Metode yang diajukan untuk melakukan evaluasi SKPL berdasarkan Software Quality Model. Bagian 4 adalah experiment yang dilakukan dengan menggunakan metode yang telah diajukan.

Dan bagian terahir berisi kesimpulan dari seluruh penelitian yang telah dilakukan.

2. Penelitian Sebelumnya.

Penelitian sebelumnya Roxana Saavedra, Luciana Ballejos dan Mariel Ale [2] melakukan penelitian untuk mengevaluasi Quality attribute dari SKPL. Penelitian ini mengumpulkan beberapa quality attribute dari beberapa autor yang kemudian dikelompokkan dan dipisah-pisah berdasarkan induk attribute beserta turunannya. Dari penelitian ini disimpulkan bahwa dari beberapa author juga mengajukan untuk mengevaluasi Quality attribute tapi hanya konseptual dan sulit untuk melakukan otomatisasi karena masih membutuhkan cukup banyak campur tangan manusia.

Wayan Gede Suka Parwita dan Luh Arida Ayu Rahning Putri [3] dalam papernya menjabarkan berbagai jenis software quality model yang ada beserta komponen-komponen yang digunakan dalam melakukan penilaian dari masing-masing model. Dari penelitian ini didapatkan hasil bahwa masing-masing model mempunyai kelebihan dan kekurangan masing-masing.

Dr. Deepshikha Jamwal [4] dalam penelitiannya juga melakukan perbandingan antara beberapa software quality model yang cocok untuk organisasi adapun model-model yang digunakan dalam penelitiannya adalah:

McCall’s Quality Model, Boehm’s Quality Model, Dromey's Quality Model, FURPS Quality Model Dan ISO 9126 Quality Model.

Dan dari penelitian ini didapatkan hasil bahwa: FURPS Quality Model dibangun dan digunakan oleh IBM jadi tujuan utama pembuatan model ini adalah untuk kepentingan perusahaan itu sendiri. ISO 9126

Quality Model adalah model yang paling banyak digunakan.

F. Fabbrini, M. Fusani, S. Gnesi, G.

Lami [5] dalam penelitiannya membuat sebuah tools untuk mengevaluasi kulitas SKPL dari bahasa alamiah (Natural Language). Kualitas Model yang diusulkan telah didefinisikan dengan tujuan untuk mendeteksi dan menunjukkan potensi kekurangan sintaksis dan semantik yang dapat menyebabkan masalah ketika dokumen persyaratan bahasa alami berubah dalam dokumen yang lebih formal. Penelitian ini didasarkan pada model kualitas yang mengukur kemampuan untuk dapat diuji (testability), kelengkapan (completeness), kemampuan utuk dapat dimengerti (understandability) dan konsistensi (consistency) dari SKPL yang ditulis dalam bahasa alamiah. Repository yang digunakan dalam penelitian ini masih bersifat statis, hanya bergantung pada pengetahuan baru yang dimasukkan oleh para ahli [1].

3. Metodologi

Metode yang diajukan dalam paper ini utuk menilai SKPL secara garis besar menggunakan metode TFIDF untuk pembobotan dan naïve bayes untuk mengklasifikasikan SKPL berdasarkan Software Quality Model yang telah dipilih.

Metode yang digunakan seperti terlihat pada gambar 1.

Gambar 1. Metode klasifikasi SKPL Dalam metode ini ada 7 bagian untuk mengevaluasi SKPL berdasarkan Software Quality Model, penjelasan untuk masing-masing tahap adalah sebagai berikut.

(3)

3.1. DATASET

Dataset terdiri dari dua bagian, yang pertama adalah dataset untuk training dan dataset untuk uji penelitian. dataset yang dimaksud adalah dokumen spesifikasi kebutuahan perangkat lunak dalam bentuk neural language data ini juga bisa diturunkan dari use case description.

Dataset yang digunakan untuk training merupakan dataset yang sudah memiliki label spesifikasi sesuai dengan kalsifikasi Software Quality Model. Pelabelan dapat dilakukan oleh seorang expert/ahli dalam hal ini adalah seorang software architect.

3.2. Tagging

tagging merupakan proses pelabelan tiap kata dalam kalimat. pada tahap ini dilakukan penyaringan elemen kalimat yang tidak diperlukan seperti halnya kata sambung dan lainnya. Hasil dari proses tagging merupakan list kata efektif dari kalimat.

3.3. Steamming

Proses stemming merupakan proses untuk mendapatkan akar kata asli dari kata yang berimbuhan. Dalam tahap ini kata-kata yang berasal dari proses tagging akan dicari akar katanya. Hasil dari proses steaming merupakan list akar kata yang efektif.

3.4. Keyword Extraction

Keyword Extraction merupakan proses penghitungan frekuensi kemunculan kata dalam setiap kelas klaster. Dalam tahap ini kata yang didapat pada proses steaming akan dihitung frekuensi kemunculannya berdasarkan kelas yang ada pada Software Quality Model. Hasil dari proses ini adalah daftar kata beserta frekuensi kemunculannya dalam setiap kelas kluster.

3.5. Weighting TF-IDF

Proses TF-IDF adalah proses pemberian bobot pada setiap kata yang diperoleh dari proses Keyword Extraction berdasarkan rumus TF-IDF. Proses ini berfungsi agar setiap kata pada proses

klasifikasi yang menggunakan metode naïve bayes mempunyai bobot sehingga memperbesar akurasi untuk proses klasifikasi.

Adapun rumus dari pembobotan ini adalah:

j ij

ij df

tf N w .log2

3.6. Classification

Proses klasifikasi dalam paper ini menggunakan metode naïve bayes. Teorema Bayes adalah teorema yang digunakan dalam statistika untuk menghitung peluang untuk suatu hipotesis, Bayes Optimal Classifier menghitung peluang dari suatu kelas dari masing-masing kelompok atribut yang ada, dan menentukan kelas mana yang paling optimal [6]. Pengklasifikasian adalah sebuah fungsi yang menugaskan data tertentu kedalam sebuah kelas. Dari sudut pandang peluang, berdasarkan aturan bayes rumus untuk klasifikasi adalah sebagai berikut.

Untuk menentukan pilihan kelas, digunakan peluang maksimal dari seluruh data dengan fungsi yang terdapat pada rumus berikut:

Pada tahap ini daftar kata yang diperoleh dari proses pembobotan akan dimasukkan ke dalam kelas - kelas sesuai dengan ketentuan Software Quality Model.

Hasil dari proses klasifikasi ini merupakan nilai tiap point pada requirement yang telah diproses dan selanjutnya hasil tersebut akan dihitung dan digunakan pada proses FeedBack.

3.7. FeedBack

Hasil akhir yang didapatkan adalah feedback kepada pengguna (dalam hal ini adalah seorang requirement enginer) berupa

(4)

poin-poin yang belum terpenuhi dalam dokumen spesifikasi perangkat lunak.

4. Diskusi dan Pembahasan

Untuk melakukkan pengujian pertama setiap atribut pada masing-masing Software Quality Model dikumpulkan kemudian dibandingkan sesuai dengan komponen-komponen penilaian dari masing- masing model[12]. Table perbandingan yang akan dipakai dalam proses ini adalah sebagai berikut:

Kompo nen

Mc Ca ll

Bo eh m

FU RP S / FU RP S+

Dr om ey

B B N

Ka zm an

S ta r

I S O

Correct

ness V V

Efficien

cy V V V V V V V V Flexibil

ity V V V

Functio

nality V V V V V V Integrit

y V

Interpro

bability V V V V

Maintai

nability V V V V V V V Portabil

ity V V V V V V Reliabil

ity V V V V V V V V Reusabi

lity V V V

Testabil

ity V V V V

Underst andabili

ty V V

Table 1. perbandingan Software Quality Model

Adapun tahapan-tahapan dalam pengujian ini sesuai dengan metodologi yang diajukan, berikut adalah contoh penerapannya:

1. Dataset

Dataset dibagi menjadi dua bagian, bagian pertama berisi data training yang telah mempunyai label spesifikasi sesuai dengan atribut pada Software Quality Model.

Kompon en

daftar kata Correct

ness

lengkap, akurat, konsisten, tetap,

Efficienc y

tersedia, murah, cepat, kecil, Flexibilit

y

ubah, waktu, tes, Functio

nality

desktop, web,

Integrity aman, kunci, akses, legal, Interpro

bability

hubung, interaksi, sistem, Maintai

nability

ubah, koreksi, baik, adaptasi, salah, pelihara, kinerja, Portabili

ty

pindah, software, hardware, Reliabili

ty

kinerja, andal, salah, akurat, benar, waktu,

Reusabil ity

guna, modul, Testabili

ty

tes, valid, uji, harap, gagal, hasil, tes,

Underst andabili ty

paham, cocok, kondisi, konsep,

Table 2. Data Training

Dataset yang kedua merupakan data uji yang berisi requirement perangkat lunak yang berbentuk Neural Language.

(5)

No Requirements

1 diubah dan diperbaiki dengan mudah 2 diakses dari web maupun desktop 3 sistem berjalan dengan akurat sesuai

dengan kebutuhan

4 keamanan data terjamin dengan adanya kunci pengaman

5 pemeliharaan secara teratur dua minggu sekali

6 user dapat menggunakan dan memahami system dengan mudah 7 system berjalan stabil dengan adanya

modul yang dapat digunakan secara bersamaan

8 mengantisipasi akses ilegal oleh user yang tidak mempunyai akses

9 tidak memerlukan kebutuhan hardware yang begitu tinggi 10 tidak mentoleransi kesalahan

Table 3. Data Uji 2. Tagging

Dari dataset uji kemudian dilakukan proses tagging.

No Requirement

1 diubah diperbaiki mudah 2 diakses web desktop

3 sistem berjalan akurat kebutuhan 4 keamanan terjamin kunci pengaman 5 pemeliharaan teratur

6 menggunakan memahami mudah 7 stabil modul digunakan bersamaan 8 akses ilegal

9

memerlukan kebutuhan hardware tinggi

10 mentoleransi kesalahan Tabel 4 Hasil Proses Tagging 3. Stemming

Proses stemming diambil dari data uji yang telah melalui proses tagging.

No Requirement 1 ubah,baik,mudah, 2 akses,web,desktop, 3 sistem,jalan,akurat,butuh, 4 aman,terjamin,kunci,

5 pelihara,teratur, 6 guna,paham,mudah, 7 akses,legal,

8 perlu,butuh,hardware,tinggi, 9 stabil,modul,guna,bersama, 10 toleransi,salah,

Tabel 5 Hasil Proses Stemming 4. Keyword Extraction

Dari Dataset training dilakukan proses Keyword Extraction. Berikut adalah beberapa bagian setelah melalui proses Keyword extraction.

TFI DF

Cor rec tne

ss In te gr i ty

Int erp ro bab ility

Mai ntai n abil

ity P o rt

a bi lit y

R el i a bi lit y

Un der sta nd abil ity ada

pta si

0 0 0 1 0 0 0

Aks es

0 1 0 0 0 0 0

aku rat

1 0 0 0 0 1 0

Am an

0 1 0 0 0 0 0

An dal

0 0 0 0 0 1 0

Bai k

0 0 0 1 0 0 0

ben ar

0 0 0 0 0 1 0

Cep at

0 0 0 0 0 0 0

Coc ok

0 0 0 0 0 0 1

Tabel 6 Hasil Proses Keyword Extraction 5. TF-IDF

Dari proses keyword extraction dihitung bobot pada masing-masing kata dengan TF-IDF. Berikut adalah beberapa bagian hasil dari proses pembobotan dengan menggunakan TF-IDF.

(6)

TFIDF Correc tness

Integri ty

Interpro bability

Maintain ability

Port ability

Reli ability

Understand ability

adaptasi 0 0 0 1.1139 0 0 0

Akses 0 1.1139 0 0 0 0 0

akurat 0.8129 0 0 0 0 0.8129 0

Aman 0 1.1139 0 0 0 0 0

Andal 0 0 0 0 0 1.1139 0

Baik 0 0 0 1.1139 0 0 0

benar 0 0 0 0 0 1.1139 0

Cepat 0 0 0 0 0 0 0

Cocok 0 0 0 0 0 0 1.1139

Tabel 7. Hasil Proses Pembobotan dengan TF-IDF 6. Classification

Klasifikasi dilakukan untuk data uji untuk menentukan kelas berdasarkan software quality model. Berikut beberapa bagian dari hasil klasifikasi.

Kata Flexi bility

Function ality

Integri ty

Interprob ability

Maintain ability

Reli ability

Reus ability

Underst andability

ubah 0.4064 0 0 0 0.4064 0 0 0

baik 0 0 0 0 1.1139 0 0 0

mudah 0 0 0 0 0 0 0 0

akses 0 0 1.1139 0 0 0 0 0

web 0 1.1139 0 0 0 0 0 0

desktop 0 1.1139 0 0 0 0 0 0

sistem 0 0 0 1.1139 0 0 0 0

jalan 0 0 0 0 0 0 0 0

akurat 0 0 0 0 0 0.4064 0 0

butuh 0 0 0 0 0 0 0 0

aman 0 0 1.1139 0 0 0 0 0

terjamin 0 0 0 0 0 0 0 0

kunci 0 0 1.1139 0 0 0 0 0

pelihara 0 0 0 0 1.1139 0 0 0

teratur 0 0 0 0 0 0 0 0

guna 0 0 0 0 0 0 1.1139 0

paham 0 0 0 0 0 0 0 1.1139

Tabel 8. Hasil Proses Klasifikasi dengan naïve bayes 7. FeedBack

Komponen Nilai

Correctness 0.4065

Efficiency 0

Flexibility 0.4065

Functionality 2.2279

Integrity 5.5697

Interprobability 1.1139 Maintainability 3.0408

Portability 1.1139

Reliability 0.8129

Reusability 3.3418

Testability 0

Understandability 1.1139

(7)

Tabel 9. FeedBack

Dari FeedBack tersebut dapat dilihat bahwa efficiency dan testability belum terpenuhi, sedangkan dalam berbagai macam Software Quality Model yang ada, efficiency harus terpenuhi. Maka seorang Requirement Engineering harus mengevaluasi SKPL agar memenuhi kebutuhan akan efisiensi perangkat lunak yang sedang dibangun. Dan jika menggunakan model McCall, Boehm, Kazman atau Star maka komponen testability juga harus terpenuhi.

5. Kesimpulan

Evaluasi Spesifikasi Perangkat Lunak (SKPL) dapat dilakukan dengan menggunkan metode naïve bayes dengan cara mengklasifikasikan software requirement berdasarkan atribut-atribut yang ada dalam Software Quality Model. Penelitian ini masih membutuh seorang expert untuk membuat data training sehingga hasil yang didapat tergantung pada seberapa baik data training yang ada. oleh karena itu, kedepannya akan dilakukan penelitian ulang agar data training dapat dioptimasi agar mendapatkan hasil yang lebih baik.

Refrensi

[1]. Siahaan, Daniel. Analisa Kebutuhan Dalam Rekayasa Perangkat Lunak.

Penerbit Andi. Yogyakarta. 2012.

[2]. Saavedra R, B Luciana, A Mariel. Quality Properties Evaluation for Software

Requirements Specifications: An Exploratory Analysis.

[3]. Parwita, Wayan G.S., Putri, Luh A.A.R.

Komponen Penilaian Kualitas Perangkat Lunak Berdasarkan Software Quality Models. Seminar Nasional Teknologi Informasi & Komunikasi Terapan. 2012.

[4]. Jamwal, Deepshikha. Analysis of Software Quality Models for Organizations.

International Journal of Latest Trends in Computing. 2010.

[5]. F. Fabbrini, M. Fusani, S. Gnesi, G. Lami.

An Automatic Quality Evaluation for

Natural Language Requirements.

IEEE/ACM International Conference on Automated Software Engineering.

L’Aqualia, Italia. 2008.

[6]. Ammar M. Keoptimalan Naïve Bayes Dalam Klasifikasi. Program Ilmu Komputer FPMIPA Universitas Pendidikan Indonesia.

[7]. Pisceldo, Femphy. Adriani, Mirna.

Manurung, Ruli. Probabilistic Part Of Speech Tagging for Bahasa Indonesia.

2009.

(8)

Referensi

Dokumen terkait

TAI{GGUNG JAWAB

Menurut Mubyarto dan Soeratno (1976) data primer merupakan data yang bersumber langsung dari objek penelitian dan langsung diambil dari lapangan oleh peneliti dan

Untuk itu, Pokja ULP Balai Besar Meteorologi dan Geofisika Wilayah II Ciputat akan segera.. melakukan Pelelangan Ulang, dan menayangkan pengumuman

Apabila kemudian saya terbukti telah melakukan tindakan menyalin atau meniru tulisan orang lain, saya bersedia menerima sangsi sesuai peraturan yang berlaku di Fakultas Bahasa

Mesej-mesej yang membawa kesedaran Islam kepada pengguna interaksi WhatsApp adalah mesej dakwah yang sampai kepada golongan sasaran dan dapat menyentuh hati mereka.. Ini kerana,

Dari teori emanasi ini, timbul pengertian alam qadim yang dikritik al- Gazali dengan mengatakan bahwa penciptaan alam yang tidak bermula itu tidak dapat diterima

Hakim yang menangani gugatan yang dilakukan atau memungkinkan dilakukan untuk mengingkari keabsahan anak, berwenang sampai pada waktu yang akan ditentukan oleh Presiden,

Puji syukur kehadirat Allah SWT yang telah melimpahkan nikmat, rahmat, dan hidayah-Nya, sholawat serta salam tetap tercurahkan kepada Rasulullah SAW sehingga penulis dapat