Einer unserer wichtigsten Erfolgsfaktoren ist unser umfassender Beratungsansatz und unser Weitblick über komplexe Systemlandschaften. Wir vermeiden Insellösungen und denken Prozesse und Datenflüsse immer anwendungs- und systemübergreifend.
Um Softwarelösungen miteinander verbinden zu können, sind Schnittstellen das A und O. In den meisten modernen Projekten setzen wir REST-APIs oder WebSocket-Verbindungen ein.
REST API
REST Schnittstellen sind zustandslos (stateless) und unidirektional. Basierend auf dem HTTP-Protokoll werden Anfragen oder Befehle an die Schnittstelle gesendet. Anschließend erhält man, leicht zeitversetzt, das von der Gegenstelle bereitgestellte Ergebnis z.B. in Form einer JSON-Response.
REST eignet sich für einzelne, meist durch den Benutzer verursachte, Anfragen.
WebSocket
WebSocket Verbindungen sind stets statusbehaftet. Über TCP und die explizite Verbindung über IP-Adressen und Ports wird eine Live-Verbindung zwischen dem Server und den Clients hergestellt. Diese Verbindung bleibt solange aktiv, bis sie geschlossen wird. Die Kommunikation verläuft stets bidirektional und in Echtzeit. Ein typisches Einsatzszenario für WebSocket sind Chats und Push Notifications.
Neben externer Schnittstellen für die Anbindung fremder Systeme, nutzen wir REST auch für die Kommunikation unserer Client-Server Projekte. So kommuniziert unser Angular-Frontend mit unserem Java-Backend ausschließlich über eigens entwickelte REST APIs. Selbstverständlich sichern wir alle Datenverbindungen durch API-Keys, JWT-Tokens oder Zertifikate ab, um Fremdzugriff zu verhindern.
Der Entwicklung von Schnittstellen geht immer eine konkrete Planung und tiefe Prüfung der Anforderung voraus. So achten wir stets darauf, so viele Daten wie nötig und so wenig Daten wie möglich zu übertragen, um die Pakete klein zu halten, die Performance zu optimieren und Ladezeiten zu minimieren.
Darüber hinaus sollten Schnittstellen bestmöglich dokumentiert sein. Wir nutzen Swagger und openAPI, um unsere Webservices zu beschreiben und zu visualisieren. Durch den Einsatz dieser weit verbreiteten Standards stellen wir auch Dritten gegenüber diese Schnittstellendefinition einfach und sicher zur Verfügung. So ermöglichen wir es unseren Partnern und Dienstleistern, sich schnell und unkompliziert einen Überblick über die von uns bereitgestellten Services zu verschaffen und passgenau anzubinden.



Legacy-Systeme
Viele deutschen mittelständischen Unternehmen stehen erst am Anfang der Digitalisierung und planen den Umzug ihrer Daten aus Altsystemen in moderne Softwarelösungen oder Cloud Systeme. Die Entwickler von Legacy-Lösungen stehen oftmals nicht mehr zur Verfügung, die Software wird nicht mehr supportet, geschweige denn mit Updates versorgt. Da es bei solchen Lösungen oftmals keine Web-Schnittstellen gibt, sind wir gezwungen andere Wege für die Verbindung zu finden.
Über XML- oder CSV-Exporte und direkte Zugriffe auf Datenbanken binden wir, sofern es wirtschaftlich und architektonisch sinnvoll ist, bestehende Altsysteme an. Wir entwickeln automatisierte Import-Scripte, die Daten auslesen und in eine für moderne Technologien geeignete Form bringen.
Wir beraten Sie gern, wenn Sie Ihre bestehende Softwarelandschaft erweitern oder Altsysteme ablösen möchten. Planen Sie die Verbindung von Insellösungen? Dann sind wir gern Ihr Partner für Architektur und Entwicklung geeigneter Middleware und/oder Datenbus-Systeme.