EP1579301B1

Method, system and computer-readable medium for a software distribution service

Abstract

This record has no abstract on file.

EP1579301B1, drawing sheet 1
Sheet 1 of 14

Term

Term ended

Expired 23 July 2024, 2.2 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

24 claims: 24 independent, 0 dependent

  1. 1
    A method of communicating between a client computing device process and a server process, in a distributed processing system, the method comprising:(a) issuing, by the client process, a synchronization request, wherein the synchronization request includes an identifier of an installed software update if the client computing device (110) stores the installed software update and an identifier for a failed software update that is not installed;(b) receiving, by the server process, the synchronization request;(c) selecting, by the server process, an additional software update if the synchronization request comprises an identifier of at least one software update, wherein the selection of the additional software update is dependent on the fulfillment of a prerequisite defined in the additional software update, wherein the prerequisite requires the synchronization request to include an identifier for at least one specific software update and restricting, by the server process, the issuance of the selected software update if the selected software update is related to an identifier for a failed software update;(d) selecting, by the server process, a first level software update having a null value as a prerequisite if it is determined that the synchronization request does not comprise an identifier of at least one software update;(e) issuing, by the server process, an instruction component of the selected software update;(f) receiving, by the client process, the instruction component of the selected software update;(g) storing, by the client process, the instruction components of the selected software update in the client computing device as an installed software update if the client computing device contains at least one component that fulfills a condition of an applicability rule stored in the selected software update;(h) issuing, by the server process, a localized data component of the selected software update;and(i) receiving, by the client process, the localized data component of the selected software update, the localized data component including general information describing the update and allowing the client process to generate a download request for receipt of a data component of the selected software update. Procédé de communication entre un processus de dispositif informatique client et un processus serveur, dans un système de traitement distribué, le procédé comprenant les étapes suivantes: (a) émettre, par le processus client, une requête de synchronisation, dans lequel la requête de synchronisation inclut un identifiant d'une mise à jour logicielle installée si le dispositif informatique client (110) stocke la mise à jour logicielle installée et un identifiant d'une mise à jour logicielle ayant échoué et qui n'est pas installée;(b) recevoir, par le processus serveur, la requête de synchronisation;(c) sélectionner, par le processus serveur, une mise à jour logicielle supplémentaire si la requête de synchronisation comprend un identifiant d'au moins une mise à jour logicielle, dans lequel la sélection de la mise à jour logicielle supplémentaire dépend de l'accomplissement d'une condition préalable définie dans la mise à jour de logiciel supplémentaire, dans lequel condition préalable nécessite que la requête de synchronisation inclue un identifiant pour au moins une mise à jour logicielle spécifique et en limitant, par le processus serveur, l'émission de la mise à jour logicielle sélectionnée si la mise à jour logicielle sélectionnée est liée à un identifiant pour une mise à jour logicielle ayant échoué;(d) sélectionner, par le processus serveur, une mise à jour logicielle de premier niveau ayant une valeur nulle comme condition préalable s'il est déterminé que la requête de synchronisation ne comprend pas d'identifiant d'au moins une mise à jour logicielle;(e) émettre, par le processus serveur, un composant d'instruction de la mise à jour logicielle sélectionnée;(f) recevoir, par le processus client, un composant d'instruction de la mise à jour logicielle sélectionnée;(g) stocker, par le processus client, les composants d'instruction de la mise à jour logicielle sélectionnée dans le dispositif informatique client en tant que mise à jour logicielle installée si le client dispositif informatique contient au moins un composant qui remplit une condition d'un règle d'applicabilité stockée dans la mise à jour logicielle sélectionnée;(h) émettre, par le processus serveur, une composante de données localisée de la mise à jour logicielle sélectionnée ;et(i) recevoir, par le processus client, le composant de données localisé de la mise à jour logicielle sélectionnée, le composant de données localisé comprenant des informations générales décrivant la mise à jour et permettant au processus client de générer une requête de téléchargement pour la réception d'un composant de données de la mise à jour logicielle sélectionnée. Verfahren zum Kommunizieren zwischen einem Client-Computervorrichtungsprozess und einem Server-Prozess in einem verteilten Verarbeitungssystem, wobei das Verfahren umfasst: (a) Ausgeben durch den Client-Prozess einer Synchronisationsanforderung, wobei die Synchronisationsanforderung eine Kennung einer installierten Software-Aktualisierung aufweist, wenn die Client-Computervorrichtung (110) die installierte Software-Aktualisierung speichert;(b) Empfangen durch den Server-Prozess der Synchronisationsanforderung;(c) Auswählen durch den Server-Prozess einer zusätzlichen Software-Aktualisierung, wenn die Synchronisationsanforderung eine Kennung wenigstens einer Software-Aktualisierung umfasst, wobei die Auswahl der zusätzlichen Software-Aktualisierung von der Erfüllung einer in der zusätzlichen Software-Aktualisierung definierten Voraussetzung abhängt, wobei die Voraussetzung erfordert, dass die Synchronisationsanforderung eine Kennung für wenigstens eine spezifische Software-Aktualisierung und Einschränkung die Ausgabe der ausgewählten Software-Aktualisierung durch den Server-Prozess aufweist, wenn sich die ausgewählte Software-Aktualisierung auf eine Kennung für eine fehlgeschlagene Software-Aktualisierung bezieht;d) Auswählen durch den Server-Prozess einer Software-Aktualisierung der ersten Ebene mit einem Nullwert als eine Voraussetzung, wenn bestimmt wird, dass die Synchronisationsanforderung keine Kennung von wenigstens einer Software-Aktualisierung umfasst;(e) Ausgeben durch den Server-Prozess einer Anweisungskomponente der ausgewählten Software-Aktualisierung;(f) Empfangen durch den Client-Prozess der Anweisungskomponente der ausgewählten Software-Aktualisierung,(g) Speichern durch den Client-Prozess der Anweisungskomponenten der ausgewählten Software-Aktualisierung in der Client-Computervorrichtung als eine installierte Software-Aktualisierung, wenn die Client-Computervorrichtung wenigstens eine Komponente enthält, die eine Bedingung einer in dem System gespeicherten Anwendbarkeitsregel in der ausgewählten Software-Aktualisierung erfüllt;(h) Ausgeben durch den Server-Prozess einer lokalisierten Datenkomponente der ausgewählten Software-Aktualisierung und(i) Empfangen durch den Client-Prozess der lokalisierten Datenkomponente der ausgewählten Software-Aktualisierung, wobei die lokalisierte Datenkomponente allgemeine Informationen aufweist, die die Aktualisierung beschreiben und es dem Client-Prozess ermöglichen, eine Download-Anforderung zum Empfang einer Datenkomponente der ausgewählten Software-Aktualisierung zu erzeugen.
  2. 2
    Procédé selon la revendication 1, dans lequel le procédé consiste en outre, par le processus client, à répéter les éléments (a) - (h) si le composant d'instruction de la mise à jour logicielle sélectionnée indique qu'il existe des mises à jour logicielles supplémentaires en vue d'un traitement par le processus client. The method as recited in claim 1, wherein the method further comprises, by the client process, repeating elements (a) - (h) if the instruction component of the selected software update provides an indication that there are additional software updates for processing by the client process. Verfahren nach Anspruch 1, wobei das Verfahren des Weiteren durch den Client-Prozess das Wiederholen von Elementen (a) bis (h) umfasst, wenn die Anweisungskomponente der ausgewählten Software-Aktualisierung einen Hinweis bereitstellt, dass es zusätzliche Software-Aktualisierungen zur Verarbeitung durch den Client-Prozess gibt.
  3. 3
    Procédé selon la revendication 1, dans lequel le processus client appelle une application pour générer un affichage du composant de données localisé de la mise à jour logicielle sélectionnée sur un affichage lors de la réception du composant de données localisé. The method as recited in claim 1, wherein the client process invokes an application to generate a display of the localized data component of the selected software update on a display upon receiving the localized data component. Verfahren nach Anspruch 1, wobei der Client-Prozess eine Anwendung aufruft, um eine Anzeige der lokalisierten Datenkomponente der ausgewählten Software-Aktualisierung auf einer Anzeige beim Empfangen der lokalisierten Datenkomponente zu erzeugen.
  4. 4
    Procédé selon la revendication 3, dans lequel le procédé consiste en outre à:recevoir, par le processus client, une commande pour appeler la communication d'un fichier de données associé à la mise à jour logicielle sélectionnée;etémettre, par le processus client, une commande pour communiquer le fichier de données associé à la mise à jour logicielle sélectionnée;recevoir, par le processus serveur, une commande pour communiquer le fichier de données associé à la mise à jour logicielle sélectionnée, et invoquer une application pour télécharger le fichier de données. The method as recited in claim 3, wherein the method further comprises: receiving, by the client process, a command for invoking the communication of a data file associated with the selected software update;andissuing, by the client process, a command for communicating the data file associated with the selected software update;receiving, by the server process, command for communicating the data file associated with the selected software update, and invoking an application to download the data file. Verfahren nach Anspruch 3, wobei das Verfahren des Weiteren umfasst: Empfangen durch den Client-Prozess eines Befehls zum Aufrufen der Kommunikation einer der ausgewählten Software-Aktualisierung zugeordneten Datei undAusgeben durch den Client-Prozess eines Befehls zum Kommunizieren der der ausgewählten Software-Aktualisierung zugeordneten Datei;Empfangen durch den Server-Prozess eines Befehls zum Kommunizieren der der ausgewählten Software-Aktualisierung zugeordneten Datei und Aufrufen einer Anwendung zum Download der Datei.
  5. 5
    Procédé selon la revendication 1, dans lequel le procédé consiste en outre à:intégrer, par le processus client, un identifiant de la mise à jour logicielle installée dans la requête de synchronisation si une mémoire lue par le processus client stocke la mise à jour logicielle installée. The method as recited in claim 1, wherein the method further comprises: integrating, by the client process, an identifier of the installed software update into the synchronization request if a memory read by the client process stores the installed software update. Verfahren nach Anspruch 1, wobei das Verfahren des Weiteren umfasst: Integrieren durch den Client-Prozess einer Kennung der installierten Software-Aktualisierung in die Synchronisationsanforderung, wenn ein von dem Client-Prozess gelesener Speicher die installierte Software-Aktualisierung speichert.
  6. 6
    Procédé selon la revendication 1, dans lequel le procédé consiste en outre à:stocker, par le processus client, les composants d'instruction de la mise à jour logicielle sélectionnée dans le dispositif informatique client (110) en tant que mise à jour logicielle installée si le client dispositif informatique détermine qu'au moins une condition d'un règle d'applicabilité stockée dans la mise à jour logicielle sélectionnée n'est pas remplie. The method as recited in claim 1, wherein the method further comprises: storing, by the client process, the instruction components of the selected software update in the client computing device (110) as a failed software update if the client process determines that at least one condition of an applicability rule stored in the selected software update is not fulfilled. Verfahren nach Anspruch 1, wobei das Verfahren des Weiteren umfasst: Speichern durch den Client-Prozess der Anweisungskomponenten der ausgewählten Software-Aktualisierung in der Client-Computervorrichtung (110) als eine fehlgeschlagene Software-Aktualisierung, wenn der Client-Prozess bestimmt, dass wenigstens eine Bedingung einer in der ausgewählten Software-Aktualisierung gespeicherten Anwendbarkeitsregel nicht erfüllt ist.
  7. 7
    Procédé selon la revendication 1, dans lequel le procédé consiste en outre à:(a) émettre, par le processus client, une requête d'autorisation, dans laquelle la requête d'autorisation contient un identifiant d'un module d'autorisation client associé à un groupe cible de dispositifs informatiques clients éligibles pour recevoir des logiciels mises à jour;(b) recevoir, par le processus serveur, la requête d'autorisation;(c) émettre, par le processus serveur, un cookie serveur identifiant le groupe cible si le processus serveur détermine que le dispositif informatique client est associé au groupe ciblé, en indiquant par le module d'autorisation du client que le dispositif informatique client est associé au groupe cible, et dans lequel le serveur cookie permet à un dispositif informatique client d'accéder à la mise à jour logicielle individuelle si le dispositif informatique client (110) contient le module d'autorisation indiquant que le dispositif informatique client est associé au groupe cible;(d) recevoir, par le processus client, le cookie serveur identifiant le groupe cible;(e) émettre, par le processus client, une requête de mise à jour pour au moins une mise à jour logicielle, dans lequel la requête contient le cookie serveur;(f) recevoir, par le processus serveur, la requête de mise à jour;(g) émettre, par le processus serveur, une mise à jour logicielle si la mise à jour logicielle est associée au groupe cible identifié dans le cookie serveur;et(h) recevoir, par le processus client, la mise à jour logicielle si la mise à jour logicielle est associée au groupe cible identifié dans le cookie serveur. The method as recited in claim 1, wherein the method further comprises: (a) issuing, by the client process, an authorization request, wherein the authorization request contains an identifier of a client authorization module associated with a target group of client computing devices that are eligible to receive software updates;(b) receiving, by the server process, the authorization request;(c) issuing, by the server process, a server cookie identifying the target group if the server process determines that the client computing device is associated with the target group, by indicating by the client authorization module that the client computing device is associated with the target group, and wherein the server cookie is for allowing a client computing device to access to the individual software update if the client computing device (110) contains the authorization module indicating that the client computing device is associated with the target group;(d) receiving, by the client process, the server cookie identifying the target group;(e) issuing, by the client process, an update request for at least one software update, wherein the request contains the server cookie;(f) receiving, by the server process, the update request;(g) issuing, by the server process, a software update if the software update is associated with the target group identified in the server cookie;and(h) receiving, by the client process, the software update if the software update is associated with the target group identified in the server cookie. Verfahren nach Anspruch 1, wobei das Verfahren umfasst: (a) Ausgeben durch den Client-Prozess einer Autorisierungsanforderung, wobei die Autorisierungsanforderung eine Kennung eines Client-Autorisierungsmoduls enthält, das einer Zielgruppe von Client-Computervorrichtungen zugeordnet ist, die berechtigt ist, Software-Aktualisierungen zu empfangen;(b) Empfangen durch den Server-Prozess der Autorisierungsanforderung;(c) Ausgeben durch den Server-Prozess eines Server Cookies, das die Zielgruppe identifiziert, wenn der Server-Prozess bestimmt, dass die Client-Computervorrichtung der Zielgruppe zugeordnet ist, indem durch das Client-Authentifizierungsmodul darauf hingewiesen wird, dass die Client-Computervorrichtung der Zielgruppe zugeordnet ist, und wobei das Server Cookie es der Client-Computervorrichtung ermöglicht, auf die individuelle Software-Aktualisierung zuzugreifen, wenn die Client-Computervorrichtung (110) das Authentifizierungsmodul enthält, das darauf hinweist, dass die Client-Computervorrichtung der Zielgruppe zugeordnet ist;(d) Empfangen durch den Client-Prozess des Server Cookies, der die Zielgruppe identifiziert;(e) Ausgeben durch den Client-Prozess einer Aktualisierungsanforderung für wenigstens eine Software-Aktualisierung, wobei die Anforderung das Server Cookie enthält;(f) Empfangen durch den Server-Prozess der Aktualisierungsanforderung;(g) Ausgeben durch den Server-Prozess einer Software-Aktualisierung, wenn die Software-Aktualisierung der im Server Cookie identifizierten Zielgruppe zugeordnet ist;und(h) Empfangen durch den Client-Prozess der Software-Aktualisierung, wenn die Software-Aktualisierung der im Server Cookie identifizierten Zielgruppe zugeordnet ist.
  8. 8
    Procédé selon la revendication 7, dans lequel la requête d'autorisation comprend des données d'un cookie serveur précédemment stocké, et dans lequel le cookie serveur émis par le processus serveur inclut les données du cookie serveur précédemment stocké. The method as recited in claim 7, wherein the authorization request includes data of a previously stored server cookie, and wherein the server cookie issued by the server process includes the data of the previously stored server cookie. Verfahren nach Anspruch 7, wobei die Autorisierungsanforderung Daten eines zuvor gespeicherten Server Cookies aufweist und wobei das von dem Server-Prozess ausgegebene Server Cookie die Daten des zuvor gespeicherten Server Cookies aufweist.
  9. 9
    Procédé selon la revendication 7, dans lequel on détermine que le dispositif informatique client (110) est associé à un groupe cible si un module d'autorisation de serveur en communication avec le processus serveur identifie le même groupe cible associé au module d'autorisation client. The method as recited in claim 7, wherein it is determined that the client computing device (110) is associated with a target group if a server authorization module in communication with the server process identifies the same target group associated with the client authorization module. Verfahren nach Anspruch 7, wobei bestimmt wird, dass die Client-Computervorrichtung (110) einer Zielgruppe zugeordnet ist, wenn ein Server-Autorisierungsmodul in Kommunikation mit dem Server-Prozess die gleiche dem Client-Autorisierungsmodul zugeordnete Zielgruppe identifiziert.
  10. 10
    Procédé selon la revendication 7, dans lequel le cookie serveur comprend une durée d'expiration, dans lequel le procédé consiste en outre, par le processus serveur, à ne pas lancer la mise à jour logicielle si la durée d'expiration du cookie serveur s'est écoulée. The method as recited in claim 7, wherein the server cookie comprises an expiration time, wherein the method further comprises, by the server process, not issuing the software update if the expiration time of the server cookie has passed. Verfahren nach Anspruch 7, wobei das Server Cookie eine Ablaufzeit umfasst, wobei das Verfahren des Weiteren durch den Server-Prozess das Nichtausgeben der Software-Aktualisierung umfasst, wenn die Ablaufzeit des Server Cookies beendet ist.
  11. 11
    Procédé selon la revendication 7, dans lequel le cookie serveur stocke la durée d'expiration dans un format de texte clair et dans un format crypté, et dans lequel le cookie serveur contient des données cryptées identifiant au moins un groupe cible, dans lequel le procédé consiste en outre à:obtenir, par le processus client, la durée d'expiration à partir du cookie serveur, dans lequel le processus client obtient la durée d'expiration à partir de la durée d'expiration stockée dans le format de texte en clair;etémettre, par le processus client, la requête d'au moins une mise à jour logicielle, dans lequel la requête comprend le cookie serveur. The method as recited in claim 7, wherein the server cookie stores the expiration time in a clear text format and in an encrypted format, and wherein the server cookie contains encrypted data identifying at least one target group, wherein the method further comprises: obtaining, by the client process, the expiration time from the server cookie, wherein the client process obtains the expiration time from the expiration time stored in the clear text format;andissuing, by the client process, the request for at least one software update, wherein the request includes the server cookie. Verfahren nach Anspruch 7, wobei das Server Cookie die Ablaufzeit in einem Klartextformat und in einem verschlüsselten Format speichert und wobei das Server Cookie verschlüsselte Daten enthält, die wenigstens eine Zielgruppe identifizieren, wobei das Verfahren des Weiteren umfasst: Erhalten durch den Client-Prozess der Ablaufzeit von dem Server Cookie, wobei der Client-Prozess die Ablaufzeit anhand der im Klartextformat gespeicherten Ablaufzeit erhält;undAusgeben durch den Client-Prozess der Anforderung für wenigstens eine Software-Aktualisierung, wobei die Anforderung das Server Cookie enthält.
  12. 12
    Procédé selon la revendication 7, dans lequel l'émission de la mise à jour logicielle comprend l'émission d'un composant d'instruction de la mise à jour logicielle, et si le composant d'instruction de la mise à jour logicielle indique qu'il y a des mises à jour logicielles supplémentaires, le procédé consiste en outre à:émettre, par le processus client, une requête de données localisées;recevoir, par le processus serveur, une requête de données localisées;émettre, par le processus serveur, une composante de données localisée de la mise à jour logicielle;recevoir, par le processus client, les données localisées;ettraiter, par le processus client, le composant de données localisé pour la sélection d'au moins un fichier de mise à jour. The method as recited in claim 7, wherein issuing of the software update includes issuing an instruction component of the software update, and if the instruction component of the software update indicates that there are additional software updates, the method further comprises: issuing, by the client process, a request for localized data;receiving, by the server process, request for localized data;issuing, by the server process, a localized data component of the software update;receiving, by the client process, the localized data;andprocessing, by the client process, the localized data component for the selection of at least one update file. Verfahren nach Anspruch 7, wobei das Ausgeben der Software-Aktualisierung das Ausgeben einer Anweisungskomponente der Software-Aktualisierung aufweist, und wenn die Anweisungskomponente der Software-Aktualisierung darauf hinweist, dass es zusätzliche Software-Aktualisierungen gibt, das Verfahren des Weiteren umfasst: Ausgeben durch den Client-Prozess einer Anforderung für lokalisierte Daten;Empfangen durch den Server-Prozess der Anforderung von lokalisierten Daten;Ausgeben durch den Server-Prozess einer lokalisierten Datenkomponente der Software-Aktualisierung;Empfangen durch den Client-Prozess der lokalisierten Daten undVerarbeiten durch den Client-Prozess der lokalisierten Datenkomponente für die Auswahl von wenigstens einer Aktualisierungsdatei.
  13. 13
    A system for communicating software updates to a client computing device (110), the system comprising:(a) a first database storing a plurality of software updates, wherein an individual software update stored in the database comprises: (i) an instruction data field containing an applicability rule defining at least one condition, wherein the applicability rule can include a null value, wherein an instruction component contains a set of prerequisites that identify one or more software updates that are required for installation of the individual software update, and wherein the set of prerequisites can include a null value;(ii) a localized data field containing text data describing general information related to the individual software update;and(iii) a data component that identifies at least one data stream file associated with the individual software update;(b) an authorization server (122) for authorizing access to software updates stored in the first database, wherein the authorization server issues a server cookie for allowing a client computing device to access to the individual software update if the client computing device (110) contains an authorization module indicating that the client computing device is associated with a target group, wherein the server cookie contains an identifier for the target group, and wherein the server cookie is communicated (809) to the client computing device for storage (811) of the server cookie;(c) a metadata server (123) for providing updates to the client computing device, wherein a software update is communicated to the client computing device if the software update is associated with the target group, wherein the metadata server is communicatively coupled to said first database, and wherein the metadata server is operable to: (i) obtain a synchronization request, wherein the synchronization request includes an identifier of an installed software update if the client computing device stores the installed software update and an identifier of a failed software update if the client computing device (110) stores the failed software update that is not installed, wherein the synchronization request includes the server cookie;(ii) select an additional software update for communication to the client computing device if the synchronization request comprises an identifier of at least one installed software update, wherein the selection of the additional software update is dependent on the fulfillment of a prerequisite defined in the additional software update, wherein the prerequisite requires the synchronization request to include an identifier for at least one installed software update, wherein the additional software update is associated with the target group identified in the server cookie and restrict the communication of selected software updates related to the failed software update, if it is determined that the synchronization request comprises an identifier of the failed software update;(iii) select a first level software update for communication to the client computing device if the synchronization request does not comprise an identifier of at least one installed software update, wherein the first level software updates do not include a prerequisite;(iv) communicate an instruction component of the selected software update to the client computing device for storage;(v) obtain a request for localized data associated with the selected software update, wherein the localized data includes general information describing the update;(vi) communicating localized data associated with the selected software update to the client computing device, wherein the localized data allows the client computing device to generate a download request for receipt of a data component of the selected software update;(d) a download server (124) communicatively coupled to said first database, and the download server is operable to: (i) obtain the download request from the client computing device, wherein the download request identifies the data component of the selected software update;and(ii) communicate the data component of the selected software update to the client computing device. System zum Kommunizieren von Software-Aktualisierungen an eine ClientComputervorrichtung (110), wobei das System umfasst: (a) eine erste Datenbank, die eine Vielzahl von Software-Aktualisierungen speichert, wobei eine individuelle in der Datenbank gespeicherte Software-Aktualisierung umfasst: (i) ein Anweisungsdatenfeld, das eine Anwendbarkeitsregel enthält, die wenigstens eine Bedingung definiert, wobei die Anwendbarkeitsregel einen Nullwert aufweisen kann, wobei eine Anweisungskomponente einen Satz von Voraussetzungen enthält, die eine oder mehrere Software-Aktualisierungen identifizieren, die für die Installation der individuellen Software-Aktualisierung erforderlich sind, und wobei der Satz von Voraussetzungen einen Nullwert aufweisen kann;(ii) ein lokalisiertes Datenfeld, das Textdaten enthält, die allgemeine Informationen bezüglich der individuellen Software-Aktualisierung beschreiben, und(iii) eine Datenkomponente, die wenigstens eine der individuellen Software-Aktualisierung zugeordneten Datenstromdatei identifiziert;(b) einen Autorisierungsserver (122) zum Autorisieren des Zugriffs auf in der ersten Datenbank gespeicherte Software-Aktualisierungen, wobei der Autorisierungsserver ein Server Cookie ausgibt, um es einer Client-Computervorrichtung zu ermöglichen, auf die individuelle Software-Aktualisierung zuzugreifen, wenn die Client-Computervorrichtung (110) ein Autorisierungsmodul enthält, das darauf hinweist, dass die Client-Computervorrichtung einer Zielgruppe zugeordnet ist, wobei das Server Cookie eine Kennung für die Zielgruppe enthält und wobei das Server Cookie an die Client-Computervorrichtung zum Speichern (811) des Server Cookies kommuniziert (809) wird;(c) einen Metadaten-Server (123) zum Bereitstellen von Aktualisierungen für die Client-Computervorrichtung, wobei eine Software-Aktualisierung an die Client-Computervorrichtung kommuniziert wird, wenn die Software-Aktualisierung der Zielgruppe zugeordnet ist, wobei der Metadaten-Server mit der ersten Datenbank kommunikativ gekoppelt ist und wobei der Metadatenserver geeignet ist zum: (i) Erhalten einer Synchronisationsanforderung, wobei die Synchronisationsanforderung eine Kennung einer installierten Software-Aktualisierung, wenn die Client-Computervorrichtung die installierte Software-Aktualisierung speichert, und eine Kennung einer fehlgeschlagenen Software-Aktualisierung aufweist, wenn die Client-Computervorrichtung (110) die fehlgeschlagene Software-Aktualisierung speichert, die nicht installiert ist, wobei die Synchronisationsanforderung das Server Cookie aufweist;(ii) Auswählen einer zusätzlichen Software-Aktualisierung zur Kommunikation mit der Client-Computervorrichtung, wenn die Synchronisationsanforderung eine Kennung von wenigstens einer installierten Software-Aktualisierung umfasst, wobei die Auswahl der zusätzlichen Software-Aktualisierung von der Erfüllung einer in der zusätzlichen Software-Aktualisierung definierten Voraussetzung abhängt, wobei die Voraussetzung erfordert, dass die Synchronisationsanforderung eine Kennung für wenigstens eine installierte Software-Aktualisierung aufweist, wobei die zusätzliche Software-Aktualisierung der im Server Cookie identifizierten Zielgruppe zugeordnet ist, und die Kommunikation der ausgewählten Software-Aktualisierungen bezüglich der fehlgeschlagenen Software-Aktualisierung einschränkt, wenn bestimmt wird, dass die Synchronisationsanforderung eine Kennung der fehlgeschlagenen Software-Aktualisierung umfasst;(iii) Auswählen einer Software-Aktualisierung der ersten Ebene zur Kommunikation mit der Client-Computervorrichtung, wenn die Synchronisationsanforderung keine Kennung von wenigstens einer installierten Software-Aktualisierung umfasst, wobei die Software-Aktualisierungen der ersten Ebene keine Voraussetzung aufweisen;(iv) Kommunizieren einer Anweisungskomponente der ausgewählten Software-Aktualisierung an die Client-Computervorrichtung zum Speichern;(v) Erhalten einer Anforderung für der ausgewählten Software-Aktualisierung zugeordneten lokalisierte Daten, wobei die Daten allgemeine Informationen aufweisen, die die Aktualisierung beschreiben;(vi) Kommunizieren lokalisierter der ausgewählten Software-Aktualisierung zugeordneten Daten an die Client-Computervorrichtung, wobei es die lokalisierten Daten der Client-Computervorrichtung ermöglichen, eine Download-Anforderung für den Empfang einer Datenkomponente der ausgewählten Software-Aktualisierung zu erzeugen;(d) einen Download-Server (124), der mit der ersten Datenbank kommunikativ gekoppelt ist, wobei der Download-Server geeignet ist zum: (i) Erhalten der Download-Anforderung von der Client-Computervorrichtung, wobei die Download-Anforderung die Datenkomponente der ausgewählten Software-Aktualisierung identifiziert;und(ii) Kommunizieren der Datenkomponente der ausgewählten Software-Aktualisierung an die Client-Computervorrichtung. Système pour communiquer des mises à jour logicielles à un dispositif informatique client (110), le système comprenant: (a) une première base de données stockant une pluralité de mises à jour logicielles, dans lequel une mise à jour logicielle individuelle stockée dans la base de données comprend: (i) un champ de données d'instruction contenant une règle d'applicabilité définissant au moins une condition, dans laquelle la règle d'applicabilité peut inclure une valeur nulle, dans lequel un composant d'instruction contient un ensemble de conditions préalables qui identifient une ou plusieurs mises à jour logicielles qui sont requises pour l'installation de la mise à jour logicielle individuelle, et dans lequel l'ensemble de conditions préalables peut inclure une valeur nulle;(ii) un champ de données localisé contenant des données textuelles décrivant des informations générales relatives à la mise à jour logicielle individuelle;et(iii) un composant de données qui identifie au moins un fichier de flux de données associé à la mise à jour logicielle individuelle;(b) un serveur d'autorisation (122) pour autoriser l'accès aux mises à jour logicielles stockées dans la première base de données, dans lequel le serveur d'autorisation émet un cookie serveur permettant à un dispositif informatique client d'accéder à la mise à jour logicielle individuelle si le dispositif informatique client (110) contient un module d'autorisation indiquant que le dispositif informatique client est associé à un groupe cible, dans lequel le serveur cookie contient un identifiant pour le groupe cible, et dans lequel le cookie serveur est communiqué (809) au dispositif informatique client pour le stockage (811) du cookie serveur;(c) un serveur de métadonnées (123) pour fournir des mises à jour au dispositif informatique client, dans lequel une mise à jour logicielle est communiquée au dispositif informatique client si la mise à jour logicielle est associée au groupe cible, dans lequel le serveur de métadonnées est couplé de manière communicative à ladite première base de données, et dans lequel le serveur de métadonnées sert aux opérations suivantes: (i) obtenir une requête de synchronisation, dans lequel la requête de synchronisation comprend un identifiant d'une mise à jour logicielle installée si le dispositif informatique client stocke la mise à jour logicielle installée et un identifiant d'une défaillance de mise à jour logicielle si le client un dispositif informatique (110) stocke la mise à jour logicielle ayant échoué qui n'est pas installée, dans lequel la requête de synchronisation inclut le cookie serveur;(ii) sélectionner une mise à jour logicielle supplémentaire pour la communication avec le dispositif informatique client si la requête de synchronisation comprend un identifiant d'au moins une mise à jour logicielle installée, dans lequel la sélection de la mise à jour logicielle supplémentaire dépend de l'accomplissement d'une condition préalable défini dans la mise à jour logicielle supplémentaire, dans lequel la condition préalable nécessite que la requête de synchronisation comprenne un identifiant pour au moins une mise à jour logicielle installée, dans lequel la mise à jour logicielle supplémentaire est associée au groupe cible identifié dans le cookie serveur et restreint la communication des mises à jour logicielles sélectionnées liées à la mise à jour logicielle ayant échoué, si l'on détermine que la requête de synchronisation comprend un identifiant de la mise à jour logicielle ayant échoué;(iii) sélectionner une mise à jour logicielle de premier niveau pour la communication avec le dispositif informatique client si la requête de synchronisation ne comprend pas un identifiant d'au moins une mise à jour logicielle installée, dans lequel les mises à jour logicielles de premier niveau n'incluent pas de condition préalable;(iv) communiquer un composant d'instruction de la mise à jour logicielle sélectionnée au dispositif informatique client pour le stockage;(v) obtenir une requête pour des données localisées associées à la mise à jour logicielle sélectionnée, dans lequel les données localisées comprennent des informations générales décrivant la mise à jour;(vi) communiquer des données localisées associées à la mise à jour logicielle sélectionnée au dispositif informatique client, dans lequel les données localisées permettent au dispositif informatique client de générer une requête de téléchargement pour la réception d'un composant de données de la mise à jour logicielle sélectionnée;(d) un serveur de téléchargement (124) couplé de manière communicative à ladite première base de données, et le serveur de téléchargement peut être utilisé pour: (i) obtenir la requête de téléchargement du dispositif informatique client, dans lequel la requête de téléchargement identifie le composant de données de la mise à jour logicielle sélectionnée;et(ii) communiquer le composant de données de la mise à jour logicielle sélectionnée au dispositif informatique client.
  14. 14
    System nach Anspruch 13, wobei das Server Cookie eine Kennung für die Zielgruppe enthält, wenn ein Server-Autorisierungsmodul die Zielgruppe identifiziert. Système selon la revendication 13, dans lequel le cookie serveur contient un identifiant pour le groupe cible si un module d'autorisation du serveur identifie le groupe cible. The system as recited in claim 13, wherein the server cookie contains an identifier for the target group if a server authorization module identifies the target group.
  15. 15
    System nach Anspruch 13, wobei das Server Cookie eine Ablaufzeit umfasst und wobei der Metadaten-Server (123) geeignet ist zum:Ermitteln, ob die Ablaufzeit des Server Cookies beendet ist;Einschränken der Kommunikation der ausgewählten Software-Aktualisierung, wenn bestimmt wird, dass die Ablaufzeit des Server Cookies beendet ist. Système selon la revendication 13, dans lequel le cookie serveur comprend une durée d'expiration, et dans lequel le serveur de métadonnées (123) est utilisable pour: déterminer si la durée d'expiration du cookie serveur s'est écoulée;restreindre la communication de la mise à jour logicielle sélectionnée si l'on détermine que la durée d'expiration du cookie serveur s'est écoulée. The system as recited in claim 13, wherein the server cookie comprises an expiration time, and wherein the metadata server (123) is operable to: determine if the expiration time of the server cookie has passed;restrict the communication of the selected software update if it is determined that the expiration time of the server cookie has passed.
  16. 16
    System nach Anspruch 13, wobei der Download-Server (124) geeignet ist zum:Erhalten einer Auswahl von einer oder mehreren verfügbaren Software-Aktualisierungen zum Aktualisieren von einer oder mehreren auf der Client-Computervorrichtung (110) installierten Dateien;Erhalten einer selbstextrahierenden Datei, die eine Vielzahl von verfügbaren Deltapatches zum Aktualisieren von wenigstens einer Version einer installierten Datei identifiziert;Erhalten eines Verzeichnisses der einen oder mehreren auf der Client-Computervorrichtung installierten Dateien;Auswählen eines oder mehrerer anwendbarer Deltapatches, um die ausgewählten Software-Aktualisierungen zu implementieren, wobei das Auswählen des einen oder der mehreren anwendbaren Patches einer Abbildung der selbstextrahierenden Datei entspricht, die die Vielzahl von verfügbaren Deltapatches für das Verzeichnis der einen oder mehreren auf der Client-Computervorrichtung installierten Dateien identifiziert;undSenden einer Anforderung für ein oder mehrere ausgewählte Deltapatches. Système selon la revendication 13, dans lequel le serveur de téléchargement (124) peut fonctionner pour: obtenir une sélection d'une ou plusieurs mises à jour logicielles disponibles pour mettre à jour un ou plusieurs fichiers installés sur le dispositif informatique client (110);obtenir un fichier auto-extractible identifiant une pluralité de patchs delta disponibles pour mettre à jour au moins une version d'un fichier installé;obtenir un inventaire du ou des fichiers installés sur le dispositif informatique client;sélectionner un ou plusieurs patchs delta applicables pour implémenter les mises à jour logicielles sélectionnées, dans lequel la sélection du ou des patchs applicables correspond à une cartographie du fichier auto-extractible identifiant la pluralité de patchs delta disponibles à l'inventaire du ou des fichiers installés sur le dispositif informatique client;ettransmettre une requête pour un ou plusieurs patchs delta sélectionnés. The system as recited in claim 13, wherein the download server (124) is operable to: obtain a selection of one or more available software updates for updating one or more files installed on the client computing device (110);obtain a self-extracting file identifying a plurality of available delta patches for updating at least one version of an installed file;obtain an inventory of the one or more files installed on the client computing device;select one or more applicable delta patches to implement the selected software updates, wherein selecting the one or more applicable patches corresponds to a mapping of the self-extracting file identifying the plurality of available delta patches to the inventory of the one or more files installed on the client computing device;andtransmit a request for one or more selected delta patches.
  17. 17
    System nach Anspruch 13 des Weiteren zum Aktualisieren von Daten auf einer Client-Computervorrichtung (110), wobei das System umfasst:eine erste Datenbank, die eine Vielzahl von Deltapatches speichert;einen Server-Computer, der mit der ersten Datenbank und mit der Client-Computervorrichtung kommunikativ gekoppelt ist, wobei der Server-Computer geeignet ist zum: Erhalten einer Auswahl von einer oder mehreren verfügbaren Software-Aktualisierungen zum Aktualisieren von einer oder mehreren auf der Client-Computervorrichtung installierten Dateien;Erhalten einer selbstextrahierenden Datei, die eine Vielzahl von verfügbaren Deltapatches zum Aktualisieren von wenigstens einer Version einer installierten Datei identifiziert;Erhalten eines Verzeichnisses der einen oder mehreren auf der Client-Computervorrichtung installierten Dateien;Auswählen eines oder mehrerer anwendbarer Deltapatches, um die ausgewählten Software-Aktualisierungen zu implementieren, wobei das Auswählen des einen oder der mehreren anwendbaren Patches einer Abbildung der selbstextrahierenden Datei entspricht, die die Vielzahl von verfügbaren Deltapatches für das Verzeichnis der einen oder mehreren auf der Client-Computervorrichtung installierten Dateien identifiziert;undSenden einer Anforderung für ein oder mehrere ausgewählte Deltapatches. Système selon la revendication 13, en outre pour mettre à jour des données sur un dispositif informatique client (110), le système comprenant: une première base de données stockant une pluralité de patchs delta;un ordinateur serveur couplé de manière communicative à ladite première base de données et au dispositif informatique client, ledit ordinateur serveur pouvant fonctionner pour: obtenir une sélection d'une ou plusieurs mises à jour logicielles disponibles pour mettre à jour un ou plusieurs fichiers installés sur le dispositif informatique client;obtenir un fichier auto-extractible identifiant une pluralité de patchs delta disponibles pour mettre à jour au moins une version d'un fichier installé;obtenir un inventaire du ou des fichiers installés sur le dispositif informatique client;sélectionner un ou plusieurs patchs delta applicables pour implémenter les mises à jour logicielles sélectionnées, dans lequel la sélection du ou des patchs applicables correspond à une cartographie du fichier auto-extractible identifiant la pluralité de patchs delta disponibles à l'inventaire du ou des fichiers installés sur le dispositif informatique client;ettransmettre une requête pour un ou plusieurs patchs delta sélectionnés. The system as recited in claim 13, further for updating data on a client computing device (110), the system comprising: a first database storing a plurality of delta patches;a server computer communicatively coupled to said first database and to the client computing device, said server computer operable to: obtain a selection of one or more available software updates for updating one or more files installed on the client computing device;obtain a self-extracting file identifying a plurality of available delta patches for updating at least one version of an installed file;obtain an inventory of the one or more files installed on the client computing device;select one or more applicable delta patches to implement the selected software updates, wherein selecting the one or more applicable patches corresponds to a mapping of the self-extracting file identifying the plurality of available delta patches to the inventory of the one or more files installed on the client computing device;andtransmit a request for one or more selected delta patches.
  18. 18
    System nach Anspruch 13, wobei das System umfasst:eine erste Komponente, die eine Vielzahl von Server-Autorisierungsmodulen speichert, wobei ein individuelles Server-Autorisierungsmodul eine Zielgruppe von Client-Computervorrichtungen identifiziert, die berechtigt sind, um Software-Aktualisierungen zu empfangen;einen Server-Computer, der mit der ersten Komponente kommunikativ gekoppelt ist, wobei der Server-Computer geeignet ist zum: Erhalten einer Autorisierungsanforderung von der Client-Computervorrichtung, wobei die Autorisierungsanforderung eine Kennung eines auf der Client-Computervorrichtung gespeicherten Client-Autorisierungsmoduls enthält;Bestimmen, ob die Client-Computervorrichtung der Zielgruppe zugeordnet ist, wobei bestimmt wird, dass die Client-Computervorrichtung der Zielgruppe zugeordnet ist, wenn das Client-Autorisierungsmodul darauf hinweist, dass die Client-Computervorrichtung der Zielgruppe zugeordnet ist;Kommunizieren (809) eines Server Cookies von dem Software-Aktualisierungsdienst (120) an die Client-Computervorrichtung, wenn bestimmt wird, dass die Client-Computervorrichtung der Zielgruppe zugeordnet ist, wobei das Server Cookie die Zielgruppe identifiziert und wobei das Server Cookie es einer Client-Computervorrichtung ermöglicht, auf die individuelle Software-Aktualisierung zuzugreifen, wenn die Client-Computervorrichtung (110) das Authentifizierungsmodul enthält, das darauf hinweist, dass die Client-Computervorrichtung der Zielgruppe zugeordnet ist;Erhalten einer Anforderung für wenigstens eine auf dem Software-Aktualisierungsdienst gespeicherten Software-Aktualisierung, wobei die Anforderung das Server Cookie enthält;in Reaktion auf das Erhalten der Anforderung Bestimmen, ob eine Software-Aktualisierung der im Server Cookie identifizierten Zielgruppe zugeordnet ist;undwenn bestimmt wird, dass die Software-Aktualisierung der im Server Cookie identifizierten Zielgruppe zugeordnet ist, Kommunizieren der Software-Aktualisierung vom Software-Aktualisierungsdienst an die Client-Computervorrichtung. Système selon la revendication 2, le système comprenant en outre: un premier composant stockant une pluralité de modules d'autorisation de serveur, dans lequel un module d'autorisation de serveur individuel identifie un groupe cible de dispositifs informatiques clients qui sont éligibles pour recevoir des mises à jour logicielles;un ordinateur serveur couplé de manière communicative audit premier composant, ledit ordinateur serveur étant utilisable pour: obtenir une requête d'autorisation du dispositif informatique client, dans lequel la requête d'autorisation contient un identifiant d'un module d'autorisation client stocké sur le dispositif informatique client;déterminer si le dispositif informatique client est associé au groupe cible, dans lequel on détermine que le dispositif informatique client est associé au groupe cible si le module d'autorisation client indique que le dispositif informatique client est associé au groupe cible;communiquer (809) un cookie serveur d'un service de mise à jour logicielle (120) au dispositif informatique client si l'on détermine que le dispositif informatique client est associé au groupe cible, dans lequel le cookie serveur identifie le groupe cible et dans lequel le cookie serveur doit permettre à un dispositif informatique client d'accéder à la mise à jour logicielle individuelle si le dispositif informatique client (110) contient le module d'autorisation indiquant que le dispositif informatique client est associé au groupe cible;obtenir une requête pour au moins une mise à jour de logiciel stockée sur le service de mise à jour logicielle, dans laquelle la requête contient le cookie serveur;en réponse à l'obtention de la requête, déterminer si une mise à jour logicielle est associée au groupe cible identifié dans le cookie serveur;etsi l'on détermine que la mise à jour logicielle est associée au groupe cible identifié dans le cookie serveur, communiquer la mise à jour logicielle provenant du service de mise à jour logicielle au dispositif informatique client. The system as recited in claim 13, the system further comprising: a first component storing a plurality of a server authorization modules, wherein an individual server authorization module identifies a target group of client computing devices that are eligible to receive software updates;a server computer communicatively coupled to said first component, said server computer operable to: obtain an authorization request from the client computing device, wherein the authorization request contains an identifier of a client authorization module stored on the client computing device;determine if the client computing device is associated with the target group, wherein it is determined that the client computing device is associated with the target group if the client authorization module indicates that the client computing device is associated with the target group;communicate (809) a server cookie from a software update service (120) to the client computing device if it is determined that the client computing device is associated with the target group, wherein the server cookie identifies the target group and wherein the server cookie is for allowing a client computing device to access to the individual software update if the client computing device (110) contains the authorization module indicating that the client computing device is associated with the target group;obtain a request for at least one software update stored on the software update service, wherein the request contains the server cookie;in response to obtaining the request, determine if a software update is associated with the target group identified in the server cookie;andif it is determined that the software update is associated with the target group identified in the server cookie, communicate the software update from the software update service to the client computing device.
  19. 19
    A computer-readable medium comprising computer executable instructions for carrying out the method of claim 1. Computerlesbares Medium, das computerausführbare Anweisungen zum Ausführen des Verfahrens nach Anspruch 1 umfasst. Support lisible par ordinateur comprenant des instructions exécutables par ordinateur pour réaliser le procédé de la revendication 1.
  20. 20
    Computerlesbares Medium nach Anspruch 19, das des Weiteren umfasst:ein Anweisungsdatenfeld, das eine Anwendbarkeitsregel enthält, die wenigstens eine Bedingung definiert, wobei die Anwendbarkeitsregel ein Nullwert sein kann, wobei die Anweisungskomponente einen Satz von Voraussetzungen enthält, der eine oder mehrere Software-Aktualisierungen identifiziert, die für die Installation der individuellen Software-Aktualisierung erforderlich sind, und wobei der Satz von Voraussetzungen ein Nullwert sein kann;ein lokalisiertes Datenfeld, das Textdaten enthält, die allgemeine Informationen bezüglich der individuellen Software-Aktualisierung beschreiben;undeine Datenkomponente, die wenigstens eine Datenstromdatei identifiziert, die der individuellen Software-Aktualisierung zugeordnet ist. Support lisible par ordinateur selon la revendication 19, comprenant en outre: un champ de données d'instruction contenant une règle d'applicabilité définissant au moins une condition, la règle d'applicabilité pouvant être une valeur nulle, le composant d'instruction contenant un ensemble de conditions préalables identifiant une ou plusieurs mises à jour logicielles requises pour l'installation de la mise à jour logicielle individuelle et l'ensemble de conditions préalables pouvant être une valeur nulle;un champ de données localisé contenant des données textuelles décrivant des informations générales relatives à la mise à jour logicielle individuelle;etun composant de données qui identifie au moins un fichier de flux de données associé à la mise à jour logicielle individuelle. The computer-readable medium of claim 19, further comprising: an instruction data field containing an applicability rule defining at least one condition, wherein the applicability rule can be a null value, wherein the instruction component contains a set of prerequisites that identify one or more software updates that are required for installation of the individual software update, and wherein the set of prerequisites can be a null value;a localized data field containing text data describing general information related to the individual software update;anda data component that identifies at least one data stream file associated with the individual software update.
  21. 21
    Computerlesbares Medium nach Anspruch 20, wobei die Anweisungskomponente einen Datenwert enthält, der darauf hinweist, wenn es weitere Aktualisierungen gibt, die von der individuellen Software-Aktualisierung abhängen. Support lisible par ordinateur selon la revendication 20, dans lequel le composant d'instruction contient une valeur de données qui indique s'il existe d'autres mises à jour qui dépendent de la mise à jour logicielle individuelle. The computer-readable medium of claim 20, wherein the instruction component contains a data value that indicates if there are other updates that depend from the individual software update.
  22. 22
    Computerlesbares Medium nach Anspruch 20, wobei die Anweisungskomponente einen Datenwert enthält, der darauf hinweist, wenn die individuelle Software-Aktualisierung die Installation von wenigstens einer weiteren Software-Aktualisierung erfordert. Support lisible par ordinateur selon la revendication 20, dans lequel le composant d'instruction contient une valeur de données qui indique si la mise à jour logicielle individuelle nécessite l'installation d'au moins une autre mise à jour logicielle. The computer-readable medium of claim 20, wherein the instruction component contains a data value that indicates if the individual software update requires the installation of at least one other software update.
  23. 23
    Computerlesbares Medium nach Anspruch 20, wobei das lokalisierte Datenfeld einen Hinweis bereitstellt, dass die individuelle Software-Aktualisierung eine Aktualisierung mit hoher Priorität ist. Support lisible par ordinateur selon la revendication 20, dans lequel le champ de données localisé fournit une indication que la mise à jour logicielle individuelle est une mise à jour de haute priorité. The computer-readable medium of claim 20, wherein the localized data field provides an indication that the individual software update is a high priority update.
  24. 24
    Computerlesbares Medium nach Anspruch 20, wobei das lokalisierte Datenfeld einen Hinweis bereitstellt, dass die individuelle Software-Aktualisierung eine exklusive Installation erfordert. Support lisible par ordinateur selon la revendication 20, dans lequel le champ de données localisé fournit une indication que la mise à jour logicielle individuelle nécessite une installation exclusive. The computer-readable medium of claim 20, wherein the localized data field provides an indication that the individual software update requires an exclusive installation.
Independent claims24