1. Dasar-dasar kualitas software (bagian 5)
1.4. KUALITAS PERANGKAT LUNAK
Bagian sebelumnya, yang menyajikan masalah dengan mengidentifikasi cacat, telah meletakkan dasar untuk diskusi kita berikutnya, yaitu kualitas perangkat lunak. Bagaimana kita mendefinisikan kualitas perangkat lunak? Grup standarisasi menyarankan definisi berikut.
Kualitas Perangkat Lunak.
Kesesuaian dengan persyaratan perangkat lunak yang ditetapkan; kemampuan produk perangkat lunak untuk memenuhi kebutuhan yang dinyatakan dan tersirat ketika digunakan dalam kondisi tertentu (ISO 25010 [ISO 11i]).
Sejauh mana produk perangkat lunak memenuhi persyaratan yang ditetapkan; namun, kualitas tergantung pada sejauh mana persyaratan yang ditetapkan tersebut secara akurat mewakili kebutuhan, keinginan, dan harapan pemangku kepentingan [Institute of Electrical and Electronics Engineers (IEEE 730)] [IEE 14].
Definisi kedua dalam kotak teks sangat berbeda, terlepas dari penampilannya. Bagian pertama dari definisi berasal dari perspektif Crosby yang meyakinkan insinyur perangkat lunak dengan ketegasannya. Perspektif ini adalah: “Jika saya memberikan semua yang ditentukan dalam dokumen persyaratan, maka saya akan memberikan perangkat lunak yang berkualitas.” Namun, bagian kedua dari definisi ini adalah dari perspektif kualitas Luaran, yang menetapkan bahwa seseorang harus memenuhi kebutuhan, keinginan, dan harapan klien yang tidak harus dijelaskan dalam dokumentasi persyaratan!
Kedua sudut pandang ini memaksa perekayasa perangkat lunak untuk menetapkan jenis perjanjian yang harus menggambarkan persyaratan klien dan berusaha untuk mencerminkan kebutuhan, keinginan, dan harapannya dengan sungguh-sungguh. Tentu saja, ada elemen praktis untuk karakteristik fungsional yang perlu dijelaskan, tetapi juga karakteristik implisit, yang diharapkan dari setiap perangkat lunak yang dikembangkan secara profesional.
Dalam konteks ini, insinyur perangkat lunak dapat terinspirasi oleh standar di bidangnya, seperti rekan-rekannya di bidang teknik konstruksi atau spesialisasi teknik lainnya, untuk mengidentifikasi kewajibannya. Kesesuaian proses dapat dicapai dan diukur. Sebagai contoh, Profesor April menerbitkan contoh pengukuran, di Ouanouki dan April (2007) [OUA 07], di mana proses pengujian perangkat lunak harus dinilai untuk kesesuaian Sarbanes-Oxley untuk pengecer perangkat keras terbesar Kanada.
Kualitas perangkat lunak diakui secara berbeda tergantung pada setiap perspektif, termasuk perspektif klien, pengelola, dan pengguna. Terkadang, perlu untuk membedakan antara klien, siapa yang bertanggung jawab untuk memperoleh perangkat lunak, dan pengguna, yang pada akhirnya akan menggunakannya.
Pengguna mencari, antara lain, fungsionalitas, kinerja, efisiensi, hasil yang akurat, keandalan, dan kegunaan. Klien biasanya lebih fokus pada biaya dan tenggat waktu, dengan pandangan ke solusi terbaik dengan harga terbaik. Ini dapat dianggap sebagai sudut pandang eksternal sehubungan dengan kualitas. Untuk menyamakannya dengan industri otomotif, pengguna (pengemudi) akan pergi ke bengkel yang menyediakan layanan cepat, kualitas, dan harga yang baik untuknya. Dia memiliki sudut pandang non-teknis.
Adapun spesialis perangkat lunak,
mereka lebih fokus pada pemenuhan kewajiban berdasarkan anggaran yang
dialokasikan. Oleh karena itu, mereka melihat kewajiban mereka dari
sudut pandang pemenuhan persyaratan dan syarat serta
ketentuan perjanjian. Pilihan alat yang tepat dan teknik modern
sering menjadi perhatian utama, dan oleh karena itu merupakan sudut
pandang internal seperti seorang mekanik yang tertarik pada teknologi
mesin dan mengetahuinya secara detail. Baginya, kualitas sama
pentingnya dengan pemilihan dan perakitan komponen. Kitaakan
mempertimbangkan dua sudut pandang ini (eksternal versus internal)
ketika membahas model kualitas produk perangkat lunak.
Oleh
karena itu, perangkat lunak berkualitas adalah perangkat lunak yang
memenuhi kebutuhan sebenarnya dari para pemangku kepentingan dengan
tetap menghormati batasan biaya dan waktu yang telah ditentukan
sebelumnya. Kebutuhan klien akan perangkat lunak (atau lebih umum
jenis sistem apa pun) dapat didefinisikan pada empat tingkat:
Kebutuhan yang sebenarnya
Kebutuhan yang diungkapkan
Kebutuhan yang ditentukan
Kebutuhan yang tercapai
Kemampuan perangkat lunak untuk memenuhi (atau tidak memenuhi) kebutuhan klien dapat digambarkan dalam perbedaan antara keempat level ini. Sepanjang pengembangan suatu proyek, akan ada faktor-faktor yang akan mempengaruhi kualitas akhir.
Komentar
Posting Komentar
Berikan komentar yang positif & konstruktif.