Quando un progetto viene definito con la rappresentazione gerarchica della WBS, dopo che sono stati assegnati i vari responsabili su ogni pacchetto di lavoro, occorre stabilire le durate delle attività e la loro collocazione nel tempo. La stima delle tempistiche è una fase critica nella gestione di un progetto, poiché è basata su ipotesi e modelli di simulazione. Ovviamente, le stime sono tanto più rischiose e soggette ad errore quanto più il progetto è innovativo. Partendo dalla lista delle attività e dalle scadenze stabilite, è possibile elaborare una valutazione sulle durate di ogni singola attività di dettaglio. Ogni responsabile assegnato a ciascun pacchetto di lavoro, sulla base delle risorse a disposizione e di eventuali dati di consuntivo relativi a progetti simili, indicherà una sua stima. La prime valutazioni saranno in seguito riviste alla luce dei valori di sintesi ottenuti sui livelli più alti della WBS. Alcuni metodi di valutazione o revisione delle stime:
- Giudizio degli esperti: in fase di valutazione e soprattutto di revisione delle stime, è importante avvalersi dei giudizi di persone con esperienze già maturate su progetti simili, siano esse interne o esterne all’azienda.
- Stime Analogiche: è possibile quantificare la durata di attività future sull’esito di quelle passate. Queste stime possono essere efficaci quando il grado di somiglianza tra le attività da stimare e quelle storiche è elevato.
- Stime parametriche: sulla base di un campione di lavoro già eseguito, è possibile estrapolare dei parametri che consentano di determinare, in modo proporzionale, la durata necessaria per completare l’attività in esame.
- Simulazioni: consentono di trasferire le valutazioni degli esperti in modelli quantitativi (es. Metodo Monte Carlo).
- Analisi PERT (Program Evaluation and Review Technique) : questo tipo di analisi matematica può trattare stime incerte. Le diverse valutazioni ricevute devono essere sintetizzate in tre valori. Un valore di durata ottimistico, uno mediano più probabile e uno pessimistico. Successivamente, una media pesata calcolerà una durata vicina al valore medio, anche se più spostata verso quello pessimistico. Il valore previsto è ottenuto dalla formula PV = (Ottimistico + 4 * Mediano + Pessimistico)/6.
- Ritoccare la WBS: la difficoltà di stimare un’attività può derivare dalla sua complessità o eccessiva ampiezza. Per superare questo ostacolo, può tornare utile rivedere la WBS suddividendo l’attività complessa in in sotto-attività più facilmente valutabili.
Figura 1. Esempio di curva PERT
Oltre alla stima delle durate, per schedulare un progetto occorre stabilire la sequenza operativa, cioè quei legami logici tra le attività che consentono da un lato di stimare la durata dell’intero progetto, dall’altro di comprendere ciò che accade quando un’attività non può rispettare i tempi di esecuzione stabiliti. Di seguito, vedremo come rappresentare la sequenza e la rete di relazioni logiche delle attività di progetto.
Il diagramma di Gantt
Il diagramma di Gantt è uno strumento che consente la rappresentazione grafica di interi progetti e prende il nome da Henry Gantt, l’ingegnere che lo ideò nel 1917. Esso rappresenta le attività in termini di durata e di disposizione cronologica, cioè mostra quando un’attività deve iniziare e finire. La sua rappresentazione è basata su assi cartesiani, con le attività descritte nella WBS sull’asse verticale e il tempo sull’asse orizzontale. Proprio in riferimento alla base temporale, le attività vengono rappresentate – mediante barre orizzontali – dalla loro durata, dalle date di inizio e di fine e da una precisa sequenza di svolgimento.
Figura 2. Esempio di diagramma di Gantt
Come si può notare dall’esempio, le barre orizzontali di lunghezza variabile rappresentano l’arco temporale di ogni singola attività, e la loro disposizione mostra l’eventuale svolgimento in successione o in parallelo rispetto alle altre.
E’ però importante considerare un calendario lavorativo per la determinazione delle date di inizio e di fine di ogni attività. Come si può vedere, le giornate di non-lavoro sono state evidenziate da aree grigie. Impostando un calendario lavorativo senza due giornate come sabato e domenica, le attività a cavallo delle festività otterranno una data di fine che è la somma della data di inizio, della durata lavorativa e delle giornate festive.
Il diagramma di Gantt, rispettando la struttura gerarchica della WBS, si mostra uno strumento efficace anche nella rappresentazione delle situazioni di sintesi. Le durate e le disposizioni temporali delle attività di raggruppamento risultano di facile lettura. Come, del resto, i momenti chiave del progetto rilevati in fase di pianificazione. Le milestones riportate sulla WBS, generalmente prive di durata, possono prendere posto nel diagramma con un semplice simbolo fisso, così come accade in molti software di pianificazione.
Occorre notare un limite in questo tipo di diagramma. Dal grafico si nota che l’Attività_1 finisce il 27 Marzo e l’Attività_2 inizia il 28. Supponiamo che l’Attività_1 debba essere rivista in fase di pianificazione o in fase di controllo, per una scarsa disponibilità delle risorse o per un rallentamento dei lavori. Dal diagramma precedente, non è possibile sapere come deve comportarsi l’Attività_2 a seguito dell’allungamento dell’Attività_1. Cioè non si capisce se l’Attività_2 è vincolata a una data fissa (28 Marzo) oppure è logicamente dipendente dall’attività che la precede sulla WBS. Un diagramma di Gantt senza relazioni ci permette di conoscere le date di inizio e di fine delle attività, ma non la logica delle sequenze. In tal modo, è difficile comprendere gli effetti dell’accelerazione o del ritardo di un’attività sulle altre. Un progetto minimamente complesso, dunque, non può essere gestito senza uno studio e una rappresentazione dei vincoli di precedenza. Il diagramma trattato sinora dovrà quindi arricchirsi di altri metodi rappresentativi che consentano di afferrare l’interdipendenza delle attività.
Diagramma logico
Il diagramma logico presenta graficamente la sequenza delle attività con i relativi legami. I rettangoli rappresentano le attività, mentre le frecce unidirezionali di connessione le relazioni. Il reticolo così definito, a prescindere dalla durata dei vari blocchi, rappresenta il flusso di lavoro dell’intero progetto. Il diagramma logico viene spesso erroneamente chiamato PERT. In realtà, quest’ultimo è sempre meno utilizzato ed è un diagramma reticolare che possiede una sua specificità.
Figura 3. Esempio di diagramma logico
Nell’esempio riportato si notano forme diverse e colori diversi. Le forme esagonali, infatti, servono per differenziare le milestones dalle altre attività. Mentre il colore rosso contraddistingue un flusso di lavoro che necessita di particolari attenzioni, in quanto un suo ritardo comporta l’inevitabile allungamento del progetto.
I vincoli di sequenza
La rappresentazione semplice del Gantt, come accade nei più noti strumenti di pianificazione, prevede anche la possibilità di integrarsi con le relazioni del diagramma logico e i vincoli di precedenza. Questa possibilità consente di aggiornare più facilmente il progetto nei casi in cui qualche attività non rispetti i tempi di pianificazione. I vincoli di sequenza che possono essere rappresentati sono quelli di fine-inizio, inizio-inizio, fine-fine e inizio-fine.
Figura 4. Rappresentazione dei vincoli
Il vincolo fine-inizio è il più comune e utilizzato. Esso determina un legame logico tra un’attività precedente e una successiva, impedendo che quest’ultima inizi prima del termine dell’attività precedente. Con un esempio, l’attività A2 non può iniziare se A1 non è completamente terminata. Questa relazione può essere ulteriormente precisata impostando un intervallo (Lag) fra la fine e l’inizio delle due attività. Il vincolo inizio-inizio stabilisce una relazione fra le date di inizio delle attività collegate. Questo legame impone che l’attività vincolata (A2) non possa partire se quella vincolante (A1) non è iniziata. Il vincolo inizio-inizio determina uno svolgimento in parallelo delle attività e anche in questo caso, come in tutti gli altri che vedremo, è possibile impostare un ritardo sulla sincronia del legame. Il vincolo fine-fine stabilisce una relazione fra le date di fine delle attività collegate. Questo legame impone che l’attività vincolata (A2) possa finire solo quando l’attività vincolante (A1) è terminata. Il vincolo inizio-fine non è comunemente utilizzato. Esso impone che l’attività vincolata (A2) non possa terminare finché non abbia avuto inizio quella vincolante (A1). Completare il diagramma di Gantt con i vincoli di sequenza significa rappresentare le durate, le sequenze e le relazioni logiche. Tuttavia, progetti complessi con molti vincoli possono risultare difficili da leggere a livello di dettaglio. Ricorrere alle tabelle può dunque tornare utile, sia in fase di analisi sia nel momento divulgativo. Tra l’altro, il formato tabellare e il formato grafico sono strettamente correlati negli strumenti informatici di pianificazione, quindi è possibile appoggiarsi agevolmente all’una o all’altra rappresentazione dei dati.
Figura 5. Esempio di tabella con vincoli
Figura 6. Esempio di Gantt con vincoli F-I
Scorrimento delle attività
Stabiliti i vincoli sulle attività di progetto, le durate e il calendario di lavoro si ottiene, a partire da una data di inizio, la data in cui il progetto avrà termine. Ovviamente, grazie ai vincoli, è possibile procedere a ritroso: determinare la data in cui è opportuno iniziare i lavori partendo da una data di fine. Come si può vedere nell’ultimo Gantt rappresentato, possono esserci delle attività che non necessariamente devono terminare nei tempi previsti per rispettare le date ultime di progetto. L’Attività_1, ad esempio, è legata con una relazione fine-inizio all’ultima attività di progetto, l’Attività_5. Tuttavia, quest’ultima non può partire prima della fine dell’Attività_4, che è più lunga di due giorni rispetto l’Attività_1. Questo ci permette di affermare che l’Attività_1 ha uno scorrimento (Float) di due giornate lavorative, ovvero anche se dovesse subire un ritardo di due giorni non influirebbe sulla data di fine del progetto. Può quindi terminare al più presto il 27 Marzo (Early Finish) e al più tardi il 29 (Late Finish).
Questo tipo di scorrimento prende il nome di Total Float, che differisce dal Free Float, ovvero lo scorrimento consentito a un’attività senza che posticipi l’inizio al più presto (Early Start) della prima delle attività successive. Nell’esempio a fianco, si possono notare i due diversi Float sulla terza attività.
Figura 7. Rappresentazione di scorrimento
Percorso Critico
Nella rappresentazione del progetto è possibile individuare il percorso critico, ovvero quella sequenza di attività che collega l’inizio e la fine di un progetto e che determina la sua data di completamento. Il percorso critico è la sequenza di lavoro più lunga e si compone di attività, definite appunto critiche, che hanno un margine di scorrimento inferiore o uguale a zero. Queste ultime, quindi, non ammettono slittamenti senza causare ritardo all’intero progetto.
Individuare il percorso critico serve, in fase di pianificazione, per valutare come ridurre il tempo necessario al completamento del progetto. In fase esecutiva, d’altro canto, serve a indicare la sequenza in cui porre maggiore attenzione per non compromettere la data finale.
Figura 7. Esempio con percorso critico (in rosso)
In conclusione, è bene ricordare che il diagramma di Gantt è lo strumento più utilizzato sia in fase operativa sia in fase di controllo. Come vedremo in successivi approfondimenti, il Gantt costituisce un punto di riferimento importante, con il quale è possibile controllare l’avanzamento del progetto e i suoi eventuali scostamenti dai valori pianificati.
Articolo di Andrea Bressan.