Erfahren Sie, wie die Continuous Quality Platform von Parasoft dabei hilft, Testumgebungen zu steuern und zu verwalten, um zuverlässig hochwertige Software zu liefern. Für Demo registrieren >>
Obwohl im Internet der Dinge (IoT) der Begriff „Dinge“ verwendet wird, ist die Realität, dass Verbraucher und Unternehmen nicht nur an Dingen oder Geräten interessiert sind. Das wahre Versprechen von IoT liegt in den Daten, die diese Geräte produzieren, und in den Maßnahmen, die sie ergreifen. Selbst der kleinste Sensor bietet einen nützlichen Service, und obwohl Entwickler eingebetteter Geräte dazu neigen, nicht in Services zu denken, ist es wichtig, diese Einstellung zu ändern, um die Anforderungen an Funktionalität, Qualität, Leistung und Sicherheit zu erfüllen, die für vollständig vernetzte Geräte erforderlich sind Welt des IoT.
Trotz des Namens, der im IoT steckt, sind die „Dinge“ selbst nicht der Star der Show. Ein weiterer Schlüssel zum IoT sind das Sammeln von Informationen, die Steuerung der Schlüsselinfrastruktur und die Erfassung der realen Welt, die diese Geräte bieten.
Verbraucher interessieren sich nicht nur für die Temperatur eines Raums in ihrem Haus oder den Video-Feed einer einzelnen Kamera. Sie sind an der nächsten Stufe interessiert - stellen Sie sicher, dass ihr Sicherheitssystem Bewegungen im ganzen Haus erkennt oder dass ihre Klimaanlage eine angenehme Temperatur beibehält. Unternehmen interessieren sich nicht für die Ausgabe einer einzelnen Logiksteuerung in einer Fabrik, sondern für den Produktionsdurchsatz einer Montagelinie. Dies ist ein wichtiger Perspektivwechsel, da Geräteentwickler gezwungen sind, den Kontext ihres Produkts und seine Anwendungsfälle besser zu verstehen.
Einzelne eingebettete Geräte können möglicherweise nicht als Teil eines Dienstes betrachtet werden. Konnektivität zu größeren Systemen bedeutet jedoch, dass dies der Fall sein sollte. In einem Automobil besteht die Aufgabe des Motorsteuergeräts (ECU) allein darin, eine ordnungsgemäße Verbrennung und Emissionen im Motor sicherzustellen. Das Auto verfolgt jedoch den Kraftstoffverbrauch, verwendet das Steuergerät und meldet es über eine an einen zentralen Server kabellose Verbindung. Diese Meilendaten werden dann verwendet, um Routen zu planen und die Betriebskosten zu schätzen. Plötzlich ist das Steuergerät ein kritischer Blattknoten in einem Geschäftsentscheidungsprozess.
Die Übernahme dieser Perspektive erweitert den Kontext eines einzelnen Geräts und seinen Funktionsumfang und wirkt sich auf den Ansatz des Gesamtsystemdesigns aus, wenn wir vom gerätezentrierten zum serviceorientierten Denken übergehen:
Sobald ein serviceorientierter Ansatz gewählt wurde, ist es sinnvoll, dass Design, Implementierung und Test dem Beispiel folgen. Um zu erkennen, dass der Service den geschäftlichen Wert bietet, ist es wichtig sicherzustellen, dass die Geräte die diesbezüglichen Anforderungen erfüllen. Natürlich ist das Testen des Funktionsbetriebs auf Geräte-, Subsystem- und Systemebene immer noch wichtig, aber die Erweiterung des Testumfangs bietet unmittelbare Vorteile.
Anstatt die Systemqualität im Hinblick auf die Erfüllung der individuellen Geräteanforderungen zu betrachten, wird der Anwendungsbereich erweitert, um die zu berücksichtigen Qualität der Dienstleistungen unter der Voraussetzung. Im HLK-Beispiel ist ein neuer Temperatursensor möglicherweise leichter, kostengünstiger, hat eine lange Akkulaufzeit und eine hervorragende Funkreichweite. Aber wie gut es mit dem gebäudeweiten Steuerungssystem funktioniert, ist genauso wichtig wie alle neuen Funktionen.
Tests auf Service-Ebene stellen sicher Nicht-funktionale Anforderungen erfüllt sind. Zum Beispiel sind Leistung und Zuverlässigkeit auf Geräteebene oder beim Testen von Softwareeinheiten schwer zu beurteilen. Service-basierte Tests können die Betriebsumgebung eines Geräts simulieren, um realistische Lasten bereitzustellen. Im HLK-Beispiel kann der neue Temperatursensor mit unterschiedlichen Anforderungsraten getestet werden, um festzustellen, ob er die Leistungsanforderungen erfüllt.
Cyber-Angriffe auf IoT-Systeme werden vom Netzwerk selbst ausgehen, indem die exponierten APIs angegriffen werden. Service-basierte Tests können simulierte Umgebungen für robuste Umgebungen erstellen Sicherheitdienst Testen, entweder durch Fuzzing (zufällige und fehlerhafte Dateneingaben) oder Denial-of-Service-Angriffe. Ein neuer Temperatursensor im HLK-Beispiel funktioniert möglicherweise ordnungsgemäß mit erwarteten Anforderungen, stürzt jedoch bei Überlastung ab. Ein Angreifer kann dies möglicherweise ausnutzen, um das System zu überlasten und einen Ausfall zu verursachen.
Die Erkenntnis, dass es beim IoT wirklich um die Dienste geht, führt zu besseren, differenzierten eingebetteten Geräten in der neuen vernetzten Welt, in der sie tätig sind. Hersteller, die sich auf die Dienste konzentrieren, werden seltener mit gleichwertiger Hardware ausgetauscht. Um die für IoT-Systeme erforderliche Leistung, Servicequalität und Sicherheit zu erreichen, sind service-basierte Tests unerlässlich.
Die branchenführenden automatisierten Softwaretest-Tools von Parasoft unterstützen den gesamten Softwareentwicklungsprozess, vom Schreiben der ersten Codezeile über Unit- und Funktionstests bis hin zu Leistungs- und Sicherheitstests, wobei simulierte Testumgebungen genutzt werden.