Wat is een functionele vereiste in software-engineering?

Wat is een functionele vereiste?

A Functionele vereiste (FR) is een beschrijving van de dienst die de software moet bieden. Het beschrijft een softwaresysteem of zijn component. Een functie is niets anders dan input voor het softwaresysteem, zijn gedrag en output. Het kan een berekening, gegevensmanipulatie, bedrijfsproces, gebruikersinteractie of een andere specifieke functionaliteit zijn die definieert welke functie een systeem waarschijnlijk zal vervullen. Functionele vereisten in Software Engineering worden ook wel genoemd Functionele specificatie.

In software- en systeemengineering kan een functionele eis variรซren van een abstractie op hoog niveau tot een abstractie op hoog niveau.tract verklaring van de afzender over de noodzaak van gedetailleerde wiskundige functionele specificaties. Functionele software vereisten helpen u het beoogde gedrag van het systeem vast te leggen.

Wat moet er in het Document Functionele Eisen staan?

Hier ziet u hoe u een document met functionele vereisten schrijft:

Voorbeeld functionele vereisten
Voorbeeld functionele vereisten

Functionele vereisten van een systeem moeten het volgende omvatten:

  • Details van de uitgevoerde handelingen op elk scherm
  • Logica voor gegevensverwerking moet in het systeem worden ingevoerd
  • Het moet beschrijvingen bevatten van systeemrapporten of andere outputs
  • Volledige informatie over de workflows die door het systeem worden uitgevoerd
  • Er moet duidelijk worden gedefinieerd wie de gegevens in het systeem mag aanmaken/wijzigen/verwijderen
  • Hoe het systeem zal voldoen aan de toepasselijke regelgevings- en nalevingsbehoeften moet worden vastgelegd in het functionele document

Voordelen van functionele vereisten

Hier volgen de voor- en nadelen van het maken van een typisch functioneel vereistendocument:

  • Helpt u te controleren of de applicatie alle functionaliteiten biedt die vermeld staan โ€‹โ€‹in de functionele eisen van die applicatie
  • Een functioneel eisendocument helpt u bij het definiรซren van de functionaliteit van een systeem of een van zijn subsystemen.
  • Functionele vereisten en vereistenanalyse helpen ontbrekende vereisten te identificeren. Ze helpen de verwachte systeemservice en het verwachte gedrag duidelijk te definiรซren.
  • Fouten die tijdens de fase van het verzamelen van functionele vereisten worden opgemerkt, zijn het goedkoopst op te lossen.
  • Ondersteun gebruikersdoelen, taken of activiteiten

Soorten functionele vereisten

Dit zijn de meest voorkomende typen functionele vereisten:

  • Transactieafhandeling
  • Bedrijfsregels
  • certificatie-eisen
  • Rapportage vereisten
  • Administratieve functies
  • Autorisatieniveaus
  • Audit Trackoning
  • Externe interfaces
  • Beheer van historische gegevens
  • Wettelijke en regelgevende vereisten

Voorbeeld van functionele vereisten

Hieronder staan โ€‹โ€‹de populaire voorbeelden van functionele vereisten:

  • De software valideert klanten automatisch aan de hand van het ABC Contact Management Systeem
  • Het verkoopsysteem moet gebruikers in staat stellen de verkopen van klanten vast te leggen
  • De achtergrondkleur voor alle vensters in de applicatie is blauw en heeft een hexadecimale RGB-kleurwaarde van 0x0000FF.
  • Alleen medewerkers op managementniveau hebben het recht om omzetgegevens te bekijken.
  • Het softwaresysteem moet worden geรฏntegreerd met de bank-API
  • Het softwaresysteem zou moeten slagen sectie 508 toegankelijkheidseis.

Niet-functionele versus functionele vereisten

Hier volgen de belangrijkste verschillen tussen functionele en niet-functionele vereisten Software Engineering:

Kenmerken Functionele vereiste Niet-functionele vereiste
Wat het is 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, Etc. Niet-functionele tests zoals prestaties, stress, bruikbaarheid, Beveiligingstests, Etc.
Testuitvoering Testuitvoering vindt plaats vรณรณr niet-functioneel testen. Na het functioneel testen
Product informatie Producteigenschappen Producteigenschappen

Beste praktijk van functionele vereisten

Belangrijke beste praktijken voor ontwikkelingping Het document met functionele eisen ziet er als volgt uit:

  • Combineer geen twee eisen tot รฉรฉn. Houd de vereisten gedetailleerd.
  • U moet elke vereiste zo volledig en nauwkeurig mogelijk maken.
  • Het document moet alle technische vereisten bevatten.
  • Breng alle vereisten in kaart voor de doelstellingen en principes die bijdragen aan een succesvolle softwarelevering
  • Haal vereisten naar voren met behulp van interviews, workshops en informele communicatie.
  • Als er een bekende, geverifieerde beperking bestaat die een vereiste wezenlijk beรฏnvloedt, is dit een kritieke toestand die moet worden gedocumenteerd.
  • Het is noodzakelijk dat u alle aannames in het document documenteert.

Fouten bij het creรซren van een functionele vereiste

Hier volgen enkele veelvoorkomende fouten die worden gemaakt bij het maken van een functievereistedocument:

  • Ongerechtvaardigde extra informatie invoeren die ontwikkelaars in verwarring kan brengen
  • Er zijn onvoldoende details in het vereistedocument opgenomen.
  • Je voegt regels of voorbeelden toe, scoping Verklaringen of doelstellingen, alles behalve de eis zelf.
  • Er is een stukje belangrijke informatie weggelaten die absoluut noodzakelijk is om de vereiste volledig, nauwkeurig en definitief vast te stellen.
  • Sommige professionals beginnen de eisen die zij hebben gedocumenteerd te verdedigen wanneer de eis wordt gewijzigd, in plaats van de juiste waarheid te vinden.
  • Vereisten die niet zijn gekoppeld aan een doelstelling of principe.

BELANGRIJKE LEERLINGEN

  • Leg functionele vereisten uit in Software Engineering: functionele vereisten definiรซren een systeem of zijn componenten
  • Het functionele vereistendocument moet logica voor gegevensverwerking en volledige informatie bevatten over de workflows die door het systeem worden uitgevoerd
  • Functionele vereisten en vereistenanalyse helpen ontbrekende vereisten te identificeren
  • Transactiecorrecties, -aanpassingen en -annuleringen, Bedrijfsregels, Certificeringsvereisten, Rapportagevereisten, Administratieve functies, Autorisatieniveaus, Audit TracKing, externe interfaces, beheer van historische gegevens, wettelijke of regelgevende vereisten zijn verschillende soorten functionele vereisten.
  • Het is een goede praktijk om twee vereisten niet in รฉรฉn te combineren. Houd de vereisten gedetailleerd.
  • Het toevoegen van ongerechtvaardigde extra informatie die ontwikkelaars in verwarring kan brengen, moet worden vermeden in het document met functionele vereisten. Om te begrijpen hoe deze vereisten zich vertalen in daadwerkelijke testprocedures, kunt u deze handleiding raadplegen functioneel testen.

Vat dit bericht samen met: