L’avenir du développement d’applications Web

Contenu

Concevoir des interfaces utilisateur distribuées

Les mégatendances telles que l’Internet industriel des objets (IIoT) sont rapidement passées des concepts et des projets pilotes à des déploiements de grande envergure, produisant des résultats impressionnants. À mesure que les applications gagnent en complexité, l’industrie du test et de la mesure évolue et devient plus intelligente et mieux connectée.  Grâce à la disponibilité accrue et aux prix abordables des dispositifs de détection intelligents, les ingénieurs peuvent ajouter des fonctionnalités de détection et de prise de décision au niveau du périphérique afin de maximiser le temps de fonctionnement, d’augmenter les performances et de stimuler les futures innovations de produits. Ces fonctionnalités sont primordiales lorsque des tâches telles que l’acquisition, l’analyse et le contrôle des données doivent être réparties géographiquement et effectuées par divers éléments de traitement collaboratifs pour favoriser les opérations à distance. Ce type d’implémentations distribuées est motivé par le besoin d’E/S plus précises, de commandes distribuées complexes et prioritaires, d’acquisition et d’analyse de données à haut débit, ainsi que par la nécessité de transmettre des données à plusieurs parties prenantes de l’organisation.

 

Figure 1. Plus les systèmes sont complexes, plus les développeurs sont confrontés à des problèmes de gestion et de visualisation des données à différents niveaux de l’organisation.

 

Mettre les bonnes informations à la disposition des bonnes parties prenantes est un aspect essentiel des applications distribuées qui a un impact direct sur la capacité à prendre des décisions commerciales éclairées. Il s’agit d’un problème particulièrement complexe car cela implique non seulement la création d’interfaces utilisateur distribuées, mais aussi des capacités de gestion des données, l’assurance de la sécurité et des concepts de mise en réseau. Parmi les principales exigences, citons le développement d’interfaces permettant aux opérateurs de configurer à distance les systèmes déployés pour passer d’un mode de fonctionnement à un autre, modifier les paramètres ou les profils. Un autre scénario nécessite une interface utilisateur permettant d’exploiter ou de surveiller à distance les panneaux de contrôle d’un petit ensemble d’équipements. Un autre besoin, typique des scénarios de tests en production distribués ou de la surveillance environnementale, est la surveillance en temps réel des systèmes, y compris des informations telles que l’état, les défaillances et les performances. Enfin, les niveaux de gestion et d’entreprise exigent une surveillance en temps réel avec un aperçu des données historiques, des tendances et des indicateurs clés de performance au fil du temps. Il est donc difficile de répondre aux besoins de visualisation des données de différentes parties prenantes, avec des degrés de complexité variables, dans tous les scénarios de tests distribués.

Figure 2. La création d’interfaces utilisateur distantes représente différents niveaux d’effort en fonction de la complexité et de la taille du système en question.

 

Compte tenu de ce degré de complexité, la plupart des ingénieurs de test et de mesure estiment qu’il est difficile de se contenter de choisir une infrastructure IIoT prête à l’emploi. Pour être plus efficace, il faut une plate-forme qui offre l’évolutivité et les performances des technologies Web et Big Data courantes et qui peut être développée, déployée et maintenue par des ingénieurs en collaboration avec des spécialistes de l’informatique, des développeurs Web, des concepteurs UX et visuels, des scientifiques des données et différentes parties prenantes. Au cours des trois dernières décennies, National Instruments a développé une plate-forme avec LabVIEW, PXI et RIO pour des applications de test et de mesure hautes performances en périphérie. Ces dernières années, NI a étendu la plate-forme en ajoutant des composants logiciels modulaires et réutilisables au niveau des couches réseau, informatique/serveur et Web pour mettre en œuvre des applications distribuées. Ces éléments de plate-forme sont intégrés dans de nombreux produits logiciels afin de relever les principaux défis liés à la création de solutions d’ingénierie modernes et performantes. Ces défis incluent la gestion efficace des systèmes distribués ainsi que l’exploitation des données générées en périphérie et la visualisation de celles-ci pour prendre des décisions.

Prenons comme exemple le besoin impérieux d’applications distribuées pour gérer et configurer les équipements à distance afin d’augmenter le temps de fonctionnement et les performances opérationnelles. La plate-forme NI inclut une solution pour ce type de scénario via SystemLink, un logiciel de gestion de systèmes qui fournit des capacités de gestion sécurisée et centralisée pour les applications distribuées de test, de mesure et de contrôle. SystemLink augmente le temps de fonctionnement du système et permet de connaître son état grâce à des outils de gestion qui vérifient la connexion, les paramètres et les données d’étalonnage. SystemLink améliore l’efficacité du déploiement massif de logiciels grâce aux mises à jour au niveau des composants, à la prise en compte des dépendances et à l’historique des versions.

