Formazione MATLAB e Simulink

Polyspace per la Verifica del Codice C/C++

Guarda il programma e iscriviti

Dettagli dei corsi

Questo corso pratico della durata di due giorni illustra l’utilizzo di Polyspace Bug Finder™ e Polyspace Code Prover™ per verificare la correttezza del codice, migliorare le metriche sulla qualità del software e assicurare l’integrità del prodotto. Questo corso è pensato per gli ingegneri che sviluppano software o modelli mirati a sistemi embedded. Elenco degli argomenti:
 
  • Creazione di un progetto di verifica
  • Visualizzazione e comprensione dei risultati di verifica
  • Emulazione degli ambienti di esecuzione target
  • Gestione di funzioni e dati mancanti
  • Gestione di codice non testato (contrassegnato dal colore arancione nei prodotti Polyspace®)
  • Applicazione delle regole MISRA-C®
  • Documentazione dei risultati dell’analisi

Giorno 1/3


Panoramica sul workflow Polyspace

Obiettivo: Acquisire familiarità con Polyspace Bug Finder e Polyspace Code Prover e analizzare un esempio introduttivo.

  • Workflow di verifica del codice
  • Esecuzione di un'analisi Bug Finder
  • Esecuzione di una verifica di Code Prover
  • Analisi e risoluzione di problemi software

Analisi con Polyspace Bug Finder

Obiettivo: Analizzare il codice che potrebbe non essere conforme allo standard ANSI C, valutare l'ambiente di run-time e correggere difetti e violazioni delle regole di codifica utilizzando Polyspace Bug Finder.

  • Creazione di un progetto Polyspace
  • Artefatti diffusi dell'ambiente di run-time
  • Gestione del codice specifico per il processore
  • Impostazione delle informazioni dell’hardware target
  • Analisi dei difetti in Polyspace Bug Finder
  • Analisi delle violazioni della regola MISRA C
  • Misurazione delle metriche del codice
  • Progetti di modello

Analisi dei risultati in Polyspace Code Prover

Obiettivo: Acquisire padronanza nell'interpretazione dei risultati ottenuti con Polyspace Code Prover.

  • Panoramica sull’interpretazione astratta
  • Analisi delle chiamate ricorsive
  • Navigazione nel codice sorgente
  • Interpretazione dei risultati Polyspace Code Prover
  • Visualizzazione dell'uso delle variabili globali nel codice sorgente

Controlli per la verifica del codice

Obiettivo: Trovare errori di run-time utilizzando gli strumenti di diagnostica disponibili in Polyspace Code Prover.

  • Panoramica sui controlli del codice sorgente C
  • Controlli degli errori di run-time di Polyspace Code Prover
  • Opzioni disponibili per la verifica

Giorno 2/3


Gestione delle verifiche e dei risultati in Polyspace Code Prover

Obiettivo: Gestire i risultati di verifica che contengono grandi quantità di controlli non verificati.

  • Workflow di verifica di Code Prover
  • Controllo della sequenza di esecuzione del programma
  • Prioritizzazione ai controlli degli errori di run-time arancioni

Aumento della precisione nelle verifiche con Polyspace Code Prover

Obiettivo: Scoprire come Polyspace Code Prover tratta il codice mancante durante la verifica e come influenzare questo comportamento per generare verifiche più significative.

  • Verifica di robustezza e verifica contestuale
  • Stubbing automatico
  • Specificazione del range dei dati
  • Esecuzione manuale dello stubbing

Analisi dell’integrazione con Polyspace Access

Obiettivo: Scopri come gestire i risultati della verifica con complessità crescente del codice utilizzando Polyspace Access™ e come interpretare e confrontare l'analisi integrata con l’analisi di robustezza.

  • Workflow successivi all'invio con Polyspace Access
  • Verifica contestuale
  • Rilevamento dei difetti di integrazione e degli errori di run-time

Analisi delle applicazioni

Obiettivo: Ripassare le procedure e le opzioni utili nella verifica delle applicazioni complete.

  • Problemi del software applicativo
  • Analisi dei problemi di accesso simultanei ai dati
  • Sostituzione di funzioni di assemblaggio o hardware
  • Gestione del codice di terze parti in Polyspace
  • Creazione della documentazione

Giorno 3/3


Laboratorio pratico (opzionale)

Obiettivo: Dedicare del tempo al ripasso di ciò che si è imparato e all’utilizzo di Polyspace direttamente nel proprio progetto. Elenco dei potenziali argomenti:

  • Controlli con Polyspace Bug Finder
  • Verifica del codice C++
  • Analisi delle attività e dei dati condivisi
  • Verifica del codice generato
  • Ripasso del processo di sviluppo
  • Integrazione del workflow
  • Installazione del software client/server
  • Configurazione di Polyspace per il codice del progetto
  • Interpretazione dei risultati

Appendice F: Analisi dell’integrazione con Polyspace Desktop

Obiettivo: Scoprire come gestire le verifiche con codice di complessità crescente e come interpretare e confrontare l'analisi integrata con l'analisi di robustezza.

  • Verifica contestuale
  • Creazione di nuovi moduli
  • Rilevamento dei difetti di integrazione e degli errori di run-time

Livello: Intermedio

Prerequisiti:

  • Conoscenza avanzata di C o C++

Durata: 2 giorni

Lingue: English, 中文, 日本語, 한국어

Guarda il programma e iscriviti