Skip to content

Module Development Guidance

Awaiting source text

This section exists in the source handbook as a heading with six empty sub-headings beneath it. None has any text. Nothing has been written here in its place.

The six are: What makes a module a module, Minimum required elements of a module, How to create a module using available tools and models, Input and output schema expectations, Interoperability and dependency principles, and Guidance for extending the DSP with additional modules.

Why this section matters

This is the section that would let an organisation add to the DSP rather than only use it. Given that the handbook presents modules as usable standalone and the framework as extensible, its absence is a real gap rather than a cosmetic one.

What is known so far

Three pieces of the answer exist elsewhere in the handbook and can be read now.

What makes a module a module

Definition of a module gives the three requirements: a module is a set of interconnected tools, models or methods with specific objectives, specific inputs and outputs, and clearly defined information flows across the DSP.

Input and output schema expectations

There is no generic schema in the source. There are, however, concrete output schemas for each of the technical processes, which show the form the generic one would have to take. See Input & Output.

Interoperability and dependency principles

Every documented module carries its own Dependencies on other modules and processes section, and those sections together describe the interoperability pattern in practice:

ModuleIts dependencies
Asset RegistrySupports all six others, and receives information back from each
Asset PerformanceTwo-way with four modules
ResilienceSeven relationships, including one explicit non-dependency
Risk AssessmentEight upstream dependencies

A useful worked pattern to follow is the Asset Registry and Asset Performance pair. One generates information and does not store it; the other stores it and does not generate it. The boundary between them is stated in both directions, which is exactly what a new module would need to do.

What this page should cover

A specification a third party could build against: the minimum elements a module must have, the schema its inputs and outputs must satisfy, the dependency declarations it must make, and the process for proposing an addition to the DSP.