Apa Persyaratan Fungsional dalam Rekayasa Perangkat Lunak?

โšก Ringkasan Cerdas

Persyaratan Fungsional menjelaskan setiap layanan yang harus ditawarkan oleh sistem perangkat lunak, mencakup masukan, perilaku, dan keluaran sehingga pengembang, penguji, dan pemangku kepentingan bisnis memiliki definisi tunggal dan terverifikasi tentang apa yang sebenarnya harus dilakukan oleh produk tersebut.

  • ๐Ÿ“˜ Definisi: Persyaratan Fungsional, yang juga disebut Spesifikasi Fungsional, menyatakan apa yang harus dilakukan sistem โ€” masukan, perilaku, dan keluaran, yang dijelaskan dari perspektif pengguna atau bisnis.
  • ๐Ÿ“„ Cakupan Dokumen: Dokumen Persyaratan Fungsional mencakup pengoperasian layar, logika penanganan data, laporan, alur kerja, izin, dan kepatuhan terhadap peraturan.
  • ๏ธ Jenis Umum: Penanganan transaksi, aturan bisnis, pelaporan, fungsi administratif, tingkat otorisasi, audit tracraja, antarmuka eksternal, dan persyaratan hukum.
  • ๐Ÿ’ก contoh: Validasi login, pencatatan penjualan, tampilan pendapatan berdasarkan peran, integrasi API perbankan, dan kepatuhan aksesibilitas semuanya termasuk dalam persyaratan fungsional.
  • ๐Ÿ†š Kontras Non-Fungsional: Persyaratan fungsional menjelaskan apa yang dilakukan suatu sistem; persyaratan non-fungsional menjelaskan seberapa baik sistem tersebut melakukannya โ€” kinerja, keamanan, dan kegunaan.
  • โœ… Praktik terbaik: Tetapkan persyaratan secara rinci, dapat diuji, dan terkait dengan tujuan bisnis, serta peroleh persyaratan tersebut melalui wawancara dan lokakarya.

Persyaratan Fungsional dalam Rekayasa Perangkat Lunak

Apa yang dimaksud dengan Persyaratan Fungsional?

A Persyaratan Fungsional (FR) adalah deskripsi layanan yang harus ditawarkan oleh perangkat lunak. FR mendeskripsikan sistem perangkat lunak atau komponennya. Sebuah fungsi didefinisikan oleh input, perilaku, dan output. Fungsi tersebut dapat berupa perhitungan, manipulasi data, proses bisnis, atau interaksi pengguna yang mendefinisikan apa yang harus dilakukan oleh sistem. Persyaratan Fungsional dalam Rekayasa Perangkat Lunak juga disebut Spesifikasi Fungsional.

Persyaratan Fungsional berkisar dari kebutuhan pemangku kepentingan tingkat tinggi hingga spesifikasi matematis yang terperinci. Perangkat lunak fungsional Persyaratan tersebut mencerminkan perilaku yang diinginkan dari sistem.

Apa yang Harus Dicantumkan dalam Dokumen Persyaratan Fungsional

Berikut adalah hal-hal yang harus tercakup dalam Dokumen Persyaratan Fungsional:

Contoh Persyaratan Fungsional

Contoh Persyaratan Fungsional

Dokumen Persyaratan Fungsional biasanya mencakup:

  • Rincian operasi yang dilakukan pada setiap layar
  • Logika penanganan data yang harus diterapkan oleh sistem.
  • Description dari laporan sistem dan keluaran lainnya
  • Informasi lengkap tentang alur kerja yang dilakukan sistem.
  • Siapa yang diizinkan untuk membuat, memodifikasi, atau menghapus data dalam sistem?
  • Bagaimana sistem tersebut memenuhi kebutuhan regulasi dan kepatuhan yang berlaku.

Manfaat Persyaratan Fungsional

Manfaat utama dari Dokumen Persyaratan Fungsional yang ditulis dengan baik adalah:

  • Memverifikasi bahwa aplikasi menjalankan setiap fungsi yang telah ditentukan.
  • Mendefinisikan fungsionalitas sistem dan subsistemnya di satu tempat.
  • Dipadukan dengan analisis kebutuhan, persyaratan fungsional membantu mengidentifikasi kebutuhan yang belum terpenuhi dan memperjelas perilaku sistem yang diharapkan.
  • Kesalahan yang terdeteksi pada tahap persyaratan adalah yang paling murah untuk diperbaiki.
  • Mendukung tujuan, tugas, dan aktivitas pengguna.

Jenis Persyaratan Fungsional

Kategori umum persyaratan fungsional meliputi:

  • Penanganan Transaksi
  • Aturan Bisnis
  • Persyaratan sertifikasi
  • Persyaratan pelaporan
  • Fungsi Administratif
  • Tingkat Otorisasi
  • Audit Tracking
  • Antarmuka Eksternal
  • Manajemen Data Historis
  • Persyaratan Hukum dan Peraturan

Contoh Persyaratan Fungsional

