
Funktionale Apps sind üblicherweise plattformübergreifend und das sind im Markt der mobilen Betriebssysteme derzeit iOS (iPhone/iPad) und Android. Obwohl beide Plattformen mit ihrer Nähe zu Unix eine (dennoch ferne) Verwandtschaft aufweisen, ist die Entwicklung von plattformübergreifenden Anwendungen mit den plattformeigenen Tools komplex und vor allem nicht sehr effizient.
Eine elegante Möglichkeit, um dieses Problem zu lösen, sind Entwicklungsplattformen, die Cross-Plattform-Applikationen ermöglichen. Auf diese Weise kann ein einheitlicher Programmcode geschrieben werden, der dann durch die Entwicklungsplattform zu nativen Apps für die jeweiligen Betriebssysteme kompiliert wird. Eine solche Entwicklungsplattform ist Xamarin, seit 2016 eine Tochtergesellschaft von Microsoft.
Das Entwicklungsteam von Xamarin ist in der Programmier-Community nicht unbekannt. Im Jahr 2000 machten sich die Entwickler eines Unternehmens namens Ximian Gedanken, das im gleichen Jahr von Microsoft vorgestellte .NET-Framework in Linux umzusetzen. Ergebnis war “Mono”, das ein Jahr später als Open-Source-Projekt vorgestellt wurde.
Im Jahr 2011 starteten die ehemaligen Mono-Entwickler das Unternehmen namens Xamarin, um auf dem aufkommenden Markt der mobilen Betriebssysteme eine plattformübergreifende Entwicklungsumgebung zu schaffen. Das gleichnamige, ein Jahr später vorgestellte Produkt ermöglichte den Einsatz der Programmiersprache C# zur Entwicklung von plattformübergreifenden Anwendungen für Windows, aber auch für MacOS. Ab der Version 2.0, die 2013 vorgestellt wurde, kamen als Zielplattformen die mobilen Betriebssysteme iOS und Android dazu, so dass nun aus Visual Studio heraus Programme für MacOS, iOS und Android entwickelt werden konnten.
Inzwischen sind die Xamarin-Tools – eben durch den Kauf von Microsoft – direkt in Visual Studio integriert und ermöglichen eine höchst effiziente Arbeitsweise bei der Entwicklung von Apps. Der Entwicklungsaufwand wird auf einen zentralen Programmcode beschränkt, so dass auch Programm-Releases weitgehend gleichzeitig für alle entsprechenden Betriebssystemplattformen veröffentlicht werden können. Mit der Möglichkeit zur Erstellung einheitlicher Benutzeroberflächen – ebenfalls fest in Xamarin integriert – kann darüber hinaus die Nutzererfahrung deutlich verbessert werden, weil individuelle Anpassungen für einzelne Betriebssysteme weitgehend entfallen.
Für den Kunden ergeben sich konkrete Kostenvorteile – Apps sind günstiger in der Entwicklung und in der Wartung.

Noch vor wenigen Jahren waren vernetzte Geräte eine Seltenheit und dementsprechend wurden sie auch beworben. Der vernetzte Fernseher hatte üblicherweise einen erweiterten Webbrowser und konnte per Knopfdruck die gängigen Mediatheken einblenden und ruckelte dann heraufskalierte Videos in Briefmarkengröße herunter – mehr schlecht als recht. Aber immerhin vernetzt. Und auch für einer der ersten vernetzten Geräte überhaupt, der im Jahre 1999 vorgestellten Waschmaschine “Margherita 2000” des italienischen Hausgeräteherstellers Merloni (heute Indesit) galt, dass sie via Internet fernkonfigurierbar war. Was die Wäsche in der Maschine macht und wie sie überhaupt in die Maschine kommt, war unklar und im Hype auch erst einmal unwichtig.
Allein dieses Jahr schätzen Fachleute, dass rund 11 Milliarden Geräte IoT-fähig sein werden, also an der Idee des “Internet of Things” aktiv teilhaben. Vom vernetzten Leuchtmittel bis hin zur kompletten Haussteuerung ist hier inzwischen alles möglich und beschränkt sich auch schon lange nicht mehr auf das einfache Ein- und Ausschalten eines Gerätes. Für das Jahr 2020 rechnet eine Statistik des Datenanalysten Statista mit 20 Milliarden Geräten schon mit fast dem Doppelten.
Für Hersteller von elektronischen Geräten – und zwar egal, mit welchem Einsatzzweck – bedeutet das vor allem ein gewaltiger Umschwung in der Art und Weise der Geräteentwicklung und auch im Verständnis der Geschäftsprozesse. Steuer- und Vernetzungssoftware kann immer weniger einfach so nachträglich aufgesetzt werden, sondern muss schon frühzeitig in der Entwicklung implementiert werden, um Geräteeigenschaften überhaupt vernetzbar zu machen. Und dann muss das alles auch auf Anhieb sitzen, denn Konsumenten sind immer weniger bereit, schlecht funktionierende Software benutzen zu müssen. Was sich nicht auf Anhieb in die hauseigene Infrastruktur einbinden lässt, wird immer weniger gekauft.
Die Herausforderung ist daher, von Anfang an Lösungsanbieter ins Spiel zu bringen, die in der Lage sind, sich in die Denkweise des Herstellers und in die Idee des Produktes hineinzudenken und dann auch entsprechende Lösungen liefern können. ITM hat Lösungen entwickelt, mit denen IoT-Geräte nahtlos zu Backend-Lösungen verknüpft werden können. Auf diesen Weg lassen sich Geräte und Prozesse vollständig vernetzen und digitalisieren.

