Consigli generali
Scopo
|
Consigli generali per ciascuna revisione.
|
Quando si costruisce un software di alta qualità, la revisione dell'implementazione diventa complementare ad altri
meccanismi qualitativi. Prima di revisionare l'implementazione, compilarla, ed utilizzare tool, quali programmi di
controllo delle regole del codice, per identificare quanti più errori è possibile. Utilizzare tool che visualizzano il
codice. Sarà possibile identificare ulteriori errori ed eliminarli prima della revisione dell'implementazione se si
esegue il codice utilizzando tool di identificazione di errori di run-time.
I vantaggi di questa forma di verifica sono:
-
Rafforzare ed incoraggiare uno stile di codifica comune del progetto. La revisione del codice è un metodo concreto
per sollecitare i membri a seguire le linee guida di programmazione. Per assicurare ciò, è più importante
revisionare i risultati di tutti gli autori ed implementatori, che revisionare tutti i file di codice sorgente.
-
Trovare errori che i test automatizzati non trovano. Le revisioni dell'implementazione identificano errori diversi
da quelli trovati dai test.
-
Condividere le informazioni tra membri, e trasferire le conoscenze dal personale più esperto a quello meno.
Vi sono diverse tecniche per eseguire la revisione dell'implementazione. Utilizzare una delle seguenti:
-
Ispezione. Una tecnica di analisi formale in cui l'implementazione viene esaminata in dettaglio. Le
ispezioni sono considerate le tecniche di analisi più produttive, tuttavia richiedono un addestramento, ed una
preparazione.
-
Esplorazione. Una tecnica di valutazione dove l'autore guida uno o più revisori attraverso
l'implementazione. I revisori faranno delle domande, e commenteranno le tecniche, lo stile, i possibili errori, le
violazione degli standard di codifica e così via.
-
Lettura del codice. Una o più persone leggono il testo. Quando sono pronti, potranno confronteranno i propri
commenti e domande. La riunione potrà essere evitata, tuttavia, i revisori potranno trasferire le proprie domande e
commenti all'autore in forma scritta. La lettura del codice si consiglia per la verifica di piccole modifiche.
Gli skill richiesti per questo ruolo sono simili a quelli richiesti per il Ruolo:
Implementatore; le persone con questo ruolo sono spesso considerate esperte nel linguaggio di programmazione
utilizzato per il codice che si revisiona. In molti progetti questo ruolo è assegnato utilizzando programmatori esperti
del team di implementazione.
Consultare inoltre Tecniche: Revisioni.
|
Definizione dei punti di controllo dell'implementazione
Scopo
|
Definire un elenco di controllo per la revisione dell'implementazione.
|
Questa sezione presenta un elenco di controllo generale per la revisione dell'implementazione, come esempio di ciò da
controllare. Le linee guida di programmazione sono comunque la fonte principale di informazioni per sulla qualità del
codice.
Generale
-
Il codice segue le linee guida di programmazione?
-
Il codice è auto-documentato? È possibile comprenderlo semplicemente leggendolo?
-
Sono stati presi in considerazione tutti gli errori identificati con tool di controllo delle regole di codifica e/o
con tool di identificazione di errori run-time?
Commenti
-
I commenti sono aggiornati?
-
I commenti sono chiari e corretti?
-
I commenti sono semplicemente modificabili, se si cambia il codice?
-
I commenti sono concentrati sulla spiegazione del perché, e non del come?
-
Sono stati commentati tutti i casi eccezionali, le sorprese e le soluzioni alternative?
-
Sono stati commentati gli obiettivi di ciascuna operazione?
-
Sono stati commentati altri fatti rilevanti di ciascuna operazione?
Codice sorgente
-
Ciascuna operazione ha un nome che descrive cosa fa?
-
I parametri hanno nomi descrittivi?
-
I percorsi di ciascuna operazione cono chiaramente distinguibili da quelli eccezionali?
-
L'operazione è troppo lunga, e può essere semplificata estraendo istruzioni relative ed inserendole in operazioni
private?
-
L'operazione è troppo lunga, e può essere semplificata riducendo il numero di punti decisionali? Un punto
decisionale è dove un'istruzione può prendere percorsi differenti, ad esempio, le istruzioni if-,
else-, and-, while-, e case.
-
È stata minimizzata la nidificazione dei loop?
-
Le variabili sono denominate correttamente?
-
Il codice è diretto, ed evita soluzioni "intelligenti"?
|
Preparazione della relazione revisionale e della documentazione degli errori
Scopo
|
Documentare i risultati della revisione.
Assicurarsi che gli errori identificati siano documentati.
|
Dopo ciascuna riunione di analisi, è necessario documentare i risultati in una Relazione
revisionale. In aggiunta, è necessario documentare gli errori in Richieste
di modifica (ed eventualmente assegnarli a qualcuno che si faccia carico della risoluzione).
|
|