# PERT/CPM

Il PERT (Project Evaluation Review Technique) e il CPM (critical path method) sono i due principali strumenti di project management volti alla programmazione delle attività che compongono il progetto e, più in generale, alla gestione degli aspetti temporali di quest'ultimo. Molto spesso questi due strumenti, completamente distinti fra loro, sono considerati erroneamente insieme.
Il PERT (detta anche stima a tre valori o three-point-estimation) è un metodo statistico di determinazione dei tempi delle attività di progetto (ma può essere applicato anche ai costi). Rispetto alla semplice stima a valore singolo, il metodo presuppone la determinazione di valori di stima ottimale, probabile e pessimistico che risultano più adeguati a valutare tempi e costi di attività di progetto che presentano incertezza o complessità.
Il CPM è un metodo per la determinazione della durata minima di un progetto individuando le attività critiche che lo caratterizzano (la sequenza delle attività critiche, dal punto d'inizio al punto di fine del progetto, determinano appunto il percorso critico). Nell'analisi del percorso critico risulta comoda una rappresentazione delle attività di progetto in forma grafica (diagramma reticolare o network diagram) dove vengono rappresentati i vincoli di precedenza fra le attività stesse (determinati preventivamente con la tecnica PDM).

## PERT

Il PERT è una tecnica sviluppata nel 1958 dalla Booz, Allen & Hamilton, Inc. (una ditta di consulenza ingegneristica), per l'ufficio Progetti Speciali della Marina degli Stati Uniti. L'obiettivo era quello di ridurre i tempi ed i costi per la progettazione e la costruzione dei sottomarini nucleari armati con i missili Polaris, coordinando nel contempo diverse migliaia di fornitori e di subappaltatori.
Per effettuare stime più attendibili su progetti complessi che presentano incertezze, la stima a singolo valore risulta poco efficace, mentre la stima PERT, a tre valori, mitiga meglio le incertezze derivanti dalle attività di progetto:
* tm = durata probabile;
* to = durata ottimistica;
* tp = durata pessimistica.
Gli esperti delle specifiche attività del progetto, basandosi sulle proprie esperienze e conoscenze, effettuano la stima dei tre valori di cui sopra.
Nel metodo PERT le durate delle attività (ma può essere applicato anche ai costi) sono delle variabili aleatorie rappresentate con una funzione di densità di probabilità di tipo Beta, la cui deviazione standard è rappresentata dalla seguente formula:
* σ = (tp - to)/6.
Suddetta formula deriva dal fatto che nelle distribuzione Beta la probabilità che il valore della variabile cada in un intervallo di ampiezza pari a 6σ, centrato attorno al valor medio, è molto vicina a 1.
La durata attesa te nella distribuzione Beta è approssimata dalla seguente formula:
* te = 1/3 * [2*tm + 1/2*(to + tp)].
o più semplicemente:
* te = 1/6 * (4*tm + to + tp).
Es. elenco di attività di un progetto che si ipotizza appartenere anche al percorso critico (stimate con la tecnica PERT)
| Attività | Stima Ottimistica (to) | Stima Probabile (tm) | Stima Pessimistica (tp) | Stima PERT (te) | σ | Varianza (σ²) | durata min (te - σ) | durata max (te + σ) |
| Attività 1 | 6 | 10 | 15 | 10,1666666666667 | 1,5 | 2,25 | 8,66666666666667 | 11,6666666666667 |
| Attività 2 | 18 | 25 | 39 | 26,1666666666667 | 3,5 | 12,25 | 22,66666667 | 29,66666667 |
| Attività 3 | 14 | 22 | 35 | 22,83333333 | 3,5 | 12,25 | 19,33333333 | 26,33333333 |
| Attività 4 | 23 | 34 | 62 | 36,83333333 | 6,5 | 42,25 | 30,33333333 | 43,33333333 |
| TOTALE | | | | 96 | | 69 | | |
Dalla tabella, secondo i calcoli applicando le formule definite in precedenza, si ottengono:
* la durata totale attesa di progetto (Dte) = 96;
* la varianza totale del progetto = 69 (corrispondente alla deviazione standard totale di progetto σ1=8,306623863);
* intervallo di durata di progetto (RDte = [Dte +/- σ1] ) corrispondente a 87,69337614 ÷ 104,3066239.

### Attività incerte o rischiose

La varianza rappresenta il livello di incertezza (o di rischio) delle attività di progetto. Tanto più la varianza è maggiore, tanto più l'attività presenta incertezze. Per le attività che presentano maggior rischi (con varianza più elevata) occorre:
* identificare i rischi;
* effettuare le relative analisi;
* sviluppare le risposte più opportune.

### Accuratezza della stima

Si passa ora alla determinazione dell'attendibilità teorica (o probabilità teorica) dell'intervallo RDte, prima però si ipotizza quanto segue:
* le stime di durata sono statisticamente indipendenti fra loro.
Detta ipotesi consente di applicare la teoria del limite centrale, assumendo cioè:
* che Dte è anch'essa una variabile aleatoria avente distribuzione normale e corrispondenti alle somme delle medie (o te) e come varianza la somma di tutte le varianze (σ1).
Si può così applicare la formula statistica [ Z = (x - μ) / σ ] per il calcolo delle probabilità (con l'ausilio delle tavole della Distribuzione Normale Standardizzata - di seguito TDNS).
* La suddetta formula viene debitamente riscritta con le variabili indicate in precedenza ottenendo: Z=(x - Dte) / σ1.
Viene quindi calcolata la probabilità P dell'intervallo RDte (x=RDte):
* Z=(RDte - 96) / 8,306623863 = ±1.
La probabilità P viene calcolata considerando le probabilità ricavate sulle TDNS con valore Z=|1|:
* prima con [-∞, Z ] e corrispondente a P1=0,8413;
* poi con [Z, ∞], corrispondente a P2=0,15866;
* segue che P = P1- P2 = 0,68264 pari al 68,26% (percentuale di accuratezza teorica della stima dell'intervallo RDte).

#### I Sigma

In pratica, l'intervallo RDte copre il 68,26% delle possibili durate di progetto. Per aumentare l'accuratezza teorica di RDte si può arrivare a considerare un valore sei volte superiore di σ1 (ovvero 6σ1), portando la percentuale al 99,99985%.
Generalmente l'accuratezza teorica del 95% per l'intervallo RDte è comunque accettabile (corrisponde a 2σ1).

## CPM

CPM è l'acronimo di Critical Path Method, ovvero "metodo del percorso critico". È uno strumento di gestione progetti sviluppato nel 1957 dalla Catalytic Construction Company per la manutenzione degli impianti della Du Pont de Nemours. Si tratta di una tecnica utilizzata nei progetti in cui le risorse necessarie allo svolgimento di un'attività possono non essere considerate come vincolo e le durate delle attività di cui sono composti possono essere stimate con un grado di certezza sufficientemente elevato, permettendo, quindi, di considerarle di natura deterministica.
Tale metodo, che matematicamente può essere applicato sia in via algoritmica che come problema di programmazione lineare, sfrutta le caratteristiche dei grafi orientati connessi e consiste essenzialmente nell'individuazione del cammino critico, ovvero di quell'insieme di attività logicamente dipendenti tra di loro che collegano il nodo iniziale (attività di inizio) al nodo finale (attività di fine) e la cui somma delle durate è massima. Un ritardo in una di queste attività, implica il ritardo dell'intero progetto.
È una tecnica molto nota e utilizzata nelle imprese di costruzione (strade, ponti, gallerie, grandi infrastrutture, ecc.).

## PDM/PERT/CPM a supporto della gestione dei progetti
### La rappresentazione del progetto

Un progetto consiste, essenzialmente, di una serie di attività interdipendenti che devono essere eseguite con una precisa sequenza (tecnica PDM - Precedence Diagram Method). Con la tecnica PDM si rappresentano le attività, individuate mediante la WBS, su un grafo orientato e aciclico.
Le possibili modalità di rappresentazione sono:
   * AON (Activity On Node) in cui le attività sono rappresentate dai nodi del grafo. Il primo nodo è sempre quello di inizio progetto; l'ultimo è sempre quello di fine progetto.
   * AOA (Activity On Arrow) in cui le attività sono rappresentate dagli archi che collegano due nodi del grafo.
Anche se in un primo momento era più diffusa la modalità di rappresentazione AOA, in particolar modo perché consentiva una lettura più facile ai fini dell'applicazione del modello di programmazione lineare, successivamente è diventato sempre meno utilizzato, per via della sua scarsa capacità di essere letto intuitivamente, e, ancor più grave, per il fatto che, a differenza del grafo AON, è possibile che sussistano diverse rappresentazioni dello stesso progetto, tutte valide contemporaneamente. I nodi possono essere identificati mediante numeri o lettere e gli archi sono individuati dalla coppia dei numeri corrispondenti ai nodi che collega. Naturalmente a queste informazioni vengono collegate le descrizioni e, nel caso delle attività, anche le durate (nel modello CPM). I percorsi sono identificati mediante la lista dei nodi (o archi) attraversati.

### Le fasi tipiche di gestione PDM/PERT/CPM

   * Pianificazione e costruzione del modello (reticolo AON o AOA) di dettaglio. Ciascun responsabile esecutivo elenca le attività necessarie; l'insieme delle attività viene legato e messo in sequenza secondo la logica PDM de "l'attività può iniziare solo se ....
in questo contesto le attività non hanno nessuna indicazione di tempi.
   * Stime dei tempi. Le attività di progetto vengono stimate con la tradizionale tecnica a valore-singolo o con la Three-Point-Estimation (PERT), in base alle criticità o complessità del progetto stesso.
   * Analisi dei percorsi critici (o CPM). Con l'utilizzo dei Diagrammi Reticolari (le attività adesso contengono l'indicazione delle stime dei tempi) si calcola la durata stimata minima del progetto (Dte) identificando i percorsi critici più lunghi (tempi più lunghi). L'importanza non è data dal calcolo in se stesso, ma dal fatto che sulla base dei risultati inizia il lavoro di ottimizzazione dell'intero progetto. Vengono rianalizzate le singole attività, cercate nuove soluzioni tecniche, ecc. È la prima fase di ottimizzazione; Ne derivano, di conseguenza, continue revisioni e riedizioni del modello nel suo complesso.
   * Programmazione operativa. Sulla base dei risultati ottenuti dall'analisi dei percorsi inizia il lavoro di definizione di risorse da impiegare. Vengono analizzati impegni di manodopera, carico degli impianti, ecc. È la seconda fase di ottimizzazione, a volte risolta in termini di compromesso tra spendere di più e finire prima. Anche in questo caso ne derivano revisioni e riedizioni del modello in generale.
   * Controllo delle operazioni sul progetto in corso d'opera. Il progetto parte ed è necessario controllare che lo svolgersi delle attività sia quello previsto, in sequenza, tempi e risorse impiegate. Variazioni in corso d'opera (anticipi, ritardi, ecc.) vengono gestiti anche rivedendo (da un dato momento in avanti), il modello PERT/CPM.
È da rilevare che mentre nella fase di studio e di ottimizzazione del progetto il Pert si presta ottimamente allo scopo, nell'aggiornamento in corso d'opera può risultare invece molto laborioso, specialmente in quei progetti nei quali la sequenza delle operazioni ed i vincoli tra le attività non sono nella realtà così rigidi come vengono rappresentati nel reticolo, costringendo quindi anche a frequenti rimaneggiamenti della logica del modello.
In conclusione va sottolineato che la gestione PERT/CPM, ovviamente completamente supportata da sistemi software dedicati, ha un costo non insignificante e impone un'impostazione organizzativa che spesso non è alla portata delle piccole aziende.

## Nozioni di base sulle tecniche reticolari

La tecnica dei Diagrammi Reticolari/Network-Diagram (AON e AOA), assieme alle tecniche che sono state sviluppate successivamente per l'analisi del percorso critico, per l'evidenza dei costi e per il trattamento delle risorse, formano la tecnica della "programmazione reticolare", della quale si riassumono di seguito gli elementi fondamentali.

### I componenti

I componenti principali di un reticolo sono le attività, i vincoli, le date prefissate ed il calendario. Le attività rappresentano i lavori da svolgere per il compimento del progetto. L'attributo principale dell'attività, oltre la descrizione, è la durata prevista. Alcune attività particolari, che rappresentano importanti traguardi intermedi nell'ambito del progetto, vengono denominate Milestone. I vincoli (o legami) rappresentano le relazioni tra le attività. Il vincolo più utilizzato è quello Fine-Inizio, che significa che l'attività seguente non può iniziare se quella precedente non è finita. Con lo stesso concetto esistono i vincoli Fine-Fine, Inizio-Inizio, Inizio-Fine. I vincoli, oltre che all'inizio o alla fine di un'attività, possono attestarsi anche ad una percentuale di completamento della stessa. Ai vincoli può essere assegnata anche una durata, nel caso in cui tra un'attività e l'altra debba intercorrere un certo tempo che però non si vuole rappresentare tramite un'attività. Agli eventi di inizio e fine attività possono venire assegnate dalle date prefissate, del tipo data-fissa, non-prima-di, non-dopo-di, in modo da influenzare il calcolo, ove si conoscano a priori restrizioni di questo tipo. Bisogna fornire inoltre la specificazione del calendario da utilizzare, cioè quali sono i giorni lavorativi, le festività infrasettimanali ed i periodi di non lavoro, per permettere al sistema di calcolo di riportare sul calendario effettivo i risultati ottenuti.

### La rappresentazione della rete (o reticolo)

Ci sono due tipi di rappresentazione:
Nel primo tipo le attività sono rappresentate da frecce, e gli eventi di inizio e fine attività rappresentano i nodi della rete. Tale rappresentazione, che ha effettivamente l'aspetto di un reticolo, è difficoltosa da utilizzare in quanto costringe ad impiegare numerose attività fittizie per riuscire ad esprimere tutti i collegamenti tra le attività.
Nel secondo tipo le attività sono rappresentate da rettangoli ed i vincoli tra le attività sono rappresentati da frecce. È il sistema più comodo, detto "a precedenze", che permette di raffigurare tutti i tipi di vincolo senza dover ricorrere ad artifizi.

### Il calcolo della tempificazione

Semplificando, si eseguono due passate di calcolo. La prima in avanti, partendo dall'inizio del progetto. In questa fase si determinano le date al-più-presto dell'inizio e della fine delle varie attività, e la data di fine progetto (se non è stata prefissata). Una seconda passata all'indietro, partendo dalla fine del progetto. In questa fase si determinano le date al-più-tardi dell'inizio e fine delle attività. Dalla differenza tra le date al-più-tardi e quelle al-più-presto si ricava lo slittamento ammesso, che è di due tipi: lo slittamento libero, cioè il lasso di tempo addizionale di cui può disporre una singola attività senza incidere sulle altre attività, e lo slittamento totale, cioè quello di cui può disporre l'intera catena di cui l'attività fa parte, senza andare ad influenzare la data di fine progetto. Se non è stata prefissata la data di fine progetto, la attività che si trovano sul percorso critico hanno slittamento pari a zero.
A valle della tempificazione, viene identificato il cammino critico, composto da quelle attività per le quali un ritardo/anticipo non può essere compensato con le attività successive e, quindi, comporta una variazione certa della data finale dell'intero progetto.
Tecniche di analisi reticolare permettono di ottimizzare la tempificazione, parallelizzando alcune attività, nel rispetto dei vincoli di precedenza indicati costruendo il reticolo. Eulero elaborò una serie di proprietà e regole utili per l'analisi reticolare.

### Le risorse

Ad ogni attività possono essere associati anche il tipo, la quantità ed il profilo di utilizzo delle risorse necessarie ad eseguirla. Sommando le risorse necessarie in base alle date al più presto (o al più tardi) si ottengono degli istogrammi di carico che rappresentano la semplice aggregazione delle risorse, cioè una programmazione a capacità infinita, cioè senza porre dei limiti alle quantità di risorse disponibili nel tempo. Se invece si fornisce un profilo di capacità, cioè di risorse disponibili nel tempo, si può tentare un'allocazione delle risorse, cioè una programmazione a capacità finita. Il processo di allocazione tenta di eliminare i sovraccarichi di risorse spostando le attività sfruttando il loro slittamento disponibile.

### L'aggiornamento in corso d'opera

Si fa indicando quando sono iniziate le attività, quando sono finite, e la percentuale di avanzamento (o la durata restante) per quelle iniziate e non finite. Spesso bisogna rivedere anche i vincoli per adeguare il modello alla effettiva realizzazione.

### L'esposizione dei risultati

I risultati del calcolo possono essere forniti in forma tabellare, di diagramma di Gantt, di rappresentazione del reticolo tempificato, di istogrammi e di altri tipi di grafico.

### Evoluzioni del PERT/CPM

In letteratura di ricerca operativa è possibile rinvenire numerosi modelli matematici che sono volti all'individuazione di una schedulazione ottimale rispetto ad altri obiettivi progettuali.
Essi introducono ulteriori ipotesi sulle attività o sulle caratteristiche del progetto e, tra gli altri, per quanto riguarda la gestione economica del progetto possono essere:
* la massimizzazione del Van,
* la massimizzazione del profitto (e la conseguente riduzione di costi),
* la minimizzazione delle penalità per il mancato rispetto di una scadenza progettuale