Hva er et funksjonskrav i programvareteknikk?
Hva er et funksjonskrav?
A Funksjonskrav (FR) er en beskrivelse av tjenesten som programvaren mรฅ tilby. Den beskriver et programvaresystem eller dets komponent. En funksjon er ikke annet enn innganger til programvaresystemet, dets oppfรธrsel og utganger. Det kan vรฆre en beregning, datamanipulering, forretningsprosess, brukerinteraksjon eller annen spesifikk funksjonalitet som definerer hvilken funksjon et system sannsynligvis vil utfรธre. Funksjonelle krav i programvareteknikk kalles ogsรฅ Funksjonell spesifikasjon.
Innen programvareutvikling og systemutvikling kan et funksjonelt krav variere fra overordnet abstracen erklรฆring om avsenderens behov for detaljerte matematiske funksjonelle kravspesifikasjoner. Funksjonell programvare krav hjelper deg med รฅ fange opp den tiltenkte oppfรธrselen til systemet.
Hva bรธr inkluderes i funksjonskravdokumentet?
Slik skriver du funksjonskravdokument:

Funksjonelle krav til et system bรธr inkludere fรธlgende ting:
- Detaljer om operasjoner utfรธrt pรฅ hver skjerm
- Datahรฅndteringslogikk bรธr legges inn i systemet
- Den bรธr ha beskrivelser av systemrapporter eller andre utdata
- Fullstendig informasjon om arbeidsflytene som utfรธres av systemet
- Det bรธr klart definere hvem som skal fรฅ lov til รฅ opprette/endre/slette dataene i systemet
- Hvordan systemet vil oppfylle gjeldende regulatoriske og samsvarsbehov bรธr fanges opp i funksjonsdokumentet
Fordeler med funksjonskrav
Her er fordelene/fordelene ved รฅ lage et typisk funksjonskravdokument-
- Hjelper deg med รฅ sjekke om applikasjonen tilbyr alle funksjonene som ble nevnt i funksjonskravet til den applikasjonen
- Et funksjonskravdokument hjelper deg med รฅ definere funksjonaliteten til et system eller et av dets undersystemer.
- Funksjonelle krav sammen med behovsanalyse hjelper til med รฅ identifisere manglende krav. De hjelper tydelig รฅ definere forventet systemtjeneste og oppfรธrsel.
- Feil fanget i innsamlingsfasen for funksjonelle krav er de billigste รฅ fikse.
- Stรธtt brukermรฅl, oppgaver eller aktiviteter
Typer funksjonskrav
Her er de vanligste funksjonskravtypene:
- Transaksjonshรฅndtering
- Forretningsregler
- Sertifiseringskrav
- Rapporterer krav
- Administrative funksjoner
- Autorisasjonsnivรฅer
- Audit Trackonge
- Eksterne grensesnitt
- Historisk databehandling
- Juridiske og regulatoriske krav
Eksempel pรฅ funksjonskrav
Nedenfor er de populรฆre eksempler pรฅ funksjonskrav:
- Programvaren validerer automatisk kunder mot ABC Contact Management System
- Salgssystemet skal tillate brukere รฅ registrere kundesalg
- Bakgrunnsfargen for alle vinduer i applikasjonen vil vรฆre blรฅ og ha en heksadesimal RGB-fargeverdi pรฅ 0x0000FF.
- Kun ansatte pรฅ ledernivรฅ har rett til รฅ se inntektsdata.
- Programvaresystemet bรธr vรฆre integrert med bank API
- Programvaresystemet skal bestรฅ ยง 508 krav til tilgjengelighet.
Ikke-funksjonelle vs. funksjonelle krav
Her er viktige forskjeller mellom funksjonelle og ikke-funksjonelle krav i Engineering programvare:
| Parametre | Funksjonskrav | Ikke-funksjonelle krav |
|---|---|---|
| Hva det er | Verb | attributter |
| Krav | Det er obligatorisk | Det er ikke obligatorisk |
| Fangetype | Det fanges opp i brukstilfelle. | Det fanges opp som et kvalitetsattributt. |
| Sluttresultat | Produktfunksjon | Produktegenskaper |
| fange | Lett รฅ fange | Vanskelig รฅ fange |
| Mรฅlet | Hjelper deg รฅ verifisere funksjonaliteten til programvaren. | Hjelper deg med รฅ verifisere ytelsen til programvaren. |
| Fokusomrรฅde | Fokus pรฅ brukerkrav | Konsentrerer seg om brukerens forventning. |
| Teknisk dokumentasjon | Beskriv hva produktet gjรธr | Beskriver hvordan produktet fungerer |
| Type testing | Funksjonell testing som system, integrasjon, ende til ende, API-testingOsv | Ikke-funksjonell testing som ytelse, stress, brukervennlighet, SikkerhetstestingOsv |
| Testutfรธrelse | Testutfรธrelse gjรธres fรธr ikke-funksjonell testing. | Etter funksjonstestingen |
| produkt info | Produktegenskaper | Produktegenskaper |
Beste praksis for funksjonelle krav
Viktig beste praksis for utviklingping dokumentet for funksjonskrav er som fรธlger:
- Ikke kombiner to krav til ett. Hold kravene granulรฆre.
- Du bรธr gjรธre hvert krav sรฅ fullstendig og nรธyaktig som mulig.
- Dokumentet skal inneholde utkast til alle tekniske krav.
- Kartlegg alle krav til mรฅl og prinsipper som bidrar til vellykket programvarelevering
- Fremkall krav ved hjelp av intervjuer, workshops og tilfeldig kommunikasjon.
- Hvis det er noen kjent, verifisert begrensning som vesentlig pรฅvirker et krav, er det en kritisk tilstand som bรธr dokumenteres.
- Det er nรธdvendig at du dokumenterer alle forutsetningene i dokumentet.
Feil under opprettelse av et funksjonskrav
Her er noen vanlige feil som ble gjort under oppretting av funksjonskravdokument:
- Legge inn uberettiget ekstra informasjon som kan forvirre utviklere
- Ikke angi tilstrekkelig detaljer i kravdokumentet.
- Du legger til regler eller eksempler, scoping uttalelser eller mรฅlsettinger noe annet enn selve kravet.
- Utelatt en del viktig informasjon som er et absolutt must for รฅ angi kravet fullstendig, nรธyaktig og definitivt.
- Noen fagfolk begynner รฅ forsvare kravene de har dokumentert nรฅr kravet endres, i stedet for รฅ finne den riktige sannheten.
- Krav som ikke er tilordnet et mรฅl eller prinsipp.
NรKKELLรRING
- Forklar funksjonelle krav i Software Engineering: A Funksjonelle krav definerer et system eller dets komponenter
- Funksjonelle krav Dokumentet skal inneholde datahรฅndteringslogikk og fullstendig informasjon om arbeidsflytene som utfรธres av systemet
- Funksjonelle krav sammen med behovsanalyse hjelper til med รฅ identifisere manglende krav
- Transaksjonskorrigeringer, justeringer og kanselleringer, forretningsregler, sertifiseringskrav, rapporteringskrav, administrative funksjoner, autorisasjonsnivรฅer, revisjon Trackonge, eksterne grensesnitt, historisk datahรฅndtering, juridiske eller regulatoriske krav er ulike typer funksjonelle krav.
- Som en god praksis ikke kombinere to krav til ett. Hold kravene granulรฆre.
- ร legge inn uberettiget ekstra informasjon som kan forvirre utviklere bรธr unngรฅs i funksjonskravdokumentet. For รฅ forstรฅ hvordan disse kravene oversettes til faktiske testprosedyrer, kan det vรฆre lurt รฅ utforske denne veiledningen funksjonstesting.