En savoir plus

 

Figure 3. SystemLink est un logiciel de gestion centralisée de systèmes de test, de contrôle et de surveillance distribués.

 

La nécessité de visualiser facilement les données est également très importante pour ce type d’applications distribuées. Pour permettre aux ingénieurs de développer des solutions de bout en bout, il faut des outils de développement d’applications productifs qui fonctionnent ensemble de manière transparente. Pour les applications distribuées, G Web Development Software complète cette plate-forme en permettant aux ingénieurs de tirer parti des paradigmes de programmation LabVIEW courants et de créer des applications complètes qui peuvent s’exécuter sur n’importe quel serveur Web et navigateur moderne sans aucun plug-in ni téléchargement.  G Web Development Software s’intègre au reste de la plate-forme logicielle de NI afin de faciliter l’accès aux technologies Web pour la création d’interfaces utilisateur personnalisées et distantes pour les applications nouvelles et existantes.

 

Pourquoi les ingénieurs de test et de mesure ont-ils besoin de la technologie Web ?

Pour les systèmes distribués, la technologie Web devient rapidement la couche d’application de facto pour l’orchestration, le contrôle et la visualisation des données. Cependant, la technologie Web moderne est un ensemble complexe de normes, de frameworks, de technologies et de conventions qui requièrent une formation et une expérience importantes pour être maîtrisée.  La plupart des ingénieurs de test et de mesure ne se considèrent pas comme des développeurs Web et n’ont ni le temps ni les ressources nécessaires pour acquérir l’expertise requise. De plus, la plupart des équipes d’ingénieurs de test ne peuvent pas externaliser les parties critiques de leurs applications qui nécessitent une technologie Web, comme la présentation d’informations, les schémas de commande, la sécurité et la gestion des accès. En effet, ces domaines requièrent un contrôle au sein de l’organisation. S’il est possible d’intégrer des talents en développement Web dans les équipes d’ingénieurs de test, il existe un risque de perte importante dans la traduction du contexte entre les ingénieurs de test et les développeurs Web. En fin de compte, les défis courants du développement, du déploiement, de la maintenance et de la mise à niveau des systèmes distribués, tels que la gestion efficace des cycles de vie, l’obtention d’informations, la prise de décisions en temps réel et la création d’un accès sécurisé aux applications, sont toujours du ressort de l’équipe d’ingénieurs de test.

 

Grâce au G Web Development Software, NI fournit un point de départ intuitif aux ingénieurs qui créent des interfaces de contrôle et de surveillance à distance pour les systèmes de test et de mesure. Les ingénieurs peuvent utiliser les modèles d’édition de face-avant et de diagramme courants de LabVIEW pour développer des applications d’ingénierie sans avoir besoin de connaissances en technologies Web. Le module Web comprend également des mécanismes permettant de déployer des applications Web en toute sécurité et d’établir la communication avec les nœuds périphériques. De plus, cette plate-forme technologique Web est conçue pour être très ouverte et extensible afin qu’elle puisse être utilisée pour créer des applications complètes de test, de mesure, de contrôle et de surveillance distribuées en collaboration avec des développeurs Web professionnels et des spécialistes informatiques.  Dans la section suivante de ce white paper, nous présentons les éléments fondamentaux et les principes directeurs des investissements futurs dans les outils de conception Web de NI.

Figure 4. G Web Development Software vous aide à créer des interfaces utilisateur Web hautes performances.

 

 

Une plate-forme de développement d’interface utilisateur Web : Principes directeurs

 Point de départ intuitif pour le développement Web

La préservation des compétences des développeurs LabVIEW pour la création d’interfaces Web est l’un des principes essentiels de la conception du G Web Development Software. Dans cette optique, un nouveau type de VI a été introduit avec le module Web : les WebVIs. Ce nouveau format de fichier représente un progrès technologique pour la génération de code G qui fonctionne de la même manière que n’importe quel autre VI, mais qui est automatiquement traduit en normes Web telles que HTML, CSS et JavaScript. Cette technologie réduit les obstacles au développement d’applications Web en simplifiant la maîtrise de plusieurs normes pour répondre aux exigences de l’application en question.

Figure 5. Les WebVIs permettent aux utilisateurs de créer des VIs qui peuvent s’exécuter dans n’importe quel navigateur Web moderne sans plug-ins ni installeurs.

 

