DE10224743A1 - Verwendung von Auftragsetiketten, um einen Ressourcenzugriff zu sichern - Google Patents

Verwendung von Auftragsetiketten, um einen Ressourcenzugriff zu sichern

Info

Publication number
DE10224743A1
DE10224743A1 DE10224743A DE10224743A DE10224743A1 DE 10224743 A1 DE10224743 A1 DE 10224743A1 DE 10224743 A DE10224743 A DE 10224743A DE 10224743 A DE10224743 A DE 10224743A DE 10224743 A1 DE10224743 A1 DE 10224743A1
Authority
DE
Germany
Prior art keywords
job
processor
job ticket
service
label
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.)
Ceased
Application number
DE10224743A
Other languages
English (en)
Inventor
Brian A Volkoff
Ward S Foster
Shell S Simpson
Kenneth L Oakeson
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of DE10224743A1 publication Critical patent/DE10224743A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Abstract

Ein Auftragsetikettdienstezentrum umfaßt Merkmale zum Bereitstellen von Sicherheit und zum Steuern eines Zugriffs auf ein Auftragsetikett und darauf bezogene Ressourcen. Das Dienstezentrum kann ein Programmieren oder Server zum Authentifizieren eines Prozessors oder zum Autorisieren des Prozessors, auf ein bestimmtes Aufstragsetikett zuzugreifen, umfassen. Ein Authentifizierungsserver empfängt Authentifizierungsinformationen von einem Prozessor, und ein Autorisierungsserver verwendet die Informationen, um eine Autorisierungsfunktionalität zu prüfen. Die Autorisierungs- oder Zugriffsrechte des Prozessors können als Teil des Auftragsetiketts geführt sein. Unter Verwendung dieser Merkmale kann das Dienstezentrum dem Autorisierungsserver vertrauenswürdige Autentifizierungsinformationen über den Prozessor bereitstellen, und daraufhin führt der Autorisierungsprozessor seine Autoritätsprüfungsfunktionen durch. Das Auftragetikett kann mit einer Industriestandard-Öffentlicher-Schlüssel-Verschlüsselung- DOLLAR A Nachrichtenauszug-(MD-)Signatur signiert und durch ein Öffentlicher-Schlüssel-Verschlüsselungssystem geschützt sein. Daher kann jede Entität, die den öffentlichen Schlüssel aufweist, das Auftragsetikett validieren, ohne mit dem Authentifizierungsserver kommunizieren zu müssen. Diese Merkmale verringern eine Kommunikation zwischen Anwendungen verteilter Server. Diese Merkmale ermöglichen ferner, daß das Auftragsetikett unter Beibehaltung der Sicherheit von einem Prozessor zu ...

