Les défis du test logiciel des appareils IOT
'Susan Harris est seul dans la maison quand, tout à coup, les portes se verrouillent, les fenêtres claquent et le téléphone cesse de fonctionner. Susan est piégée par un intrus – mais ce n'est pas un voyou ordinaire. Au lieu de cela, l'intrus est un ordinateur nommé Proteus, un cerveau artificiel qui a appris à raisonner. Et pour terroriser… '
Le film Demon Seed de 1977, une histoire sur une IA devenue voyou, a peut-être été un peu mélodramatique sur le danger que l'intelligence artificielle représente pour l'homme, mais il avait un aperçu intelligent de la domotique et de son potentiel dysfonctionnements.
De la santé et de la domotique aux transports et à l'industrie pétrolière et gazière, l'Internet des objets (IoT) se développe rapidement. Les chercheurs de Garner Inc ont prédit que d'ici 2020, il y aura 20,4 milliards d'appareils IoT connectés à Internet.
Alors, pendant que vous regardez des films sur votre smartwatch, demandez à votre maison de se réchauffer à une température préférée et négociez peut-être ce qui constitue un brûlé avec votre grille-pain, ayez une pensée pour les testeurs. Les hommes et les femmes travaillant à huis clos pour s'assurer que ces appareils fonctionnent réellement comme prévu.
Alors, quels sont les défis auxquels les testeurs de logiciels sont confrontés lorsqu'ils testent des appareils IoT ?
Tout d'abord, il y a une évidence :est-ce sûr ?
Sécurité
Une recherche rapide de l'IoT apportera une pléthore d'articles traitant des problèmes de sécurité avec l'IoT. Cependant, plutôt que de craindre que votre bouilloire ne vous espionne, il y a le souci très réel d'ajouter de nouveaux appareils ou des appareils susceptibles d'être piratés à vos réseaux de confiance. Avec un ordinateur portable ou un logiciel informatique peut être installé pour protéger les appareils, mais pour les appareils IoT, la prise en charge est mince. De nombreux appareils ont également des noms d'utilisateur et des mots de passe par défaut que l'utilisateur moyen ne modifie jamais, ce qui les rend vulnérables.
Les testeurs doivent également prendre en compte l'impact plus large que les appareils IoT peuvent avoir sur la sécurité Internet. Il suffit de se souvenir de l'attaque du botnet Mirai qui a utilisé des appareils tels que des appareils photo numériques et des enregistreurs vidéo pour perturber considérablement de grandes parties de l'Internet américain, faisant tomber des sites tels que Netflix, Twitter, CNN et Reddit.
Pour un testeur, les problèmes tels que le flux de données entre les appareils, le cryptage des données et l'intégrité du logiciel de test (en cas d'automatisation) sont tous des problèmes clés.
Parfois, les testeurs doivent simplement compter sur le fait que les utilisateurs protégeront leurs réseaux. Cependant, avec des routeurs moins chers contenant souvent moins de mesures de sécurité, il existe un autre problème pour les testeurs IoT, celui de reproduire l'environnement dans lequel l'article fonctionnera.
Réplication d'environnements
Lors du test d'un site Web, il est facile pour les testeurs de parcourir les pages à la moulinette. Ouvrez la page sur les navigateurs populaires, exécutez-la sur des ordinateurs portables, des tablettes et des smartphones et vous avez à peu près testé comment elle sera utilisée par 90 % des utilisateurs.
Cependant, avec les appareils IoT, la réplication de l'environnement d'un utilisateur est beaucoup plus difficile. L'appareil sera-t-il utilisé à la maison ou au travail ? La vitesse d'Internet sera-t-elle rapide ou lente ? Combien d'appareils inconnus sont également connectés à ce réseau ? L'appareil devra-t-il quitter et rejoindre le réseau ?
Oublié les aspects techniques, sur quel type d'ameublement l'appareil reposera-t-il ? Les HomePods d'Apple ont été documentés comme laissant des anneaux blancs sur des tables en bois qui ont été traitées ou vernies. Bien qu'il ne s'agisse pas strictement d'un problème pour l'humble testeur de logiciels, cela montre à quel point la grande variété d'environnements signifie que le travail de réplication des conditions pour les testeurs est difficile.
Pour cette raison, les testeurs doivent s'assurer qu'ils ont une bonne compréhension du produit et essayer d'englober autant de scénarios différents que possible dans leurs tests, y compris comment l'appareil fonctionnera avec les autres.
Comment ça marche avec d'autres appareils
Les tests de compatibilité sont toujours un épouvantail pour les testeurs, mais dans le monde de l'IoT, cela devient une myriade de défis. Prenez simplement les interactions apparemment infinies qui peuvent être créées sur des appareils prenant en charge IFTTT :il y a tout simplement trop de mouvements sur l'échiquier pour analyser et tester chaque appareil pour chaque version dans chaque environnement.
La seule façon dont les testeurs peuvent commencer à s'attaquer à cette tâche est de se concentrer sur les systèmes d'exploitation et les méthodes de communication les plus populaires (c'est-à-dire Bluetooth), sur les appareils les plus populaires, afin que les efforts aient la portée la plus large, avant passer à plus d'articles de niche.
Coûts
Un autre défi est peut-être l'un des plus évidents :le coût. Tester quelque chose de plus simple, comme un site Web, est relativement rapide et bon marché. Mais tester des appareils IoT dans différents environnements avec différentes intégrations peut être très coûteux. Le temps est un facteur important, car les testeurs doivent couvrir autant de bases, mais un autre problème est le besoin éventuel d'un logiciel de test spécialisé. Quelques études ont fait allusion au fait que la combinaison d'un manque de développeurs qui n'examinent pas leur code à la recherche de failles de sécurité et d'un manque de tests approfondis des applications IoT signifie que les tests deviennent très complexes. Et avec la complexité, vient le coût.
Alimentation et sauvegarde
Contrairement à la solution informatique la plus courante consistant à l'éteindre et à le rallumer, certains appareils IoT peuvent avoir des difficultés en cas de perte de puissance soudaine. Les testeurs doivent s'assurer qu'ils testent comment un appareil change suite à une panne de courant - en particulier pour les articles dans les secteurs de la santé ou de l'industrie.
Cela deviendra moins un problème à mesure que la puissance sans fil continue de croître, mais jusque-là, les variables doivent être prises en compte. Considérez une alarme anti-intrusion intelligente ou une caméra de sécurité, si le système tombe en panne en raison d'un bogue ou d'une baisse de puissance ou de connexion, ils sont essentiellement inutiles.
Comment ou même si un appareil sauvegarde est un autre problème, en particulier lorsque vous considérez comment un logiciel nouveau ou mis à jour réagira aux données plus anciennes.
Mises à jour
Le micrologiciel fait partie intégrante de nombreux appareils IoT, et les développeurs n'aiment rien de plus que de publier de nouvelles mises à jour. Mais pour le testeur, les mises à jour peuvent entraîner le casse-tête monumental des bugs. Si un bogue manqué parvient à un ordinateur standard, le problème peut généralement être simplement testé et résolu avant qu'il ne soit trop endommagé. Mais si un bogue pénètre dans un appareil IoT, il peut avoir des ramifications beaucoup plus physiologiques.
Le problème du thermostat Nest remonte à janvier 2016. Une mise à jour logicielle effectuée en décembre dernier avait entraîné un bug qui épuisait l'autonomie de la batterie de certains thermostats, provoquant la désactivation du système. Finalement, l'entreprise a déployé une solution en neuf étapes pour les utilisateurs, mais des tests appropriés et approfondis auraient pu sauver les frissons de l'utilisateur et le visage de l'entreprise.
Donc, même si nous ne risquons pas que nos maisons deviennent le Demon AI Proteus ; si les testeurs de logiciels ne prennent pas les précautions nécessaires, ils risquent d'être laissés pour compte.
Technologie de l'Internet des objets
- La menace croissante de l'IoT compatible Wi-Fi
- Ne croyez pas le battage médiatique :pourquoi l'IoT stagne
- Connecter l'IoT – L'opportunité du bas débit
- Nous jetons les bases de l'IoT dans l'entreprise
- Internet des objets :un champ de mines de distribution de logiciels en devenir ?
- Les 3 principaux défis de la préparation des données IoT
- 5 défis auxquels l'Internet des objets est toujours confronté
- Explorer les cinq principaux défis de l'IoT à travers les 5 C - Partie 1
- Le rôle de l'IoT dans les soins de santé pendant le Covid-19