-
Die
Erfindung betrifft ein Verfahren sowie ein System zum Austausch
und Abgleich von Daten zwischen Applikationen.
-
Die
Situation bei der Projektierung von Automatisierungslösungen ist
dadurch gekennzeichnet, dass viele verschiedene Software-Applikationen
(im Folgenden: Applikationen), die jeweils einzelne Aspekte der Projektierung
gezielt unterstützen,
im Verbund zusammenwirken müssen.
Dies impliziert, dass die Applikationen Daten auszutauschen haben.
Verschiedene dieser Applikationen können Toolketten bilden, indem
Daten von einer Applikation zur nächsten weitergereicht werden. üblicherweise
bearbeitet jede Applikation einen Teil der Daten, fügt eigene
Daten hinzu. Nach einer solchen Bearbeitung der Daten durch eine
der Applikationen müssen
alle Änderungen
und Ergänzungen
der Projektierung erneut durchgeführt werden, wobei dies typischerweise
nicht automatisiert erfolgen kann, da es um weitergehende Projektierungsaufgaben
geht. Je länger die
jeweilige Toolkette ist, umso schwieriger und aufwendiger ist das
Modifizieren der Projektierung.
-
Die
DE 198 45 043 C1 beschreibt
ein Verfahren und eine Datenverarbeitungsanlage zum Datenabgleich
zwischen mindesten zwei Anwenderdateien. Die Anwenderdateien betreffen
zumindest teilweise dieselben Objekte und haben gemeinsame Kenngrößen. Eine
Abgleichsteuerung verwaltet zu gemeinsamen Objekten die abzugleichenden
Kenngrößen in einer
Verzeichnisdatei. Die Abgleichsteuerung erfasst in bestimmten Zeitabständen die Änderungen
und Neueinträge
in jeder Anwenderdatei, trägt
diese objektbezogen in die Verzeichnisdatei ein und gibt sie an
die jeweils andere Anwenderdatei weiter.
-
Der
Erfindung liegt die Aufgabe zugrunde, einen vereinfachten Austausch
und Abgleich von durch Applikationen bearbeitbaren Daten zwischen
den Applikationen zu ermöglichen.
-
Diese
Aufgabe wird durch ein Verfahren mit den im Patentanspruch 1 genannten
Merkmalen sowie mit einem System mit den im Patentanspruch 4 genannten
Merkmalen gelöst.
-
Der
Erfindung liegt die Idee zugrunde, in Objekten neben der Objektkennzeichnung
zur Identifikation der Objekte beliebig viele applikationsspezifische
Kennzeichnungen zuzulassen. Durch die Speicherung der applikationsspezifischen
Kennzeichnungen aller Applikationen kann erreicht werden, dass ein
Objekt von jeder Applikation wieder identifiziert werden kann. Dadurch
werden Modifikationen von Objekten für alle Applikationen einer
Toolkette nachvollziehbar. Durch diese „universelle" Erkennbarkeit der
Objekte werden neue Möglichkeiten
zur Zusammenarbeit geschaffen, ohne dass bestehende Strukturen (insbesondere
die applikationsspezifische Kennzeichnung von Objekten) geändert werden
müssen.
-
Eine
besonders zugängliche
Ablage der Objektkennzeichnung bzw. der applikationsspezifischen Kennzeichnungen
wird erreicht, wenn gemäß einer
Ausgestaltung der Erfindung die Objektkennzeichnungen und die applikationsspezifischen
Kennzeichnungen der Objekte als Zeichenketten aus Klartext ausgeführt werden.
-
Werden
die Objekte durch eine erweiterbare Auszeichnungssprache (z. B.
XML = Extensible Markup Language) beschrieben, so erreicht man neben
Einheitlichkeit und Erweiterbarkeit auch systematische Validierbarkeit.
Dadurch kann jede Applikation durch Realisierung eines XML Ex- und
Imports Daten mit anderen Applikationen austauschen, ohne sich direkt
mit anderen Applikationen direkt abstimmen zu müssen. Es lassen sich dann Toolketten
individuell erstellen.
-
Nachfolgend
wird die Erfindung anhand des in der Figur dargestellten Ausführungsbeispiels
näher beschrieben
und erläutert.
-
Die
Figur zeigt ein System zum Austausch und Abgleich von Daten 40 zwischen
drei Applikationen 1, 2, 3. Dargestellt
sind drei Software-Applikationen 1, 2 und 3,
welche Daten 40 austauschen können. Die Daten 40 sind
mit Objekten 10, 20, 30 strukturiert.
Wie in der vergrößerten Darstellung
der Daten 40 in der Figur dargestellt, weist jedes Objekt 10, 20, 30 zur
Identifikation eine eindeutige Objektkennzeichnung 11, 21, 31 und mehrere
applikationsspezifische Kennzeichnungen 12..14, 22..24, 32..34 auf.
Die Objekte 10, 20, 30 enthalten außerdem Nutzdaten 15, 25, 35.
-
Im
Ausführungsbeispiel
exportiert die erste Applikation 1 Daten 40 und
gibt sie an die zweite Applikation 2. Die zweite Applikation 2 verarbeitet
diese Daten 40, reichert sie um eigene Informationen an
und gibt sie an die dritte Applikation 3. Die dritte Applikation 3 verfährt ebenso
wie die zweite Applikation 2, nur das hier keine Nachfolgeapplikation
existiert. Zusammen lösen
die drei Applikationen 1, 2, 3 ein Problem
der Automatisierungstechnik, z. B. die Projektierung einer Anlage
mit allen Aspekten. Wird jetzt die Projektierung durch die erste
Applikation 1 modifiziert, so wird die erste Applikation 1 wieder
exportieren und die Daten an die zweite Applikation 2 übergeben.
Jetzt müssen
alle Änderungen
und Ergänzungen
der Projektierung erneut durchgeführt werden, dies kann typischerweise
nicht automatisiert erfolgen, da es ja um weitergehende Projektierungsaufgaben
geht. Das gleiche passiert auch bei der dritten Applikation 3.
Je länger
die Toolkette ist, umso schwieriger und aufwendiger ist das Modifizieren
der Projektierung. Hätte
die zweite Applikation 2 die Möglichkeit die von der ersten
Applikation 1 gemachten Änderungen herauszufinden (welche
Objekte waren von den Änderungen
betroffen bzw. sind hinzugekommen, entfernt worden), so könnte die
zweite Applikation 2 einen Abgleich fahren. Dabei kann
die zweite Applikation 2 alle Unterschiede seiner eigenen
Datenbasis mit denen der ersten Applikation 1 abgleichen
und es würde
eine automatische Übernahme
der Änderungen,
die die erste Applikation 1 vorgenommen hat erfolgen. Auf
die gleiche Weise kann auch die dritte Applikation 3 eine
Neueingabe des eigenen Anteils an der Projektierung vermeiden. Dies
ist jedoch nur möglich,
wenn die Applikationen 1, 2, 3 die Objekte 10, 20, 30 ihrer
Datenhaltung eindeutig identifizieren können. Dazu ist eine gemeinsame
eindeutige Objektkennzeichnung (im Folgenden Objekt-ID genannt)
zur Identifikation der Objekte erforderlich. Es wäre sogar
möglich
das Endergebnis der dritten Applikation 3 direkt wieder
an die erste oder die zweite Applikation 1 bzw. 2 zu
geben, so dass diese Applikationen ebenfalls von den Ergänzungen
der dritten Applikation 3 erfahren und qgf. profitieren
können.
Es entsteht ein so genanntes „Roundtrip"-Szenario, bei dem die
Daten 40 frei zwischen den Applikationen 1, 2, 3 wandern
und jede Applikation 1, 2, 3 ihre „Sicht" auf die Daten 40 bearbeitet.
Die Daten 40 selbst fassen aber alle Informationen immer
konsistent zusammen.
-
Bisher
besaß jede
der Applikationen 1, 2, 3 einen eigenen
Mechanismus diese Objekt-ID zu verwalten. Daraus folgte, dass diese
Information nicht zwischen den Applikationen 1, 2, 3 ausgetauscht
werden konnten. Im Stand der Technik wird keine Lösungsmöglichkeit
beim Einsatz von Toolketten im geschilderten Einsatzfall genannt.
Durch die fehlende Identifikation der Objekte müssen Änderungen bisher immer wieder
manuell in jeder Applikation 1, 2, 3 nachgezogen
werden. Das kostet sehr viel Zeit, Geld und ist fehleranfällig. Komplexere Toolketten
waren deshalb bisher, aus den genannten Gründen, nicht praktikabel möglich.
-
Die
Erfindung zeigt einen einfachen Weg auf, mit dem Applikationen 1, 2, 3 lose
gekoppelt Daten austauschen und abgleichen können. Toolketten bilden dabei
einen typischen Einsatzzweck des Datenaustauschs und -abgleichs.
Im Folgenden wird eine applikationsspezifische Kennzeichnung 12..14, 22..24, 32..34 eines
Objekts 10, 20, 30 als App-ID bezeichnet.
Die zentrale Idee des vorgeschlagenen Verfahrens ist es, nicht die
App-ID einer einzelnen Applikation alleine zu hinterlegen, sondern
die App-IDs aller Applikationen 1, 2, 3 für dieses
Objekt 10, 20, 30. Dadurch kann jede
Applikation 1, 2, 3, die ihre App-ID
mit hinterlegt hat, ein Objekt 10, 20, 30 später wieder
eindeutig identifizieren. Zusätzlich
lässt sich
eine unabhängige
Objekt-ID ablegen, um zukünftige
Applikationen ggf. auf eine einheitliche Objekt-Identifikation zu bringen. Das Verfahren
sichert, dass die Applikationen 1, 2, 3 trotz
verschiedener App-IDs (sowohl bezüglich des Werts als auch der
Struktur) die Objekte 10, 20, 30, die
bearbeitet werden, eindeutig identifizieren. Durch diese Identifikation
werden die Modifikationen nachvollziehbar und automatisiert wiederholbar.
Der daraus resultierende Abgleichmechanismus erlaubt die Realisierung
von wesentlich komplexeren Toolketten als heute üblich bzw. möglich ist.
Die Applikationen bleiben trotzdem lose gekoppelt (d. h. benötigen keine
direkte Kenntnis voneinander) und die Modifikationen der Applikationen 1, 2, 3 zur
Unterstützung
des Verfahrens sind minimal. Das Verfahren kann auf der Anwendung
von XML zur Festlegung einer konkreten Syntax basieren, ist aber
auch durch andere technische Mittel realisierbar. Durch das Festlegen
einer konkreten Syntax in Form eines XML-Schemas wird das beschriebene
Verfahren einheitlich und erweiterbar festgelegt. Dadurch kann jede
Applikation 1, 2, 3 durch Realisierung
eines XML-Ex- und Imports Daten 40 mit anderen Applikationen 1, 2, 3 austauschen,
ohne sich direkt mit anderen Applikationen 1, 2, 3 direkt
abstimmen zu müssen.
Es lassen sich somit Toolketten individuell erstellen.
-
Im
folgenden XML-Schema-Fragment ist eine exemplarische Definition
einer applikationsspezifischen Kennzeichnung 12..14, 22..24, 32..34 eines
Objekts 10, 20, 30 aufgezeigt. Wesentlich
ist dabei, dass sowohl eine App-ID (hier der Name der Applikation)
sowie eine Objekt-ID angegeben sind. Beide Werte sind in diesem Beispiel
als einfache Zeichenketten spezifiziert, dies erlaubt eine besonders
zugängliche
Ablage der Kennzeichnungen. Alternative Repräsentationen der Kennzeichnungen
sind ebenfalls denkbar.
-
-
Im
folgenden Instanzbeispiel ist das obige Schema-Fragment angewendet.
Es ist ein Projekt angegeben, welches das Objekt repräsentiert.
Durch das XML-Attribut „ID" wird eine global
(für alle
Anwendungen/Applikationen) gültige
Objekt-ID angegeben. Darunter folgen als eigene XML-Elemente „diax:App_Id" die App-IDs für das Projektobjekt.
Im Anschluss an diese App-IDs kämen
dann die Nutzdaten des Projektes.
-
-
Zusammenfassend
betrifft die Erfindung somit ein Verfahren sowie ein System zum
vereinfachten Austausch und Abgleich von Daten zwischen Applikationen.
Bei dem erfindungsgemäßen Verfahren
zum Austausch und Abgleich von Daten 40 zwischen Applikationen 1, 2, 3 werden
die Daten 40 mit Objekten 10, 20 30 strukturiert,
wobei jeweils eine eindeutige Objektkennzeichnung 11, 21, 31 zur
Identifikation der Objekte 10, 20 30 und
jeweils mehrere applikationsspezifische Kennzeichnungen 12..14, 22..24, 32..34 der
Objekte 10, 20 30 vorgesehen sind.