Description

  • Das technische Gebiet ist die Integration und Steuerung von Dienstleistungen in einer vernetzten Umgebung.
  • Dienstleistungen können durch eine oder mehrere Betriebseinheiten in einem computerbasierten Netz bereitgestellt werden. Benutzer des Netzes können spezifische Aufgaben erzeugen und die Aufgaben in das Netz schicken, um einer der Betriebseinheiten zugeordnet zu werden. Beispielsweise kann ein Benutzer an einem Computer-Endgerät unter Verwendung eines an dem Endgerät installierten Treibers eine Druckanweisung erzeugen. Bei einem anderen Beispiel kann ein Benutzer eine Druckanweisung erzeugen und die Druckanweisung in ein Computernetz schicken, damit die Druckanweisung durch einen Druckdienst ausgeführt wird. Die Druckanweisung kann sich auf eine Unternehmensbroschüre beziehen. Die Druckanweisung kann eindeutige Erfordernisse wie beispielsweise Papiertyp, Schriftgröße, Layout, Graphiken, Farbe und andere Erfordernisse enthalten. Der Benutzer kann festlegen, daß ein bestimmter Druckdienst, wie beispielsweise Kinkos, die Unternehmensbroschüre erstellt. Alternativ dazu kann das Computernetz Programme umfassen, die dem Benutzer Druckdienste vorschlagen.
  • Um den Druckauftrag zu steuern, kann das Computer-Endgerät des Benutzers ein Auftragsetikett erstellen. Das Auftragsetikett umfaßt die Erfordernisse, beispielsweise die oben angeführten Erfordernisse, und eine Identifizierung des bestimmten Auftrags, die es ermöglicht, daß der Auftragsstatus durch das Computernetz verfolgt werden kann.
  • Eine Verwendung des Auftragsetiketts ermöglicht es, daß das Drucken und ähnliche Dienste denjenigen Ressourcen (d. h. den Betriebseinheiten) zugewiesen werden, die sich am besten für das Ausführen der Dienste eignen. Ungünstigerweise ermöglichen derzeitige Computersysteme keinen Zugang zu der großen Vielfalt an Diensten, die in vernetzten Computersystemen, wie beispielsweise dem Internet, existieren. Überdies erfordern derzeitige Systeme, daß Benutzer über eine gewisse Kenntnis der vorhandenen Ressourcen verfügen, und erfordern eventuell, daß Benutzer eine relevante Programmierung einbeziehen, um mit den Dienstleistern zu kommunizieren. Ferner ermöglichen derzeitige Systeme nicht, daß eine Auftragsanforderung unter mehreren Prozessoren aufgeteilt wird. Folglich kann eine Fertigstellung der Auftragsanforderung länger dauern als nötig und wird eventuell nicht auf die effizienteste, kostengünstigste Weise erstellt. Schließlich stellen derzeitige Systeme keine angemessene Sicherheit für Auftragsetiketten bereit.
  • Es ist die Aufgabe der vorliegenden Erfindung, eine Vorrichtung, ein Verfahren, ein Auftragsetikett und eine Programmspeichervorrichtung zu schaffen, die eine Verwendung von Auftragsetiketten zum Sichern eines Ressourcenzugriffs ermöglichen.
  • Diese Aufgabe wird durch eine Vorrichtung gemäß Anspruch 1, ein Verfahren gemäß Anspruch 10, ein Auftragsetikett gemäß Anspruch 18 sowie eine Programmspeichervorrichtung gemäß Anspruch 21 gelöst.
  • Um diese und andere Probleme, die sich auf die Verwendung eines Auftragsetiketts beziehen, zu lösen, ermöglichen ein Verfahren und eine Vorrichtung es einem Client, Auftragsattribute und -prozesse unter Verwendung eines elektronischen Dienstezentrums zu verwalten. Das Dienstezentrum umfaßt einen Auftragsetikettdienst, der einen Zugriff und eine Modifizierung eines Auftragsetiketts durch mehrere Benutzer in einem Netz ermöglicht. Das Verfahren und die Vorrichtung verwenden ein Netzwerk-zugreifbares Auftragsetikett, um sich auf einen bestimmten Auftrag oder Inhalt zu beziehen. Das Auftragsetikett kann ein Objekt sein, wie beispielsweise ein XML-Objekt, das Routinen und Daten aufweist. Der Inhalt kann in dem Netz gespeichert sein, und auf ihn kann durch mehrere Auftragsetiketten zugegriffen werden. Speicherung und Handhabung des Auftragsetiketts sind für den Benutzer transparent. Das Auftragsetikett wird an einer öffentlich zugänglichen Position in dem Netz gespeichert. Das Auftragsetikett verbleibt in derselben Position in dem Netz, und Benutzer greifen lediglich auf den Abschnitt des Auftragsetiketts zu, der erforderlich ist, um einen benannten Prozeß auszuführen. Es können zusätzlich Sicherheitsmaßnahmen ergriffen werden, um einen Zugriff auf diejenigen Benutzer zu begrenzen, denen es ausdrücklich gestattet ist, auf das Auftragsetikett und die Auftragsdatei zuzugreifen. Das Auftragsetikett kann ein Dienstkennzeichen umfassen, das das Auftragsetikett auf den ursprünglichen Auftragsetikettdienst zurückbezieht. Auf diese Weise kann sich ein Benutzer, der das gesamte oder einen Teil des Auftragsetiketts erlangt, auf den ursprünglichen Auftragsetikettdienst (und das ursprüngliche oder modifizierte Auftragsetikett) zurückbeziehen, um etwaige Änderungen zu verifizieren und um sicherzustellen, daß das Auftragsetikett, auf das gerade zugegriffen wird, auf dem neuesten Stand ist. Das Auftragsetikett umfaßt ferner ein Auftragskennzeichen, um das Auftragsetikett einem bestimmen Auftrag zuzuschreiben.
  • Das Dienstezentrum ist durch ein Kommunikationsnetz mit einem Vorfelddienst (Front-End-Dienst) gekoppelt. Der Vorfelddienst ermöglicht es einem Benutzer, eine Dienst- oder Auftragsanforderung zu erstellen. Das Kommunikationsnetz kann beispielsweise das Internet oder ein lokales Netz sein.
  • Das Dienstezentrum umfaßt einen Dienstebus, mit dem ein Auftragsspeicher, der Auftragsetikettdienst und eine Arbeitsflußsteuerung gekoppelt sind. Ferner sind ein oder mehrere Prozessoren mit dem Dienstezentrum gekoppelt, die gesteuert werden können, um in den Auftragsetiketten definierte Prozesse und Aufgaben zu erfüllen.
  • Der Auftragsetikettdienst kann die Auftragsetiketten erstellen und speichern. Ein Auftragsinhalt (z. B. eine PDF- Datei) ist in dem Auftragsspeicher gespeichert. Bei dieser Struktur muß der Benutzer nicht die Speicherung des Auftragsinhalts verwalten oder wissen, welcher Auftragsspeicher den Auftragsinhalt enthält. Der Auftragsetikettdienst steuert einen Zugriff auf die Auftragsetiketten, und durch die Verwendung der Auftragsetiketten steuert er ferner einen Zugriff auf einen Auftragsinhalt in dem Auftragsspeicher oder an anderer Stelle in dem Netz. Der Auftragsetikettdienst kann einen Verweis auf das Auftragsetikett erstellen und kann den Verweis verwenden, um einen Zugriff auf das Auftragsetikett zu steuern.
  • Ein Auftragsetikettdienstezentrum kann mehrere Merkmale umfassen, um eine Sicherheit bereitzustellen und um einen Zugriff auf das Auftragsetikett zu steuern. Bei einem Ausführungsbeispiel kann der Auftragsetikettdienst ein Zweigsperren verwenden. Bei einem alternativen Ausführungsbeispiel können Server verwendet werden, um einen Prozessor zu autorisieren und zu authentifizieren.
  • Ein Authentifizierungsserver empfängt Authentifizierungsinformationen von einem Prozessor, und ein Autorisierungsserver verwendet die Informationen, um eine Autorisierungsfunktionalität zu prüfen. Die Autorisierungs- oder Zugriffsrechte des Prozessors können als Teil des Auftragsetiketts geführt sein. Unter Verwendung der oben beschriebenen Merkmale kann das Dienstezentrum dem Autorisierungsserver vertrauenswürdige Authentifizierungsinformationen über den Prozessor bereitstellen, und daraufhin führt der Autorisierungsserver unter Verwendung dieser Informationen eine Autoritätsprüfungsfunktion durch.
  • Bei einem Ausführungsbeispiel kann das Auftragsetikett mit einer Industriestandard-Öffentlicher-Nachrichtenauszug- (MD-)Signatur (MO = message digest) signiert und durch ein Öffentlicher-Schlüssel-Verschlüsselungssystem geschützt sein. Daher kann jede Entität, die den öffentlichen Schlüssel aufweist, das Auftragsetikett validieren, ohne mit dem Authentifizierungsserver kommunizieren zu müssen. Diese Merkmale verringern eine Kommunikation zwischen Anwendungen verteilter Server. Diese Merkmale ermöglichen ferner, daß das Auftragsetikett unter Beibehaltung der Sicherheit von einem Prozessor an einen anderen Prozessor weitergegeben wird, ohne mit dem Dienstezentrum zu kommunizieren.
  • Bei einem Ausführungsbeispiel, wenn ein Prozessor einen Zweig modifiziert, greift der Prozessor auf den Auftragsetikettdienst zu, um das Auftragsetikett zu aktualisieren. Das modifizierte Auftragsetikett kann daraufhin signiert werden, bevor es an den nächsten Prozessor weitergegeben wird.
  • Bei einem weiteren alternativen Ausführungsbeispiel enthält das Auftragsetikett Authentifizierungs-/Zugriffsdaten, die einen gesteuerten Zugriff auf das Auftragsetikett ermöglichen. Ressourcen können durch Paßwörter und andere Mechanismen geschützt sein. Ein Zugriff auf das Auftragsetikett kann auf ähnliche Weise geschützt sein. Ferner kann bei Prozessoren mit einer Zugriffsautorisierung eine solche Zugriffsautorisierung durch ein Auflisten der Prozessoren in dem Auftragsetikett hervorgerufen werden. Das Auflisten kann beispielsweise durch ein Aufnehmen einer Netzadresse für die Prozessoren bewerkstelligt werden. Die Netzadresse kann in Angebotsinformationen, die in dem Auftragsetikett aufgenommen sind, enthalten sein.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen, bei denen sich gleiche Bezugszeichen auf gleiche Posten beziehen, näher erläutert. Es zeigen:
  • Fig. 1 ein Blockdiagramm, das eine bekannte Verwendung eines Auftragsetiketts zeigt;
  • Fig. 2 ein Baumdiagramm, das die Prozesse bei einem beispielhaften Auftragsetikett zeigt;
  • Fig. 3 ein Blockdiagramm eines Digitalbildarbeitsflußnetzes;
  • Fig. 4 ein Blockdiagramm eines Dienstezentrums, das bei dem Netz der Fig. 3 verwendet wird;
  • Fig. 5A bis 5D ein beispielhaftes Auftragsetikett;
  • Fig. 6 ein Diagramm von Funktionen, die durch einen Auftragsetikettdienst gesteuert werden;
  • Fig. 7 ein Diagramm, das durch den Auftragsetikettdienst gesteuerte Zugriffsfunktionen zeigt;
  • Fig. 8 ein Blockdiagramm, das zusätzliche Steuermerkmale des Auftragsetikettdienstes veranschaulicht;
  • Fig. 9 ein Flußdiagramm, das einen der durch den Auftragsetikettdienst gesteuerten Prozesse veranschaulicht; und
  • Fig. 10 bis 15 Flußdiagramme, die Unterprozesse bei dem in Fig. 9 veranschaulichten Gesamtprozeß zeigen.
  • Fig. 1 ist ein Blockdiagramm, das eine bekannte Anwendung eines Auftragsetikettdienstes zeigt. Auftragsetiketten sind oft einem Druckstandard, dem Auftragsdefinitionsformat (JDF - job definition format), zugeordnet. Das JDF ist ausführlich in der bei www.hp_opensource.com erhältlichen JDF Specification Draft Spiral 4.0, die durch Bezugnahme in dieses Dokument aufgenommen ist, ausführlich beschrieben. In Fig. 1 erstellt ein Benutzer 1 eine Auftragsanforderung und sendet die Auftragsanforderung durch ein Portal 4 an einen Prozessor 5. Die Auftragsanforderung kann eine Auftragsetikett-Datendatei 2 und eine Inhaltsdatei 3 umfassen. Der Benutzer 1 kann ein Computer-Endgerät in einem vernetzten Computersystem sein, und der Prozessor 5 kann ein vernetzter Drucker sein. Die Auftragsanforderung kann ein Drucken eines Dokuments beinhalten. Das Dokument kann durch den Inhalt 3, der eine digitale Darstellung von zu druckendem Text und zu druckenden Bildern ist, dargestellt sein. Das beabsichtigte Format des gedruckten Dokuments kann in der Auftragsetikettdatei 2 beschrieben sein, die einfach eine digitale Datei ist, die spezifiziert, wie der Drucker das Dokument drucken soll. Beispielsweise kann die Auftragsetikettdatei 2 erfordern, daß das Dokument auf Rücken an Rücken liegenden Seiten druckt.
  • Bei einer spezifischen Anwendung können die Funktionen der Auftragsetikettdatei 2 durch einen Druckertreiber ausgeführt werden. Der Druckertreiber codiert Steuerdaten, die mit einem Drucken des Dokuments in Zusammenhang stehen, und sendet die Steuerdaten und den Inhalt 3 an den Drucker (d. h. den Prozessor 5). Der Drucker greift auf die Steuerdaten und den Inhalt 3 zu, um das Dokument zu drucken.
  • Während die in Fig. 1 gezeigte Anwendung gut funktioniert, um ein Dokument zu drucken, weist die Anwendung viele Nachteile auf. Insbesondere wenn mehrere Prozessoren an einem Erstellen des Dokuments beteiligt sind, erfordert jeder derartige Prozessor einen Zugriff auf die Auftragsetikettdatei 2. Dieser Zugriff bringt Probleme bezüglich Sicherheit, Modifikationssteuerung und Arbeitsflußsteuerung mit sich. Es kann beispielsweise sein, daß jeder Prozessor, der einen Zugriff auf die Auftragsetikettdatei 2 erfordert, mit dem Verarbeiten warten muß, bis ein vorheriger Prozessor eine Verwendung der Auftragsetikettdatei 2 abgeschlossen hat. Somit kann die Anwendung des Standes der Technik zu unerwünschten Verzögerungen beim Ausführen der Auftragsanforderung führen.
  • Bekannte Anwendungen von Auftragsetikettdiensten sind auch insofern nachteilig, als der Benutzer eventuell nichts über die Prozessoren weiß, einschließlich der Fähigkeiten und der Verfügbarkeit der Prozessoren, noch, ob die Prozessoren existieren. Somit weiß der Benutzer eventuell nicht, welches Portal er verwenden soll, um mit einem bestimmten Prozessor verbunden zu werden.
  • Dieses und weitere Probleme werden durch ein Verfahren und eine Vorrichtung gelöst, das bzw. die einen Zugriff auf ein Auftragsetikett und einen zugeordneten Inhalt durch Verwendung eines Auftragsetikettdienstes steuert. Der Auftragsetikettdienst umfaßt Mechanismen, die unter mehreren Benutzern des Auftragsetiketts einen Zugriff auf das Auftragsetikett entscheiden, einen Zugriff auf das Auftragsetikett durch ein Einfließenlassen von Sicherheitsmerkmalen begrenzen und sicherstellen, daß Modifikationen, die durch einen Prozessor oder Benutzer vorgenommen werden, in dem Auftragsetikett und dem Inhalt reflektiert werden. Tatsächlich umfaßt die Vorrichtung eine generische Datenbank, die Eingangsdaten von Clients als Auftragsanforderungen mit Ausgangsdiensten wie beispielsweise Prozessoren koppelt, die Aufgaben oder Prozesse durchführen, um die Auftragsanforderungen zu erfüllen. Die Datenbank kann insofern die Merkmale einer generischen XML-Datenbank aufweisen, als sie erweiterbar ist und insofern als die Clients keine Kenntnisse über die einzelnen durchzuführenden Prozesse oder die internen Programmierungserfordernisse der Prozessoren aufweisen müssen. Somit können die Clients Auftragsanforderungen einem Dienstezentrum unterbreiten, das sicherstellt, daß ein geeigneter Prozessor oder geeignete Prozessoren zugewiesen werden, um die Auftragsanforderung zu erfüllen.
  • Bevor die Vorrichtung und das Verfahren ausführlich beschrieben werden, wird eine Besprechung eines Auftragsetiketts bereitgestellt. Fig. 2 ist ein Knoten-Baum-Diagramm (oder einfach ein Knotenbaum) 10, der in einem Auftragsetikett zum Drucken einer Broschüre definierte Prozesse veranschaulicht. Die Broschüre kann in einer handelsüblichen Presse gedruckt werden und kann einen digitalen Inhalt verwenden, um Platten zum Drucken der Broschüre herzustellen. In dem Knotenbaum 10 spezifizieren die Knoten ein Produkt, einen Prozeß oder eine Gruppe von Prozessen. Jeder Knoten kann Ressourcen modifizieren, verbrauchen oder erzeugen. Jeder Knoten kann weitere verschachtelte Knoten oder Unterknoten enthalten. Die Anordnung von Knoten und Unterknoten kann mit einem Baum verglichen werden, und jeder Knoten und Unterknoten kann als Zweig bezeichnet werden. Ein Broschürenknoten 11 definiert die Merkmale und Parameter der Broschüre. Ein Einbandknoten 12 definiert die Parameter zum Erstellen des Einbands der Broschüre. Ein Innenseitenknoten 13 umfaßt die Parameter zum Herstellen der Innenseiten. Der Innenseitenknoten 13 ist mit mehreren Unterknoten gezeigt, einschließlich eines Unterknotens 14 zum Herstellen einer digitalen Platte. Der Digitalplattenherstellungs- Unterknoten 14 selbst umfaßt zwei weitere Unterknoten, einen Auftrenn-Unterknoten 16 und einen Plattenherstellungs- Unterknoten 18.
  • Jedem der in Fig. 2 gezeigten Knoten und Unterknoten sind Eingangsressourcen und mindestens eine Ausgangsressource zugeordnet. Eine Ressource kann durch Parameter oder logische Entitäten beschrieben werden. Die Ressource kann eine physische Entität wie beispielsweise eine Komponente, eine Handhabungsressource oder ein Verbrauchsartikel sein. Eine Komponentenressource kann die Ausgabe eines Knotens oder Unterknotens sein, wie beispielsweise bedruckte Blätter. Eine Handhabungsressource wird während eines Prozesses verwendet, wird jedoch nicht durch den Prozeß verbraucht. Eine Verbrauchsartikelressource kann durch den Prozeß teilweise oder gänzlich verbraucht werden. Beispiele von Verbrauchsartikelressourcen umfassen Tinten, Platten und Kleber. Andere Ressourcen können eine digitale Datei oder eine Darstellung eines physischen Objekts sein. Beispielsweise kann der Auftrenn-Unterknoten 16 als Eingaberessourcen eine Laufliste, Medien, RIP-Parameter und Layout umfassen. Die Lauflistenressource beschreibt die Seiten, einschließlich der Dateien, in denen die Seiten auftreten, und welche Seiten zu verwenden sind. Die Medienressource beschreibt die Medien, die zum Herstellen von Platten verwendet werden, und wird benötigt, um die Abmessungen der Medien zu beschreiben. Die RIP-Parameter-Ressource beschreibt alle gerätespezifischen Parameter des Auftrennvorgangs. Die Layoutressource beschreibt eine Plazierung von Quellenseiten auf den Platten und schließlich auf Preßschichten. Als Ausgangsressource kann der Auftrenn-Unterknoten 16 aufgetrennte Flachstücke bereitstellen. Andere Ressourcen umfassen Parameterressourcen, die die Einzelheiten von Prozessen definieren, sowie andere nicht-physische Computerdateien, die von einem Prozeß verwendet werden.
  • Der in Fig. 2 gezeigte Knotenbaum 10 soll für ein Drucken eines Dokuments gelten. Es können jedoch Knoten-Baum- Diagramme verwendet werden, um Auftragsetiketten für andere Dienste als Drucken darzustellen. Beispielsweise kann ein Auftragsetikett für eine Datenverarbeitung, eine Bildverarbeitung, zum Erstellen und Pflegen einer Datenbank, für Electronic Publishing (Erstellen von Druckerzeugnissen auf Rechnern), E-Mail und diverse E-Commerce-Dienste verwendet werden. Überdies kann das Auftragsetikett verwendet werden, um es verschiedenen E-Commerce-Diensten zu ermöglichen, miteinander in Kontakt zu treten.
  • Fig. 3 ist ein Blockdiagramm eines DIW-Netzes 20 (DIW = digital imaging work flow, Digitale-Bilderzeugung- Arbeitsfluß), das ein Dienstezentrum und einen Auftragsetikettdienst beinhaltet, um durch Clients unterbreitete Aufgaben zu steuern. Das Dienstezentrum kann als einzelnes Portal arbeiten, durch das die Clients mit einem oder mehreren E-Diensten, einschließlich E-Mail, E-Commerce und Online-Einkaufen, E-Drucken und Datendiensten, einschließlich Datenbanksuchen und Datenbankerstellung, -besetzung und -pflege, verbunden sind. Bei einem alternativen Ausführungsbeispiel kann das Dienstezentrum mehrere Portale aufweisen, wobei jedes der mehreren Portale einem spezifischen E-Dienst gewidmet ist oder bereitgestellt ist, um die Bandbreite zu erhöhen. Alternativ dazu können die mehreren Portale bereitgestellt sein, um eine Bandbreite zu erhöhen. Eine Verwendung eines einzelnen Portals, wie beispielsweise des Dienstezentrums, ermöglicht es den Clients, aus einer breiten Palette von E-Diensten, wie beispielsweise den oben angegebenen, auszuwählen, ohne daß dabei erforderlich wäre, daß die Clients eine vorherige Kenntnis der E-Dienste besitzen.
  • Das Dienstezentrum kann Komponenten umfassen, die Informationen in Form von Auftragsanforderungen empfangen, und kann unter Verwendung der Informationen ein Auftragsetikett erstellen, das Aufgaben und Ressourcen spezifiziert. Das Auftragsetikett kann in einem Auftragsetikettdienst gespeichert sein, und es können Meldungen gesandt werden, um anzugeben, wann ein Auftragsetikett zur Verfügung steht. Mit dem Dienstezentrum gekoppelte Prozessoren können eine Erfüllung des Auftragsetiketts anbieten, und das Dienstezentrum kann einen Angebotsdienst umfassen, der Angebote auswertet. Das Dienstezentrum kann einen oder mehrere Prozessoren auswählen, um ihn bzw. sie dem Auftragsetikett auf der Basis von durch den Client bereitgestellten Kriterien oder auf der Basis eines Satzes von Standardkriterien, einschließlich Standardkriterien der Industrie, zuzuweisen. Das Dienstezentrum kann Mechanismen bereitstellen, um einen Zugriff auf das Auftragsetikett oder auf Abschnitte (Zweige) des Auftragsetiketts zu steuern. Die Mechanismen umfassen ein Zweigsperren und Autorisierungs- und Authentifizierungsserver, die eine Verschlüsselung von öffentlichen Schlüsseln oder ähnliche Prozesse verwenden.
  • Das Dienstezentrum kann Hardware-Komponenten, wie beispielsweise Server, Computer, Zentralverarbeitungseinheiten, Kommunikationsschnittstellen und Speichergeräte umfassen, um die Verarbeitungsfähigkeit und Datenspeicherung bereitzustellen, die erforderlich ist, um die oben beschriebenen Funktionen zu erfüllen.
  • Das DIW-Netz 20 umfaßt einen Vorfelddienst 30, der es einem Client 31 ermöglicht, eine Dienst- oder Auftragsanforderung 32 (siehe Fig. 7) zu erzeugen und zu unterbreiten. Bei einem Ausführungsbeispiel kann der Vorfelddienst 30 ein Internet-Webbrowser sein. Alternativ dazu kann der Vorfelddienst 30 eine Web-Anwendung oder eine Port- Überwachungseinrichtung sein. Die Auftragsanforderung 32 kann detaillierte Informationen darüber enthalten, wie der Auftrag auszuführen ist, und kann gemäß dem Auftragsdefinitionsformatstandard formatiert sein. Alternativ dazu umfaßt die Auftragsanforderung 32 eventuell lediglich grundlegende Informationen, die durch eine andere Komponente verwendet werden, um die Auftragsdefinition oder den Arbeitsfluß abzuschließen. Schließlich kann die Auftragsanforderung 32 den zu verarbeitenden Inhalt oder Auftrag umfassen. Der Inhalt könnte eine oder mehrere digitale Dateien, Textdateien und andere Dateien sein. Der Vorfelddienst 30 ist mit einem Kommunikationsnetz 35 gekoppelt, das beispielsweise das Internet oder ein lokales Netz sein kann. Mit dem Kommunikationsnetz 35 ist ein Dienstezentrum 40 gekoppelt, das einen oder mehrere Prozessoren 80 i mit dem Kommunikationsnetz 35 verknüpft. Jeder der Prozessoren 80 i kann einen Cache 81 i umfassen, der verwendet werden kann, um Informationen zu speichern, die sich auf eine Auftragsanforderung 32 beziehen, einschließlich Informationen, die sich auf Auftragsetiketten beziehen. Bei einem Ausführungsbeispiel kann das Dienstezentrum 40 eine Internet-Website sein, die Datenspeicher- und -steuerfunktionen umfaßt. Bei einem anderen Ausführungsbeispiel ist das Dienstezentrum 40 ein Knoten in einem lokalen Netz.
  • Das Dienstezentrum 40 ermöglicht ein breites Spektrum von Kommunikationen zwischen Entitäten, die mit dem Dienstezentrum 40 gekoppelt sind. Insbesondere ermöglicht das Dienstezentrum 40 verschiedenen E-Diensten, unter Verwendung von spezifischen Protokollen und generischen Protokollen (z. B. TCP/IP) programmatisch miteinander zu interagieren. Diese programmatische Interaktion ermöglicht es verschiedenen Diensten und Prozessen, die mit dem Netz gekoppelt sind, Daten und Dateien auszutauschen und die Daten und Dateien zu modifizieren. Die programmatische Interaktion kann durch eine Verwendung eines Fernprozedurrufs (RPC - remote procedure call) zwischen Entitäten, die mit dem Dienstezentrum 40 gekoppelt sind, abgeschlossen werden. Andere Verfahren zum Bereitstellen der programmatischen Interaktion umfassen CORBA, UDDI und E-speak.
  • Fig. 4 ist ein Diagramm des Dienstezentrums 40. Das Dienstezentrum 40 umfaßt einen Dienstebus 41, der sich in Kommunikation mit dem Kommunikationsnetz 35 und den Prozessoren 80 i der Fig. 3 befindet. Mit dem Dienstebus 41 ist ein Auftragsspeicher 50, ein Auftragsetikettdienst 60, eine Arbeitsflußsteuerung 70, ein optionaler Angebotsdienst 90, ein Autorisierungsserver 92 und ein Authentifizierungsserver 94 gekoppelt. Der Auftragsspeicher 50 kann eine oder mehrere Auftragsinhaltsdateien 51 i speichern. Der Auftragsetikettdienst 60 kann ein oder mehrere Auftragsetiketten 61 i steuern. Die Arbeitsflußsteuerung 70 kann einen oder mehrere Agenten 71 i verwenden, um Prozesse an dem Dienstebus 41 zu steuern.
  • Der Auftragsspeicher 50, der Auftragsetikettdienst 60 und die Arbeitsflußsteuerung 70 funktionieren so, daß sie Informationen von den Clients 31 entgegennehmen und die Informationen verwenden, um die Aktionen der Prozessoren 80 i zu steuern. Die Prozessoren 80 i erfüllen spezifische Aufgaben oder Prozesse, wie sie durch das Dienstezentrum 40 bestimmt sind.
  • Der Auftragsspeicher 50 kann ein Knoten an dem Dienstebus 41 sein und kann eine Programmierung umfassen, um es dem Auftragsspeicher 50 zu ermöglichen, seine Funktionen auszuführen. Der Auftragsspeicher 50 kann verwendet werden, um den Inhalt 51 zu speichern, der in Form einer oder mehrerer großer Dateien vorliegen kann. Im Zusammenhang eines Druckens eines Dokuments unter Verwendung eines Dienstes oder Prozesses, der mit dem Dienstebus 41 gekoppelt ist, kann der Auftragsspeicher 50 den Dokumenteninhalt beispielsweise in einer oder mehreren PDF-Dateien speichern. Der Inhalt 51 kann Graphiken und Text umfassen. Der Inhalt 51 für ein spezifisches Dokument kann mehrere Dateien umfassen. Beispielsweise kann eine Broschüre eine separate Datei für den Einband und eine andere Datei für die Innenseiten aufweisen. Text für die Innenseiten kann in einer Datei vorliegen, und Bilder können in einer weiteren Datei vorliegen. Der Inhalt 51 kann ferner Verknüpfungen zu anderen Ressourcen oder Entitäten auf dem Dienstebus 41 umfassen. Der Auftragsspeicher 50 sorgt für eine Massenspeicherung des Inhalts 51, so daß ein Benutzer (Client 31 oder Prozessor 80) nicht die für den Auftragsinhalt 51 erforderliche Massenspeicherung bereitstellen muß. Durch Verwenden der Massenspeicherfähigkeiten des Auftragsspeichers 50 kann dafür gesorgt werden, daß der Inhalt 51 in dem Netz 20 fortbesteht und daß er jederzeit für Benutzer zugreifbar gemacht wird. Ferner verwaltet und steuert der Auftragsspeicher 50 den Inhalt, so daß der Benutzer (Client 31 oder Prozessor 80) den Inhalt 51 nicht verwalten muß. Verwaltungsfunktionen umfassen ein Aufrechterhalten einer Konfiguration oder Versionssteuerung des Inhalts 51, ein Steuern des Zugriffs auf den Inhalt 51 und ein Beibehalten des Inhalts 51 in einer Speicherung.
  • Der Auftragsetikettdienst 60 hält Auftragsetiketten 61. Der Auftragsetikettdienst 60 steuert einen Zugriff auf die Auftragsetiketten 61 und verwaltet eventuell eine Konfiguration derselben. Beispielsweise kann es der Auftragsetikettdienst 60 Benutzern (Clients 31 und Prozessoren 80) ermöglichen, auf einen Abschnitt oder Zweig eines Auftragsetiketts 61 zuzugreifen, statt das Auftragsetikett 61 unter mehreren Benutzern herumzureichen. Ein Zugriff auf den Auftragsetikettabschnitt kann durch Verwendung einer Anwendungsprogrammierschnittstelle, einer skriptfähigen Schnittstelle oder eines ähnlichen Merkmals bewirkt werden. Wie oben angemerkt wurde, umfaßt das Auftragsetikett 61 nicht den Inhalt 51 (z. B. die graphischen und Textdateien eines Dokuments), sondern das Auftragsetikett 61 bezieht sich auf den in dem Auftragsspeicher 50 gespeicherten Inhalt 51 (z. B. eine PDF-Datei). Der Benutzer muß nicht die Speicherung des Auftragsinhalts verwalten oder wissen, welcher Auftragsspeicher 50 den Auftragsinhalt enthält. Statt dessen vergibt der Auftragsetikettdienst 60 einen Verweis in dem Auftragsetikett 61. Dies ermöglicht es mehreren Clients 31 und Prozessoren 80 i, auf den Inhalt 51 zuzugreifen. Überdies kann sich der Inhalt 51 auf mehr als ein Auftragsetikett 61 beziehen. Der Auftragsetikettdienst 60 und seine Beziehungen zu anderen Entitäten, die mit dem Dienstebus 41 gekoppelt sind, werden später ausführlich beschrieben.
  • Auf manche Auftragsetiketten 61 kann durch mehrere Prozessoren 80 entweder auf serielle, überlappende oder gleichzeitige Weise zugegriffen werden. Das Mehrfachzugriff- Verarbeiten könnte zu Problemen bei Verwendung des Auftragsetiketts 61 führen. Beispielsweise kann es sein, daß ein erster Prozessor das Auftragsetikett 61 (oder einen Abschnitt oder Zweig desselben) erlangt und einen in dem Arbeitsfluß spezifizierten Prozeß durchführt, der den Zweig modifizieren kann. Eine solche Modifizierung kann stattfinden, um beispielsweise einen Zweig als vollständig anzugeben, Eingangsressourcen aufzubrauchen oder neue Ausgangsressourcen zu schaffen. Ein zweiter Prozessor könnte versuchen, den Zweig zu erlangen, "weiß" jedoch möglicherweise nicht, daß der erste Prozessor den Zweig modifiziert hat. Alternativ dazu könnte eine Blockierungssituation entstehen, wenn zwei Prozessoren um den selben Zweig konkurrieren.
  • Eine Lösung der obigen Probleme könnte darin bestehen, das Auftragsetikett 61 immer dann zu sperren, wenn ein Prozessor 80 das Auftragsetikett 61 erlangt. Ungünstigerweise kann ein Sperren des Auftragsetiketts 61 ein gleichzeitiges oder paralleles Verarbeiten verhindern und eine Fertigstellung der Auftragsanforderung 32 verlangsamen.
  • Der in Fig. 4 gezeigte Auftragsetikettdienst 60 überwindet diese und andere Probleme, indem er die Fähigkeit aufweist, das Auftragsetikett 61 auf der Zweigebene zu sperren. Die Zweigsperrung kann durch eines von mehreren Verfahren bewerkstelligt werden. Die Arbeitsflußsteuerung 70 kann einen oder mehrere spezifische Prozessoren 80 i einteilen, die Aufgaben, die bei dem zu sperrenden Zweig identifiziert sind, zu erfüllen. Wenn lediglich ein Prozessor 80 autorisiert ist, auf den Zweig zuzugreifen, ist ein Zweigsperren eventuell nicht erforderlich. Wenn mehr als ein Prozessor 80 autorisiert ist, auf denselben Zweig zuzugreifen, kann der Auftragsetikettdienst 60 den Zweig sperren, wenn einer der autorisierten Prozessoren 80 i den Zweig tatsächlich erlangt.
  • Wenn die Arbeitsflußsteuerung 70 Zweigen keine Prozessoren 80 i zugewiesen hat (d. h. ein beliebiger Prozessor 80 kann zu jeder Zeit auf einen Zweig zugreifen), kann der Auftragsetikettdienst 60 den Zweig sperren, wenn ein Prozessor 80 den Zweig erlangt.
  • Der Auftragsetikettdienst 60 kann die Zweige sperren, indem er für jeden Zweig ein Sperren-/Entsperren-Flag setzt. Prozessoren 80 i, die auf das Auftragsetikett 61 zugreifen, können daraufhin den Sperren-/Entsperren-Flag-Status prüfen, um zu bestimmen, ob auf den Zweig zugegriffen werden kann. Unter manchen Umständen erlaubt der Auftragsetikettdienst 60 eventuell lediglich einen Zugriff auf diejenigen Zweige, die entsperrt sind. Es kann sein, daß ein Prozessor 80, der eine durch den Zweig definierte Aufgabe erfüllt hat, benötigt, daß der Zweig entsperrt ist, um den Zweig zu modifizieren.
  • Die Arbeitsflußsteuerung 70 kann verwendet werden, um die Auftragsetiketten 61 zu erstellen, die in dem Auftragsetikettdienst 60 gespeichert sind. Die Arbeitsflußsteuerung 70 kann die durch die Clients 31 unterbreiteten Auftragsanforderungen 32 überprüfen und kann daraufhin eine Auftragsetikettschablone verwenden, um das Auftragsetikett 61 zu erstellen. Die Arbeitsflußsteuerung 70 kann daraufhin das Auftragsetikett 61 zur Speicherung und Verarbeitung an den Auftragsetikettdienst 60 senden.
  • Die Arbeitsflußsteuerung 70 steuert ferner einen Abschluß von Aufgaben unter den Prozessoren 80 i. Bei einem Ausführungsbeispiel bestimmt die Arbeitsflußsteuerung 70, welche der Prozessoren 80 i die notwendigen und verfügbaren Ressourcen aufweisen, um die in einem spezifischen Auftragsetikett 61 aufgeführten Prozesse zu beginnen. Daraufhin benennt die Arbeitsflußsteuerung 70 die geeigneten Prozessoren 80 i, um die durch das Auftragsetikett 61 ausgewiesenen Aufgaben zu erfüllen. Wenn ein Auftragsetikett 61 1 beispielsweise ein Farbdrucken erfordert, kann die Arbeitsflußsteuerung 70 bestimmen, daß lediglich der Prozessor 80 3 ein Farbdrucker mit der Kapazität ist, den in dem Auftragsetikett 61 1 spezifizierten Auftrag zu beginnen. Dieses Ausführungsbeispiel, bei dem die Arbeitsflußsteuerung 70 bestimmt, welchen Prozessoren 80 i ein spezifisches Auftragsetikett 61 zugewiesen werden soll, kann besonders geeignet sein, wenn das Netz 35 ein lokales Netz ist und alle Prozessoren 80 i direkt mit dem lokalen Netz 35 gekoppelt sind.
  • Alternativ dazu kann die Arbeitsflußsteuerung 70 Angebotsinformationen von mit dem Internet verbundenen Prozessoren 80 i empfangen und kann die Angebotsinformationen verwenden, um die Prozessoren 80 i, die die Auftragsanforderung 32 erfüllen sollen, auszuwählen.
  • Die Arbeitsflußsteuerung 70 kann ferner verwendet werden, um diverse Knoten, Eingangs- und Ausgangsressourcen und andere Merkmale des Knotenbaumes, die verwendet werden, um die Auftragsanforderung zu erfüllen, zu benennen. Das heißt, daß die Arbeitsflußsteuerung 70 verwendet werden kann, um ein Konstrukt, oder einen Arbeitsfluß, wie beispielsweise den in Fig. 2 gezeigten Knotenbaum 10, zu erstellen. Um diese Aufgaben zu bewerkstelligen, kann die Arbeitsflußsteuerung 70 einen oder mehrere Agenten 71 umfassen, die eine Auftragsdefinitionsdatei schreiben, auf der Basis von Steuerdaten, die in der Auftragsanforderung 32 enthalten sind. Alternativ dazu kann ein separates Verwaltungsinformationssystem (nicht gezeigt) verwendet werden, um die Knoten zu erstellen und um einen Fluß von Aufgaben zu den Prozessoren 80 i und anderen Entitäten zu steuern. Bei einem anderen Ausführungsbeispiel können die Auftragsdefinitionen durch den Client 31, der die Auftragsanforderung 32 hervorbrachte, geschrieben sein.
  • Unter erneuter Bezugnahme auf den Knotenbaum 10 der Fig. 2 dienen viele Ausgangsressourcen der einzelnen Knoten als Eingangsressourcen für andere Knoten. Diese anderen Knoten sind eventuell nicht in der Lage, mit dem Ausführen zu beginnen, bevor alle Eingangsressourcen vollständig und verfügbar sind, was bedeutet, daß die Knoten eventuell in einer hinreichend definierten Abfolge ausführen müssen. Beispielsweise erzeugt ein Prozeß zum Herstellen von Platten Preßplatten als eine Ausgangsressource, die von einem Druckprozeß benötigt wird. Bei der hierarchischen Organisation des Knotenbaums 10 stellen Knoten, die höher in dem Knotenbaum 10 erscheinen, abstraktere Operationen einer höheren Ebene dar, während Knoten niedrigerer Ordnung detailliertere, spezifische Prozesse darstellen. Überdies ist es möglich, daß Knoten, die sich in der Nähe des oberen Endes des Knotenbaums 10 befinden, lediglich eine Absicht bezüglich der Komponenten oder Anordnungen, die das Produkt aufweisen, darstellen, und Knoten einer niedrigeren Ebene liefern die ausführlichen Anweisungen an einen Prozessor 80, um einen spezifischen Prozeß durchzuführen.
  • Da zwei Knotenbäume eventuell nicht ähnlich sind, kann die Arbeitsflußsteuerung 70 folgendes bestimmen: auszuführende Prozesse, die Reihenfolge, in der die Prozesse ausgeführt werden, und die Prozessoren 80 i, die die Prozesse ausführen sollen. Die Arbeitsflußsteuerung 70 kann die Agenten 71 verwenden, um einen tatsächlichen Arbeitsfluß unter Anbetracht von Faktoren wie zum Beispiel Steuerfähigkeiten der Prozessoren 80 i, die die Prozesse ausführen, Transportentfernungen zwischen Prozessoren, Belastungsvermögen der Prozessoren 80 i und Zeitbeschränkungen bei der Auftragsanforderung zu bestimmen. Die Agenten 71 können den Gesamtprozeß unter Verwendung einer seriellen Verarbeitung, die eine(n) nacheinander erfolgende(n) Herstellung und Verbrauch von Ressourcen durch die Prozessoren 80 i beinhaltet, einer überlappenden Verarbeitung, die eine(n) gleichzeitige(n) Verbrauch und Herstellung von Ressourcen durch mehr als einen Prozessor 80 beinhaltet, einer parallelen Verarbeitung, die ein gemeinsames Verwenden von Ressourcen durch Prozessoren 80 beinhaltet, und einer iterativen Verarbeitung, die ein Vorwärts- und Rückwärts-Verarbeitungsschema beinhaltet, um Ressourcen zu entwickeln, definieren.
  • Beim Bestimmen, welchem der Prozessoren 80 i die Erfüllung einer bestimmten Auftragsanforderung zuzuweisen ist, kann die Arbeitsflußsteuerung 70 Prozessoren 80 i abfragen, die mit dem Dienstezentrum 40 gekoppelt sind. Wie oben angemerkt wurde, können die Prozessoren 80 i direkt mit dem Dienstebus 41 gekoppelt sein oder können durch einen anderen Kommunikationsbus, wie beispielsweise das Internet, indirekt gekoppelt sein. Das Abfragen kann immer dann stattfinden, wenn ein Auftragsetikett 61 durch den Auftragsetikettdienst 60 erstellt wird. Alternativ dazu kann das Abfragen und eine entsprechende Informationssammlung auf periodischer Basis stattfinden, und die Arbeitsflußsteuerung 70 kann Informationen, die sich auf die Prozessoren 80 beziehen, speichern.
  • Als Alternative zum Abfragen können Prozessoren 80 i, die mit dem Dienstezentrum 40 gekoppelt sind, den Auftragsetikettdienst 60 überwachen. Der Auftragsetikettdienst 60 kann beispielsweise nach Art eines schwarzen Brettes Nachrichten bezüglich Auftragsetiketten, die zum Verarbeiten zur Verfügung stehen, periodisch plazieren. Die Prozessoren 80 können daraufhin ein Angebot für die in der Auftragsetikettmeldung definierten Aufgaben und Prozesse unterbreiten. Die Arbeitsflußsteuerung 70 oder der separate, optionale Angebotsdienst 90, kann die Angebote prüfen und bestimmen, welcher einzelne Prozessor 80 oder welche Kombination von Prozessoren 80 i am besten geeignet wäre, um die in der Auftragsetikettmeldung definierten Aufgaben und Prozesse zu erfüllen.
  • Das Dienstezentrum 40 kann mehrere Merkmale umfassen, um eine Sicherheit bereitzustellen und um einen Zugriff auf das Auftragsetikett 61 zu steuern. Wie oben erörtert wurde, kann der Auftragsetikettdienst 60 eine Vorkehrung für eine Zweigsperrung umfassen. Überdies können Server verwendet werden, um einen Prozessor 80 zu autorisieren und authentifizieren und um die Autorisierung und Authentifizierung während einer Fertigstellung einer Auftragsanforderung 32 (siehe Fig. 7) aufrechtzuerhalten. Der Authentifizierungsserver 92 empfängt Authentifizierungsinformationen von einem Prozessor 80, und der Autorisierungsserver 94 verwendet die Informationen, um eine Autorisierungsfunktionalität zu prüfen. Die Autorisierung oder Zugriffsrechte des Prozessors 80 können als Teil des Auftragsetiketts 61 getragen werden. Die Server 92 und 94 können Hardwaregeräte sein, müssen jedoch nicht in derselben Hardwareplattform existieren, und die Server 92 und 94 müssen nicht eng gekoppelt sein. Alternativ dazu können die Funktionen der Server 92 und 94 bei einer Programmierung durchgeführt werden, die in einer der Komponenten des Dienstezentrums 40 gespeichert ist, wie beispielsweise die Arbeitsflußsteuerung 70. Unter Verwendung der oben beschriebenen Merkmale kann das Dienstezentrum 40 dem Autorisierungsserver 94vertrauenswürdige Authentifizierungsinformationen über den Prozessor 80 liefern, und daraufhin führt der Autorisierungsserver 94 seine Autorisierungsprüfungsfunktionen durch.
  • Das Auftragsetikett 61 kann mit einer Industriestandard- Öffentlicher-Schlüssel-Verschlüsselung-Nachrichtenauszug- (MD-)Signatur (MO = message digest) signiert sein und kann durch ein Öffentlicher-Schlüssel-Verschlüsselungssystem geschützt sein. Daher kann jeder beliebige Benutzer, der den öffentlichen Schlüssel aufweist, das Auftragsetikett 61 bestätigen, ohne daß er mit dem Authentifizierungsserver 92 kommunizieren muß. Diese Merkmale verringern eine Kommunikation zwischen verteilten Serveranwendungen. Die Merkmale ermöglichen ferner, daß das Auftragsetikett 61 von einem Prozessor 80 zu einem anderen Prozessor 80 geleitet wird, wobei eine Sicherheit aufrechterhalten wird und wobei nicht mit dem Dienstezentrum 40 kommuniziert wird.
  • Bei einem alternativen Ausführungsbeispiel hält das Auftragsetikett 61 Authentifizierungs-/Zugriffsdaten, was einen begrenzten Zugriff in der Infrastruktur des Dienstezentrums 40 ermöglicht. Ressourcen können durch Paßwörter und andere Mechanismen geschützt sein. Ein Zugriff auf das Auftragsetikett 61 kann auf ähnliche Weise geschützt sein. Überdies können Prozessoren 80 i mit einer Zugriffsautorisierung eine solche Zugriffsautorisierung aufweisen, die durch ein Auflisten der Prozessoren in dem Auftragsetikett hervorgerufen ist. Die Auflistung kann beispielsweise durch ein Aufnehmen einer Netzadresse für die Prozessoren 80 i bewirkt werden. Die Netzadresse kann in den in dem Auftragsetikett 61 aufgenommenen Angebotsinformationen enthalten sein.
  • Obwohl sich die obige Beschreibung auf eine Entwicklung durch die Arbeitsflußsteuerung 70 bezieht, können andere Komponenten in dem Netz 20 verwendet werden, um einen Gesamtarbeitsfluß zu entwickeln, um die Auftragsanforderung 32 zu erfüllen. Beispielsweise kann der Auftragsetikettdienst 60 verwendet werden, um den Gesamtarbeitsfluß zu entwickeln.
  • Wie oben erörtert wurde, kann der Angebotsdienst 90 verwendet werden, um Angebotsinformationen von Prozessoren 80 i, die mit dem Dienstezentrum 40 gekoppelt sind, zu empfangen. Die Prozessoren 80 i unterbreiten Angebote als Reaktion auf ein Plazieren von Auftragsetikettmeldungen an dem Dienstezentrum 40. Bei einem Ausführungsbeispiel ist die Auftragsetikettnachricht ein in dem Dienstezentrum 40 gespeichertes separates Objekt. Bei einem anderen Ausführungsbeispiel dient das Auftragsetikett 61 selbst der Meldungsfunktion. Die Arbeitsflußsteuerung 70 kann die Auftragsetikettmeldungen nach Empfang der Auftragsanforderung 32 plazieren. Der Angebotsauswertungs- und -auswahlprozeß können derselbe sein, ob nun der Angebotsdienst 90 oder die Arbeitsflußsteuerung 70 die Angebote empfängt.
  • Die durch die Arbeitsflußsteuerung 70 plazierte Auftragsetikettmeldung kann spezifische Aufgaben oder Prozesse (Zweige) umfassen, die erfüllt werden müssen, um die Auftragsanforderung 32 zu erfüllen. Es kann sein, daß eine einfache Auftragsanforderung 32 lediglich einen Zweig aufweist. Komplexere Auftragsanforderungen 32, wie beispielsweise die in Fig. 2 veranschaulichte Auftragsanforderung (d. h. Drucken einer Broschüre), können viele Zweige aufweisen. Ferner können manche Zweige so zueinander in Beziehung stehen, daß sie nur in einer spezifischen Abfolge erfüllt werden können, während andere Zweige auf parallele oder überlappende Weise erfüllt werden können. Diese Abhängigkeitsbeziehung kann oft das Ergebnis dessen sein, daß ein Zweig eine Ausgangsressource erzeugt, die eine Eingangsressource für einen oder mehrere andere Zweige ist. Die Auftragsetikettnachricht kann Beschreibungen spezifischer Zweige und ihrer Abhängigkeitsbeziehungen ausreichend detailliert umfassen, um es den Prozessoren 80 i zu ermöglichen, eine Fertigstellung der Zweige anzubieten. Die Auftragsetikettmeldung kann über einen festgelegten Zeitraum in dem Dienstezentrum 40 fortbestehen, um es den Prozessoren 80 i zu ermöglichen, Angebote zu senden. Die Zeit kann ein eingestellter Wert (z. B. eine Stunde) sein oder kann auf einer in der Auftragsanforderung 32 festgelegten Fertigstellungsfrist basieren.
  • Der Angebotsdienst 90 kann auf der Basis von festgelegten Kriterien Angebote 91 von den Prozessoren 80 auswählen. Beispielsweise kann die Auftragsanforderung 32 minimale Leistungserfordernisse (z. B. maximale Kosten und eine Fertigstellungsfrist) festlegen. Der Angebotsdienst 90 kann alle Angebote, die die minimalen Leistungserfordernisse nicht erfüllen, zurückweisen. Wenn die Arbeitsflußsteuerung 70 mehrere Zweige erstellt hat, kann jeder solche Zweig minimale Leistungserfordernisse umfassen. Die zweigspezifischen Leistungserfordernisse können durch die Arbeitsflußsteuerung 70 auf der Basis von Gesamtleistungserfordernissen für das Auftragsetikett 61 festgelegt werden. Ein Prozessor 80, der bezüglich eines bestimmten Zweiges anbietet, kann durch den Angebotsdienst 90 zurückgewiesen werden, wenn der Prozessor 80 die minimalen Leistungserfordernisse nicht erfüllt.
  • Falls der Client 31 keine minimalen Leistungserfordernisse festlegt, kann der Angebotsdienst 90 einen standardmäßigen Satz von Kriterien (z. B. einen Industriestandard) anwenden. Ferner muß das Angebot jegliche Erfordernisse bezüglich eines Erzeugens von Ausgangsressourcen erfüllen. Diesbezüglich können Angebote, die versehentlich gemacht werden oder die ansonsten wahrscheinlich zurückgewiesen würden, aussortiert werden. Beispielsweise kann ein Angebot zum Drucken von Innenseiten der Broschüre ein Fertigstellungsdatum von einem Jahr angeben. Ein solches Angebot wird eventuell zurückgewiesen, auch bei Abwesenheit jeglicher festgelegter Leistungserfordernisse von dem Client 31.
  • Zusätzlich zu einem Unterbreiten von Leistungserfordernissen kann der Client 31 einen Auswertungsalgorithmus zum Auswerten von Angeboten spezifizieren. Beispielsweise kann der Client 31 festlegen, daß Kosten zweimal so stark zu gewichten sind wie jegliche andere Leistungserfordernisse.
  • In der Abwesenheit eines durch einen Client festgelegten Auswertungsalgorithmus kann der Angebotsdienst 90 einen standardmäßigen Auswertungsalgorithmus anwenden, um Angebote für jeden Zweig in dem Arbeitsfluß in eine Rangordnung zu bringen. Der Auswertungsalgorithmus kann Gewichtungskriterien anwenden oder kann eine vorgegebene Regel anwenden. Beispielsweise können Angebote auf der Basis einer maximalen Punktzahl in eine Rangordnung gebracht werden, wobei Punkte für Kostenschätzungen unter einem Maximum und für Fertigstellungszeiten unter einem Maximum vergeben werden. Nachdem der Auswertungsalgorithmus angewendet wurde, bringt der Angebotsdienst 90 die Angebote für jeden Zweig in eine Rangordnung. Wenn lediglich ein Prozessor 80 den Prozeß überlebt, kann dieser Prozessor 80 automatisch ausgewählt und dem Zweig zugewiesen werden. Wenn mehrere Prozessoren 80 i überleben, kann der Angebotsdienst 90 eine Liste dieser Prozessoren 80 i der Arbeitsflußsteuerung 70 bereitstellen, die daraufhin die Prozessoren 80 auswählt, die den Zweigen zuzuweisen sind. Alternativ dazu kann die Liste dem Client 31 bereitgestellt werden, und der Client 31 kann den bzw. die Prozessor(en) 80 i auswählen, der bzw. die die in dem Arbeitsfluß definierten Aufgaben erfüllen soll bzw. sollen.
  • Die Arbeitsflußsteuerung 70 kann als Gewinner hervorgehende Angebote entsprechenden Zweigen zuordnen und kann die Angebotsinformationen mit dem Auftragsetikett 61 speichern. Die gespeicherten Angebotsinformationen können Identifizierungsinformationen umfassen, die es dem Autorisierungsserver 94 und dem Authentifizierungsserver 92 ermöglichen, einen Zugriff auf Auftragsetikettzweige oder auf das gesamte Auftragsetikett 61 zu erlauben. Da die Angebotsinformationen mit dem Auftragsetikett 61 gespeichert sind, kann ein Prozessor 80 auf diejenigen Zweige, für die der Prozessor 80 autorisiert ist, zugreifen, ohne direkt mit dem Auftragsetikettdienst 61 kommunizieren zu müssen. Dieses Merkmal ermöglicht es, daß das Auftragsetikett 60 von einem Prozessor 80 zu einem anderen Prozessor 80 weitergereicht wird, was die Verarbeitungszeit und -effizienz verbessert.
  • Bei einem Ausführungsbeispiel greift die Arbeitsflußsteuerung 70 auf Steuerdaten des Auftragsetiketts 61 zu, um zu bestimmen, welche(r) Prozessor(en) 80 1 der in dem Auftragsetikett identifizierten spezifischen Aufgabe zugewiesen werden sollte bzw. sollten. Die Arbeitsflußsteuerung 70 kann ferner identifizieren, welche(r) der Prozessoren 80 i in der Lage wäre(n), die in den Steuerdaten festgelegten Kriterien zu erfüllen, und kann dem Client durch den Vorfelddienst 30 eine Liste solcher Prozessoren 80 i bereitstellen. Der Client 31 kann dann (einen) Prozessor(en) 80 i aus der Liste auswählen.
  • Bei einem Ausführungsbeispiel kann der Auftragsetikettdienst als eine Abfolge von Programmanweisungen verkörpert sein, die auf einer computerlesbaren Speichervorrichtung, beispielsweise einem CD-ROM, gespeichert sind. Wenn sie in einen Computer geladen oder mit einem Computer gekoppelt sind, können die Programmanweisungen durch einen Prozessor des Computers gelesen und ausgeführt werden, um die Funktionen des Auftragsetikettdienstes zu erfüllen.
  • Fig. 5A veranschaulicht ein beispielhaftes Auftragsetikett 61. Das Auftragsetikett 61 kann zwei Teile umfassen. Ein erster Teil umfaßt einen Rahmen 62 und eine optionale Client-Erweiterung 64. Der Rahmen 62 umfaßt Informationen, Dateien und eine Programmierung, die notwendig sind, um Aufgaben, die in dem Auftragsetikett 61 definiert sind, zu steuern. Die Client-Erweiterung 64 kann Informationen umfassen, die sich auf einen bestimmten Client (Maschine) und auf einen Benutzer der Maschine beziehen. Ein zweiter Teil umfaßt ein Sicherheitsmodul 67, das das Auftragsetikett 61 vor einem nicht autorisierten Zugriff schützt.
  • Der Rahmen 62 kann ein Auftragskennzeichen (ID) 63, ein Dienst-ID 65, einen Aufgabenabschnitt 68 und einen Steuerdatenabschnitt 69 umfassen. Das Auftrags-ID 63 umfaßt einen Verweis auf einen spezifischen Auftrag oder Inhalt 51, der in dem Auftragsspeicher 50 gespeichert ist. Das Auftrags-ID 63 umfaßt ferner einen Verweis auf einen bestimmten Auftragsspeicher 50, der verwendet wird, um den Inhalt 51 zu speichern. Eine Entität, die einen Verweis auf das Auftragsetikett 61 erlangt, kann das Auftrags-ID 63 verwenden, um auf den entsprechenden Inhalt 51 zuzugreifen. Somit kann das in Fig. 3 gezeigte Netz 20 mehrere Auftragsspeicher 50 umfassen, und das Auftrags-ID 63 kann verwendet werden, um das Auftragsetikett 61 mit einem spezifischen Auftragsspeicher 50 in Beziehung zu setzen. Das Dienst-ID 65 identifiziert einen spezifischen Auftragsetikettdienst 60, der das Auftragsetikett 61 speichert. Beispielsweise kann das Netz 20 mehrere Auftragsetikettdienste 60 (in Fig. 3 nicht gezeigt) umfassen. Das Dienst-ID 65 wird verwendet, um das Auftragsetikett 61 mit dem entsprechenden Auftragsetikettdienst 60 in Beziehung zu setzen.
  • Der Aufgabenabschnitt 68 (Fig. 5B) kann Zweigdefinitionen und andere Informationen, die benötigt werden, um eine Fertigstellung der Zweige zu steuern, umfassen. Der Aufgabenabschnitt 68 kann derart strukturiert sein, daß jeder Zweig oder Knoten in einem Knotenbaum durch einen oder mehrere Zweige 66 i in dem Aufgabenabschnitt dargestellt wird. Bei diesem Ausführungsbeispiel kann jeder Knoten in dem Knotenbaum (z. B. dem Knotenbaum 10 der Fig. 2) dem Knoten, der Beschreibung 95, Ressourcen 96, Sperren-/Entsperren-Flag 97 und Sicherheitsmerkmalen 99 zugeordnet sein. Auf diese Weise reflektiert das Auftragsetikett 61 eine hierarchische Datenbankstruktur.
  • Der Steuerdatenabschnitt 69 umfaßt die spezifischen Anweisungen, Parameter und Kriterien zum Erfüllen der durch das Auftragsetikett 61 identifizierten Aufgabe. Steuerdaten in dem Steuerdatenabschnitt 69 können ferner jedem Knoten in einem Knotenbaum zugeordnet sein.
  • Das Sicherheitsmodul 67 steuert einen Zugriff auf ein spezifisches Auftragsetikett. Das Sicherheitsmodul 67 kann unter Verwendung von standardmäßigen Verschlüsselungs- und Zugriffstechniken, einschließlich z. B. Öffentlicher- /Privater-Schlüssel-Infrastrukturen, implementiert werden. Bei einem Ausführungsbeispiel kann das Sicherheitsmodul 67 eine Liste von autorisierten Prozessoren 80 i umfassen, denen ein Zugriff auf einen oder mehrere Zweige des Auftragsetiketts 61 oder auf das gesamte Auftragsetikett 61 gewährt werden kann.
  • Die Client-Erweiterung 64 kann "Kunden"-Informationen wie beispielsweise das Alter, die Kreditkartennummer und die Postleitzahl des Benutzers enthalten. In der Client- Erweiterung 64 bereitgestellte Informationen können durch Verwendung einer Öffentlicher-Schlüssel-Signatur oder ein ähnliches Merkmal geschützt sein. Daher sind alle Client- Erweiterung-Informationen automatisch in einem Nachrichtenauswahlprotokoll (MDP - message digest protocol) enthalten und wirken sich auf die Signatur des Auftragsetiketts 61 aus. Bei der oben beschriebenen Auftragsetikettarchitektur nimmt man sich vieler Internet-bezogener Sicherheitsfragen an, einschließlich IP-Schwindel, zeitgesteuerter Sitzungen, Auftragsetikettänderungen, variierender Autorisierungsebenen und einer clientabhängigen Dauerdatenspeicherung.
  • Das in Fig. 5A gezeigte Auftragsetikett 61 kann verwendet werden, um auf einen spezifischen Inhalt 51 in dem Auftragsspeicher 50 zu verweisen. Alternativ dazu können mehrere Auftragsetiketten 61 verwendet werden, um auf einen spezifischen Inhalt 51 zu verweisen, oder es kann ein Auftragsetikett 61 verwendet werden, um auf mehrere Inhalte 51 zu verweisen. Somit kann beispielsweise ein Auftragsetikett 61 eine sich wiederholende Druckaufgabe spezifizieren, die an ähnlichen Dokumenten zu erfüllen ist, von denen jedes einen unterschiedlichen Inhalt 51 aufweist.
  • Unter Verwendung des in Fig. 3 gezeigten Netzes 20 und des in Fig. 5A gezeigten entsprechenden Auftragsetiketts kann ein Client 31 viele verschiedene elektronische Dienste anfordern und ausführen lassen. Beispielsweise kann der Client 31 das Netz 20 als E-Mail-Anwendung verwenden.
  • Fig. 5B zeigt den Aufgabenabschnitt 68 im Detail. Der Aufgabenabschnitt 68 kann einen oder mehrere Zweigdeskriptoren 66 umfassen, die Informationen umfassen, welche sich auf eine Verarbeitung für diesen Zweig beziehen. Ein Beschreibungssegment 95 kann die für jeden Zweig zu erfüllenden Aufgaben definieren. Alternativ dazu kann das Beschreibungssegment 95 eine Verknüpfung mit oder eine Kennung zu einer Datei bereitstellen, die die Zweigbeschreibung enthält. Das Ressourcensegment 96 listet Eingangs- und Ausgangsressourcen, die den für den Zweig definierten Aufgaben zugeordnet sind, auf. Das Sperren-/Entsperren-Flag-Segment 97 ermöglicht es einem Flag, auf ein Sperren und Entsperren eines Zweiges gesetzt zu sein. Ein Angebotsinformationssegment 98 umfaßt Angebotsinformationen, die beispielsweise durch den Angebotsdienst 90 gesammelt wurden. Die Angebotsinformationen 98 können detaillierte Informationen wie beispielsweise die IP-Adresse der Prozessoren, die zu einem Zugriff auf den Zweig autorisiert sind, geschätzte Leistungsinformationen (z. B. geschätzte Kosten, Lieferzeit) und andere Informationen umfassen. Alternativ dazu können die Angebotsinformationen 98 eine Verknüpfung mit einer anderen Datei enthalten, die die ausführlichen Angebotsinformationen enthält. Das Sicherheitssegment 99 kann autorisierte Sicherheitsebenen angeben und kann als Teil einer Öffentlicher-Schlüssel/Privater-Schlüssel-Infrastruktur verwendet werden.
  • Fig. 5C veranschaulicht ein Ausführungsbeispiel der Steuerdaten 69. Die Steuerdaten 69 umfassen eine Client-Adresse, die eine Maschinenadresse sein kann, wie beispielsweise eine IP-Adresse (IP = Internet protocol, Internet-Protokoll). Ein Ablaufdatum-/-Zeitsegment kann verwendet werden, um einen aktiven Status des Etiketts 61 zu beenden. Nachdem dieser beendet wurde, kann das Etikett aus dem Auftragsetikettdienst gelöscht werden, und der entsprechende Inhalt 51 kann einer Verweisaufhebung unterzogen werden. Das heißt, daß durch das Auftragsetikett 61 eventuell nicht mehr auf den Inhalt 51 verwiesen wird. Dieses Merkmal kann dazu beitragen, veraltete Daten zu beseitigen und Ressourcen für andere Auftragsanforderungen 32 (siehe Fig. 7) freizumachen. Schließlich können die Steuerdaten 69 spezifische Leistungserfordernisse umfassen, wie beispielsweise Kosten und Lieferung, Gewährleistung, benötigte Materialien, Mengenrabatte und andere Erfordernisse.
  • Die Verwendung von Auftragsetiketten als XML-Objekte ermöglicht es Clients, Datenbanken zu definieren und Daten durch den Auftragsetikettdienst 60 und den Auftragsspeicher 50 zu speichern. Die Datenbanken können verwendet werden, um Kontaktlisten, Adressen und andere persönliche Daten aufzubewahren. Die Datenbanken können ferner dazu verwendet werden, beliebige andere generische Daten zu speichern. Die Datenbanken könnten daraufhin in Verbindung mit einer Vielzahl von E-Diensten, die durch die Prozessoren 80 i bereitgestellt werden, verwendet werden. Beispielsweise kann ein E-Mail-Prozessor 80, der E-Mail-Dienste bereitstellt, in Verbindung mit einer persönlichen Kontaktliste verwendet werden, um E-Mail-Nachrichten zu senden, elektronische Dateien zu transferieren oder einen Chatroom einzurichten. Der E-Mail-Prozessor 80 kann in vordefinierten Abständen auf die Kontaktliste zugreifen, um E-Mail-Nachrichten an eine ausgewählte Gruppe von E-Mail-Adressen zu senden. Da das Dienstezentrum 40 ferner Prozessoren 80, die mit dem Kommunikationsnetz 35 gekoppelt sind, ein einzelnes Portal bereitstellt, muß der Client 31 keinerlei Kenntnis der Datenbankstruktur oder der Verarbeitungserfordernisse der Prozessoren 80 haben.
  • Bei der spezifischen Anwendung der generischen XML- Datenbank auf einen E-Mail-Dienst hat der Client 31 vielleicht eine Liste von E-Mail-Kontakten als eine generische Datenbank eingerichtet. Die Kontakte-Datenbank kann dann in dem Auftragsspeicher 50 als Inhaltsdatei 51 gespeichert werden. Bei dem Auftragsetikettdienst 60 kann ein entsprechendes Auftragsetikett 61 gespeichert werden. Das Auftragsetikett 61 umfaßt Steuerdaten, die benötigt werden, um E-Mail durch das Dienstezentrum 40 zu senden und zu empfangen. Ferner dient das Auftragsetikett 61 als ein Zeiger auf Daten in der Inhaltsdatei 51. Insbesondere kann das Auftragsetikett 61 XML-Daten speichern, die mit anderen Daten, die in der Inhaltsdatei 51 gespeichert sind, in Zusammenhang stehen.
  • Alternativ dazu kann das Auftragsetikett 61 die Kontakte- Daten speichern. Diese Alternative nützt die Tatsache aus, daß das Auftragsetikett 61 ein Vokabular umfaßt, das erweitert werden kann, um die Kontaktdaten zu umfassen, und daß das Vokabular ferner erweitert werden kann, um Eigenschaften für jede Kontaktperson in den Kontaktdaten zu umfassen. Beispielsweise kann das Auftragsetikett 61 festlegen, daß eine Kontaktperson eine Geschäftskontaktperson oder eine Privatkontaktperson ist. Es können auch andere Eigenschaften enthalten sein, beispielsweise, ob die Kontaktpersonen in der Kontakt-Datenbank Mobiltelephone, ortsfeste Telephone, Faxgeräte und E-Mail-Adressen verwenden.
  • Die Verwendung des Auftragsetiketts 61 ermöglicht ferner ein syntaktisches Analysieren, Durchsuchen und Aktualisieren der Kontakte-Datenbank. Beispielsweise kann der Client 31 die Kontakte-Datenbank nach Telephonnummern für alle Personen, deren Vorname Joe ist, durchsuchen wollen. Diese Suchfunktionalität ist in dem Auftragsetikett 61 enthalten und ermöglicht es dem Auftragsetikettdienst 60, dem Client eine Liste von Telephonnummern für alle Einträge in der Kontakte-Datenbank, bei denen der Vorname der Person Joe ist, bereitzustellen. Das heißt, daß die Kontakte-Datenbank Einträge umfaßt, die die Eigenschaft Joe aufweisen, und daß der Auftragsetikettdienst in der Lage ist, die Kontakte- Datenbank auf diese Eigenschaft hin zu durchsuchen und eine Liste dieser Einträge an den Client 31 zurückzugeben.
  • Die Eigenschaftenfunktion des Auftragsetiketts 61 ermöglicht ferner, daß der Auftragsetikettdienst 60 spezifische Aufgaben, die von dem Client gewünscht werden, steuert, oder dem Client anzeigt, daß eine gewünschte Aufgabe nicht erfüllt werden kann. Um bei dem Beispiel der Kontakte- Datenbank zu bleiben, möchte der Client 31 vielleicht eine Faksimileübertragung an alle Einträge in der Kontaktliste senden, die eine bestimmte Postleitzahl aufweisen. Der Auftragsetikettdienst 60 kann die Kontakte-Datenbank nach Eigenschaften hin durchsuchen, wobei er nach der Postleitzahl sucht. Ferner kann der Auftragsetikettdienst 60 die Kontakte-Datenbank durchsuchen, um zu bestimmen, ob es einen Eintrag gibt, der kein Faksimilegerät hat. Für diejenigen Einträge, die kein Faksimilegerät haben, kann der Auftragsetikettdienst 60 eine Nachricht erzeugen, die an den Client 31 zurückzusenden ist und den Client 31 informiert, daß die Faksimileübertragung nicht zugestellt werden konnte. Unter Verwendung dieser Funktionalität muß der Client 31 nichts über die beabsichtigten Empfänger der Faksimileübertragung wissen.
  • Um zu dem Beispiel eines E-Mail-Dienstes zurückzukehren, kann bei dem Client 31 eine E-Mail-Anwendung gestartet werden, um unter Verwendung des Internet eine E-Mail-Nachricht an eine oder mehrere Kontaktpersonen in der Kontakte- Datenbank zu senden. Der Client 31 muß jedoch kein Abonnement bei einem Internet-Dienstleister haben. Statt dessen bestimmt das Dienstezentrum 40, welcher Prozessor 80 am besten dem Erfordernis des Client, die E-Mail-Nachricht zu senden, entspricht. Das heißt, daß das Dienstezentrum 40 einen E-Mail-Dienstleister (einen Prozessor 80) auswählen kann, um die E-Mail-Nachricht an eine ausgewählte Zieladresse zu senden. Ferner kann das Dienstezentrum 40 auf der Basis von Informationen, die in der Kontakte-Datenbank geführt werden (d. h. dem Inhalt 51 in dem Auftragsspeicher 50), bestimmen, welche Zustelloptionen durch einen Benutzer an der Zieladresse gewünscht sind. Beispielsweise kann der Benutzer der Zieladresse wünschen, daß alle E-Mail- Nachrichten an einen E-Mail-Briefkasten gesendet werden oder daß immer dann, wenn eine E-Mail-Nachricht gesendet wird, eine Mitteilung bereitgestellt wird. Diese Liefermerkmale können in der Kontakte-Datenbank gespeichert sein.
  • Alternativ dazu können die Zustellmerkmale in einer separaten Datenbank (Inhaltsdatei 51) in dem Auftragsspeicher 50 gespeichert sein, und das Dienstezentrum kann beim Bestimmen, wie die E-Mail-Nachricht zuzustellen ist, aus dieser separaten Datenbank Informationen wiedergewinnen. Im einzelnen kann die separate Datenbank eine Vielzahl von Benutzern zusammen mit der Internet-Adresse des Benutzers umfassen. Durch Vergleichen der bereitgestellten Internet- Adresse mit dem ausgehenden E-Mail an die Internet-Adressen in der separaten Datenbank kann das Dienstezentrum 40 gewünschte Zustelloptionen des Adressaten bestimmen. Dieser Prozeß zum Bestimmen von Zustelloptionen ist für den Client 31, von dem die E-Mail-Nachricht ausging, transparent. Alles, was der Client 31 wissen muß, sind die Kontaktinformationen (z. B. die Internet-Adresse).
  • Der Client 31 kann den Auftragsetikettdienst 60 verwenden, um eine Anzahl von Leistungsmerkmalen, die sich auf den E-Mail-Dienst beziehen, festzulegen. Beispielsweise möchte der Client 31 vielleicht, daß das Dienstezentrum eine festgelegte Anzahl von Zustellversuchen unternimmt und, falls keine Zustellung stattfindet, dem Client 31 eine Rücknachricht sendet, die die Nichtzustellung der E-Mail-Nachricht angibt.
  • Wie oben angemerkt wurde, kann das Auftragsetikett 61 in Verbindung mit anderen Komponenten des Dienstezentrums 40 auch verwendet werden, um eine dauerhafte, generische objektbasierte Datenstruktur, beispielsweise eine XML- Datenbank, zu erstellen. Ein Beispiel der Verwendung eines Auftragsetiketts 61 für diesen Zweck ist in Fig. 5D veranschaulicht. Das Auftragsetikett 61 umfaßt eine Kontakte- Liste 84, die in Form einer XML-Datenbank oder einer anderen generischen Datenbank vorliegen kann. Die Kontakte- Liste 84 kann eine Struktur mit Einträgen für eine geschäftliche 85 und private 86 Verwendung umfassen. Die Strukturen der geschäftlichen 85 und privaten 86 Kontakte können Einträge von Einzelpersonen 87 umfassen, wie gezeigt ist. Jeder der Einträge 87 kann spezifische Eigenschaften umfassen, wie oben definiert ist. Zusätzlich oder alternativ dazu kann jeder der Einträge 87 Verknüpfungen mit anderen Datenbanken umfassen, die weitere Informationen und Eigenschaften über die Einzelperson bereitstellen.
  • Während die Verwendung des Auftragsetiketts 61 als eine XML-Datenbank unter Bezugnahme auf einen E-Mail- und Nachrichtendienst beschrieben wurde, ist das Auftragsetikett 61 nicht so begrenzt. Jegliche Daten, die in einer Datenbank gespeichert werden können, sind unter Verwendung des Auftragsetiketts 61 zugänglich und steuerbar.
  • Die oben beschriebenen und in den Fig. 5A bis 5D gezeigten Merkmale können in einem anderen Ausführungsbeispiel eines Auftragsetiketts 61 reproduziert werden, bei dem sich alle Daten, die sich auf einen bestimmten Knoten oder Zweig beziehen, in diesem Knoten oder Zweig befinden. Unter Verwendung des in Fig. 2 gezeigten beispielhaften Knotenbaums 10 kann jeder Knoten (Zweig) detaillierte Informationen und Merkmale wie beispielsweise Ressourcen, autorisierte Prozessoren 80 i, Sperren-/Entsperren-Flag, Angebotsinformationen, Zweigbeschreibung und andere Informationen umfassen.
  • Fig. 6 ist ein Diagramm von Funktionen des Auftragsetikettdienstes 60. Die Hauptfunktionen des Auftragsetikettdienstes 60 bestehen darin, die Auftragsetiketten 61 i zu speichern 73 und Benutzern, beispielsweise dem Client 31 und den Prozessoren 80 i, Zugriff auf die Auftragsetiketten 61 i zu gewähren 75. Um diese Speicher- und Zugriffsfunktionen zu bewerkstelligen, kann der Auftragsetikettdienst 60 einen Auftragsetikettverweis 72 und einen Auftragsressourcenverweis 74 erstellen. Der Auftragsetikettdienst 60 steuert überdies einen Auftragsinhaltzugriff 76, aktualisiert 77 die Auftragsetiketten 61 i, während Prozesse durch die Prozessoren 80 i abgeschlossen und berichtet werden, ergänzt die Auftragsetiketten 61 i und berichtet 78, wenn alle Prozesse für ein bestimmtes Auftragsetikett 61 abgeschlossen sind, und stellt einen Klassifizierungsprozeß 79 bereit, um es einem Client 31 zu ermöglichen, eine Erfüllung der in dem Auftragsetikett 61 benannten Aufgaben zu ratifizieren.
  • Der Auftragsetikettverweis 72 umfaßt einen spezifischen Verweis auf ein entsprechendes Auftragsetikett 61 i. Der Auftragsetikettverweis 72 kann durch den Auftragsetikettdienst 60 verwendet werden, um es einem oder mehreren Prozessoren 80 i und Clients 31 i zu ermöglichen, auf das Auftragsetikett 61 zuzugreifen. Das heißt, statt das Auftragsetikett 61 an einen Prozessor 80 weiterzugeben, gibt der Auftragsetikettdienst 60 den Auftragsetikettverweis 72 weiter. Mit dem Auftragsetikettverweis 72 kann der Prozessor 80 auf das gesamte oder einen Teil eines Auftragsetiketts 61 zugreifen, so daß der Prozessor 80 einen oder mehrere Prozesse abschließen kann. Im Gegensatz zu herkömmlichen Auftragsetikettdiensten behält der Auftragsetikettdienst 60 das Auftragsetikett in einem Speicher 73 und erlaubt es lediglich Benutzern (Clients 31 i und Prozessoren 80 i), auf das Auftragsetikett 61 zuzugreifen. Dieses Merkmal ermöglicht es mehreren Prozessoren 80, gleichzeitig Prozesse für die spezifische Auftragsanforderung 32, die sich auf das Auftragsetikett 61 bezieht, abzuschließen.
  • Der Auftragsetikettdienst 60 kann ferner einen Ressourcenverweis 74 erstellen und kann den Ressourcenverweis 74 den Prozessoren 80 und den Clients 31 auf eine ähnliche Weise wie bei dem Auftragsetikettverweis 72 bereitstellen. Wie oben bei der Beschreibung, die die Fig. 2 begleitet, angemerkt wurde, können die Ressourcen physische Geräte und Materialien umfassen und können digitale Dateien umfassen. Eine Verwendung des Ressourcenverweises 74 kann Daten, die in dem Auftragsetikett 61 enthalten sind, vereinfachen.
  • Alternativ dazu können Informationen, die in dem Ressourcenverweis 74 enthalten sind, in dem Auftragsetikett 61 enthalten sein oder können in anderen Dateien enthalten sein, auf die durch die Clients 31 i und die Prozessoren 80 i zugegriffen wird.
  • Fig. 7 ist ein Diagramm, das einen Betrieb von ausgewählten Funktionen des Auftragsetikettdienstes 60 zeigt. Wie in Fig. 7 gezeigt ist, umfaßt der Auftragsetikettdienst 60 ein Auftragsetikett 61 1, das ein Programmierungsobjekt wie dasjenige, das in Fig. 2 dargestellt wurde und oben beschrieben wurde, sein kann. Das Auftragsetikett 61 1 ist als dem Auftragsetikettdienst 60 durch den Client 31 1 bereitgestellt gezeigt. Der Client 31 1 kann ein vernetzter Computer oder ein ähnliches Gerät sein, das in der Lage ist, die digitalen Informationen, die das Auftragsetikett 61 1 darstellen, an den Auftragsetikettdienst 60 zu übermitteln. Um sicherzustellen, daß das Auftragsetikett 61 1 bei dem Auftragsetikettdienst 60 ankommt, kann das Auftragsetikett 61 1 eine Bezugnahme auf den Auftragsetikettdienst 60 enthalten, wie beispielsweise das in Fig. 5B veranschaulichte Dienste- ID 65. Das Dienste-ID 65 kann eine Netzadresse des Auftragsetikettdienstes 60 umfassen. Beispielsweise kann das Dienste-ID 65 einen Einheitsressourcenlokator (URL - universal resource locator) umfassen, falls der Auftragsetikettdienst 60 eine Internet-Website ist.
  • Ebenfalls in Fig. 7 sind ein Client 31 2 und Prozessoren 80 1-80 N gezeigt. Die Prozessoren 80 1-80 N können vernetzte Ressourcen wie beispielsweise vernetzte Drucker, Electronic-Commerce-Entitäten, die beispielsweise Internet- Websites, und Entitäten "aus Ziegelsteinen und Mörtel", wie beispielsweise lokale Druckershops, die unter Verwendung des Dienstebusses 41 mit dem Auftragsetikettdienst 60 verbunden sind, umfassen.
  • Der Client 31 erzeugt eine Auftragsanforderung 32 (Inhalt 51 und Auftragsetikettdaten). Unter Verwendung des Vorfelddienstes 30 (nicht in Fig. 7 gezeigt) und des Dienstebusses 41 sendet der Client 31 i die Auftragsetikettdaten an den Auftragsetikettdienst 60 und den Inhalt 51 (nicht in Fig. 7 gezeigt) an den Auftragsspeicher 50. Der Auftragsetikettdienst 60 kann die Auftragsetikettdaten an die Arbeitsflußsteuerung 70 weiterleiten, die dann ein Auftragsetikett 61 erstellt. Der Inhalt 51 1 und das Auftragsetikett 61 i stehen durch das Auftragskennzeichen 63 miteinander in Zusammenhang. Das Auftragskennzeichen 63 umfaßt ferner eine Identifizierung des Auftragsspeichers 50 und einer Position in dem Auftragsspeicher 50, an der der Inhalt 51 1 gespeichert ist. Bei einem alternativen Ausführungsbeispiel kann der Inhalt 51 1 bei dem Client 31 1 gespeichert sein, und durch den Dienstebus 41 und den Vorfelddienst 30 kann daraufhin durch andere Benutzer auf ihn zugegriffen werden.
  • Das Auftragsetikett 61 1 spezifiziert Prozesse, die abgeschlossen werden müssen, um die Auftragsanforderung 32 zu beenden. Wie oben bemerkt wurde, veranschaulicht Fig. 2 Prozesse, die erforderlich sind, um eine Broschüre zu drucken, einschließlich der Innenseiten und des Einbands. Es kann mehr als ein Prozessor 80 i erforderlich sein, um eine solche Auftragsanforderung abzuschließen oder um die Auftragsanforderung auf die kosteneffizienteste und/oder zeitsparendste Weise abzuschließen. Die Arbeitsflußsteuerung 70 (nicht in Fig. 7 gezeigt) kann bestimmen, welche(r) der Prozessoren 80 1-80 N einen spezifischen Prozeß abschließen sollte, und, falls notwendig, die Reihenfolge, in der solche Prozesse abgeschlossen werden sollten. Die Arbeitsflußsteuerung 70 kann die diversen Prozessoren 80 i abfragen, um zu bestimmen, welche verwendet werden können, um die Auftragsanforderung abzuschließen. Die Arbeitsflußsteuerung 70 kann daraufhin ausgewählte Prozessoren 80 i davon benachrichtigen, daß bei dem Auftragsetikettdienst 60 eine Auftragsanforderung registriert wurde.
  • Für jedes empfangene Auftragsetikett 61 i erstellt der Auftragsetikettdienst 60 einen Verweis 72 i zu dem Auftragsetikett 61 i. Der Prozessor 80 1 kann einen Zugriff auf das Auftragsetikett 61 anfordern, um einen oder mehrere Prozesse abzuschließen. Als Reaktion stellt der Auftragsetikettdienst 60 dem Prozessor 80 1 den Auftragsetikettverweis 72 1 bereit. Der Auftragsetikettverweis 72 1 wird daraufhin als Index zu dem Auftragsetikett 61 1 verwendet. Der Auftragsetikettverweis 72 1 kann auch anderen Prozessoren, beispielsweise dem Prozessor 80 2, und anderen Clients, beispielsweise dem Client 31 2, bereitgestellt werden. Der Prozessor 80 2 und der Client 31 2 können daraufhin zur selben Zeit, wie der Prozessor 80 1 auf das Auftragsetikett 61 1 zugreift, auf das Auftragsetikett 61 1 zugreifen. Dieser gleichzeitige Zugriff ermöglicht, daß verschiedene Prozesse parallel abgeschlossen werden können. Bei dem in Fig. 2 veranschaulichten Beispiel kann der Prozessor 80 1 manche oder alle Prozesse für die Innenseiten abschließen, und der Prozessor 80 2 kann die Prozesse für den Einband abschließen.
  • Fig. 8 ist ein Blockdiagramm, das eine beispielhafte Anwendung der Steuermerkmale des Auftragsetikettdienstes 60 veranschaulicht. Das Auftragsetikett 61 1 wird durch das Auftragsetikettkennzeichen 63 auf den Auftragsinhalt 51 1 verwiesen, und Informationen, die sich auf das Auftragsetikett 61 1 und den Auftragsinhalt 51 1 beziehen, werden über den Dienstebus 41 geleitet. Die Prozessoren 80 i können unter Verwendung des Dienstebusses 41 auf den Auftragsinhalt 51 1 und das Auftragsetikett 61 1 zugreifen. Bei dem veranschaulichten Beispiel bezieht sich das Auftragsetikett 61 1 auf eine Auftragsanforderung 32, um unter Verwendung der in Fig. 2 dargelegten Prozesse eine Broschüre zu drucken. Der Prozessor 80 1 wird durch den Arbeitsflußprozessor 70 dazu benannt, die Innenseiten der Broschüre zu erzeugen, und der Prozessor 80 2 ist dazu benannt, den Broschüreneinband zu erzeugen. Der Prozessor 80 1 leitet eine Auftragsetikett- Zugriffsanforderung an den Auftragsetikettdienst 60. Die Zugriffsanforderung kann Sicherheitsinformationen umfassen, die es dem Prozessor 80 1 ermöglichen, auf das Auftragsetikett 61 1 und den entsprechenden Inhalt 51 1 oder Auftrag zuzugreifen. Als Reaktion stellt der Auftragsetikettdienst 60 einen Auftragsetikettverweis 62 1 bereit, der durch den Prozessor 80 1 verwendet wird, um auf das Auftragsetikett 61 1 zuzugreifen. Der Prozessor 80 1 kann Informationen in dem Auftragsetikett 61 1 verwenden, um auf den in dem Auftragsspeicher 50 gespeicherten Inhalt 51 1 zuzugreifen. Da der Prozessor 80 1 lediglich die Innenseiten erzeugt, benötigt der Prozessor 80 1 keinen Zugriff auf alle in dem Auftragsetikett 61 1 enthaltenen Informationen. Da das Auftragsetikett 61 1 ferner in dem Auftragsetikettdienst 60 bleibt, können ferner andere Entitäten, beispielsweise der Prozessor 80 2, weiterhin auf das Auftragsetikett zugreifen.
  • Während der Prozessor 80 1 diverse Prozesse abschließt, kann der Prozessor 80 1 den Inhalt 51 1 und das Auftragsetikett 61 1 aktualisieren. Somit kann das Auftragsetikett 61 1 den neuesten Status der Auftragsanforderung 32 widerspiegeln. Die Statusberichte können angeben, wenn ein Knoten in dem Knotenbaum 10 abgeschlossen ist, wenn eine vorläufige Frist abgeschlossen ist, wenn ein weiterer Prozessor verwendet werden kann, um einen Prozeß abzuschließen, und wenn das gesamte Verarbeiten abgeschlossen ist. Der Statusbericht kann in einer digitalen Datei enthalten sein, die beispielsweise durch die Arbeitsflußsteuerung 70 verwendet wird. Der Statusbericht kann auch in einem für Menschen lesbaren Format enthalten sein, beispielsweise in einem Dialogfenster auf einem Anzeigebildschirm eines Computers. Der Prozessor 80 1 kann den Auftragsetikettverweis 72 1 empfangen und kann alle geplanten Prozesse abschließen, wobei der Auftragsetikettverweis 72 1 zu dem Auftragsetikettdienst 60 zurückgegeben wird. Der Prozessor 80 1 kann ferner eine Kopie des Auftragsetikettverweises 72 1 an den Prozessor 80 2 senden, so daß der Prozessor 80 2 auf das Auftragsetikett 61 1 und den Inhalt 51 1 zugreifen und den Broschüreneinband erzeugen kann.
  • Fig. 9 ist ein Flußdiagramm, das eine Operation 100 des Auftragsetikettdienstes 60 veranschaulicht. Die Operation 100 basiert auf einem Abschließen der Innenseitenknoten, die in Fig. 2 gezeigt sind. Die Operation 100 kann sich zumindest teilweise unter der Steuerung der Arbeitsflußsteuerung 70 oder eines äquivalenten Geräts befinden. Die Operation 100 geht davon aus, daß eine Auftragsanforderung 32 (Auftragsetikettdaten und -inhalt) an das Dienstezentrum 40 geleitet wurde und daß ein Auftragsetikettdienst 60 erstellt wurde. Die Operation 100 beginnt bei einem Startblock 101. Bei einem Block Prüfe Prozessoren und Weise Prozessoren zu 105 bestimmt die Arbeitsflußsteuerung 70, welche Prozessoren 80 i in der Lage und verfügbar sind, den Auftrag abzuschließen. Die Arbeitsflußsteuerung 70 oder der optionale Angebotsdienst 90 können Abfrage- oder Angebotsmerkmale verwenden, um die Bestimmung durchzuführen. Wenn mehr als ein Prozessor 80 i zur Verfügung steht und die Anforderungen des Auftragsetiketts 61 erfüllen kann, kann die Arbeitsflußsteuerung 70 dem Auftrag einem bestimmten Prozessor 80 zuweisen. Alternativ dazu kann die Arbeitsflußsteuerung 70 dem Client 31 eine Liste von Prozessoren 80 i bereitstellen und es dem Client 31 ermöglichen, einen oder mehrere Prozessoren 80 i auszuwählen.
  • Bei einem Block Anforderung Auftragsetikett 110 sendet ein Prozessor 80, nachdem ihm ein Zugriff auf ein Auftragsetikett 61 gewährt wurde, unter Verwendung des Dienstebusses 41 eine Zugriffsanforderung an den Auftragsetikettdienst 60. Bei Block 115 verifiziert der Auftragsetikettdienst, ob der Prozessor 80 auf das Auftragsetikett 61 zugreifen kann. Der Zugriff kann beispielsweise durch ein Paßwort, ein Kennzeichen und ein Öffentlicher-Schlüssel/Privater- Schlüssel-Sicherheitssystem gesteuert werden. Beim Block 115 kann, falls dem Prozessor 80 der Zugriff verweigert wird, ein Fehlersignal an den Prozessor und/oder den Client 31 gesandt werden, Block 120.
  • Falls der Zugriff gewährt wird, liefert der Auftragsetikettdienst 60 beim Block 115 dem Prozessor 80 eine Kopie des Auftragsetikettverweises 72, der dem Auftragsetikett 61 entspricht, Block 125. Der Auftragsetikettverweis 72 ermöglicht es dem Prozessor 80, zu jeder Zeit auf das Auftragsetikett zuzugreifen. Dadurch, daß er zu jeder beliebigen Zeit auf das Auftragsetikett 61 zugreift, ist der Prozessor 80 in der Lage, eine aktualisierte Version des Auftragsetiketts 61 einzusehen, während durch andere Entitäten, einschließlich anderer Prozessoren 80, Änderungen an dem Auftragsetikett 61 vorgenommen werden.
  • Bei Block 130 stellt der Auftragsspeicher 50 einen Zugriff auf den Auftragsinhalt 51 bereit, auf den durch das Auftragsetikett 61 verwiesen wird. Es kann sein, daß lediglich derjenige Teil des Inhalts 51, der durch den Prozessor 80 eventuell benötigt wird, durch den Auftragsspeicher 50 bereitgestellt wird. Wenn der Prozessor 80 beispielsweise lediglich die Innenseiten der Broschüre erstellen soll, kann es sein, daß der Auftragsspeicher 50 keinen Zugriff auf den Inhalt gewährt, der benötigt wird, um den Broschüreneinband zu erzeugen. Nachdem er den Auftragsetikettverweis 72 und den Inhalt 51 empfangen hat, kann der Prozessor 80 eine oder mehrere Aufgaben erfüllen, indem er Eingangsressourcen verwendet, um eine vorläufige oder endgültige Ausgangsressource zu erzeugen. Mit dem Abschluß jedes Knotens in dem Knotenbaum 10 kann der Prozessor 80 dem Auftragsetikettdienst 60 eine Eingabe bereitstellen, um eine Modifizierung des Auftragsetiketts 61 zu ermöglichen, Block 135. Wenn der Prozessor 80 alle benötigten Prozesse abschließt, kann der Prozessor 80 dem Auftragsetikettdienst 60 zusammen mit etwaigen endgültigen Modifizierungen des Auftragsetiketts 61 einen endgültigen Statusbericht liefern, Block 140.
  • Bei Block 145 bestimmen der Auftragsetikettdienst 60 und die Arbeitsflußsteuerung 70, ob eine weitere Aufgabenzuweisung erforderlich sein kann. Wenn weitere Aufgaben erforderlich sind, stellt die Arbeitsflußsteuerung 70 sicher, daß die geeigneten Prozessoren 80 i zugewiesen werden, und die Operation kehrt zum Block 110 zurück. Wenn keine zusätzlichen Prozesse benötigt werden, geht die Operation zum Block 150 und endet.
  • Fig. 10 ist ein Flußdiagramm, das die Routine 105 zum Entwickeln eines Arbeitsflusses und Zuweisen von Prozessoren zu dem Arbeitsfluß veranschaulicht. Der Prozeß beginnt bei Block 200. Bei Block 205 empfängt das Dienstezentrum 40 eine Auftragsanforderung 32. Die Auftragsanforderung 32 kann Leistungserfordernisse, Ressourcen und andere Parameter spezifizieren und kann den Inhalt 51 oder eine Verknüpfung zu dem Inhalt 51 umfassen. Bei Block 210 definiert die Arbeitsflußsteuerung 70 einen Arbeitsfluß, um die in der Auftragsanforderung 32 festgelegten Aufgaben zu erfüllen. Der Arbeitsfluß kann durch einen Knotenbaum, beispielsweise den in Fig. 2 gezeigten Knotenbaum 10, dargestellt sein.
  • Bei Block 230 erstellt die Arbeitsflußsteuerung 70 unter Verwendung der durch die Auftragsanforderung 32 bereitgestellten Informationen, den bei Block 210 erzeugten Arbeitsfluß und einer geeigneten Auftragsetikettschablone ein Auftragsetikett 61. Das Auftragsetikett 61 wird daraufhin in dem Auftragsetikettdienst 60 gespeichert. In dem Auftragsspeicher 50 kann ein jeglicher Inhalt 51 gespeichert werden.
  • Die Arbeitsflußsteuerung 70 oder der Auftragsetikettdienst 60 können eine Auftragsetikettnachricht oder ein anderes Objekt erstellen und die Nachricht, Block 250, an dem Dienstezentrum 40 plazieren, so daß äußere Entitäten (z. B. die Prozessoren 80) ausreichende Informationen erlangen können, um einen Abschluß des Auftragsetiketts 61 oder eines Zweiges 66 des Auftragsetiketts 61 anzubieten. Bei einem nem alternativen Ausführungsbeispiel kann das Auftragsetikett 61 an dem Dienstezentrum 40 plaziert werden. Falls das Auftragsetikett 61 plaziert wird, kann das Auftragsetikett 61 einen Mechanismus zum Begrenzen des Zugriffs auf das Auftragsetikett oder zum Begrenzen des Zugriffs auf bestimmte Abschnitte des Auftragsetiketts 61 umfassen. Beispielsweise ist die Client-Erweiterung 64 eventuell für die Prozessoren 80 nicht zugreifbar.
  • Bei Block 270 empfängt das Dienstezentrum 40 Angebote von spezifischen Prozessoren 80, und bei Block 290 wertet das Dienstezentrum 40 die Angebote aus. Bei Block 295 bestimmt das Dienstezentrum 40, ob der Client 31, der die Auftragsanforderung 32 unterbreitet, das bzw. die als Gewinner hervorgehende(n) Angebote auszuwählen beabsichtigt, oder ob das Dienstezentrum 40 die Auswahl trifft. Wenn der Client die Auswahlen trifft, stellt das Dienstezentrum 40 bei Block 300 dem Client 31 die Angebotsinformationen bereit. Daraufhin empfängt das Dienstezentrum 40 bei Block 305 die Auswahlen von dem Client 31. Wenn das Dienstezentrum 40 die Auswahlen trifft, wählt das Dienstezentrum 40 bei Block 310 das bzw. die als Gewinner hervorgehende(n) Angebot(e) aus. Bei Block 315 benachrichtigt das Dienstezentrum die als Gewinner hervorgehenden Prozessoren. Das Dienstezentrum kann ferner die Angebotsinformationen mit dem entsprechenden Auftragsetikett 61 speichern. Bei Block 320 endet die Routine 105.
  • Fig. 11 ist ein Flußdiagramm, das die Unterroutine 210 zum Definieren eines Arbeitsflusses veranschaulicht. Die Unterroutine 210 startet bei Block 350. Bei Block 355 bestimmt die Arbeitsflußsteuerung 70, ob der Arbeitsfluß mehrere Zweige enthalten wird. Wenn der Arbeitsfluß mehrere Zweige enthalten wird, definiert die Arbeitsflußsteuerung 70 die Zweige, Block 360. Bei Block 365 wählt die Arbeitsflußsteuerung 70 einen Zweig aus, für den Ressourcen und Prozesse zu definieren sind. Bei Block 370 definiert die Arbeitsflußsteuerung 70 Eingangsressourcen für einen ersten Prozeß oder Knoten. Bei Block 375 definiert die Arbeitsflußsteuerung 70 die Aufgaben, die für den ersten Prozeß abzuschließen sind. Bei Block 380 bestimmt die Arbeitsflußsteuerung 70 die Ausgangsressourcen des ersten Prozesses. Bei Block 385 bestimmt die Arbeitsflußsteuerung 70, ob ein weiterer Prozeß für den Arbeitsfluß oder Zweig erforderlich ist. Wenn keine weiteren Prozesse erforderlich sind, bestimmt die Arbeitsflußsteuerung 70, ob ein weiterer Zweig definiert werden soll, Block 390. Falls ein weiterer Block definiert werden soll, wählt die Arbeitsflußsteuerung 70 einen weiteren Zweig aus, Block 365, und die Unterroutine 210 wird fortgesetzt. Wenn kein weiterer Zweig definiert werden soll, endet die Unterroutine, Block 395. Die Ergebnisse der Arbeitsflußdefinition können in das Auftragsetikett 61 aufgenommen werden (siehe Fig. 10, Block 230).
  • Fig. 12 ist ein Flußdiagramm, das die Unterroutine 250 des Plazierens einer Auftragsetikettmeldung oder eines Auftragsetiketts veranschaulicht. Die Unterroutine 250 startet bei Block 400. Bei Block 405 bestimmt die Arbeitsflußsteuerung 70, ob der dem Auftragsetikett 61 zugeordnete Arbeitsfluß mehrere Zweige umfaßt. Wenn der Arbeitsfluß nicht mehrere Zweige umfaßt, plaziert die Arbeitsflußsteuerung die Auftragsetikettmeldung, die den einzelnen Zweig auflistet, Block 410. Wenn der Arbeitsfluß mehrere Zweige umfaßt, plaziert die Arbeitsflußsteuerung 70 die Auftragsetikettmeldung bei mehreren Zweigen, Block 420. Dann endet die Unterroutine 250.
  • Fig. 13 ist ein Flußdiagramm, das die Unterroutine 290 zum Auswerten von Angeboten veranschaulicht. Die Unterroutine startet bei Block 440. Bei Block 445 wählt der Angebotsdienst 90 ein erstes Angebot zur Analyse aus. Bei Block 450 bestimmt der Angebotsdienst 90, ob der Client 31 etwaige Auswertungskriterien oder -erfordernisse bereitgestellt hat. Wenn der Client keine Auswertungserfordernisse bereitgestellt hat, vergleicht der Angebotsdienst 90 das ausgewählte Angebot mit einem Satz von standardmäßigen Mindestleistungserfordernissen, die Erfordernisse des Industriestandards sein können, Block 455. Bei Block 460 bestimmt der Angebotsdienst 90, ob das Angebot die Mindestleistungserfordernisse erfüllt. Wenn das Angebot die Mindestleistungserfordernisse nicht erfüllt, wird das Angebot zurückgewiesen, Block 475. Wenn das Angebot zurückgewiesen wird, bestimmt der Angebotsdienst 90, ob weitere Angebote unterbreitet wurden, Block 495. Wenn weitere Angebote unterbreitet wurden, kehrt der Angebotsprozessor 90 zu Block 445 zurück und wählt das nächste Angebot zur Auswertung aus.
  • Bei Block 450, falls der Client 31 Leistungserfordernisse bereitgestellt hat, vergleicht der Angebotsdienst 90 das ausgewählte Angebot mit den durch den Client bereitgestellten Leistungserfordernissen, Block 465. Bei Block 470 bestimmt der Angebotsdienst 90, ob das ausgewählte Angebot den Mindestkriterien der durch den Client bereitgestellten Leistungserfordernissen entspricht. Wenn die Mindestkriterien nicht erfüllt werden, weist der Angebotsdienst 90 das Angebot zurück, Block 475.
  • Bei Blöcken 470 und 460, falls die Mindestkriterien erfüllt werden, bestimmt der Angebotsdienst 90, ob der Client 31 einen Auswertungsalgorithmus bereitgestellt hat. Wenn der Client 31 keinen Auswertungsalgorithmus bereitgestellt hat, wendet der Angebotsdienst einen standardmäßigen Auswertungsalgorithmus an, der ein Algorithmus eines Industriestandards sein kann, Block 485. Wenn der Client einen Auswertungsalgorithmus bereitgestellt hat, wendet der Angebotsdienst 90 den durch den Client bereitgestellten Auswertungsalgorithmus an, Block 490. Der Angebotsdienst 90 kann daraufhin die Ergebnisse des Algorithmus bis zur Auswertung aller Angebote speichern.
  • Bei Block 495 bestimmt der Angebotsdienst 90, ob noch etwaige Angebote ausgewertet werden müssen. Wenn weitere Angebote verbleiben, kehrt die Unterroutine 290 zu Block 445 zurück, und der Angebotsdienst wählt das nächste Angebot zur Auswertung aus. Bei Block 495, falls keine weiteren Angebote zur Auswertung verbleiben, bringt der Angebotsdienst 90 die Angebote in eine Rangordnung, Block 500. Dann endet die Unterroutine 290, Block 505.
  • Fig. 14 ist ein Flußdiagramm, das die Routine 130 zum Bereitstellen eines Zugriffs auf ein Auftragsetikett 61 veranschaulicht. Die Routine 130 beginnt bei Block 510. Bei Block 515 empfängt der Auftragsetikettdienst 60 einen Auftragsetikettverweis 72 von einem Prozessor 80 und erlangt das entsprechende Auftragsetikett 61 wieder, Block 520.
  • Bei Block 525 vergleicht der Auftragsetikettdienst 60 das Prozessorkennzeichen mit Prozessoren, die in dem Auftragsetikett 61 oder Zweigen 66 des Auftragsetiketts 61 aufgelistet sind. Der Auftragsetikettdienst 60 bestimmt, ob die ausgewählten Zweige 66 gesperrt sind, Block 530. Wenn die ausgewählten Zweige 66 nicht gesperrt sind, kopiert der Auftragsetikettdienst 60 die ausgewählten Zweige 66 zu dem Prozessor 80, Block 535. Bei Block 550 bestimmt der Auftragsetikettdienst 60 daraufhin, ob die ausgewählten Zweige 66 gesperrt werden müssen. Wenn die ausgewählten Zweige nicht gesperrt werden müssen, endet die Routine 130, Block 560. Wenn die ausgewählten Zweige 66 gesperrt werden müssen, sperrt der Auftragsetikettdienst 60 die ausgewählten Zweige 66, Block 555. Dann endet die Routine 130, Block 560.
  • Bei Block 530, falls die ausgewählten Zweige 66 gesperrt sind, bestimmt der Auftragsetikettdienst 60, ob der Prozessor 80 beabsichtigt, Informationen in den ausgewählten Zweigen 66 zu modifizieren, Block 540. Falls der Prozessor 80 die ausgewählten Zweige 66 nicht modifiziert, kann der Auftragsetikettdienst 60 eine Fehlernachricht bereitstellen, Block 545. Falls die ausgewählten Zweige 66 modifiziert werden, kann der Auftragsetikettdienst 60 die ausgewählten Zweige 66 entsperren.
  • Fig. 15 ist ein Flußdiagramm eines Verfahrens zum Ermöglichen eines Zugriffs auf ein Auftragsetikett 61. Das Verfahren kann als Teil der in Fig. 9 gezeigten Routine 115 ausgeführt werden. Das Verfahren startet bei Block 600. Bei Block 605 empfängt der Authentifizierungsserver 94 Authentifizierungsinformationen von einem Prozessor 80 und erlangt ein Auftragsetikett 61 wieder, das einem Auftragsetikettverweis 72, den der Prozessor 80 besitzt, entspricht.
  • In diesem Stadium des Prozesses enthält das Auftragsetikett 61 (ausschließlich des Öffentlicher-Schlüssel- Signaturfeldes 67) zwei Informationsfelder, den Rahmen 62 und die Client-Erweiterung 64. Der Rahmen 62 enthält Informationen wie beispielsweise das Dienst-Kennzeichen, die Client-IP-Adresse, Ablaufdatum und -Zeit sowie Prozessorautorisierung, wie zuvor beschrieben wurde. Die Client- Erweiterung 64 enthält Informationen wie beispielsweise Kreditkartennummer und Postleitzahl, ebenfalls zuvor beschrieben. Die Informationen in dem Auftragsetikett 61 (ausschließlich des Öffentlicher-Schlüssel-Signaturfeldes 67) werden daraufhin beispielsweise unter Verwendung eines MD5-Protokolls optional Hash-codiert und mit einem Öffentlicher-Schlüssel-Verschlüsselungssystem verschlüsselt, Block 610, wobei eine Hash-Nummer erzeugt wird, Block 615.
  • Es können auch andere Hash-Codierungs- oder Verschlüsselungsmethoden verwendet werden. Die Hash-Nummer ist repräsentativ für die in dem Auftragsetikett 61 enthaltenen spezifischen Informationen. Die bei Block 615 erzeugte Hash- Nummer wird daraufhin unter Verwendung eines standardmäßigen Öffentlicher-Schlüssel-Verschlüsselungssystems verschlüsselt, Block 620. Ein Verschlüsseln der Hash-Nummer mit einem privaten Schlüssel verhindert, daß ein Benutzer ohne Kenntnis des öffentlichen Schlüssels die Auftragsinformationen modifiziert. Bei Block 625 werden das Auftragsetikett 61 und die verschlüsselte Hash-Nummer verkettet, um das abgeschlossene Auftragsetikett 61 zu erzeugen. Daher die Informationsfelder des abgeschlossenen Auftragsetiketts 61 : 1) der Rahmen 62, 2) die Client-Erweiterung 64 und 3) die Öffentlicher-Schlüssel-Signatur (verschlüsselte Hash- Nummer) 67. Daraufhin endet das Verfahren, Block 630.
  • Bei den veranschaulichten Ausführungsbeispielen können das Dienstezentrum 40 und seine Unterkomponenten, einschließlich der Arbeitsflußsteuerung 70 und des Auftragsetikettdienstes 60, beispielsweise als eine einzelne, einem bestimmten Zweck gewidmete integrierte Schaltung (z. B. eine ASIC), die einen Haupt- oder Zentralprozessorabschnitt für eine Gesamtsteuerung auf Systemebene aufweist, und als separate Schaltungen implementiert sein, die dafür reserviert sind, diverse unterschiedliche Berechnungen, Funktionen und andere Prozesse unter der Steuerung des Zentralprozessorabschnitts durchzuführen. Fachleuten wird einleuchten, daß das Dienstezentrum 40 ferner unter Verwendung einer Mehrzahl von separaten, zweckgebundenen oder programmierbaren integrierten oder anderen elektrischen Schaltungen oder Vorrichtungen implementiert sein kann (z. B. festverdrahteten elektronischen oder logischen Schaltungen wie beispielsweise Schaltungen mit Einzelbauelementen, oder programmierbaren logischen Vorrichtungen wie beispielsweise PLDs, PLAs oder PALs). Das Dienstezentrum 40 kann ferner unter Verwendung eines auf geeignete Weise programmierten Mehrzweckcomputers, z. B. eines Mikroprozessors, einer Mikrosteuerung oder einer anderen Prozessorvorrichtung (CPU oder MPU), entweder allein oder in Verbindung mit einem oder mehreren Daten- und Signalverarbeitungs- Peripheriegeräten (z. B. integrierte Schaltung) implementiert sein. Allgemein kann jegliche Vorrichtung oder Anordnung von Vorrichtungen, bei der eine Finit-Zustand- Maschine, die in der Lage ist, die in den Fig. 9 bis 15 gezeigten Flußdiagramme zu implementieren, verwendet werden kann, als das Dienstezentrum 40 oder seine Unterkomponenten verwendet werden.

