Come rappresentare la scadenza calcolata è ragionevole?

5

Come programmatore capo, le mie responsabilità comprendono il calcolo delle scadenze dei progetti.

Per fare questo ho una discussione con i giocatori della squadra correlati e calcolo una stima della scadenza. A volte, ho ricevuto una voce spaventata dal CTO che diceva che la scadenza stimata è troppo. Quindi devo ridurre la scadenza. Con una scadenza più breve, i programmatori devono lavorare con una pressione extra.

Come posso rappresentare (punti) al CTO che la scadenza calcolata è ragionevole?

    
posta Md Mahbubur Rahman 26.02.2013 - 08:32
fonte

4 risposte

9

Un metodo scientificamente provato è il metodo scientifico, si potrebbe anche dire un metodo guidato dai dati:)

  1. Fai una domanda (quando abbiamo finito?)
  2. Fai una ricerca di fondo (che cosa deve essere fatto? Divide et impera).
  3. Costruire un'ipotesi (calcolare il tempo di completamento, scadenza)
  4. Metti alla prova la tua ipotesi facendo un esperimento. (Fai più sprint, in modo da ottenere dati reali da sprint e stime precedenti. La verità è nei dati).
  5. Analizza i tuoi dati e disegna una conclusione. (Quanto siamo stati accurati? Apportare le regolazioni, impara, ripeti, itera.)
  6. Comunicare i risultati. (Dì al tuo cliente / capo / CTO)

Le iterazioni multiple sono la chiave, quindi ottieni i dati reali su cui costruire!

Fonte: Passi del metodo scientifico

    
risposta data 26.02.2013 - 09:01
fonte
4

Fare delle stime diventa molto più facile quando il lavoro è suddiviso in attività più piccole. E più piccoli sono i compiti, più è facile stimarli. In questo modo la stima diventa più accurata.

Questo aiuta anche a vedere chiaramente quanto tempo sarà speso per ogni attività. Quindi, quando la direzione si lamenta delle scadenze, puoi mostrare loro esattamente il tempo impiegato.

Se la scadenza non è accettabile, alcune delle funzionalità iniziali dovrebbero essere ridotte. I manager ragionevoli sceglieranno un prodotto di alta qualità con meno funzioni rispetto a una pila di funzionalità non propriamente funzionanti.

Un altro trucco è "imbrogliare" dando delle stime un po 'più grandi del necessario. Ma penso che questo sia un estremo.

    
risposta data 26.02.2013 - 12:57
fonte
1

C'è un enorme lavoro sul calcolo del costo del software e della pianificazione. Al suo centro, il fatto è che c'è sempre qualche incertezza, il che significa che c'è sempre una probabilità diversa da zero di perdere la scadenza (e! Una probabilità diversa da zero di arrivare presto). Quando termini una scadenza, aumenti la probabilità di perdere la scadenza e aumenti la probabilità che tu abbia altri problemi, perché stai chiedendo che la tua gente tagli gli angoli e tagli gli angoli SEMPRE torna a perseguitarti.

Se hai conservato dati storici su progetti e costi, puoi calibrare un estimatore per la tua organizzazione, e sei quindi in grado di comunicare al CTO "Questo è ciò che i nostri dati storici indicano che possiamo fare. per farci rispettare la scadenza, lo faremo, ma comprendiamo che dovrai accettare un maggiore rischio di scadenza scaduta e gravi bug nel prodotto. "

Il peggior caso che abbia mai visto è stato a General Dynamics. Un errore del sistema di controllo del codice sorgente del software significava che un errore veniva inavvertitamente introdotto. Un programma di rilascio accelerato significava che un test critico, inteso a rilevare quel tipo specifico di bug, non veniva eseguito fino a un giorno o due dopo che il rilascio era stato inviato ad Edwards AFB per il test di volo. Il test ha mostrato una sicurezza del problema di volo che potrebbe comportare la perdita dell'aereo di prova e / o la morte del pilota di prova. (L'aereo di prova costava molti, molti milioni di dollari, molto più degli aeroplani di produzione, perché era un uccello unico costruito a mano: i buoni piloti di prova costano quasi tanto e sono molto a lungo guidati articoli.) Si scatenò l'inferno.

    
risposta data 26.02.2013 - 15:06
fonte
0

Ho sempre sostenuto che qualsiasi progetto software ha quattro variabili:

  • StartDate
  • Durata
  • Sforzo
  • Assunzione di personale

Puoi controllarne tre, ma il quarto è una funzione degli altri tre.

  • Se imposti StartDate = W, Duration = X days e Effort = Y person-hours, avrai bisogno di Z.
  • Se imposti StartDate = W, Effort = Y person-hours e Staffing = Z people, ci vorranno X giorni.
  • ecc.
risposta data 26.02.2013 - 13:25
fonte

Leggi altre domande sui tag