L'embarqué > Logiciel > Développement > La génération de code de l'outil Rational Rhapsody d’IBM s'adapte à l'architecture multicœur Aurix d’Infineon

La génération de code de l'outil Rational Rhapsody d’IBM s'adapte à l'architecture multicœur Aurix d’Infineon

Publié le 11 avril 2018 à 12:55 par François Gauthier        Développement Hitex

La génération de code de l'outil Rational Rhapsody d’IBM s'adapte à l'architecture multicœur Aurix d’Infineon

L'éditeur allemand Hitex et son compatriote Willert Software Tools, focalisé sur des solutions de développement en UML et SySML, ont conjointement adapté la technologie de génération automatique de code délivrée par l’outil Rational Rhapsody d’IBM aux architectures multicœurs Aurix d’Infineon. Hitex est un spécialiste des outils de développement et de test pour architectures de microcontrôleurs ARM et Infineon (dont la société est filiale depuis 2003). Les travaux des deux sociétés ont plus précisément porté sur l'optimisation du générateur de code d'IBM (temps d'exécution, espace mémoire utilisé) pour fournir directement du code de production à partir de modèles de haut niveau écrits en UML dans l’outil Rational Rhapsody. Les deux sociétés ont pour cela focalisé leur attention sur l'efficacité du code produit et son comportement temporel déterministe dans un environnement multicœur.

Au-delà, les deux compagnies affirment que le code généré est compréhensible (c'est-à-dire lisible par des équipes de développement tierces), conforme aux spécifications de codage Misra et apte à être certifié. Il est également possible de déboguer les modèles avec le code qui s'exécute sur le matériel cible.

L'un des principaux avantages de l'ingénierie dirigée par les modèles tient au fait que lesdits modèles permettent la mise en place d’architectures SSoT (Single Source of Truth) ou SPoT (Single Point of Truth). Une pratique qui, à partir de la spécification, veut que le modèle soit développé progressivement jusqu'à sa mise en œuvre complète avec, au cours de ce processus, la capacité du modèle à remplir différentes fonctions : documentation, analyse de traçabilité, détection précoce d’erreurs via la simulation… Avec cette approche, l'exhaustivité et la maturité du modèle augmentent de manière continue, si bien qu’à la fin le code source est l’exact reflet du modèle.

Sur le même sujet