Claims (22)

1. Vorrichtung, die einen sicheren Zugriff auf Ressourcen in einem verteilten Computernetz bereitstellt, das mit einem oder mehreren Prozessoren (80) gekoppelt ist, die in dem Computernetz plazierte Aufträge ausführen, wobei die Vorrichtung folgende Merkmale aufweist:
einen Auftragsetikettdienst (60), der in der Lage ist, ein Auftragsetikett (61) zu speichern, wobei das Auftragsetikett (61) einen Verweis auf einen Auftrag bereitstellt, der in dem Computernetz auszuführen ist, und wobei der Auftrag eine oder mehrere Ressourcen umfaßt und wobei ein Prozessor (80) auf das Auftragsetikett (61) zugreift, um den Auftrag auszuführen;
einen Authentifizierungsmechanismus (94), der in der Lage ist, eine Identität eines Prozessors (80), der versucht, auf das Auftragsetikett (61) zuzugreifen, zu verifizieren; und
einen Autorisierungsmechanismus (94), der in der Lage ist, die Identität von dem Authentifizierungsmechanismus zu empfangen, und der in der Lage ist, eine Autorisierung für den Prozessor (80) bereitzustellen, auf das Auftragsetikett (61) zuzugreifen, wobei der Prozessor (80), wenn der Prozessor (80) auf das Auftragsetikett (61) zugreift, auf die eine oder mehreren Ressourcen zugreift.
2. Vorrichtung gemäß Anspruch 1, bei der das Auftragsetikett (61) eine Prozessorautorisierungsliste aufweist, die Prozessoren (80) angibt, die autorisiert sind, auf das Auftragsetikett (61) zuzugreifen, und bei der der Autorisierungsmechanismus ein Kennzeichen des Prozessors (80) mit der Prozessorautorisierungsliste vergleicht, um zu bestimmen, ob der Prozessor (80) für einen Zugriff auf das Auftragsetikett (61) autorisiert ist.
3. Vorrichtung gemäß Anspruch 1 oder 2, bei der der Authentifizierungsmechanismus einen mit dem Auftragsetikettdienst (60) gekoppelten Authentifizierungsserver (94) aufweist.
4. Vorrichtung gemäß einem der Ansprüche 1 bis 3, bei der der Autorisierungsmechanismus einen mit dem Auftragsetikettdienst (60) gekoppelten Autorisierungsserver (92) aufweist.
5. Vorrichtung gemäß einem der Ansprüche 1 bis 4, bei der der Authentifizierungsmechanismus (94) ein Authentifizierungsprogramm aufweist und der Autorisierungsmechanismus (92) ein Autorisierungsprogramm aufweist und bei der das Authentifizierungsprogramm und das Autorisierungsprogramm in dem Auftragsetikett (61) installiert sind.
6. Vorrichtung gemäß einem der Ansprüche 1 bis 5, bei der der Autorisierungsmechanismus (92) einen Paßwortmechanismus aufweist, wobei der Prozessor (80) dem Autorisierungsmechanismus ein Paßwort bereitstellt.
7. Vorrichtung gemäß einem der Ansprüche 1 bis 6, bei der der Autorisierungsmechanismus eine Öffentlicher- Schlüssel-/Privater-Schlüssel-Infrastruktur aufweist.
8. Vorrichtung gemäß einem der Ansprüche 1 bis 7, bei der das Auftragsetikett (61) ein Signatursegment aufweist, wobei das Auftragsetikett (61) mit einer Nachrichtenauszugsignatur signiert ist.
9. Vorrichtung gemäß einem der Ansprüche 1 bis 8, bei der das Auftragsetikett (61) einen oder mehrere Zweige (66) aufweist, bei der der Prozessor (80) auf einen des einen oder der mehreren Zweige (66) zugreift und bei der Autorisierungsmechanismus einen Zugriff auf den Zweig (66) steuert.
10. Verfahren zum Bereitstellen eines sicheren Zugriffs auf Ressourcen in einem verteilten Computernetz, wobei das Computernetz mit einem oder mehreren Prozessoren (80) gekoppelt ist, die Aufträge ausführen, die in dem Computernetz plaziert sind, wobei das Verfahren folgende Schritte aufweist:
Speichern eines Auftragsetiketts (61), das einen durch einen Prozessor (80) auszuführenden Auftrag definiert, wobei der Auftrag eine oder mehrere Ressourcen umfaßt;
Empfangen (605) einer Zugriffsanforderung von dem Prozessor (80);
Authentifizieren (610, 615, 620)einer Identität des Prozessors (80); und
Autorisieren (625) eines Zugriffs durch den Prozessor (80) auf der Basis der authentifizierten Identität.
11. Verfahren gemäß Anspruch 10, bei dem der Authentifizierungsschritt folgende Schritte umfaßt:
Empfangen (605) eines Paßworts von dem Prozessor (80); und
Verifizieren des Paßworts.
12. Verfahren gemäß Anspruch 10 oder 11, bei dem der Autorisierungsschritt den Schritt eines Vergleichens der authentifizierten Identität des Prozessors (80) mit einer Liste autorisierter Prozessoren (80) umfaßt.
13. Verfahren gemäß Anspruch 12, das ferner den Schritt eines Speicherns der Liste von autorisierten Prozessoren (80) mit dem Auftragsetikett (61) umfaßt.
14. Verfahren gemäß einem der Ansprüche 10 bis 13, bei dem der Auftragsetikettdienst (60) ein Programmieren zum Durchführen des Authentifizierungsschritts und des Autorisierungsschritts aufweist.
15. Verfahren gemäß einem der Ansprüche 10 bis 14, bei dem ein mit dem Computernetz gekoppeltes Auftragsetikettdienstezentrum die Authentifizierungs- und die Autorisierungsschritte durchführt.
16. Verfahren gemäß einem der Ansprüche 10 bis 15, das ferner folgende Schritte aufweist:
Versehen des Auftragsetiketts (61) mit einem Signatursegment; und
Signieren des Auftragsetiketts (61) mit einer Nachrichtenauszugsignatur.
17. Verfahren gemäß einem der Ansprüche 10 bis 16, das ferner folgende Schritte aufweist:
Definieren des Auftrags mit einer Mehrzahl von Zweigen (66);
Bereitstellen von Informationen über das Auftragsetikett (61) für jeden der Mehrzahl von Zweigen (66); und
Steuern eines Zugriffs durch den Prozessor (80) auf einen oder mehrere der Mehrzahl von Zweigen (66).
18. Auftragsetikett (61), das einen sicheren Zugriff auf Ressourcen in einer vernetzten Umgebung bereitstellt,
wobei das Auftragsetikett (61) folgende Merkmale aufweist:
einen Auftragsetikettrahmen (62), der Informationen umfaßt, die sich auf Aufgaben beziehen, die unter der Steuerung des Auftragsetiketts (61) durchzuführen sind, wobei der Rahmen (62) eine Knotenbaumstruktur mit einer Mehrzahl von Knoten aufweist und wobei jeder Knoten der Mehrzahl von Knoten eine Liste eines oder mehrerer Prozessoren (80), die für einen Zugriff auf den Knoten autorisiert sind, umfaßt; und
einen Signaturabschnitt, der ein Authentifizierungs- und Autorisierungs-Steuermodul für das Auftragsetikett (61) bereitstellt, wobei ein Prozessor (80), der auf einen Knoten zugreift, dem Steuermodul ein Kennzeichen bereitstellt, wobei das Steuermodul das Kennzeichen mit der Liste eines oder mehrerer Prozessoren (80) für den Knoten vergleicht.
19. Auftragsetikett (61) gemäß Anspruch 18, das in einem Auftragsetikettdienst (60) gespeichert ist, der eine Position in der Umgebung aufweist.
20. Auftragsetikett (61) gemäß Anspruch 19, bei dem die Umgebung das Internet und bei dem die Position eine Website ist.
21. Programmspeichervorrichtung, die durch einen Computer lesbar ist und ein Programm von Anweisungen greifbar verkörpert, die durch den Computer auszuführen sind, um Verfahrensschritte durchzuführen, um einen Zugriff auf Aufträge, die in einem Computernetz plaziert sind, zu steuern, wobei die Verfahrensschritte folgende Schritte aufweisen:
Speichern eines Auftragsetiketts (61), das einen durch einen Prozessor (80) auszuführenden Auftrag definiert,
wobei der Auftrag eine oder mehrere Ressourcen umfaßt;
Empfangen einer Zugriffsanforderung von dem Prozessor (80)
Authentifizieren einer Identität des Prozessors (80); und
Autorisieren eines Zugriffs durch den Prozessor (80) auf der Basis der authentifizierten Identität.
22. Programmspeichergerät gemäß Anspruch 21, bei dem die Verfahrensschritte ferner folgende Schritte aufweisen:
Empfangen eines Paßworts von dem Prozessor (80);
Verifizieren des Paßworts;
Vergleichen der authentifizierten Identität des Prozessors (80) mit einer Liste von autorisierten Prozessoren (80); und
Speichern der Liste von autorisierten Prozessoren (80) mit dem Auftragsetikett (61).
DE10224743A 2001-06-05 2002-06-04 Verwendung von Auftragsetiketten, um einen Ressourcenzugriff zu sichern Ceased DE10224743A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/873,196 US7073174B2 (en) 2001-06-05 2001-06-05 Use of job tickets to secure resource access

