-
GEBIET
-
Ausführungsformen der Erfindung beziehen sich auf das Überwachen von Inhaltsablagen, das Identifizieren von falsch klassifizierten Objekten in den Inhaltsablagen und das Vorschlagen einer Neuklassifizierung der Inhaltsobjekte.
-
HINTERGRUND
-
Um dem exponentiellen Wachstum von Daten zu begegnen, nutzen Unternehmen Inhaltsablagen für die Verwaltung von Unternehmensinhalten (Enterprise Content Management, ECM), um diejenigen Daten zu archivieren, die werthaltig sind und die Kosten ihres laufenden Geschäfts senken. So werden z. B. E-Mails in den ECM-Inhaltsablagen archiviert, um den Bedarf an Festplattenspeicher von den E-Mail-Servern auf die ECM-Inhaltsablagen zu verlagern. Im Rahmen dieses Archivierungsvorgangs werden E-Mails von hohem Geschäftswert identifiziert und geeignete Aufzeichnungsrichtlinien angewendet (so wird z. B. eine E-Mail von einem CEO zu einer Firmenübernahme mit einer Aufbewahrungsrichtlinie von zehn Jahren markiert). Neben E-Mails werden ECM-Inhaltsablagen auch genutzt, um Daten aus der Zusammenarbeit dienenden Dateifreigaben im Unternehmen oder von verschiedenen Servern zu speichern und auf solche Daten zuzugreifen. Aus der Nutzung von ECM-Inhaltsablagen zum Verwalten von Daten aus E-Mail-Servern, anderen Servern, Dateifreigaben, Fallverwaltungsanwendungen usw. entsteht ein Problem, das darin besteht, wie sich die Daten für eine schnelle und einfache Erkennung organisieren lassen. Das Problem vergrößert sich noch, da die Daten aus den oben erwähnten isolierten Datenspeichern häufig unstrukturiert sind (z. B. Textdokumente oder -dateien, Präsentationen, Arbeitsblätter, Videos, Audiodateien usw.) und nur über sehr grundlegende spezifische Metadaten verfügen (z. B. Verfasser, Erstellungszeitpunkt, Speicherort, Dateiname, Größe).
-
ECM-Inhaltsablagen sind abhängig von Metadaten, darunter Kategorisierungs- oder Taxonomiemetadaten, um eine Organisationsstruktur für Inhalt wie beispielsweise Dokumente bereitzustellen und die Dokumente für den menschlichen Nutzer einfach auffindbar zu machen, sei es durch eine Suche nach den Metadaten oder durch ein Durchsuchen eines Taxonomie- oder Kategoriebaums. Die Kategorisierungs- und Taxonomiemetadaten lassen sich als Daten beschreiben, die Inhalt in einer Kategorie oder Klassifizierung platzieren.
-
Diese Metadaten werden normalerweise dann einem Dokument zugewiesen oder „beigefügt”, wenn das Dokument eingestellt wird (d. h. von dem ECM-System verarbeitet wird), wenn es in einer Inhaltsablage platziert wird oder wenn das Dokument von einem logischen Speicherort (z. B. einem Ordner) in einer Inhaltsablage an einen anderen logischen Speicherort verschoben wird. Ein Inhaltselement kann sich in mehreren Ordnern befinden, wobei das Inhaltselement tatsächlich nur ein Mal in der Inhaltsablage gespeichert ist und der Ordner aus Metadaten besteht, die dem Inhaltselement zugehörig sind. Benutzer können sich auf diese Weise jedoch durch die Ablage bewegen und Dinge mittels Durchsuchen ausfindig machen sowie Inhaltselemente organisieren.
-
Beim Zuweisen oder Beifügen der Metadaten können verschiedene Methoden zum Einsatz kommen. Manche Metadaten können auf der Grundlage von Dokumenteneigenschaften automatisch aus dem Dokument selbst erhalten werden. Andere Metadaten können auf der Grundlage des Inhalts des Dokuments von Hand (durch Benutzer) oder automatisch (durch Systeme, die Text analysieren) erhalten werden. Wieder andere Metadaten können auf der Grundlage von externen Faktoren entweder automatisch oder von Hand zugewiesen werden.
-
Wenn Metadaten von Hand zugewiesen werden, können Fehler auftreten, die zu falsch abgelegten oder kategorisierten Dokumenten führen. Diese Fehler und Auslassungen können infolge verschiedener Ursachen auftreten, z. B.: Benutzer, welche die zusätzliche Arbeit eines Zuweisens von Metadaten scheuen, Benutzer, die keine konsistenten Ermessensentscheidungen treffen, oder auch eine fehlerhafte Schulung von Benutzern.
-
Da sich alle Systeme im Laufe der Zeit ändern, könnten Dokumente, die ursprünglich einer bestimmten Kategorie zugewiesen wurden, zu einem späteren Zeitpunkt aufgrund von Hinzufügungen zu dem System, von Änderungen und einer allgemeinen „Abweichung” des Datenmodells, das für die Metadatendarstellung verwendet wird, in einer anderen Kategorie womöglich besser untergebracht sein.
-
Unternehmen können eine Reihe von Methoden verwenden, um eine Einhaltung von Metadatenstandards und eine geeignete Zuweisung von Metadaten sicherzustellen. Für eine Umsetzung auf Anwendungsebene erfordert die Anwendung eine Auswahl, Zuweisung oder Eingabe von Metadaten für ein Dokument, bevor das Dokument an eine Datenablage übergeben werden kann, wobei der die Metadaten auswählende Benutzer allerdings jeden beliebigen gültigen Wert bzw. Satz von Werten auswählen kann, was unter Umständen nicht korrekt ist. Für eine Umsetzung auf Arbeitsablaufebene wird ein Arbeitsablauf aufgerufen, um eine „Prüfung” oder „Qualitätskontrolle” einer Metadatenzuweisung vorzunehmen, wobei dies von der korrekten Zuweisung der Metadaten durch die Benutzer abhängig ist. Bei einer automatischen Zuweisung auf der Grundlage von Technologie sind keine Benutzer beteiligt, um die Dokumente zu kategorisieren oder die Metadaten zuzuweisen, wobei jedoch selbst dann eine Abweichung auftreten kann.
-
ZUSAMMENFASSUNG
-
Bereitgestellt werden ein computerrealisiertes Verfahren, Computerprogrammprodukt und System zum Organisieren von Inhaltsobjekten in einem System für die Verwaltung von Unternehmensinhalten. Die Inhaltsobjekte werden überprüft, um ein oder mehrere Inhaltsobjekte zu identifizieren, die neu klassifiziert werden müssen. Ein Inhaltsobjekt wird ausgewählt. Eine erste dem Inhaltsobjekt zugehörige Kategorie wird erhalten. Eine Liste von in Frage kommenden Kategorien und Relevanzwerten für jede der in Frage kommenden Kategorien wird erhalten. Es wird ermittelt, ob die erste Kategorie einer in Frage kommenden Kategorie in der Liste von in Frage kommenden Kategorien entspricht. Als Reaktion auf das Ermitteln, dass die erste Kategorie einer in Frage kommenden Kategorie entspricht, wird ermittelt, ob ein Relevanzwert, welcher der ersten Kategorie zugehörig ist, einen Schwellenwert überschreitet. Als Reaktion auf das Ermitteln, dass der Relevanzwert den Schwellenwert überschreitet, wird das Inhaltsobjekt als korrekt kategorisiert identifiziert. Als Reaktion auf das Ermitteln, dass die erste Kategorie der in Frage kommenden Kategorie nicht entspricht oder dass der Relevanzwert den Schwellenwert nicht überschreitet, wird das Inhaltsobjekt als falsch kategorisiert identifiziert, und die in Frage kommenden Kategorien, denen Relevanzwerte zugehörig sind, welche den Schwellenwert überschreiten, werden in einem Prüfbericht bereitgestellt.
-
KURZBESCHREIBUNG DER VERSCHIEDENEN ANSICHTEN DER ZEICHNUNGEN
-
In den Zeichnungen stehen gleichlautende Bezugszeichen durchgehend für identische Teile.
-
1 veranschaulicht in einem Blockschaubild eine Datenverarbeitungsumgebung gemäß bestimmten Ausführungsformen.
-
2 veranschaulicht in einem Ablaufplan Operationen zum Organisieren von Inhaltsobjekten in einem ECM-System gemäß bestimmten Ausführungsformen.
-
3 veranschaulicht Operationen, die durch das Prüfsystem 120 gemäß bestimmten Ausführungsformen durchgeführt werden. 3 besteht aus den 3A, 3B, 3C und 3D.
-
Die 4A, 4B und 4C veranschaulichen in Blockschaubildern ein Beispiel einer Klassifizierung gemäß bestimmten Ausführungsformen.
-
5 veranschaulicht in einem Blockschaubild eine Computerarchitektur, die gemäß bestimmten Ausführungsformen verwendet werden kann.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung wurden zum Zwecke der Veranschaulichung vorgelegt und sind nicht als vollständig oder auf die offenbarten Ausführungsformen beschränkt zu verstehen. Der Fachmann weiß, dass zahlreiche Änderungen und Abwandlungen möglich sind, ohne vom Umfang der beschriebenen Ausführungsformen abzuweichen. Die hier verwendete Begrifflichkeit wurde gewählt, um die Grundsätze der Ausführungsformen, die praktische Anwendung oder technische Verbesserung gegenüber marktgängigen Technologien bestmöglich zu erläutern bzw. anderen Fachleuten das Verständnis der hier offenbarten Ausführungsformen zu ermöglichen.
-
1 veranschaulicht in einem Blockschaubild eine Datenverarbeitungsumgebung gemäß bestimmten Ausführungsformen. Ein Server-Computer 100 ist mit einem ECM-System 110 verbunden. Das ECM-System 110 enthält ein Prüfsystem 120 und ein Klassifizierungssystem 130. Der Server-Computer 100 speichert darüber hinaus eine oder mehrere Taxonomien 140, eine oder mehrere Wissensdatenbanken 142 und ihre Versionen sowie einen oder mehrere Arbeitsabläufe. Bei bestimmten Ausführungsformen können die Funktionalität des Prüfsystems 120 und das Klassifizierungssystem 130 in einem einzigen System zusammengefasst sein.
-
Der Server-Computer 100 ist mit einem oder mehreren Inhaltsablagen 150a...150n verbunden. Jede der Inhaltsablagen 150a...150n speichert Inhaltsobjekte 160a...160n und Metadaten 170a...170n. Die Inhaltsobjekte 160a...160n können z. B. Textdokumente, Textdateien, Präsentationen, Arbeitsblätter, Videos, Audiodateien, Bilder, PDF(Portable Data Format)-Dokumente sowie beliebige andere Objekte beinhalten, denen Text usw. zugehörig ist. Das heißt, die Inhaltsobjekte 160a...160n stehen für beliebige Arten von Daten, die durch das ECM-System 110 verwaltet werden können. Die Metadaten 170a...170n können als den Inhaltsobjekten 160a...160n beigefügt betrachtet werden. Die Metadaten 170a...170n können Verfasser, Titel, Betreff, Erstellungszeitpunkt, Speicherort, Dateiname, Größe usw. beinhalten.
-
Das Prüfsystem 120 und das Klassifizierungssystem 130 wirken zusammen, damit die Inhaltsobjekte 160a...160n, die gespeichert und verwaltet werden sowie auf die zugegriffen wird, so organisiert werden können, dass eine schnelle und einfache Erkennung möglich ist. Das Prüfsystem 120 stellt zudem einen Prüfmechanismus zum Überwachen der Inhaltsablagen 150a...150n bereit, um falsch klassifizierte Inhaltsobjekte 160a...160n zu identifizieren und eine Neuklassifizierung und Neuorganisation vorzuschlagen.
-
Im Besondern verwendet das Prüfsystem 120 statistische und auf Regeln beruhende Klassifikatoren, um die Inhaltsablagen 150a...150n des ECM-System 110 zu überprüfen.
-
Ein statistischer Klassifikator verwendet Statistiken (z. B. Worthäufigkeiten innerhalb eines Inhaltsobjekts 160a...160n verglichen mit der Häufigkeit, mit der dasselbe Wort in dem gesamten Korpus vorkommt), um ein statistisches Profil für ein Inhaltsobjekt 160a...160n zu erzeugen, woraufhin der statistische Klassifikator anhand dieser Statistiken das Inhaltsobjekt 160a...160n einer Kategorie zuordnet. Üblicherweise kann ein statistischer Klassifikator trainiert werden, indem er für jede Kategorie Beispiel-Inhaltsobjekte 160a...160n bereitstellt und bestimmt, welche Wörter in den Inhaltsobjekten 160a...160n das Inhaltsobjekt 160a...160n zu einem Bestandteil der Kategorie machen, welche Wörter das Inhaltsobjekt 160a...160n nicht zu einem Bestandteil der Kategorie machen, usw. Danach erzeugt der statistische Klassifikator für jede Kategorie ein statistisches Profil. Im Anschluss daran werden neue Inhaltsobjekte 160a...160n mit den statistischen Methoden verarbeitet, um ein Profil des Inhaltsobjekts 160a...160n zu erzeugen, und das Profil des Inhaltsobjekts 160a...160n wird mit den Kategorieprofilen verglichen, um zu bestimmen, welche Kategorien die beste Übereinstimmung für das Inhaltsobjekt 160a...160n ergeben. Damit kann der statistische Klassifikator für jede Kategorie und jedes Inhaltsobjekt 160a...106n einen (auch als Konfidenzwert bezeichneten) Relevanzwert berechnen. Abhängig von der Anwendung kann die Kategorie mit dem höchsten erzielten Wert ausgewählt und dem Inhaltsobjekt 160a...160n zugewiesen werden, können mehrere Kategorie mit hohen Werten zugewiesen werden oder kann – in manchen Fällen – keine Kategorie zugewiesen werden, weil der erzielte Wert unter einem vorbestimmten Schwellenwert liegt.
-
Ein auf Regeln beruhender Klassifikator verwendet andererseits Regeln (z. B. „Wenn der Titel „foo” und der Text „bar” enthält, dann ordne dieses Inhaltsobjekt 160a...160n der Kategorie „foobar” zu), um Inhaltsobjekte 160a...160n in Kategorien einzugruppieren.
-
Das Prüfsystem 120 ermittelt, welche Inhaltsobjekte 160a...160n falsch abgelegt, klassifiziert oder kategorisiert sind, und schlägt Aktionen vor, mit denen Fehler, Auslassungen und Anomalien korrigiert werden können. So können z. B. folgende Aktionen vorgeschlagen werden: Verbessern der Metadaten der Inhaltsobjekte, Zuweisen einer verwandten Klasse für das Inhaltsobjekt 160a...160n zu dem Inhaltsobjekt 160a...160n oder auch Verschieben des Inhaltsobjekts 160a...160n in einen zugehörigen Ordner. Durch regelmäßig stattfindende, automatisierte Prüfungen stellt das Prüfsystem 120 sicher, dass die Inhaltsobjekte 160a...160n den korrekten Kategorien zugeordnet werden und damit einfacher aufzufinden sind.
-
2 veranschaulicht in einem Ablaufplan Operationen zum Organisieren der Inhaltsobjekte 160a...160n in einem ECM-System gemäß bestimmten Ausführungsformen. Die Steuerung beginnt bei Block 200, indem das Klassifizierungssystem 130 eine Taxonomie 140 erhält oder erzeugt. Die Taxonomie 140 lässt sich als eine Liste von Kategorien beschreiben. Bei bestimmten Ausführungsformen wird die Taxonomie 140 von Benutzern erzeugt (und durch das Klassifizierungssystem 130 erhalten) oder durch das Klassifizierungssystem 130 mittels Benutzereingaben erzeugt.
-
In Block 202 erzeugt das Klassifizierungssystem 130 eine Wissensdatenbank 142 für eine statistische Analyse. Die Wissensdatenbank 142 lässt sich als statistische und anderweitige Daten beschreiben, die der Taxonomie 140 zugehörig sind und dem statistischen Klassifikator eine Klassifizierung ermöglichen.
-
Die Taxonomie 140 dient dazu, den Kontext des Inhaltsobjekts 160a...160n festzustellen und einen Relevanzwert bereitzustellen. Ein Relevanzwert lässt sich als ein Maß dafür beschreiben, wie deutlich ein Inhaltsobjekt 160a...160n für eine Kategorie in Frage kommt. Wenn z. B. ein Inhaltsobjekt 160a...160n einen Wert von 77 in Kategorie A und von 65 in Kategorie B erzielt, wird das Inhaltsobjekt 160a...160n mit größerer Wahrscheinlichkeit der Kategorie A zugeordnet.
-
Bei einem weiteren Beispiel führt die statistische Analyse eines Inhaltsobjekts 160a...160n zu einer Liste von Kategorien (Personalwesen/Finanzen/Ingenieurwesen) mit einem Relevanzwert für jede Kategorie und jedes Inhaltsobjekt 160a...160n, der dafür steht, wie eng der Zusammenhang zwischen der Kategorie und dem betreffenden Inhaltsobjekt 160a...160n ist. Die statistische Analyse identifiziert die am häufigsten verwendeten Elemente (z. B. Wörter) in dem Inhaltsobjekt 160a...160n, bei denen es sich um Element mit hoher Gewichtung handelt (z. B. Wörter im Titel, Wörter in Fettdruck, hervorgehobene Wörter usw.), und vergleicht diese Elemente/Wörter mit den Elementen/Wörtern in dem Kategorieprofil.
-
Die Taxonomie 140 kann aus einem bekannten Satz von Beispiel-Inhaltsobjekten erzeugt werden. So können z. B. 20 Inhaltsobjekte 160a...160n, die bekanntermaßen mit „Personalwesen” in Zusammenhang stehen, 20 Inhaltsobjekte 160a...160n, die bekanntermaßen mit „Finanzen” in Zusammenhang stehen, und 20 Inhaltsobjekte 160a...160n, die bekanntermaßen mit „Ingenieurwesen” in Zusammenhang stehen, bereitgestellt und durch das Klassifizierungssystem 130 verwendet werden, um eine Taxonomie 140 zu erzeugen, die Inhaltsobjekte 160a...160n identifiziert, welche in Zusammenhang mit den Kategorien „Personalwesen/Finanzen/Ingenieurwesen” stehen.
-
Bei Ausführungsformen, bei denen Beispiel-Inhaltsobjekte 160a...160n verfügbar sind, durchsucht das Klassifizierungssystem 130 jede Inhaltsablage 150a...150n, um Kategorieprofile zu erzeugen, und erzeugt anschließend Relevanzwerte für Kategorien mit Blick auf Inhaltsobjekte 160a...160n, welche die festgestellten Kategorieprofile verwenden. Die Relevanzwerte beschreiben, wie eng der Zusammenhang zwischen jeder Kategorie und jedem Inhaltsobjekt 160a...160n und umgekehrt ist.
-
Bei bestimmten Ausführungsformen, bei denen keine Beispiel-Inhaltsobjekte 160a...160n verfügbar sind, wendet das Klassifizierungssystem 130 Cluster-Algorithmen an, um die Kategorieprofile zu erzeugen. Das Klassifizierungssystem 130 identifiziert Inhaltsobjekte 160a...160n, die einen Wert unter einem vorbestimmten Schwellenwert erzielen, als mögliche Kandidaten für vorgeschlagene Aktionen aus (z. B. Neuklassifizierung, Neuzuweisung oder Neuablage). Bei bestimmten Ausführungsformen findet dies für Kategorien fortlaufend statt. Inhaltsobjekte 160a...160n mit Werten über dem vorbestimmten Schwellenwert können einer oder mehreren der vorgeschlagenen Aktionen unterzogen werden.
-
Es können also Situationen entstehen, in denen kein bekannter Beispiel-Korpus von Inhaltsobjekten 160a...160n vorhanden ist. In derartigen Fällen kann das Klassifizierungssystem 130 Cluster-Algorithmen auf einen großen Satz von Inhaltsobjekten 160a...160n anwenden, um die Inhaltsobjekte 160a...160n nach den darin vorkommenden gemeinsamen Elementen (z. B. Wörtern) in Gruppen zusammenzufassen. Mit dieser Methode lassen sich präzise Taxonomien erzeugen.
-
Zum Sammeln von Inhaltsobjekten verfügt das Klassifizierungssystem 130 über einen geplanten Crawler, der eine konfigurierbare Anzahl der Inhaltsobjekte 160a...160n (z. B. einige oder alle der Inhaltsobjekte) in den Inhaltsablagen 150a...150n liest. Das Klassifizierungssystem 130 fasst die Inhaltsobjekte 160a...160n mit gemeinsamen Elementen zu Clustern zusammen. Jeder Cluster kann für eine Kategorie in der resultierenden Referenztaxonomie 140 stehen. Anhand dieser Referenztaxonomie 140 können die Daten in den Inhaltsablagen 150a...150n neu organisiert werden.
-
Wenn eine Cluster-Bildung nicht geeignet ist, kann das Prüfsystem 120 auf der Grundlage der Struktur der Inhaltsablagen 150a...150n wie folgt eine Wissensdatenbank 142 erstellen:
- 1. Durchlaufe jede Inhaltsablage 150a...150n, beginnend mit dem Stammordner oder der obersten Ebene der Inhaltsablage 150a...150n.
- 2. Lege für den momentanen Knoten eine neue leere Kategorie in der momentanen Kategoriedatenbank 142 an (d. h. der gerade ausgeführten Version der Wissensdatenbank 142).
- 3. Erhalte eine Liste von Inhaltsobjekten 160a...160n oder Knoten (d. h. Ordner).
- 4. Führe für jedes Inhaltselement (d. h. Inhaltsobjekt 160a...160n oder Knoten) in der Liste Folgendes durch:
a. Wenn das Inhaltselement ein Knoten oder Ordner ist, gehe zu Prozess (2), oben, um eine neue leere Kategorie in der momentanen Wissensdatenbank 142 anzulegen.
b. Wenn das Inhaltselement ein Inhaltsobjekt ist, sende den Inhalt des Inhaltsobjekts 160a...160n als Rückmeldung zu der momentanen Kategorie an das Klassifizierungssystem 130.
-
Dies stellt eine Referenzwissensdatenbank 142 auf der Grundlage der organisatorischen Struktur der Inhaltsablagen 150a...150n bereit. Die Wissensdatenbank 142 kann dahingehend beschrieben werden, dass sie die darunterliegenden statistischen Profile für die Taxonomiekategorien sowie andere Daten speichert, die zur Klassifizierungsdurchführung verwendet werden.
-
In Block 202 führt das Prüfsystem 120 eine Prüfung von Inhaltsablagen durch, um vorgeschlagene Aktionen für Inhaltsobjekte zu erzeugen. Um eine schnelle Erkennbarkeit und korrekte Organisation eines Inhaltsobjekts zu erreichen, überprüft das Prüfsystem 120 eine Inhaltsablage 150a...150n und erkennt automatisch falsch klassifizierte Inhaltsobjekte 160a...160n 160a...160n und falsch angewendete Metadaten 170a...170n. Auf der Grundlage eines konfigurierbaren Schwellenwerts kategorisiert das Prüfsystem 120 automatisch jedes Inhaltsobjekt 160a...160n bzw. stellt Vorschläge für dessen Kategorisierung bereit, indem es: 1) die Metadaten des Inhaltsobjekts verbessert, 2) das Inhaltsobjekt 160a...160n in einen Ordner mit einem Inhaltsobjekt 160a...160n eines ähnlichen Kontextes verschiebt oder 3) das Inhaltsobjekt 160a...160n einer Klasse des Inhaltsobjekts 160a...160n zuweist, die Inhaltsobjekte 160a...160n eines ähnlichen Kontextes in Gruppen zusammenfasst.
-
3 veranschaulicht Operationen, die durch das Prüfsystem 120 gemäß bestimmten Ausführungsformen durchgeführt werden. Das Prüfsystem 120 überwacht die Inhaltsablagen 150a...150n und versucht in regelmäßigen Abständen, Inhaltselemente zu finden, die neu klassifiziert werden müssen. 3 besteht aus den 3A, 3B, 3C und 3D. Sobald eine Taxonomie 140 oder Wissensdatenbank 142 vorhanden ist, wendet das Prüfsystem 120 die Ergebnisse der Taxonomie 140 oder Wissensdatenbank 142 an, um die Organisation von Daten in den Inhaltsablagen 150a...150n zu unterstützen. Das Prüfsystem 120 beinhaltet einen geplanten Crawler, der die Inhaltsobjekte 160a...160n liest und von dem Klassifizierungssystem 130 (d. h. dem Bereitsteller der zugehörigen Taxonomie) erfährt, welche Kategorie das Inhaltsobjekt auf der Grundlage von Relevanzwerten jeder Kategorie für jedes Inhaltsobjekt 160a...160n am besten darstellt. Auf der Grundlage des Relevanzwerts kann das durchsuchte Inhaltsobjekt 160a...160n einer vorgeschlagenen Aktion unterzogen werden (bei der sich um ein Aktualisieren der Metadaten, ein Zuweisen einer Klasse des Inhaltobjekts 160a...160n, ein Verschieben des Inhaltsobjekts 160a...160n in einen relevanten Ordner usw. handeln kann).
-
Wenn die Inhaltsobjekte 160a...160n aufgrund eines niedrigen Relevanzwerts nicht kategorisiert sind, werden die Inhaltsobjekte 160a...160n für einen manuellen Prüfprozess gekennzeichnet, bei dem ein ECM-Systemadministrator die Inhaltsobjekte von Hand organisieren kann.
-
In 3 beginnt die Steuerung bei Block 300 damit, dass das Prüfsystem 120 – beginnend mit einem ersten Knoten – einen nächsten Knoten auswählt. Wenn keine weiteren Knoten zu verarbeiten sind, endet bei bestimmten Ausführungsformen die Verarbeitung von 3. Ein Taxonomie- oder ein Kategoriebaum stellt die Taxonomie 140 oder Wissensdatenbank 142 dar, wobei – beginnend mit einem Stammordner – Knoten für Ordner stehen. Das Prüfsystem 120 durchläuft jede Inhaltsablage 150a...150n, beginnend mit dem Stammknoten (d. h. der obersten Ebene der Inhaltsablage 150a...150n). In Block 302 ermittelt das Prüfsystem 120 für den ausgewählten Knoten, welche Kategorie diesem Knoten zugehörig ist. In Block 304 erhält das Prüfsystem 120 für den ausgewählten Knoten eine Liste von Inhaltsobjekten 160a...160n und/oder Knoten innerhalb des ausgewählten Knotens.
-
In Block 306 wählt das Prüfsystem 120 – beginnend mit einem ersten Inhaltselement – das nächste Inhaltselement in der Liste aus. Jedes Inhaltselement ist ein Inhaltsobjekt 160a...160n oder ein Knoten in der Liste. In Block 308 ermittelt das Prüfsystem, ob das ausgewählte Inhaltselement ein Knoten ist. Wenn dies der Fall ist, fährt die Verarbeitung mit Block 302 fort, andernfalls fährt sie mit Blick 310 (3B) fort.
-
In Block 310 erhält das Prüfsystem 120 eine Kategorie, die dem Inhaltsobjekt zugehörig ist. In Block 312 erhält das Prüfsystem 120 eine Liste von in Frage kommenden Kategorien und Relevanzwerten, die den in Frage kommenden Kategorien zugehörig sind. Bei bestimmten Ausführungsformen erhält das Prüfsystem 120 diese von dem Klassifizierungssystem 130.
-
In Block 314 ermittelt das Prüfsystem 120, ob sich die dem Inhaltsobjekt 160a...160n zugehörige Kategorie in der Liste von in Frage kommenden Kategorien befindet. Wenn dies der Fall ist, fährt die Verarbeitung mit Block 316 fort, andernfalls fährt sie mit Blick 322 (3D) fort.
-
In Block 316 ermittelt das Prüfsystem 120, ob ein der Kategorie zugehöriger Relevanzwert über einem Schwellenwert liegt. Bei bestimmten Ausführungsformen identifiziert das Prüfsystem 120 den Relevanzwert als denjenigen Wert, welcher der in Frage kommenden Kategorie (in der Liste von in Frage kommenden Kategorien) zugehörig ist, die mit der Kategorie übereinstimmt, welche dem Inhaltsobjekt 160a...160n zugehörig ist. Der Schwellenwert kann z. B. durch einen Administrator gesetzt oder auf der Grundlage einer wie auch immer gearteten Heuristik berechnet werden. Wenn dies der Fall ist, fährt die Verarbeitung mit Block 318 (3C) fort, andernfalls fährt sie mit Blick 322 (3D) fort. In Block 318 stellt das Prüfsystem 120 fest, dass das Inhaltsobjekt 160a...160n korrekt klassifiziert ist.
-
In Block 320 ermittelt das Prüfsystem 120, ob alle Inhaltselemente in jeder bisher erzeugten Liste ausgewählt wurden. Wenn dies der Fall ist, fährt die Verarbeitung mit Block 300 fort, um einen anderen Knoten auszuwählen, andernfalls fährt sie mit Block 306 fort, um das nächste Inhaltselement in einer Liste auszuwählen. Da es vorkommen kann, dass ein Knoten einen weiteren Knoten enthält, der wiederum ein weiteren Knoten enthält, usw. können mehrere Listen rekursiv erzeugt und verarbeitet werden.
-
In Block 322 stellt das Prüfsystem 120 fest, dass das Inhaltsobjekt 160a...160n womöglich falsch klassifiziert ist. In Block 324 identifiziert das Prüfsystem 120 das Inhaltsobjekt 160a...160n in einem Prüfbericht zusammen mit in Frage kommenden Kategorien, denen Relevanzwerte über dem Schwellenwert zugehörig sind. Die in Frage kommenden Kategorien werden als alternative Kategorien für das Inhaltsobjekt bereitgestellt.
-
In Block 326 ermittelt das Prüfsystem 120, ob das Inhaltsobjekt 160a...160n automatisch klassifiziert werden soll. Wenn dies der Fall ist, fährt die Verarbeitung mit Block 328 fort, andernfalls fährt die Verarbeitung mit Block 330 fort. Bei bestimmten Ausführungsformen ist dem Inhaltsobjekt 160a...160n und/oder einem Knoten eine Markierung zugehörig. Die Markierung kann gesetzt werden, um eine automatische Neuklassifizierung des Inhaltsobjekts 160a...160n anzuzeigen.
-
In Block 330 ermittelt das Prüfsystem 120, ob alle Inhaltselemente in jeder bisher erzeugten Liste ausgewählt wurden. Wenn dies der Fall ist, fährt die Verarbeitung mit Block 300 fort, um einen anderen Knoten auszuwählen, andernfalls fährt sie mit Block 306 fort, um das nächste Inhaltselement in einer Liste auszuwählen.
-
Bei bestimmten Ausführungsformen verarbeitet das Prüfsystem 120 andere Metadatenfelder. Das heißt, das Prüfsystem 120 behandelt andere Metadatenfelder als Taxonomiekategorien. Wenn z. B. ein Feld mit der Bezeichnung „Aufbewahrungsfrist” vorhanden ist, können „eine Woche” und „drei Jahre” die Kategorien für die Taxonomie „Aufbewahrungsfrist” sein. Die Taxonomie ist dann die Sammlung der zugewiesenen Werte im Feld „Aufbewahrungsfrist”. Danach verwendet das Klassifizierungssystem 130 die Inhaltsobjekte 160a...160n und ihre Aufbewahrungsfristen, um eine Wissensdatenbank 142 für diese Taxonomie zu trainieren, indem es jede Kategorie für die Inhaltsobjekte 160a...160n trainiert, die dieser Aufbewahrungsfrist zugewiesen sind. Im Anschluss daran verwendet das Klassifizierungssystem 130 diese Wissensdatenbank 142, um Relevanzwerte für jede Kategorie und jedes Inhaltsobjekt 160a...160n zu erhalten, und ermittelt, ob jedes Inhaltsobjekt 160a...160n tatsächlich zu der Aufbewahrungsfrist gehört, der das Inhaltsobjekt 160a...160n ursprünglich zugewiesen wurde, oder ob Anpassungen vorgenommen werden sollten. Bei bestimmten Ausführungsformen können diese während der anfänglichen Datenablagen-Iteration zur Erstellung der Wissensdatenbank 142 hinzugefügt werden, wobei jedem eindeutigen Feld eine separate Wissensdatenbank 142 und jedem eindeutigen Wert innerhalb des Felds eine Kategorie zugeordnet wird. Wenn also zusätzliche Metadatenfelder vorhanden sind, kann das Klassifizierungssystem 130 für jedes der zusätzlichen Metadatenfelder eine Taxonomie 140 und eine Wissensdatenbank 142 erzeugen.
-
Bei bestimmten Ausführungsformen stellt das Klassifizierungssystem 130 zum Überwachen und Überprüfen einen zusätzlichen Mechanismus bereit, um das Überwachen der Inhaltsablagen 150a...150n, das Identifizieren von falsch klassifizierten Inhaltsobjekten und das Formulieren von Vorschlägen zu unterstützen, wenn es sinnvoll ist, die Inhaltsobjekte neu zu klassifizieren.
-
Bei derartigen Ausführungsformen kann die in regelmäßigen Abständen durchgeführte Prüfprozedur verbessert werden, indem eine Funktionalität verwendet wird, die als Versionsverwaltung der Wissensdatenbank 142 (oder eines Entscheidungsplans) bezeichnet wird. Bei bestimmten Ausführungsformen ermöglicht das Klassifizierungssystem 130 das Speichern von Versionen der Wissensdatenbank 142 (z. B. aller Versionen, die für eine bestimmte Implementierung verwendet werden). Wenn ein Administrator eine bestimmte von der Wissensdatenbank 142 bereitgestellte Entscheidung verstehen oder nachvollziehen möchte, kann er dies anhand der exakten Version der Wissensdatenbank 142 tun. Die Versionen der Wissensdatenbank 142 werden aktualisiert, wenn sich die Wissensdatenbank 142 ändert (z. B. auf demselben oder auf einem anderen Server).
-
Eine Möglichkeit des Überprüfens der Inhaltsablagen 150a...150n besteht darin, die in 3 beschriebene Prüfprozedur zu realisieren, indem eine Massenklassifizierung der Inhaltsobjekte 160a...160n in den betreffenden Inhaltsablagen 150a...150n vorgenommen wird oder indem Teilsätze der Inhaltsobjekte 160a...160n einer Prüfung unterzogen werden. Das Klassifizierungssystem 130 speichert die Versionen der Wissensdatenbank 142 automatisch zusammen mit den regulären Klassifizierungsergebnissen in dem ECM-System 110 und liegt diese einem Prüfer vor.
-
Dieses Merkmal ist nützlich, um die Ergebnisse bei Bedarf nach außen vertreten zu können, da der Prüfer belegen kann, warum eine bestimmte Entscheidung (z. B. das Setzen der Aufbewahrungsfrist, das Zuweisen einer Datensatzklasse usw.) getroffen wurde. Darüber hinaus ermöglicht diese Funktionalität eine effizientere und exaktere Prüfung.
-
Bei Ausführungsformen, bei denen die Versionen der Wissensdatenbank 142 gespeichert werden, führt das Prüfsystem 120 eine abgeänderte Verarbeitung aus 3 durch. Im Besonderen sucht das Prüfsystem 120 nach den zuvor gespeicherten Klassifizierungsergebnissen, extrahiert die Version der Wissensdatenbank 142 und überprüft, ob sich die momentane Version der Wissensdatenbank 142 von der Version der Wissensdatenbank 142 der zuvor gespeicherten Klassifizierungsergebnisse unterscheidet. Danach überprüft das Prüfsystem 120 ausschließlich Inhaltsobjekte 160a...160n, deren Klassifizierungen Versionen der Wissensdatenbank 142 zugehörig sind, die sich von der momentanen Version der Wissensdatenbank 142 unterscheiden. Dies ist nützlich, wenn für die Wissensdatenbank 150a...150n ein Nur-Lese-Zugriff festgelegt ist oder wenn ein Arbeitsablauf 144 keine Änderungen an den Inhaltsobjekten 160a...160n vorgenommen hat.
-
Mit Blick auf 3 ermittelt das Prüfsystem 120 nach den Operationen aus Block 312, ob sich die aufgezeichnete Version der Wissensdatenbank 142 für das Inhaltsobjekt 160a...160n von der momentanen Version der Wissensdatenbank 142 unterscheidet. Wenn dies der Fall ist, fährt die Verarbeitung mit Block 314 fort, andernfalls fährt die Verarbeitung mit Block 306 fort. Wenn die Versionen der Wissensdatenbank 142 unterschiedlich sind, kann das Prüfsystem 120 optional unerwünschte/unerwartete Änderungen an dem Inhaltsobjekt 160a...160n oder falsche Zuordnungen desselben, die nach der automatischen Klassifizierungsverarbeitung erfolgt sind, erkennen.
-
Wenn das Prüfsystem 120 bei bestimmten Ausführungsformen feststellt, dass für eine Kategorie bei derselben Version der Wissensdatenbank 142 eine anderslautende Entscheidung getroffen wurde, kann das Prüfsystem 120 – sofern die Inhaltsablage 150a...150n und der Arbeitsablauf 144 nicht auf Änderungen an den Inhaltsobjekten 160a...160n schließen lassen – erkennen, dass unzulässige Änderungen an dem Inhaltsobjekt 160a...160n vorgenommen wurden. Bei einer üblichen Nutzung der Inhaltsablagen 150a...150n dient die Prüfprozedur dazu, die Metadaten 170a...170n zu aktualisieren, Ordner zuzuweisen oder zu überprüfen, ob eine Kategorisierung oder Klassenzuweisung fehlerhaft/falsch abgelegt wurde. Bei einem solchen in regelmäßigen Abständen durchgeführten Prüfprozess kann das Prüfsystem 120 unerwartete Änderungen an den Inhaltsobjekten 160a...160n sowie von Hand vorgenommene (d. h. nach der vorherigen automatischen Klassifizierungsverarbeitung erfolgte) falsche Zuordnungen feststellen.
-
Somit kann die Versionsverwaltung die in regelmäßigen Abständen stattfindende Prüfprozedur unterstützen, indem: sie diese effizienter macht; mögliche Fälle einer nach der letzten automatischen Klassifizierungsprozedur von Hand vorgenommenen falschen Zuordnung von Inhaltsobjekten 160a...160n erkennt; und mögliche Fälle von unerwarteten (und unerwünschten) Inhaltsänderungen erkennt.
-
Die 4A, 4B und 4C veranschaulichen in Blockschaubildern ein Beispiel einer Klassifizierung gemäß bestimmten Ausführungsformen. In 4A erzeugt das Klassifizierungssystem 130 unter Verwendung der Dokumente in einem Ordner eine Taxonomie 400 mit drei Knoten: Kategorie: Ordner A; Kategorie: Order B; und Kategorie: Ordner C.
-
In 4B erzeugt das Klassifizierungssystem 130 für Ordner A für jedes Dokument 410, 412, 414 eine Liste von Kategorien, denen drei Relevanzwerte zugehörig sind.
-
In 4C ermittelt das Prüfsystem 120 für jedes Dokument die Kategorie mit dem höchsten erzielten Wert und weist diese Kategorie dem Dokument zu. In diesem Beispiel verschiebt das Prüfsystem das Dokument 3 414 in die Kategorie: Ordner B und legt es dort ab.
-
Somit verwendet das Prüfsystem 120 statistische Methoden, um Metadaten zuzuweisen und mit größerer und weniger subjektiver Genauigkeit, als dies bei Benutzern der Fall ist, eine Klassifizierung vorzunehmen. Auf diese Weise stellt das Prüfsystem 120 eine in sich schlüssigere und bessere Kategorisierung und Metadatenzuweisung bereit.
-
Bei bestimmten Ausführungsformen wird vor Beginn des Prüfprozesses eine Taxonomie 140 erzeugt, indem: ein Metadatenelement ermittelt wird, das als „Kategorie” verwendet werden soll (dabei könnte es sich auch um den Speichert von Inhaltselementen in der Inhaltsablage 150a...150n [Ordner] handeln); eine eindeutige Liste von Kategorien aus der Inhaltsablage 150a...150n erhalten wird; sowie die Inhaltsablage 150a...150n durchsucht wird und alle Inhaltselemente in jeder Kategorie dazu verwendet werden, eine Wissensdatenbank 142 (d. h. ein statistisches Modell) für die Klassifizierung zu erzeugen.
-
Sobald die Wissensdatenbank 142 erzeugt ist, wählt das Prüfsystem 120 ein Inhaltsobjekt 160a...160n aus und erhält aus der Inhaltsablage 150a...150n die Kategorie, der das Inhaltsobjekt 160a...160n momentan zugewiesen ist. Bei bestimmten Ausführungsformen haben das zuerst ausgewählte Inhaltsobjekt 160a...160n und die durchsuchten Inhaltsobjekte 160a...160n einander zugehörige Kategorien. Bei bestimmten Ausführungsformen kann eine Kategorie eine Eigenschaft des Inhaltsobjekts 160a...160n sein. Bei bestimmten Ausführungsformen kann eine Kategorie entweder in den Metadaten vorhanden sein oder aus der Inhaltsablage 150a...150n erhalten werden.
-
Das Prüfsystem 120 sendet das Inhaltsobjekt 160a...160n an das Klassifizierungssystem 130 und empfängt im Gegenzug eine Liste von übereinstimmenden Kategorien und ihren Relevanzwerten. Das Prüfsystem 120 ermittelt, ob die zurückgegebenen Kategorien mit der zugewiesenen Kategorie übereinstimmen (z. B. auf der Grundlage einer zurückgegebenen Kategorie mit maximalen Übereinstimmungswerten oder auf der Grundlage dessen, dass die zurückgegebenen Kategorien über einem vorbestimmten Schwellenwert liegen). Wenn eine Übereinstimmung gegeben ist, wird festgestellt, dass das Inhaltsobjekt 160a...160n korrekt klassifiziert wurde und keine Aktionen notwendig sind. Wenn keine Übereinstimmung vorliegt, wird das Inhaltsobjekt 160a...160n neu klassifiziert. Die Neuklassifizierung kann das Inhaltsobjekt 160a...160n einer oder mehreren anderen Kategorien zuweisen (z. B. auf der Grundlage einer zurückgegebenen Kategorie mit maximalen Übereinstimmungswerten oder auf der Grundlage dessen, dass die zurückgegebenen Kategorien über einem vorbestimmten Schwellenwert liegen), oder sie kann eine neue Kategorie erzeugen, wenn alle erzielten Werte unter einem vorbestimmten Schwellenwert liegen, und das Inhaltsobjekt 160a...160n der neuen Kategorie zuweisen.
-
Das Prüfsystem 120 ermöglicht eine Extraktion aus unstrukturierten Elementen (z. B. aus jedem Objekt, dessen Text unformatiert, in beschreibender Form oder nicht in konkreten Feldern mit endlichen Werten vorliegt). Das Prüfsystem 120 extrahiert Konzepte aus den unstrukturierten Datenelementen, nutzt KI-Algorithmen für das Organisieren/Erkennen von Daten und verwaltet die archivierten Daten dynamisch, indem es Prüf-, Benachrichtigungs- und Selbstlernfunktionen anwendet. Das Prüfsystem 120 legt einem Prüfer (z. B. einem Benutzer) die Vorschläge des Klassifizierungssystems 130 vor und gibt ihm die Möglichkeit, mit dem Klassifizierungssystem 130 zu interagieren und die Entscheidungen zu ändern oder zu genehmigen. Das Prüfsystem 120 stellt sicher, dass die Metadaten/die Struktur auf sich wandelnde Geschäftsmodelle und -ziele abgestimmt sind, indem es die Inhaltsobjekte 160a...160n in regelmäßigen Abständen überprüft und Metadaten, die diesen Inhaltsobjekten 160a...160n zugehörig sind, aktualisiert. Darüber hinaus lernt das Prüfsystem 120 von den Aktionen des Prüfers.
-
Das Prüfsystem 120 beseitigt falsche Zuordnungen bzw. erkennt im Laufe der Zeit Inhaltsobjekte 160a...160n, deren Metadaten aktualisiert werden müssen. Diese Metadaten können Eigenschaften oder beliebige Arten von Metadaten sein, die den Inhaltsobjekten 160a...160n in den Inhaltsablagen 150a...150n zugehörig sind. Das Prüfsystem 120 stellt eine in regelmäßigen Abständen erfolgende Aktualisierung von Metadaten (z. B. in Form der Auszeichnung mit Zusatzinformationen) bereit, wenn sich die Organisation des Inhalts im Laufe der Zeit ändert, und stellt zudem Wege bereit, mit denen ermittelt werden kann, welche der Inhaltsobjekte 160a...160n geändert werden sollten, wobei eine Versionsverwaltung der Wissensbank verwendet wird.
-
Zusätzliche Einzelheiten zu den Ausführungsformen
-
Der Fachmann weiß, dass Aspekte der vorliegenden Erfindung als ein System, Verfahren oder Computerprogrammprodukt ausgeführt werden können. Entsprechend können Aspekte der vorliegenden Erfindung in Gestalt einer vollständig in Hardware realisierten Ausführungsform, einer vollständig in Software realisierten Ausführungsform (z. B. Firmware, residente Software, Mikrocode usw.) oder in Gestalt einer Ausführungsform vorliegen, die Software- und Hardware-Aspekte vereint, welche zusammenfassend als „Schaltung”, „Modul” oder „System” bezeichnet werden können. Des Weiteren können Aspekte der vorliegenden Erfindung in Gestalt eines Computerprogrammprodukts vorliegen, das in einem oder mehreren computerlesbaren Medien ausgeführt ist, auf denen computerlesbarer Programmcode enthalten ist.
-
Dabei kann eine beliebige Kombination aus einem oder mehreren computerlesbaren Medien genutzt werden. Das computerlesbare Medium kann ein computerlesbares Signalmedium oder ein computerlesbares Speichermedium sein. Ein computerlesbares Speichermedium kann z. B. ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleitersystem bzw. eine entsprechende Vorrichtung oder Einheit oder aber eine beliebige geeignete Kombination der vorgenannten Elemente sein, ohne jedoch auf diese beschränkt zu sein. Konkretere Beispiele des computerlesbaren Speichermediums würden Folgendes beinhalten (wobei dies eine nicht vollständige Liste darstellt): eine elektrische Verbindung mit einem oder mehreren Leitern, eine tragbare Computerdiskette, eine Festplatte, einen Direktzugriffsspeicher (RAM), einen Festwertspeicher (ROM), einen löschbaren, programmierbaren Nur-Lese-Speicher (EPROM- oder Flash-Speicher), einen Lichtwellenleiter, einen tragbaren CD-ROM, eine optische Speichereinheit, eine magnetische Speichereinheit, einen Halbleiterspeicher, ein Magnetband oder eine beliebige geeignete Kombination der vorgenannten Elemente. In Verbindung mit diesem Dokument kann ein computerlesbares Speichermedium jedes physische Medium sein, das ein Programm enthalten oder speichern kann, welches von oder in Zusammenhang mit einem der Befehlsausführung dienenden System, einer Vorrichtung oder Einheit verwendet wird.
-
Ein computerlesbares Signalmedium kann ein weitergeleitetes Datensignal mit darin enthaltenem computerlesbarem Programmcode enthalten, z. B. im Basisband oder als Teil einer Trägerwelle. Ein derartiges weitergeleitetes Signal kann eine beliebige Vielfalt von unterschiedlichen Formen annehmen, einschließlich, ohne auf diese beschränkt zu sein, eine elektromagnetische Form, eine optische Form oder auch jede geeignete Kombination derselben. Ein computerlesbares Signalmedium kann ein beliebiges computerlesbares Medium sein, das kein computerlesbares Speichermedium ist und das ein Programm übermitteln, weiterleiten oder übertragen kann, welches für die Nutzung durch oder in Verbindung mit einem/einer der Befehlsausführung dienenden System, Vorrichtung oder Einheit vorgesehen ist.
-
Auf einem computerlesbaren Medium enthaltener Programmcode kann unter Verwendung eines beliebigen geeigneten Mediums übertragen werden, einschließlich, ohne auf diese beschränkt zu sein, drahtlose, drahtgebundene, Lichtwellenleiterkabel-, HF- und andere Medien oder eine beliebige Kombination derselben.
-
Computerprogrammcode für das Ausführen von Arbeitsschritten für Aspekte der vorliegenden Erfindung kann in einer beliebigen Kombination von einer oder mehreren Programmiersprachen geschrieben sein, unter anderem eine objektorientierte Programmiersprache wie Java, Smalltalk, C++ oder ähnliche sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C” oder ähnliche Programmiersprachen. Der Programmcode kann vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Softwarepaket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder aber vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. Im letztgenannten Szenario kann der entfernt angeordnete Computer über eine beliebige Art von Netzwerk, unter anderem ein lokales Netz (LAN) oder ein Weitverkehrsnetz (WAN), mit dem Computer des Benutzers verbunden sein, oder die Verbindung kann mit einem externen Computer (z. B. über das Internet unter Verwendung eines Internet-Dienstanbieters) hergestellt werden.
-
Im Folgenden werden Ausführungsformen der Erfindung unter Bezugnahme auf Darstellungen von Ablaufplänen und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Dabei dürfte klar sein, dass jeder Block der Ablaufplan-Darstellungen und/oder Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplan-Darstellungen und/oder Blockschaubildern durch Computerprogrammbefehle realisiert werden kann/können. Diese Computerprogrammbefehle können einem Prozessor eines Universalcomputers, Spezialcomputers oder einer anderweitigen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die Befehle, die über den Prozessor des Computers oder der anderweitigen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, ein Mittel erzeugen, mit dem die Funktionen/Handlungen realisiert werden können, die in dem Block bzw. den Blöcken des Ablaufplans und/oder Blockschaubilds angegeben sind.
-
Diese Computerprogrammbefehle können auch auf einem computerlesbaren Medium gespeichert werden, das einen Computer, eine anderweitige programmierbare Datenverarbeitungsvorrichtung oder andere Einheiten anweisen kann, auf eine bestimmte Art und Weise zu funktionieren, so dass die auf dem computerlesbaren Medium gespeicherten Befehle einen Herstellungsgegenstand hervorbringen, der Befehle aufweist, mit denen die in dem Block bzw. den Blöcken des Ablaufplans und/oder Blockschaubilds angegebene Funktion/Handlung realisiert wird.
-
Die Computerprogrammbefehle können zudem in einen Computer, eine anderweitige programmierbare Datenverarbeitungsvorrichtung oder andere Einheiten geladen werden, um zu veranlassen, dass eine Reihe von Operations-Verarbeitungsprozessen (z. B. Operationen oder Schritte) auf dem Computer, der anderweitigen programmierbaren Datenvorrichtung oder den anderen Einheiten durchgeführt wird, so dass die Befehle, die auf dem Computer oder der anderweitigen Datenverarbeitungsvorrichtung ausgeführt werden, Prozesse bereitstellen, mit denen die Funktionen/Handlungen, die in dem Block bzw. den Blöcken des Ablaufplans und/oder Blockschaubilds angegeben sind, realisiert werden.
-
Der Code, welcher die beschriebenen Funktionen realisiert, kann ferner in Hardware-Logik oder als Schaltung (z. B. als integrierte Schaltung, als Programmable Gate Array (PGA), als Application Specific Integrated Circuit (ASIC) usw.) realisiert sein. Die Hardware-Logik kann mit einem Prozessor verbunden sein, um Operationen durchzuführen.
-
Sofern nicht ausdrücklich anderweitig angegeben, müssen Einheiten, die untereinander Daten austauschen, nicht in ununterbrochenem Datenaustausch stehen. Zudem können Einheiten, die untereinander Daten austauschen, direkt oder indirekt über ein oder mehrere zwischengeschaltete Elemente Daten austauschen.
-
Eine Beschreibung einer Ausführungsform mit mehreren Komponenten, die untereinander Daten austauschen, bedeutet nicht, dass alle derartigen Komponenten notwendig sind. Vielmehr wird eine Vielzahl von optionalen Komponenten beschrieben, um die breite Palette von möglichen Ausführungsformen der vorliegenden Erfindung zu veranschaulichen.
-
Obwohl Prozessschritte, Verfahrensschritte, Algorithmen oder Ähnliches in einer sequenziellen Abfolge beschrieben werden, können derartige Prozesse, Verfahren und Algorithmen auch so konfiguriert sein, dass sie in anderen Reihenfolgen funktionieren. Anders ausgedrückt, bedeutet eine beliebige Abfolge oder Reihenfolge von Schritten nicht notwendigerweise, dass die Schritte in dieser Reihenfolge durchgeführt werden müssen. Die hier beschriebenen Prozessschritte können in jeder beliebigen praktikablen Reihenfolge durchgeführt werden. Des Weiteren können manche Schritte gleichzeitig erfolgen.
-
Wenn hier eine einzige Einheit oder ein einziger Gegenstand beschrieben werden, sollte offensichtlich sein, dass anstelle einer einzigen Einheit/eines einzigen Gegenstands auch mehrere Einheiten/Gegenstände verwendet werden können (unabhängig davon, ob diese zusammenwirken). Wenn hier mehrere Einheiten oder Gegenstände beschrieben werden (unabhängig davon, ob sie zusammenwirken), sollte des Weiteren offensichtlich sein, dass anstelle der mehreren Einheiten oder Gegenstände eine einzige Einheit/ein einziger Gegenstand verwendet werden kann bzw. dass anstelle der gezeigten Anzahl von Einheiten oder Programmen eine andere Anzahl von Einheiten/Gegenständen verwendet werden kann. Die Funktionalität und/oder die Merkmale einer Einheiten können alternativ durch eine oder mehrere andere Einheiten realisiert sein, die nicht ausdrücklich als mit einer solchen Funktionalität/einem solchen Merkmal ausgestattet beschrieben werden. Somit müssen andere Ausführungsformen der vorliegenden Erfindung die Einheit selbst nicht beinhalten.
-
Die veranschaulichten Operationen aus 2 und 3 zeigen bestimmte Ereignisse, die in einer bestimmten Reihenfolge stattfinden. Bei alternativen Ausführungsformen können bestimmte Operationen in einer anderen Reihenfolge durchgeführt, abgeändert oder entfernt werden. Darüber hinaus können Operationen zu der oben beschriebenen Logik hinzugefügt werden und dennoch weiterhin den beschriebenen Ausführungsformen entsprechen. Des Weiteren können hier beschriebene Operationen nacheinander stattfinden, oder bestimmte Operationen können parallel verarbeitet werden. Des Weiteren können Operationen durch eine einzige Verarbeitungseinheit oder durch verteilte Verarbeitungseinheiten durchgeführt werden.
-
Die hier verwendete Begrifflichkeit dient lediglich zur Beschreibung bestimmter Ausführungsformen und ist nicht als Beschränkung der Erfindung gedacht. Im hier verwendeten Sinne sollen die Singularformen „ein/e/r” und ”der/die/das” auch die Pluralformen beinhalten, sofern der Kontext dies nicht eindeutig anderweitig vorgibt. Ebenso offensichtlich dürfte sein, dass die Verben „weist auf” und/oder „aufweisend” in dieser Patentschrift das Vorhandensein der genannten Merkmale, Ganzzahlen, Schritte, Operationen, Elemente und/oder Komponenten angeben, ohne jedoch das Vorhandensein oder die Hinzufügung von einem/einer oder mehreren anderen Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen, Komponenten und/oder Gruppen derselben auszuschließen.
-
Sofern nicht ausdrücklich anderweitig angegeben, bedeuten die Begriffe „eine Ausführungsform”, „Ausführungsform”, „Ausführungsformen”, „die Ausführungsform”, „die Ausführungsformen”, „eine oder mehrere Ausführungsformen”, „manche Ausführungsformen” und „eine einzige Ausführungsform” „eine oder mehrere (aber nicht alle) Ausführungsformen der vorliegenden Erfindung(en)”.
-
Sofern nicht ausdrücklich anderweitig angegeben, bedeuten die Begriffe „beinhalten”, „aufweisen”, „haben” und Abwandlungen hiervon „darunter, ohne darauf beschränkt zu sein”.
-
Sofern nicht ausdrücklich anderweitig angegeben, bedeutet die nummerierte Auflistung von Elementen nicht, dass sich eines oder alle dieser Elemente wechselseitig ausschließt/ausschließen.
-
Die betreffenden Strukturen, Materialien, Handlungen und Äquivalente aller Mittel oder Schritte zusätzlich zu den Funktionselementen in den nachstehenden Ansprüchen sollen sämtliche Strukturen, Materialien oder Handlungen beinhalten, mit denen die Funktion in Verbindung mit anderen beanspruchten Elementen durchgeführt werden kann, wie sie hier ausdrücklich beansprucht sind. Die Beschreibung von Ausführungsformen der vorliegenden Erfindung wurde zum Zwecke der Veranschaulichung und Erläuterung vorgelegt und ist mit Blick auf die in dieser Form beschriebene Erfindung nicht als vollständig oder beschränkend zu verstehen. Der Fachmann weiß, dass zahlreiche Änderungen und Abwandlungen möglich sind, ohne vom Umfang der Erfindung abzuweichen. Die Ausführungsformen wurden ausgewählt und beschrieben, um die Grundsätze der Erfindung und die praktische Anwendung bestmöglich zu erläutern und um anderen Fachleuten die Möglichkeit zu geben, die Erfindung mit Blick auf verschiedene Ausführungsformen mit verschiedenen Abwandlungen zu verstehen, wie sie für die jeweilige, in Erwägung gezogene Verwendung geeignet sind.
-
5 stellt eine Computerarchitektur 500 dar, die gemäß bestimmten Ausführungsformen verwendet werden kann. Der Server-Computer 100 kann die Computerarchitektur 500 realisieren. Die Computerarchitektur 500 ist für das Speichern und/oder Ausführen von Programmcode geeignet und enthält mindestens einen Prozessor 502, der über einen Systembus 520 direkt oder indirekt mit Speicherelementen 504 verbunden ist. Die Speicherelemente 504 können einen Lokalspeicher, der während der tatsächlichen Ausführung des Programmcodes verwendet wird, einen Massenspeicher und Cachespeicher beinhalten, die eine vorübergehende Speicherung von mindestens einem Teil des Programmcodes bereitstellen, um die Häufigkeit zu verringern, mit welcher Code während der Ausführung aus dem Massenspeicher abgerufen werden muss. Die Speicherelemente 504 weisen ein Betriebssystem 505 und ein oder mehrere Computerprogramme 506 auf.
-
E/A-Einheiten 512, 514 (einschließlich, ohne darauf beschränkt zu sein, Tastaturen, Anzeigen, Zeigeeinheiten usw.) können entweder direkt oder über dazwischen geschaltete E/A-Steuereinheiten 510 mit dem System verbunden sein.
-
Netzwerkadapter 508 können ebenfalls mit dem System verbunden sein, um die Verbindung des Datenverarbeitungssystems mit anderen Datenverarbeitungssystemen oder mit entfernt angeordneten Druckern oder Speichereinheiten über dazwischen geschaltete private oder öffentliche Netzwerke zu ermöglichen. Modems, Kabelmodems und Ethernet-Karten sind nur einige der momentan verfügbaren Typen von Netzwerkadaptern 508.
-
Die Computerarchitektur 500 kann mit einem Speicher 516 verbunden sein (z. B. einer beliebigen Art von Speichereinheit; einem nicht flüchtigen Speicherbereich wie beispielsweise Magnetplattenlaufwerken, optischen Plattenlaufwerken, einem Bandlaufwerk usw.). Der Speicher 516 kann eine interne Speichereinheit oder einen verbundenen oder über ein Netzwerk zugänglichen Speicher aufweisen. Die in dem Speicher 516 gespeicherten Computerprogramme 506 können in die Speicherelemente 504 geladen und von einem Prozessor 502 auf eine in der Technik bekannte Art und Weise ausgeführt werden.
-
Die Computerarchitektur 500 kann weniger Komponenten als abgebildet, zusätzliche, hier nicht abgebildete Komponenten oder eine Kombination aus abgebildeten und zusätzlichen Komponenten aufweisen. Die Computerarchitektur 500 kann eine beliebige Datenverarbeitungseinheit nach dem Stand der Technik aufweisen, z. B. einen Großrechner, einen Server, einen Personal Computer, einen Arbeitsplatzrechner, einen Laptop Computer, einen Handheld Computer, eine Telefonie-Einheit, eine Netzwerkeinrichtung, eine Virtualisierungseinheit, eine Speichersteuereinheit usw.
-
Der Ablaufplan und die Blockschaubilder in den Figuren veranschaulichen die Architektur, Funktionalität und den Betrieb möglicher Realisierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. Somit kann jeder Block der Ablaufpläne oder Blockschaubilder ein Modul, Segment oder einen Code-Teil darstellen, der einen oder mehrere ausführbare Befehle aufweist, mit denen sich die angegebene(n) logische(n) Funktion(en) realisieren lässt/lassen. Zu beachten ist ferner, dass bei manchen alternativen Ausführungsformen die in dem Block erwähnten Funktionen in einer anderen Reihenfolge als der in den Figuren genannten auftreten können. So können zwei aufeinanderfolgend dargestellte Blöcke tatsächlich im Wesentlichen gleichzeitig stattfinden, oder die Blöcke können mitunter in umgekehrter Reihenfolge ausgeführt werden, wobei dies abhängig von der betreffenden Funktionalität ist. Ebenfalls erwähnenswert ist, dass jeder Block der Blockschaubilder und/oder der Ablaufplan-Darstellung sowie Kombinationen von Blöcken in den Blockschaubildern und/oder der Ablaufplan-Darstellung durch Spezialsysteme auf der Grundlage von Hardware, welche die angegebenen Funktionen oder Handlungen oder Kombinationen hiervon ausführen, oder durch Kombinationen von Spezial-Hardware- und Computerbefehlen realisiert werden kann/können.
-
Die obige Beschreibung der Ausführungsformen der Erfindung dient zur Veranschaulichung und Beschreibung. In Zusammenhang mit den obigen Ausführungen sind zahlreiche Änderungen und Anpassungen möglich.