Progetti di stage in MBDA

MBDA Italia, società del gruppo Leonardo, operante nel settore della difesa offre diverse opportunità di Stage finalizzati all’assunzione all’interno della funzione Software Engineering Technologies (SET).

Di seguito alcuni progetti: 

Progetto 1

Descrizione delle attività:

La Risorsa prescelta si occuperà di studiare, customizzare ed integrare una distribuzione Linux che supporti la navigazione di un drone manovrante ad alta velocità.

Partendo dai requisiti funzionali e prestazionali, la Risorsa dovrà studiare i vari progetti Open Source disponibili che supportano l’implementazione di sistemi di Guida Navigazione e Controllo per droni ed individuerà una soluzione Linux compatibile con una piattaforma commerciale (Drone reale). Individuata la soluzione, sarà realizzato un prototipo HW/SW e ne saranno valutate le performance reali in termini di Hard Real Time, affidabilità e robustezza. L’output atteso sarà una distribuzione Linux minimale con caratteristiche hard reale.

Durante l’attività verranno sviluppate e consolidate le seguenti competenze tecniche:

  • Design, implementazione e test del software low-level con processi agili;
  • Acquisizione know-how in materia di software engineering e mission critical.

Obiettivi formativi:

  • Sviluppare le capacità per la creazione di un nuovo prodotto in base a requisiti e analisi critica dei requisiti stessi.
  • Sviluppare competenze avanzate di Linux system administration, shell scripting, Linux programming.
  • Acquisire competenze di integrazione HW/SW in un contesto industriale di un prodotto complesso.
  • Sviluppare le capacità di realizzazione di strategie di testing e verifica di requisiti.

 

***

 

Progetto 2

Descrizione delle attività: 

Obiettivo del progetto è quello di automatizzare molte delle attività che svolgiamo attualmente nell’ambito del testing. In questa ottica, con l’ausilio di tools come VectorCast, la completa automatizzazione del testing è un obiettivo primario e l’ambizione principale è l’automazione con VectorCast C++ per ambienti safety critical dei seguenti 3 livelli: 

  • Test Coverage of Software Structure (Statement Coverage). 
  • Test Coverage of Software Structure (Decision Coverage). 
  • Test Coverage of Software Structure (Modified Condition Decision Coverage). 

La seconda priorità è legata alla completa integrazione dei tools usati nel processo di sviluppo e quindi: 

  • Integrazione di IBM® CLM tools e VectorCAST 
  • Linking SW requirements ai risultati dell’esecuzione dei Test Cases, code coverage metrics per una completa tracciabilità. 
  • Continous Integration ed in particolare integrazione con Jenkins per l’esecuzione automatica dei test. 

Obiettivi formativi: 

  • Sviluppo di capacità per la creazione di un processo di testing automation applicato per lo sviluppo di un prodotto complesso come può essere un sistema distribuito. 
  • Sviluppo di competenze trasversali: progettazione software, competenze di ciclo di vita di un progetto, organizzazione del lavoro, team working. 

 

***

 

PROGETTO 3 

Machine Learning applied to Predictive Maintenance 

Descrizione delle attività: 

La Risorsa, inserita nel team internazionale di Research & Development Software, si occuperà di predictive maintenance per la previsione e/o diagnosi di failure di apparati elettronici. In un’ottica Agile, si adotterà un processo iterativo ed incrementale, nel quale la risorsa si occuperà dell’analisi dello stato dell’arte, della modellazione di una soluzione per gli obiettivi specifici dello stage e della realizzazione di un prototipo della soluzione.

La Risorsa avrà l’opportunità di approcciare e prendere confidenza con gli algoritmi allo stato dell’arte disponibili in questo ambito. Aspetto importante in fase di modellizzazione sarà quello di tenere sempre in considerazione vincoli eventualmente esistenti (derivanti ad esempio dal contesto in cui questi apparati si trovano ad operare) e di trovare e proporre soluzioni innovative. In aggiunta agli aspetti strettamente algoritmici, un elemento importante nella fase di prototipazione sarà la definizione di un’architettura che sfrutti le tecnologie IoT per supportare la raccolta dei dati, l’analisi, la generazione di predizioni e la presentazione delle stesse attraverso un’interfaccia grafica (di tipo web).

