Wat zijn niet-functionele vereisten in software-engineering?

Wat zijn niet-functionele vereisten?

Niet-functionele vereiste (NFR) specificeert het kwaliteitskenmerk van een softwaresysteem. Ze beoordelen het softwaresysteem op basis van responsiviteit, bruikbaarheid, beveiliging, draagbaarheid en andere niet-functionele standaarden die cruciaal zijn voor het succes van het softwaresysteem. Voorbeeld van niet-functionele vereiste, “Hoe snel laadt de website?” Het niet voldoen aan niet-functionele eisen kan resulteren in systemen die niet voldoen aan de behoeften van de gebruiker.

Non Functional requirements in Software Engineering stellen u in staat om beperkingen of restricties op te leggen aan het ontwerp van het systeem in de verschillende agile backlogs. Bijvoorbeeld, de site moet in 3 seconden laden wanneer het aantal gelijktijdige gebruikers > 10000 is. DescriptHet vaststellen van niet-functionele eisen is net zo belangrijk als een functionele eis.

Soorten niet-functionele vereisten

Hieronder staan ​​de belangrijkste soorten niet-functionele vereisten:

Soorten niet-functionele vereisten
Soorten niet-functionele vereisten
  • Bruikbaarheidseis
  • Onderhoudsvereiste
  • Beheersbaarheidseis
  • Vereisten voor herstelbaarheid
  • Beveiligingsvereiste
  • Data Integrity vereiste
  • Capaciteitseis
  • Beschikbaarheidseis
  • Schaalbaarheidsvereiste
  • Interoperabiliteitsvereiste
  • Betrouwbaarheidseis
  • Onderhoudsvereiste
  • Wettelijke vereiste
  • Milieueisen

Voorbeelden van niet-functionele vereisten

Hier volgen enkele voorbeelden van niet-functionele vereisten:

  1. Gebruikers moeten het aanvankelijk toegewezen inlogwachtwoord onmiddellijk na de eerste succesvolle aanmelding wijzigen. Bovendien mag de initiaal nooit opnieuw worden gebruikt.
  2. Werknemers mochten nooit hun salarisgegevens bijwerken. Een dergelijke poging moet worden gemeld aan de beveiligingsbeheerder.
  3. Elke mislukte poging van een gebruiker om toegang te krijgen tot een gegevensitem wordt vastgelegd in een audittrail.
  4. Een website moet capabel genoeg zijn om 20 miljoen gebruikers te verwerken, wat de prestaties beïnvloedt
  5. De software moet draagbaar zijn. Het overstappen van het ene besturingssysteem naar het andere besturingssysteem levert dus geen enkel probleem op.
  6. Privacy van informatie, de export van beperkte technologieën, intellectuele eigendomsrechten, enz. moeten worden gecontroleerd.

Functionele versus niet-functionele vereisten

Hieronder vindt u het belangrijkste verschil tussen functionele en niet-functionele vereisten:

parameters Functionele vereiste Niet-functionele vereiste
Wat is het? Werkwoord Attributen
eis Het is verplicht Het is niet verplicht
Soort vastleggen Het wordt vastgelegd in een use case. Het wordt vastgelegd als een kwaliteitsattribuut.
Eindresultaat product-functie Producteigenschappen
Het vastleggen Gemakkelijk vast te leggen Moeilijk vast te leggen
Objectief Helpt u de functionaliteit van de software te verifiëren. Helpt u bij het verifiëren van de prestaties van de software.
Aandachtsgebied Focus op de gebruikersbehoefte Concentreert zich op de verwachting van de gebruiker.
Documentatie Beschrijf wat het product doet Beschrijft hoe het product werkt
Type testen Functioneel testen zoals systeem, integratie, end-to-end, API-testen, enz. Niet-functionele tests zoals prestatie-, stress-, bruikbaarheids-, beveiligingstests, enz.
Testuitvoering Testuitvoering vindt plaats vóór niet-functioneel testen. Na het functioneel testen
Product informatie Producteigenschappen Producteigenschappen

Voordelen van niet-functionele vereisten

Voordelen/voordelen van Niet-functioneel testen zijn:

  • De niet-functionele vereisten zorgen ervoor dat het softwaresysteem de wettelijke en complianceregels volgt.
  • Ze zorgen voor de betrouwbaarheid, beschikbaarheid en prestaties van het softwaresysteem
  • Ze zorgen voor een goede gebruikerservaring en gebruiksgemak van de software.
  • Ze helpen bij het formuleren van het beveiligingsbeleid van het softwaresysteem.

Nadelen van niet-functionele vereisten

Nadelen/nadelen van niet-functievereiste zijn:

  • Geen enkele functionele vereiste mag van invloed zijn op de verschillende softwaresubsystemen op hoog niveau
  • Ze vereisen speciale aandacht tijdens de softwarearchitectuur-/ontwerpfase, wat de kosten verhoogt.
  • De implementatie ervan is doorgaans niet toegesneden op het specifieke softwaresubsysteem,
  • Het is lastig om niet-functionele wijzigingen aan te brengen zodra je de architectuurfase voorbij bent.

BELANGRIJKE LESSEN

  • NFR betekent: Een niet-functionele eis definieert het prestatiekenmerk van een softwaresysteem.
  • Wat zijn de soorten niet-functioneel gedrag: schaalbaarheid, capaciteit, beschikbaarheid, betrouwbaarheid, herstelbaarheid, gegevens Integrity, Etc.
  • Een van de NFR-voorbeelden is dat werknemers nooit hun salarisinformatie mogen bijwerken. Een dergelijke poging moet worden gemeld aan de beveiligingsbeheerder.
  • Functionele vereiste is een werkwoord, terwijl niet-functionele vereiste een attribuut is
  • Het voordeel van niet-functionele vereisten is dat het u helpt een goede gebruikerservaring en gebruiksgemak van de software te garanderen
  • Het grootste nadeel van niet-functionele vereisten is dat deze van invloed kunnen zijn op de verschillende softwaresubsystemen op hoog niveau.