-
Die Erfindung betrifft ein Verfahren
sowie eine Vorrichtung zur Erzeugung und Verarbeitung, insbesondere
Verwaltung, Manipulation und/oder Auswertung, von Daten, die in
einer Datenbank oder einer Datei gespeichert sind, durch einen aktiven Strukturbaum.
-
Herkömmliche Strukturbäume werden
häufig benutzt,
um Datenbestände
zu verwalten und darin zu navigieren. Mit Datenbeständen sind
heterogene Daten aus Datenbänken,
unstrukturierte Textdateien oder beliebige Dateien gemeint. Herkömmliche Strukturbäume sind übergeordnete
Elemente eines Systems und werden häufig erst dann angelegt, wenn
das eigentliche System fertig ist. Ein Beispiel dafür sind Speicherverzeichnisse
(directories) oder der auf dem Betriebssystem Windows basierende Dateimanager,
in denen Dateien und Programme mit deren Namen in einem Speicher
aufgelistet werden. Diese Strukturbäume sind bezogen auf darunterliegende
Datenbestände
passiv. So verändert
sich ein Dateibaum nicht in Abhängigkeit
vom Inhalt einer Datei. Herkömmliche
Strukturbäume
werden bezogen auf Daten und Informationen für eine "Grobnavigation" eingesetzt, d.h. sie führen zu
größeren Datenbeständen, z.B.
zu Gruppen von Dateien oder zu Gruppen von Datensätzen.
-
Aus dem Stand der Technik sind unterschiedliche
Dateisysteme und Strukturen zur Organisation der Dateisysteme bekannt.
Beispielsweise beschreibt
EP
0 746 819 B1 ein Datenspeichermanagement für durch
ein Netzwerk verbundene Prozessoren. Das Dateisystem ist hierarchisch
organisiert und es werden Priorisierungen vorgesehen, die dazu führen, dass
automatisch Dateien mit niedriger Priorität von Datenspeichersubsystemen
zu Backend-Speichersystemen migriert werden.
-
Aus
EP 0 775 427 B1 ist ein Verfahren zum Zugriff
auf Datenelemente bekannt, die in einer verteilten Datenstruktur
angeordnet sind. Das System umfaßt eine Hierarchie von Knoten
mit Kommunikationsverbindungen dazwischen. Eine Anfrage auf ein bestimmtes
Datenelement löst
eine Suchmeldung aus, die von einem Endknoten zu einer Wurzel läuft, die
wiederum einen Zeiger enthält,
der auf ein weiteres Datenelement verweist.
-
Aus
EP
0 278 313 ist ein verteiltes Dateimanagementsystem bekannt,
das zur Vermeidung von Deadlocks einen geeigneten Datei-Sperrmechanismus
vorsieht.
-
Aus dem Stand der Technik sind somit
hierarchische Dateisysteme bekannt, die nach Art eines Strukturbaumes
hierarchisch angeordnet sind. Die aus dem Stand der Technik bekannten
Dateisysteme sind jedoch hinsichtlich ihrer darunterliegenden Datenbestände passiv,
d.h. die Struktur eines Dateibaums ist nicht abhängig vom Inhalt einer Datei, die
sich in dem Dateibaum befindet. Daneben sind die Dateisysteme aus
dem Stand der Technik insofern statisch, als Knoten eines Dateibaums
lediglich hierarchische Funktion aufweisen und solchen Knoten keine "Aktionen" zugeordnet sind.
-
Die aus dem Stand der Technik bekannten Dateisysteme
oder Dateistrukturen sind damit hinsichtlich ihrer Funktionalität begrenzt.
Es ist daher Aufgabe der vorliegenden Erfindung, ein Verfahren zur
Erzeugung eines Dateisystems, eines sogenannten aktiven Strukturbaums
zu schaffen, das hinsichtlich seiner Funktionalität flexibler
und vielseitiger ist als die Dateisysteme gemäß dem Stand der Technik. Weiterhin
besteht die Aufgabe der vorliegenden Erfindung in der Bereitstellung
eines Verfahrens zur Verwendung eines solchen aktiven Strukturbaums, einer
Vorrichtung zur Erzeugung und zur Verwendung eines aktiven Strukturbaums,
sowie eines entsprechenden Computerprogramms und einer analog dazu
erzeugten Datenstruktur.
-
Die Aufgabe der vorliegenden Erfindung
wird verfahrens und vorrichtungsmäßig gelöst durch den jeweiligen Gegenstand
der unabhängigen
Patentansprüche
1 und 10. Die abhängigen
Ansprüche
definieren bevorzugte Ausführungsformen
und Verwendungen der Efrindung.
-
Während
gemäß dem Stand
der Technik nur passive Strukturbäume bekannt sind, ermöglicht die vorliegende
Erfindung die Bereitstellung eines aktiven Strukturbaums.
-
Ein aktiver Strukturbaum besteht
beispielsweise aus einer Benutzeroberfläche, der unterliegenden Logik
eines Verschlüsselungssystems
und Funktionen der jeweiligen Anwendung. Nicht dazu gehören Funktionen
des Datenzugriffs aus dem Betriebssystem oder Funktionen der allgemeinen
Systemsteuerung oder Programmierung.
-
Aktive Strukturbäume definieren Datenstrukturen
kontextbezogen, d.h. die Datenstruktur kann vom Inhalt bzw. der
Bedeutung oder dem Bedeutungszusammenhang der darin enthaltenen
Dateien abhängig
gemacht werden. So können
beispielsweise die Daten einer Personaldatenbank eines größeren Unternehmens
im Kontext "Organisation" gesehen werden.
Der entsprechende Strukturbaum ergäbe dann ein Organigramm des
Unternehmens. Die selbe Datenbank enthalte aber auch Mitarbeiterqualifikationen.
Somit könnte
auch ein weiterer Kontext "Qualifikationen" hergeleitet werden.
Der entsprechende Strukturbaum enthielte dann Knoten, die Qualifikationen
wie Sprache, Beruf usw. der Mitarbeiter enthielten. Anstatt einer
organisatorischen Struktur könnte
man also auch eine Struktur generieren, die die Eigenschaften von
Mitarbeitern darstellt. Ein aktiver Strukturbaum definiert oder
repräsentiert
also einen Kontext.
-
Gemäß einem Aspekt der vorliegenden
Erfindung wird ein aktiver Strukturbaum zur Verarbeitung von Daten,
die in mindestens einer Datenbank oder einer Datei gespeichert sind,
mit einer Baumstruktur versehen, die mindestens einen Knoten einer
ersten hierarchischen Baumstrukturebene aufweist. Des weiteren wird
mindestens einem Knoten dieser Baumstruktur mindestens ein Lese-,
Schreib- und/oder Bearbeitungsbefehl zugewiesen.
-
Gemäß einem weiteren Aspekt der
vorliegenden Erfindung wird bei der Benutzung des aktiven Strukturbaums
mindestens einer der den Knoten zugewiesenen Befehle ausgeführt.
-
Vorzugsweise kann die vorgesehene
Baumstruktur als solche dabei zuvor erzeugt werden, indem man mindestens
einen Knoten einer ersten hierarchischen Baumstrukturebene erzeugt,
anschließend
erzeugt man Knoten, die sich hierarchisch unter den aktuellen hierarchisch
untersten Knoten befinden und den letztgenannten Schritt so oft
wiederholt, bis alle zu erzeugenden Knoten der gesamten Baumstruktur
erzeugt sind (top down). Auch der umgekehrte Weg ist möglich, es
wird mindestens ein Knoten der letzten vorgesehenen hierarchischen
Ebene erzeugt, anschließend
wird durch eine Logik, die z.B. Aggregation abbildet, der Knoten
der hierarchisch nächst
höheren
Ebene erzeugt. Dieser Schritt wird so oft wiederholt, bis alle zu
erzeugenden Knoten erzeugt sind (bottom up). Dadurch wird eine kontextbezogene
Baumstruktur definiert, die den Vorstellungen des jeweiligen definierenden
Benutzers entsprechen.
-
Vorzugsweise kann man die vorgesehene Baumstruktur
als solche durch Einlesen einer zuvor definierten Baumstruktur erlangen.
Dadurch wird erreicht, daß bereits
bestehende Baumstrukturen (passive Strukturbäume) auf einfache Art und Weise übernommen
werden können,
ohne daß eine
zusätzliche
Bearbeitung der Baumstruktur nötig
wird.
-
Vorzugsweise wird der erzeugte und/oder benutzte
aktive Strukturbaum auf einer Anzeigeeinrichtung eines Computers,
z.B. einem Bildschirm, dargestellt. Alternativ kann aber auch ein
Papierausdruck über
den Drucker eines Computers ausgedruckt werden. Dadurch erhält der Benutzer
auf einfache und schnelle Weise einen Überblick über Datenbestände, die
im von ihm gewünschten
Kontext dargestellt sind.
-
Vorzugsweise werden den Knoten nicht
nur einzelne Bearbeitungsbefehle zugewiesen, sondern auch Sequenzen
aus einzelnen Bearbeitungsbefehlen. Dadurch wird erreicht, daß mehrere
Aktionen nacheinander, wie beispielsweise Einlesen, Editieren und Übermitteln
von Daten, ausgeführt
werden können.
-
Vorzugsweise werden Datenzugriffsbefehle als
Lesebefehle und Datenablagebefehle als Schreibbefehle an die Knoten
zugewiesen.
-
Zwei wesentliche Vorteile aktiver
Strukturbäume,
die auf der Erfindung basieren, sind die besonders rationelle Systemerstellung
und die effektive Ergonomie einer Benutzeroberfläche. Die rationelle Systemerstellung
zeichnet sich durch die breite Palette der Definitionsmöglichkeiten,
d.h. von Systemdefinitionen über
die Datenverwaltung bis hin zur Benutzeroberfläche, aus. Aus der Definitionsphase
der Baumstruktur ergibt sich ohne Umwege das reale System, das kostengünstig automatisch
generiert werden kann. Nach dem Baukastenprinzip können Systeme
kostengünstig
ausgebaut oder integriert werden. Bezüglich der effektiven Ergonomie
sieht der Benutzer unmittelbar die gewünschten Zusammenhänge und
kann sich im Kontext darin bewegen. Wiederholte Suchvorgänge entfallen
dadurch. Durch die Darstellung der Daten im jeweiligen Kontext wird
bereits das einfache Datenhandling zur effektiven Informationsverarbeitung.
-
Die den Strukturbaum charakterisierende Aktivität wird durch
Zuweisung von Funktionen an die Knoten der Baumstruktur erreicht.
Unter dieser Funktionalität
sind Lese-, Schreib- und/oder Bearbeitungsbefehle zu verstehen.
Ein Bearbeitungsbefehl muß dabei
aber nicht zwingenderweise auf einem einzigen isolierten Bearbeitungsbefehl
bestehen, sondern kann auch aus einer Sequenz von einzelnen aneinandergereihten
Bearbeitungsbefehlen realisiert werden. Unter Lese- bzw. Schreibbefehlen
werden vorzugsweise Befehle verstanden, mit denen auf Daten zugegriffen
oder mit denen Daten übertragen werden
können.
-
Die Erfindung erlaubt es, Daten,
die nicht zwingenderweise vom gleichen Typ sein müssen, d.h.
es kann sich auch um Vorgänge/Arbeitsflüsse handeln,
die von externen Computern abgerufen werden, durch einen aktiven
Strukturbaum darzustellen. Dabei ist zu berücksichtigen, daß Daten
im Kontext dargestellt werden sollen, was speziell im Fall von unterschiedlichen
zu verarbeitenden Datentypen zu Komplikationen führen kann. Dies wird aber durch die
Erzeugung und Benutzung eines aktiven Strukturbaums verhindert.
Der Benutzer, der den einzelnen Knoten der Baumstruktur Funktionen
zuweist, kann durch geeignete Auswahl der Funktionen beliebig große Datenmengen
in dem von ihm gewünschten
Kontext schnell darstellen. Im Vergleich zu passiven Strukturbäumen ist
ein nachträgliches
Bearbeiten des Strukturbaums nach dessen Erzeugung nicht mehr nötig, da
die Erfindung einen aktiven Strukturbaum zur Verfügung stellt,
der selbständig
durch die den Knoten zugewiesenen Funktionen die nachträglich auszuführenden
Tätigkeiten
bereits beim Erstellen des Strukturbaums ausführt. Die im Knoten hinterlegten
Funktionen werden nicht notwendigerweise automatisch beim Aufruf
des Baumes ausgeführt,
die Ausführung
kann an Ereignisse gebunden werden. Dadurch werden zeitaufwendige
Abläufe
zum Aufbau des Baumes gesteuert, z.B. in den Hintergrund verlegt,
auf einen bestimmten Zeitpunkt verlegt oder interaktiv durch den
Benutzer z.B. durch das Aktivieren einer Ebene der Baumhierarchie
ausgelöst.
Dies führt
insbesondere bei großen
Datenmengen zu einer erheblichen Zeitaufwandsreduktion.
-
Änderungen
der durch die Knotenlogik einbezogenen Daten werden immer automatisch
vom aktiven Baum übernommen.
Eine Pflege des Baumes wie sie bei passiven Strukturbäumen notwendig ist,
z.B. das Kopieren einer neuen Datei in ein Verzeichnis, entfällt.
-
Die vorliegende Erfindung wird nachfolgend im
Detail anhand mehrerer Ausführungsbeispiele
unter Bezugnahme auf die beigefügten
Zeichnungen beschrieben. Es zeigen:
-
1 eine
schematische Darstellung eines Felds, das dem Knoten Xi zugehörig ist;
-
2 den
schematischen Aufbau der Knotenhierarchie; und
-
3 eine
schematische Darstellung eines aktiven Strukturbaums gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung.
-
Bevor im einzelnen auf ein Ausführungsbeispiel
der Erfindung eingegangen wird, soll nachfolgend im Zusammenhang
mit den 1 und 2 zunächst schematisch der Aufbau
eines Feldes, das dem Knoten X zugewiesen wird, und in seinen Elementen
verschiedenste Informationen beinhaltet, und der schematische Aufbau
der hierarchischen Strukturierung am Beispiel eines Knotens Xi erläutert werden.
-
Das Feld, das dem Knoten Xi zugewiesen wird, kann beliebig viele Elemente
enthalten. In 1 enthält das Feld
N Elemente. Diese Elemente stehen für die verschiedensten Arten
von Informationen. So können
beispielsweise in Element 1 Informationen über die
hierarchische Ebene des entsprechenden Knotens abgelegt sein. Element 2 könnte die
dem Knoten zugewiesenen Befehle enthalten. In Element 3 könnten die
logischen Verknüpfungen
mit anderen Knoten definiert worden sein. Element 4 könnte beispielsweise
Informationen über
das Anzeigeformat der dem Knoten Xi zugewiesenen
Daten enthalten, falls diese Daten dargestellt werden sollen. Diese
Art der Informationszusweisung kann beliebig fortgesetzt werden.
Die hier angeführte
Anordnung der Informationen kann beliebig verändert werden und soll nur ein
Beispiel für
die verschiedensten Möglichkeiten
sein.
-
In 2 ist
die hierarchische Umgebung um den Knoten Xi schematisch
dargestellt. Oberhalb des Knotens Xi befindet
sich die nächst
höhergelegene Hierarchieebene
mit dem einzelnen Knoten Xi–1. Unterhalb des Knotens
Xi können
sich beliebig viele Unterknoten Xi+1, j befinden,
die alle mit dem Knoten Xi in Verbindung
stehen. Die Anzahl der dem Knoten Xi untergeordneten
Knoten Xi+1, j und deren Inhalt lassen sich
in den Informationselementen des den Knoten Xi zugewiesenen
Feldes aus 1 wiederfinden.
-
Beispielsweise wird auf dem Computer
eines Rechtsanwalts ein Dateisystem abgespeichert, das die ehemalige
Aktenregistratur abbildet. Angenommen ein zu bearbeitender Fall
X erstreckt sich über mehrere
Jahre hinweg und man möchte
die entsprechenden Daten immer auf einen Blick sichten und bearbeiten
können.
Da sich die Daten bezüglich
des Falles zum Teil in dem Dateisystem der einigenen Kanzlei, im
Dateisystem einer Partnerkanzlei, im Polizeicomputer und im Internet-Pressearchiv
befinden können,
benutzt man nur Darstellung aller fallrelevanten Daten einen aktiven
Strukturbaum.
-
Ein Ausführungsbeispiel der Erfindung
wird nachfolgend im Zusammenhang mit 3 erläutert werden.
Im oben genannten Fall des Rechtsanwalts ist der Kontext, nachdem
die Daten bearbeitet werden sollen, beispielsweise der zu bearbeitende
Fall X. Ein Knoten der hierarchisch höchsten Baumstrukturebene könnte somit
der Knoten mit dem Namen "Fall
X" sein. Diesem
Knoten sollen nun zusätzliche Informationen
in Form von Knoten, die auf der nächst darunterliegenden Ebene
folgen, zugeordnet werden. Diese Knoten könnten beispielsweise mit den Worten "Polizei", "Dokumente", "Folgerung" und "Presse" bezeichnet werden.
-
Als nächstes wird die Funktionalität des Knotens "Polizei" definiert. Beim
Anklicken soll sich das System beim Polizeicomputer einloggen (1, Element 2) und
in der nächsten
Ebene, die beispielsweise den Knoten "Aktenzeichen" aufweist, alle Aktenzeichen der Bearbeiter,
die an dem Fall beteiligt sind, auflisten (1, Element 4). Die Befehlssequenz zum
Aufbau der Verbindung, dem Start der richtigen Polizeidatenbank,
dem Zugriff auf die gewünschten Daten
usw. (1, Element 2)
wird einmal eingegeben und dem Knoten "Polizei" zugeordnet. Es kann eine Befehlssequenz
sein, die vom Benutzer alternativ auch per Hand abgesetzt werden
kann, und die beispielsweise als "Batchsequenz" am Knoten "Polizei" hinterlegt wird.
-
Als nächstes wird das Erscheinungsbild
des Abfrageergebnisses unter "Aktenzeichen" definiert, d.h.
die Funktionalität
des Knotens "Aktenzeichen" wird festgelegt.
Beispielsweise soll in einer zu erzeugenden Liste an erster Stelle
das Aktenzeichen selbst stehen, in der gleichen Zeile an zweiter
Stelle der Name des Bearbeiters und an dritter Stelle in der gleichen
Zeile das Datum der Aufnahme.
-
Voraussetzung hierfür ist natürlich, daß auf den
Polizeicomputer zugegriffen werden kann und die genannten Daten
dort vorhanden sind und per Abfrage von dort herausgelesen werden
können. Weiterhin
wird definiert, daß in
der nächsten
Ebene ein Knoten "Details" existieren soll
(1, Element 3),
der Detaildaten zu einem Aktenzeichen enthält. Von der Ebene "Aktenzeichen" führt ein
Aufrufen eines bestimmten Aktenzeichens zu dessen Detaildaten.
-
Die Funktionalität des Knotens "Details" beinhaltet, daß aus der übergeordneten
Ebene per Mausklick ein bestimmtes Aktenzeichen ausgewählt wird,
das vom Polizeicomputer weitere Daten dazu abgefragt werden, und
diese Daten aufgrund der möglicherweise
vielen benötigten
Datenfelder als Übersichtstabelle
neben dem Baum dargestellt werden. Besitzt der Benutzer beispielsweise
des weiteren noch Schreibrechte, könnte er im Knoten "Details" hinterlegen, daß jede Änderung
der Daten in die Datenbank der Polizei zurückgeschrieben wird.
-
Als nächstes wird die Funktionalität des Knotens "Dokumente" definiert. Der Benutzer
gibt an, in welchen Dateibäumen
seines PCs – diese
Information wird beispielsweise in einem Element 5 des
Feldes aus 1 abgelegt – überall die
gespeicherten Dokumente verteilt sind. Des weiteren wird angegeben,
wie diese Dateien zu identifizieren sind. Beispielsweise könnten alle
Dateien, die mit Fall X*.* benannt sind, als zu identifizierende
Dateien benannt werden.
-
Auf die gleiche Art und Weise werden
alle übrigen
Knoten mit einer vom Benutzer definierten Funktionalität ausgestattet,
wodurch der Strukturbaum seiner ursprünglichen Passivität beraubt
wird und somit aktiv Daten bearbeitet und anschließend darstellt.
-
Eine weitere Ausführungsform der vorliegenden
Erfindung betrifft ein Managementsystem für Umweltstörfälle. Im Kontext mit einem Störfall (beispielsweise
in einem Atomkraftwerk) werden in der Einsatzzentrale einer Behörde für Störfallbekämpfung unterschiedlichste
Daten benötigt.
Daten über Techniken,
Risiken, zuständige
Personen, Ortslage der gestörten
Anlage und weitere Anlage des gleichen Typs, Eskalation, und welche
andere Behörde ist
wann und wie zu benachrichtigen usw. müssen schnell und übersichtlich
verfügbar
sein. Durch Datenhandling im Kontext werden alle wichtigen Zusammenhänge unmittelbar
deutlich. Mehrfaches Durchsuchen der gleichen Datenbestände nach
unterschiedlichen Kriterien entfällt.
-
Neben dem "bloßen
Abrufen" von Informationen
können
jedoch auch Eingaben gemacht werden, beispielsweise zu Fehlfunktionen
einzelner Techniken. Über
einen Lageplan kann der Einsatz von Spezialisten und anderen Kräften koordiniert werden.
Ein herkömmliches
System mit einer komplizierten Schachtelung von Bildschirmmasken
ist diesen Anforderungen an Ergonomie, Performance und an die Fehlervermeidung
kaum gewachsen. Da die benötigten
Daten in den unterschiedlichsten Datenbänken, die auch unterschiedlichste
(passive) Strukturbäume
aufweisen können,
abgelegt sein können, müßte zuerst
ein passiver Strukturbaum nach den Kriterien des gewünschten
Kontextes aufgebaut werden, anschließend die über die verschiedenen Datenbanken
verteilten Daten gesucht und in den neu generierten, passiven Strukturbaum
kopiert werden. Dieses Aussuchen und Kopieren der benötigten Daten
kann bei einer großen
Anzahl von Datenbanken sehr mühselig
und zeitaufwendig sein. Ein aktiver Strukturbaum gemäß der Erfindung
reduziert den benötigten
Zeitaufwand und ist sogar in der Lage, die benötigten Daten in einer gewünschten
Weise auch gleichzeitig zu bearbeiten, um diese dann im Kontext darzustellen.
-
Eine weitere Ausführungsform des aktiven Strukturbaums
ist eine technische Notfalldatenbank einer Telekommunikationsgesellschaft.
Im Falle eines technischen Versagens müssen alle relevanten Informationen
schnellstens verfügbar
sein. Die "Relevanz" wird im entsprechenden
Strukturbaum definiert. Beispielsweise könnte der Strukturbaum eine Liste
erstellen, die wiedergibt, welche Techniker des Unternehmens in
der Lage sind, den Notfall zu beheben, wo diese aufzufinden sind
und wie diese zu erreichen sind. Dies wäre ein weiteres Beispiel für einen
Strukturbaum, der im Kontext erstellt werden muß.
-
Eine weitere Ausführung des aktiven Strukturbaumes
ist ein Informationssystem in einem Callcenter, das zeitnah kontextbezogene
Daten zum anrufenden Kunden oder seiner betreuten technischen Anlage
liefert, um die Problemstellung des Anrufers schneller beantworten
oder lösen
zu können.
-
Das erfindungsgemäße Verfahren kann aber auch
anderweitig mit großem
Erfolg eingesetzt werden. In allen Fällen, in denen eine schnellstmögliche Aufbereitung
von unterschiedlichsten Datentypen zur übersichtlichen Darstellung
vonnöten
ist, kann das erfindungsgemäße Verfahren
angewandt werden.