Wichtiger Baustein für Digital Workspaces

Remote Work braucht Collaboration


Fortsetzung des Artikels von Teil 1

Daten zwischen Anwendungen austauschen

Voraussetzung für einen problemlosen Datenaustausch zwischen Applikationen und deren gemeinsame Nutzung ist die Interoperabilität, die man leider nur selten voraussetzen kann. Selbst Anwendungen ein und desselben Herstellers können hier Probleme bereiten. Ursache sind häufig separate Entwicklerteams, unterschiedliche Datenformate oder proprietäre Schnittstellen (APIs). Diese sind ein unnötiger Kostenfaktor und ständiges Ärgernis.

Abhilfe schaffen kann hier nur Open Source­ mit seinen offenen APIs. Trotzdem bleibt die Herausforderung der Anpassung an veränderte oder neue Schnittstellen bestehen. Bei der Lösung dieses Problems hilft Swagger. Diese Schnittstellen-Beschreibungssprache (Interface Description Language) beschreibt RESTful APIs mit dem unter anderem von NoSQL-Datenbanken bekannten Datenformat JSON
(JavaScript Object Notation) und erkennt gegebenenfalls Abweichungen.

Der Datenaustausch zwischen Anwendungen sollte über verbindliche Standards erfolgen, darunter SQL, NoSQL, WebRTC oder XMPP (Extensible Messaging and Presence Protocol). XMPP ist ein offenes, auf XML basierendes Kommunikationsprotokoll für Messaging, Präsenzinformationen und das Management von Kontaktlisten. Es ermöglicht den Austausch strukturierter Daten quasi in Echtzeit. Oberstes Ziel für alle Anwendungen ist ein redundanzfreier zentraler Dokumentenspeicher mit unternehmensweitem Indexing und sauberer Schnittstellendokumentation, in dem die Daten sämtlicher Applikationen nur ein einziges Mal in indizierter Form vorliegen und sich entsprechend leicht finden und nutzen lassen.

Intuitive Bedienung

Der Einsatz von Collaboration-Tools sollte für die Belegschaft so intuitiv wie möglich sein. Usability Labs spielen dabei aber keine große Rolle mehr: Sie sind zu aufwendig, zu zeitraubend und zu dürftig in ihren Ergebnissen und deshalb nicht mehr zeitgemäß. Die Musik spielt mittlerweile bei der privaten Nutzung von Social-Media-Netzwerken und Gaming-Portalen. Sie färben in Form von Best Practices zunehmend auf Tools für den Unternehmenseinsatz ab. Es gibt keinen vernünftigen Grund mehr dafür, professionelle Anwendungen schwerer verständlich und bedienbar zu gestalten als die Nutzung von Messaging-Apps oder Online-Spielen in der Freizeit. Das hat nicht nur Folgen für die Oberflächengestaltung und Bedienlogik, sondern auch für die Geschwindigkeit, in der ein Softwareanbieter Veränderungen und Adaptionen umsetzen muss.

Erste Voraussetzung, um damit Schritt halten zu können, ist die strikte Trennung von Frontend und Backend. Vorbild dafür ist ein Tiering-Modell mit verschiedenen Layern für verbundene Funktionsebenen, wie man es beispielsweise von Datenbank-Management-Plattformen kennt. Bei der Entwicklung der Frontend-Clients helfen modulare Frameworks wie Angular oder React. Funktional sind sie ähnlich, durch die Nähe von React zu Facebook ist es für viele Open-Source-Entwicklungsteams jedoch nicht erste Wahl. Mit einem Framework wie Angular ist es möglich, aus einem einzigen Source Code plattformübergreifend mehrere Clients parallel zu entwickeln (hybride App-Entwicklung): einen Web-Client für alle gängigen Browser, einen Desktop-Client für Linux, macOS und Windows sowie Apps für Android und iOS. Dies verkürzt die Entwicklungszeit deutlich – und damit gleichzeitig die Zeit für die Markteinführung. Für Anwender ist diese Client-Unabhängigkeit die Voraussetzung für den barrierefreien Zugang zum Unternehmen, sei es von zu Hause oder unterwegs. Die Modularität der Frameworks hat zudem den Vorteil der Whitelabeling-Option, bei dem ein Anbieter die sichtbare Oberfläche mit minimalem Aufwand individuell, etwa im Corporate Design eines Konzerns oder eines Service-Providers, gestalten kann.

Der kritischste Punkt für einen Kommunikations- und Collaboration-Stack ist zweifellos das Thema Sicherheit. Dieses ist für einen einzigen Hersteller allein kaum zu stemmen. Die Arbeitsteilung in der Open-Source-Community erleichtert hier die Aufgabe, die erwähnten, von vielen Entwicklern genutzten Frameworks immer wieder auf Schwachstellen hin abzuklopfen und Patches umgehend verfügbar zu machen. Man sollte sich jedoch im Klaren darüber sein, dass selbst mit dieser Unterstützung die Security-Herausforderungen bei der Softwareentwicklung eine Herkulesaufgabe sind. Die größte Aufgabe ist daher die weitere Automatisierung von Tests und Fehleranalysen. Open-Source-Tools wie Sentry oder Nightwatch können helfen, den Anteil der verbleibenden zwingend notwendigen manuellen Test auf weniger als zehn Prozent zu drücken.

Trotzdem ist die Problematik alleine mit internen Prozessen und Strukturen kaum zu bewältigen. Daher ist es sinnvoll und künftig wohl immer wichtiger, mit spezialisierten externen Security-Dienstleistern zusammenzuarbeiten und deren Testverfahren und Auditierungsangebote zu nutzen.

Andrea Wörrlein ist Verwaltungsrätin bei VNC in der Schweiz sowie Geschäftsführerin bei VNC in Deutschland.


  1. Remote Work braucht Collaboration
  2. Daten zwischen Anwendungen austauschen

Verwandte Artikel

VNC

Collaboration