IoT App Entwicklung – Vorgehen, Besonderheiten, Kosten (Interview Teil 2/2)
Mobile Apps sind fรผr IoT-Projekte hรคufig eine Notwendigkeit. Doch wie genau geht man bei der IoT App Entwicklung vor und welche Spezifikationen gibt es in Hinblick auf die verschiedenen IoT-Komponenten?
Unser App-Experte Christian Oberdรถrfer gibt uns in Teil 2/2 unserer Interview-Serie mit ihm Antworten auf diese Fragen. Teil 1 zum Thema Native vs. hybride Apps kรถnnt ihr hier lesen.
Inhaltsverzeichnis
- Wie geht man bei der App Entwicklung vor?
- Und wie lรคuft das bei der IoT App Entwicklung ab?
- Wann ist eine App sinnvoll?
- Fรผr welche Branche oder Use Cases ist eine App wichtig?
- Gibt es in Hinblick auf die IoT App Entwicklung einen Unterschied, ob fรผr Android oder iOS entwickelt wird?
- Wie hoch sind die Kosten fรผr die IoT App Entwicklung?
- Du brauchst Unterstรผtzung bei der Entwicklung deiner IoT App?
- Gefรคllt mir:
Wie geht man bei der App Entwicklung vor?
Christian: Bevor eine App entwickelt wird, besteht in der Regel bereits ein System, das auf dem Desktop oder einer Webseite lรคuft. Gleichzeitig gibt es bereits eine Datenbank, auf die man zugreifen kann, oder einen Service, von dem die Informationen abgerufen werden kรถnnen.
Bei vielen klassischen Apps – wie wir sie von unserer privaten Nutzung kennen – erfolgt die Kommunikation รผber eine Web-API. Das ist beispielsweise bei Online-Shops oder Messenger-Diensten der Fall. Zum Standardprozess gehรถrt die Entwicklung des User Interfaces und der Datenabfrage.
Wenn also das Konzept fรผr eine neue App geplant wird, werden zunรคchst die Anforderungen erarbeitet. Muss die App ein spezielles User Interface haben? Soll die App eine spezielle Kommunikation mit anderen Gerรคten erlauben? Will man ein Berechtigungssystem haben? Soll es Verschlรผsselung geben?
Im nรคchsten Schritt werden das zur Verfรผgung stehende Budget und der Aufwand ermittelt. Prinzipiell unterscheidet sich der Entwicklungsaufwand fรผr eine mobile App nicht vom Aufwand fรผr eine Desktop- oder Web-App. Die Software muss lediglich fรผr eine andere Plattform angepasst werden, fรผr die ggf. andere Programmiersprachen und Bibliotheken gebraucht werden.
Und wie lรคuft das bei der IoT App Entwicklung ab?
Christian: Bei der IoT App Entwicklung kommen weitere Aspekte und damit auch Herausforderungen hinzu. Der Grund dafรผr ist, dass hier Gerรคte direkt mit dem Smartphone kommunizieren. Es existiert eine Vielzahl an Technologien, Kommunikationsprotokollen und Interaktionen mit der realen Welt. Hardware-spezifische Aspekte mรผssen ebenfalls mit berรผcksichtigt werden. In der Regel folgt dann ein Proof of Concept um zu testen, ob die App รผberhaupt mit der Hardware wie geplant zusammenarbeiten kann.
Sehen wir uns ein paar Beispiele an:
- Beispiel NFC (Near Field Communication):
NFC ist ein รbertragungsstandard zum kontaktlosen Austausch von Daten, der bei IoT-Lรถsungen hรคufig genutzt wird. Dabei befindet sich ein Chip beispielsweise auf einem Gerรคt oder auf einer Ware, den wir direkt mit unserem Smartphone auslesen mรถchten. Bei der IoT App Entwicklung muss auch berรผcksichtigt werden, dass nicht alle Smartphones mit allen NFC-Chips kompatibel sind.
Im Prozess sieht das dann wie folgt aus: Wir mรผssen zunรคchst einmal das Protokoll und die Eigenheiten des NFC-Chips verstehen. In einem zweiten Schritt wird dann der Datenaustausch mit dem Chip programmiert.
- Beispiel Bluetooth:
Eine weitere Technologie, die fรผr viele Produkte gefragt ist, ist Bluetooth. Dabei soll eine Kommunikation รผber eine Entfernung von mehreren Metern zwischen Smartphone und IoT-Gerรคt hergestellt werden. Auch hier muss – in Absprache mit der Hardware-Entwicklung – berรผcksichtigt werden, welches Kommunikationsprotokoll genutzt wird und um welche Bluetooth-Variante es sich handelt.
- Beispiel Kamera:
Beim Auslesen von QR- oder Barcodes wird die Kamera des Smartphones verwendet. Dieser Prozess erfordert unter Umstรคnden eine direkte Kommunikation mit dem Kameramodul.
- Beispiel USB:
Es ist auch mรถglich, Microcomputer รผber USB direkt mit dem Smartphone zu verbinden. Hier muss meist ein eigenes Kommunikationsprotokoll entwickelt werden.
Wann ist eine App sinnvoll?
Christian: Eine mobile App wird immer dann benรถtigt, wenn die User Experience – also das Erlebnis fรผr die Nutzer – an erster Stelle steht oder wenn Anforderungen bestehen, die รผber eine Webseite nicht umsetzbar sind.
Bei IoT-Projekten ist dieser zweite Punkt besonders wichtig: Die Kommunikation mit Hardware-Modulen per NFC, Bluetooth oder USB ist รผber eine Website nicht mรถglich und erfordert stets die Entwicklung einer speziellen mobilen App.
Projekt-Beispiel โSmart Scaleโ Wir haben eine smarte Waage entwickelt – die Smart Scale – die den Fรผllstand von Gasflaschen misst. Diese IoT Waage sammelt Daten, die in zeitlichen Abstรคnden in eine Datenbank geschrieben werden. Mit Hilfe von Anwendungen wie Grafana kรถnnen die Daten fรผr den Nutzer grafisch dargestellt und genutzt werden (z.B. der Fรผllstand der Gasflasche). Bei der App Entwicklung wird eine solche Anwendung transformiert und ein neues User Interface fรผr das Mobilgerรคt entwickelt. Die Herausforderung ist dabei, die Daten in Echtzeit auf einer entsprechenden Bildschirmgrรถรe darzustellen. |
Fรผr welche Branche oder Use Cases ist eine App wichtig?
Christian: Abgesehen von den Hardware-Anforderungen ist einer mobile App immer dann sinnvoll, wenn dezentral oder offline gearbeitet wird. Das gilt auch dann, wenn die Daten auf dem Mobilgerรคt bleiben sollen oder wenn kein flรคchendeckendes Internet verfรผgbar ist.
Ein IoT Use Case, bei dem die Entwicklung und Nutzung einer App wichtig ist, ist im Bereich Warehouse Systems. Dort werden Mobilgerรคte genutzt, um Informationen zu sammeln oder Codes zu scannen.
Gibt es in Hinblick auf die IoT App Entwicklung einen Unterschied, ob fรผr Android oder iOS entwickelt wird?
Christian: Es gibt schon Unterschiede, was gleichzeitig auch eine weitere Schwierigkeit darstellt. Denn nicht alles ist technisch umsetzbar.
Es gibt beispielsweise Sensoren, die auf dem iPhone nicht zugreifbar sind. So erlaubt Apple nicht die Nutzung aller Bibliotheken und aller Verbindungsmรถglichkeiten. Auf einige Features muss dann verzichtet werden – oder man entwickelt nur fรผr Android.
Generell ist Android gegenรผber iOS technologisch immer etwas voraus, beispielsweise mit Mobile Payment, NFC-Tags oder speziellen Bluetooth-Protokollen. Mit Android kann man sofort ein Gerรคt per Bluetooth oder USB verbinden und damit kommunizieren. Das ist bei iOS viel schwieriger. Auch NFC-Tags kann man beispielsweise erst seit kurzem mit dem iPhone lesen und beschreiben.
Android bietet zwar mehr Mรถglichkeiten, dafรผr gibt es aber auch viel mehr verschiedene Gerรคte, verschiedene Hersteller oder No-Name-Produkte. Das fรผhrt dann wieder zu einem hรถheren Testaufwand, wenn man sichergehen will, dass die App auf allen Gerรคten funktioniert.
Bei Apple muss man dagegen mit wesentlich hรถheren Kosten fรผr den Benutzer rechnen. Was nicht zuletzt daran liegt, dass Apple sich einen viel hรถheren Design-Anspruch gesetzt hat. Das Erlebnis fรผr den Benutzer ist immer sehr รคhnlich, es gibt wenige รberraschungen, wie eine App funktioniert. Und auch die Leistung der Smartphones ist in der Regel deutlich hรถher.
Ein grundsรคtzliches Fachwissen รผber die verfรผgbaren Kommunikationsprotokolle, deren Sicherheit und wie das Smartphone mit der Auรenwelt kommuniziert, ist prinzipiell von groรer Bedeutung. Im Idealfall bringt ein Entwickler Wissen รผber beide Betriebssysteme- Android und iOS – mit. Letztendlich konzentriert sich der gesamte Markt auf diese beiden Plattformen, fรผr die immer parallel entwickelt werden muss.
Wie hoch sind die Kosten fรผr die IoT App Entwicklung?
Christian: Vor allem im Bereich IoT App Entwicklung werden die Kosten und der Aufwand hรคufig unterschรคtzt, weil Kenntnisse und der รberblick รผber den gesamten Produktionsprozess und die Entwicklung fehlen.
Was fรผr viele simpel scheint, braucht aber Zeit. Eine App muss auf vielen Smartphones getestet werden, sie muss auf allen Modellen und Gerรคtegrรถรen flรผssig funktionieren. Hinzu kommt der Wartungsaufwand, denn es kommen stetig neue Modelle und Versionen der Betriebssysteme hinzu.
Eine genaue Summe lรคsst sich schwer bemessen. Es gibt Unternehmen, die fรผr wenig Geld Apps am Flieรband produzieren. Dabei wird dann hรคufig an Features gespart, was zu Abstrichen bei der Qualitรคt und beim Nutzererlebnis fรผhrt.
Bei der IoT App Entwicklung kann eine App preislich durchaus im sechsstelligen Bereich liegen, weil der Aufwand einfach viel grรถรer ist.
In Teil 1 unseres Interviews mit Christian geht es um den Unterschied und die Vor- und Nachteile von nativen und hybriden Apps bei IoT-Projekten: Interview Teil 1: Native vs. hybride Apps