DE102005051603B4 - Software distribution process - Google Patents

Software distribution process Download PDF

Info

Publication number
DE102005051603B4
DE102005051603B4 DE200510051603 DE102005051603A DE102005051603B4 DE 102005051603 B4 DE102005051603 B4 DE 102005051603B4 DE 200510051603 DE200510051603 DE 200510051603 DE 102005051603 A DE102005051603 A DE 102005051603A DE 102005051603 B4 DE102005051603 B4 DE 102005051603B4
Authority
DE
Germany
Prior art keywords
customer
provider server
iii
program package
aiii
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.)
Active
Application number
DE200510051603
Other languages
German (de)
Other versions
DE102005051603A1 (en
Inventor
Stefan Bayer
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 AG
Original Assignee
Siemens AG
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 AG filed Critical Siemens AG
Priority to DE200510051603 priority Critical patent/DE102005051603B4/en
Priority to US11/584,066 priority patent/US8271970B2/en
Publication of DE102005051603A1 publication Critical patent/DE102005051603A1/en
Application granted granted Critical
Publication of DE102005051603B4 publication Critical patent/DE102005051603B4/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Abstract

Verfahren zur Software-Verteilung von einem zentralen Anbieterserver (I) eines Software-Anbieters auf ein Kundensystem (A-D) mit zumindest einem technischen Gerät (AIII-DIII), auf dem zumindest ein von dem Software-Anbieter betreutes Anwendungsprogramm installiert ist, dadurch gekennzeichnet, dass auf dem zentralen Anbieterserver (I) in einer Datenbank (2) Informationen über die gegenwärtige Kundenversion des beim Kundensystem (A-D) verwendeten Anwendungsprogramms sowie über die aktuelle Version des Anwendungsprogramms hinterlegt sind und dass der zentrale Anbieterserver (I) automatisch anhand der hinterlegten Informationen überprüft, ob die gegenwärtige Kundenversion der aktuellen Version entspricht und bei Bedarf ein der aktuellen Version des Anwendungsprogramms entsprechendes Programmpaket (i-iii) dem Kundensystem (A-D) über eine Datenleitung (4) automatisch zur Verfügung stellt.method for software distribution from a central provider server (I) one Software provider on a customer system (A-D) with at least one technical Device (AIII-DIII), installed on the at least one of the software provider supervised application program is, characterized in that on the central provider server (I) in a database (2) information about the current customer version of the customer system (A-D) used application program as well as the current version of the Application program are deposited and that the central provider server (I) automatically checks based on the deposited information, whether the current Customer version of the current version corresponds and if necessary a the current version of the application program corresponding program package (i-iii) to the customer system (A-D) via a data line (4) automatically provides.

Figure 00000001
Figure 00000001

Description

Die Erfindung betrifft ein Verfahren zur Software-Verteilung von einem zentralen Anbieterserver eines Software-Anbieters auf ein Kundensystem mit zumindest einem technischen Gerät, auf dem zumindest ein von dem Software-Anbieter betreutes Anwendungsprogramm installiert ist.The The invention relates to a method for software distribution of a central provider server of a software provider on a customer system with at least one technical device on which at least one of software program is installed.

Ein derartiges Verfahren ist beispielsweise aus der US 6,718,547 B2 zu entnehmen. Gemäß diesem Dokument ist die Betreuung eines Kundensystems vorgesehen, bei dem mehrere medizinische Geräte über ein Netzwerk miteinander verbunden sind. Die einzelnen medizinischen Geräte weisen Recheneinheiten auf, auf denen Anwendungsprogramme laufen. Diese werden von dem Software-Hersteller oder -Anbieter betreut. Auf Seiten des Software-Anbieters ist ein zentraler Anbieterserver vorgesehen, auf dem Software-Pakete der aktuellsten Versionen der einzelnen Anwendungsprogramme abgelegt sind. Um nunmehr die einzelnen medizinischen Geräte auf dem aktuellen Software-Stand zu halten ist vorgesehen, dass jeweils beim Einschalten oder Hochfahren des jeweiligen medizinischen Gerätes dieses über das Internet eine Verbindung zu dem zentralen Anbieterserver herstellt und vergleicht, ob die derzeit auf dem medizinischen Gerät installierte Software-Version mit der auf dem zentralen Anbieterserver hinterlegten aktuellsten Version übereinstimmt und gegebenenfalls die aktuellste Version herunterlädt.Such a method is for example from the US 6,718,547 B2 refer to. According to this document, the care of a customer system is provided, in which several medical devices are connected to each other via a network. The individual medical devices have arithmetic units running application programs. These are maintained by the software manufacturer or vendor. On the part of the software provider, a central provider server is provided on which software packages of the most recent versions of the individual application programs are stored. In order to keep the individual medical devices on the current software state is provided that each time you turn on or start the respective medical device that connects to the central provider server via the Internet and compares whether the currently installed on the medical device software Version matches the latest version stored on the central provider server and, if applicable, downloads the latest version.

Derartige Verfahren, bei denen die einzelnen Endgeräte, auch "Client" genannt, eine Verbindung zu einem zentralen Server aufbauen, um die aktuelle Software-Version zu überprüfen sowie gegebenenfalls herunterzuladen, sind weiterhin beispielsweise aus der US 5,909,581 , der US 6,718,549 B1 , der US 6,006,034 sowie aus der US 2003/0046677 A1 zu entnehmen.Such methods in which the individual terminals, also called "client", set up a connection to a central server to check the current software version and possibly download, are still for example from the US 5,909,581 , of the US Pat. No. 6,718,549 B1 , of the US 6,006,034 as well as from the US 2003/0046677 A1 refer to.

Bei komplexen technischen Spezialgeräten, wie beispielsweise bei medizinischen Diagnose- oder Therapieeinrichtungen mit zugehöriger Datenauswertung, ist üblicherweise eine intensive und kundennahe Betreuung der Geräte sowie ihrer programmtechnischen Ausgestaltung gewünscht und erforderlich. Die Software-Betreuung und die Aktualisierung erfordert hierbei auf Seiten des Software-Anbieters, der üblicherweise zugleich auch der Hersteller der technischen Geräte ist, einen nicht unerheblichen Zeitaufwand. Insbesondere ist oftmals nicht gewünscht, dass einzelne medizinische Geräte automatisch eine Internetverbindung aufbauen.at complex special technical equipment, such as for example, in medical diagnostic or therapeutic facilities with associated Data analysis is usually an intensive and customer-oriented support of the devices as well as their programmatic Design desired and required. The software support and the update requires this on the part of the software provider, usually at the same time the manufacturer of the technical equipment is a not insignificant Time. In particular, it is often not desired that individual medical equipment automatically establish an internet connection.

Besonders bei der Betreuung von einer Vielzahl von Kundensystemen, die global verteilt sind und die jeweils wiederum aus einer Vielzahl von unterschiedlichen technischen Geräten bestehen, ist der Betreuungs- und Pflegeaufwand hoch.Especially in the care of a variety of customer systems that are global are distributed and each in turn from a variety of different technical devices exist, the care and care is high.

Der Erfindung liegt die Aufgabe zugrunde, eine effiziente Betreuung derartiger Kundensysteme, insbesondere von medizinischen Kundennetzwerken zu ermöglichen.Of the Invention is based on the object, an efficient care such customer systems, in particular of medical customer networks too enable.

Die Aufgabe wird gemäß der Erfindung gelöst durch das Verfahren mit den Merkmalen gemäß Patentanspruch 1. Danach ist vorgesehen, dass auf einem zentralen Anbieterserver des Software- und in der Regel auch zugleich Geräteherstellers in einer Datenbank Informationen über die jeweiligen Kundensysteme hinterlegt sind. Diese Informationen umfassen insbesondere die Art des jeweils beim Kundensystem verwendeten Anwendungsprogramms sowie dessen beim Kunden aktuell installierte Kundenversion. Weiterhin umfassen diese Informationen insbesondere auch weitergehende Daten über die eingesetzten technischen Geräte, sowie die Hardware- und/oder Software-Konfiguration. Auf dem zentralen Anbieterserver sind weiterhin Informationen über die jeweils aktuell gültige Version der jeweiligen Anwendungsprogramme hinterlegt. Der Anbieterserver überprüft nunmehr automatisch anhand der ihm vorliegenden Informationen, ob die jeweilige Kundenversion der aktuellen Version entspricht und stellt bei Bedarf ein der aktuellen Version des jeweiligen Anwendungsprogramms entsprechendes Programmpaket als Update dem Kundensystem über eine Datenleitung automatisch zur Verfügung. Dies geschieht beispielsweise, indem dem Kunden eine Mitteilung übermittelt wird, dass für ein spezielles Gerät und für ein spezielles Anwendungsprogramm ein Update vorliegt.The Task is according to the invention solved by the method with the features according to claim 1. Thereafter It is envisaged that on a central provider server of the software and usually at the same time device manufacturer in a database information about the respective customer systems are stored. This information include in particular the type of each used in the customer system Application program and its currently installed at the customer Customer version. Furthermore, this information includes in particular also further data about the technical equipment used, as well as the hardware and / or software configuration. On the central Provider servers are still information about the currently valid version the respective application programs deposited. The provider server is now verifying automatically based on the information available to him, whether the respective customer version the current version corresponds and provides if necessary a current version of the respective application program corresponding program package as an update to the customer system via a Data line automatically available. This happens, for example, by sending a message to the customer for a special Device and for a special application program is an update.

Im Unterschied zu den aus dem Stand der Technik bekannten Systemen ist hierbei vorgesehen, dass alle relevanten Daten zentral beim Anbieterserver des Software-Anbieters vorliegen. Durch diese Maßnahme besteht daher die Möglichkeit, gezielt und individuell für jedes Kundensystem spezifische Bündel der jeweils erforderlichen Programmpakete bereitzustellen. Da jedes einzelne technische Gerät und die auf ihm laufende Anwendungssoftware bekannt ist, wird hierdurch eine kundennahe und individuelle Betreuung ermöglicht. Da weiterhin über den Anbieterserver für das jeweilige einzelne Gerät automatisch ausgewählt wird, ob und welches Programmpaket erforderlich ist, ist keine zeitintensive Überprüfung durch Servicepersonal des Anbieters erforderlich. Vielmehr wird der Kunde zumindest automatisch informiert, dass ein jeweiliges Update bereitsteht. Insgesamt ist dadurch eine kundennahe und zugleich effiziente Software-Aktualisierung und Verteilung erzielt. Soweit erforderlich oder gewünscht, lassen sich auf diese Weise nicht nur bestehende Anwendungsprogramme aktualisieren, sondern auch komplett neue Anwendungsprogramme bereitstellen. Dies ist beispielsweise der Fall, wenn zu einem bereits bestehenden technischen Gerät ein neues Software-Modul neu hinzukommt, welches beispielsweise eine spezielle Auswertung ermöglicht.In contrast to the systems known from the prior art, it is provided here that all relevant data is available centrally at the provider server of the software provider. This measure therefore makes it possible to provide specific bundles of the respectively required program packages specifically and individually for each customer system. Since every single technical device and the application software running on it is known, a customer-oriented and individual support is possible. Furthermore, since it is automatically selected via the provider server for each individual device, whether and which program package is required, no time-consuming review by service personnel of the provider is required. Rather, the customer is informed at least automatically that a respective update is available. Overall, this results in a customer-oriented and at the same time efficient software update and distribution. If necessary or desired, not only existing application programs can be updated in this way, but also completely new application programs can be provided. This is the case, for example to a pre-existing technical device, a new software module is added, which allows, for example, a special evaluation.

Gemäß einer zweckdienlichen Weiterbildung ist vorgesehen, dass in der Datenbank weiterhin eine Geräteadresse des technischen Geräts abgelegt ist und dass das jeweilige Programmpaket mit Angabe der Geräteadresse dem Kundensystem zur Verfügung gestellt wird. Durch diese Maßnahme sind daher in einfacher Weise die einzelnen Programmpakete auch für den Kunden in eindeutiger Weise adressierbar. Insbesondere bei komplexen Kundensystemen, die aus einer Vielzahl von unterschiedlichen technischen Geräten bestehen, ist dies für die sichere Zuordnung der jeweiligen Programmpakete von besonderer Bedeutung. Unter Geräteadresse wird hierbei insbesondere eine eindeutige IP-Adresse verstanden. Falls derartige IP-Adressen nicht vorliegen oder nicht bekannt sind, besteht jedoch auch die Möglichkeit, die Geräte über ihre jeweiligen Gerätenamen zu spezifizieren. Gegebenenfalls sind hier in der Datenbank des Anbieterservers auch kundenspezifische Bezeichnungen abgelegt, die dann zusammen mit dem jeweiligen Programmpaket dem Kunden mitgeteilt werden.According to one appropriate training is provided that in the database still a device address of the technical device is stored and that the respective program package with indication of the device address available to the customer system is provided. By this measure Therefore, the individual program packages are also in a simple way for the Customers are clearly addressable. Especially with complex customer systems, which consist of a variety of different technical devices, is this for the secure allocation of the respective program packages of special Importance. Under device address This is understood in particular a unique IP address. If such IP addresses are not available or unknown, However, there is also the possibility the devices over theirs respective device name to specify. If necessary, here in the database of Provider server also stored customer-specific designations then communicated to the customer together with the respective program package become.

Vorzugsweise werden über den zentralen Anbieterserver mehrere Kundensysteme betreut, wobei zu jedem Kundensystem in der Datenbank die notwendigen Informationen abgelegt sind. Die Kundensysteme sind hierbei in der Regel als geschlossene, lokale Netzwerke ausgebildet. Prinzipiell können in einem derartigen geschlossenen Kunden-Netzwerk die technischen Geräte auch über mehrere Standorte verteilt miteinander vernetzt sein.Preferably be over the central provider server cared for several customer systems, wherein to every customer system in the database the necessary information are stored. The customer systems are usually closed, formed local networks. In principle, in such a closed Customer network also distributes the technical equipment across multiple locations be networked with each other.

In einer zweckdienlichen Ausgestaltung wird das jeweilige Programmpaket automatisch auf das Kundensystem übertragen. Das jeweilige Programmpaket wird also direkt vom zentralen Anbieterserver im Kunden-Netzwerk abgelegt. Es ist daher von Kundenseite nicht erforderlich, durch einen separaten Verfahrensschritt das Programmpaket vom zentralen Anbieterserver herunterzuladen. Bevorzugt wird zugleich mit der Übermittlung des Programmpakets in der Datenbank des zentralen Anbieterservers vermerkt, dass dem Kunden die aktuelle Version zur Verfügung gestellt wurde. Für diese automatische Übermittlung ist hierbei eine spezielle Übermittlungssoftware auf dem Anbieterserver installiert, die bei Bedarf automatisch eine Verbindung zum Kundensystem aufbaut. Dem Anbieterserver stehen hierzu die erforderlichen Informationen, beispielsweise die IP-Adresse eines Kundenservers zur Verfügung, sowie die Angaben, wo auf diesem Server die einzelnen Updates abgelegt werden sollen. Zweckdienlicherweise ist weiterhin auch auf Kundenseite ein entsprechendes Programm installiert, welches das Eintreffen derartiger Programmpakete erkennt und eine entsprechende Meldung ausgibt.In an appropriate embodiment is the respective program package automatically transferred to the customer system. The respective program package is thus directly from the central provider server in the customer network stored. It is therefore not required by the customer a separate process step the program package from the central provider server download. Preference is given at the same time with the transmission of the program package in the database of the central provider server notes that the customer has the latest version provided has been. For this automatic transmission Here is a special delivery software installed on the provider server, which automatically creates a Establishment of connection to the customer system. The provider server are the required information, such as the IP address of a Customer server available, as well as the information, where on this server the individual updates filed should be. Expediently, it continues to be on the customer side as well installed a corresponding program, which is the arrival of such Recognizes program packages and issues a corresponding message.

Zur weiteren Vereinfachung und um eine verbesserte Kundenbetreuung zu ermöglichen, ist weiterhin in einer Weiterbildung vorgesehen, dass das jeweilige Programmpaket vom zentralen Anbieterserver aus direkt auf dem technischen Gerät installiert wird. Durch diese Maßnahmen wird das Kundensystem automatisch jeweils auf dem aktuellsten Stand gehalten, ohne dass es von Seiten des Kunden spezieller Maßnahmen bedarf.to further simplification and improved customer service enable, is further provided in a development that the respective Program package from the central provider server directly on the technical Device is installed. Through these measures the customer system is automatically kept up-to-date, without the customer requiring special measures.

Alternativ hierzu ist gemäß einer bevorzugten Ausgestaltung vorgesehen, dass das jeweilige Programmpaket einem zentralen Kundenserver zur Verfügung gestellt und von dort dezentral installiert wird. Das Programmpaket wird daher auf dem Kundenserver beispielsweise in einer entsprechenden Bibliothek abgelegt. Die Verteilung auf der Kundenseite geschieht beispielsweise automatisch oder manuell mit Hilfe eines Technikers und/oder mit Hilfe spezieller Installationsprogramme, die auf dem Kundenserver und – falls erforderlich – auch auf den einzelnen technischen Geräten (Clients) installiert sind. Insbesondere bei komplexen Kundensystemen, die aus einer Vielzahl von verschiedenen technischen Geräten bestehen, wird durch diese Maßnahme der Betreuungsaufwand über den zentralen Anbieterserver deutlich reduziert. Zudem wird durch diese Maßnahme auf Kundenseite eine oftmals gewünschte zentrale Eingriffsmöglichkeit bei der Verteilung ermöglicht. Insgesamt ist in dieser Ausführungsvariante daher ein Verfahren verwirklicht, bei dem zumindest drei unterschiedliche Hierarchieebenen vorgesehen sind. Dies ist auf der ersten Ebene der zentrale Anbieterserver, der sich auch aus mehreren einzelnen Geräten zusammensetzen kann. Auf der zweiten Ebene sind dies eine Vielzahl von unterschiedlichen zentralen Kundenservern, die sich bei einem Kunden jeweils auch aus mehreren Geräten zusammensetzen können sowie schließlich auf der dritten Ebene die einzelnen technischen Geräte (Clients), auf denen jeweils ein oder mehrere Anwendungsprogramme installiert sind. Von besonderer Bedeutung ist hierbei insbesondere die bevorzugte Variante, bei der die einzelnen Programmpakete mit der jeweiligen Endgeräte-Adresse bereitgestellt werden, so dass auch für den Kunden die dezentrale Verteilung sehr einfach und in effizienter Weise ermöglicht ist.alternative this is according to a preferred embodiment provided that the respective program package provided to a central customer server and from there is installed remotely. The program package will therefore be on the For example, customer servers are stored in a corresponding library. For example, distribution on the customer side happens automatically or manually with the help of a technician and / or with the help of special Installers running on the customer server and - if required - too on the individual technical devices (clients) are installed. Especially in complex customer systems, made up of a variety of different ones technical devices will pass through this measure the support effort over significantly reduced the central provider server. In addition, through This measure On the customer side a often desired central possibility of intervention in the distribution allows. Overall, in this embodiment Therefore, a method realized in which at least three different Hierarchy levels are provided. This is on the first level the central provider server, which also consists of several individual devices can assemble. At the second level, these are a variety from different central customer servers that are at one Customers can also be composed of several devices as well after all on the third level the individual technical devices (clients), on each of which one or more application programs installed are. Of particular importance in this case is the preferred variant, at the individual program packages with the respective terminal address be provided so that even for the customer the decentralized Distribution is made very simple and efficient.

Bei großen Kundensystemen wird oftmals das gleiche Anwendungsprogramm für mehrere gleichartige Geräte verwendet. Da die Anwendungsprogramme üblicherweise unmittelbar lokal auf den technischen Geräten installiert sind, muss das gleiche Programmpaket auf unterschiedlichen Geräten installiert werden. Um für derartige Systeme nicht für jedes einzelne Gerät ein jeweiliges identisches Programmpaket zur Verfügung stellen zu müssen, erhält das jeweilige Programmpaket in einer zweckdienlichen Weiterbildung Zusatzinformationen, auf welchen Geräten es zu installieren ist. Das jeweilige Programmpaket enthält daher beispielsweise als Zusatzinformation die IP-Adressen mehrerer Geräte.For large customer systems, the same application program is often used for several similar devices. Since the application programs are usually installed directly on the technical devices locally, the same program package must be installed on different devices. In order not to have to provide a respective identical program package for such systems for each individual device, the respective program package receives in a zweckdienli Additional training on which devices to install it. The respective program package therefore contains, for example as additional information, the IP addresses of several devices.

Zweckdienlicherweise ist weiterhin vorgesehen, dass mehrere technische Geräte eines Kundensystems in verschiedenen Gruppen zusammengefasst sind und dass vom Anbieterserver gruppenspezifische Programmpaket-Bündel bereitgestellt werden. In einem derartigen Programmpaket-Bündel sind mehrere Programmpakete zusammengefasst. Durch diese Maßnahme besteht die Möglichkeit, dem Kunden entsprechend dessen Organisationsstrukturen beispielsweise abteilungs- oder geschäftsgebiet-spezifische Bündel an Programmpaketen zur Verfügung zu stellen.Conveniently, is further provided that several technical devices of a Customer systems are grouped into different groups and that the provider server provides group-specific program bundles become. In such a program package bundle are several program packages summarized. By this measure it is possible, the customer according to its organizational structures, for example department or business area-specific bunch available in program packages to deliver.

Zweckdienlicherweise werden hierbei für die Programmpaket-Bündel unterschiedliche Zugriffrechte vergeben. Dies geschieht insbesondere zentral auf Seiten des Anbieterservers. Durch diese Maßnahme erhalten daher nur autorisierte Personen Zugriff auf die jeweiligen Programmpaket-Bündel, um diese beispielsweise von dem Kundenserver aus auf die einzelnen technischen Geräte einer bestimmten Abteilung zu installieren.Conveniently, be here for the program package bundles different Grant access rights. This happens especially centrally Pages of the provider server. By this measure, therefore, only authorized People access to the respective program package bundle to this for example, from the customer server to the individual technical equipment to install a specific department.

Gemäß einer bevorzugten Ausgestaltung ist weiterhin vorgesehen, dass nach erfolgter Installation eines jeweiligen Programmpakets eine Bestätigung hierüber an den zentralen Anbieterserver entweder unmittelbar vom jeweiligen technischen Gerät aus oder auch mittelbar über den Kundenserver übermittelt und die dort gepflegte Datenbank aktualisiert wird. Durch diese Maßnahme ist auf dem zentralen Anbieterserver nicht nur die Information hinterlegt, dass ein entsprechendes Update zur Verfügung gestellt worden ist. Vielmehr ist gewährleistet, dass Informationen über den tatsächlichen aktuellen Konfigurationszustands jedes einzelnen technischen Geräts in der Datenbank vorhanden sind.According to one preferred embodiment is further provided that after the successful Installation of a respective program package confirms this to the central provider server either directly from the respective technical Device off or indirectly via transmitted to the customer server and the database maintained there is updated. Through this measure is not only the information stored on the central provider server, that a corresponding update has been made available. Much more is guaranteed that information about the actual current configuration state of each individual technical device in the Database are available.

Dieses Verfahren zur Software-Aktualisierung und Software-Verteilung wird insbesondere zur Betreuung von medizinischen Diagnose- oder Therapieanlagen sowie zugehörigen Anlagen zur Datenverarbeitung eingesetzt, wie sie beispielsweise in Kliniken oder anderen medizinischen Einrichtungen verwendet werden. Derartige medizinische Geräte sind beispielsweise Computertomographie-Anlagen, Magnetresonanz-Anlagen, Strahlentherapie-Anlagen, beispielsweise Partikelstrahl-Anlagen in der Nuklearmedizin sowie die für die Durchführung einer Diagnose oder Therapie mit derartigen Anlagen notwendigen weiteren Komponenten inklusive der Einrichtungen zur Auswertung und Darstellung der gewonnenen Daten, insbesondere die Bildauswertung.This Procedures for software update and software distribution will be particular for the care of medical diagnostic or therapeutic facilities as well associated Data processing equipment used, as for example used in clinics or other medical facilities. Such medical devices are for example computed tomography systems, magnetic resonance systems, Radiotherapy systems, such as particle beam systems in nuclear medicine as well as for conducting a Diagnosis or therapy with such facilities necessary further Components including facilities for evaluation and display the data obtained, in particular the image analysis.

Ein Ausführungsbeispiel der Erfindung wird im Folgenden anhand der einzigen Figur näher erläutert. Diese zeigt in einer schematischen und stark vereinfachten Darstellung einen mit mehreren Kundensystemen verbundenen zentralen Anbieterserver eines Software-Anbieters.One embodiment The invention will be explained in more detail below with reference to the single FIGURE. These shows in a schematic and highly simplified representation a central provider server associated with multiple customer systems Software provider.

Beim Ausführungsbeispiel gemäß der Figur steht ein zentraler Anbieterserver I, welcher eine Datenbank 2 aufweist, über Datenleitungen 4 mit mehreren Kundensystemen A, B, C, D zumindest bedarfsweise in Verbindung. Die Datenleitungen 4 sind beispielsweise Internet-Verbindungen, feste Datenleitungen oder auch einzelweise Telefonverbindungen. Die einzelnen Kundensysteme A-D sind üblicherweise als in sich geschlossene Netzwerke ausgebildet, die untereinander nicht in direkter Verbindung stehen. Jedes der Kundensystem A-D weist daher ein eigenes, in sich abgeschlossenes lokales Netzwerk auf. Dieses umfasst jeweils einen zentralen Kundenserver AII, BII, CII, DII sowie mit diesen verbundene technische Geräte (Clients) AIII 1-3, BIII 1-3, CIII a1-a3, CIII b1-b2, DIII. Diese werden im Folgenden vereinfacht mit den Bezugszeichen AIII, BIII, CIII, DIII bezeichnet. Es sind daher insgesamt drei Hierarchieebenen vorgesehen, nämlich die erste Hierarchieebene des zentralen Anbieterservers I, die zweite Hierarchieebene der Kundenserver AII-DII sowie die dritte Hierarchieebene der einzelnen technischen Geräte AIII-DIII.In the embodiment according to the figure is a central provider server I, which is a database 2 has, over data lines 4 with several customer systems A, B, C, D at least as needed in conjunction. The data lines 4 are for example Internet connections, fixed data lines or individual telephone connections. The individual customer systems AD are usually designed as self-contained networks that are not in direct contact with each other. Each of the customer systems AD therefore has its own, self-contained local network. This includes in each case a central customer server AII, BII, CII, DII and related technical equipment (clients) AIII 1-3, BIII 1-3, CIII a1-a3, CIII b1-b2, DIII. These are hereinafter referred to simply by the reference symbols AIII, BIII, CIII, DIII. There are therefore provided a total of three hierarchical levels, namely the first hierarchical level of the central provider server I, the second hierarchy level of the customer server AII-DII and the third hierarchical level of the individual technical devices AIII-DIII.

Beim Kundensystem C sind die einzelnen technischen Geräte AIII-DIII in zwei Gruppen a, b zusammengefasst, wobei die beiden Gruppen a, b beispielsweise unterschiedlichen Organisationseinheiten zugewiesen sind.At the Customer system C are the individual technical devices AIII-DIII are grouped into two groups a, b, where the two groups a, For example, b assigned to different organizational units are.

Die technischen Geräte AIII-DIII sind medizinische Geräte, beispielsweise Computertomographen, Magnetresonanzgeräte, Strahlentherapieanlagen oder andere medizinische Geräte sowie weitere Rechnereinheiten und PCs. Auf jedem der Geräte AIII-DIII ist ein oder sind mehrere Anwendungsprogramme installiert.The technical devices AIII-DIII are medical devices, For example, CT scanners, magnetic resonance devices, radiation therapy equipment or other medical devices as well as other computer units and PCs. On each of the devices AIII-DIII is an or Several application programs are installed.

Üblicherweise werden die einzelnen technischen Geräte AIII-DIII sowie die auf diesen laufenden Anwendungsprogramme vom gleichen Anbieter oder Hersteller bereitgestellt und auch betreut. Im Rahmen dieser Kundenbetreuung wird die auf den technischen Geräten AIII-DIII installierte Software gepflegt, d.h. sie wird auf dem jeweils aktuellsten Stand gehalten.Usually become the individual technical devices AIII-DIII as well as the application programs running on them provided and maintained by the same supplier or manufacturer. As part of this customer care, the on the technical equipment AIII-DIII installed software, i. she will be on the most recent Held up.

Wird ein Anwendungsprogramm vom Anbieter weiter entwickelt, so wird üblicherweise nicht das gesamte Programm, sondern es werden lediglich einzelne Programmpakete i-iii geändert und ausgetauscht. Sobald diese Programmpakete i-iii, die für un terschiedliche Anwendungsprogramme vorgesehen sind, fertiggestellt sind, werden sie auf dem Anbieterserver I abgelegt. Gleichzeitig wird in der Datenbank 2 die Information über die aktuelle Versionsnummer des jeweiligen Anwendungsprogramms abgelegt.If an application program is further developed by the provider, usually the entire program will not be changed, but only individual program packages i-iii will be changed and replaced. As soon as these program packages i-iii, which are intended for different application programs, are completed, they will be displayed on the Provider server I filed. At the same time in the database 2 the information about the current version number of the respective application program is stored.

In der Datenbank 2 sind umfassende Daten über die vom Anbieterserver I betreuten Kundensysteme A-D enthalten. So sind in dieser Datenbank 4 Informationen darüber abgelegt, welche Anwendungsprogramme bei welchem Kunden auf welchem technischen Gerät installiert sind, welche Konfigurationen vorgesehen sind und insbesondere Informationen über die jeweils gegenwärtig verwendete Kundenversion des jeweiligen Anwendungsprogramms. Weiterhin sind in der Datenbank 2 zu den einzelnen technischen Geräten AIII-DIII eine Adresse, beispielsweise eine kundenspezifische Bezeichnung oder eine IP-Adresse hinterlegt. Auch sind in der Datenbank die notwendigen Kontaktinformationen zum Verbindungsaufbau zu den einzelnen Kundenservern II hinterlegt. Sobald neue Programmmodule i-iii bereitstehen und die Information hierüber in der Datenbank 4 hinterlegt ist, ermittelt der Anbieterserver I automatisch, welche Kundensysteme A-D mit den entsprechenden Programmpaketen i-iii versorgt werden müssen.In the database 2 Comprehensive data is contained about the customer systems AD managed by the provider server I. So are in this database 4 Information about which application programs are installed at which customer on which technical device, which configurations are provided and in particular information about the currently used customer version of the respective application program. Furthermore, in the database 2 for the individual technical devices AIII-DIII an address, for example, a customer-specific name or an IP address deposited. Also, the necessary contact information for establishing a connection to the individual customer servers II are stored in the database. As soon as new program modules i-iii are available and the information about them in the database 4 is deposited, determines the vendor server I automatically, which customer systems AD must be supplied with the appropriate program packages i-iii.

Erkennt der Anbieterserver I, dass für ein bei einem Kunden verwendetes Anwenderprogramm ein neues Programmmodul i-iii vorliegt, so stellt der Anbieterserver I die für ein jeweiliges Kundensystem A-D zugehörigen Programmmodule i-iii zusammen und übermittelt diese automatisch an das jeweilige Kundensystem A-D und die Kundensysteme A-D erhalten daher jeweils nur die für sie erforderlichen Programmpakete i-iii. Das jeweilige Programmpaket i-iii wird hierbei jeweils mit der jeweiligen Geräteadresse des Gerätes AIII-DIII versehen, auf dem das Programmpaket i-iii installiert werden soll.Recognizes the provider server I, that for a user program used by a customer, a new program module i-iii is present, the provider server I sets the one for a respective Customer system A-D associated Program modules i-iii together and transmit them automatically to the respective customer system A-D and the customer systems A-D therefore only the for necessary program packages i-iii. The respective program package i-iii is in each case with the respective device address of the equipment Provide AIII-DIII on which the program package i-iii installs shall be.

Die Programmpakete i-iii werden hierbei an den jeweiligen Kundenserver AII-DII gesendet. Hierzu ist ein spezielles Software-Verteilungsprogramm auf dem Anbieterserver I instal liert, welches automatisch eine Verbindung zu den jeweiligen Kundensystemen A-D aufbaut und die Programmpakete i-iii kundenspezifisch an die jeweiligen Kundenserver II versendet. Dabei werden die Programmpakete i-iii automatisch an der dafür vorgesehenen Stelle in der Bibliothek des jeweiligen Kundenservers AII-DII abgelegt.The Program packages i-iii are sent to the respective customer server AII-DII sent. For this purpose, a special software distribution program is on the vendor server I installed instal, which automatically connects to the respective customer systems A-D and builds the program packages i-iii customized to the respective customer server II shipped. In this case, the program packages i-iii are automatically at the designated Place in the library of the respective customer server AII-DII.

Im Falle des Kundensystems C, bei dem die einzelnen technischen Geräte in zwei Gruppen a, b gruppiert sind, stellt der Anbieterserver I zwei gruppenspezifische Programmpaket-Bündel a', b' zusammen, die an das Kundensystem C übermittelt werden. Bevorzugt werden diesen gruppenspezifischen Zusammenstellungen a', b' unterschiedliche Zugriffsrechte zugewiesen, so dass nur Personen mit dem für die jeweilige Gruppe a', b' gültigen Zugriffrecht die jeweiligen Programmpakete i-iii installieren kann.in the Case of the customer system C, in which the individual technical devices in two Groups a, b are grouped, the provider server I provides two group-specific Program package bundle a ', b' together, the an the customer system C transmitted become. Preference is given to these group-specific compilations a ', b' different Assigned access rights so that only people with that for each Group a ', b' valid access rights can install the respective program packages i-iii.

Die Installation der einzelnen Programmpakete i-iii auf Seiten der Kundensysteme A-D erfolgt dezentral vom jeweiligen Kundenserver II aus. Dies geschieht entweder manuell über einen Servicetechniker oder auch automatisch über ein geeignetes Software-Verteilungsprogramm, welches auf dem Kundenserver AII-DII und den einzelnen technischen Geräten AIII-DIII installiert ist.The Installation of the individual program packages i-iii on the part of the customer systems A-D is decentralized from the respective customer server II. this happens either manually a service technician or automatically via a suitable software distribution program, which on the customer server AII-DII and the individual technical devices AIII-DIII is installed.

Sobald die Programmpakete i-iii auf dem jeweiligen technischen Gerät AIII-DIII installiert ist, wird eine Bestätigungsinformation an den Anbieterserver I gemeldet und in der Datenbank 2 hinterlegt, so dass hier jeweils die Informationen über die tatsächlich aktuelle Version abgelegt ist.As soon as the program packages i-iii are installed on the respective technical device AIII-DIII, confirmation information is reported to the provider server I and in the database 2 deposited, so that in each case the information about the actual version is stored.

Das hier beschriebene Verfahren zeichnet sich insbesondere dadurch aus, dass zentral auf dem zentralen Anbieterserver I die Konfigurationsdaten der einzelnen technischen Geräte AIII-DIII hinterlegt sind, dass der Anbieterserver I automatisch die jeweils erforderlichen Programmpakete i-iii kundenspezifisch zusammenstellt und an das jeweilige Kundensystem A-D als adressierbare Programmpakete i-iii übermittelt. Von besonderer Bedeutung ist weiterhin, dass die adressierten Programmpakete i-iii einem zentralen Kundenserver AII-DII übermittelt und von dort dezentral auf die einzelnen technischen Geräte AIII-DIII installiert wird.The The method described here is characterized in particular by that centrally on the central provider server I, the configuration data of the individual technical devices AIII-DIII are deposited, that the vendor server I automatically the respective required program packages i-iii customized assembles and to the respective customer system A-D as addressable Program packages i-iii transmitted. Of particular importance is still that the addressed program packages i-iii sent to a central customer server AII-DII and from there decentralized is installed on the individual technical devices AIII-DIII.

Durch dieses Verfahren ist insgesamt eine kundenfreundliche, zeitsparende und damit effiziente Software-Verteilung von einzelnen Programmpaketen i-iii oder auch kompletten Anwendungsprogrammen ermöglicht.By This process is overall a customer-friendly, time-saving and thus efficient software distribution of individual program packages i-iii or even complete application programs.

Claims (11)

Verfahren zur Software-Verteilung von einem zentralen Anbieterserver (I) eines Software-Anbieters auf ein Kundensystem (A-D) mit zumindest einem technischen Gerät (AIII-DIII), auf dem zumindest ein von dem Software-Anbieter betreutes Anwendungsprogramm installiert ist, dadurch gekennzeichnet, dass auf dem zentralen Anbieterserver (I) in einer Datenbank (2) Informationen über die gegenwärtige Kundenversion des beim Kundensystem (A-D) verwendeten Anwendungsprogramms sowie über die aktuelle Version des Anwendungsprogramms hinterlegt sind und dass der zentrale Anbieterserver (I) automatisch anhand der hinterlegten Informationen überprüft, ob die gegenwärtige Kundenversion der aktuellen Version entspricht und bei Bedarf ein der aktuellen Version des Anwendungsprogramms entsprechendes Programmpaket (i-iii) dem Kundensystem (A-D) über eine Datenleitung (4) automatisch zur Verfügung stellt.Method for software distribution from a central provider server (I) of a software provider to a customer system (AD) with at least one technical device (AIII-DIII) on which at least one application program managed by the software provider is installed, characterized that on the central provider server (I) in a database ( 2 Information about the current customer version of the application program used in the customer system (AD) and the current version of the application program are stored and that the central provider server (I) automatically checks on the basis of the stored information whether the current customer version corresponds to the current version and if necessary the current version of the application program corresponding program package (i-iii) the customer system (AD) via a data line ( 4 ) automatically provides. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass weiterhin eine Geräteadresse des technischen Geräts (AIII-DIII) auf dem zentralen Anbieterserver (I) abgelegt ist und das Programmpaket (i-iii) mit Angabe der Geräteadresse dem Kundensystem (A-D) zur Verfügung gestellt wird.Method according to claim 1, characterized in that that still has a device address of the technical device (AIII-DIII) is stored on the central provider server (I) and the program package (i-iii) indicating the device address to the customer system (A-D) available is provided. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass über den zentralen Anbieterserver (I) mehrere Kundensysteme (A-D) betreut werden und zu jedem Kundensystem (A-D) Informationen über die Kundenversion der eingesetzten Anwendungsprogramme sowie deren Zuordnung zu den jeweiligen technischen Geräten (AIII-DIII) und deren Geräteadresse hinterlegt sind.Method according to claim 1 or 2, characterized that over the central provider server (I) several customer systems (A-D) are maintained and for each customer system (A-D) information about the customer version of the used Application programs and their assignment to the respective technical devices (AIII-DIII) and their device address are deposited. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das jeweilige Programmpaket (i-iii) automatisch auf das Kundensystem (A-D) übertragen wird.Method according to one of the preceding claims, characterized characterized in that the respective program package (i-iii) automatically transferred to the customer system (A-D) becomes. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das jeweilige Programmpaket (i-iii) vom zentralen Anbieterserver (I) aus auf dem technischen Gerät (AIII-DIII) installiert wird.Method according to one of the preceding claims, characterized characterized in that the respective program package (i-iii) from the central Provider server (I) is installed on the technical device (AIII-DIII). Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass das Programmpaket (i-iii) einem zentralen Kundenserver (AII-DII) zur Verfügung gestellt und von dort dezentral installiert wird.Method according to one of claims 1 to 4, characterized the program package (i-iii) belongs to a central customer server (AII-DII) to disposal and decentralized from there. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass ein dem zentralen Kundenserver (AII-DII) übermitteltes Programmpaket (i-iii) für mehrere technische Geräte (AIII-CIII) des Kundensystems (A-D) vorgesehen ist und das übermittelte Programmpaket (i-iii) Zusatzinformationen enthält, auf welchen technischen Geräten (AIII-CIII) es zu installieren ist.Method according to Claim 6, characterized a program package transmitted to the central customer server (AII-DII) (i-iii) for several Technical Devices (AIII-CIII) of the customer system (A-D) is provided and the transmitted Program package (i-iii) contains additional information on which technical devices (AIII-CIII) it is to be installed. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass mehrere technische Geräte (CIIIa1-a3, CIIIb1-b2) eines Kundensystems (C) in verschiedenen Gruppen (a, b) zusammengefasst sind und dass vom zentralen Anbieterserver (I) gruppenspezifische Programmpaket-Bündel (a', b') bereitgestellt werden.Method according to one of the preceding claims, characterized characterized in that several technical devices (CIIIa1-a3, CIIIb1-b2) of a Customer system (C) in different groups (a, b) summarized and that from the central provider server (I) are group-specific Program package bundle (a ', b') provided become. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass für die verschiedenen gruppenspezifischen Programmpaket-Bündel (a', b') unterschiedliche Zugriffsrechte vergeben werden.Method according to claim 8, characterized in that that for the different group-specific program package bundles (a ', b') are different Access rights are granted. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass nach erfolgter Installation eines jeweiligen Programmpakets (i-iii) eine Bestätigung hierüber an den zentralen Anbieterserver (I) übermittelt und dort die Datenbank (2) aktualisiert wird.Method according to one of the preceding claims, characterized in that after successful installation of a respective program package (i-iii) an acknowledgment thereof is transmitted to the central provider server (I) and there the database ( 2 ) is updated. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass als technische Geräte (AIII-DIII) medizinische Diagnose- oder Therapieanlagen sowie zugehörige Anlagen zur Datenverarbeitung eingesetzt sind.Method according to one of the preceding claims, characterized characterized in that as technical devices (AIII-DIII) medical Diagnostic or therapy equipment and associated data processing equipment are used.
DE200510051603 2005-10-27 2005-10-27 Software distribution process Active DE102005051603B4 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE200510051603 DE102005051603B4 (en) 2005-10-27 2005-10-27 Software distribution process
US11/584,066 US8271970B2 (en) 2005-10-27 2006-10-20 Method for software distribution

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200510051603 DE102005051603B4 (en) 2005-10-27 2005-10-27 Software distribution process

Publications (2)

Publication Number Publication Date
DE102005051603A1 DE102005051603A1 (en) 2007-05-03
DE102005051603B4 true DE102005051603B4 (en) 2008-06-12

Family

ID=37912698

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200510051603 Active DE102005051603B4 (en) 2005-10-27 2005-10-27 Software distribution process

Country Status (1)

Country Link
DE (1) DE102005051603B4 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8806473B2 (en) 2011-08-02 2014-08-12 Roche Diagnostics Operations, Inc. Managing software distribution for regulatory compliance
EP3599550A1 (en) * 2018-07-27 2020-01-29 Siemens Aktiengesellschaft Method and server for distributing software to a number of computers in a network

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5909581A (en) * 1995-12-30 1999-06-01 Samsung Electronics Co., Ltd. Automatic software updating method
US6006034A (en) * 1996-09-05 1999-12-21 Open Software Associates, Ltd. Systems and methods for automatic application version upgrading and maintenance
US20030046677A1 (en) * 2001-08-30 2003-03-06 St. Jude Medical Ab Method for providing software to an implantable medical device system
US6718549B1 (en) * 1999-05-05 2004-04-06 Microsoft Corporation Methods for managing the distribution of client bits to client computers
US6718547B2 (en) * 1998-02-17 2004-04-06 Fuji Photo Film Co., Ltd. Medical network system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5909581A (en) * 1995-12-30 1999-06-01 Samsung Electronics Co., Ltd. Automatic software updating method
US6006034A (en) * 1996-09-05 1999-12-21 Open Software Associates, Ltd. Systems and methods for automatic application version upgrading and maintenance
US6718547B2 (en) * 1998-02-17 2004-04-06 Fuji Photo Film Co., Ltd. Medical network system
US6718549B1 (en) * 1999-05-05 2004-04-06 Microsoft Corporation Methods for managing the distribution of client bits to client computers
US20030046677A1 (en) * 2001-08-30 2003-03-06 St. Jude Medical Ab Method for providing software to an implantable medical device system

Also Published As

Publication number Publication date
DE102005051603A1 (en) 2007-05-03

Similar Documents

Publication Publication Date Title
US8271970B2 (en) Method for software distribution
DE19581888B4 (en) Method for automatic shared use of information by multiple remote / mobile nodes
DE19949841B4 (en) A burn-in rack tester and method for testing computer systems
DE102005049055B4 (en) Method to sequence events in a system event log
EP1430369B1 (en) Dynamic access to automation resources
DE10064789A1 (en) Medical diagnosis system configuration and monitoring method uses link to remote installation for transmission of identification information for operation of system unit
DE10057625A1 (en) Remote configuration and maintenance method for exchangeable unit of medical diagnostic system e.g. X-ray imaging system, involves performing configuration of X-ray imaging system according to configuration information of remote unit
DE10328357A1 (en) Automatic network interface management system uses unique codes granted to sites connected to interfaces to perform network management
EP0849666A2 (en) Method for instantiating class versions
DE10309246B4 (en) Procedure for event management
EP1638028A2 (en) Computer aided generation and change management for user interfaces
DE102006010005A1 (en) A method and system for providing maintenance information of a medical device to the mobile device of a service technician
EP2397913B1 (en) Maintenance follow-up system
DE60019491T2 (en) Radiology system with data transmission and associated method
DE102005051603B4 (en) Software distribution process
DE102004040290A1 (en) Medical device and method for generating a checklist
DE10201326A1 (en) Technical device with a service software stored on a computer of the technical device
DE102004052090A1 (en) A system and method for remotely generating an activation key and a script to remotely enable a software-based option
EP1267297A2 (en) Method for controlling and monitoring the process flow to determine the performance of a telemedicine healthcareservice
EP2255498B1 (en) Release of automation units connected to a system and corresponding system
DE10050546B4 (en) Method of distributing a meter firmware program code to multiple meters
DE102021200191B3 (en) Method for processing configuration data from a large number of entities, methods and devices interacting therewith, and computer program product and signal sequence
WO2004034246A2 (en) Method and device for the automatic generation of program code, documentation text and management information bases using the data of a database
DE102009041173A1 (en) Method for updating data or programs stored in toll metering device, involves storing updated data or programs as new release in data processing device and are available as distribution in server for transmission to toll metering device
EP3306469A1 (en) Method for generating an equipment hierarchy

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012240000

Ipc: H04L0041000000