* Pre-conditions: Replication of embedded systems (CardioWheel and CardioGW) and implement code base using formal framework MARS; System is running, requesting identification tasks when ECG is detected and monitoring its related cognitive state. * Inputs: Simulated/real-time ECG. * Expected outcome: System evaluates tasks in correct order.
Test Cases
* Pre-conditions: Replication of embedded systems (CardioWheel and CardioGW) and implement code base using formal framework MARS.; System is running, requesting identification tasks when ECG is detected and monitoring its related cognitive state. * Inputs: Simulated/real-time ECG. * Expected outcome: Model representations and stored features are cryptographically secured. Data received and produced at transmission endpoints is encrypted and so impossible to interpret by third parties.
* Pre-conditions: ECG generator; CardioWheel outputs are in debug mode and are directly retrievable. * Inputs: ECG generator feeds CardioWheel with signal, varying its base morphology and impedance. * Expected outcomes: CardioWheel’s transmitted packets, after being decrypted, contain more than 99.99% of expected samples, and samples are sampled at fixed sampling frequency.
* Pre-conditions: Function generator; CardioWheel outputs are in debug mode and are directly retrievable. * Inputs: Signal generator frequency sweep. * Expected outcomes: Frequency response of CardioWheel has less than X dB RMSE compared to the ideal case.
* Pre-conditions: Driving Simulation station equipped with CardioWheel ecosystem. * Inputs/steps: take one hand or both from the steering wheel and place them back again. * Expected outcomes: Classification tasks are stopped when contact is lost; and resumed after correct hand placement is detected.
* Pre-conditions: Driving Simulation station equipped with CardioWheel ecosystem. * Inputs/steps: Inject multiple ECG profiles with different impedance and added noise. * Expected outcomes: Biometric models hold accuracy above X% when the added noise and impedance values are up to Y and Z respectively.
* Pre-conditions: Gateway filesystem is accessed after driver identities are learnt and stored. * Inputs/steps: Cancel stored templates and try to authenticate using stolen template. * Expected outcomes: Authentication fails as templates have been cancelled and are no longer valid.
* Pre-conditions: Driving Simulation station equipped with CardioWheel ecosystem; State recognition models have not seen subject to be tested. * Inputs/steps: Perform trip with human user, outputting state recognition classifications and collecting self-reported state from user. * Expected outcomes: Performance reduction is less than X% of baseline performance for each model.
* Pre-conditions: Driving Simulation station equipped with CardioWheel ecosystem. * Inputs/steps: Perform trip with human user, outputting state recognition classifications and collecting self-reported state from user. * Expected outcomes: There were less then X% false negative classification outputs.
* Pre-conditions: Access CardioGW-cloud communication channel. * Inputs/steps: Send to gateway an altered data package, as a man-in-middle attack. * Expected outcomes: Received data package is ignored because it does not meet integrity conditions.
* Pre-conditions: Access CardioGW-cloud communication channel. * Inputs/steps: Sniff data being transmitted. * Expected outcomes: retrieved data is useless, it is encrypted end-to-end and cannot be recovered by third parties.
* Pre-conditions: Access CardioWheel - CardioGW communication channel. * Inputs/steps: Sniff data being transmitted. * Expected outcomes: retrieved data is useless, it is encrypted end-to-end and cannot be recovered by third parties.
* Pre-conditions: Firmware/Software update package is prepared and published outside of the authorized platforms. * Inputs/steps: push over-the-air CardioGW update using the unsafe package. * Expected outcomes: Update is ignored because it comes from an unauthorized source.