Sujets de stage 2016 Spécialité Informatique / Electronique

Transcription

Sujets de stage 2016 Spécialité Informatique / Electronique
Sujets de stage 2016
Spécialité Informatique / Electronique
V-15/10/2015
Entreprise
:
Avertissement
:
Airbus Defence and Space / Airbus Safran Launchers
66, route de Verneuil - 78133 Les Mureaux
Spécialité
: Informatique / Electronique
Formation
: 5ième année d’Ecole d’Ingénieur ou de Master
Département
: Data Management and Software
Prière d’adresser vos candidatures à [email protected]
et à les confirmer sur www.jobs.airbus-group.com
Un délai de 4 mois est à prévoir pour la sécurité industrielle entre l’acceptation technique de
votre candidature et le début effectif du stage
Airbus Defence and Space / Airbus Safran Launchers est
le leader du transport spatial en Europe. Airbus Defence
and Space est ainsi maître d’œuvre des lanceurs lourds
Ariane 5 et Ariane 6, du cargo spatial ATV (« Automatic
Transfer Vehicle ») et du missile balistique M51.
Les sujets de stages ci-dessous sont proposés par le
département « Data Management and Software »,
responsable du développement des systèmes numériques
et des logiciels bords de ces véhicules spatiaux.
Ils visent soit à améliorer les programmes existants, soit à préparer les projets futurs (en particulier Ariane 6).
Titre
Description
1. Etat de l’art et prototypage de mécanismes d’échange inter-processeur
Les architectures multiprocesseurs ou multi-cœurs facilitent le regroupement de fonctions
avioniques dans un même équipement. Les calculateurs embarqués des engins spatiaux
exécutent des logiciels temps réels critiques dont une des principales caractéristiques est d’avoir
un comportement prédictible et borné dans le temps, c’est-à-dire déterministe. L’exécution en
parallèle de fonctions logicielles sur des multiprocesseurs ou multi-cœurs, tout en accroissant les
performances de calcul, amène des problématique d’accès concurrents à des ressources
(mémoires, entrées-sorties ), de synchronisation, d’inter-blocage, et, plus généralement, une
difficulté à construire et démontrer un comportement déterministe.
Les objectifs de ce stage sont les suivants.
- Rechercher et établir une liste de mécanismes matériels et logiciels permettant de gérer des
échanges et accès concurrents entre processeurs ou cœurs d’un même composant.
- Analyser si l’emploi de ces mécanismes matériels et logiciels dans différents types
d’architectures numériques permet d’obtenir un comportement déterminisme ou pas. On
pourra analyser par exemple les solutions proposées sur différentes architectures
matérielles (carte SCALEO multiprocesseur ARM, ARM multi-cœur, Leon4-RT, ).
- Prototyper et tester le fonctionnement et les performances de différents mécanismes sur
une carte SCALEO multiprocesseur ARM.
Compétences
requises
Période /
Durée
Ce stage offrira au candidat la possibilité de découvrir de nombreux aspects du développement
des calculateurs spatiaux et logiciels embarqués temps réels critiques, du point de vue matériel
et logiciel.
Compétences en systèmes embarqués et prototypage requises : compilation et exécution d'un
applicatif sur carte de développement.
Langages C/C++, éventuellement Ada.
La connaissance des architectures multiprocesseurs ou multi-cœurs et des composants ARM est
un plus.
6 mois
1/4
Sujets de stage 2016
Spécialité Informatique / Electronique
V-15/10/2015
Titre
Description
Compétences
requises
Période /
Durée
2. Preuve formelle de logiciels critiques embarqués
Dans le domaine spatial, la fiabilité d’un logiciel critique embarqué doit être exemplaire. Les
conséquences d’un dysfonctionnement peuvent être catastrophiques et provoquer la perte du
lanceur.
Pour garantir ce niveau de fiabilité, l’effort de test à déployer est considérable. Le principal
inconvénient du test est qu’il ne permet pas d’obtenir une couverture exhaustive de mise en
situation du logiciel. Vérifier qu’une fonction réalise correctement la somme de deux entiers
64
codés sur 32 bits reviendrait à tester 2 combinaisons de deux entiers.
Une bonne stratégie de test consiste donc à sélectionner un sous-ensemble de scénarii
pertinents.
Le langage SPARK permet d’introduire formellement dans un logiciel critique des propriétés qui
vont pouvoir être prouvées mathématiquement et donc exhaustivement. De plus, cette
technologie récente a l’avantage par rapport aux langages de spécification formelle traditionnels
(B, Z) d’être plus accessible à un développeur néophyte.
Sur la base d’une première étude d’évaluation de la technologie SPARK réalisée en 2015, le but
de ce stage est :
- d’étudier et de prototyper une architecture critique entièrement compatible de SPARK 2014
- d’évaluer par comparaison avec les méthodes de test traditionnelles la capacité de la
technologie à se substituer à des activités de test pour en réduire le coût. L’étude de cas
sera basée sur les fonctions opérationnelles d’un lanceur spatial et sera mise en œuvre sur
des processeurs utilisés dans les calculateurs spatiaux.
- d’amorcer un guide méthodologique destiné à un futur utilisateur en s’inspirant des
recommandations émises par la DO 178C sur la preuve formelle.
Les compétences requises sont :
- Une première sensibilisation aux techniques de preuve formelle
- Une bonne connaissance des langages de programmation structurés (ADA, C++)
- Des notions générales sur le développement de logiciels temps réel
6 mois
2/4
Sujets de stage 2016
Spécialité Informatique / Electronique
V-15/10/2015
Titre
Description
3. Outil d’analyse d’ordonnancement d’un réseau Ethernet déterministe
Les réseaux Ethernet déterministes utilisés dans les lanceurs spatiaux nécessitent d’être
configurés. Un outil permet de générer automatiquement cette configuration à partir d’une
description du réseau.
Ce stage a deux objectifs :
- la définition, le développement et la validation d’un logiciel (à interface graphique) qui
analysera la configuration du réseau afin de confirmer la bonne prise en compte des
exigences systèmes
- la génération de configurations représentatives du système lorsque la plateforme réseau est
incomplète
Les activités prévues sont :
- Etude de la mise en œuvre du réseau Ethernet déterministe dans différents cas
d’applications.
- Développement de l’outil d’analyse.
- Validation de l’outil développé sur une plateforme de démonstration avionique.
Compétences
requises
Période /
Durée
Titre
Description
Compétences
requises
Période /
Durée
Synthèse des objectifs :
- Maitrise du protocole utilisé
- Maitrise de la programmation embarquée sur calculateur et utilisation de pilotes
- Rédaction de la spécification de l’outil logiciel (définition de besoin)
- Développement du logiciel (avec une bibliothèque graphique)
- Mise en application et validation de l’outil sur plateforme.
- - Rédaction du manuel utilisateur.
Maitrise des langages C, C++, de l’environnement Linux, du protocole Ethernet et exécution d’un
applicatif sur carte de développement.
La connaissance du protocole AFDX et/ou TTEthernet et du langage PHP serait un plus
6 mois
4. Modélisation de spécifications logicielles lanceurs avec Cappella
Ces dernières années ont vu l’explosion des méthodes de modélisation pour faciliter le travail
collaboratif à grande échelle ou bien entre divers cœurs de métiers.
Ces méthodes de modélisation (et leurs outils) sont souvent spécialisées sur un domaine : par
exemple MEGA pour l’ingénierie système de systèmes, SysML pour l’ingénierie système, UML
pour l’ingénierie logicielle, pour les plus connues.
L’avenir de la modélisation passe par une plus grande interaction entre ces domaines, et à ce
titre, certains outils et langages cherchent à fusionner les grands principes de ces langages.
L’objectif du stage est d’évaluer l’outil / langage Cappella afin de couvrir les aspects du
développement logiciel correspondant à MEGA et à SysML (ainsi qu’une partie d’UML). Des
premières études ont fourni un avis favorable quant à l’utilisation de Cappella pour les aspects
systèmes de systèmes (un système lanceur étant composé de plusieurs sous-systèmes : soussystème électrique, sous-système logiciel, etc )
Le stagiaire devra :
- S’approprier la méthode de modélisation de la spécification logicielle en SysML utilisée pour
les lanceurs spatiaux
- Etudier et prototyper sous Cappella une partie de cette spécification logicielle avec le même
niveau de détail que sous SysML. Comparer les deux approches
- Analyser les aspects industrialisation de l’approche et des capacités de Cappella à
s’interfacer avec d’autres outils utilisés pour le développement logiciel
Outil de modélisation SysML ou UML
Connaissance d’un langage de programmation
Connaissance (optionnelle) des méthodes de développement logicielles.
6 mois
3/4
Sujets de stage 2016
Spécialité Informatique / Electronique
V-15/10/2015
Titre
Description
5. Développement d’une interface simulateur / programme de vol
SMP (Simulation Model Portability) est un standard proposé par l’agence spatiale européenne
pour assurer l'interopérabilité des environnements de simulation et des modèles de simulation.
Ce standard est actuellement en révision 2 et est plus connu sous l'acronyme SMP2. Il est
également connu sous la référence ECSS-E-40-07 (Simulation Modelling Platform).
Le stage proposé consiste à développer l’infrastructure pour la réalisation d’une interface de
communication entre l’environnement de prototypage du logiciel de vol d’un lanceur spatial et un
simulateur de dynamique lanceur.
En premier temps une analyse du modèle SMP2 et de son implémentation sera nécessaire pour
pouvoir proposer des solutions adaptées au besoin.
Dans un second temps, les propositions seront analysées et la plus adaptée sera développée.
Compétences
requises
Période /
Durée
Titre
Description
Intérêt du stage : Découverte du contexte Ariane 6 et des technologies utilisées pour le
développement logiciel de vol.
Notions en programmation orientée objet, C++, Ada 2012, Sockets, TCP/IP.
6 mois
6. Génération automatique de tests
Le stage se situe dans le cadre des activités de développement des logiciels de vol des lanceurs
spatiaux et plus particulièrement dans la phase de test de ces logiciels.
L’objectif principal du stage est de mettre en place un outil de génération automatique de tests.
La spécification du logiciel est modélisée en SysML. Certains algorithmes sont décrits sous
forme de diagrammes. Le but du stage sera donc de reprendre ces diagrammes, d’en extraire
les informations, de les traiter et de créer des scripts de tests compatibles de l’environnement
d’analyse automatisée existant sur le projet et permettant de valider le logiciel de vol du lanceur.
Ce stage reposera sur des concepts mis en places dans des stages précédents.
Compétences
requises
Période /
Durée
Intérêt du stage :
- Intégré au sein de l'équipe en charge des logiciels de vol, le stagiaire devra d'abord
comprendre les processus et contraintes de développement des logiciels critiques actuels
pour ensuite proposer une solution adaptée.
- Découverte et contribution, à travers l’outil développé au sein du stage, au développement
des logiciel de lanceurs spatiaux.
Connaissance des langages de programmation JAVA et UML, Perl et SysML étant un plus.
Environnements Linux et Windows
6 mois
4/4