Quality Assurance pada Software

September 28, 2021

quality assurance software

Software Quality Assurance adalah proses yang dilakukan untuk memeriksa dan memastikan apakah sebuah aplikasi sudah berfungsi dengan baik dan sesuai dengan kebutuhan yang ditentukan.

Proses quality assurance ini biasanya dilakukan oleh QA Engineer. QA Engineer bertugas merancang serangkaian metode tes dan pengecekan pada aplikasi. QA Engineer harus mempunyai skill yang tidak kalah kritis dengan System Analyst dan Software Developer. QA Engineer biasanya memiliki mindset yang luas pada penggunaan aplikasi. Hal itu bertujuan agar aplikasi dapat dipastikan mempunyai kualitas tinggi dari segi tampilan user interface, fungsi fitur, jalannya keseluruhan aplikasi, dan keamanan aplikasi.

QA Engineer harus berkolaborasi dengan semua anggota tim. Mulai dari Product Owner, Project Manager, System Analyst, UI/UX Designer dan juga Software Developer. Karena QA Engineer harus memiliki semua pengetahuan tetang aspek aplikasi yang sedang dibangun. Pada akhirnya QA Engineer melaporkan jika ada ketidak-seusaian aplikasi pada tim untuk diperbaiki oleh pihak terkait termasuk software developer.

 

Jenis Proses Quality Assurance

Berikut jenis dari proses quality assurance dari segi pada pengembangan aplikasi.

  1. Functional Testing

Tes fungsional ini mempunyai cakupan quality assurance dari hasil eksekusi pada aplikasi dari setiap alur penggunaan aplikasi sesuai kebutuhan awal yang ditentukan. Tes fungsional tidak berfokus pada kode program. Automated testing bisa dilakukan pada jenis tes fungsional. Ada beberapa software untuk automated testing untuk memudahkan pengujian. Automated testing ini diperlukan pada saat misalnya aplikasi menjalankan fungsi logged in dengan jumlah ratusan user dalam waktu yang sama. Testing tersebut akan sangat merepotkan jika dilakukan manual.

 

  1. Non-functional Testing

Secara urutan non-functional testing ini memang dilakukan setelah functional testing. Non-functional testing lebih ke lingkup pengujian pada performa. Parameter pengujian pada non-functional testing ini yaitu akurasi, waktu, stabilitas dan durability. Misalkan berapa lama waktu yang ditentukan untuk membuka halaman aplikasi tersebut. Tentunya untuk menghitung waktu tersebut, bisa dilakukan secara manual testing maupun automated testing.

 

Bayangkan jika aplikasi mempunyai banyak sekali fitur dan ternyata tim pengembang aplikasi tidak mempunyai QA Engineer. Tentunya hal itu akan membebani software developer saat memastikan kualitas aplikasi yang dibuat. Maka, quality assurance menjadi bagian yang sangat penting demi kualitas aplikasi dan juga meminimalisir kegagalan aplikasi itu sendiri untuk digunakan oleh customer.