Software:FRET (Software)

From HandWiki
FRET
Ghghbhbh.png
FRET dashboard
Developer(s)
  • Milan Bhandari
  • David Bushnell
  • Tanja de Jong
  • Dimitra Giannakopoulou
  • Kelly Ho
  • George (Yorgo) Karamanolis
  • David Kooi
  • Jessica Phelan
  • Julian Rhein
  • Daniel Riley
  • Nija Shi
[1]
Stable release
3.1 / December 15, 2023; 1 month ago (2023-12-15)[2]
Written inJavaScript
Operating systemWindows, Linux, OS X
TypeFormalizing
LicenseNASA Open Source Agreement version 1.3
Websitehttps://github.com/NASA-SW-VnV/fret

Formal Requirements Elicitation Tool (FRET) is a requirements engineering tool. It was developed by the NASA Ames Research Center to specify complex safety-critical systems whose failure could result in loss of life, significant property damage, or environmental harm.[3] FRET is open-source software released under the NASA Open Source Agreement.[4]

Background

The behavior and features of a system are specified by its requirements. Most requirements are written in natural languages such as English, which is easy for analysts and stakeholders to understand but cannot be checked for errors and omissions using formal methods. On the other hand, formal notations such as VDM and Z, which are precise and unambiguous, tend to be difficult for analysts and stakeholders to understand.[4][5]

As a compromise, FRET requirements are created in a controlled natural language called FRETish and converted into temporal logic.[4][5]

Uses

FRETish requirements can correspond to variables in external code or models. FRET generates and verifies formal equivalents for each statement, allowing requirements to be imported or exported in a variety of formats including JSON.[4][6]

In FRET, processes are simulated and analyzed by interfacing with external modeling and analysis tools. The supported external tools include COCO simulator, Simulink Design, Verifier, NuSMV, and Copilot.[4][6]

See also

References