Modelvalidering
Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den
version , der blev gennemgået den 26. august 2019; checks kræver
2 redigeringer .
Modelkontrol ( model checking , engelsk model checking ) er en metode til automatisk formel verifikation af parallelle systemer med et begrænset antal tilstande, det giver dig mulighed for at kontrollere om en given systemmodel opfylder formelle specifikationer.
Den såkaldte Kripke - model bruges normalt som model , som formelt defineres som følger: , hvor er mængden af tilstande, er mængden af begyndelsestilstande, er overgangsforholdet, er mærkningsfunktionen.





Normalt er specifikationer givet i den formelle logiks sprog. Til specifikation af hardware og software bruges som regel tidsmæssig logik - et specielt sprog, der giver dig mulighed for at beskrive systemets adfærd i tide.
Et vigtigt specifikationsspørgsmål er fuldstændighed. Modeltjekmetoden gør det muligt at verificere, at modellen af det system, der designes, svarer til en given specifikation, dog er det umuligt at afgøre, om den givne specifikation dækker alle de egenskaber, som systemet skal opfylde.
Den største vanskelighed, der skal overvindes i løbet af afprøvning på modeller, er relateret til den kombinatoriske eksplosionseffekt i tilstandsrummet. Dette problem opstår i systemer med mange komponenter, der interagerer med hinanden, såvel som i systemer med datastrukturer, der kan antage et stort antal værdier.
Værktøjer
- BLAST - statisk analysator af C - programmer
- CADP (Construction and Analysis of Distributed Processes) er et designværktøj til protokoller og distribuerede systemer
- CHESS er et værktøj til test af flertrådede programmer til .Net ( administreret ) og Win32, 64
- ISP - MPI programkode verifier
- Java Pathfinder er et gratis værktøj til kontrol af multi-threaded Java - programmer .
- MoonWalker er et gratis værktøj til at teste .Net - programmer
- MRMC (Markov Reward Model Checker)
- NuSMV - symbolsk verifikator
- PRISM - probabilistisk symbolsk verifikator
- Kanin - verifikator til realtidssystemer
- SPIN er en generel verifikator til at kontrollere rigtigheden af distribuerede programmer og protokoller
- Vereofy - programverifikator for komponentsystemer
- μCRL2 er et gratis værktøj baseret på ACP
- UPPAAL er et værktøjssæt til modellering, verifikation og validering af realtidssystemer modelleret som netværk af tidsautomater
- Zing [1] er et Microsoft driverudviklingsværktøj, der giver dig mulighed for at kontrollere tilstandsmodellerne for samtidig software.
Noter
- ↑ Zing . Hentet 18. juli 2018. Arkiveret fra originalen 18. juli 2018. (ubestemt)
Litteratur
- Clark E. M., Gramberg O., Peled D. Verifikation af programmodeller. Modelkontrol. - M. : MTSNMO, 2002. - 416 s. — ISBN 5940570542 .
- Karpov Yu. G. Modelkontrol. Verifikation af parallelle og distribuerede softwaresystemer. - Sankt Petersborg. : BHV-Petersburg, 2009. - 460 s. — ISBN 9785977504041 .
- Velder S. E., Lukin M. A., Shalyto A. A., Yaminov B. R. Verifikation af automatiske programmer. - St. Petersburg State University ITMO, 2011. - 242 s.
Links