Što je nefunkcionalni zahtjev u softverskom inženjeringu? Vrste i primjeri

Što je nefunkcionalni zahtjev?

Nefunkcionalni zahtjev (NFR) navodi atribut kvalitete softverskog sustava. Procjenjuju softverski sustav na temelju odaziva, upotrebljivosti, sigurnosti, prenosivosti i drugih nefunkcionalnih standarda koji su ključni za uspjeh softverskog sustava. Primjer nefunkcionalnog zahtjeva, koliko se brzo web stranica učitava? Neispunjavanje nefunkcionalnih zahtjeva može rezultirati sustavima koji ne zadovoljavaju potrebe korisnika.

Nefunkcionalni zahtjevi u softverskom inženjeringu omogućuju vam nametanje ograničenja ili ograničenja u dizajnu sustava u raznim agilnim zaostacima. 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.

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

Vrste nefunkcionalnih zahtjeva

Vrste nefunkcionalnih zahtjeva

  • Uvjeti upotrebljivosti
  • Uvjet servisiranja
  • Uvjet upravljanja
  • Uvjet povrata
  • Sigurnosni zahtjev
  • Zahtjev za integritetom podataka
  • Uvjet kapaciteta
  • Uvjet dostupnosti
  • Uvjet skalabilnosti
  • Uvjet interoperabilnosti
  • Uvjet pouzdanosti
  • Zahtjev za održavanje
  • Regulatorni zahtjev
  • Zaštita okoliša

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 bit će zabilježen 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. Stoga 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

Slijedi glavna razlika između funkcionalnih i nefunkcionalnih zahtjeva:

Parametri Funkcionalni zahtjevi Nefunkcionalni zahtjev
Što je?Glagol

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

Prednosti nefunkcionalnih zahtjeva

Prednosti/prednosti nefunkcionalnog testiranja su:

  • Nefunkcionalni zahtjevi osiguravaju da softverski sustav poštuje zakonske propise 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.

Nedostaci nefunkcionalnog zahtjeva

Nedostaci/nedostaci zahtjeva za nefunkcionalnošću su:

  • Nijedan funkcionalni zahtjev ne može utjecati na različite softverske podsustave na visokoj razini
  • Oni zahtijevaju posebno razmatranje tijekom faze arhitekture softvera/dizajna na visokoj razini što povećava troškove.
  • Njihova se implementacija obično ne preslikava u određeni softverski podsustav,
  • Teško je promijeniti nefunkcionalne kad prođete fazu arhitekture.

KLJUČNO UČENJE

  • Nefunkcionalni zahtjev definira atribut izvedbe softverskog sustava.
  • Vrste nefunkcionalnih zahtjeva su Skalabilni kapacitet, Dostupnost, Pouzdanost, Oporavak, Integritet podataka itd.
  • Jedan od primjera nefunkcionalnih zahtjeva je da zaposlenicima nikada nije dopušteno ažurirati podatke o plaći. Takav pokušaj treba prijaviti administratoru sigurnosti.
  • Funkcionalni zahtjev je glagol, a nefunkcionalni zahtjev atribut
  • Prednost nefunkcionalnog zahtjeva je u tome što vam pomaže u osiguranju dobrog korisničkog iskustva i jednostavnosti rada sa softverom
  • Najveći nedostatak Nefunkcionalnog zahtjeva je taj što može utjecati na različite softverske podsustave na visokoj razini.