Berikut adalah contoh praktis dari persyaratan fungsional:

  • Perangkat lunak tersebut akan 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 adalah biru dengan nilai heksadesimal RGB 0x0000FF.
  • Hanya karyawan tingkat manajerial yang berhak melihat data pendapatan.
  • Sistem perangkat lunak tersebut harus terintegrasi dengan API perbankan.
  • Sistem perangkat lunak harus memenuhi Bagian 508 persyaratan aksesibilitas.

Persyaratan Fungsional vs. Persyaratan Non-Fungsional

Berikut perbedaan utama antara persyaratan fungsional dan non-fungsional. Rekayasa Perangkat Lunak:

Parameter Teknis 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 pengujian dilakukan sebelum pengujian non-fungsional. Setelah pengujian fungsional
Info Produk Fitur Produk Properti Produk

Praktik Terbaik untuk Menulis Persyaratan Fungsional

Praktik terbaik yang paling penting untuk menulis Dokumen Persyaratan Fungsional adalah:

  • Jangan menggabungkan dua persyaratan menjadi satu; jaga agar setiap persyaratan tetap terperinci.
  • Buat setiap persyaratan selengkap dan seakurat mungkin.
  • Cantumkan semua persyaratan teknis dalam dokumen tersebut.
  • Petakan setiap persyaratan ke dalam tujuan dan prinsip yang mendorong keberhasilan pengiriman perangkat lunak.
  • Mengumpulkan persyaratan melalui wawancara, lokakarya, dan percakapan informal.
  • Dokumentasikan setiap kendala yang diketahui dan terverifikasi yang secara material memengaruhi suatu persyaratan.
  • Catat setiap asumsi dalam dokumen tersebut.

Kesalahan Umum Saat Menulis Persyaratan Fungsional

Kesalahan umum yang sering terjadi saat membuat Dokumen Persyaratan Fungsional meliputi:

  • Menambahkan informasi tambahan yang tidak perlu dan membingungkan pengembang.
  • Mengabaikan detail yang dibutuhkan pengembang untuk membangun fitur tersebut.
  • Aturan pencampuran, contoh, skorping pernyataan, atau tujuan yang dimasukkan ke dalam persyaratan itu sendiri.
  • Dengan menghilangkan informasi yang penting untuk menyatakan persyaratan secara lengkap dan akurat.
  • Mempertahankan persyaratan yang sudah ada ketika ada permintaan perubahan, alih-alih mencari jawaban yang tepat.
  • Persyaratan penulisan yang tidak dipetakan ke tujuan atau prinsip apa pun.

Pertanyaan Umum Demo Slot

Alat AI mengelompokkan catatan wawancara, menghasilkan draf user story, menandai bahasa yang ambigu, dan mendeteksi duplikasi di antara kumpulan persyaratan yang besar. Analis Bisnis tetap memvalidasi setiap saran terhadap kebutuhan pemangku kepentingan yang sebenarnya sebelum dimasukkan ke dalam baseline yang disetujui.

Copilot dan GPT menghasilkan draf user story, kriteria penerimaan, dan pernyataan "harus" dari petunjuk singkat. Seorang Analis Bisnis mengedit setiap output untuk memastikan kemudahan pengujian dan mengkonfirmasi keselarasan dengan tujuan bisnis sebelum tinjauan formal.

Persyaratan bisnis menyatakan mengapa suatu proyek ada, seperti pertumbuhan pendapatan atau kepatuhan. Persyaratan fungsional menyatakan apa yang harus dilakukan sistem untuk mencapai hasil tersebut, seperti memvalidasi pembayaran atau menghasilkan laporan.

Gunakan subjek yang jelas, kata "harus", dan satu tindakan yang dapat diuji per pernyataan. Hindari kata-kata yang ambigu seperti "cepat", dan cakup satu perilaku sehingga persyaratan dapat diuji dengan satu kali pengecekan lulus atau gagal.

EARS, Easy Approach to Requirements Syntax, menyediakan lima templat: ubiquitous, event-driven, state-driven, optional feature, dan unwanted behaviour. Masing-masing memaksa struktur yang dapat diuji seperti When TRIGGER the system shall RESPONSE.

Spesifikasi Persyaratan Perangkat Lunak adalah dokumen utama yang menjelaskan apa yang harus dilakukan oleh suatu sistem. Persyaratan fungsional membentuk bagian terbesar, bersama dengan antarmuka, persyaratan non-fungsional, kasus penggunaan, dan batasan.

Persyaratan fungsional mendorong kasus uji dalam pengujian sistem, integrasi, ujung-ke-ujung, API, dan penerimaan pengguna. Setiap persyaratan dipetakan ke setidaknya satu kasus uji, dan Persyaratan TracMatriks eabilitas mengkonfirmasi cakupan sebelum rilis.

Tim Agile mengekspresikan persyaratan fungsional sebagai user story menggunakan format "Sebagai sebuah peran, saya menginginkan sebuah kemampuan, sehingga menghasilkan nilai tertentu." Kriteria penerimaan yang dilampirkan pada user story mengubah persyaratan menjadi definisi penyelesaian yang dapat diuji.

Ringkaslah postingan ini dengan: