Hvad er ikke-funktionelle krav i softwareteknologi?

Hvad er ikke-funktionelle krav?

Ikke-funktionelle krav (NFR) specificerer kvalitetsattributten for et softwaresystem. De bedรธmmer softwaresystemet baseret pรฅ lydhรธrhed, brugervenlighed, sikkerhed, bรฆrbarhed og andre ikke-funktionelle standarder, der er afgรธrende for softwaresystemets succes. Eksempel pรฅ ikke-funktionelt krav, "hvor hurtigt indlรฆses hjemmesiden?" Manglende opfyldelse af ikke-funktionelle krav kan resultere i systemer, der ikke opfylder brugernes behov.

Ikke-funktionelle krav i Software Engineering giver dig mulighed for at pรฅlรฆgge begrรฆnsninger eller begrรฆnsninger pรฅ designet af systemet pรฅ tvรฆrs af de forskellige agile backlogs. Eksempelvis skal webstedet indlรฆses pรฅ 3 sekunder, nรฅr antallet af samtidige brugere er > 10000. Description af ikke-funktionelle krav er lige sรฅ kritisk som et funktionskrav.

Typer af ikke-funktionelle krav

Nedenfor er de vigtigste typer af ikke-funktionelle krav:

Typer af ikke-funktionelle krav
Typer af ikke-funktionelle krav
  • Krav om brugbarhed
  • Servicekrav
  • Hรฅndterbarhedskrav
  • Krav om inddrivelse
  • Sikkerhedskrav
  • Data Integrity krav
  • Kapacitetskrav
  • Tilgรฆngelighedskrav
  • Skalerbarhedskrav
  • Interoperabilitetskrav
  • Krav om pรฅlidelighed
  • Krav om vedligeholdelse
  • Lovkrav
  • Miljรธkrav

Eksempler pรฅ ikke-funktionelle krav

Her er nogle eksempler pรฅ ikke-funktionelle krav:

  1. Brugere skal รฆndre den oprindeligt tildelte login-adgangskode umiddelbart efter det fรธrste succesfulde login. Desuden bรธr initialen aldrig genbruges.
  2. Medarbejdere mรฅ aldrig opdatere deres lรธnoplysninger. Et sรฅdant forsรธg skal rapporteres til sikkerhedsadministratoren.
  3. Ethvert mislykket forsรธg fra en brugers side pรฅ at fรฅ adgang til et dataelement skal registreres pรฅ et revisionsspor.
  4. Et websted skal vรฆre i stand til at hรฅndtere 20 millioner brugere med at pรฅvirke dets ydeevne
  5. Softwaren skal vรฆre bรฆrbar. Sรฅ det skaber ikke noget problem at flytte fra et OS til et andet OS.
  6. Beskyttelse af oplysninger, eksport af teknologier, der begrรฆnses, intellektuelle ejendomsrettigheder osv. bรธr revideres.

Funktionelle vs ikke-funktionelle krav

Fรธlgende er hovedforskellen mellem funktionelle og ikke-funktionelle krav:

Driftsparametre Funktionskrav Ikke-funktionelle krav
Hvad er det? Udsagnsord Attributter
Krav Det er obligatorisk Det er ikke obligatorisk
Optagelsestype Det er fanget i use case. Det er fanget som en kvalitetsegenskab.
Slutresultat Produktegenskab Produktegenskaber
Optagelse Let at fange Svรฆrt at fange
Objektiv Hjรฆlper dig med at verificere softwarens funktionalitet. Hjรฆlper dig med at verificere softwarens ydeevne.
Fokusomrรฅde Fokus pรฅ brugerkrav Koncentrerer sig om brugerens forventning.
Dokumentation Beskriv, hvad produktet gรธr Beskriver hvordan produktet virker
Type af test Funktionstest som system, integration, ende til ende, API-test osv. Ikke-funktionel test som ydeevne, stress, brugervenlighed, sikkerhedstest osv.
Testeksekvering Test udfรธres fรธr ikke-funktionel test. Efter den funktionelle test
Produkt Info produktegenskaber Produktegenskaber

Fordele ved ikke-funktionelle krav

Fordele/fordele ved Ikke-funktionel test er:

  • De ikke-funktionelle krav sikrer, at softwaresystemet fรธlger lov- og overholdelsesregler.
  • De sikrer pรฅlideligheden, tilgรฆngeligheden og ydeevnen af โ€‹โ€‹softwaresystemet
  • De sikrer en god brugeroplevelse og nem betjening af softwaren.
  • De hjรฆlper med at formulere sikkerhedspolitik for softwaresystemet.

Ulemper ved ikke-funktionelle krav

Ulemper/ulemper ved ikke-funktionskrav er:

  • Ingen funktionskrav kan pรฅvirke de forskellige softwareundersystemer pรฅ hรธjt niveau
  • De krรฆver sรฆrlig overvejelse i softwarearkitekturen/designfasen pรฅ hรธjt niveau, hvilket รธger omkostningerne.
  • Deres implementering er normalt ikke knyttet til det specifikke software-undersystem,
  • Det er svรฆrt at รฆndre ikke-funktionel, nรฅr du fรธrst har bestรฅet arkitekturfasen.

Nร˜GLELร†RING

  • NFR betyder: Et ikke-funktionelt krav definerer ydeevneattributten for et softwaresystem.
  • Hvad er typerne af ikke-funktionel adfรฆrd: Skalerbarhed, kapacitet, tilgรฆngelighed, pรฅlidelighed, gendannelse, data IntegrityOsv
  • Et af NFR-eksemplerne er, at medarbejdere aldrig mรฅ opdatere deres lรธnoplysninger. Et sรฅdant forsรธg skal rapporteres til sikkerhedsadministratoren.
  • Funktionelt krav er et verbum, mens ikke-funktionelt krav er en attribut
  • Fordelen ved ikke-funktionelle krav er, at det hjรฆlper dig med at sikre en god brugeroplevelse og nem betjening af softwaren
  • Den stรธrste ulempe ved ikke-funktionelle krav er, at det kan pรฅvirke de forskellige softwareundersystemer pรฅ hรธjt niveau.

Opsummer dette indlรฆg med: