Što je funkcionalni zahtjev u softverskom inženjeringu? Specifikacije, vrste, primjeri

Što je funkcionalni zahtjev?

DO Funkcionalni zahtjevi (FR) je opis usluge koju softver mora ponuditi. Opisuje softverski sustav ili njegovu komponentu. Funkcija nije ništa drugo doli ulazi u softverski sustav, njeno ponašanje i izlazi. To može biti izračun, manipulacija podacima, poslovni proces, interakcija s korisnikom ili bilo koja druga specifična funkcija koja definira koju će funkciju sustav vjerojatno obavljati. Također se nazivaju funkcionalni zahtjevi u softverskom inženjeringu Funkcionalne specifikacije .

U softverskom inženjerstvu i sistemskom inženjeringu, funkcionalni zahtjevi mogu se kretati od apstraktne izjave na visokoj razini o potrebi pošiljatelja do detaljnih matematičkih specifikacija funkcionalnih zahtjeva. Funkcionalni softver zahtjevi vam pomažu uhvatiti predviđeno ponašanje sustava.

U ovom vodiču naučit ćete više o:

Što bi trebalo biti uključeno u dokument o funkcionalnim zahtjevima?

Evo kako napisati dokument o funkcionalnim zahtjevima:

Primjer funkcionalnih zahtjeva



Funkcionalni zahtjevi sustava trebali bi uključivati ​​sljedeće:

  • Pojedinosti o operacijama provedenim na svakom zaslonu
  • Logiku rukovanja podacima treba unijeti u sustav
  • Trebao bi imati opise izvješća o sustavu ili drugih rezultata
  • Cjelovite informacije o tijekovima rada koje sustav izvodi
  • Treba jasno definirati kome će biti dopušteno stvaranje/izmjena/brisanje podataka u sustavu
  • Način na koji će sustav ispuniti primjenjive regulatorne potrebe i potrebe usklađenosti trebao bi biti zabilježen u funkcionalnom dokumentu

Prednosti funkcionalnih zahtjeva

Ovdje su prednosti/prednosti stvaranja tipičnog dokumenta o funkcionalnim zahtjevima-

  • Pomaže vam provjeriti pruža li aplikacija sve funkcionalnosti navedene u funkcionalnim zahtjevima te aplikacije
  • Dokument o funkcionalnim zahtjevima pomaže vam definirati funkcionalnost sustava ili jednog od njegovih podsustava.
  • Funkcionalni zahtjevi zajedno s analizom zahtjeva pomažu identificirati nedostajuće zahtjeve. Oni pomažu jasno definirati očekivane usluge i ponašanje sustava.
  • Pogreške uhvaćene u fazi prikupljanja funkcionalnih zahtjeva najjeftinije su za ispravljanje.
  • Podržavajte ciljeve, zadatke ili aktivnosti korisnika

Vrste funkcionalnih zahtjeva

Ovdje su najčešće vrste funkcionalnih zahtjeva:

  • Rukovanje transakcijama
  • Poslovna pravila
  • Zahtjevi za certificiranje
  • Zahtjevi izvješćivanja
  • Administrativne funkcije
  • Razine ovlaštenja
  • Praćenje revizije
  • Vanjska sučelja
  • Povijesno upravljanje podacima
  • Pravni i regulatorni zahtjevi

Primjer funkcionalnih zahtjeva

Ispod su primjeri popularnih funkcionalnih zahtjeva:

  • Softver automatski provjerava valjanost korisnika prema ABC sustavu za upravljanje kontaktima
  • Sustav prodaje trebao bi omogućiti korisnicima bilježenje prodaje kupaca
  • Boja pozadine za sve prozore u aplikaciji bit će plava i imati heksadecimalnu vrijednost RGB boje 0x0000FF.
  • Samo zaposlenici na menadžerskoj razini imaju pravo pregledavati podatke o prihodima.
  • Softverski sustav trebao bi biti integriran s bankarskim API -jem
  • Softverski sustav trebao bi proći Odjeljak 508 zahtjev pristupačnosti.

Nefunkcionalni i funkcionalni zahtjevi

