Requirements

The requirements tracer keeps the requirements of a product, its design, its tests and its risks as documents of numbered items, each in a tree of headings and items with a title, Markdown text, a status and attributes of your own, such as a priority or the method of a test. Items are joined across documents by typed links - a test verifies a requirement, a piece of design satisfies it, a requirement mitigates a risk - made from the item or by ticking cells in a traceability matrix. Rules of your own say which links every item needs, and the tracer shows, item by item, what meets them and what nothing yet covers.

When a requirement is reworded, every link to it goes suspect until someone has looked at the test or the design at the other end, and the item shows everything the change reaches, directly or through other items. Baselines record the project as it stood, to compare with now or go back to. The project is kept as JSON; a document goes out and comes back as CSV, the whole project as an Excel workbook, and a PDF report holds the documents, the coverage, the suspect links and the changes since a baseline. It is for the person who has to show that each requirement of a product is designed, tested and still agreed.

Try it with your own requirements in confidence: projects, CSV files and workbooks are opened by your browser, on your device. Nothing is uploaded, no copy reaches us or anyone else, and nothing is kept once you close this tab.

A garden irrigation controller, traced

The Runnel 6 is a made-up six-zone garden irrigation controller from an invented maker, Larchmere Garden Controls: eleven system requirements under four headings, eight items of design, eleven tests and six risks, every one of them written by this page. Add the coverage rules, find the requirements nothing verifies, link the rain-delay test that was written but never linked, read the coverage again and take the project away as CSV, an Excel workbook and a PDF report.

Show the tree Add the coverage rules Find what nothing verifies Link the rain-delay test in the matrix Read the coverage again The requirements as CSV Download the Excel workbook Download the PDF report
Keyboard: in the tree, Up and Down move between items, Right and Left open and close a heading, Alt with an arrow moves or indents the item, Enter edits its title, Insert adds an item and Delete removes one. In the matrix, the arrow keys move between cells and Enter or Space adds or takes away a link; Ctrl+Z undoes and Ctrl+Y redoes.

A requirement reworded after the design review

At the Runnel 6's second design review - made up, like the controller - the rain-sensor requirement was tightened: the valves must now close within one second, not two, and stay closed until the sensor has been dry for half an hour. Record the project as the review found it, reword the requirement and watch its links go suspect, see everything the change reaches, add the design it needs, compare with the baseline, mark the links reviewed, and go back to the baseline and undo it again.

Make the review's baseline Reword the rain-sensor requirement The reach of the change Add the dry timer to the design Compare with the baseline Mark the links reviewed Go back to the baseline, then undo Download the change report
Keyboard: the views are buttons in the toolbar; in Changes, each suspect link has a button to mark it reviewed and each key is a button that shows its item in the tree. Ctrl+Z undoes any change, going back to a baseline too.
Get the code
<script src="/assets/bmx-components.min.js"></script>

<bmx-requirements-tracer id="rc" label="Runnel 6 after the design review" file-name="runnel-6-review-2" user="Mira Haldane" style="inline-size: 100%; --bmx-requirements-tracer-height: 32rem"></bmx-requirements-tracer>