Contenuto principale

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.

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.