Ovdje su ključne razlike između funkcionalnih i nefunkcionalnih zahtjeva u Softversko inženjerstvo :

Parametri Funkcionalni zahtjevi Nefunkcionalni zahtjev
Što jeGlagol

Atributi

ZahtjevObavezno je

To nije obavezno
Vrsta snimanjaSnimljeno je u slučaju upotrebe.Snimljen je kao atribut kvalitete.
Krajnji rezultatZnačajka proizvoda

Svojstva proizvoda

HvatanjeJednostavno snimanje

Teško snimiti

CiljPomaže vam provjeriti funkcionalnost softvera.Pomaže vam provjeriti performanse softvera.
Područje fokusaUsredotočite se na zahtjeve korisnikaUsredotočuje se na očekivanja korisnika.
DokumentacijaOpišite čime se proizvod baviOpisuje kako proizvod radi
Vrsta ispitivanjaFunkcionalno testiranje poput sustava, integracije, end to end, API testiranje itd.Nefunkcionalno testiranje kao što su performanse, stres, upotrebljivost, sigurnosno testiranje itd.
Izvođenje testaIzvođenje testa vrši se prije nefunkcionalnog testiranja.Nakon funkcionalnog ispitivanja
Informacije o proizvoduZnačajke proizvoda

Svojstva proizvoda

Najbolja praksa funkcionalnih zahtjeva

Važna najbolja praksa za izradu dokumenta o funkcionalnim zahtjevima je sljedeća:

  • Nemojte kombinirati dva zahtjeva u jedan. Neka zahtjevi budu detaljni.
  • Svaki zahtjev trebate učiniti što potpunijim i točnijim.
  • Dokument bi trebao nacrtati sve tehničke zahtjeve.
  • Mapirajte sve zahtjeve prema ciljevima i načelima što pridonosi uspješnoj isporuci softvera
  • Iskoristite zahtjeve pomoću intervjua, radionica i ležerne komunikacije.
  • Ako postoji neko poznato, provjereno ograničenje koje materijalno utječe na zahtjev, onda je to kritično stanje koje treba dokumentirati.
  • Potrebno je dokumentirati sve pretpostavke u dokumentu.

Pogreške pri stvaranju funkcionalnog zahtjeva

Evo nekoliko uobičajenih pogrešaka napravljenih prilikom izrade dokumenta o zahtjevu funkcije:

  • Unošenje neopravdanih dodatnih informacija koje bi mogle zbuniti programere
  • Ne unose se dovoljno pojedinosti u dokument zahtjeva.
  • Dodajete pravila ili primjere, opsežne izjave ili ciljeve bilo što osim samog zahtjeva.
  • Ostavio je dio važnih podataka koji su apsolutna potreba za potpuno, točno i definitivno iznošenje zahtjeva.
  • Neki stručnjaci počinju braniti zahtjeve koje su dokumentirali kada se zahtjev promijeni, umjesto da pronađu točnu istinu.
  • Zahtjevi koji nisu preslikani u cilj ili načelo.

KLJUČNA UČENJA

  • Objasnite funkcionalne zahtjeve u softverskom inženjeringu: Funkcionalni zahtjevi definiraju sustav ili njegove komponente
  • Dokument o funkcionalnim zahtjevima trebao bi sadržavati logiku rukovanja podacima i potpune informacije o tijekovima rada koje izvodi sustav
  • Funkcionalni zahtjevi zajedno s analizom zahtjeva pomažu identificirati nedostajuće zahtjeve
  • Ispravke, prilagodbe i otkazivanja transakcija, Poslovna pravila, Zahtjevi za certifikaciju, Zahtjevi izvješćivanja, Administrativne funkcije, Razine ovlaštenja, Praćenje revizije, Vanjska sučelja, Upravljanje povijesnim podacima, Pravni ili regulatorni zahtjevi su različite vrste funkcionalnih zahtjeva
  • Kao dobra praksa nemojte kombinirati dva zahtjeva u jedan. Neka zahtjevi budu detaljni.
  • U dokumentu o funkcionalnim zahtjevima treba izbjegavati unošenje neopravdanih dodatnih informacija koje bi mogle zbuniti programere.