5 Kebutuhan Non-Fungsional dalam Sistem Perangkat Lunak
Pendahuluan
Dalam dunia pengembangan perangkat lunak, kebutuhan non-fungsional sering kali tidak terlihat secara langsung tetapi memiliki dampak besar pada kualitas aplikasi. Ketika membangun perangkat lunak, kebutuhan non-fungsional sering kali luput dari perhatian. Padahal, aspek ini menjadi elemen kunci yang menentukan apakah sistem dapat bekerja sesuai ekspektasi pengguna. Pada tulisan ini, kita akan membahas secara mendalam tentang apa saja kebutuhan non-fungsional? Yuk, kita bahas!
Apa itu kebutuhan Non-Fungsional?
Kebutuhan non-fungsional adalah elemen penting dalam pengembangan perangkat lunak yang menentukan karakteristik sistem seperti keandalan, keamanan, dan kinerja.
1. Maintainability
Maintainability terkait dengan pelacakan dan perbaikan kesalahan dalam perangkat lunak operasional.
- Modularity
Komponen diskrit yang tidak berdampak pada komponen lain selama perubahan.
- Analysability
Menganalisis dampak perubahan yang diinginkan atau mengidentifikasi kekurangan atau alasan kegagalan.
- Modifialibility
Kapasitas untuk memodifikasi produk atau sistem secara efektif dan efisien tanpa menurunkan kualitas atau menimbulkan cacat baru.
- Extensibility
Upaya yang diperlukan untuk mengimplementasikan ekstensi.
- Reusability
Kapasitas modul atau komponen yang dapat digunakan kembali dalam sistem perangkat lunak lain.
- Testability
Kapasitas untuk membangun kriteria pengujian dengan efektif dan melakukan pengujian untuk memenuhi kriteria tersebut.
2. Portability (Portabilitas)
Portabilitas adalah kemampuan sistem untuk berjalan dilingkungan komputasi yang berbeda.
- Adaptability / Kemampuan untuk beradptasi
Kapasitas produk atau sistem untuk diadopsi dalam perangkat keras, perangkat lunak, atau lingkungan operasional lainnya yang berbeda.
- Installability / Kemampuan untuk dipasang
Kapasitas suatu produk untuk berhasil dipasang atau dihapus instalasinya di lingkungan apa pun.
- Replaceability / Kemampuan untuk diganti
Kapasitas untuk mengganti suatu produk dengan produk perangkat lunak lain di lingkungan yang sama.
3. Usabillity (Kegunaan)
Kegunaan adalah fitur yang membuat sistem menjadi ramah pengguna dan mencapai tujuan yang ditentukan dengan efisiensi, kepuasan, dan efektivitas.
- Learnability / Kemampuan untuk dipelajari
Kapasitas untuk mempelajari penggunaan suatu sistem dengan cara yang efisien dengan kepuasan pengguna sepenuhnya.
- Understandbility / Kemampuan untuk dipahami
Kemampuan untuk mengenali apakah perangkat lunak tersebut sesuai dengan kebutuhan pengguna.
- Operability / Kemudahan untuk dioperasikan
Kapasitas suatu produk yang membuatnya mudah dioperasikan dan dikendalikan.
- Attractiveness / Ketertarikan
Antarmuka pengguna membantu interaksi yang memuaskan dan menyenangkan untuk digunakan.
4. Efficiency (Efisiensi)
Jumlah sumber daya komputasi dan kode yang diperlukan untuk menjalankan suatu fungsi.
- Time Behavior / Perilaku waktu
Kapasitas suatu produk saat menjalankan fungsinya untuk memenuhi persyaratan mengenai waktu respons, throughput, dan waktu pemrosesan.
- Resource Utilization / Pemanfaatan sumber daya
Saat menjalankan fungsinya, jumlah dan jenis sumber daya yang digunakan oleh suatu produk atau sistem untuk memenuhi persyaratan.
5. Reliability (Keandalan)
Kapasitas suatu produk untuk menjalankan fungsi tertentu selama jangka waktu tertentu, dalam kondisi tertentu.
- Availability / Ketersediaan
Kapasitas suatu produk atau komponen untuk dapat diakses dan beroperasi pada saat digunakan.
- Fault Tolerance / Toleransi kesalahan
Kapasitas suatu produk untuk dioperasikan sebagaimana mestinya meskipun terdapat kesalahan perangkat keras atau perangkat lunak.
- Recoverability / Kemampuan pemulihan
Kapasitas suatu produk untuk memulihkan data dan memulihkan status sistem selama terjadi gangguan atau kegagalan.
Reference:
Najia Saher, Fauziah Baharom, dan Rohaida Romli, "Identifikasi Karakteristik dan Sub-Karakteristik Keberlanjutan sebagai Persyaratan Non-Fungsional untuk Manajemen Perubahan Persyaratan dalam Agile", Jurnal Internasional Penelitian Ilmiah & Teknologi Volume 9, Edisi 03, Maret 2020
Komentar
Posting Komentar