Pendahuluan
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 Product Operations
definisi di atas terlihat bahwa sebuah software dikatakan Sifat-sifat operasional suatu software berkaitan dengan
berkualitas apabila memenuhi tiga ketentuan pokok: hal-hal yang harus diperhatikan oleh para perancang dan
Memenuhi kebutuhan pemakai – yang pengembang yang secara teknis melakukan penciptaan
berarti bahwa jika software tidak dapat sebuah aplikasi. Hal-hal yang diukur di sini adalah yang
memenuhi kebutuhan pengguna software berhubungan dengan teknis analisa, perancangan, dan
tersebut, maka yang bersangkutan dikatakan konstruksi sebuah software. Faktor-faktor McCall yang
tidak atau kurang memiliki kualitas; berkaitan dengan sifat-sifat operasional software adalah:
Memenuhi standar pengembangan Correctness – sejauh mana suatu
software – yang berarti bahwa jika cara software memenuhi spesifikasi dan mission
pengembangan software tidak mengikuti objective dari users;
metodologi standar, maka hampir dapat Reliability – sejauh mana suatu
dipastikan bahwa kualitas yang baik akan sulit software dapat diharapkan untuk melaksanakan
atau tidak tercapai; dan fungsinya dengan ketelitian yang diperlukan;
Memenuhi sejumlah kriteria implisit – Efficiency – banyaknya sumber daya
yang berarti bahwa jika salah satu kriteria komputasi dan kode program yang dibutuhkan
implisit tersebut tidak dapat dipenuhi, maka suatu software untuk melakukan fungsinya;
1
RRC/EI/53
Integrity – sejauh mana akses ke sebuah formula diajukan untuk mengukur faktor-faktor
software dan data oleh pihak yang tidak berhak software quality secara tidak langsung menurut hubungan:
dapat dikendalikan; dan
Usability – usaha yang diperlukan untuk Fq = c1 * m1 + c2* m2+ c3* m3+ . . . + cn* mn
mempelajari, mengoperasikan, menyiapkan
input, dan mengartikan output dari software. dimana :
Fq = Faktor software quality
Product Revision c1 = Bobot yang bergantung pada
Setelah sebuah software berhasil dikembangkan dan produk dan kepentingan
diimplementasikan, akan terdapat berbagai hal yang perlu m1 = Metric yang mempengaruhi
diperbaiki berdasarkan hasil uji coba maupun evaluasi. faktor software quality
Sebuah software yang dirancang dan dikembangkan Adapun metric yang dipakai dalam skema pengukuran di
dengan baik, akan dengan mudah dapat direvisi jika atas adalah sebagai berikut:
diperlukan. Seberapa jauh software tersebut dapat Auditability – kemudahan untuk
diperbaiki merupakan faktor lain yang harus diperhatikan. memeriksa apakah software memenuhi standard
Faktor-faktor McCall yang berkaitan dengan kemampuan atau tidak;
software untuk menjalani perubahan adalah: Accuracy – ketelitian dari komputasi
Maintainability – usaha yang diperlukan dan kontrol;
untuk menemukan dan memperbaiki kesalahan Communication Commonality – sejauh
(error) dalam software; mana interface, protokol, dan bandwidth
Flexibility – u saha yang diperlukan digunakan;
untuk melakukan modifikasi terhadap software Completeness – sejauh mana
yang operasional implementasi penuh dari fungsi-fungsi yang
Testability – usaha yang diperlukan diperlukan telah tercapai;
untuk menguji suatu software untuk memastikan Conciseness – keringkasan program
apakah melakukan fungsi yang dikehendaki atau dalam ukuran LOC (line of commands);
tidak Consistency – derajat penggunaan
teknik-teknik desain dan dokumentasi yang
Product Transition seragam pada seluruh proyek pengembangan
Setelah integritas software secara teknis telah diukur software;
dengan menggunakan faktor product operational dan Data Commonality – derajat
secara implementasi telah disesuaikan dengan faktor penggunaan tipe dan struktur data baku pada
product revision, faktor terakhir yang harus diperhatikan seluruh program;
adalah faktor transisi – yaitu bagaimana software tersebut Error Tolerance – kerusakan yang
dapat dijalankan pada beberapa platform atau kerangka terjadi apabila program mengalami error;
sistem yang beragam. Faktor-faktor McCall yang Execution Efficiency – kinerja run-time
berkaitan dengan tingkat adaptibilitas software terhadap dari program;
lingkungan baru: Expandability – sejauh mana desain
Portability – usaha yang diperlukan prosedur, data, atau arsitektur dapat diperluas;
untuk mentransfer software dari suatu hardware Generality – luasnya kemungkinan
dan/atau sistem software tertentu agar dapat aplikasi dari komponen-komponen program;
berfungsi pada hardware dan/atau sistem Hardware Independence – sejauh mana
software lainnya software tidak bergantung pada kekhususan dari
Reusability – sejauh mana suatu hardware tempat software itu beroperasi;
software (atau bagian software) dapat Instrumentation – sejauh mana program
dipergunakan ulang pada aplikasi lainnya memonitor operasi dirinya sendiri dan
Interoperability – usaha yang mengidentifikasi error yang terjadi;
diperlukan untuk menghubungkan satu software Modularity – functional independence
dengan lainnya dari komponen-komponen program;
Operability – kemudahan
Teknik Pengukuran mengoperasikan program;
Menimbang tingkat kesulitan yang dihadapi para Security – ketersediaan mekanisme
programmer dalam mengukur secara langsung dan untuk mengontrol dan melindungi program dan
kuantitatif kualitas software yang dikembangkan data terhadap akses dari pihak yang tidak berhak;
berdasarkan pembagian yang diajukan McCall di atas,
2
RRC/EI/53