En funktionsspecifikation inom systemteknik och mjukvaruutveckling är ett dokument som beskriver de nödvändiga egenskaperna hos ett system (funktionalitet). Dokumentationen beskriver de in- och utdataparametrar som är nödvändiga för användaren av systemet (till exempel ett mjukvarusystem ).
Inom systemteknik är en specifikation ett dokument som tydligt och korrekt beskriver de väsentliga tekniska kraven för objekt, material eller operationer. Specifikationer hjälper till att eliminera dubbelarbete och inkonsekvenser, tillåter korrekt bedömning av nödvändiga aktiviteter och resurser, fungerar som ett konsensus- och referensdokument för gjorda ändringar, tillhandahåller konfigurationsdokumentation och möjliggör interaktion mellan individer som arbetar med de åtta stora systemtekniska funktionerna. De ger en korrekt bild av lösningen på ett problem, ökar effektiviteten i systemutvecklingen och utvärderar kostnaden för alternativa designvägar. De fungerar som en guide för testare att verifiera (kvalitativt utvärdera) varje specifikation. [ett]
Funktionsspecifikationen definierar inte de operationer som sker inom ett givet system och hur dess funktion kommer att implementeras. Istället överväger den interaktioner med externa agenter (t.ex. personal som använder programvaran, kringutrustning eller andra datorer) som kan "se" när de interagerar med systemet.
Ett exempel från en typisk funktionsspecifikation:
När användaren klickar på OK-knappen stängs dialogrutan och fokus återgår till huvudfönstret som var innan dialogrutan dök upp.Ett sådant krav beskriver interaktionen mellan den externa agenten ( användaren ) och mjukvarusystemet. När användaren går in i systemet genom att trycka på OK-knappen, svarar programmet (eller bör svara) genom att stänga fönstret som innehåller den knappen.
En specifikation kan vara informell , i vilket fall den kan ses som en ritning eller användarguide ur utvecklarens synvinkel, eller formell , i vilket fall den definierar matematiska eller programmeringstermer. I praktiken skrivs de flesta framgångsrika specifikationer för att göra det lättare att förstå och finjustera applikationer som redan är väldesignade, men när det kommer till vitala mjukvarusystem skapas i sådana fall specifikationen noggrant innan applikationsutvecklingen påbörjas. Specifikationerna är viktigast för externa gränssnitt, som måste vara stabila.
Funktionsspecifikationer kan skapas för olika ändamål. Ett av huvudmålen är att få en grupp utvecklare att komma överens om hur programmet ska se ut innan man fortsätter med aktiviteter som kräver betydande tid (skriva källkod , testa , sedan felsöka programmet ). Vanligtvis uppnås konsensus efter en eller flera intressentutvärderingar av kostnadseffektiva sätt att uppnå de tekniska krav som krävs för att exekvera mjukvaruprodukten.
När en grupp utvecklare kommer till enighet om beredskapen för en funktionell specifikation, kallas den i det här fallet "avslutad" eller "signerad". Därefter skriver programmerare och testare källkod och testar programmet med hjälp av funktionsspecifikationen som referens. Under testning jämförs programmets åtgärder med de förväntade som definieras i specifikationen.
Mjukvaruutveckling | |
---|---|
Bearbeta | |
Koncept på hög nivå | |
Vägbeskrivning |
|
Utvecklingsmetoder _ | |
Modeller |
|
Anmärkningsvärda siffror |
|