Siti web

Studio mostra la qualità del codice open-source

Intervista a Jacqueline Poh - Codice, La vita è digitale

Intervista a Jacqueline Poh - Codice, La vita è digitale
Anonim

Il numero complessivo di difetti nei progetti open source è in calo, un nuovo studio del fornitore Coverity ha trovato.

Coverity, produttore di strumenti per l'analisi del codice di programmazione, ha ricevuto un contratto nel 2006 dal Dipartimento della Sicurezza Nazionale degli Stati Uniti per contribuire a migliorare la qualità del software open source, che viene utilizzato sempre più dalle agenzie governative.

Il fornitore ha creato un sito Web attraverso il quale progetti e sviluppatori open source possono inviare il codice da analizzare. Il fornitore assegna i progetti a una serie di "pioli" a seconda di quanti difetti risolvono.

La "densità dei difetti" è diminuita del 16% negli ultimi tre anni tra i progetti scansionati attraverso il sito e sono stati eliminati circa 11.200 difetti, secondo l'ultimo rapporto di Coverity.

Quattro progetti hanno ottenuto lo status di "Rung 3" di primo livello, dopo aver risolto i difetti scoperti durante il Rung 1 e 2, ha detto Coverity. Sono Samba, tor, OpenPAM e Ruby.

Il sito di scansione ha analizzato finora oltre 60 milioni di linee di codice uniche da 280 progetti, secondo Coverity. Più di 180 progetti hanno sviluppatori che lavorano attivamente alla scansione di progetti open-source.

Il servizio di scansione di Coverity utilizza l'analisi statica, che viene utilizzata per verificare il codice per problemi di sicurezza o prestazioni senza dover eseguire un'applicazione stessa. Questo è preferibile perché "testare ogni percorso in un programma complesso mentre è in esecuzione richiede la costruzione di un gran numero di casi di test speciali o la strutturazione del codice in modi speciali", ha detto Coverity.

"L'analisi statica [strumenti] non ti dirà che il tuo processo aziendale funzioni correttamente … ma ti diranno che il codice stesso è tecnicamente solido e segue il tipo di best practice di programmazione che ti aspetteresti di vedere dal codice che è passato attraverso una corretta revisione del codice ", ha detto Forrester Research l'analista Jeffrey Hammond via e-mail.

Gli strumenti tendono a essere più utili per trovare "anti-pattern" strutturali nel codice, pratiche di programmazione scadenti che possono causare problemi di prestazioni e sicurezza come perdite di memoria e overflow del buffer, nonché condizioni più esotiche come errori dovuti all'esecuzione parallela del codice in un ambiente CPU multicore ", ha aggiunto.