Thibaut Oprinsen
1, @, Vincent Pollet
1, @, Pierre Aubert
2, @, Sami Caroff
1
1 : Laboratoire d'Annecy de Physique des Particules Institut National de Physique Nucléaire et de Physique des Particules du CNRS, Université Savoie Mont Blanc, Centre National de la Recherche Scientifique
2 : Laboratoire d'Annecy de Physique des Particules CNRS
Tester un logiciel d'acquisition de données ou de communication est souvent complexe, nécessitant des ressources externes (banc de test, base de données, serveur distant). Nous proposons une abstraction d'API utilisant simultanément deux backends : un backend réel pour les communications, impliquant les véritables ressources externes et un backend simulé (mock) pour les tests. Cette architecture permet de découpler les composants, de faciliter leur évolution ou leur remplacement, et de mettre en place des tests rapides (monocœur et sans latences) qui simulent des interactions complexes sans infrastructure réelle. Cette architecture permet également d'enregistrer et de rejouer une vraie communication pour le débogage et la validation. Cette approche est implémentée dans la bibliothèque Phoenix, qui fournit une abstraction de sockets avec des backends réels (ZeroMQ) et simulés, disponibles en C++, Rust et Python, permettant la construction de pipelines de traitement multi-langages, cohérents et facilement maintenables. Ces travaux sont menés dans le cadre du projet européen OSCARS. Présentation en Français ou en Anglais de 15 minutes.
Type :
:
Présentation
Thématiques
:
Cycle de vie du logiciel, génie logiciel, usines logicielles