MISE A DISPOSITION PUBLIQUE DE L’ATELIER B 24.04 CSP EDUCATIONAL VERSION INTEGRANT LES REMOTE IOS
Contexte :
La méthode B est utilisée pour développer formellement des composants logiciels et des modèles de systèmes critiques. Atelier B est un environnement de développement intégré (IDE) pour la méthode B qui est maintenu et développé par CLEARSY. CLEARSY Safety Platform est une plateforme de développement d’applications critiques programmées en B. La version académique dispose d’un starter kit (carte SK0) et d’un environnement de programmation basé sur l’Atelier B. Ce starter kit permet de contrôler des applications au travers de 3 entrées tout-ou-rien (TOR) et de 2 sorties TOR. Un simulateur a été développé pendant la période du COVID afin de simuler l’exécution d’une demi-carte SK0 (les applicatifs ne sont pas redondés).
Un stage (https://gitlab.clearsy.com/amissue/atelier-cssp-io-extension) a permis de construire une solution simulée permettant de manipuler un grand nombre (65536) d’entrées et de sorties au travers d’un serveur. Le résultat du stage n’est pas diffusable en tant que tel et nécessite des travaux de documentation, optimisation (en taille et en performances) et packaging.
L’objet du stage est de constituer une version diffusable de cet IDE – accessible via Github – qui n’est pas censé remplacer l’installeur officiel (https://www.atelierb.eu/en/atelier-b-support-maintenance/download-atelier-b/).
Objectif du stage :
- Récupération et catalogue de tous éléments techniques requis pour le bon fonctionnement ;
- Vérification de bon fonctionnement ;
- Reprise de la procédure de mise en œuvre ;
- Construction d’une version plus optimale : lister les dépendances, identifier les redondances et simplifier ; rendre la procédure d’installation plus robuste
- Documenter l’architecture logicielle
- Construire un exemple (ou plusieurs exemples) de mise en œuvre ;
- Rendre public les résultats (code, documentation, scripts, exemples).
Contraintes technologiques :
- Le plug-in CSSP a été développé en Python. Le stagiaire devra savoir naviguer confortablement dans le code existant.
- La documentation devra être rédigée en anglais, la spécification pourra être rédigée en anglais. Les documents seront préparés en utilisant le format Markdown (+ extensions Pandoc) et générés en CI/CD
- Le code sera hébergé sur le serveur gitlab de CLEARSY pendant la durée du stage et une procédure d’intégration continue devra être mise en place.