Online / 5 & 6 February 2022


Subplot - documenting your criteria for success

Expressing argumentation in a validatable way

Believing a system is safe is not the same as knowing it meets all the criteria defined to demonstrate that safety. Too often is the argumentation around the safety of a system presented as a document for humans to agree on, which is disconnected from the mechanism of asserting compliance with that argumentation. Subplot is a tool for processing documents containing such argumentation along with verification scenarios which are both human and machine readable so that this disconnect can be resolved.

This talk introduces Subplot and describes the concept.

Software engineers usually understand requirements and testing against requirements. All too often though, those responsible for the safety of a system do not understand how to express requirements which can be understood by engineers, such that the system can be verified. This could be for a myriad reasons, but usually it is due to a gulf between those who are specifying how to determine that a system is safe, and those who are implementing the system.

Subplot demonstrates how stakeholders at all stages of system design and implementation can come together to maintain a document which describes the criteria which, if met, demonstrate compliance with the safety argumentation made about the system. This document can then be rendered as a PDF or some stand-alone HTML for presentation to non-engineer stakeholders for confirmation.

Subplot can also generate a test program, from such a document, that when run will perform all of the verification scenarios contained in the document and produce a final report.

While Subplot is fairly new software, still under active development, the concepts in Subplot are built on those explored in a decade-old previous project, by the same authors, which considered similar problems purely from a software engineering perspective, used a similar Gherkin-inspired language and Markdown input structure, and was used in a variety of projects for paying customers; proving the concept works.

Subplot is a refinement of this older implementation.


Daniel Silverstone