Skip to content

Latest commit

 

History

History
75 lines (54 loc) · 3.1 KB

File metadata and controls

75 lines (54 loc) · 3.1 KB

Treat Requirements Like Code (TRLC)

TRLC is a domain-specific language developed at BMW for writing (and linking) requirements with meta-data.

The repository contains:

The implementation is not very fast, but designed to be pedantically correct in following the language definition. The tools also include a powerful static analysis tool to find issues with types and user-defined check rules.

The Python implementation can be used for several purposes:

  • It can be used to validate other TRLC implementations.

  • It can be used to validate a body of requirements (e.g. a CI check that all requirements are well formed)

  • The API can be used to write other tools based on TRLC (for example a tool to render the requirements in HTML, a tool to diff requirements or perform an impact analysis, or a tool to perform software traceability, etc.)

Documentation

For normal users

For advanced users

For TRLC developers

Tools Available

  • TRLC_RST: Convert TRLC Requirements for Sphinx Build
  • Converters: Multiple converters from TRLC to other file formats. The tool suite is maintained by NewTec GmbH.

Dependencies

Run-time

  • 3.8 <= Python3 <= 3.14
  • PyVCG
  • PyPI CVC5(GNU/Linux only) (required when using the --verify option)

Acknowledgements

Special thanks to Florian Schanda for his many valuable contributions to this repository.