Persyaratan Fungsional vs Non Fungsional
Perbedaan Utama antara Persyaratan Fungsional dan Non Fungsional
- Persyaratan fungsional mendefinisikan sistem atau komponennya, sedangkan persyaratan non-fungsional mendefinisikan atribut kinerja sistem perangkat lunak.
- Persyaratan fungsional, bersama dengan analisis persyaratan membantu mengidentifikasi persyaratan yang hilang, sedangkan keuntungan dari persyaratan Non-fungsional adalah membantu Anda memastikan pengalaman pengguna yang baik dan kemudahan pengoperasian perangkat lunak.
- Persyaratan Fungsional merupakan kata kerja, sedangkan Persyaratan Non Fungsional merupakan atribut
- Jenis persyaratan Non-fungsional adalah Kapasitas Skalabilitas, Ketersediaan, Keandalan, Pemulihan, Data Integrity, dll., sedangkan koreksi, penyesuaian, dan pembatalan transaksi, Aturan Bisnis, Persyaratan Sertifikasi, Persyaratan Pelaporan, Fungsi Administratif, Tingkat Otorisasi, Pelacakan Audit, Antarmuka Eksternal, Manajemen Data Historis, Persyaratan Hukum atau Peraturan adalah berbagai jenis persyaratan fungsional.

