Manajemen Kualitas Perangkat Lunak - Pendahuluan
Perangkat lunak berkualitas mengacu pada perangkat lunak yang bebas bug atau cacat, dikirimkan tepat waktu dan dalam anggaran yang ditentukan, memenuhi persyaratan dan / atau ekspektasi, dan dapat dipelihara. Dalam konteks rekayasa perangkat lunak, kualitas perangkat lunak mencerminkan keduanyafunctional quality sebaik structural quality.
Software Functional Quality - Ini mencerminkan seberapa baik itu memenuhi desain yang diberikan, berdasarkan persyaratan fungsional atau spesifikasi.
Software Structural Quality - Ini berkaitan dengan penanganan persyaratan non-fungsional yang mendukung pengiriman persyaratan fungsional, seperti ketahanan atau pemeliharaan, dan sejauh mana perangkat lunak diproduksi dengan benar.
Software Quality Assurance- Software Quality Assurance (SQA) adalah sekumpulan aktivitas untuk memastikan kualitas dalam proses rekayasa perangkat lunak yang pada akhirnya menghasilkan produk perangkat lunak yang berkualitas. Kegiatan menetapkan dan mengevaluasi proses yang menghasilkan produk. Ini melibatkan tindakan yang berfokus pada proses.
Software Quality Control- Software Quality Control (SQC) adalah sekumpulan aktivitas untuk memastikan kualitas produk software. Kegiatan ini fokus pada penentuan cacat pada produk aktual yang dihasilkan. Ini melibatkan tindakan yang berfokus pada produk.
Tantangan Kualitas Perangkat Lunak
Dalam industri perangkat lunak, para pengembang tidak akan pernah menyatakan bahwa perangkat lunak bebas dari cacat, tidak seperti yang biasanya dilakukan oleh produsen produk industri lain. Perbedaan ini disebabkan oleh beberapa alasan berikut.
Kompleksitas Produk
Ini adalah jumlah mode operasional yang diizinkan produk. Biasanya, produk industri hanya memungkinkan kurang dari beberapa ribu mode operasi dengan kombinasi berbeda dari pengaturan mesinnya. Namun, paket perangkat lunak memungkinkan jutaan kemungkinan operasional. Karenanya, memastikan semua kemungkinan operasional ini dengan benar merupakan tantangan utama bagi industri perangkat lunak.
Visibilitas Produk
Karena produk industri terlihat, sebagian besar cacatnya dapat dideteksi selama proses pembuatan. Juga ketiadaan suatu suku cadang dalam suatu produk industri dapat dengan mudah dideteksi dalam produk tersebut. Namun, cacat pada produk perangkat lunak yang disimpan pada disket atau CD tidak terlihat.
Pengembangan Produk dan Proses Produksi
Dalam produk industri, cacat dapat dideteksi selama fase berikut -
Product development - Dalam fase ini, desainer dan staf Quality Assurance (QA) memeriksa dan menguji prototipe produk untuk mendeteksi cacatnya.
Product production planning- Selama fase ini, proses produksi dan alat dirancang dan disiapkan. Fase ini juga memberikan kesempatan untuk memeriksa produk untuk mendeteksi cacat yang tidak diketahui selama fase pengembangan.
Manufacturing- Dalam fase ini, prosedur QA diterapkan untuk mendeteksi kegagalan produk itu sendiri. Cacat pada produk yang terdeteksi pada periode pertama produksi biasanya dapat diperbaiki dengan perubahan pada desain produk atau bahan atau pada alat produksi, dengan cara yang menghilangkan cacat tersebut pada produk yang diproduksi di masa depan.
Namun, dalam kasus perangkat lunak, satu-satunya fase di mana cacat dapat dideteksi adalah fase pengembangan. Dalam hal perangkat lunak, perencanaan produksi produk dan fase pembuatan tidak diperlukan karena pembuatan salinan perangkat lunak dan pencetakan manual perangkat lunak dilakukan secara otomatis.
Faktor-faktor yang mempengaruhi pendeteksian cacat pada produk perangkat lunak dibandingkan dengan produk industri lainnya diperlihatkan dalam tabel berikut.
Ciri | Produk Perangkat Lunak | Produk Industri Lainnya |
---|---|---|
Kompleksitas | Jutaan opsi operasional | ribuan opsi operasional |
visibilitas produk | Produk Tak Terlihat Sulit untuk mendeteksi cacat dengan penglihatan | Produk Terlihat Deteksi cacat secara efektif dengan penglihatan |
Sifat pengembangan dan proses produksi | dapat merusak cacat hanya dalam satu fase | dapat mendeteksi kerusakan di semua fase berikut
|
Karakteristik perangkat lunak seperti kompleksitas dan tembus pandang membuat pengembangan metodologi jaminan kualitas perangkat lunak dan penerapannya yang berhasil menjadi tantangan yang sangat profesional.