reqT - Requirements Engineering Tool

reqT is an open source requirements engineering tool for software developers based on reqT-lang, a flexible requirements modelling language with essential requirements engineering concepts, giving structure to natural language requirements, while enabling analysis, visualization and automation.

The reqT-lang syntax is a subset of Markdown using bullet lists with indentation and special keywords to express textual requirements models by connecting entities, such as a Feature, with relations, such as has, to attributes, such as Spec, as in the example below:

* Feature: helloWorld has 
  * Spec: Print a nice greeting.
  * Why: First step to get started.

See the Quickref to explore reqT keywords covering essential requirements engineering concepts.

Maintainer of reqT: Prof. Björn Regnell. Used at Lund University in this course.

Download

Latest version: 4.6.2   All versions:   reqT   reqT-lang

Latest reqT.jar from: tinyurl.com/get-reqT

curl -L https://tinyurl.com/get-reqT -o reqT.jar

Getting started

$ java -jar reqT.jar repl

Welcome to reqT 4.5.6 https://reqT.github.io
Type 'edit' to open a new reqT window.
Type ':quit' or press Ctrl+D to exit.
Re-run with -h for help on main program args

scala repl -S 3.6.4-RC1 --jar reqT.jar -- --repl-init-script "import reqt.*"
Welcome to Scala 3.6.4-RC1 (17.0.13, Java OpenJDK 64-Bit Server VM).
Type in expressions for evaluation. Or try :help.

scala> val helloModel = m"* Feature: helloWorld has Spec: print greeting"
val helloModel: reqt.Model = 
  Model(Rel(Ent(Feature,helloWorld),Has,
    Model(StrAttr(Spec,print greeting))))

scala> 
//> using scala 3.6.3
//> using dep "reqt:reqt:4.4.1,url=https://github.com/reqT/reqT/releases/download/v4.4.1/reqT-4.4.1.jar"

import reqt.*

val m = Model(
    Feature("helloWorld").has(
      Spec("Print a nice greeting."),
      Why("First step to get started."),
    )
  )

@main def hello = 
  println(m.toMarkdown)

Why reqT?

Using the reqT App

reqT Main Window

Using reqT with Scala

Publications