The 45-Minute Requirements 'Review' at MediCore
MediCore builds infusion-pump firmware under IEC 62304. Its 'requirements review' is a 45-minute meeting where the author presents a 60-page software requirements specification slide by slide to three engineers who received it that morning. Findings are called out aloud; the author writes the minutes, which record 'no major issues'. Separately the team runs a static analysis tool on every build: it reports 1,400 findings, 900 of them 'line exceeds 120 characters' or naming-convention breaches, plus 60 possible null-pointer dereferences in the dose-calculation module. Developers have disabled every rule that produced an argument, and nobody triages the output. A notified-body audit is in eight weeks and requires documented review evidence.
1. What review type is actually taking place, what is wrong with it, and what would you put in place instead?
Read the worked answer
This is a walkthrough in form - author-led, presented to an audience, no individual preparation, primarily knowledge transfer - while the organisation believes, and the regulator expects, that a formal technical review or inspection is happening.
Defects, mapped to the review process:
- No individual preparation. Preparation is where most defects are actually found. Material issued the same morning guarantees the meeting becomes a presentation.
- Author leads and scribes. Findings are lost, filtered and softened; there is no independent record.
- Unrealistic rate. 60 pages in 45 minutes is about 45 seconds per page.
- No defined roles or entry/exit criteria, no checklist, no follow-up on actions.
- No written record of findings, so there is no audit evidence.
What to put in place: a formal review with a moderator/review leader, author, scribe and reviewers; material circulated 2–3 days ahead with a checklist; individual preparation with findings logged; the meeting used only to discuss, classify and agree actions; findings recorded in a tracked log with owner, status and closure date; explicit entry and exit criteria. For a regulated product, consider inspection for the dose-calculation requirements. That log is also the audit evidence - 'no major issues' in minutes written by the author is not.
2. How would you deal with the static analysis output - 1,400 findings, of which 900 are style and 60 are potential null-pointer dereferences?
Read the worked answer
The tool is producing signal buried in noise, and the response so far - disabling rules that caused arguments - has removed coverage precisely where it matters.
Actions, in order:
- Triage by risk, not by count. The 60 null-pointer findings in dose calculation are safety-related and come first; a null dereference there can mean an over-infusion. Style findings are a coding-standard issue for the team, not a release blocker.
- Configure the rule set deliberately against the coding standard the product claims to follow, and measure false-positive rates per rule. A rule is disabled only with a documented justification and an approver - never because it caused a debate.
- Route findings into the defect/issue workflow so they have owners and status, and set a quality gate on new or changed code so the backlog stops growing.
- Report trends, not totals, to management and the auditor.
Also state the boundary clearly: static analysis finds certain defect classes (coding standard breaches, some data-flow and control-flow faults) but cannot find requirements defects, missing logic or usability problems - it complements reviews, it does not replace them.
3. The team says it has no time for reviews and will rely on the static analysis tool instead. How do you respond, and what do you review first?
Read the worked answer
Respond with the economics, not with process dogma. Defects found in a requirements review cost a fraction of the same defects found in system test or, worse, in the field - and a static analysis tool cannot see a wrong dose formula, a missing alarm condition, or an ambiguous requirement. For a medical device, a requirements defect is also the most expensive kind: the code can be perfectly written and still wrong.
Sequence for the eight weeks available, chosen by risk:
- Dose-calculation requirements and their safety-related parameters - highest harm potential, and where ambiguity is most likely.
- Architecture and interface design for the safety-related modules.
- The code of the dose-calculation module (review alongside the static analysis triage).
- Test plans and test cases for the safety-related functionality - reviewing tests finds gaps before execution does.
- Traceability records, which the notified body will ask for.
Be realistic: do not promise a full inspection of 60 pages plus everything else in eight weeks. Propose a risk-based schedule, start with the highest-harm items, and record what is out of scope so the decision is visible and owned.