Schnittstellenbeschreibung – den System-zu-System-Datenaustausch verbindlich definieren

Management Summary

  • Eine IT-Systemschnittstelle ermöglicht und regelt den Ende-zu-Ende-Datenverkehr zwischen zwei Softwareanwendungen der IT-Systemlandschaft.
  • Häufig wird die Etablierung einer IT-Systemschnittstelle unterschätzt. Dabei sind die Kosten hoch. Die Entwicklungsaufwände kleiner Schnittstellen starten bei 5.000 Euro, die Verbindungen zu Kernsystemen erreichen rasch einen sechsstelligen Bereich mit Investitionsvolumen von 100.000 Euro und mehr.
  • Eine Schnittstellenbeschreibung präzisiert und dokumentiert die IT-Systemschnittstelle. Sie besteht aus einen fachlichen, technischen und organisatorischen Teil. Eine gute Beschreibung senkt die Umsetzungskosten, beschleunigt die Fertigstellung, reduziert das Betriebsausfallrisiko und erhöht die Cyber-Sicherheit.
  • Mit zunehmender Digitalisierung von Fachprozessen, dem Wachstum der IT-Systemlandschaft sowie einer steigenden Zahl von Hacking-Angriffen wächst auch der Stellenwert des professionellen Schnittstellenmanagements. Dieses API Management betrachtet den gesamten Lebenszyklus aller IT-Systemschnittstellen.

Application Landscape Management

 

In einer IT-Systemlandschaft stecken 2 Mio. Dollar Optimierungspotential.
Wie viel können Sie realisieren?

Bestimmen Sie in weniger als 8 Minuten mit 14 Einzelfragen die Optimierungshebel im Management Ihres Applikationsportfolios.

Was ist eine Schnittstellenbeschreibung?

Eine IT-Systemschnittstelle (auch System-System-Schnittstelle oder engl. System interface) ist ein geplanter oder bestehender Datenaustausch zwischen zwei Softwareanwendungen. Die Praxis verwendet das Konzept uneinheitlich. Etabliert haben sich drei Perspektiven:

  • Verbindungspunkt: Der Fokus liegt auf einem System und seine internen bzw. externen Verbindungsfähigkeiten. Das System offeriert seinen Nachbarsystemen eine Programmierschnittstelle, auch Anwendungsschnittstelle oder Application Programming Interface (API) genannt. Beschreiben Sie einen Verbindungspunkt mit einer Schnittstellenspezifikation (auch API Dokumentation).
  • Verbindungstechnik: Hauptaugenmerk ist die Verbindungskomponente innerhalb eines IT-Systems bzw. zweier IT-Systeme. Die Komponente ist mittels Schnittstellenadapter, einer Integrationsschicht oder einem Bussystem realisiert. Die Technik fungiert als Übersetzer. Definieren Sie diese durch eine Technologiedokumentation.
  • Verbindungslösung: Die vollständige Ende-zu-Ende Verbindung von zwei IT-Systemen. Die Systeme tauschen über die Schnittstelle Daten miteinander aus. Spezifizieren Sie die Kommunikation mittels einer Schnittstellenbeschreibung (auch Schnittstellendokumentation).

Die Schnittstellenbeschreibung unterstützt den gesamten Lebenszyklus einer System-zu-System-Kommunikation von der Entwicklung, über den Betrieb bis zum Ablauf im Fehlerfall. Ein fundiertes Schnittstellendokument verbunden mit einem stringenten Erstellungs- & Pflegeprozess

  • senkt die Umsetzungskosten und beschleunigt die Fertigstellung der Schnittstelle,
  • reduziert das Betriebsausfallrisiko des Interfaces und
  • senkt das Sicherheitsrisiko ein Opfer von Hacking-Angriffen zu werden.

Systeme der Informationstechnik tauschen ausschließlich Daten miteinander aus. Der Transfer von Stoffen (z.B. Flüssigkeiten, Gasen, Festkörper) oder Energie ist dagegen zwischen mechanischen oder Cyber-physischen Systemen möglich.

Bei einer unidirektionalen Schnittstelle sendet nur ein System an das Andere. Die Kommunikation verläuft von Quell- zu Ziel-System in eine Richtung. Bei einer bidirektionalen Schnittstelle senden und empfangen beide Systeme. Die Kommunikation erfolgt in beide Richtungen, die System agieren jeweils als Quelle und Ziel.

Für das (daten-)sendende  IT-System ist die Schnittstelle eine Export-Schnittstelle, für das (daten-)empfangende IT-System eine Import-Schnittstelle. Neben die an seine Nachbaranwendungen bereitgestellten externen Schnittstellen besitzt ein System auch interne Schnittstellen, also Kommunikationsverbindungen zwischen seinen Komponenten (auch Modulen bzw. Subsystemen).

Fachliche Anforderungen

z.B. Nutzen, Zweck, Daten und Eigenschaften

Technische Realisierung

z.B. Dateiformat, Kommunikationsprotokoll und Netzwerkkonfiguration

Organisatorische Verantwortung

z.B. Zuständigkeiten, Wartungsfenster und Eskalation

