Schnittstelle für mobile Geräte

Smartphones können Kunden und Mitarbeiter im Außendienst direkt mit den Kernfunktionen eines Unternehmens verbinden. Die Möglichkeiten gehen weit über das Bestellen von Waren und die Abfrage von Informationen hinaus. An Ort und Stelle können Dienstleistungen abgerufen, Feedback gegeben, Preise verglichen und Fotos übermittelt werden. Meist existiert die Funktionalität, die man auch mobil anbieten möchte, bereits auf internen Unix, PC oder Mainframe Systemen.

Die Schnittstellen dieser Systeme sind vielfältig: Web Services, Java EJBs über RMI, COBRA oder Großrechner Copy Strukturen. Oft sind diese Schnittstellen zu breit und technisch nicht für einen Zugriff von mobilen Geräten geeignet. Die schlanke Hardware, die Akkukapazitäten sowie die Betriebssysteme der mobilen Geräte limitieren die für die Kommunikation zur Verfügung stehende Technologien. Am meisten verwendet wird daher der auf dem HTTP Protokoll basierende REST Ansatz, sowie das von JavaScript inspirierte JSON Format. Daneben gibt es binäre Protokolle wie z. B. Protobuf von Google oder Thrift von Facebook.

Eine Besonderheit von mobilen Geräten gegenüber Web Anwendungen1 sind Push Notifications, die sowohl von Android als auch von iOS unterstützt werden. Die Push Notifications durchbrechen die Rollenverteilung des Clients und Server Paradigmas. Das Smartphone ist dabei nicht ein aktiver Client, der Daten von Server abfragt. Das Backend übernimmt bei Push Nachrichten die aktive Rolle und sendet unaufgefordert Nachrichten an das Gerät.

Es gibt mehrere Möglichkeiten, um eine für Smartphones und Tablets geeignete Schnittstelle bereit zu stellen:

  • Über eine zusätzliche Schnittstelle speziell für Apps
  • Einsatz eines Wrappers oder Adapters
  • Vorschalten eines Enterprise Service Buses
  • Über ein API Gateway

Über das Internet veröffentlichte Schnittstellen stellen immer auch einen Angriffspunkt für Attacken aus dem Internet dar.


1.) Mit Web Sockets und Long Polling bekommen wir die bidirektionale Kommunikation auch zunehmend bei Web Seiten.