Saranno considerati requisiti preferenziali:

  • Competenza in machine learning, intelligenza artificiale e statistica
  • Dimestichezza con framework e tool utilizzati per il machine learning ed il calcolo scientifico (es. scikit-learn, TensorFlow, SciPy, Matlab)
  • Competenza in software engineering e IoT
  • Dimestichezza con tecnologie per lo sviluppo di applicazioni Web e per la presentazione di dati (es. Angular, React, Boostrap, D3.js)

Obiettivi formativi: 

  • Sviluppo di competenze di machine learning applicato alla predictive maintenance.
  • Sviluppo di competenze nella definizione di architetture complesse per la raccolta ed analisi di dati in ambito IoT.
  • Sviluppo di capacità di realizzazione di interfacce web, con particolare enfasi alla visualizzazione di dati ed al “look and feel”.
  • Sviluppare la capacità di realizzazione di strategie di testing e verifica dei requisiti.

 

***

 

PROGETTO 4

Cyber Security Software 

Descrizione delle attività: 

Obiettivo del progetto è quello di realizzare un prototipo di un sistema di remote software update, nell’ambito del contesto Cyber Security Software. Il remote software update è un sistema che permette l’aggiornamento di pacchetti sw da una stazione remota collegata su rete Ethernet in un contesto Internet of Things. La peculiarità sarà nel garantire la massima sicurezza da attacchi esterni in base alle minacce identificate. Il sistema di update deve poter aggiornare, in modalità sicura, sia pacchetti di sistema operativo (Linux Gentoo), sia applicativi, quindi la modalità agentless è da preferire.

Lo stage ha lo scopo di maturare il processo di aggiornamento sicuro end-to-end, quindi partendo dall’identificazione della necessità (vulnerabilità identificata), fino al test del buon esito dell’update stesso ( CRC, firma).

Obiettivi formativi: 

  • Sviluppo di competenze di cyber security in ambito Difesa.
  • Sviluppo di conoscenze di Linux system administration e shell scripting.
  • Sviluppo di capacità di realizzazione di strategie di testing e verifica di requisiti.

 

***

 

PROGETTO Embedded Software 

Descrizione delle attività: 

La Risorsa prescelta sarà inserita nel team Embedded Software.

Obiettivo del progetto è quello di utilizzare il tool Mathworks Simulink per sviluppare SW ottimizzato per architetture ARM V7 e che sfrutti la tecnologia Neon.

Il progetto si svolgerà in diverse fasi:

  • Studio dell’architettura ARM V7
  • Studio della tecnologia ARM Neon
  • Valutazione dei vantaggi offerti dalla tecnologia Neon e identificazione dei limiti di utilizzo 
  • Preparazione in Simulink di un modello che sia rappresentativo degli algoritmi di data processing per sistemi di guida e controllo
  • Configurazione del tool di modelling allo scopo di generare codice efficiente e ottimizzato per architetture ARM V7 + Neon
  • Identificazione dei vincoli da rispettare nella definizione dell’architettura del modello

L’obiettivo dovrà essere raggiunto confrontando le prestazioni del codice generato automaticamente dal tool rispetto a soluzioni tradizionali di sviluppo (handcoded).

Obiettivi formativi: 

  • Sviluppo di competenze avanzate in ambito di sviluppo SW real time, altamente ottimizzato per piattaforme HW multi-core.
  • Acquisire competenze sulla configurazione e sull’utilizzo di tool di modellazione e simulazione al fine di produrre SW per sistemi di guida e controllo che rispetti elevati standard qualitativi.
  • Acquisire competenze di integrazione HW/SW in un contesto industriale di un prodotto complesso.
  • Sviluppare la capacità di realizzazione di strategie di testing e verifica dei requisiti.

 

Annunci