Personalmente, non ho mai trovato una risposta esplicita alla domanda "Che cos'è un punto funzione?" Senza di questo, sono VERAMENTE esitante su qualsiasi metodologia di stima che afferma di fare qualsiasi cosa con Function Points.
La singola parte più importante di una seria metodologia di stima del software è la "ricalibrazione periodica degli effettivi", il che significa che fai la tua stima, la scrivi e poi, quando il progetto è finito, confronti i tuoi risultati effettivi con i tuoi stimare e, se necessario, rivedere il processo di stima. INCLUSO IN QUESTO confronta gli INGRESSI con il tuo processo di stima con gli INGRESSI EFFETTIVI.
Se, ad esempio, si stimano le Linee di codice sorgente (SLOC) e si passa da lì, si deve confrontare il proprio SLOC effettivamente consegnato con lo SLOC stimato e vedere se, fino a dove e dove e perché si è andato fuori strada . Uno stimatore che predice perfettamente le ore uomo, data una stima SLOC accurata e precisa, non ti farà nulla di buono se le tue stime SLOC non valgono nulla. Immondizia, spazzatura. (La stessa cosa vale per i Function Point.)
Se i tuoi effettivi SLOC (o Function Point) corrispondono alle tue stime iniziali, puoi esaminare i costi effettivi rispetto ai costi stimati e regolare i parametri dello stimatore per migliorare i risultati. La divisione General Dynamics / Fort Worth ha fatto questo esercizio, in dettaglio, nei primi anni '80, per lo sviluppo del software F-16C / D, e quindi per diversi anni avrebbe puntualmente puntato sul risultato netto dell'azienda su tali stime. GD / FW è stata la mucca da soldi di GD per un bel po ', mantenendo a galla il resto dell'azienda, quindi devono aver fatto qualcosa di giusto.
E nota che i requisiti e lo scorrimento delle funzionalità sono IL NEMICO della stima del software.
(Questa è una modifica successiva.) L'ultimo punto di Bernd merita una risposta. Chiede cosa dovrebbe essere fatto per i progetti che arrivano in anticipo e non spendono tutte le ore lavorative assegnate.
Questo è tanto un errore di stima quanto lo scadere (molto più comune) del programma. Il nocciolo della questione è questo: se tutti i tuoi progetti superano il loro programma, i tuoi stimanti non stanno facendo il loro lavoro.
Se le persone che stanno valutando stanno facendo tutto nel modo giusto, e i tuoi manager stanno facendo tutto bene, allora farai in modo che alcuni progetti arrivino in anticipo, insieme a quelli che arriveranno in ritardo. Le stime sono probabilità. Proteggi il tuo estimatore per eliminare i sottocapitoli di pianificazione e, PER DEFINIZIONE, aumenta la probabilità di sovraccarichi del programma. Se la tua gestione richiede pianificazioni e stime con zero possibilità di underrun, allora fornirai orari che SARANNO essere superati, garantiti, e poi inizierai a visualizzare le richieste per Death Marches, e poi inizierai vedendo le dimissioni, e i tuoi superamenti ottengono molto, molto peggio, mentre cerchi di reclutare sostituti (e si sparge la voce che la tua azienda è una realtà produttiva).