Funkcionalni zahtjevi u odnosu na nefunkcionalne zahtjeve: ključne razlike

Što je funkcionalni zahtjev?

U softverskom inženjeringu funkcionalni zahtjev definira sustav ili njegovu komponentu. Opisuje funkcije koje softver mora obavljati. Funkcija nije ništa drugo do ulazi, njezino 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.

Zahtjevi funkcionalnog softvera pomažu vam uhvatiti predviđeno ponašanje sustava. Ovo se ponašanje može izraziti kao funkcije, usluge ili zadaci ili koji sustav treba izvesti.

Što je nefunkcionalni zahtjev?

Nefunkcionalni zahtjev definira atribut kvalitete softverskog sustava. Oni predstavljaju skup standarda koji se koriste za procjenu specifičnog rada sustava. Na primjer, koliko se brzo web stranica učitava?

Nefunkcionalan zahtjev bitan je kako bi se osigurala upotrebljivost i učinkovitost cijelog softverskog sustava. Neispunjavanje nefunkcionalnih zahtjeva može rezultirati sustavima koji ne zadovoljavaju potrebe korisnika.

Nefunkcionalni zahtjevi omogućuju vam nametanje ograničenja ili ograničenja u dizajnu sustava u raznim agilnim zaostalim predmetima. Na primjer, web lokacija bi se trebala učitati u 3 sekunde kada je broj istodobnih korisnika> 10000. Opis nefunkcionalnih zahtjeva jednako je kritičan kao i funkcionalni zahtjev.

KLJUČNA RAZLIKA

  • Funkcionalni zahtjev definira sustav ili njegovu komponentu, dok nefunkcionalni zahtjev definira atribut izvedbe softverskog sustava.
  • Funkcionalni zahtjevi zajedno s analizom zahtjeva pomažu u identificiranju nedostajućih zahtjeva, dok je prednost Nefunkcionalnog zahtjeva u tome što vam pomaže u osiguranju dobrog korisničkog iskustva i jednostavnosti rada sa softverom.
  • Funkcionalni zahtjev je glagol, a nefunkcionalni zahtjev atribut
  • Vrste nefunkcionalnih zahtjeva su kapacitet skalabilnosti, dostupnost, pouzdanost, oporavak, integritet podataka itd., Dok su ispravci transakcija, prilagodbe i otkazivanja, 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 različite su vrste funkcionalnih zahtjeva.

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

Primjer 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.

Primjeri nefunkcionalnih zahtjeva

Evo nekoliko primjera nefunkcionalnih zahtjeva:

  1. Korisnici moraju promijeniti prvotno dodijeljenu lozinku za prijavu odmah nakon prve uspješne prijave. Štoviše, početno se nikada ne smije ponovno koristiti.
  2. Zaposlenici nikada nisu smjeli ažurirati podatke o plaći. Takav pokušaj treba prijaviti administratoru sigurnosti.
  3. Svaki neuspješan pokušaj korisnika da pristupi pojedinom podatku zabilježit će se na revizijskom tragu.
  4. Web stranica bi trebala biti dovoljno sposobna za rukovanje 20 milijuna korisnika, što utječe na njenu izvedbu
  5. Softver bi trebao biti prenosiv. Dakle, prelazak s jednog OS -a na drugi OS ne stvara nikakav problem.
  6. Treba provjeriti privatnost podataka, izvoz ograničenih tehnologija, prava intelektualnog vlasništva itd.

Funkcionalni vs nefunkcionalni zahtjevi

Parametri Funkcionalni zahtjevi Nefunkcionalni zahtjev
Što jeGlagol

Atributi

ZahtjevObavezno je

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

Svojstva proizvoda

HvatanjeLako se snima

Teško snimiti

CiljPomaže vam provjeriti funkcionalnost softvera.Pomaže vam provjeriti performanse softvera.
Područje fokusaUsredotočite se na zahtjeve korisnikaKoncentrira 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

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žite korisničke ciljeve, zadatke ili aktivnosti za jednostavno upravljanje projektima
  • Funkcionalni zahtjev može se izraziti u obliku slučaja upotrebe ili korisničkoj priči jer oni pokazuju vanjski vidljivo funkcionalno ponašanje.

Prednosti nefunkcionalnih zahtjeva

Prednosti/prednosti nefunkcionalnog testiranja su:

  • Nefunkcionalni zahtjevi osiguravaju da softverski sustav slijedi zakonska i pravila usklađenosti.
  • Oni osiguravaju pouzdanost, dostupnost i performanse softverskog sustava
  • Oni osiguravaju dobro korisničko iskustvo i jednostavnost rada sa softverom.
  • Oni pomažu u formuliranju sigurnosne politike softverskog sustava.