Anbieter von großen Cloud-Systemen und/oder vielen Microservices haben in der Regel sehr große und umfangreiche API-Schnittstellen, die sich für eigene Web-Anwendungen einsetzen lassen. So umfangreich, dass das Anbieten von einzelnen API-Schnittstellen inzwischen viel zu umständlich ist und spätestens bei der Skalierung Probleme verursacht. Aber auch der Einsatz von verschiedenen API-Versionen stellt sich als ein Problem dar, da letztlich die Adressen der API-Schnittstelle geändert werden müssen, um neue Versionen einer API-Schnittstelle bereitzustellen.
Die Lösung zu diesem Problem sind API Gateways, die vom Prinzip her wie ein Proxy funktionieren. Sie sind der zentrale Zugang für umfangreiche API-Sammlungen eines Anbieters und übernehmen im Backend die Weiterleitung der API-Anfragen an die entsprechenden Zielsysteme. Auf diese Weise können API-Anbieter die Zugriffsmöglichkeiten dramatisch erhöhen und praktisch unendlich skalieren, aber auch – und das ist der Clou – problemlos mehrere API-Versionen über das API Gateway anbieten. Entsprechend versionierte Zugriffe auf eine API ordnet dann das API Gateway selbstständig zu.
Gerade bei Microservices wie beispielsweise Amazon AWS oder IBM Watson machen API Gateways überhaupt erst den sinnvollen und vor allem agilen Einsatz von API-Schnittstellen möglich, denn erst so ist es den Anbietern möglich, sehr schnell und zentral neue Dienstleistungen anzubieten und weiterzuentwickeln.
Und letztlich ist auch auf Seiten unserer Kunden ein deutliches Plus zu erkennen, denn mit dem Einsatz von API Gateways können wir den Einsatz von Microservices exakt programmieren, jederzeit erweitern und sehr flexibel auf mögliche Zugriffsspitzen reagieren.

Stellen Sie sich eine App vor, mit der ein Nutzer eine Verbindung zu einem Kundendienst aufnehmen kann. Diese App bietet, wie viele solcher Apps heutzutage, auch eine Videochat-Möglichkeit, um das Gespräch von “Face to Face” führen zu können. Wie wäre es nun, wenn vor dem eigentlichen Gespräch die App bewerten könnte, ob der Anrufer gut oder überaus schlecht gelaunt ist? Mit einer funktionierenden CRM- bzw. ERP-Lösung wäre diese kleine Information schon so wertvoll, da sehr kurzfristig entschieden werden könnte, ob der Anruf in den First Level Support geht oder, zusammen mit anderen Bewertungsgrundlagen, gleich in den Second Level.
Zugegeben, ein noch nicht realisiertes Beispiel – aber keinesfalls ein rein fiktives. Schon heute bieten einige Dienstleister von Microservices entsprechende Services an, die Stimmung einer Person anhand seiner Gesichtszüge in Quasi-Echtzeit zu bewerten und eine Einschätzung in Prozentwerten darüber zu geben, ob der Anrufer eine gute Stimmung ausstrahlt, in Sorgen ist, möglicherweise trauert, gelangweilt wirkt oder “geladen” ist. Das sind selbstverständlich nur ungefähre Werte, die aber zum einen immer genauer werden und zum anderen auch heute schon eine sehr gute Grundlagemöglichkeit für eine perfekt abstimmbare Kundenbeziehung bieten.
Microservices sind Dienste, die sehr umfangreiche Analysemöglichkeiten selbst für kleine Anwendungen bieten und die sehr kostengünstig und effizient eingebunden werden können. Ob es nun eine Gemütslagenerkennung ist oder Erkennungsmöglichkeiten für gesprochene Sprache oder geschriebenen Text – die hier implementierten Technologien der künstlichen Intelligenz (KI) stehen mit Microservices Anwendern und Entwicklern zur Verfügung und bereichern Apps und Anwendungen nahtlos mit sehr anschaulichen Funktionen.
Wir implementieren Microservices verschiedener Anbieter wie beispielsweise IBM Watson und Amazon Web Services ein und ergänzen Ihre Anwendungen und Apps um hochintelligente Funktionen.
Neueste Kommentare