Best Practices für Softwaresystemschnittstellen
Schnittstellen überwinden die fachlichen, technischen und organisatorischen Grenzen zwischen Softwaresystemen. Auf dem Weg von der Konzeption bis zum produktiven Einsatz kann jedoch eine Menge schiefgehen.
Schnittstellen zwischen Softwaresystemen bilden die Nervenbahnen jedes Systemverbunds. Nur mit ihnen ist eine systemübergreifende Automatisierung von Prozessen möglich. Schnittstellen sind jedoch fachlich, technisch und organisatorisch komplex. Daher ist das Risiko von Fehlern, Missverständnissen und zeitlichen Problemen auf dem Weg von der Konzeption bis zum produktiven Betrieb groß. Mit grundlegenden Maßnahmen, die dieser Artikel darstellt, kann man diese Risiken jedoch erheblich mindern. Die beschriebenen Maßnahmen sind in unterschiedlichen Vorgehenskontexten und für verschiedene Arten von Systemen anwendbar.
Softwaresysteme und ihre Schnittstellen
Jedes System dient einem bestimmten fachlichen Zweck und ist logisch und technisch von anderen Systemen abgegrenzt. Zudem besitzt es eine organisatorische Zugehörigkeit, denn für seine Entwicklung und seinen Einsatz sind bestimmte Personen oder organisatorische Einheiten zuständig und verantwortlich. Ob es sich bei dem System konkret um einen Monolithen, einen oder mehrere Microservices oder etwas anderes handelt, ist hier unerheblich – entscheidend ist, dass das System von anderen Systemen abgegrenzt ist. Schnittstellen überwinden die fachlichen, technischen und organisatorischen Grenzen zwischen Systemen. Dadurch können die Schnittstellenpartner, also die beteiligten Systeme, Informationen austauschen und einen gemeinsamen Zweck erfüllen.