DE102020206861A1 - Computerimplementiertes Laufzeitsystem, Netzwerk zur Verarbeitung medizinischer Informationen, entsprechendes Verfahren und entsprechendes Computerprogrammprodukt - Google Patents

Computerimplementiertes Laufzeitsystem, Netzwerk zur Verarbeitung medizinischer Informationen, entsprechendes Verfahren und entsprechendes Computerprogrammprodukt Download PDF

Info

Publication number
DE102020206861A1
DE102020206861A1 DE102020206861.5A DE102020206861A DE102020206861A1 DE 102020206861 A1 DE102020206861 A1 DE 102020206861A1 DE 102020206861 A DE102020206861 A DE 102020206861A DE 102020206861 A1 DE102020206861 A1 DE 102020206861A1
Authority
DE
Germany
Prior art keywords
use case
application
focus
focus machine
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102020206861.5A
Other languages
English (en)
Inventor
Lutz Dominick
Vladyslav Ukis
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens Healthineers Ag De
Original Assignee
Siemens Healthcare GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Healthcare GmbH filed Critical Siemens Healthcare GmbH
Priority to DE102020206861.5A priority Critical patent/DE102020206861A1/de
Priority to US17/330,608 priority patent/US11868767B2/en
Priority to CN202110615677.6A priority patent/CN113821269A/zh
Publication of DE102020206861A1 publication Critical patent/DE102020206861A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • G06F11/143Reconfiguring to eliminate the error with loss of software functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/77Software metrics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1492Generic software techniques for error detection or fault masking by run-time replication performed by the application software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2046Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share persistent storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/40ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management of medical equipment or devices, e.g. scheduling maintenance or upgrades
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/008Reliability or availability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0859Retrieval of network configuration; Tracking network configuration history by keeping history of different configuration generations or by rolling back to previous configuration versions
    • H04L41/0863Retrieval of network configuration; Tracking network configuration history by keeping history of different configuration generations or by rolling back to previous configuration versions by rolling back to previous configuration versions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Primary Health Care (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Epidemiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Die vorliegende Erfindung betrifft ein computerimplementiertes Laufzeitsystem, das eine kontinuierliche Produktausführungs-Laufzeitumgebung für mindestens eine Anwendung über ein Netzwerk zur Verarbeitung medizinischer Informationen bereitstellt, wobei das Netzwerk eine Vielzahl von Produktivgeräten umfasst, die für die Verarbeitung medizinischer Informationen in der Laufzeitumgebung ausgebildet sind. Zudem weist das Laufzeitsystem eine Fokusmaschine und ein Aktionsplan-Repository auf, die die zur Bereitstellung einer autonomen Laufzeitumgebung dazu ausgebildet sind: einen laufenden Anwendungsfall einer Anwendung auf mindestens einem Produktivgerät mit der Fokusmaschine zu überwachen, eine Zuständigkeit für den laufenden Anwendungsfall der Anwendung durch die Fokusmaschine zu übernehmen, falls ein Fehlerstatus für den überwachten laufenden Anwendungsfall erkannt wird, den erkannten Fehlerstatus des laufenden Anwendungsfalls durch die Fokusmaschine zu analysieren, auf der Grundlage des analysierten Fehlerstatus mindestens eine geeignete Substitutionsaktion aus einer Vielzahl von im Aktionsplan-Repository hinterlegten Aktionen zu abzurufen, und durch die Fokusmaschine den laufenden Anwendungsfall oder Teile davon durch Anwenden der abgerufenen Substitutionsaktionen auf die Anwendung zu beenden und/oder zu vervollständigen. Die vorliegende Erfindung bezieht sich ferner auf ein entsprechendes Verfahren, ein entsprechendes Netzwerk zur Verarbeitung medizinischer Informationen und ein entsprechendes Computerprogrammprodukt.

Description

  • Die vorliegende Erfindung betrifft ein computerimplementiertes Laufzeitsystem. Die vorliegende Erfindung bezieht sich ferner auf ein Netzwerk zur Verarbeitung medizinischer Informationen, ein Verfahren und ein Computerprogrammprodukt.
  • Die vorliegende Erfindung betrifft den Bereich medizinischer Netzwerke oder Netzwerk zur Verarbeitung medizinischer Informationen, wie z.B. in EP 3 457 408 A1 und EP 3 567 600 A1 beschrieben.
  • Solche Netzwerke umfassen eine Vielzahl von Systemen, einschließlich Geräten, Produkte, Plattformen und Anwendungen (auch als Software, Computerprogramme oder Computerprogrammprodukte bezeichnet). Die Geräte können medizinische Geräte (z.B. Bildarchivierungs- und Kommunikationssysteme (PACS), Ultraschallsysteme usw.), Benutzerterminals für medizinisches Fachpersonal und Patienten, spezialisierte Benutzerterminals (z.B. Pflegepersonal-Rufsysteme), Server und medizinische Datenspeicher umfassen. Die Plattformen erleichtern den Geräten und Anwendungen den Zugriff auf Dienste und Repositories innerhalb oder außerhalb des Netzwerks. Anwendungen arbeiten auf oder in Verbindung mit Geräten bzw. sind über diese zugänglich. Anwendungen können umfassen: Kommunikationsanwendungen, welche die Kommunikation zwischen den Geräten im Netzwerk erleichtern, medizinische Anwendungen, die für die Verarbeitung medizinischer Informationen ausgebildet sind, Anwendungen, die für die Verwaltung von Patentinformationen ausgebildet sind, Anwendungen für die Verwaltung von Wissen in einer Gesundheitsumgebung, Anwendungen, die für die Verwaltung von Krankenakten ausgebildet sind.
  • Solche modernen medizinischen Anwendungsumgebungen sind komplex und verwenden eine Vielzahl unterschiedlicher Geräte und Produkte verschiedener Hersteller in einer heterogenen Landschaft und Infrastruktur mit heterogenen Funktionen und Anwendungen und oft in nicht standardisierter Weise. Insbesondere ist in der Architektur moderner Medizintechnikeinrichtungen und -produkte ein Trend in Richtung einer wachsenden Zahl vergleichsweise kleinteiliger Systeme, Anwendungen und Dienste zu beobachten, die miteinander verbunden sind und miteinander interagieren, anstatt nur wenige vergleichbar komplexe Systeme oder isolierte Produkte zu verwenden.
  • In einer so heterogenen Architektur mit einer zunehmenden Anzahl von vergleichbar unabhängig betriebenen Systemen, Anwendungen und Diensten steigt die Wahrscheinlichkeit für unerwünschte Situationen und Systemfehler, sowohl für die verschiedenen Produkte und Geräte als auch für die Interaktion zwischen ihnen. Wenn z.B. eine Situation im Betrieb über einen sogenannten „Happy-Path“, also das gewünschte Systemverhalten hinausgeht, kann die Anwendung den entsprechenden Anwendungsfall nicht mehr verarbeiten. Als Folge davon bleibt die Anwendung stecken.
  • Benutzer, die einen schnellen Ausweg aus dieser Situation suchen, werden nach einem typischen Ansatz oft mit einem Fehlerdialog konfrontiert, oder noch schlimmer, mit einer Fehlermeldung mit Angabe einer Telefonnummer des Service-Helpdesks. Abgesehen davon, dass diese Remote-Service-Helpdesks oft nicht verfügbar sind, wenn sie benötigt werden, sind sie oft nicht produktiv, sodass der Benutzer oft nicht aus dieser Fehlersituation entkommen kann. Dies führt meist dazu, dass ein laufender Anwendungsfall neu gestartet werden muss, ohne die Garantie zu haben, dass die gleiche Fehlersituation nicht erneut auftritt. Oft sind die Arbeit und die Daten des unterbrochenen Anwendungsfalles nicht mehr wiederherstellbar.
  • Für Hintergrundaktivitäten sind Watch Dog-Mechanismen bekannt, die Low-Level-Aktionen wie das Starten, Neustarten oder Rebooten ausführen, sich jedoch weder mit Fehlervermeidung oder -korrektur noch mit einer geeigneten Fortsetzung des Anwendungsfalls befassen.
  • Vor diesem Hintergrund besteht eine Aufgabe der vorliegenden Erfindung darin, die Handhabung laufender Anwendungsfälle zu verbessern, die in ihrer Verarbeitung feststecken.
  • Diese Aufgabe wird erfindungsgemäß durch ein computerimplementiertes Laufzeitsystem mit den Merkmalen des Anspruchs 1 und/oder durch ein Netzwerk zur Verarbeitung medizinischer Informationen mit den Merkmalen des Anspruchs 10 und/oder durch ein Verfahren mit den Merkmalen des Anspruchs 12 und/oder durch ein Computerprogrammprodukt mit den Merkmalen des Anspruchs 13 gelöst.
  • Demnach wird Folgendes bereitgestellt:
    • - Ein Computer-implementiertes Laufzeitsystem, das eine kontinuierliche Objektausführungs-Laufzeitumgebung für mindestens eine Anwendung über ein Netzwerk zur Verarbeitung medizinischer Informationen bereitstellt, wobei das Netzwerk mehrere von Produktivgeräte aufweist, die für eine Verarbeitung medizinischer Informationen in der Laufzeitumgebung ausgebildet sind, und das Laufzeitsystem ferner eine Fokusmaschine und ein Aktionsplan-Repository umfasst, die zur Bereitstellung einer autonomen Laufzeitumgebung dazu ausgebildet sind, einen laufenden Anwendungsfall einer Anwendung auf mindestens einem Produktivgerät mit der Fokusmaschine zu überwachen, eine Zuständigkeit für den laufenden Anwendungsfall der Anwendung durch die Fokusmaschine für den Fall zu übernehmen, dass ein Fehlerstatus für den überwachten laufenden Anwendungsfall erkannt wird, den erkannten Fehlerstatus des laufenden Anwendungsfalls durch die Fokusmaschine zu analysieren, auf der Grundlage des analysierten Fehlerstatus mindestens eine geeignete Substitutionsaktion aus einer Vielzahl von im Aktionsplan-Repository hinterlegten Aktionen zu beschaffen, und den laufenden Anwendungsfall oder Teilen davon durch Anwendung der beschafften Substitutionsaktionen auf die Anwendung zu beenden und/oder zu vervollständigen durch die Fokusmaschine.
    • - Netzwerk zur Verarbeitung medizinischer Informationen mit mehreren Produktivgeräten, die von mehreren Benutzern bedienbar und für die Verarbeitung medizinischer Informationen ausgebildet sind, und mindestens einem Laufzeitsystem gemäß der vorliegenden Erfindung, wobei das Laufzeitsystem mindestens eine Schnittstelle für die Kopplung mit den mehreren Produktivgeräten aufweist und dazu ausgebildet ist, eine autonome Laufzeitumgebung für die mehreren Produktivgeräte bereitzustellen.
    • - Ein Computer-implementiertes Verfahren zur Bereitstellung einer kontinuierlichen Objektausführungs-Laufzeitumgebung für mindestens eine Anwendung mit den folgenden Schritten:
      • Bereitstellen eines Netzwerks zur Verarbeitung medizinischer Informationen, das eine Vielzahl von Produktivgeräten umfasst, die für die Verarbeitung medizinischer Informationen in der Laufzeitumgebung ausgebildet sind, Überwachen eines laufenden Anwendungsfalles auf mindestens einem Produktivgerät über eine Schnittstelle des Netzwerks, Übernahme einer Zuständigkeit für den laufenden Anwendungsfall der Anwendung durch eine extern bereitgestellte Fokusmaschine falls ein Fehlerstatus für den überwachten laufenden Anwendungsfall erkannt wird, Analysieren des erkannten Fehlerstatus des laufenden Anwendungsfalls durch die Fokusmaschine, Abrufen mindestens einer geeigneten Substitutionsaktion aus einer Vielzahl von Aktionen basierend auf dem analysierten Fehlerstatus des laufenden Anwendungsfalls; und Beenden und vorzugsweise Vervollständigen des laufenden Anwendungsfalles oder von Teilen davon durch die Fokusmaschine durch Anwenden der abgerufenen Substitutionsaktion auf die Anwendung.
    • - Ein Computerprogrammprodukt, das eine Reihe von Anweisungen umfasst, die, wenn sie von einem computergestützten Gerät ausgeführt werden, dazu führen, dass das computergestützte elektronische Gerät ein Verfahren gemäß der vorliegenden Erfindung durchführt.
  • Ein Schwerpunkt des erfindungsgemäßen Ansatzes liegt auf der Bereitstellung einer autonomen Umgebung zu Ausführung von Objekten, die Anwendungsfälle, Situationen, Vorfälle und dergleichen automatisiert und/oder autonom behandelt. Insbesondere werden Anwendungsfälle durch die Aufbewahrung von Betriebsdaten und Anwendungsfallkontexten gehandhabt, wobei speziellen Auswahlmöglichkeiten für anwendbare Maßnahmen und Entscheidungsautonomie vorgehsehen sind.
  • Die vorgeschlagene Lösung gemäß der vorliegenden Erfindung bietet eine autonome, vorzugsweise cloudbasierte, Laufzeitumgebung, die so konfiguriert ist, dass geeignete autonome Entscheidungen darüber getroffen werden, wann, ob und wie mit einem laufenden Anwendungsfall oder einer aktuellen Situation zur Laufzeit vorzugehen ist. Die autonome Laufzeitumgebung kann dabei bereits in Situationen aktiv werden, die in den laufenden oder installierten Systemen, Anwendungen und/oder Diensten nicht bekannt sind.
  • Die autonome Laufzeitumgebung sieht eine Verlagerung und Übergabe der Verantwortung eines fortlaufenden fehlerhaften Anwendungsfalles an eine extern angeordnete Fokusmaschine vor. Die Fokusmaschine des Laufzeitsystems setzt den laufenden fehlerhaften Anwendungsfalles dann anhand einer Reihe konfigurierbarer Aktionen fort. Im besten Fall vervollständigt die Fokusmaschine den fehlerhaften Anwendungsfall anstelle des ursprünglichen Hosts des Anwendungsfalls, d.h. z.B. anstelle des Produktivgeräts. Eine solche externe Ausführung des Anwendungsfalles ermöglicht die sichere Handhabung unproduktiver Situationen in denen der Anwendungsfall in der Verarbeitung feststeckt.
  • Für einen Anwender scheint wird der Anwendungsfall automatisch und autonom ohne weitere Benutzerinteraktion oder zusätzliche Informationen scheinbar ununterbrochen fortgesetzt. Zu diesem Zweck stellt die Anwendung die Notwendigkeit fest, einen aktuellen Ausführungspfad des fehlerhaften Anwendungsfalles durch einen alternativen Ausführungspfad zu ersetzen. Auf diese Weise wird ein fehlerhaftes (oder zumindest ein untypisches) Verhalten der App, Software oder des Programms durch Verwendung einer geeigneten, Anwendungsfall-kompatiblen Substitutionsaktion maskiert.
  • Bekannte Lösungen, wie sie im einleitenden Teil beschrieben werden, leisten weder eine solche Strukturierung der Funktionalität noch die Verteilung der Funktionalität wie in diesem neuartigen Ansatz. In bekannten Lösungen wird eine Anwendungsfallausführung als exklusive „Inside-Responsibility“ der entsprechenden Anwendung oder Dienstleistung behandelt. Der neuartige Ansatz nach der vorliegenden Erfindung sieht stattdessen eine technische Fokusmaschine vor, um diese Zuständigkeit für den fehlerhaften Anwendungsfall (oder Anwendungsfallschritt) auf ein anderes Programm außerhalb des Satzes laufender Programme zu verlagern. Weder die ursprüngliche Anwendung oder der Dienst noch der Fokusmaschine können von vornherein wissen, wann das Ersatzprogramm fällig ist und welches der Ersatzprogramme den erforderlichen nächsten Schritt im Anwendungsfall erfolgreich ausführt, was wiederum den Anwendungsfall mit oder sogar ohne die ursprüngliche Anwendung oder den Dienst abschließen kann. Ein Kernaspekt der vorliegenden Erfindung ist daher, dass die Fokusmaschine bestehende Anwendungsfälle nicht definiert, neu definiert oder ändert, auch wenn sie Fehlerzustände erzeugen.
  • Diese Art autonomer Laufzeitumgebung bietet eine äußerst flexible Ausrichtung auf ausgeführte Anwendungsfälle, indem eine ersetzende Funktionalität verwendet wird. Insbesondere versucht das autonome Laufzeitsystem, einen bekannten oder unbekannten ausgeführten Anwendungsfall abzuschließen, wenn z. B. dieser spezielle Anwendungsfall hängen geblieben ist oder wenn ein Benutzer einer Anwendung eine Fehlermeldung erhalten hat, die weder der Benutzer noch die Anwendung selbst verarbeiten kann. Anschließend hilft das autonome Laufzeitsystem, die Anwendung von dem Fehler zu befreien, fährt mit der Anwendung fort und/oder schließt den Anwendungsfall erfolgreich ab. Zeitaufwändige Unterbrechungen werden so weit wie möglich vermieden. Darüber hinaus bleibt die Vorarbeit des Nutzers erhalten und geht damit nicht verloren.
  • Die Infrastruktur des autonomen Laufzeitsystems besteht aus geeigneten Schnittstellen und Komponenten, die für die Ausführung der Ablaufmodelle, Workflows und/oder Aktionspläne konfiguriert sind. Gemäß der vorliegenden Erfindung läuft mindestens eine Anwendung oder Dienstleistung auf einem Produktivgerät. Die autonome Laufzeitumgebung umfasst eine sogenannte Fokusmaschine die so genannte Aktionspläne ausführt. Diese Aktionspläne enthalten Anwendungsbedingungen, Aktionslisten, Verhaltensmetriken und dergleichen, die erforderlich sind, um mit einem laufenden Anwendungsfall fortzufahren. Die autonome Laufzeitumgebung kann auch zusätzliche Speichereinrichtungen aufweisen - etwa ein Aktionsplan-Repository mit herunterladbaren Aktionsplänen und/oder ein Verhaltens-Repository mit konfigurierten und aktualisierten Verhaltensmetriken im Hinblick auf Verhaltensweisen für den jeweiligen Anwendungsfall. Darüber hinaus kann bereits bei der Entwicklung oder später im Prozess eine Aktionsplan-Erzeugungseinrichtung eingebunden werden, die verfügbaren Aktionspläne während der Softwareentwicklung sammelt. Diese Aktionspläne werden dann übertragen und mit der Software in eine Cloud-basierte Produktivumgebung bereitgestellt, sowohl während des Produktversands in die Cloud als auch als einmaliges Add-on.
  • Ein Hauptvorteil der vorliegenden Erfindung besteht darin, dass die Substitutionsaktionen, die den fehlerhaften oder festgefahrenen Anwendungsfall oder die Anwendungsfallschritte ersetzen, nicht Teil der entsprechenden Anwendung oder Dienstleistung sind. Dadurch wird sichergestellt, dass die Substitutionsaktionen technisch ausführbar sind, wann immer sie ausgelöst werden - auch wenn die entsprechende Anwendung bzw. Dienst nicht dazu in der Lage war, z.B. in einem Fall in dem der interne Kontrollfluss nicht auf gewisse Situationen vorbereitet ist.
  • Vorteilhafte Ausgestaltungen und Implementierungen ergeben sich aus den weiteren abhängigen Ansprüchen und aus der Beschreibung unter Bezugnahme auf die Zeichnungen.
  • Gemäß einer bevorzugten Ausführungsform ist die Fokusmaschine weiter so konfiguriert, dass sie die Daten des fertigen Anwendungsfalles oder Teile davon dem Produktivgerät und/oder der Laufzeitumgebung zur Verfügung stellt. Vorzugsweise umfasst dies ein Speichern der Daten des fertigen Anwendungsfalles oder von Teilen davon durch die Fokusmaschine im Aktionsplan-Repository.
  • Gemäß einer bevorzugten Ausführungsform umfasst das Übernehmen der Zuständigkeit: Erkennen des Fehlerstatus des überwachten Anwendungsfalles durch die Fokusmaschine, wenn der erkannte Zustand eines laufenden Anwendungsfalles mindestens eine vordefinierte Bedingung erfüllt. Dabei kann die vordefinierte Bedingung ein Feststecken einer laufenden Verarbeitung eines Anwendungsfall gegeben sein, in dem die Ausführung der entsprechenden Anwendung angehalten wird. Zusätzlich oder alternativ kann die vordefinierte Bedingung eines laufenden Anwendungsfalles auch eine vordefinierte Abweichung der ausgeführten Anwendung von einem Normalverhalten des Anwendungsfalles sein.
  • Nach einer weiteren Ausführungsform umfasst das Übernehmen der Zuständigkeit und das Analysieren des erkannten Fehlerstatus: Bestimmen eine einschlägiger Anwendungsbedingungen aus einer Liste verfügbarer Anwendungsbedingungen durch die Fokusmaschine, und aufrufen geeigneter Verhaltensmetriken aus dem Aktionsplan-Repository durch die Fokusmaschine, die den bestimmten einschlägigen Anwendungsbedingungen entsprechen.
  • Gemäß einer bevorzugten Ausführungsform umfasst das Bestimmen der Substitutionsaktion: Bestimmen, welche Bedingung in der vorliegenden Phase des Anwendungsfalls anzuwenden ist und ein Bestimmen der Aktionen und der Reihenfolge, in der diese Aktionen in der vorliegenden Phase des Anwendungsfalls ausgeführt werden sollen - jeweils durch die Fokusmaschine.
  • Nach einer weiteren Ausführungsform umfasst das Beenden eines laufenden Anwendungsfalles oder von Teilen davon eine autonome Erfolgskontrolle durch die Fokusmaschine durch die Überwachung des Erfolgs der ausgeführten Aktionen und die Speicherung der Erfolgsinformationen im Aktionsplan-Repository.
  • Gemäß einer bevorzugten Ausführungsform ist das Netzwerk dazu ausgebildet, eine Cloud-basierte Laufzeitumgebung bereitzustellen. Insbesondere ist die autonome Laufzeitumgebung mit einer Cloud-Umgebung kompatibel.
  • Gegebenenfalls können die oben genannten Ausgestaltungen und Implementierungen in beliebiger Weise kombiniert werden. Weitere mögliche Ausgestaltungen, Implementierungen und Ausführungsformen der Erfindung umfassen auch solche Kombinationen von zuvor oder nachstehend beschriebenen Merkmalen der Erfindung die nicht ausdrücklich erwähnt werden. Insbesondere wird in diesem Fall ein Fachmann auch einzelne Aspekte als Verbesserungen oder Ergänzungen zur Grundform der vorliegenden Erfindung hinzufügen.
  • Die vorliegende Erfindung wird im Folgenden auf der Grundlage der in den Zeichnungen schematisch dargestellten Ausführungsformen näher beschrieben, wobei:
    • 1 ein Blockdiagramm zeigt, das ein Computer-implementiertes Laufzeitsystem innerhalb eines Netzwerks gemäß einer Ausführungsform veranschaulicht;
    • 2 ein Flussdiagramm zeigt, das ein Verfahren gemäß einer Ausführungsform veranschaulicht; und
    • 3 ein Ablaufdiagramm zeigt, das eine weitere Ausführungsform der vorliegenden Erfindung veranschaulicht.
  • Die beigefügten Zeichnungen sollen ein besseres Verständnis der Ausführungsformen der Erfindung ermöglichen. Sie veranschaulichen Ausführungsformen und helfen in Verbindung mit der Beschreibung, Grundsätze und Konzepte der Erfindung zu erklären. Andere Ausführungsformen und viele der genannten Vorteile werden mit Blick auf die Zeichnungen deutlich. Die Elemente in den Zeichnungen sind nicht unbedingt maßstabsgetreu dargestellt.
  • In den Zeichnungen sind funktional gleichwertige und identisch bedienbare Elemente, Merkmale und Komponenten jeweils mit ähnlichen Bezugszeichen versehen, sofern nicht anders angegeben.
  • 1 zeigt ein Blockdiagramm, das ein Computer-implementiertes Laufzeitsystem innerhalb eines Netzwerks veranschaulicht, das gemäß den Ausführungsformen der Erfindung betreibbar ist.
  • Das Laufzeitsystem ist so konfiguriert, dass es eine kontinuierliche Laufzeitumgebung für die Produktivausführung für mindestens eine Anwendung mittels eines Netzwerks zur Verarbeitung medizinischer Informationen bietet. Das Netzwerk, das ein Cloud-basiertes Online-Netzwerk wie „Teamplay“ von Siemens Healthineers sein kann, ist so ausgebildet, dass es eine Vielzahl von Produktivgeräten miteinander verbindet. Diese Geräte sind so konfiguriert, dass medizinische Informationen der Laufzeitumgebung verarbeitet werden, z.B. durch Ausführen von Softwareanwendungen, Diensten und/oder anderen Arten von Softwareprodukten.
  • In wird das Laufzeitsystem durch Ziffer 10 bezeichnet. Das Laufzeitsystem 10 ist Teil eines Netzwerks 15zur Verarbeitung medizinischer Informationen.
  • Das Laufzeitsystem 10 umfasst unter anderem eine Fokusmaschine 11, ein Aktionsplan-Repository 12 und optional eine Aktionsplan-Erzeugungseinrichtung 13. Die Fokusmaschine 11 weist eine ersten Schnittstelle 14 zur Kopplung des Laufzeitsystems 10 mit einer Schnittstelle 18 des Netzwerks 15 an ein oder mehrere Produktivgeräte 16 auf. Die Fokusmaschine 11 umfasst ferner eine zweite Schnittstelle 17 zur Kopplung an das Aktionsplan-Repository 12. In der in 1 dargestellten Ausführungsform ist die Aktionsplan-Erzeugungseinrichtung 13 Teil des Aktionsplans-Repository 12. Zusätzlich oder alternativ kann der Aktionsplan-Erzeugungseinrichtung 13 auch Teil der Fokusmaschine 11 oder über das Netzwerk 15 an die Fokusmaschine 11 gekoppelt sein (nicht in dargestellt).
  • Die Produktivgeräte 16 werden verwendet, um eine bestimmte Anwendung, einen Dienst oder ein bestimmtes System auszuführen. Eine Anwendung, ein Dienst oder ein System - im Folgenden einfach als App bezeichnet - bezeichnet im Rahmen der vorliegenden Erfindung Arten von Softwareprogrammen, die die Zweckausführung von Anwendungsfällen implementieren und bereitstellen, und dadurch interne und externe Anwendungsbedingungen schaffen. Diese Apps sind gleichzeitig Anwendungsbedingungen im Laufzeitkontext ausgesetzt. Solche Anwendungsfälle verarbeiten dedizierte Daten und sollen nach einer Reihe von Anwendungsfallschritten und nach einiger Verarbeitungszeit dedizierte und vordefinierte Ergebnisse liefern. Dies ergibt ein messbares Verhalten in Raum und Zeit mehrerer solcher Programme, die wiederum nachverfolgt und auf Anwendungsbedingungen in den Aktionsplänen abgestimmt werden können, sowie weitere Aktionen, die z.B. nicht Teil eines einzelnen Anwendungsfalles sein können.
  • Das Aktionsplan-Repository 12 umfasst eine Vielzahl geeigneter Aktionspläne. Insbesondere enthält das Aktionsplan-Repository 12 zusätzliche Speichereinrichtungen wie für herunterladbare Aktionspläne 12a und/oder ein Verhaltens-Repository 12b mit konfigurierten und aktualisierten Metriken aus Anwendungsfallverhaltensaspekten. Ein Aktionsplan im Rahmen der vorliegenden Erfindung besteht aus Anwendungsbedingungen und einer Liste geeigneter Maßnahmen. Insbesondere kombiniert das Aktionsplan-Repository 12 eine Reihe vordefinierter Anwendungsbedingungen, die automatisch überwacht, gemessen und in einer Mischung aus Anwendungen, Diensten oder Systemen erkannt werden können, mit einer Liste entsprechender geeigneter Aktionen, die ausgeführt werden können, wenn die vordefinierten Anwendungsbedingungen erfüllt sind. Das Ziel für die Bereitstellung eines Aktionsplans ist es, einen laufenden Anwendungsfall abzuschließen, der feststeckt, einen Fehler verursacht, oder vom Normalverhalten oder dergleichen abgewichen ist. Alternativ kann auch ein Aktionsplan erforderlich sein, um einer Situation mit geeigneten Maßnahmen gerecht zu werden, da die Anwendungsbedingungen zeigen, dass der ursprüngliche laufende Anwendungsfall möglicherweise nicht seinen Anfangs-Bedingungen entspricht oder sogar stecken geblieben ist. Die geeigneten Aktionen in der Liste der Aktionen ist die funktionale Ersetzung des ursprünglichen Steuerungsflusses (oder Normalfalls), der für diese Verwendung - im besten Fall während der Entwicklung - vorgesehen wurde. Vorzugsweise wird eine Vielzahl von Aktionen zur Verfügung gestellt, die sich voneinander unterscheiden, da nicht von vornherein bekannt ist, welche Aktion das erfolgreiche Ergebnis, das für den Anwendungsfall oder für die gegebene Situation erforderlich ist, bewirken kann. Für alle Arten und Größen des Anwendungsbereichs (d. h. alle Systeme/Produkte, eine Teilmenge der Systeme/Produkte oder nur eine oder mehrere Anwendungen/Dienste) kann ein geeigneter Aktionsplan erstellt werden. Für alle Anwendungsbedingungen, die automatisiert und/oder autonom erkannt werden können, kann auch ein geeigneter Aktionsplan erstellt werden. Aktionen können daher einen Hilfs-, Korrektur-, Optimierungs- usw. Charakter haben.
  • Die Aktionsplan-Erzeugungseinrichtung 13 stellt die Aktionspläne bereit - vorzugsweise aber nicht notwendigerweise bereits während der Entwicklung. Während der Entwicklung wird beispielsweise die Aktionsplan-Erzeugungseinrichtung 13 verwendet, um die Aktionspläne zu erstellen, die mit der Software kombiniert werden müssen und in der Cloud-basierten Produktivumgebung bereitgestellt werden sollen. Die Aktionspläne können z.B. von den Versionen der Teilelemente, Anwendungen oder Dienste des gesamten Softwareprodukts, den Typen und der Anzahl der kooperierenden Systeme sowie von Besonderheiten der Produktivsetzung abhängen, und z.B. von dem vorgesehenen Laufzeitverhalten im Fehlerfall und damit zusammenhängende Anwendungsbedingungen und Aktionen in den Aktionsplänen bestimmt sein. Die Aktionsplan-Erzeugungseinrichtung 13 kann diese Merkmale berücksichtigen.
  • Die Fokusmaschine 11, die Kernkomponente des Laufzeitsystems 10, bezeichnet ein Steuergerät, das als Überwachungs- und Steuerungsinstanz fungiert, um sicherzustellen, dass ein laufender Anwendungsfall ordnungsgemäß abgeschlossen wird. Bei der Fokusmaschine 11 kann es sich um ein programmierbares Steuergerät wie einen Computer, einen Mikroprozessor, einen Controller oder Ähnliches handeln. Die Fokusmaschine 11 führt hauptsächlich die Aktionspläne des Aktionsplan-Repositorys 12 aus. Dazu überwacht die Fokusmaschine 11 einen laufenden Anwendungsfall einer App als Eingabedaten und misst, ob eine vordefinierte Fehlerbedingung erfüllt ist. Ist eine vordefinierte Fehlerbedingung erfüllt, übernimmt die Fokusmaschine 11 automatisch und vorzugsweise auch autonom die Zuständigkeit für diesen laufenden Anwendungsfall. Insbesondere ruft die Fokusmaschine 11 einen oder mehrere Substitutionsaktionspläne ab, die vom Aktionsplan-Repository 12 als Eingabedaten bereitgestellt werden, um die Aktionsliste der Substitutionsaktionspläne auszuführen und um ein Substitutionsergebnis für den laufenden Anwendungsfall zu liefern. Besonders wichtig ist in diesem Zusammenhang die Tatsache, dass die Substitutionsaktionen, die von der Fokusmaschine 11 verwendet werden, um die Funktionalität des laufenden Anwendungsfalles oder von Teilen davon zu ersetzen, nicht Teil der fehlerhaften App sind. Dies ist zielführend, da dadurch sichergestellt wird, dass die Substitutionsaktionen jederzeit technisch ausführbar sind, wenn sie ausgelöst werden, auch wenn die App dazu nicht mehr in der Lage ist, z.B. aufgrund des internen Kontrollflusses, der auf diese spezifische Fehlersituation nicht vorbereitet ist.
  • Zusammenfassend umfasst die Fokusmaschine 11 unter anderem den folgenden Überwachungs- und Steuerungsmechanismus für einen laufenden Anwendungsfall:
    • - Ermessen technischer Auswirkungen;
    • - Überwachung von Warninformationen;
    • - Analysieren von Protokolldaten;
    • - Analysieren von Metrikdaten;
    • - Erkennen von Anomalien in den von den Apps erzeugten Daten;
    • - Verteilung von Feedback-Informationen an das Produktivgerät über die erste Schnittstelle;
    • - Vorher/nachher-Analyse bezgl. Produktivsetzung (inkl. Stichprobe mit einem Domänenmodell).
  • Die Fokusmaschine 11 kann auch das Aktionsplan-Repository 12 umfassen (nicht in dargestellt).
  • Im Folgenden wird die Funktionalität des Laufzeitsystems 10 kurz anhand des Flussdiagramms von erläutert:
    • Die einen oder mehrere Produktivgeräte 16 des Netzwerks 15 führen eine oder mehrere Apps aus (Schritt SO). Im normalen Betriebsmodus werden diese Apps von den Produktivgeräten 16 ordnungsgemäß ausgeführt und fertig gestellt, d.h. ein laufender Anwendungsfall für diese App folgt einem sogenannten „Happy Path“.
  • Parallel zur Ausführung dieser App überwacht die Fokusmaschine 11 über die erste Schnittstelle 14 den laufenden Anwendungsfall der App auf mindestens einem Produktivgerät 16 (Schritt S1).
  • Wenn ein Fehlerstatus des überwachten laufenden Anwendungsfalles vom Fokusmaschine 11 erkannt wird, übernimmt diese die Zuständigkeit für den laufenden Anwendungsfall (Schritt S2).
  • Ein Fehlerstatus gibt z.B. an, dass der erkannte Status eines ausgeführten Anwendungsfalls mindestens eine vordefinierte Bedingung erfüllt, z. B. ein Feststecken, bei dem die App angehalten wird.
  • Anschließend analysiert die Fokusmaschine 11 in Schritt S3 den erkannten Fehlerstatus des laufenden Anwendungsfalles. Zu diesem Zweck vergleicht die Fokusmaschine 11 über die zweite Schnittstelle den Zustand des laufenden Anwendungsfalles und den entsprechenden Fehlerstatus mit Daten aus dem Aktionsplan-Repository 12.
  • Basierend auf dem analysierten Fehlerstatus des laufenden Anwendungsfalles ruft die Fokusmaschine 11 mindestens eine geeignete Aktion aus einer Vielzahl von Aktionen ab, die im Aktionsplan-Repository 12 abgelegt sind (Schritt S4).
  • Anschließend wird der laufende Anwendungsfall oder Teile davon durch die Fokusmaschine 11 (Schritt S5) abgeschlossen oder zumindest beendet. Dies geschieht durch das Anwenden der abgerufenen Aktionen auf der App.
  • Schließlich werden die Daten des fertigen Anwendungsfalles oder Teile davon dem Produktivgerät 16 und/oder der Laufzeitumgebung (Schritt S6) zur Verfügung gestellt.
  • zeigt ein Ablaufdiagramm, das eine weitere Ausführungsform der Erfindung veranschaulicht, um den Umfang möglicher Funktionen der vorliegenden Erfindung zu verdeutlichen.
  • Auf der linken Seite von sind die Komponenten der Produktivgeräte 16 dargestellt. Dazu gehören mindestens ein Gerät 20, das für die Ausführung einer oder mehreren Apps ausgelegt ist, und ein entsprechendes Log-Repository 21.
  • Zu den Komponenten auf der rechten Seite gehören die Komponenten des Laufzeitsystems 10, insbesondere die Fokusmaschine 11, das Aktionsplan-Repository 12, das Verhaltens-Repository 23 und mindestens eine Aktionseinheit 24. Das Aktionsplan - Repository 22, das Verhaltens-Repository 23 und die Aktionseinheit 24 sind in der Regel Teil des Aktionsplan-Repositorys 12.
  • Wenn das Gerät 20 einer Laufzeitumgebung im Gesundheitswesen eine App ausführt, insbesondere eine App mit medizinischen Inhalten, oder in einer medizinischen Umgebung, werden die entsprechenden Protokolldaten dem Protokollarchiv 21 bereitgestellt (Schritt 1.1).
  • Der entsprechende Status des laufenden Anwendungsfalles wird der Fokusmaschine 11 (Schritt 1.2) mitgeteilt. Alternativ kann der Status eines laufenden Anwendungsfalles auch von der Fokusmaschine 11 direkt aus dem Log-Repository 21 erfasst werden. Dadurch kann die Fokusmaschine 11 die laufenden Anwendungsfälle erkennen.
  • Die Fokusmaschine 11 übernimmt die Zuständigkeit für den laufenden Anwendungsfall, wenn eine vordefinierte Bedingung erfüllt ist, z.B. ein Fehlerstatus (Schritt 1.4). Die Fokusmaschine 11 speichert entsprechende Protokolldaten im Log-Repository 21 (Schritt 1.3).
  • Die Fokusmaschine 11 erzeugt dann aus einer Liste der verfügbaren Anwendungsbedingungen (Schritt 1.7) einschlägige Anwendungsbedingungen, d.h., solche Anwendungsbedingungen, die gegenüber anderen zu priorisieren sind. Die Fokusmaschine 11 hat diese Liste der verfügbaren Anwendungsbedingungen in einem früheren Stadium zusammengetragen, z.B. zunächst, als die Fokusmaschine 11 den Inhalt des Aktionsplan-Repositorys 22 gelesen hat (Schritt 1.0). Insbesondere bewertet die Fokusmaschine 11, welche Bedingungen grundsätzlich verfügbar sind und was eine typische Reaktion oder Standardreaktion in der vorliegenden Phase und für das gegebene Szenario ist.
  • Nachdem die einschlägige Anwendungsbedingungen erfasst wurden, liest die Fokusmaschine 11 aus dem Verhaltens-Repository 23 geeignete Verhaltensmetriken aus, die den erfassten Anwendungsbedingungen entsprechen (Schritt 1.8). Anhand dieser Informationen kann die Fokusmaschine 11 entscheiden, welche Bedingung in der vorliegenden Phase des Anwendungsfalls und für das gegebene Szenario anzuwenden ist (Schritt 1.9). Auf der Grundlage dieser Informationen werden die Aktionen und die Reihenfolge, in der sie in der vorliegenden Phase des Anwendungsfalls ausgeführt werden, ermittelt (Schritt 1.10).
  • Darüber hinaus kann die Fokusmaschine 11 auch andere Hintergrundinformationen aus dem Verhaltensrepository 23 ableiten, z.B. Erfolgsmetriken (Schritt 1.11).
  • Im Folgenden versucht die Fokusmaschine 11, den laufenden Anwendungsfall oder die Anwendungsfallphase durch Verwendung einer Aktion oder einer Abfolge von Aktionen, die aus dem Aktionsplan abgeleitet wurden, abzuschließen oder zumindest zu beenden (Schritte 1.12, 1.13). Dazu stellt die Fokusmaschine 11 Funktionen und Daten für den fehlerhaften Anwendungsfall bereit, der das Produktivgerät 16 betrifft.
  • Optional, aber nicht obligatorisch, überwacht und überprüft die Fokusmaschine 11 dann den Zustand und den Erfolg der durchgeführten Maßnahmen (Schritt 1.14). Die entsprechenden Daten werden im Verhaltens-Repository 23 (Schritt 1.16) gespeichert.
  • Schließlich liefert die Fokusmaschine 11 das Ergebnis des fehlerhaften Anwendungsfalles, der in der oben beschriebenen Weise abgeschlossen oder beendet wurde, an die ausführbare App des Geräts 20. Dies kann durch einen Push-Prozess von der Fokusmaschine 11 bis zum Gerät 20 (Schritt 1.17) oder durch einen Pull-Prozess vom Gerät 20 zur Fokusmaschine 11 (Schritt 1.18) erfolgen.
  • Optional, aber nicht obligatorisch, kann der Aktionsplan, der von der Fokusmaschine 11 zum Ausführen oder Beenden eines fehlerhaften Anwendungsfalles verwendet wird, im Aktionsplan-Repository 22 gespeichert werden. Auf diese Weise kann die Fokusmaschine 11 eine aktualisierte Liste der verfügbaren Aktionspläne für einen möglichen Fehlerstatus einer nachträglich ausgeführten App herunterladen (Schritt 1.0).
  • In der vorstehenden Spezifikation wurde die Erfindung unter Bezugnahme auf spezifische Beispiele von Ausführungsformen der Erfindung beschrieben. Es ist jedoch offensichtlich, dass darin verschiedene Änderungen und Änderungen vorgenommen werden können, ohne von dem in den Ansprüchen dargelegten breiteren Grundgedanken der Erfindung abzuweichen.
  • Da die Vorrichtungen die vorliegende Erfindung umsetzen, bestehen sie zum größten Teil aus elektronischen Komponenten, die den Fachleuten bekannt sind und daher nicht in weiterem Umfang erläutert werden, als die oben als notwendig erachteten, zum Verständnis und zur Wertschätzung der zugrunde liegenden Begriffe der vorliegenden Erfindung und um die Lehren der vorliegenden Erfindung nicht zu verschleiern oder von ihnen abzulenken.
  • Darüber hinaus können die Vorrichtungen auch physisch über eine Reihe von Vorrichtungen verteilt werden, während sie funktional als einzelne Vorrichtungen betrieben werden. Vorrichtungen, die funktional separate Vorrichtungen bilden, können in ein einzelnes physisches Gerät integriert werden. Der Fachmann wird erkennen, dass die Grenzen zwischen Logik- und Funktionsblöcken lediglich anschaulich sind und dass alternative Ausführungsformen Logik- oder Funktionsblöcke verschmelzen oder verschiedenen Logik- oder Funktionsblöcken eine alternative Aufteilung der Funktionalitäten angedeihen lassen können.
  • In der Beschreibung sind Bezugszeichen nicht als Beschränkung des Anspruchs auszulegen. Das Wort „bestehen aus“ schließt das Vorhandensein anderer Elemente oder Schritte nicht aus, die dann in einem Anspruch aufgeführt sind. Darüber hinaus werden die Begriffe „ein“, „eines“ usw. wie hier verwendet, als „eines oder mehrere“ definiert. Auch sollte die Verwendung von einführenden Formulierungen wie „mindestens ein“ und „ein oder mehrere“ in den Ansprüchen nicht so ausgelegt werden, dass die Einführung eines anderen Anspruchselements durch die unbestimmten Artikel „ein“, „eines“ usw. einen bestimmten Anspruch, der solche eingeführten Anspruchselemente enthält, auf ein solches Element beschränkt, selbst wenn derselbe Anspruch die einleitenden Formulierungen „ein oder mehrere“ oder „mindestens einen“ und unbestimmten Gegenstände wie „ein“, „eines“ usw. enthält. Dasselbe gilt für die Verwendung bestimmter Artikel. Sofern nicht anders angegeben, werden Begriffe wie „erste“ und „zweite“ verwendet, um willkürlich zwischen den Elementen zu unterscheiden. Daher sind diese Begriffe nicht dazu gedacht, eine zeitliche oder andere Priorisierung solcher Elemente anzuzeigen. Allein der Umstand, dass bestimmte Maßnahmen in unterschiedlichen Ansprüchen vorgetragen werden, deutet nicht darauf hin, dass eine Kombination dieser Maßnahmen nicht zum Vorteil genutzt werden kann. Die Reihenfolge der In einem Anspruch dargestellten Schritte berührt nicht die Reihenfolge, in der die Schritte tatsächlich durchgeführt werden können, es sei denn, sie wird im Anspruch ausdrücklich festgelegt.
  • Fachleute werden verstehen, dass die Abbildungen ausgewählter Elemente in den Zeichnungen nur verwendet werden, um das Verständnis der Funktionalität und der Anordnung dieser Elemente in verschiedenen Ausführungsformen der vorliegenden Erfindung zu verbessern. Gängige und gut bekannte Elemente, die in einer kommerziell umsetzbaren Ausführungsform nützlich oder notwendig sind, sind in den Zeichnungen in der Regel nicht dargestellt, um das Verständnis des technischen Konzepts der verschiedenen Ausführungsformen der vorliegenden Erfindung zu erleichtern. Bestimmte Verfahrensschritte in den beschriebenen Verfahren können in einer bestimmten Reihenfolge des Auftretens beschrieben oder dargestellt werden, wobei die Fachleute verstehen werden, dass eine solche Spezifität in Bezug auf die Reihenfolge bei der Umsetzung nicht erforderlich ist.
  • Im Rahmen der Software- oder Informationsmodellierung bezeichnet der Ausdruck „Happy Path“ ein Standardszenario ohne außergewöhnliche Ereignisse oder Fehlerzustände, z.B. einen besten Pfad.
  • Im Software-Engineering ist der Anwendungsfall (engl.: Use Case) eine Liste von Aktionen oder Ereignisschritte, die in der Regel die Interaktionen zwischen einer Instanz (bei UML z.B. als Actor bezeichnet) und einem System definieren, um ein Ziel zu erreichen.
  • Ein Aktionsplan-Repository bezeichnet ein geeignetes Daten- oder Objekt-Speichereinrichtung. Das Datenspeichereinrichtung kann ein Computer- Speichereinrichtung, z.B. eine Datenbank, Register, Speicherdisc oder Laufwerk, DRAM usw. Eine Objekt-Speichereinrichtung (auch bekannt als objektbasierter Speicher) ist eine Computerdatenspeicherarchitektur, die Daten als Objekte verwaltet, im Gegensatz zu anderen Speicherarchitekturen wie Dateisystemen, die Daten als Dateihierarchie verwalten, und Blockspeicher, die Daten als Blöcke innerhalb von Sektoren und Tracks verwaltet. Objektspeicher werden häufig in einer Cloud-basierten Architektur verwendet.
  • Eine Fokusmaschine ist in der Regel Teil einer programmgesteuerten Vorrichtung, z.B. eines Computers, Mikroprozessors, Mikrocomputers, DSPs, CPUs und dergleichen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • EP 3457408 A1 [0002]
    • EP 3567600 A1 [0002]

Claims (13)

  1. Computerimplementiertes Laufzeitsystem (10), das eine kontinuierliche Objektausführungs-Laufzeitumgebung für mindestens eine Anwendung über ein Netzwerk (15) zur Verarbeitung medizinischer Informationen bereitstellt, wobei das Netzwerk (15) mehrere von Produktivgeräte (16, 20) aufweist, die für eine Verarbeitung medizinischer Informationen in der Laufzeitumgebung ausgebildet sind und das Laufzeitsystem ferner eine Fokusmaschine (11) und ein Aktionsplan-Repository (22) umfasst, die zur Bereitstellung einer autonomen Laufzeitumgebung dazu ausgebildet sind: einen laufenden Anwendungsfall einer Anwendung auf mindestens einem Produktivgerät (16, 20) mit der Fokusmaschine (11) zu überwachen (S1); eine Zuständigkeit für den laufenden Anwendungsfall der Anwendung durch die Fokusmaschine (11) für den Fall zu übernehmen, dass ein Fehlerstatus für den überwachten laufenden Anwendungsfall erkannt wird (S2); den erkannten Fehlerstatus des laufenden Anwendungsfalls durch die Fokusmaschine (11) zu analysieren (S3); auf der Grundlage des analysierten Fehlerstatus mindestens eine geeignete Substitutionsaktion aus einer Vielzahl von im Aktionsplan-Repository (22) hinterlegten Aktionen zu beschaffen (S3); und den laufenden Anwendungsfall oder Teilen davon durch Anwendung der beschafften Substitutionsaktionen auf die Anwendung zu beenden und/oder zu vervollständigen (S5) durch die Fokusmaschine (11).
  2. System nach Anspruch 1, wobei die Fokusmaschine (11) weiter dazu ausgebildet ist, Daten des fertigen Anwendungsfalles oder Teile davon an das Produktivgerät und/oder die Laufzeitumgebung zu liefern (S6).
  3. System nach einem der vorhergehenden Ansprüche, wobei die Funktion der Bereitstellung der Daten des abgeschlossenen Anwendungsfalles oder Teile davon umfasst: Speichern der Daten des abgeschlossenen Anwendungsfalls oder Teile davon durch die Fokusmaschine (11) im Aktionsplan-Repository (22).
  4. System nach einem der vorhergehenden Ansprüche, wobei die Funktion der Übernahme der Zuständigkeit umfasst: Erkennen des Fehlerstatus des überwachten Anwendungsfalls durch die Fokusmaschine (11), falls ein erfasster Zustand eines ausgeführten Anwendungsfalles mindestens eine vordefinierte Bedingung erfüllt.
  5. System nach Anspruch 4, wobei die vordefinierte Bedingung erfüllt ist, wenn die Ausführung der entsprechenden Anwendung in einem ausweglosen Zustand angehalten ist.
  6. System nach Anspruch 4 oder 5, wobei die vordefinierte Bedingung erfüllt ist, falls die ausgeführte Anwendung um eine vordefinierte Abweichung von dem Normalfall des Anwendungsfalles abweicht.
  7. System nach einem der vorhergehenden Ansprüche, wobei die Funktionen der Übernahme der Zuständigkeit und der Analyse des erkannten Fehlerstatus umfassen: Ermitteln einschlägiger Anwendungsbedingungen aus einer Liste möglicher Anwendungsbedingungen durch die Fokusmaschine (11); und Einlesen geeigneter, den ermittelten einschlägigen Anwendungsbedingungen entsprechender Verhaltensmetriken aus dem Aktionsplan-Repository (22) durch die Fokusmaschine (11).
  8. System nach Anspruch 7, wobei das Beschaffen der mindestens einen geeigneten Substitutionsaktion umfasst: Bestimmen, welche Anwendungsbedingung in der vorliegenden Phase des Anwendungsfalls anzuwenden ist, durch die Fokusmaschine (11); und Bestimmen der Substitutionsaktionen und der Reihenfolge, in der diese Substitutionsaktionen in der vorliegenden Phase des Anwendungsfalls ausgeführt werden sollen, durch die Fokusmaschine (11).
  9. System nach einem der vorhergehenden Ansprüche, wobei die das Beenden eines laufenden Anwendungsfalles oder von Teilen davon eine autonome Erfolgskontrolle durch die Fokusmaschine (11) umfasst, indem diese einen Erfolg der ausgeführten Substitutionsaktionen überwacht und eine entsprechende Information im Aktionsplan-Repository (22) speichert.
  10. Netzwerk (15) zur Verarbeitung medizinischer Informationen mit: mehreren Produktivgeräten (16), die von mehreren von Benutzern bedienbar und für die Verarbeitung medizinischer Informationen konfiguriert sind; mindestens einem Laufzeitsystem (10) gemäß den vorhergehenden Ansprüchen 1 bis 8, wobei das Laufzeitsystem (10) über mindestens eine Schnittstelle (14) zur Kopplung an die mehreren Produktivgeräten (16) umfasst und dazu ausgebildet ist, eine autonome Laufzeitumgebung für die mehreren Produktivgeräten (16) bereitzustellen.
  11. Netzwerk nach Anspruch 10, wobei das Netzwerk (15) eine Cloud-basierte Laufzeitumgebung aufweist.
  12. Computerimplementiertes Verfahren zur Bereitstellung einer kontinuierlichen Objektausführungs-Laufzeitumgebung für mindestens eine Anwendung mit den folgenden Schritten: Bereitstellen eines Netzwerks (15) zur Verarbeitung medizinischer Informationen, das eine Vielzahl von Produktivgeräten (16) umfasst, die für die Verarbeitung medizinischer Informationen aus der Laufzeitumgebung ausgebildet sind; Überwachen (S1) eines laufenden Anwendungsfalles auf mindestens einem Produktivgerät (16) über eine Schnittstelle (18) des Netzwerks (15); Übernahme (S2) einer Zuständigkeit für den laufenden Anwendungsfall der Anwendung durch eine extern bereitgestellte Fokusmaschine (11) falls ein Fehlerstatus für den überwachten laufenden Anwendungsfall erkannt wird; Analysieren (S3) des erkannten Fehlerstatus des laufenden Anwendungsfalls durch die Fokusmaschine (11); Abrufen (S4) mindestens einer geeigneten Substitutionsaktion aus einer Vielzahl von Aktionen basierend auf dem analysierten Fehlerstatus des laufenden Anwendungsfalls; und Beenden und vorzugsweise Vervollständigen (S5) des laufenden Anwendungsfalles oder von Teilen davon durch die Fokusmaschine (11) durch Anwenden der abgerufenen Substitutionsaktion auf die Anwendung.
  13. Computerprogrammprodukt, das eine Reihe von Anweisungen enthält, die, wenn sie von einer Recheneinrichtung ausgeführt werden, dazu führen, dass die Recheneinrichtung ein Verfahren gemäß einem der vorhergehenden Verfahrensansprüche ausführt.
DE102020206861.5A 2020-06-02 2020-06-02 Computerimplementiertes Laufzeitsystem, Netzwerk zur Verarbeitung medizinischer Informationen, entsprechendes Verfahren und entsprechendes Computerprogrammprodukt Pending DE102020206861A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102020206861.5A DE102020206861A1 (de) 2020-06-02 2020-06-02 Computerimplementiertes Laufzeitsystem, Netzwerk zur Verarbeitung medizinischer Informationen, entsprechendes Verfahren und entsprechendes Computerprogrammprodukt
US17/330,608 US11868767B2 (en) 2020-06-02 2021-05-26 Computer-implemented runtime system, healthcare network, method and computer program
CN202110615677.6A CN113821269A (zh) 2020-06-02 2021-06-02 计算机实现的运行时系统、保健网络、方法和计算机程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020206861.5A DE102020206861A1 (de) 2020-06-02 2020-06-02 Computerimplementiertes Laufzeitsystem, Netzwerk zur Verarbeitung medizinischer Informationen, entsprechendes Verfahren und entsprechendes Computerprogrammprodukt

Publications (1)

Publication Number Publication Date
DE102020206861A1 true DE102020206861A1 (de) 2021-12-02

Family

ID=78509261

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020206861.5A Pending DE102020206861A1 (de) 2020-06-02 2020-06-02 Computerimplementiertes Laufzeitsystem, Netzwerk zur Verarbeitung medizinischer Informationen, entsprechendes Verfahren und entsprechendes Computerprogrammprodukt

Country Status (3)

Country Link
US (1) US11868767B2 (de)
CN (1) CN113821269A (de)
DE (1) DE102020206861A1 (de)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2381363A2 (de) 2010-04-26 2011-10-26 VMware, Inc. Cloud-Plattformarchitektur
US20130339958A1 (en) 2011-03-29 2013-12-19 Brainlab Ag Processing of digital data, in particular medical data by a virtual machine
EP3457408A1 (de) 2017-09-19 2019-03-20 Siemens Healthcare GmbH Gesundheitsversorgungsnetzwerk
EP3567600A1 (de) 2018-05-08 2019-11-13 Siemens Healthcare GmbH Verbesserung einer laufzeitumgebung für bildgebungsanwendungen auf einer medizinischen vorrichtung

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030095648A1 (en) * 1999-10-05 2003-05-22 Lifecor, Inc. Fault-tolerant remote reprogramming for a patient-worn medical device
US6880086B2 (en) * 2000-05-20 2005-04-12 Ciena Corporation Signatures for facilitating hot upgrades of modular software components
US8024707B2 (en) * 2007-03-23 2011-09-20 Oracle International Corporation Facilitating self-remediation for software applications
US9684554B2 (en) * 2007-03-27 2017-06-20 Teradata Us, Inc. System and method for using failure casting to manage failures in a computed system
DE102007053048A1 (de) * 2007-11-05 2009-05-07 Siemens Ag System und Verfahren zur Minimierung von Ausfallzeiten medizintechnischer Geräte
EP2665030A1 (de) * 2012-05-14 2013-11-20 Siemens Aktiengesellschaft Verfahren und System zur automatischen Wiederherstellung nach einem Fehlerzustand in einer Produktionsanlage
US10291472B2 (en) * 2015-07-29 2019-05-14 AppFormix, Inc. Assessment of operational states of a computing environment
US10235227B2 (en) * 2015-10-12 2019-03-19 Bank Of America Corporation Detection, remediation and inference rule development for multi-layer information technology (“IT”) structures
US10599527B2 (en) * 2017-03-29 2020-03-24 Commvault Systems, Inc. Information management cell health monitoring system
CN110196800B (zh) * 2018-02-24 2023-05-12 财付通支付科技有限公司 分布式事务测试方法、装置及系统
US11100064B2 (en) * 2019-04-30 2021-08-24 Commvault Systems, Inc. Automated log-based remediation of an information management system
US11151003B2 (en) * 2020-03-10 2021-10-19 Capital One Services, Llc Processor health monitoring and auto failover and failback of a streaming system using a timestamp

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2381363A2 (de) 2010-04-26 2011-10-26 VMware, Inc. Cloud-Plattformarchitektur
US20130339958A1 (en) 2011-03-29 2013-12-19 Brainlab Ag Processing of digital data, in particular medical data by a virtual machine
EP3457408A1 (de) 2017-09-19 2019-03-20 Siemens Healthcare GmbH Gesundheitsversorgungsnetzwerk
EP3567600A1 (de) 2018-05-08 2019-11-13 Siemens Healthcare GmbH Verbesserung einer laufzeitumgebung für bildgebungsanwendungen auf einer medizinischen vorrichtung

Also Published As

Publication number Publication date
US20210373884A1 (en) 2021-12-02
US11868767B2 (en) 2024-01-09
CN113821269A (zh) 2021-12-21

Similar Documents

Publication Publication Date Title
DE60010420T2 (de) Automatisches Regressionstesten von Arbeitsplatz-Software
DE69736748T2 (de) Editierumgebung für objektmodelle und verfahren zu deren anwendung
DE68927705T2 (de) Verfahren zum Entfernen unbestätigter Änderungen an gespeicherten Daten durch ein Datenbankverwaltungssystem
DE202013012496U1 (de) Systeme für asynchrone Schemaänderungen
DE112016005292T5 (de) Automatischer Abweichungsdetektionsdienst auf heterogenen Protokollströmen
DE112012005051T5 (de) Korrekturbereitstellungssystem
DE112013000916T5 (de) System zum Anzeigen und Bearbeiten von Artefakten an einem zeitbezogenen Referenzpunkt
DE102010011658A1 (de) Applikationsplattform und Verfahren zum Betrieb einer Datenverarbeitungseinrichtung mit einer solchen
DE102012100738A1 (de) Verfahren zur Konfiguration eines BIOS in einem Computersystem sowie Computerprogrammprodukt
DE112011103428T5 (de) Automatisierte Analyse zusammengesetzter Anwendungen
DE112012005639T5 (de) Auslösen von Fensterbedingungen bei Anwendungen des Stream-Computing
DE112018001524T5 (de) Gesundheitsdaten-analysesystem-verwaltung
EP1906304A2 (de) System zur Erzeugung und zum Betrieb einer Softwareapplikation für medizinische Bildgebung
DE102004015503A1 (de) Verfahren und Vorrichtung zum Korrigieren diagnostischer Analysekonzepte in komplexen Systemen
DE112020004967T5 (de) Änderungsverwaltung und analytik für microservices
DE202017106569U1 (de) Analyse grossangelegter Datenverarbeitungsaufträge
DE102021125630A1 (de) Datensynchronisation in einem datenanalysesystem
DE112018002954T5 (de) Bereitstellen eines konfigurationsabhängigen arbeitsablaufs
DE602006000728T2 (de) Unterstützung dynamisch typisierter Sprachen in typisierten Assemblersprachen
EP2648094B1 (de) Verfahren und system zum erzeugen eines quellcodes für ein computerprogramm zur ausführung und simulation eines prozesses
DE102013001196A1 (de) Verfahren zum Bereitstellen einer Benutzerschnittstelle, Computersystem und Computerprogrammprodukt
DE112010004264T5 (de) Selektiver Schreibschutz für das Austesten der Wiederherstellung nach einem Absturz
DE102004025264A1 (de) Datenverarbeitungseinrichtung und Verfahren zur Wiederherstellung eines Betriebszustandes
DE112018005620T5 (de) Auftragsverwaltung in einem datenverarbeitungssystem
DE102013205570A1 (de) Verwalten inkrementell angewendeter Systemaktualisierungen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R081 Change of applicant/patentee

Owner name: SIEMENS HEALTHINEERS AG, DE

Free format text: FORMER OWNER: SIEMENS HEALTHCARE GMBH, MUENCHEN, DE