Anda di halaman 1dari 4

1

KRITERIA PENJAMINAN KUALITAS PERANGKAT LUNAK


Richardus Eko Indrajit


Dalam salah satu referensi disebutkan bahwa yang dimaksud dengan software quality adalah pemenuhan
terhadap kebutuhan fungsional dan kinerja yang didokumentasikan secara eksplisit, pengembangan standar
yang didokumentasikan secara eksplisit, dan sifat-sifat implisit yang diharapkan dari sebuah software yang
dibangun secara profesional (Dunn, 1990). Berdasarkan definisi di atas terlihat bahwa sebuah software
dikatakan berkualitas apabila memenuhi tiga ketentuan pokok:

Memenuhi kebutuhan pemakai yang berarti bahwa jika software tidak dapat memenuhi
kebutuhan pengguna software tersebut, maka yang bersangkutan dikatakan tidak atau kurang
memiliki kualitas;
Memenuhi standar pengembangan software yang berarti bahwa jika cara pengembangan
software tidak mengikuti metodologi standar, maka hampir dapat dipastikan bahwa kualitas yang
baik akan sulit atau tidak tercapai; dan
Memenuhi sejumlah kriteria implisit yang berarti bahwa jika salah satu kriteria implisit tersebut
tidak dapat dipenuhi, maka software yang bersangkutan tidak dapat dikatakan memiliki kualitas
yang baik.

McCall dan kawan-kawan pada tahun 1977 telah mengusulkan suatu penggolongan faktor-faktor atau
kriteria yang mempengaruhi kualitas software. Pada dasarnya, McCall menitikberatkan faktor-faktor
tersebut menjadi tiga aspek penting, yaitu yang berhubungan dengan:

1) Sifat-sifat operasional dari software (Product Operations);
2) Kemampuan software dalam menjalani perubahan (Product Revision); dan
3) Daya adaptasi atau penyesuaian software terhadap lingkungan baru (Product Transition).

Product Operations
Sifat-sifat operasional suatu software berkaitan dengan hal-hal yang harus diperhatikan oleh para perancang
dan pengembang yang secara teknis melakukan penciptaan sebuah aplikasi. Hal-hal yang diukur di sini
adalah yang berhubungan dengan teknis analisa, perancangan, dan konstruksi sebuah software. Faktor-
faktor McCall yang berkaitan dengan sifat-sifat operasional software adalah:

1) Correctness sejauh mana suatu software memenuhi spesifikasi dan mission objective dari
users;
2) Reliability sejauh mana suatu software dapat diharapkan untuk melaksanakan fungsinya
dengan ketelitian yang diperlukan;
3) Efficiency banyaknya sumber daya komputasi dan kode program yang dibutuhkan suatu
software untuk melakukan fungsinya;
4) Integrity sejauh mana akses ke software dan data oleh pihak yang tidak berhak dapat
dikendalikan; dan
5) Usability usaha yang diperlukan untuk mempelajari, mengoperasikan, menyiapkan input, dan
mengartikan output dari software.

Product Revision
Setelah sebuah software berhasil dikembangkan dan diimplementasikan, akan terdapat berbagai hal yang
perlu diperbaiki berdasarkan hasil uji coba maupun evaluasi. Sebuah software yang dirancang dan
dikembangkan dengan baik, akan dengan mudah dapat direvisi jika diperlukan. Seberapa jauh software
tersebut dapat diperbaiki merupakan faktor lain yang harus diperhatikan. Faktor-faktor McCall yang
berkaitan dengan kemampuan software untuk menjalani perubahan adalah:

1) Maintainability usaha yang diperlukan untuk menemukan dan memperbaiki kesalahan (error)
dalam software;
2
2) Flexibility u saha yang diperlukan untuk melakukan modifikasi terhadap software yang
operasional
3) Testability usaha yang diperlukan untuk menguji suatu software untuk memastikan apakah
melakukan fungsi yang dikehendaki atau tidak


Product
Revision
Product
Transition
Product
Operations
Maintainability (Can I fix it?)
Flexibility (Can I change it?)
Testability (Can I test it?)
Portability (Will I be able to use it on another machine?)
Reusability (Will I be able to reuse some of the software?)
Interoperability (Will I be able to interface it with another system?)
Correctenss (Does it what I want?)
Reliability (Does it do it accurately all of the time?)
Efficiency (Will it run on my hardware as well as it can?)
Integrity (Is it secure?)
Usability (Is it designed for the user?)
Product
Revision
Product
Transition
Product
Operations
Product
Revision
Product
Transition
Product
Operations
Maintainability (Can I fix it?)
Flexibility (Can I change it?)
Testability (Can I test it?)
Portability (Will I be able to use it on another machine?)
Reusability (Will I be able to reuse some of the software?)
Interoperability (Will I be able to interface it with another system?)
Correctenss (Does it what I want?)
Reliability (Does it do it accurately all of the time?)
Efficiency (Will it run on my hardware as well as it can?)
Integrity (Is it secure?)
Usability (Is it designed for the user?)


Sumber: Pressman, 1994


