← All modules
Module 2

Functionality Forensics

Intermediate30 to 45 min

Operationalising the “easily verifiable” test, separating configurable from adaptive logic, and seeing through multi-week lookback windows that look more sophisticated than they are.

Common issues: Distinguishing Category D from Category F, especially for rule-based algorithms.

Progress: 0 of 4 sections complete0%

Gate two: from medical purpose to sufficient functionality

Module 1 established gate one: whether the product has a medical purpose. This module is gate two: whether the software has sufficient functionality to be a medical device, meaning it does something with the information it handles rather than merely storing, carrying, or displaying it.

The MHRA's DMHT guidance organises functionality into categories A to G, running from passive provision and simple storage or display of information at the bottom, through transparent rule-based outputs in the middle, to adaptive, personalised, and machine-learned outputs at the top. The further up the ladder a function sits, the harder it is to keep out of SaMD scope and the higher its likely classification.

In practice, almost every contested case turns on one boundary: Category D against Category F, transparent rules against adaptive logic. That boundary is this module's subject.

The full category table is in the source below; what the guidance does not give you is a way to apply it to a real product, which is what follows.

Read the source
MHRA guidance on Digital Mental Health Technology

The primary source. Section 7 sets out the functionality categories A to G with the MHRA's own examples.

Open MHRA guidance

Configurable vs adaptive

The distinction matters for classification but is frequently misapplied because the boundary between fixed rules and adaptive logic is not always visible in a product specification. Configurable logic stays in the lower categories; adaptive logic does not.

Configurable (≤ Category D)Adaptive (Category E / F / G)
InputsUser sets preferences onceProduct reacts to user's historical data
RulesFixed rules applied to preferencesRules change based on individual response patterns
OutputDiffers by preference, not by learningDiffers between users with identical current inputs but different histories

The “easily verifiable” test (Category D), operationalised

The MHRA DMHT guidance describes Category D outputs as those where the underlying logic is transparent enough that a typical user can verify the result independently. The guidance does not define what verification requires in practice.

The test below operationalises it in two layers, and the distinction between them matters. The first layer describes what the function is, and decides whether Category D is available at all.

The second describes what you can prove, and decides whether a Category D claim survives a reviewer. A function's category does not change with the state of the manufacturer's evidence file: an undefended claim is not the same as a wrong one.

The numeric thresholds are F&G Strategy's working definitions, calibrated to what a clinically unsupervised user can reasonably be expected to do; they are not published MHRA thresholds, and they are screens, not cliff edges.

Layer 1 — Category conditions: what the function is

Fail any of these and the function cannot be Category D. Where it lands instead depends on what the logic actually is: complex but fixed logic is not adaptive, and adaptive logic is assessed against the higher categories.

  • The formula or rule is fully disclosed to the user in plain language.
  • The logic is fixed and deterministic: no learning, no personalisation, no change with the user's history.
  • A member of the intended use population, including its least capable foreseeable subgroups, can independently reproduce the output: as a working screen, in under 2 minutes without a calculator, or under 5 minutes with one.
Layer 2 — Evidence conditions: what you can defend

Fail these and the Category D claim is undefended, and should expect challenge from a reviewer, a deploying organisation, or a competitor. That is a different finding from the function not being Category D.

  • Usability testing with users representative of the intended use population, not a convenience sample (n ≥ 12 as a working minimum).
  • Users demonstrated they can detect incorrect outputs (a detection rate above 90% is the working screen; at small samples treat it as a signal, not a statistic).
  • Testing conditions matched the intended use environment.

The multi-week lookback trap

Multi-week lookback windows are one of the most common misclassification triggers in DMHT products because developers and advisors assume temporal analysis automatically implies adaptive logic, when the determining factor is what the logic does with the data window, not how large the window is. “Analyses 4 weeks of data” does not automatically imply Category F.

The question is what the logic does with that window.

Still Category D if
  • Logic is transparent threshold rules.
  • Each rule is independently verifiable.
  • No weighting, no composite scoring, no pattern recognition.
  • Example: “If average sleep < 7 h for 3 of the past 4 weeks → recommend X.”
Category F if
  • Weighted scoring where the weights are learned or personalised. Fixed, disclosed weights are complex but deterministic; what makes a function adaptive is weights that move with the user.
  • Trend analysis (is the trajectory improving or worsening?).
  • Pattern recognition (the user sleeps worse on Mondays).
  • Personalised thresholds (what counts as “good sleep” for this user).

Exercises

Form your own view first. Reveal the reference answer to compare reasoning.

Exercise 1 — PHQ-9 variants

A product offers five different PHQ-9 implementations. Classify each by functionality category, assuming any rule is disclosed and tested unless otherwise stated.

1) Displays questions, user answers, shows total score.
2) Displays score plus a traffic light (0–4 green, 5–9 yellow, 10+ red).
3) Displays score and flags an increase of >5 points since last time.
4) Displays score and uses an ML model to predict next week's score.
Pick an option for each question to compare against the reference answer.

Exercise 2 — The recommendation engine

A product recommends CBT modules. Classify each version.

V1: Score 15 → fixed mapping rule (10–20 → Module 3). Mapping disclosed to user.
V2: Score 15 → if user already completed Module 3, recommend Module 5 (rule with state).
V3: Engagement patterns + collaborative filtering across similar users.
Pick an option for each question to compare against the reference answer.

Educational resource. Not formal regulatory or legal advice.