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. Suddivisione in sottosistemi 5. Attività di progetto (Work Breakdown Structure. Diagramma di Pert, Diagramma di Gantt) 6. Stima dei costi 7. Consuntivo attività 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 della programmazione Controllo della programmazione 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 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 Offerta Project Management Deliverable requisiti Verbali Documenti gestione attività Diario di progetto Deliverable architettura 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 • In caso negativo Altrimenti si identifichino 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.5a Concept Implement. I.3a Tech. Risk Assessment I.1 Concept scoping I.2 Concept planning I.3b Tech. Risk Assessment I.4 Proof of Concept I.5b Concept Implement. 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 Integrate a, b, c I.6 Customer Reaction 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 B C start A Finish F D E 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 • 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 della programmazione La programmazione è 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, • alla durata delle singole attività, • ai legami di precedenza tra le attività. 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 attività Precedenze a b c a d b e b f c,d g f,e Tempo (gg.) 5 10 3 2 4 6 3 . a 1 c 3 0 d f b 2 e 4 g 5 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 f 4