La façon dont nous faisons de l'ingénierie de test change rapidement. Le développement accéléré en amont de produits complexes entraîne des changements fondamentaux dans les tâches que nous devons accomplir, même si nos objectifs restent constants. Au cours des 10 dernières années, la façon dont nous passons notre temps a évolué, avec plus d'attention accordée aux méthodologies de développement collaboratif et plus de temps consacré à ce qui était autrefois considéré comme des tâches périphériques.
Figure 1. Changements dans l'allocation du temps d'ingénierie de test au cours des 10 dernières années
Cette prolifération de tâches signifie que lorsqu'on leur présente un accélérateur de productivité comme l'IA, les groupes d'ingénierie de test avertis réfléchissent de manière holistique à la manière de l'appliquer à tous les travaux qu'ils doivent effectuer et pas seulement aux éléments de génération de code qui font la une des journaux. Ce white paper est conçu pour examiner le flux de travail de l'ingénieur et expliquer pourquoi les ingénieurs de test doivent adopter l'IA dans davantage de tâches pour réussir.
Une bonne ingénierie de test commence par une excellente stratégie de test plutôt que par un excellent développement d'IP. Cependant, à mesure que les exigences de couverture des produits que nous testons augmentent, l'investissement en temps dans la planification et la conception de cette stratégie devient disproportionné.
L'IA peut faciliter la planification en ingérant des informations sur les produits et les composants et en les traduisant en plan de test. Pour réaliser cette tâche, il faut des compétences spécialisées qui fournissent une connaissance suffisante des méthodologies de test et des meilleures pratiques de mesure pour fournir un plan performant. Au fur et à mesure que ce plan passe à la conception de stations, l'IA doit maîtriser les stratégies d'optimisation telles que le parallélisme afin d'utiliser efficacement les ressources, ainsi que les topologies de commutation, l'accessibilité pour la mise au point, les sources de bruit et plus encore.
Comme chaque ingénieur de test le sait, une conception de système de test est un mélange d'art, de science, d'expérience et de compromis. En tant qu'outil d'IA spécialisé dans les applications de test et de mesure, NI Nigel™ AI possède les compétences nécessaires pour faire une recommandation forte ; ses capacités d'agent s'améliorent rapidement et fournissent le support le plus spécifique aux applications. Mais les ingénieurs ne doivent pas oublier leur propre expérience pratique lorsqu'ils valident des suggestions.
Les ingénieurs de test modernes sont forcés de s'adapter car il devient plus courant que les travailleurs changent de poste à la recherche d'avancement. Ces changements rendent nécessaire l'intégration quasi continue de nouveaux outils et processus. L'intégration constante a non seulement un impact sur la productivité des stagiaires, mais elle éloigne aussi les membres expérimentés de leur travail de formateurs.
Les assistants d'IA peuvent assurer le premier niveau d'assistance pour les ingénieurs utilisant de nouveaux outils. Nos données de produits montrent que plus de 20 pour cent des utilisateurs LabVIEW utilisent régulièrement Nigel AI pour des cas d'utilisation similaires. Pour être clair, ces outils ne remplacent pas des formations plus structurées couvrant les meilleures pratiques des produits. Ce type de formation est toujours requis, afin que les ingénieurs sachent quelles invites utiliser et à quoi ressemble une bonne réponse. Mais les assistants d'IA servent également d'aide-mémoire et peuvent aider les ingénieurs à naviguer dans des environnements logiciels complexes pour trouver les fonctions qu'ils recherchent sans importuner leurs collègues.
Le développement d'IP de test implique presque toujours plus que la simple écriture de code de mesure spécifique à une étape de test. Il existe des applications très complètes qui prennent en charge des fonctions telles que l'enregistrement des données, la gestion des séquences de test et la mise au point interactive de signaux, chacune pouvant s'appuyer sur le code de mesure ou s'y connecter et permettant aux ingénieurs de travailler à un niveau plus rapide et abstrait. Bon nombre d'entre eux (comme NI FlexLogger, NI TestStand et le logiciel NI InstrumentStudio™) intègrent Nigel AI, ce qui accélère encore le développement.
TestStand, par exemple, permet à Nigel de générer des séquences de test basées sur un plan de test contextualisé. Cet outil peut être un énorme gain de temps, car il permet l'intégration d'étapes de test (éventuellement écrites dans n'importe quel langage tel que LabVIEW, Python, ou C#) dans une séquence unique avec une surcharge d'orchestration minimale pour l'utilisateur. Nigel peut alors automatiser les fonctionnalités d'optimisation de la vitesse au sein du moteur TestStand pour améliorer les performances. Dans ces cas-là, les ingénieurs sont toujours responsables de la séquence livrée à l'atelier de fabrication et devraient vérifier l'opération, mais l'IA peut réduire le nombre de clics et créer un point de départ à partir duquel travailler pour gagner des heures.
L'un des cas d'utilisation les plus courants pour l'IA est d'expliquer le code à l'utilisateur. Les ingénieurs partent rarement d'une page blanche ; ils héritent du code, le réutilisent, le refactorisent, le redéploient, etc. Dans de nombreux cas, le code hérité peut être un cadeau, mais dans d'autres, il faut parfois des semaines pour comprendre l'architecture d'une application décalée et mal documentée laissée pour compte par un collègue disparu depuis longtemps.
L'IA peut être utile en résumant les fonctionnalités d'un module de code ou même d'une application entière, puis en permettant à l'utilisateur d'y naviguer avec des invites en langage naturel, comme les exemples suivants :
L'utilisation d'une IA de cette façon crée également un profil à faible risque pour les erreurs d'IA se propageant à la base de code ; en suscitant des échanges, elle oblige l'ingénieur à apporter des modifications.
Les équipes de test s'attendent de plus en plus à recevoir des informations sur les données car celui qui crée les données est souvent le mieux placé pour les manipuler et les approfondir. En gros, les informations sur les données de test peuvent être classées en deux groupes :
L'enregistrement d'un ensemble complet de métadonnées environnementales pour chaque élément de données de mesure de manière structurée et normalisée est essentiel pour obtenir des informations précieuses. Pour établir des corrélations significatives, vous devez enregistrer des informations sur le produit (exigences, variance, gammes de fonctionnement), le système de test (ressources, emplacement, montage, opérateur), l'IP de test (pile logicielle, dépendances, révisions) et les résultats des mesures (scalaires, waveforms, horodatages, entièrement synchronisés pour tous les instruments utilisés). Ce type de données ne peut pas être « réintégré » s'il n'est pas documenté au point de mesure et, par conséquent, une stratégie solide d'enregistrement des métadonnées dans les systèmes de mesure devient essentielle pour obtenir ultérieurement des informations exploitables générées par l'IA.
Les ingénieurs de test n'ont pas passé des années à se former dans les universités et l'industrie pour passer de longues heures à rechercher des autocollants d'étalonnage, des câbles manquants, des incohérences logicielles et d'autres tâches importantes mais ardues dans les laboratoires ou les lignes. L'IA est efficace pour rechercher des éléments et peut vous faire gagner des heures de temps frustrant en maintenance de laboratoire.
Par exemple, en utilisant Nigel dans le logiciel NI SystemLink™, vous pouvez poser des questions telles que :
En automatisant ce type de tâches administratives, les équipes peuvent maximiser le temps productif de leur personnel d'ingénierie principal. Cette automatisation peut aider à accroître l'engagement et la motivation des équipes, car elle réduit le temps passé à des tâches perçues comme frustrantes, répétitives et de faible valeur.
Ce white paper a beaucoup survolé les avantages et les limites de l'utilisation de l'IA pour vous aider à écrire du code, et ils sont nombreux. Cependant, il a également, espérons-le, montré comment la productivité de l'ingénieur peut être améliorée en adoptant une vision plus large et plus holistique du rôle que l'IA peut jouer pour l'aider.
Nigel AI est optimisé spécifiquement pour aider les ingénieurs de test tout au long de leur processus de développement, de la première réunion de planification à la réunion du rapport final et tout ce qui se passe entre les deux. Son ensemble unique de compétences et son intégration étroite dans de nombreux outils que vous utilisez déjà pour les tests signifient qu'il peut agir comme un catalyseur, accélérant vos tâches de test les plus précieuses et créatives tout en faisant abstraction et en automatisant les tâches administratives, le tout sans perturber vos processus existants.