Over-the-Air-Updates: Eigenentwicklung oder Standardlösung

Aufgrund des voranschreitenden Fokus auf IT-Sicherheit im IoT-Sektor entwickeln sich Over-the-Air-Updates zu einer wichtigen Kernfunktion für IoT-Geräte. Wie auch bei vielen anderen Themen stellt sicher hier auch die Frage: Eigenentwicklung oder Standardlösung? Die richtige Wahl kann sich dabei sowohl auf die Entwicklung des Produktes auswirken als aus finanzieller und operativer Sicht erhebliche Auswirkungen haben.

In diesem Artikel werden zuerst knapp Aspekte der Entwicklung und des operativen Betriebes verglichen und im Anschluss eine Kostenanalyse über beide Varianten erstellt. Dabei wird der Fokus sowohl auf die einmaligen Fixkosten als auch auf die variablen Kosten skalieren mit Betriebsjahren und Geräten gelegt.

Unterschiede aus technischer Sicht

Aus technischer Sicht einer der wichtigsten Punkte ist der Funktionsumfang der OTA-Lösung (OTA = „Over-the-Air“). Für die Weiterentwicklung der Software ist vor allem relevant, ob die Änderungen auf bereits ausgelieferte Zielgeräte nachgeliefert werden können. Für reine Software-Anpassungen ist dies meist kein Problem. Da bei IoT-Geräten allerdings in den meisten Fällen ein komplettes Gerät ausgeliefert wird muss auch Konfiguration außerhalb der Anwendung verwaltet werden. Im einfachsten Fall muss z.B. ein kompromittierter SSH-Schlüssel ausgetauscht werden, in (seltenen) komplexeren Fällen müssen neue Hardware-Schnittstellen aktiviert werden, oder andere Änderungen an der Betriebssystem-Konfiguration vorgenommen werden.

Im operativen Betrieb geht es dann vor allem um die Einsicht in den Zustand eines Gerätes und die effiziente Verwaltung von einer Vielzahl von Geräten. Zum Beispiel müssen folgende Szenarien abgedeckt sein:

  • Eine Softwareversion enthält eine kritische Sicherheitslücke. Es muss möglichst schnell festgestellt werden, welche Geräte diese Version installiert haben. Diese Geräte müssen außerdem sofort auf eine neue Version aktualisiert werden.
  • Bei einer neu veröffentlichten Version ist ein Fehler passiert. Diese muss sofort von allen Geräten heruntergenommen werden.
  • Ein Kunde hat ein Problem mit dem Betrieb seines Gerätes. Die Fehlersituation ist noch nicht bekannt und muss unbedingt gelöst werden. In dieser Situation ist es wichtig, genau zu wissen, welche Software-Version auf dem betroffenen Gerät im Einsatz ist, und wann welche Änderungen vorgenommen wurden.

Sowohl aus Sicht der Entwicklung als auch des operativen Betriebs gibt es einige wichtige Anforderungen, die auf jeden Fall unterstütz werden müssen. Bei eigens entwickelten OTA-Lösungen ist es wichtig, diese Problemstellungen von Anfang an einzubeziehen und trotz des Mehraufwandes Lösungen zu suchen. Bei Standardlösungen sind diese Problemstellungen in den meisten Fällen bereits über die OTA-Software gelöst und benötigen daher keine weiteren Überlegungen.

Wartung der OTA-Lösung

Auch die OTA-Lösung selbst muss gewartet werden. Bei einer Eigenentwicklung muss diese Wartung auch eigens gelöst werden. Dazu zählen in erster Linie folgende Themen:

Wie auch die IoT-Geräte selbst kann auch die OTA-Software Fehler enthalten. Diese Fehler müssen identifiziert, behoben und ausgerollt werden. In diesem Fall wird gegebenenfalls auch ein Update von einem Teil der OTA-Lösung auf den IoT-Geräten notwendig. Dies kann je nach System wieder eine Herausforderung sein und erhöht die Komplexität.

Des weiteren benötigt die OTA-Software üblicherweise auch einen Server. Dies bedeutet auch wieder, dass eine Infrastruktur aufgebaut und gewartet werden muss. Optimalerweise müssen natürlich auch laufende Datensicherungen erstellt werden, da ein Verlust der Update-Daten meist eine sehr kostspielige Angelegenheit ist.

Bei Standardlösungen sind auch diese Probleme in den meisten Fällen bereits gelöst. Vor allem die Wartung der OTA-Software (inklusive OTA-Clients) obliegt komplett dem Anbieter der Standardlösung und entfällt damit den Pflichten des IoT-Herstellers. Die Infrastruktur wird bei Standardlösungen abhängig vom System entweder vom Anbieter oder vom IoT-Hersteller übernommen. Hierbei unterscheidet man zwischen sogenannten „OTA-as-a-Service“ und „On-Premises“-Lösungen.

Während bei der OTA-as-a-Service-Variante der Anbieter der OTA-Software für die Infrastruktur inklusive Datensicherungen verantwortlich ist, obliegen diese Themen bei On-Premises-Angeboten dem IoT-Hersteller. Welche Varianten angeboten werden muss hierbei unbedingt vorab geklärt werden, um einen reibungslosen Start zu gewährleisten.

Entstehende Kosten