Bei den wenigsten IT-Systemschnittstellen gilt das ‚Ganz oder gar nicht‘-Prinzip. Zerlegen Sie die Gesamtverbindung zwischen den beiden Systemen entlang der unterstützten Anwendungsfälle in disjunkte Einzelinteraktionen. Jede sollte einen fachlichen Mehrwert stiften. Entwickeln und veröffentlichen Sie anschließend nacheinander die Interaktionen. Schritt für Schritt wird Ihre Schnittstelle mächtiger.

Dr. Christopher Schulz

Welche fachlichen Details enthält die Schnittstellenbeschreibung?

Definieren Sie zuerst im fachlichen Teil einer Schnittstellenbeschreibung den Zweck und  Nutzen (das ‚Wozu‘), die zu übermittelnden Daten (das ‚Was‘) und Güteeigenschaften (das ‚Wie‘) je System-zu-System-Interaktion aus Sicht der Fachbereiche.

Eine IT-Systemschnittstelle bereitzustellen verursacht Kosten. Nicht nur einmalig für die Einrichtung, sondern auch wiederkehrend für Wartung und Weiterentwicklung. Bei Aktualisierung bzw. Änderung einer der beteiligten IT-Systeme bzw. der zu Grunde liegenden Schnittstellentechnologie muss oft auch die Schnittstelle angepasst werden.

Nicht jede Kommunikationsbeziehung zwischen zwei IT-Systemen muss immer vollständig automatisiert werden. Wägen Sie anhand der Datenmengengerüste und der manuellen Import- und Exportaufwände ab und notieren Sie den Business Case im Einleitungskapitel Ihrer Schnittstellenbeschreibung.

Definieren Sie zudem im fachlichen Teil, welche Daten die beteiligten IT-Systeme miteinander je Interaktion austauschen. Wir nutzen dazu eine Satzbeschreibung, d.h. eine Mapping-Tabelle, die zwischen Quelle und Ziel übersetzt. Auf Feldebene spezifizieren Sie fachlich je Interaktion…

  • Bezeichnung von Quell- und Zieldatenfeld (eindeutiger fachlicher Name)
  • Synonyme (z.B. Abkürzungen, Akronyme, inoffizielle Namen)
  • Kurzbeschreibung (z.B. Zweck, Bedeutung, Eigenschaften)
  • Strukturmerkmale (z.B. Minimal- und Maximallänge, Startzeichen, Konsistenzregeln)
  • Beispiele & Ausprägungsmöglichkeiten (z.B. Statusausprägungen, Wertebereich)
  • Abbildungsvorschrift zwischen Quelle und Ziel (z.B. 1:1 Transfer, Übersetzungsfunktion)

Gehen Sie dabei zielorientiert vor. Das empfangende IT-System bestimmt die zu betrachtende Datenfelder. Erörtern Sie zudem Fehlerbilder wie fehlerhafte oder fehlende Daten, falsche Wertebereiche, zu geringe/hohe Datenmengen, inkorrekte Kodierungen oder falsche Aufrufgeschwindigkeiten. Definieren Sie, wie das empfangende IT-System bei diesen Anomalien umgehen soll.

Erarbeiten Sie Güteeigenschaften an eine jede System-zu-System-Interaktion.

  • Zu welchem Zeitpunkt erfolgt der Datenaustausch (z.B. jeden Arbeitstag vs. Kalendertag, 1x wöchentlich)?
  • Welche Datenmengen muss die Verbindung leisten können (z.B. 10.000 Datensätze, 1 GByte)?
  • Muss die Kommunikation synchron oder asynchron erfolgen (z.B. kontinuierlich mit max. 1 Sekunde nach Änderung, 1x Batch-Lauf pro Nacht)?
  • Mit welcher Performanz soll der Datentransfer erfolgen (z.B. max. 5 Minuten)?
  • Welche Sicherheitsvorgaben muss die Schnittstelle genügen (z.B. verschlüsselter Datenaustausch, Datenspeicherung, Zugriffe)?

Bei Gesprächen mit den Fachbereichen visualisieren wir die Systemverbindung oft mittels einem UML Kontextdiagramm oder einem UML Kommunikationsdiagramm.

Oft involviert die Etablierung einer IT-Systemschnittstelle mehrere Fach- und IT-Bereiche. Stellen Sie durch ein offiziell beauftragtes Schnittstellenprojekt sicher, dass die erforderlichen Akteure von Beginn eingebunden sind und zeitliche Kapazitäten für die Umsetzung mitbringen.

Dr. Christopher Schulz

Schnittstellenbeschreibung

Das API Mandate von Amazon Gründer Jeff Bezos aus dem Jahr 2002 (Quelle: Nordic APIs)

Welche technischen Details enthält die Schnittstellenbeschreibung?

Auf Grundlage der fachlichen Definition spezifizieren Sie im technischen Teil Ihrer Schnittstellenbeschreibung die technologische Umsetzung der System-zu-System-Verbindung (das ‚Wie‘ und ‚Womit‘).

