title: [SE in Practice] MVM Mechanical Ventilator author: tinsir888 date: 2025/11/14 katex: true tags: - 笔记 - 算法 - 软件工程 categories: - InformaticaGSSI
Context
COVID 19 Pandemic
People required for medical machine: a mechanical ventilator.
International collaboration
Software Certification
Mandatory to guarantee system reliability
Reengineering process: due to malfunctions/errors in the implementation
Continuous Integration
MVM Introduction
Electro-mechanical ventilator
Support for patients that are in ICU (Intensive Care Unit)
Require source of compressed oxygen and medical air
Features
Reliable. Easy to operate. Fail-safe. Produced quickly. Produced with readily-available parts.
Software Critical Systems
- Risk management
- Quality management
- Software Engineering
International standards: IEC 62304
- Completeness: Requirements under control, everything tested.
- Traceability: Documents linked, understandable for external.
- Consistency
- Documentation: well planned and archived
Hazard Analysis
Classify the risk into 3 levels.
Depicted by a flow chart.
Development Process
Combine V-model with Agile
Software Requirements
Input
Initially:
- User manual
- Implemented code (GUI, controller...)
- Related paper
- Documents on mechanical ventilation
Iteratively:
- System Requirements ST
- Software Requirements Specification SRS
- Software Architectural Design SAD
- Security Assessment and Hazard and Operability Analysis HAZOP
Software Requirements Specification is Useful
It aligns requirements to code
- Solve some inconsistencies...
It helps to discover that the MVM was vulnerable to faults.
It helps to suggest adding a supervisor and requiring a change of electronic board to small micro-controller
Architecture and Design
The software architecture is designed to comply with the Software Requirements.
Without a well-defined architecture (as for the prototype), it was not clear how software.
The architecture promotes decomposition to enable different teams to work in parallel on different parts of the system
Implementation and Testing
Continuous Integration
Testing
Unit testing
Integration testing
Validation testing