Wat is formele verificatie?

Vaak gebruikt bij het testen van computercircuits en software, vindt formele verificatie plaats wanneer de functie van deze systemen wordt geanalyseerd met behulp van wiskundige formules. In het geval van het ontwikkelen van software, wordt het proces meestal gebruikt om aan te tonen of het programma goed werkt, op basis van een vooraf bepaald model. Soms is het theoretische model onbevredigend gebleken. Naast de broncode van software, kan formele verificatie worden gebruikt bij het ontwikkelen van combinatiecircuits, die worden gebruikt om berekeningen in computers uit te voeren, evenals in computergeheugen. De verschillende benaderingen omvatten verificatie achteraf, verificatie parallel en geïntegreerde verificatie naast verschillende methoden.

Wiskundige procedures voor berekeningen, algoritmen genoemd, worden gebruikt bij formele verificatie om de functies van producten in elke ontwikkelingsfase te testen. Softwareontwikkelaars kunnen fouten of bugs vinden in zowel de broncode als het model waarmee het in de eerste plaats is gebouwd. Soms kunnen fundamentele wijzigingen worden aangebracht in de manier waarop de code wordt geschreven voordat een ontwerpfout het eindresultaat beïnvloedt. De verificatiestap helpt over het algemeen om te bepalen of het product doet waarvoor het is bedoeld en voldoet aan de specificaties van de toepassing waarvoor het is bedoeld.

Formele verificatie kan plaatsvinden wanneer een product is voltooid, wat verificatie achteraf wordt genoemd. Een standaardmethode, die gedurende het gehele ontwerp- en ontwikkelingsproces wordt gebruikt, wordt pas geanalyseerd als het systeem is voltooid. Het lokaliseren van ernstige fouten in dit stadium leidt vaak tot dure en tijdrovende herzieningen. Ontwikkeling en verificatie kan ook worden uitgevoerd door twee afzonderlijke teams voor parallelle verificatie. Door intercommunicatie kunnen de ontwikkelaars zich tijdens het gehele ontwerpproces concentreren op onafhankelijke taken.

Geïntegreerde verificatie is wanneer een team de ontwikkeling en de vereiste beoordeling uitvoert. Complexe wiskundige concepten worden vaak gebruikt om de mogelijkheden van het product onderweg te verifiëren. Methoden voor formele verificatie variëren per project, maar een methode die vaak wordt gebruikt, is modelcontrole. Een hardware- of softwaremodel bestaat uit verschillende eigenschappen die ontwerpers in het eindproduct willen hebben. Het model en het systeem kunnen periodiek worden gecontroleerd om te zien of eigenschappen overeenkomen.

Een andere techniek bij formele verificatie omvat het gebruik van wiskundige formules en logica om een ​​systeem en zijn eigenschappen weer te geven. Regels die in een formeel systeem zijn gedefinieerd, worden meestal in de logica gevonden. Beide technieken gebruiken verschillende middelen om te bepalen of aan een bepaalde specificatie van een product wordt voldaan. Ontwikkelaars kunnen verschillende soorten software gebruiken in het formele verificatieproces, elk afgestemd op een specifiek systeem of programmeertaal.

ANDERE TALEN

heeft dit artikel jou geholpen? bedankt voor de feedback bedankt voor de feedback

Hoe kunnen we helpen? Hoe kunnen we helpen?