Optimal konzipierte Software-Schnittstellen

Für Software-Projekte sollten generell Produkte bevorzugt werden, die möglichst viele Kernfunktionen bereits im Standardumfang mitbringen. Diese sog. integrierten Software-Lösungen haben den Vorteil, dass auf einen gemeinsamen Datenpool zugegriffen werden kann und damit doppelte Datenhaltung und Schnittstellen entfallen. Dennoch sind in Software-Projekten Schnittstellen zu anderen Software-Lösungen nicht immer vermeidbar. Deshalb werden nachfolgend wichtige Aspekte für Schnittstellen aufgezeigt.

Praxistipps für Schnittstellen

Die reine Konzeption und Programmierung einer Schnittstelle ist im Normalfall nicht sehr aufwändig. Häufig stehen dafür Schnittstellen-Beschreibungen zur Verfügung. Diese erläutern, welche Felder es gibt und wie diese im Detail definiert sind:

  • Datentyp
  • Feldlänge
  • Anzahl Nachkommastellen etc.

Aus der Schnittstellen-Beschreibung geht auch hervor, welches Dateiformat für den Austausch verwendet werden kann. Übliche Formate sind .csv oder .xml. Es besteht aber auch die Möglichkeit, die Daten direkt in die Datenbank der anderen Software-Lösung zu schreiben.

Professionelle Gestaltung der Datenübertragung

Mit den zuvor genannten Schritten können meist relativ schnell Daten zwischen zwei Software-Lösungen übergeben werden. Jedoch hat der Anwender in der Regel kaum Transparenz über die ausgetauschten Daten und wird nicht auf etwaige Übertragungsfehler aufmerksam gemacht. Deshalb ist bei wichtigen Daten ein Schnittstellen-Monitoring unumgänglich. Mögliche Funktionen eines professionellen Monitorings sind:

  • Der Datentransfer wird protokolliert und kann nachvollzogen werden
  • Bei Fehlern wird die Übertragung entweder komplett abgebrochen oder die fehlerhaften Datensätze werden markiert und alle anderen werden übertragen (bei großen Datenmengen sinnvoll)
  • Fehlerhafte Datensätze werden dem Anwender angezeigt und können manuell korrigiert werden
  • Komplette Datenübertragungen können rückgängig gemacht und erneut durchgeführt werden

Die Entwicklung eines Monitoring-Tools ist relativ aufwändig. Deshalb ist es optimal, wenn dies als Add-on verfügbar ist oder die Software-Lösung bereits im Standard ein Schnittstellen-Monitoring mitbringt, wie das etwa bei der sog. BAPI-Schnittstelle von SAP der Fall ist, wo das Fehlerprotokoll in einer normierten Message-Tabelle erstellt wird.

Tipp für die direkte Übertragung in Datenbanken

Wenn eine Software-Lösung direkt Daten in die Datenbank einer anderen Software-Anwendung schreibt, besteht die Gefahr, dass die Anwender in dieser Zeit nicht in der empfangenden Software arbeiten können, weil die Tabellen gesperrt sind. Deshalb sollte überlegt werden, ob der Datenaustausch über eine „Zwischenablage“ abgewickelt wird. Dann kann die empfangende Software die Daten abholen, wenn es die Auslastung gerade zulässt.

Dokumentation

Zu einer gut konzeptionierten Schnittstelle gehört unbedingt eine ausführliche Dokumentation, in der das Datenkonzept und die Bedienung erläutert sind. Dann kann eine Schnittstelle auch von anderen Mitarbeitern erweitert bzw. angewendet werden. Die Praxis zeigt, dass es oft an diesem Punkt mangelt und z.B. nach dem Ausscheiden von Know-how-Trägern Probleme auftreten.

Weiterführende Informationen:
Schnittstelle im Maschinenbau zwischen Konstruktion und Fertigung