Product Transition
Setelah integritas software secara teknis telah diukur dengan menggunakan faktor product operational dan
secara implementasi telah disesuaikan dengan faktor product revision, faktor terakhir yang harus
diperhatikan adalah faktor transisi yaitu bagaimana software tersebut dapat dijalankan pada beberapa
platform atau kerangka sistem yang beragam. Faktor-faktor McCall yang berkaitan dengan tingkat
adaptibilitas software terhadap lingkungan baru:

1) Portability usaha yang diperlukan untuk mentransfer software dari suatu hardware dan/atau
sistem software tertentu agar dapat berfungsi pada hardware dan/atau sistem software lainnya
2) Reusability sejauh mana suatu software (atau bagian software) dapat dipergunakan ulang
pada aplikasi lainnya
3) Interoperability usaha yang diperlukan untuk menghubungkan satu software dengan lainnya

Teknik Pengukuran
Menimbang tingkat kesulitan yang dihadapi para programmer dalam mengukur secara langsung dan
kuantitatif kualitas software yang dikembangkan berdasarkan pembagian yang diajukan McCall di atas,
sebuah formula diajukan untuk mengukur faktor-faktor software quality secara tidak langsung menurut
hubungan:


F
q
= c
1
* m
1
+ c
2
* m
2
+ c
3
* m
3
+ . . . +

c
n
* m
n



dimana :
F
q
= Faktor software quality
c
1
= Bobot yang bergantung pada produk dan kepentingan
m
1
= Metric yang mempengaruhi faktor software quality
3
Adapun metric yang dipakai dalam skema pengukuran di atas adalah sebagai berikut:

o Auditability kemudahan untuk memeriksa apakah software memenuhi standard
atau tidak;
o Accuracy ketelitian dari komputasi dan kontrol;
o Communication Commonality sejauh mana interface, protokol, dan bandwidth
digunakan;
o Completeness sejauh mana implementasi penuh dari fungsi-fungsi yang diperlukan
telah tercapai;
o Conciseness keringkasan program dalam ukuran LOC (line of commands);
o Consistency derajat penggunaan teknik-teknik desain dan dokumentasi yang
seragam pada seluruh proyek pengembangan software;
o Data Commonality derajat penggunaan tipe dan struktur data baku pada seluruh
program;
o Error Tolerance kerusakan yang terjadi apabila program mengalami error;
o Execution Efficiency kinerja run-time dari program;
o Expandability sejauh mana desain prosedur, data, atau arsitektur dapat diperluas;
o Generality luasnya kemungkinan aplikasi dari komponen-komponen program;
o Hardware Independence sejauh mana software tidak bergantung pada kekhususan
dari hardware tempat software itu beroperasi;
o Instrumentation sejauh mana program memonitor operasi dirinya sendiri dan
mengidentifikasi error yang terjadi;
o Modularity functional independence dari komponen-komponen program;
o Operability kemudahan mengoperasikan program;
o Security ketersediaan mekanisme untuk mengontrol dan melindungi program dan
data terhadap akses dari pihak yang tidak berhak;
o Self-Dokumentation sejauh mana source-code memberikan dokumentasi yang
berarti;
o Simplicity Kemudahan suatu program untuk dimengerti;
o Traceability kemudahan merujuk balik implementasi atau komponen program ke
kebutuhan pengguna software; dan
o Training sejauh mana software membantu pemakaian baru untuk menggunakan
sistem.

Auditability
Accuracy
Communication Comm.
Completeness
Conciseness
.
.
.
Traceability
Training
C
o
r
r
e
c
t
e
n
e
s
s
R
e
l
i
a
b
i
l
i
t
y
E
f
f
i
c
i
e
n
c
y
I
n
t
e
g
r
i
t
y
...I
n
t
e
r
o
p
e
r
a
b
i
l
i
t
y
U
s
a
b
i
l
i
t
y
M
e
t
r
i
c
s
Quality Factors
Auditability
Accuracy
Communication Comm.
Completeness
Conciseness
.
.
.
Traceability
Training
C
o
r
r
e
c
t
e
n
e
s
s
R
e
l
i
a
b
i
l
i
t
y
E
f
f
i
c
i
e
n
c
y
I
n
t
e
g
r
i
t
y
...I
n
t
e
r
o
p
e
r
a
b
i
l
i
t
y
U
s
a
b
i
l
i
t
y
M
e
t
r
i
c
s
M
e
t
r
i
c
s
Quality Factors


Sumber: Pressman, 1994

4
Hubungan antara faktor-faktor software quality dan metric-metric tersebut ditunjukkan dalam gambar di
bawah ini.

Dengan memanfaatkan formula ini, paling tidak seorang perancang, programmer, evaluator, dan pengguna
perangkat lunak dapat mendeskripsikan secara kuantitatif tingkat kualitas sebuah software. Semakin tinggi
nilai F
q
yang dihasilkan, semakin baik kualitas software tersebut. Hal yang perlu diperhatikan sebelum
melakukan evaluasi terhadap nilai kuantitatif sebuah software adalah:

o Tentukan terlebih dahulu faktor-faktor apa yang ingin diukur berdasarkan metric kualitas
yang ada; dan
o Untuk masing-masing metric, tentukan bobot yang sesuai, sejalan dengan kebutuhan dari
kualitas yang diharapkan terhadap software yang ingin dievaluasi.

Anda mungkin juga menyukai