Auch die entstehenden Kosten der beiden Varianten variieren stark. Die Kosten für eine Eigenentwicklung bestehen aus zwei Teilen: im ersten Schritt sind hohe initiale Ausgaben notwendig, um die Software zu implementieren. Im weiteren Schritt entstehen laufend weitere Aufwände für die Wartung der Software. Die exakten Kosten für eine Eigenentwicklung sind (wie auch für jede andere Software) nur schwer im Detail planbar. Es können jederzeit unerwartete Mehrkosten entstehen, da ungeplante Verzögerungen auftreten. In den meisten Fällen fallen diese Mehrkosten direkt auf den IoT-Hersteller zurück.

Im Gegensatz dazu gibt es bei Standardlösungen detailliert planbare Kosten. Abhängig vom Anbieter gibt es auch in diesem Fall initiale und laufende Kosten. Beide können jedoch stark variieren. So gibt es auf der einen Seite Lösungen, wo keine initialen Kosten anfallen und die initialen Aufwände über die laufenden Kosten mit gedeckt werden. Auf der anderen Seite gibt es auch welche, wo es keinen Servicevertrag gibt und damit auch keine laufenden Kosten anfallen. In diesem Fall lebt der Anbieter rein von den initialen Kosten für die Softwarelösung (diese Variante ist allerdings unter OTA-Lösungen nicht wirklich verbreitet).

Wann lohnt sich eine Eigenentwicklung?

Um festzustellen, wann sich eine Eigenentwicklung rentiert, wird eine Break-even-Analyse abhängig von der Betriebsdauer (Jahre) und Anzahl der Geräte (Stück) erstellt. Als Referenzprodukt für eine Standardlösung wir ARCANIX Configuration Management verwendet.

Das Preismodell für ARCANIX Configuration Management besteht aus keinen initialen kosten, dafür laufende Wartungsgebühren. Diese beinhalten sowohl den Betrieb der Software als auch die Bereitstellung von Sicherheitsbehebungen und neuen Softwareversionen. Die Gebühren sind abhängig von der Anzahl der verwendeten Geräte.

Als Kostenschätzung für die Eigenentwicklung werden 20 Tage initialer Aufwand und 10 Tage jährlicher Aufwand mit einem branchenüblichen Stundensatz von 90€/Entwicklungsstunde gerechnet (bei internen Entwicklerteams kann dieser Stundensatz unter Umständen geringer ausfallen). Bei einer sauber entwickelten eigenen Lösung ist die Anzahl der Geräte vernachlässigbar, da diese nur die notwendigen Serverkosten skalieren und diese im Vergleich zum Entwicklungsaufwand vernachlässigbar sind.

Mit einem Betrachtungszeitraum von 10 Jahren (aufgrund des rasanten Lebenszyklus von Software-System sind 10 Jahre ein eher langer Zeitraum für die Wartung einer Geräteserie) ergibt sich folgende Tabelle:

KostenfaktorEigenentwicklungStandardlösung
  100 Geräte500 Geräte1000 Geräte2500 Geräte5000 Geräte
Initiale Kosten14 400 € 0 €  0 €  0 €  0 €  0 €  
Jährliche Kosten7 200 € 600 € 3 000 € 6 000 € 15 000 € 30 000 € 
Gesamt (1 Jahre)21 600 € 600 € 3 000 € 6 000 € 15 000 € 30 000 € 
Gesamt (3 Jahre)36 000 € 1 800 € 9 000 € 18 000€ 45 000€ 90 000 € 
Gesamt (5 Jahre)50 400 € 3 000 € 15 000 € 30 000 € 75 000 € 150 000 € 
Gesamt (10 Jahre)86 400 € 6 000 € 30 000 € 60 000€ 150 000€ 300 000 € 

Dies zeigt, dass aufgrund der hohen laufenden Kosten bei einer Eigenentwicklung der initiale Aufwand nahezu vernachlässigbar ist. Ein Break-Even-Point wird überhaupt erst erreicht, wenn die laufenden Kosten der Standardlösung sich den Wartungskosten der Eigenentwicklung annähern. Dies ist nach dem Modell erst bei ca. 1200 Geräten der Fall. Ab 3600 Geräten ist der Break-even-Point bereits nach dem ersten Jahr erreicht und die Standardlösung nicht ratsam. Praktisch ist diese Rechnung etwas komplexer, da ARCANIX Configuration Management ab mehr als 100 Geräten maßgeschneiderte Pricing-Modelle anbietet. Diese sind von den konkreten Kundenanforderung abhängig. Dadurch wird der Break-even-Point nochmals deutlich nach oben verschoben.

Die richtige Wahl für nachhaltige Betriebskostenoptimierung

Der Vergleich zwischen Eigenentwicklung und Standardlösung zeigt klare Betriebs- und Kostenunterschiede. Angesichts der Wirtschaftlichkeit sind Standardlösungen für die meisten Unternehmen vorteilhafter, sofern keine hochspezialisierten Anforderungen bestehen. Eigenentwicklungen rentieren sich meist nur in einem der zwei Fällen: Wenn eine sehr hohe Anzahl an Geräten gewartet werden muss oder wenn die notwendigen Funktionen von keiner vorhanden Standardlösung abgebildet werden.

de_ATGerman