Modular Medical Device Software Architecture for Independent Component Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current medical devices face compatibility issues due to different software versions and rigid software architectures that inhibit development pace and increase maintenance costs, limiting flexibility and requiring changes to all software components when one component is modified.

Innovation Solution

A modular software architecture with independently running components that can be modified without recompiling, featuring reusable assets like a component manager, capability registry, configuration manager, workflow manager, virtual operating system, and message manager, enabling communication between medical devices and central units, and allowing for separate interfaces and internal operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a rigid software architecture is used where changes to one component require changes to all components, then system consistency is maintained, but development pace is inhibited and maintenance costs increase

Engineering Contradiction:
Improvesoftware flexibilityVSAvoidsoftware architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The software architecture is divided into independent, modular components that can be developed, modified, and maintained separately. Each component encapsulates specific functionality and can be updated without affecting other components, enabling parallel development and reducing maintenance overhead while maintaining system consistency through defined interfaces.

Inventive Principle:
Principle #1Segmentation

2Productivity

If software components are tightly coupled and cannot be reused, then system integration is simplified, but development efficiency decreases and maintenance costs increase

Engineering Contradiction:
Improvedevelopment efficiencyVSAvoidsoftware maintenance ease
Core Design Contradiction:
ProductivityVSEase of manufacture

Solution Approach 1:

Software components are designed with universal interfaces and standardized communication protocols that enable them to be reused across different applications and contexts. This modularity allows the same component to serve multiple functions and be deployed in various configurations, improving development efficiency through code reuse while simplifying maintenance through standardized structures.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Adaptability or versatility

If different software versions are used across devices, then device functionality can be optimized independently, but compatibility issues arise between devices and central monitoring units

Engineering Contradiction:
Improvedevice independenceVSAvoidcommunication compatibility
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

A standardized communication interface and protocol layer is introduced as an intermediary between software components of different versions and the central monitoring unit. This mediator ensures compatible data exchange and communication regardless of the specific software version or implementation details, allowing devices to maintain independent functionality while ensuring reliable interoperability through standardized interfaces.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10915315B2Medical device, system, and software architecture for monitoring low acuity vitals
Publication Date: 2021.02.09 WELCH ALLYN INC
  • US10915315B2 patent drawing
  • US10915315B2 patent drawing
  • US10915315B2 patent drawing

AI summary

A medical device including a non-transitory storage device storing a plurality of modular software components programmed to provide medical device functionality is disclosed. The software components can be configured to run independently as a daemon, to be modified without recompiling unchanged software components and to communicate to each other through a software component. A system including a central unit configured to communicate with a medical device is also disclosed. A medical device software architecture stored on a non-transitory, computer readable storage medium including a plurality of modular software components programmed to provide medical device functionality is also disclosed.