De même, le concept consistant à fournir des points de départ intuitifs est étendu au transfert de données sécurisées et fiables sur un réseau. G Web Development Software comprend des moyens simples de transférer les données entre les sources de données et un emplacement centralisé qui sert de courtier pour les services de données. Cela est possible grâce à des API basées sur les normes Web (HTTP, AMQP, Websocket) qui répondent à des cas d’utilisation technique courants, tels que la communication de valeurs scalaires Tag vers et depuis des périphériques de mesure et de test, la fourniture de messages asynchrones pour la gestion d’alarmes et d’événements, et le transfert de fichiers pour la génération de rapports et le post-traitement. De plus, ces API incluent une implémentation client HTTP pour transférer des données vers et depuis n’importe quel service Web tiers. National Instruments explore des services de données supplémentaires pour les futures versions du G Web Development Software, tels que le transfert de données waveform.

 

Enfin, le déploiement d’applications Web est également simplifié grâce à des workflows efficaces qui facilitent les processus de configuration et le partage d’applications Web. Cela inclut l’accès au serveur Web de NI pour faciliter la création d’applications hébergées où la sécurité et le contrôle d’accès sont définis par l’utilisateur.  Le serveur Web de NI peut être utilisé pour héberger des applications sur un ordinateur dédié. Cependant, le G Web Development Software est suffisamment flexible pour produire des fichiers de sortie standard qui peuvent être hébergés par n’importe quel serveur tiers. À l’avenir, la technologie sera intégrée pour faciliter le processus d’hébergement en automatisant le flux de déploiement directement de l’environnement de développement vers un service cloud hébergé par National Instruments. Ce service entend également inclure la création de tableaux de bord basés sur la configuration pour faciliter la création d’interfaces utilisateur dans le navigateur qui se connectent directement aux données disponibles dans le courtier de données sans avoir à programmer ou à ajouter de logique à l’application.

 

Mise en correspondance avec les exigences techniques

 

Un autre principe directeur des outils NI pour la création d’interfaces utilisateur Web est l’alignement des exigences techniques des applications de test et de surveillance avec les outils de conception pour fournir des performances de premier ordre.    En ce qui concerne l’interface utilisateur, le G Web Development Software comprend des widgets d’ingénierie hautes performances qui répondent aux scénarios les plus courants pour la représentation graphique de réservoirs, de LED, de jauges, de graphes déroulants, de graphes, etc. Les interfaces utilisateur et les widgets sont automatiquement convertis en code HTML et CSS pour les représenter dans n’importe quel navigateur Web moderne. Ces widgets ont été conçus pour répondre aux besoins des applications les plus exigeantes. Plus précisément, pour les graphes et les graphes déroulants, ceux-ci ont été testés pour exécuter 500 000 points de données à 60 fps ou plus. National Instruments s’engage à améliorer les performances de cet ensemble de widgets au fur et à mesure du lancement de nouvelles versions du G Web Development Software.

 

Figure 6. Les WebVIs incluent un ensemble de widgets d’ingénierie hautes performances pour le développement d’interfaces utilisateur de test et de mesure.

 

 

 De même, l’interface utilisateur conçue dans les WebVIs est accompagnée d’une logique applicative implémentée dans le diagramme, similaire à celle des VIs LabVIEW. Une logique personnalisée peut être intégrée dans les interfaces utilisateur à l’aide de fonctions couramment disponibles pour définir le flux, la logique et l’analyse du programme. La logique applicative est convertie en code JavaScript pour être exécutée dans n’importe quel navigateur Web moderne afin de contrôler le comportement et de répondre aux événements de l’interface utilisateur.

 

Figure 7. Les WebVIs génèrent automatiquement du code HTML, CSS et JavaScript pour exécuter des applications sur n’importe quel navigateur Web moderne.

 

 

Extensibilité basée sur les normes

L’utilisation de normes et de technologies open source est définitive. Elle permet de fournir une extensibilité et d’exécuter des applications sur n’importe quel navigateur Web moderne. Une décision de conception importante a été la possibilité d’ouvrir et d’exposer les codes HTML, CSS et JavaScript générés à partir de WebVIs pour personnaliser entièrement l’application avec l’éditeur fourni ou tout autre éditeur tiers. Ces capacités peuvent être étendues pour intégrer du contenu existant du Web et réutiliser des scripts pour contrôler le comportement des interfaces utilisateur. La flexibilité et la standardisation sont des dénominateurs communs de la conception des WebVIs et d’autres composants du G Web Development Software pour s’intégrer aisément aux implémentations existantes et aux technologies commerciales. Dans les prochaines versions du G Web Development Software, les utilisateurs peuvent s’attendre à voir arriver de nouvelles fonctionnalités qui étendent cette ouverture pour inclure encore plus de moyens d’intégrer les WebVIs à la technologie Web existante.