Documents Software Detailed Design

Software Detailed Design

1 Overview

This document refines the modules of the Software Architecture Document (sad) into software units. Every unit links up to the architecture item of the module it belongs to, completing the traceability chain srs to sad to sdd of this demo project.

2 Measurement Module Units

# UL DL COV DR
SDD-001 The SensorDriver unit shall read the raw SpO2 and ECG signals from the sensor hardware over the serial interface, time-stamp every reading, and reject readings that fail the plausibility range check. SAD-010
SDD-002 The SampleProcessor unit shall filter the accepted readings, derive one heart-rate and one SpO2 sample per second, and publish the pair on the internal sample bus. SAD-010

3 Display Module Units

# UL DL COV DR
SDD-003 The VitalsView unit shall subscribe to the sample bus and render the numeric heart-rate and SpO2 values, redrawing within 200 milliseconds after a new sample arrives. SAD-011
SDD-004 The AlarmBanner unit shall render the active alarm state received from the AlarmStateMachine unit as a colored banner with the alarm text on top of every screen. SAD-011

4 Alarm Module Units

# UL DL COV DR
SDD-005 The LimitEvaluator unit shall compare every published sample against the configured alarm limits and shall emit a limit-violation event no later than the next evaluation cycle. SAD-012
SDD-006 The AlarmStateMachine unit shall manage the alarm life cycle (inactive, active, paused-audio) and shall drive the visual annunciator and the audio amplifier, enforcing the 60-second upper bound of the audio pause. SAD-012

5 Trend Storage Module Units

# UL DL COV DR
SDD-007 The TrendRingBuffer unit shall append every published sample to a circular file in non-volatile memory sized for 72 hours of data, and shall recover the write position from the file itself after a power loss. SAD-013

6 Connectivity Module Units

# UL DL COV DR
SDD-008 The NurseStationClient unit shall serialize samples and alarm events into export messages and deliver them to the nurse station with delivery confirmation. SAD-014
SDD-009 The OfflineQueue unit shall buffer undelivered export messages while the network is unavailable and shall drain the queue in order after the connection returns, without back-pressure on the sample bus. SAD-014

7 System Supervisor Units

# UL DL COV DR
SDD-010 The SelfTestSequencer unit shall execute the start-up self-test steps (memory check, sensor presence, annunciator check) and shall release the monitoring mode only when every step has passed. SAD-015
SDD-011 The CoreWatchdog unit shall expect a liveness token from the Measurement Module and the Alarm Module every second and shall raise a device fault when a token is missed twice in a row. SAD-015

8 Configuration and Audit Module Units

# UL DL COV DR
SDD-012 The AccessController unit shall verify the clinician credentials against the local user store before unlocking the alarm-limit editor, and shall lock it again after 60 seconds of inactivity. SAD-016
SDD-013 The AuditLogger unit shall append alarm events, settings changes, and detected faults as tamper-evident entries to the persistent event log. SAD-016

9 Document History

Revision Description of changes Date
A Initial version 2026-07-10