Manage requirements and traceability

For engineers who keep requirements, specifications and tests as text next to their code, and want them typed, linked and checked.

After a short start, the route follows the five steps of engineering along the V-model: define, implement, verify, iterate and prove.

Get started

  1. What is ubCode? explains what ubCode is and where you use it.

  2. Installation gets you the VS Code extension or the ubc CLI, which also serves any other editor.

  3. Quickstart scaffolds a project that already has needs in it.

  4. Key concepts introduces the needs model: types, fields and links.

  5. Needs tutorial builds a traced model step by step.

Define

Requirements, specifications and tests as typed needs, linked along the V-model.

  1. Writing needs and Need views give the syntax of needs and their views, in reStructuredText and MyST; the essentials tour shows them at a glance.

  2. Schema validation makes your ontology enforceable.

  3. Variant builds keeps one model for several product variants, and ubc diff shows how the needs of two variants differ.

Implement

The code that realises the requirements, traced back to them.

  1. Tracing source code with Codelinks traces markers in your source code comments into the same graph.

Verify

Test results traced to what they verify, and every pull request checked.

  1. Test reports: the directives turns JUnit-style XML test reports into needs in the same graph.

  2. Linting on the command line runs ubc check, which reports the project-wide diagnostics the editor shows.

  3. Using ubc in CI/CD runs ubc in CI to gate every pull request.

Iterate

A change absorbed without breaking the links: see what it affects before you merge it.

  1. Diff & impact analysis compares two states of a project, such as two Git branches, and with --impact follows the links from each changed need to the needs it may affect.

Prove

The evidence for a release or an audit, built from the same sources.

  1. Writing reports renders a self-contained HTML report from your own template, to attach to a release or archive for an audit.

  2. Building a static HTML site and Building a PDF build a site and one PDF from the same sources; Publish documentation is the whole route.

Next steps

Use it at work. ubCode is free for open-source projects, and a private project needs a commercial license. Request a free enterprise trial to evaluate it on your own private project.