EMB_77

EMBEDDED SETTEMBRE 54 SOFTWARE | EMBEDDED SW TOOL Natura del codice embedded Diversamente dal software ordinario, pensato per sistemi desktop per uso aziendale e commerciale, il software embedded è sviluppato per dispositivi ! À dispositivi indossabili e molte altre piattaforme hardware, oggi sempre più spesso appartenenti al mondo IoT (Internet of Things) e implementabili nel settore industriale, medicale, come nell’ambito dei trasporti, della produzione o delle applicazioni automotive. Per lo sviluppo di tale codice, vengono tipicamente utilizzati vari tipi di strumenti: dai text editor, ai compilatori, agli assemblatori, agli # 2 À - razione e ridurre la curva di apprendimento dei singoli tool, standardizzare e velocizzare il lavoro dei programmatori, le suite software IDE (inte- grated development environment) raccolgono tali À # Le suite IDE, di tipo proprietario od open source, sono numerose (Eclipse, Visual Studio, Matlab, Mplab, NetBeans, Arduino) e possono comprende- re anche tool di testing. Tradizionalmente, la fase di testing del software rappresenta l’ultimo pas- saggio nel processo di sviluppo del codice: tuttavia, per rispondere ai moderni requisiti di progetto e time-to-market, implementare velocemente nuove funzionalità, e anche per eliminare prima possibi- le eventuali bug e difetti di progettazione del co- dice, che nei sistemi embedded possono ripercuo- À !! À ! in questo settore, stanno sempre più orientandosi, dai classico modello “waterfall”, verso paradigmi d’integrazione e distribuzione continua del soft- ware (CI/CD), e adottando modelli Agile/DevOps, basati su metodologie di sviluppo iterative e stra- tegie di test automatizzato. Testing del software embedded, i punti critici La fase di testing risulta particolarmente critica per collaudare e validare le prestazioni del soft- ware embedded, nonché la sua qualità e rispon- denza ai requisiti richiesti dal committente del progetto. Come accennato, a differenza dei con- venzionali sistemi desktop, una delle principa- À / - legata alla sua stretta dipendenza dall’hardware che andrà a controllare e far funzionare; hardware target che può non essere prontamente disponibi- le per il collaudo, come nel caso delle necessità di testing di dispositivi SoC (system on chip). A tal scopo vengono utilizzati sistemi di emulazio- ne e simulazione dell’hardware target. Questi tecniche, tuttavia, non sempre sono in grado di rappresentare in maniera fedele e precisa il com- portamento del dispositivo, e le sue prestazioni in condizioni reali. Nel ciclo di progettazione, un aspetto critico è la necessità d’introdurre automa- zione nelle attività di testing del software embed- ded: a tale necessità rispondono varie tipologie di tool presenti sul mercato, fra cui si possono citare, ad esempio, strumenti e soluzioni forniti da socie- tà come Parasoft, Razorcat, Vector . Un altro punto critico, nel software embedded, è l’automazione delle attività di testing (Fonte: Pixabay)

RkJQdWJsaXNoZXIy MTg0NzE=