Apa yang dimaksud dengan Persyaratan Fungsional?
Dalam rekayasa perangkat lunak, a kebutuhan fungsional mendefinisikan suatu sistem atau komponennya. Ini menjelaskan fungsi yang harus dilakukan perangkat lunak. Suatu fungsi tidak lain hanyalah masukan, perilakunya, dan keluarannya. Ini bisa berupa perhitungan, manipulasi data, proses bisnis, interaksi pengguna, atau fungsi spesifik lainnya yang menentukan fungsi apa yang mungkin dilakukan suatu sistem.
Persyaratan fungsional dalam rekayasa perangkat lunak membantu Anda menangkap perilaku sistem yang diinginkan. Perilaku ini dapat dinyatakan sebagai fungsi, layanan atau tugas atau sistem mana yang perlu dijalankan.
Apa itu Persyaratan Non-Fungsional?
A kebutuhan non-fungsional mendefinisikan atribut kualitas sistem perangkat lunak. Mereka mewakili seperangkat standar yang digunakan untuk menilai operasi spesifik suatu sistem. Misalnya, seberapa cepat website dimuat?
Persyaratan non-fungsional sangat penting untuk memastikan kegunaan dan efektivitas seluruh sistem perangkat lunak. Kegagalan memenuhi persyaratan non-fungsional dapat mengakibatkan sistem gagal memenuhi kebutuhan pengguna.
Persyaratan Non-fungsional memungkinkan Anda untuk menerapkan batasan atau pembatasan pada desain sistem di berbagai backlog agile. Misalnya, situs harus dimuat dalam 3 detik ketika jumlah pengguna simultan > 10000. DescriptPersyaratan non-fungsional sama pentingnya dengan persyaratan fungsional.
Contoh Persyaratan Fungsional
Berikut beberapa contoh kebutuhan fungsional dalam rekayasa perangkat lunak:
- Perangkat lunak ini secara otomatis memvalidasi pelanggan terhadap Sistem Manajemen Kontak ABC
- Sistem Penjualan harus memungkinkan pengguna untuk mencatat penjualan pelanggan
- Warna latar belakang untuk semua jendela dalam aplikasi akan berwarna biru dan memiliki nilai warna heksadesimal RGB 0x0000FF.
- Hanya karyawan tingkat Manajerial yang berhak melihat data pendapatan.
- Sistem perangkat lunak harus terintegrasi dengan API perbankan
- Sistem perangkat lunak harus lulus Bagian 508 persyaratan aksesibilitas.
Contoh Persyaratan Non-fungsional
Berikut beberapa contoh kebutuhan non-fungsional dalam rekayasa perangkat lunak:
- Pengguna harus mengubah kata sandi login yang awalnya ditetapkan segera setelah login pertama berhasil. Selain itu, yang awal tidak boleh digunakan kembali.
- Karyawan tidak pernah diizinkan untuk memperbarui informasi gaji mereka. Upaya tersebut harus dilaporkan kepada administrator keamanan.
- Setiap upaya yang gagal oleh pengguna untuk mengakses suatu item data harus dicatat dalam jejak audit.
- Sebuah situs web harus cukup mampu menangani 20 juta pengguna sehingga mempengaruhi kinerjanya
- Perangkat lunaknya harus portabel. Jadi berpindah dari satu OS ke OS lain tidak menimbulkan masalah.
- Privasi informasi, ekspor teknologi yang dibatasi, hak kekayaan intelektual, dll. harus diaudit.
Perbedaan Persyaratan Fungsional dan Non Fungsional
Di bawah ini adalah perbedaan utama antara persyaratan fungsional dan non fungsional dalam rekayasa perangkat lunak:
Parameters | Persyaratan Fungsional | Persyaratan Non-Fungsional |
---|---|---|
Apa itu | Kata kerja | atribut |
Kebutuhan | Itu wajib | Ini tidak wajib |
Tipe penangkapan | Itu ditangkap dalam kasus penggunaan. | Itu ditangkap sebagai atribut kualitas. |
Hasil akhir | Fitur Produk | Properti produk |
Menangkap | Mudah ditangkap | Sulit ditangkap |
Tujuan | Membantu Anda memverifikasi fungsionalitas perangkat lunak. | Membantu Anda memverifikasi kinerja perangkat lunak. |
Area fokus | Fokus pada kebutuhan pengguna | Berkonsentrasi pada harapan pengguna. |
Dokumentasi | Jelaskan fungsi produk tersebut | Menjelaskan cara kerja produk |
Jenis Pengujian | Pengujian Fungsional seperti Sistem, Integrasi, End to End, Pengujian API, Dll | Pengujian Non-Fungsional seperti Kinerja, Stres, Kegunaan, Pengujian keamanan, Dll |
Eksekusi Tes | Eksekusi Tes dilakukan sebelum pengujian non-fungsional. | Setelah pengujian fungsional |
Info Produk | Fitur Produk | Properti Produk |
Keuntungan dari Persyaratan Fungsional
Berikut adalah kelebihan/keuntungan membuat dokumen kebutuhan fungsional yang khas.
- Membantu Anda memeriksa apakah aplikasi menyediakan semua fungsi yang disebutkan dalam persyaratan fungsional aplikasi tersebut
- Dokumen persyaratan fungsional membantu Anda menentukan fungsionalitas sistem atau salah satu subsistemnya.
- Persyaratan fungsional bersama dengan analisis kebutuhan membantu mengidentifikasi persyaratan yang hilang. Mereka membantu dengan jelas mendefinisikan layanan dan perilaku sistem yang diharapkan.
- Kesalahan yang tertangkap dalam tahap pengumpulan persyaratan Fungsional adalah yang paling murah untuk diperbaiki.
- Mendukung tujuan, tugas, atau aktivitas pengguna untuk manajemen proyek yang mudah
- Persyaratan fungsional dapat dinyatakan dalam bentuk Use Case atau cerita pengguna karena mereka menunjukkan perilaku fungsional yang terlihat secara eksternal.
Keuntungan dari Persyaratan Non-Fungsional
Manfaat/kelebihan pengujian non-fungsional di rekayasa Perangkat Lunak adalah:
- Persyaratan nonfungsional memastikan sistem perangkat lunak mengikuti aturan hukum dan kepatuhan.
- Mereka memastikan keandalan, ketersediaan, dan kinerja sistem perangkat lunak
- Mereka memastikan pengalaman pengguna yang baik dan kemudahan pengoperasian perangkat lunak.
- Mereka membantu dalam merumuskan kebijakan keamanan sistem perangkat lunak.