Workflow utilizzando sia Polyspace Bug Finder che Polyspace Code Prover
Polyspace® Bug Finder™ e Polyspace Code Prover™ eseguono diversi tipi di analisi statiche con obiettivi diversi. Code Prover cerca di dimostrare matematicamente l'assenza di un insieme di errori di runtime. Bug Finder rileva molti tipi di violazioni delle regole di codifica e difetti di codifica.
Se si dispone sia di Bug Finder che di Code Prover, integrare i prodotti in diverse fasi del workflow di sviluppo software. Ad esempio:
Tutti gli sviluppatori dell'organizzazione possono eseguire Bug Finder sul codice appena sviluppato. Per mantenere gli standard in tutta l'organizzazione, è possibile distribuire una configurazione comune che ricerca solo specifici tipi di difetti.
Code Prover può essere distribuito come parte della suite di test unitari.
È possibile eseguire Code Prover solo sui componenti critici del progetto, mentre Bug Finder viene eseguito sull'intero progetto.
È possibile eseguire Code Prover su moduli di codice a livello di test unitario ed eseguire Bug Finder durante l'integrazione dei moduli.
È possibile eseguire Code Prover prima dei test unitari. Code Prover controlla in modo esaustivo il codice e cerca di dimostrare la presenza o l'assenza di errori. Invece di scrivere test unitari per l'intero codice, è possibile scrivere test solo per il codice non comprovato. L'utilizzo di Code Prover prima dei test unitari riduce drasticamente gli sforzi di test.
A seconda della natura del workflow di sviluppo software e delle risorse disponibili, esistono molti altri modi per integrare i due tipi di analisi. È possibile eseguire entrambi i prodotti sul desktop durante lo sviluppo o come parte dei test automatici su un server remoto. Si noti che è più facile interpretare e correggere i bug se identificati nelle fasi più vicine allo sviluppo. È vantaggioso utilizzare entrambi i prodotti se vengono distribuiti precocemente e frequentemente nel processo di sviluppo.
Se si eseguono Bug Finder e Code Prover sullo stesso codice, è necessario tenere presenti due considerazioni importanti.
A partire dalla release R2022a, Polyspace Bug Finder è lo strumento consigliato per verificare la conformità agli standard di codifica esterni quali AUTOSAR C++14 o MISRA C++:2008. Controllare la violazione di questi standard di codifica quando si utilizza Bug Finder sul codice. Potrebbe essere stato utilizzato Polyspace Code Prover per controllare questo aspetto. Migrare il workflow per utilizzare Bug Finder. Vedere Migrate Code Prover Workflows for Checking Coding Standards and Code Metrics to Bug Finder.
È possibile utilizzare lo stesso progetto per le analisi Bug Finder e Code Prover. Il seguente insieme di opzioni è comune a Bug Finder e Code Prover:
Potrebbe essere necessario modificare un maggior numero di opzioni predefinite quando si esegue la verifica con Code Prover, poiché Code Prover è più rigoroso riguardo agli errori di compilazione e collegamento.