PDA

View Full Version : [C/C++] Metrica


sottovento
16-09-2010, 14:25
Gentlemen
qualcuno saprebbe indicarmi una buona applicazione, magari gratuita, per calcolare i principali valori di metrica?
Se non conoscete nulla di gratuito, conoscete qualcosa di economico?

Il motivo e' semplice: alcuni colleghi hanno il vizio di scrivere:


if (condizione)
{
// Mettere qui 1200 righe di codice, comprendenti anche for, while ed if
}


Quando poi il sopracitato codice ha problemi o deve essere modificato, mi trovo a disagio. Siccome non capiscono il problema, sono riuscito ad autorizzare la creazione di un piccolo ufficio, avente la funzione di assicurare la qualita' del software.
Sara' composto da junior, e faranno il primo filtraggio, rimandando indietro perle di questo tipo. I problemi tecnici/tecnologici piu' importanti dovranno essere valutati da personale piu' esperto.

Sto quindi creando delle check-list che dovrenno essere seguite passo passo dai membri di questo ufficio, al fine di risparmiare un sacco di tempo/soldi nella fase di commissioning.

tomminno
16-09-2010, 14:34
CppDepend.

sottovento
16-09-2010, 14:42
CppDepend.

Grazie, sembra quello che mi serve.

C'e' qualche altra applicazione, magari gratuita?

tomminno
16-09-2010, 14:44
Sara' composto da junior, e faranno il primo filtraggio, rimandando indietro perle di questo tipo. I problemi tecnici/tecnologici piu' importanti dovranno essere valutati da personale piu' esperto.


Ecco mi viene in mente una domanda per te: come concili questo controllo con i tempi di consegna?
Io mi ritrovo spesso nella condizione di avere codice schifoso, ma se lo rimando indietro i tempi di consegna slittano inevitabilmente, anche perchè difficilmente ci lavorerà qualcuno differente da chi ha realizzato la prima versione.
E difficilmente su contratto puoi scrivere che il codice deve essere di qualità: la qualità è difficilmente misurabile e quindi contrattualizzabile nero su bianco. Dopotutto il codice funziona anche se sta tutto nel main.

tomminno
16-09-2010, 14:48
Grazie, sembra quello che mi serve.

C'e' qualche altra applicazione, magari gratuita?

SourceMonitor, ma non c'è paragone con CppDepend. Ovviamente se devi farci un reparto di QA una pensatina ce la farei.
Effettivamente però non hai specificato su che piattaforma, se tutto fosse su Linux, non saprei. Io comunque utilizzo CppDepend anche su progetti Linux, ovvio che se c'è la soluzione di Visual Studio è tutto più facile.

sottovento
16-09-2010, 15:20
Ecco mi viene in mente una domanda per te: come concili questo controllo con i tempi di consegna?
Io mi ritrovo spesso nella condizione di avere codice schifoso, ma se lo rimando indietro i tempi di consegna slittano inevitabilmente, anche perchè difficilmente ci lavorerà qualcuno differente da chi ha realizzato la prima versione.
E difficilmente su contratto puoi scrivere che il codice deve essere di qualità: la qualità è difficilmente misurabile e quindi contrattualizzabile nero su bianco. Dopotutto il codice funziona anche se sta tutto nel main.

Probabilmente lavoriamo in campi diversi. Io lavoro nel settore siderurgico e facciamo grandi impianti. Le firme dei contratti avvengono ANNI prima dell'inizio dei lavori, spesso davanti a capi di stato (ho qualche foto con Putin, quello del lettone :D ).
Il software viene ovviamente scritto in base delle esigenze della singola installazione, a partire da un nucleo comune.
I miei colleghi che lavorano in ufficio preparano il suddetto software, il quale poi viene provato mediante simulatori nelle sale di integrazione.

Finita l'integrazione, il software passa al mio ufficio, cioe' l'ufficio (virtuale) delle persone che effettuano il commissioning: andiamo presso il cliente ad installarlo e far partire l'impianto. Inoltre scrivo le parti mancanti (per es. integrazione con il software di fabbrica del cliente), trovo i crash (ormai sono esperto, ho sviluppato parecchi tool per questo) e tutti i problemi che non sono saltati fuori prima.
Ne consegue che devo stare nella fabbrica del cliente un tempo piuttosto lungo, a seconda dell'impianto, del software, ...
Cmq ci sto in media 1 anno.

La parte decisamente piu' costosa di tutto il processo e' ovviamente l'ultima, cioe' l'installazione e l'avviamento dell'impianto. Cosi' costosa da giustificare eventuali riscritture dell'applicazione.

sottovento
16-09-2010, 15:21
SourceMonitor, ma non c'è paragone con CppDepend. Ovviamente se devi farci un reparto di QA una pensatina ce la farei.
Effettivamente però non hai specificato su che piattaforma, se tutto fosse su Linux, non saprei. Io comunque utilizzo CppDepend anche su progetti Linux, ovvio che se c'è la soluzione di Visual Studio è tutto più facile.

Hai ragione! Si, mi sto riferendo ad un software scritto in Visual Studio

sottovento
16-09-2010, 15:36
Ho trovato OxyProject. E' carino e facile da usare.
La licenza non dice nulla sull'utilizzo che se ne puo' fare, sembrerebbe gratuito in ogni caso (sicuramente per uso personale)