C'è molto da dire per i requisiti dettagliati. Tutti odiano creare documenti sui requisiti, ma sono un male molto necessario. Detto questo, ho gestito molti progetti software nel corso degli anni e ho alcuni metodi che ho trovato rendono molto più facile stimare.
Personalmente non posso dire abbastanza su Microsoft Project. Ci sono strumenti gratuiti con capacità simili ma MS Project è di gran lunga il mio preferito. Indipendentemente da quale strumento di gestione del progetto sceglierai, queste metodologie dovrebbero applicarsi ancora.
- Crea un elenco di attività di alto livello (CMS, layout del sito, codifica personalizzata, ecc.)
- Inizia ad aggiungere attività secondarie e gruppi di attività secondarie, secondarie e secondarie dal livello superiore.
In definitiva ciò che stai cercando qui è capire tutto ciò che è coinvolto. Non otterrai tutto, ti mancherà inevitabilmente qualcosa, ecc. Ma non è questo il punto dell'esercizio. Man mano che procedi a elencare ogni attività che deve essere eseguita (abbassa elementi come Ricerca X, Test X, ecc.) Scoprirai attività a cui non hai mai pensato mentre la attraversi. Pensa a tutto ciò che deve essere fatto dalla pianificazione alla costruzione, alla verifica, alla migrazione al cliente.
Una volta terminati tutti i compiti, puoi iniziare a stimare il tempo necessario per ciascun articolo. I tuoi tempi sono un'ipotesi plausibile, assicurati di riempirli con il 20-40% (o più) di tempo in più di quanto pensi. Lo strumento di gestione del progetto che usi dovrebbe avere un concetto di "Predecessori" o simili. Ciò ti consentirà di collegare le attività e indicare quali attività richiedono il completamento di altre attività.
Ora che hai compiti, stime temporali e predecessori, il tuo piano di progetto può "iniziare" a stimare una tempistica per te.
La gestione del progetto ha essenzialmente due concetti principali. O A, la scadenza del progetto dovrebbe dettare la timeline o B, i compiti del progetto dovrebbero dettare la timeline. Sono MOLTO molto nel campo B. Molti tipi di MBA e "contatori di bean" tenteranno di dirti quando il progetto è "Due". Guarderanno anche il tuo piano e diranno "se mettiamo 5 sviluppatori sul task X, verrà eseguito in 1/5 del tempo". Queste teorie sono inutilizzabili in un mondo di sviluppo software. Mentre ci sono alcuni casi che un concetto simile può essere impiegato, è generalmente una ricetta per il disastro. Immagina 5 persone che provano a modificare lo stesso file contemporaneamente. Cammineranno l'uno sull'altro e anche gli strumenti di gestione del codice sorgente più avanzati saranno molto più brevi.
OK, quindi hai una "stima" ora. Sì, è approssimativo, no non è completo e sì cambierà (tornare indietro e aggiungere più tempo di riempimento ora). Probabilmente anche guardando la data di fine e pensando a te stesso, il cliente / capo sta per impazzire quando vedranno quanto tempo ci vorrà. Qui è dove ti fermi e fai un respiro profondo. Non solo hai pensato a tutto ciò che questo progetto prenderà, ma ora hai i dettagli documentati su PERCHÉ ci vorrà così tanto tempo. Se vogliono mettere in discussione il tempo devono andare per compito per "ritagliare" il tempo. Ho trovato nel 95% dei casi che non avranno alcun interesse a farlo. Avrete anche (nelle loro menti) chiaramente capire cosa deve essere fatto ed essere visto come un "esperto" nel farlo poiché avete un piano dettagliato che mostra cosa ci vorrà.
Note: assicurati di inserire le attività con le stime nelle ore in cui puoi. È difficile contestare che qualcosa durerà 8 o 10 ore. Se metti 1 giorno, iniziano a provare a negoziare. Ci saranno compiti che richiedono settimane e mesi, basta metterli come tali e prepararsi a spiegare il perché. Se è possibile, suddividere questa attività in attività secondarie più piccole in ore / giorni.
Spero che ti aiuti!
Daniel .....