? Validering och verifiering ( V & V ) är den process som används för att säkerställa att ett software engineering projekt uppfyller sina designmål . Verifiering används för att testa huruvida en programvara work- in -progress vid en viss fas i utvecklingen uppfyller sina mål , och validering används för att testa huruvida en färdig programvara projektet uppfyller sina mål . Det finns två processer i validering och verifiering : kontroll och provning . Testning Learning
Testa
kan beskrivas som att utforska funktionerna i en programvara . De testingenjörer göra experiment för att se vad programmet kan och inte kan göra . Detta kommer ofta avslöja oväntade beteende i verkliga användning scenarier , vilket gör att testingenjörer att rapportera tillbaka till konstruktörer . De konstruktörer kan då studera källkoden och försöka förstå vad som orsakade oväntade beteende , och hur man rättar till det .
Kontroll är en bekräftelse
Kontroll används för att bekräftar att programvaran utför en specifik uppgift korrekt . En kontroll kan vara så enkelt som en hävda uttalande , som antingen godkänt eller underkänt när ett tillstånd kontrolleras . Om en mjukvaruutvecklare tror något för att vara sant ( att x är lika med 5 , till exempel) , kan han ställa in en check för att validera riktigheten i denna tro . Om kontrollen misslyckas, då något orsakar programvaran för att bete sig oväntat . Kan automatiseras
Kontroll kan automatiseras
Kontroll . Programmeringsspråket C har " hävda " uttalande inbyggd i det . Om du designar en mjukvara och förväntar ett visst tillstånd på ett visst stadium i programmets genomförande , bör du inkludera en hävda uttalande . Om påståendet misslyckas , kraschar programmet . Detta talar om för dig att dina antaganden är felaktiga , och att det finns en bugg i din kod .
Testa inte kan automatiseras
Testning måste utföras av människor . Det finns ingen programmering konstruktioner som kan testa ett program på samma sätt som en människa kan. Testning innebär att experimentera med programvara och registrera resultaten . Detta innebär att sätta programvaran via verkliga användning , som kräver en människa. Testning gör det möjligt för V & V team för att avslöja fel som kontrollen skulle ha missat .