Publications (1)

Publication Number Publication Date
DE10224743A1 true DE10224743A1 (de) 2003-01-02

Family

ID=25361153

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10224743A Ceased DE10224743A1 (de) 2001-06-05 2002-06-04 Verwendung von Auftragsetiketten, um einen Ressourcenzugriff zu sichern

Country Status (3)

Country Link
US (1) US7073174B2 (de)
JP (1) JP2003122540A (de)
DE (1) DE10224743A1 (de)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985150B2 (en) * 2003-03-31 2006-01-10 Sun Microsystems, Inc. Accelerator control unit configured to manage multiple hardware contexts
JP3615749B2 (ja) * 2003-04-25 2005-02-02 三菱電機インフォメーションシステムズ株式会社 印刷サービスシステムおよび印刷サービスプログラム
US20050111023A1 (en) * 2003-11-25 2005-05-26 Simpson Shell S. Systems and methods for controlling device printing modes
US20050219614A1 (en) * 2004-04-02 2005-10-06 Garg Man M Scalable hierarchical-states based job management engine with resource balancing and services monitoring
US20050254100A1 (en) * 2004-05-17 2005-11-17 Venali, Inc. Ticket exchange for combating fax spam
JP2005352697A (ja) * 2004-06-09 2005-12-22 Canon Inc コンピュータシステム、及び該システムにおけるジョブの割り当て方法
DE102004047327A1 (de) * 2004-09-29 2006-04-06 OCé PRINTING SYSTEMS GMBH Verfahren und System zum automatischen Bearbeiten eines Jobtickets für einen Druckprozess
WO2006128925A1 (es) * 2005-05-31 2006-12-07 Imbert Management Consulting Solutions Expansor de computación
JP4618032B2 (ja) * 2005-07-20 2011-01-26 カシオ計算機株式会社 印刷制御装置及びプログラム
US20070067633A1 (en) * 2005-09-21 2007-03-22 Pitney Bowes Incorporated Method for securely managing an inventory of secure coprocessors in a distributed system
US20230319159A1 (en) * 2005-10-31 2023-10-05 Treber Rebert Queue processor for document servers
US20070177195A1 (en) * 2005-10-31 2007-08-02 Treber Rebert Queue processor for document servers
US7493249B2 (en) * 2006-06-23 2009-02-17 International Business Machines Corporation Method and system for dynamic performance modeling of computer application services
US20090094539A1 (en) * 2007-08-29 2009-04-09 Yao-Tian Wang Controlling a computer peripheral device using a universal driver and device-generated user interface information
US8214548B2 (en) * 2007-08-29 2012-07-03 Ricoh Company, Ltd. Capability-based control device driver of a computer peripheral device
US8589866B2 (en) * 2007-08-29 2013-11-19 Ricoh Company, Ltd. Automatically generating capability-based computer peripheral device drivers
US20090190150A1 (en) * 2008-01-24 2009-07-30 Selvaraj Senthil K On-Demand Print Driver
US8418222B2 (en) * 2008-03-05 2013-04-09 Microsoft Corporation Flexible scalable application authorization for cloud computing environments
US8196175B2 (en) * 2008-03-05 2012-06-05 Microsoft Corporation Self-describing authorization policy for accessing cloud-based resources
US7600253B1 (en) * 2008-08-21 2009-10-06 International Business Machines Corporation Entity correlation service
US8520225B2 (en) * 2009-03-06 2013-08-27 Ricoh Company, Ltd. Print driver localization support from printing device to support multiple user profiles
US8773687B2 (en) * 2009-03-06 2014-07-08 Ricoh Company, Ltd. Driverless architecture for printing systems
US8526020B2 (en) * 2009-03-06 2013-09-03 Ricoh Company, Ltd. Paper size support for a print system
US8413153B2 (en) * 2009-06-12 2013-04-02 Freescale Semiconductor Inc. Methods and systems for sharing common job information
US9311612B2 (en) * 2010-12-22 2016-04-12 Sap Se System and method for improved service oriented architecture
US8982384B2 (en) * 2011-02-18 2015-03-17 Xerox Corporation Methods and systems for brokering printing device capacity
EP2498488A1 (de) 2011-03-09 2012-09-12 Thomson Licensing Verfahren und System zur Verarbeitung von digitalem Inhalt gemäß des Arbeitsablaufs
US9836711B2 (en) 2012-05-17 2017-12-05 Hitachi, Ltd. Job execution system, job execution program, and job execution method
US9286118B2 (en) 2012-06-15 2016-03-15 Freescale Semiconductor, Inc. System and method for improved job processing to reduce contention for shared resources
US9104478B2 (en) 2012-06-15 2015-08-11 Freescale Semiconductor, Inc. System and method for improved job processing of a number of jobs belonging to communication streams within a data processor
US9317323B2 (en) * 2012-12-26 2016-04-19 Microsoft Technology Licensing, Llc Dynamic execution log in a distributed system
US9632977B2 (en) 2013-03-13 2017-04-25 Nxp Usa, Inc. System and method for ordering packet transfers in a data processor
US9665718B2 (en) 2014-03-14 2017-05-30 International Business Machines Corporation Correlating a task with commands to perform a change ticket in an IT system
US20150324589A1 (en) 2014-05-09 2015-11-12 General Electric Company System and method for controlled device access
US20190130305A1 (en) * 2017-10-27 2019-05-02 Intuit Inc. Methods, systems, and computer program product for implementing an intelligent system with dynamic configurability
CN111209084B (zh) * 2020-01-12 2022-11-15 苏州浪潮智能科技有限公司 一种faas分布式计算方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2068102C (en) * 1991-08-29 1996-10-01 Steven V. Rosekrans Dialog filtering
US6173295B1 (en) * 1997-09-15 2001-01-09 International Business Machines Corporation Method, system, and program for creating a job ticket inlcuding information on components and print attributes of a print job
US6189103B1 (en) * 1998-07-21 2001-02-13 Novell, Inc. Authority delegation with secure operating system queues
EP1222526A1 (de) * 1999-10-19 2002-07-17 Electronics for Imaging, Inc. Automatische drucklastausgleich

