Piano di progetto È un documento versionato, redatto dal project manager per poter stimare realisticamente le risorse, i costi e i tempi necessari alla realizzazione del progetto. Il piano di progetto si divide in due parti, pianificazione e consuntivazione, per rendere possibile la pianificazione delle attività future e il riscontro tangibile tra le attività effettuate e quelle previste. Il piano di progetto è un documento che varia nel tempo a seconda delle situazioni e dell evolversi delle attività portate avanti dai membri. Una parte del documento, il diario delle modifiche, tiene traccia delle variazioni apportate al piano, registrando la data delle modifiche e la versione del piano. Il piano del progetto contiene la descrizione delle attività pianificate 1. Definizione degli obiettivi 2. Analisi dei rischi (piano gestione rischi, sintesi rischi individuati e strategie di prevenzione) 3. Descrizione del modello di processo di sviluppo Descrizione fasi (milestones) del processo 4. Stima dei costi 5. Attività di progetto (Work Breakdown Structure, Diagramma di Gantt) 6. Consuntivo attività 7. Strumenti utilizzati La documentazione inerente il controllo del progetto prevede almeno (1) una tabella nella quale per ogni attività si evincano i partecipanti con i rispettivi monte ore, (2) una tabella nella quale per ogni membro del gruppo si evincano le attività a cui egli ha preso parte ed il totale numero di ore di lavoro.
Processi principali per il completamento del progetto Definizione delle attività Sequenzializzazione delle attività Stima della durata delle attività Sviluppo dello schedule Controllo dello schedule
Alcune definizioni Attività: un lavoro svolto nel corso del progetto. Un attività normalmente ha una durata e un costo ben definiti. Spesso suddivisa in compiti Deliverable: un risultato che deve essere prodotto per completare un progetto o parte del progetto. Può essere interno (per chi lo produce) o esterno (per il cliente)
Work Breakdown Structure (WBS) E un raggruppamento di elementi del progetto (orientato ai deliverable) che organizza e definisce i limiti complessivi del progetto: il lavoro che non sta nel WBS è fuori dai limiti del progetto. Viene utilizzato per sviluppare o confermare la comune comprensione dei limiti del progetto Esso ha struttura gerarchica. Ogni livello discendente rappresenta una definizione sempre più dettagliata di una componente del progetto (prodotti o servizi)
WBS - esempio Prodotto Software Release 1.0 Project Management Deliverable requisiti Deliverable architettura Offerta Verbali Documenti gestione attività Diario di progetto Norme di progetto
Costruzione di un WBS Decomposizione dei deliverable principali in componenti più piccole e manegevoli Identificare i principali deliverable di progetto e di gestione del progetto Decidere se a questo livello di dettaglio siamo in grado di sviluppare stime di costo e durata adeguate per ogni deliverable Se sì, si verifichi la correttezza della decomposizione Altrimenti si identifichino le componenti del deliverable e si passi a un successivo livello di dettaglio
WBS Ad ogni elemento nel WBS viene generalmente assegnato un identificatore unico (code of account) Gli elementi al livello più basso del WBS vengono detti work packages
Definizione delle attività Riguarda l identificazione e la documentazione delle attività che devono essere eseguite per produrre i deliverable sub-deliverable identificati nella struttura WBS Ogni attività è descritta da Risorse utilizzate / Documenti in input Durata (in giorni) / Costo / Documenti in output Legami di precedenza con altre attività Figura responsabile Metodologia Top-down Individuazione di macro-attività e raffinamenti successivi Uso della stessa tecnica WBS
Sequenzializzazione delle attività La sequenzializzazione delle attività coinvolge l identificazione e la documentazione delle dipendenze Tipi di dipendenze: Dipendenze obbligatorie: inerenti alla natura del lavoro che deve essere fatto (un prototipo deve essere costruito prima di essere testato) Dipendenze discrezionali: definite dal team. Devono essere usate con attenzione ed essere completamente documentate (Best practices) Dipendenze esterne: coinvolgono relazioni fra attività di progetto e non
Precedence diagramming method I.3a Tech. Risk Assessment I.5a Concept Implement. I.1 Concept scoping I.2 Concept planning I.3b Tech. Risk Assessment I.4 Proof of Concept I.5b Concept Implement. Integrate a, b, c I.6 Customer Reaction I.3c Tech. Risk Assessment I.5c Concept Implement. Three I.3 tasks are applied in parallel to 3 different concept functions Three I.3 tasks are applied in parallel to 3 different concept functions
Precedence diagramming method Costruisce un diagramma di network del progetto usando i nodi per rappresentare le attività (activity on node). I nodi vengono connessi tramite delle freccie che evidenziano le dipendenze Quattro tipi di dipendenza: Finish-to-start Start-to-finish Start-to-start Finish-to-finish Finish-to-start è il tipo di relazione logica più comunemente usata
Arrowing diagramming method start A B C Finish D E F
Arrowing diagramming method Costruisce un diagramma di network del progetto usando le freccie per rappresentare le attività (activity on arrow). Le freccie vengono connesse tramite dei nodi che evidenziano le loro dipendenze Usa soltanto attività finish-to-start e può richiede l uso di attività dummy per definire tutte le relazioni logiche in maniera corretta
Stima della durata delle attività Stima e assegnamento del tempo (che si ritiene necessario) per completare ogni attività identificata Parere esperto Stime analoghe (stime top-down): sfruttare l effettiva durata di attività precedenti e simili come base per stimare la durata dell attività futura Le stime devono includere qualche indicazione sul range dei possibili risultati (1 settimana e +/- 1 giorno) Le assunzioni fatte quando si sviluppano le stime devono essere documentate
Sviluppo dello scheduling Lo scheduling è il processo per cui a tutte le attività presenti nel piano di progetto viene assegnata una data d inizio e di fine, in base alla data d inizio progetto, alle durate delle singole attività, ai legami di precedenza tra le attività.
Esempio attività Precedenze Tempo. (gg.) a b c d e f g - - a b b c,d f,e 5 10 3 2 4 6 3 0 a b 2 1 e c d 4 3 g 5
Calcolo del tempo previsto per il completamento del progetto CRITICAL PATH METHOD La durata del progetto viene prevista analizzando la sequenza di attività del progetto che ha la minore flessibilità di programmazione (percorso critico) Per determinare quali siano le attività del percorso critico e calcolare il tempo complessivo di sviluppo del progetto, un criterio consiste nel considerare tutti i percorsi che portano dall evento di inizio a quello di fine del progetto e sommare i tempi delle attività Il percorso critico è quello con tempo più elevato, e le attività critiche sono quelle che vi appartengono
Esempio I percorsi da confrontare sono a + c + f + g = 17 b + d + f + g = 21 b + e + g = 17 Il percorso critico è quindi quello determinato dalle attività sequenziali b,d,f,g
Slack time Un attività può essere protratta per un tempo t oltre la sua durata o attivata con un ritardo pari a t senza che si abbiano effetti negativi sull attivazione di altre attività o sulla data prevista di fine progetto (nel nostro caso per l attività e, t = 4). d e 4 f
Leveling delle attività Metodi per risolvere i conflitti di allocazione delle attività Allocare in modo non-uniforme Ritardare un attività Prima le attività con slack più alto Nel caso di attività con priorità Prima le attività a più bassa priorità e con lo slack più alto Frammentare un attività Aggiungere risorse
Diagrammi di Gantt Requirements Requirements gathering Prototyping Final requirements review Specification Specification review Design Final design review Test plan development Final test plan review Implementation Inspection Software test and fix Integration with hardware and system test Beta test availability Manufactured product availability Week 0 4 8 12 16 20 24 28 32
Controllo della gestione di un progetto Esaminare periodicamente lo stato dei lavori allo scopo di verificare che gli obiettivi vengano raggiunti secondo i piani iniziali (tracking) relativamente a scadenze temporali, e costi sostenuti; la qualità del prodotto ottenuto verifichi gli standard di produzione prefissati.
Earned value L Earned value è la quantità di lavoro completato, misurato concordemente al costo di budget Non appena ogni compito viene completato, il numero di persone-mese originariamente pianificate per quest ultimo viene aggiunto alll earned value del progetto