Software Verification Toolkit (SVT): Survey on Available Software Verification Tools and Future Direction
- Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)
Writing software is difficult. However, writing complex, well tested and designed, and functionally correct software is incredibly difficult. An entire field of study is devoted to the validation and verification of software to address this problem, and in this paper we analyze the landscape of currently available third party software. We have divided our analyses into three separate subsections with regards to software validation: formal methods, static analysis, and test generation. Formal verification is the most complex method in which to validate software correctness, but also the most thorough as it truly validates the mathematical validity of the source code. Static analysis generally is relegated to abstract syntax tree traversal techniques to find errors related to faulty software such as memory leaks or stack overflow issues. Automatic test generation is similar in implementation to static analysis, but pushes a bit further in verifying the boundedness of function inputs and outputs with regards to annotated or parsed criteria. The crux of this report is to analyze and describe the software tools that implement these techniques to validate and verify software. Pros and cons related to installation, utilization, and capabilities of the frameworks are described, and reproducible examples are provided with a focus on usability. The initial survey concluded that the most interesting tools of note are Z3, Isabelle/HOL, and TLA+ with regards to formal verification; and Infer, Frama-C, and SonarQube with regards to static analysis. With these tools in mind, a final conjecture is provided that describes future avenues of utilizing these tools for developing a verification framework to assist in validating existing software at Sandia National Laboratories.
- Research Organization:
- Sandia National Laboratories (SNL-NM), Albuquerque, NM (United States)
- Sponsoring Organization:
- USDOE National Nuclear Security Administration (NNSA)
- DOE Contract Number:
- NA0003525
- OSTI ID:
- 1884906
- Report Number(s):
- SAND2022-11350; 709264
- Country of Publication:
- United States
- Language:
- English
Similar Records
Software verification and validation plan for the GWSCREEN code
Formal verification and validation of the safety-critical software in a digital reactor protection system
Validation of real-time software for nuclear-plant-safety applications. Final report
Technical Report
·
Sat May 01 00:00:00 EDT 1993
·
OSTI ID:10194046
Formal verification and validation of the safety-critical software in a digital reactor protection system
Conference
·
Sat Jul 01 00:00:00 EDT 2006
·
OSTI ID:22030081
Validation of real-time software for nuclear-plant-safety applications. Final report
Technical Report
·
Sun Oct 31 23:00:00 EST 1982
·
OSTI ID:6669496