Also Published As

Publication number Publication date
US20020184294A1 (en) 2002-12-05
JP2003122540A (ja) 2003-04-25
US7073174B2 (en) 2006-07-04

Similar Documents

Publication Publication Date Title
DE10224743A1 (de) Verwendung von Auftragsetiketten, um einen Ressourcenzugriff zu sichern
DE10224795A1 (de) Zweigsperren von Auftragsetiketten, um eine Zugriffskonkurrenz zu steuern
DE10224744B4 (de) Verwendung eines Auftragsetikettdienstes, um Angebotsinformationen zu speichern
DE60130543T2 (de) Gesichertes netzwerkbetriebsmittelzugriffssystem
DE60314871T2 (de) Verfahren zur authentifizierung eines anwenders bei einem zugang zu einem dienst eines diensteanbieters
US7299244B2 (en) System and method for dynamic sequencing of a requirements-based workflow
DE60015423T2 (de) Verfahren und Vorrichtung zur Objektwiedergabe in einem Netzwerk
DE60320486T2 (de) Systeme und Verfahren zur Lieferung von Anwendungen und zur Konfigurationsverwaltung für mobile Geräte
DE102012220857B4 (de) System und Steuerverfahren
DE60212920T2 (de) Verfahren und system zur verwaltung von digitalen abonnementrechten
DE102019131123A1 (de) Technologien zur transparenten function-as-a-service-arbitrierung für edge-systeme
US20020194245A1 (en) Job ticket service
DE60319056T2 (de) Methode und Gerät zur Bereitstellung von Informationen und Diensten bei Verhinderung des Missbrauchs derselben
DE102004006951A1 (de) Aktualisieren einer Druckserversoftware basierend auf Aktualisierungs-E-Mails
EP1628184A1 (de) Verfahren und Computersystem zur Durchführung eines netzwerkgestützten Geschäftsprozesses
DE10197248T5 (de) System und Verfahren für enfernte Dokumentrückgewinnung
DE60212969T3 (de) Verfahren und vorrichtung zum verfolgen des status eines betriebsmittels in einem system zur verwaltung der benutzung der betriebsmittel
DE112014007224T5 (de) Drucksystem, Verfahren und Programm
DE102011077512A1 (de) Verfahren zur sicheren Verarbeitung von in einem elektronischen Safe gespeicherten Daten
CA2351869C (en) Electronic document classification system
US20020184240A1 (en) Use of a job ticket as a generic XML database
DE10211887A1 (de) Systeme und Verfahren für die Verteilung von elektronischen Dokumenten
DE202020005753U1 (de) Verwalten von Benutzeridentitäten in einem verwalteten Multi-Tenant-Dienst
DE10118064A1 (de) Erweiterung Browser-Bezogener Internetseiteninhaltskennzeichen und Kennwortüberprüfung auf Kommunikationsprotokolle
DE10205725A1 (de) System und Verfahren für eine sichere Übertragung von Daten an Klienten

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: G06F 312

8125 Change of the main classification

Ipc: G06F 15163

8127 New person/name/address of the applicant

Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE

R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final

Effective date: 20140527