Präzisieren Sie aus Perspektive der IT…

  • die Datenfeldbezeichnung (z.B. Datentyp, Länge)
  • das Austauschdateiformat (z.B. DBF, TXT, CSV, XML)
  • das Kommunikationsprotokoll (z.B. HTTPS, SSH, FTP)
  • das Übermittlungskomponenten (z.B. Bussystem, Adapter)
  • den Schnittstellentyp (z.B. REST, SOAP, Rechner-Verbund-System, Message Queuing, Datenbank View)
  • den Programmcode (z.B. Exportskripte, Importroutinen samt Pfadnamen)
  • die Ressourcenzugänge (z.B. Server-IP-Adresse & Port, IT-System-Nutzer, Firewallfreischaltungen)
  • die Sicherheitsaspekte (z.B. Verschlüsselungstechnik, Identifizierung, Authentifizierung)

Einigen Sie sich, ob die Abbildungen der Datensätze im Quell- bzw. Ziel-System oder von einem separaten System (z.B. Schnittstellenadapter) übernommen wird.

Hilfreich im Dialog mit den IT-Entwicklern ist eine an das UML Komponentendiagramm angelehnte Darstellung. Aus unserer Sicht einfacher verständlich also die Lolipop-Notation ist der Einsatz von Datenflusspfeilen. Diese zeigen eindeutig die Kommunikationsrichtung an.

Verwenden Sie für die Schnittstellenbeschreibung eine standardisierte Dokumentenvorlage. Dieser Styleguide stellt die Vollständigkeit und Einheitlichkeit sicher und gibt beim Dokumentieren Orientierung. Ein Leser wiederum findet in einer bekannten Vorlage rasch die gesuchten Schnittstellendetails. Nehmen Sie die fertiggestellte Schnittstellenbeschreibung in den Schnittstellenkatalog auf.

Dr. Christopher Schulz

Welche organisatorischen Details enthält die Schnittstellenbeschreibung?

Im organisatorisch Teil Ihrer Schnittstellenbeschreibung halten Sie die zuständigen Personen für…

  • die beteiligten IT-Systeme,
  • die Schnittstellentechnologie

sowohl auf fachlicher als auch technischer Seite fest (das ‚Wer‘). Zudem vereinbaren Sie die Kommunikations- und Eskalationswege. Fixieren Sie ebenfalls den Umgang mit Wartungsfenstern und Downtimes sowie das Änderungsmanagement bei Updates und Upgrades.

Machen Sie aus der Beschreibung einen IT-Systemschnittstellenvertrag (auch Schnittstellenkontrakt oder Schnittstellenvereinbarung), indem Sie das Dokument von den Beteiligten offiziell abzeichnen lassen.

Sollte sich bei dem von ihnen verantworteten System oder der Schnittstellentechnologie etwas ändern bzw. zwingen äußere Faktoren zu Anpassungen (z.B. Hacking-Angriff), sind diese Akteure verpflichtet die Auswirkungen auf die Schnittstelle abzuleiten und notwendige Anpassungen zu veranlassen.

Schnittstellen zu IT-Systemen von Dienstleistern, Zulieferern und Partnerfirmen sollten Sie sehr sorgfältig beschreiben und die Verantwortlichkeiten explizit festzurren. Deklinieren Sie insbesondere mögliche externe Angriffsszenarien durch. Sobald beide Seiten – fachlich wie auch technisch – der Schnittstellenbeschreibung zugestimmt haben, fungiert das Dokument als Vertrag.

Dr. Christopher Schulz

Fazit

In digitalen Zeiten steigt die Zahl und die Bedeutung von IT-Systemen in Unternehmen. Ganz automatisch wachsen damit auch der Bedarf und Stellenwert von IT-Systemschnittstellen. Starteten IT-Initiativen für Unternehmen bis weit in die 1990er Jahren oft auf der grünen Wiese (Stichwort: Greenfield-Ansatz), sind IT-Projekte heute auch immer Integrationsprojekte.

Die Entwicklung einer Schnittstelle ist eine Investition. Kleine Verbindungen starten bei 5.000 bis 10.000 Euro, komplizierte Datenbrücken zu Kernsystemen wie CRM, ERP oder Finance liegen im sechsstelligen Investitionsrahmen.

Stellen Sie mittels einer durchdachten Schnittstellenbeschreibung sicher, dass die erforderliche Systemverbindung rasch entwickelt, effizient gewartet, einfach ausgebaut und systematisch geschützt werden kann. Etablieren Sie für Ihre IT-Systemlandschaft ein Schnittstellenmanagement, neudeutsch API Management. Für jedes IT-System besteht Klarheit über den Datenverkehr mit seinen Nachbarsystemen.

Ebenfalls interessant 

Leseempfehlungen

Sie möchten Ihre IT-Systemschnittstellen professionell managen?
Gerne unterstützen wir Sie!

Dr. Christopher Schulz

Dr. Christopher Schulz

Business Analyst, Enterprise Architect & Projektmanager

c.schulz@palladio-consulting.de
+49 (0)176 / 493 478 89

Bitte akzeptieren Sie unsere Datenschutzerklärung.

4 + 3 =