Guida al project management · Schedulazione e tempi
Predecessori e successori nel project management
Nel project management, un predecessore è un'attività che deve iniziare o finire prima che un'altra attività possa iniziare o finire, e un successore è l'attività che ne dipende. Ogni collegamento in un cronoprogramma unisce un predecessore a un successore, e insieme questi collegamenti determinano l'ordine del lavoro, il percorso critico e quanto si propagherà un ritardo.
Punti chiave
- Un predecessore viene prima e controlla il suo successore; il successore segue e ne dipende.
- Ogni dipendenza ha esattamente un predecessore e un successore, e la maggior parte delle attività è entrambe le cose.
- Quando un'attività ha più predecessori, quello che termina per ultimo (il predecessore determinante) ne fissa la data di inizio.
- Registra solo i predecessori immediati, con il tipo di collegamento ed eventuali lead o lag.
- Ogni attività, tranne l'inizio e la fine del progetto, dovrebbe avere almeno un predecessore e un successore.
- Una buona logica dei predecessori è ciò che rende affidabili il percorso critico, il float e le previsioni sui ritardi.
Cosa sono predecessori e successori?
A predecessore è un'attività che logicamente viene prima di un'altra attività e controlla quando quest'ultima può iniziare o finire. Un successore è l'attività che viene dopo e ne dipende. La relazione tra le due è una dipendenza, e il predecessore è sempre l'attività da cui parte la freccia.
Un esempio semplice: non puoi installare software su un portatile finché l'hardware non è stato configurato. "Configurare l'hardware" è il predecessore e "Installare il software" è il successore. Se l'hardware arriva con tre giorni di ritardo, anche l'installazione del software slitta di tre giorni, a meno che tu non modifichi il piano.
La terminologia del PMI parla di attività predecessore e il attività successore, e il metodo che la maggior parte dei cronoprogrammi usa per rappresentarle è il precedence diagramming method (PDM), in cui le attività sono riquadri (nodi) e le dipendenze sono frecce. Dalla definizione derivano alcuni punti:
- Ogni dipendenza ha esattamente un predecessore e un successore.
- La maggior parte delle attività è entrambe le cose: successore del lavoro che la precede e predecessore del lavoro che la segue.
- Un'attività può avere più predecessori e più successori.
- Solo la primissima attività non ha predecessori e solo l'ultima non ha successori. In pratica si tratta di solito di una milestone di inizio e di una milestone di fine; vedi milestone di progetto.
Predecessori e successori descrivono le due estremità di un collegamento. Il collegamento stesso, e il suo tipo, sono trattati nella nostra guida alle dipendenze tra attività.
Predecessore vs successore in sintesi
| Predecessore | Successore | |
|---|---|---|
| Posizione nella logica | Viene prima | Viene dopo e dipende dal predecessore |
| Domanda a cui risponde | Cosa deve accadere prima di questa? | Cosa sta aspettando questa? |
| Se è in ritardo | Può spostare in avanti ogni successore | Ritarda solo i propri successori |
| In un diagramma di Gantt | La barra da cui parte la freccia | La barra verso cui punta la freccia |
| In un diagramma reticolare | Nodo con una freccia in uscita | Nodo con una freccia in entrata |
| In uno strumento di schedulazione | Elencato nella colonna Predecessori del successore | Elencato nella colonna Successori del predecessore |
I termini sono relativi. "Progettare le pagine" è un successore di "Concordare i requisiti" e, allo stesso tempo, un predecessore di "Sviluppare le pagine". Chiamare un'attività predecessore o successore dipende dal collegamento che stai osservando.
I quattro tipi di relazione in termini di predecessori
Un predecessore non deve sempre finire prima che il suo successore inizi. Esistono quattro tipi di relazione logica, e ciascuno descrive quale estremità del predecessore controlla quale estremità del successore.
| Tipo | Regola | Esempio | Frequenza |
|---|---|---|---|
| Finish-to-start (FS) | Il successore non può iniziare finché il predecessore non finisce | Gettare le fondamenta, poi costruire i muri | Di gran lunga il più comune; l'impostazione predefinita nella maggior parte degli strumenti |
| Start-to-start (SS) | Il successore non può iniziare finché il predecessore non inizia | Iniziare la correzione di bozze una volta iniziata la stesura | Comune per il lavoro che si sovrappone |
| Finish-to-finish (FF) | Il successore non può finire finché il predecessore non finisce | I test non possono finire finché non finisce lo sviluppo | Comune per lavori paralleli che devono terminare insieme |
| Start-to-finish (SF) | Il successore non può finire finché il predecessore non inizia | Il vecchio sistema resta in funzione finché il nuovo non va in produzione | Raro; di solito è segno che la logica andrebbe ripensata |
Ognuno di questi collegamenti può avere un lag (un'attesa voluta, come FS+3 giorni per far asciugare la vernice) o un lead (una sovrapposizione, scritta come lag negativo, ad esempio FS-2 giorni). Lead e lag cambiano la tempistica del collegamento, ma non quale attività è il predecessore.
Tipi di predecessori di cui sentirai parlare
Predecessori immediati e indiretti
Un' predecessore immediato è collegato direttamente all'attività. Le attività più indietro nella catena sono predecessori indiretti: influenzano comunque l'attività, ma solo attraverso i collegamenti intermedi. Registra solo i predecessori immediati. Collegare un'attività a tutte quelle precedenti crea collegamenti ridondanti che rendono il cronoprogramma difficile da leggere e ancora più difficile da modificare.
Predecessori determinanti e non determinanti
Quando un'attività ha più predecessori, di solito solo uno di essi ne controlla la data di inizio in un dato momento. È il predecessore determinante. Gli altri sono non determinanti: terminano prima e hanno un certo float prima di influire sul successore.
| Predecessore determinante | Predecessore non determinante | |
|---|---|---|
| Effetto sul successore | Ne fissa la data di inizio (o fine) al più presto | Nessun effetto al momento |
| Se slitta di un giorno | Il successore slitta di un giorno | Non succede nulla finché il suo float non è esaurito |
| Dove concentrarsi | Monitoralo da vicino; spesso è sul percorso critico | Tieni d'occhio il float più che la data |
Il predecessore determinante può cambiare man mano che il lavoro procede. Un predecessore non determinante in ritardo può superare quello determinante e diventare il nuovo predecessore determinante.
Predecessori multipli e successori multipli
Un'attività con più predecessori è il punto in cui i percorsi si incontrano; il PMI la chiama convergenza dei percorsi. Un'attività con più successori è il punto in cui i percorsi si dividono, nota come divergenza dei percorsi. I punti di convergenza sono rischiosi perché il successore attende l'ultimo di tutti i suoi input, quindi un ritardo su uno qualsiasi dei percorsi può bloccare tutto. I punti di divergenza sono rischiosi perché il ritardo di un'attività si propaga a tutti i percorsi che ne partono.
Predecessori obbligatori, discrezionali ed esterni
I predecessori differiscono anche per il motivo per cui esiste il collegamento. Un predecessore obbligatorio (hard logic) riflette una necessità fisica o contrattuale. Un predecessore discrezionale (soft logic) riflette un modo di lavorare preferito che potresti cambiare, ed è quindi il primo posto in cui cercare quando devi applicare il fast tracking a un cronoprogramma. Un predecessore esterno si trova al di fuori del progetto, come la consegna di un fornitore o l'approvazione di un'autorità di regolamentazione. Queste categorie sono spiegate in dipendenze tra attività.
Come identificare predecessori e successori passo dopo passo
- Parti dall'elenco delle attività. Scomponi l'ambito con una work breakdown structure e trasforma ogni work package in attività; vedi attività e task di progetto.
- Poni una domanda per ogni attività: cosa deve essere finito (o iniziato) prima che questa possa cominciare? Le risposte sono i suoi predecessori candidati.
- Tieni solo i predecessori immediati. Se A determina B e B determina C, non collegare anche A a C.
- Scegli il tipo di relazione. Usa finish-to-start a meno che il lavoro non si sovrapponga davvero o debba terminare insieme.
- Aggiungi un lead o un lag solo quando c'è un motivo reale, come tempi di maturazione o un periodo di preavviso, e annota quel motivo.
- Verifica i successori. Per ogni attività, chiediti cosa la sta aspettando. Un'attività da cui non dipende nulla è la milestone di fine oppure un collegamento mancante.
- Disegna o genera un diagramma reticolare per individuare cicli, attività sospese e percorsi paralleli; vedi diagramma reticolare di progetto.
- Rivedi la logica con le persone che svolgono il lavoro. Sanno quali dipendenze sono reali e quali sono abitudini.
Esempio svolto: il cronoprogramma del lancio di un sito web
Un piccolo team sta lanciando un nuovo sito web. La tabella elenca ogni attività con durata, predecessori immediati e successori. Tutti i collegamenti sono finish-to-start senza lag.
| ID | Attività | Durata | Predecessori | Successori |
|---|---|---|---|---|
| A | Concordare i requisiti | 3 giorni | Nessuno (inizio) | B, C |
| B | Progettare le pagine | 5 giorni | A | D |
| C | Scrivere i contenuti | 4 giorni | A | E |
| D | Sviluppare le pagine | 6 giorni | B | E |
| E | Caricare i contenuti | 2 giorni | C, D | F |
| F | Testare e lanciare | 3 giorni | E | Nessuno (fine) |
A è un punto di diramazione (divergenza dei percorsi) perché ha due successori. E è un punto di confluenza (convergenza dei percorsi) perché ha due predecessori. Procedendo in avanti dal giorno 0 si ottengono queste date al più presto:
| ID | Inizio al più presto | Fine al più presto | Float totale |
|---|---|---|---|
| A | Giorno 0 | Giorno 3 | 0 |
| B | Giorno 3 | Giorno 8 | 0 |
| C | Giorno 3 | Giorno 7 | 7 giorni |
| D | Giorno 8 | Giorno 14 | 0 |
| E | Giorno 14 | Giorno 16 | 0 |
| F | Giorno 16 | Giorno 19 | 0 |
E non può iniziare finché entrambi i predecessori non sono terminati. C termina il giorno 7 ma D non termina fino al giorno 14, quindi D è il predecessore determinante di E e C è non determinante, con 7 giorni di float. Il percorso critico è A, B, D, E, F e il progetto dura 19 giorni.
- Se C slitta di 3 giorni, termina il giorno 10. E inizia comunque il giorno 14, quindi la data di lancio non si sposta; il float di C scende a 4 giorni.
- Se D slitta di 3 giorni, E inizia il giorno 17 e il lancio si sposta al giorno 22.
- Se C slitta di 9 giorni, termina il giorno 16, supera D come predecessore determinante e sposta il lancio di 2 giorni (9 giorni di ritardo meno 7 giorni di float).
Ecco perché si monitorano da vicino i predecessori determinanti e si tiene d'occhio il float degli altri. Il metodo di calcolo è spiegato passo per passo in forward pass e backward pass.
Come compaiono i predecessori in diagrammi di Gantt, diagrammi reticolari e strumenti
Diagrammi di Gantt
In un diagramma di Gantt, una dipendenza è rappresentata come una freccia dalla barra del predecessore a quella del successore. Per un collegamento finish-to-start la freccia va dalla fine del predecessore all'inizio del successore. Quando sposti un predecessore nella maggior parte degli software per diagrammi di Gantt, i suoi successori si spostano automaticamente con esso.
Diagrammi reticolari
In un diagramma reticolareactivity-on-node, ogni attività è un riquadro e ogni freccia va dal predecessore al successore. I diagrammi reticolari rendono facili da vedere i punti di convergenza e divergenza, ed è per questo che sono utili per verificare la logica anche se la gestione quotidiana avviene in una vista Gantt. Un diagramma PERT usa la stessa idea con stime a tre punti.
Notazione dei predecessori negli strumenti di schedulazione
La maggior parte degli strumenti di schedulazione desktop consente di digitare i predecessori in una colonna usando l'ID di riga del predecessore, il tipo di collegamento ed eventuali lead o lag. In Microsoft Project, secondo la documentazione Microsoft, inserire solo un ID crea un collegamento finish-to-start senza lag, un numero positivo aggiunge un lag e un numero negativo aggiunge un lead. Più predecessori sono separati dal separatore di elenco (virgola o punto e virgola, a seconda delle impostazioni internazionali).
| Accesso | Significato |
|---|---|
| 3 | L'attività 3 deve terminare prima che questa attività inizi (FS, nessun lag) |
| 3FS+2d | Inizia 2 giorni dopo la fine dell'attività 3 |
| 3SS | Può iniziare una volta iniziata l'attività 3 |
| 3FF-1d | Deve terminare non prima di 1 giorno prima della fine dell'attività 3 |
| 2,5 | Attende la fine sia dell'attività 2 sia dell'attività 5 |
Nell'esempio del sito web, E (Caricare i contenuti) mostrerebbe "3,4" se C e D fossero le righe 3 e 4. Strumenti cloud come Wrike e Smartsheet consentono di creare gli stessi collegamenti trascinando tra le barre nella vista Gantt o compilando una colonna dei predecessori, ed entrambi supportano dipendenze e viste del percorso critico nei piani a pagamento.
Tracciare la logica
Molti strumenti possono evidenziare predecessori e successori di un'attività. La funzione Percorso attività di Microsoft Project, ad esempio, può evidenziare predecessori, predecessori determinanti, successori e successori determinati nel diagramma di Gantt. Quando una milestone slitta, risalire a ritroso i suoi predecessori determinanti è di solito il modo più rapido per trovare la vera causa.
Perché i predecessori contano per il percorso critico e il float
Il metodo del percorso critico si basa interamente sui collegamenti tra predecessori e successori. Il forward pass spinge le date al più presto dai predecessori ai successori; il backward pass riporta le date al più tardi dai successori ai predecessori. La differenza tra le due è il float, e la catena di attività con float pari a zero (o minimo) è il percorso critico.
Questo ha alcune conseguenze pratiche:
- Un'attività senza successori ha un float fuorviante. Il suo float è misurato rispetto alla fine del progetto, quindi può slittare molto prima che il cronoprogramma mostri un impatto, anche se in realtà qualcos'altro dipende da essa.
- Un'attività senza predecessori può iniziare il primo giorno. Se non è così nella realtà, il cronoprogramma mostrerà lavoro che inizia prima di quanto sia realisticamente possibile.
- I collegamenti mancanti rendono errato il percorso critico. Se la logica è incompleta, il percorso evidenziato dallo strumento potrebbe non essere quello che controlla davvero la data di fine.
- I limiti di risorse non sono predecessori. Il CPM presuppone risorse illimitate. Se due attività non possono svolgersi insieme perché le svolge la stessa persona, questo si gestisce con il livellamento delle risorse, non inventando un collegamento logico.
Errori comuni con i predecessori (e come correggerli)
| Errore | Perché crea problemi | Soluzione |
|---|---|---|
| Estremità aperte (nessun predecessore o nessun successore) | I ritardi non si propagano, quindi float e data di fine sembrano migliori di quanto siano | Collega ogni attività alla rete, terminando nella milestone di fine |
| Collegamenti alle attività di riepilogo | La logica diventa difficile da seguire e alcuni strumenti la calcolano in modo inatteso | Collega le attività di dettaglio, non le righe di riepilogo |
| Collegamenti ridondanti | Confusione che nasconde la vera logica determinante | Tieni solo i predecessori immediati |
| Logica circolare (A prima di B prima di A) | Il cronoprogramma non può essere calcolato; la maggior parte degli strumenti la rifiuta | Interrompi il ciclo suddividendo un'attività o ripensando l'ordine |
| Vincoli di data al posto dei collegamenti | Le date smettono di spostarsi quando i predecessori slittano | Usa collegamenti logici e riserva i vincoli alle date realmente fisse |
| Lag usati per rappresentare lavoro | Il lavoro nascosto in un lag non può essere monitorato né avere risorse assegnate | Modella il lavoro come un'attività a sé |
| Abuso dei collegamenti SS e SF | La logica diventa difficile da spiegare e facile da rompere | Usa FS come impostazione predefinita; suddividi le attività se si sovrappongono |
| Collegamenti obsoleti dopo una ripianificazione | Il cronoprogramma prevede date per un piano che nessuno sta seguendo | Rivedi i collegamenti ogni volta che cambiano ambito o approccio |
Se la stessa sovrapposizione richiede continuamente un collegamento start-to-start con un lag lungo, spesso è più chiaro suddividere il predecessore in due attività e collegare il successore alla prima parte.
Verificare la qualità della logica del cronoprogramma
I grandi progetti verificano spesso la logica del cronoprogramma rispetto a controlli di qualità pubblicati. Un esempio molto diffuso è la valutazione in 14 punti della US Defense Contract Management Agency (DCMA), che include questi controlli sulla logica:
| Verifica | Soglia DCMA |
|---|---|
| Attività incomplete prive di predecessore o successore | Non più del 5% |
| Collegamenti finish-to-start | Almeno il 90% |
| Lead (lag negativi) | Nessuno |
| Collegamenti con lag | Non più del 5% |
| Attività incomplete con vincoli di data rigidi | Non più del 5% |
Queste soglie provengono dal contesto dei contratti della difesa, ma rappresentano un utile controllo di buon senso per qualsiasi cronoprogramma. Il nostro consiglio per i progetti più piccoli è più semplice:
- Filtra le attività con la colonna Predecessori o Successori vuota e correggile una per una.
- Sposta di una settimana un'attività iniziale e verifica che la data di fine si sposti come previsto.
- Leggi ad alta voce il percorso critico dall'inizio alla fine; se un passaggio suona illogico, controllane i collegamenti.
- Ripeti i controlli prima di fissare la baseline di progetto e dopo ogni ripianificazione importante.
Buone pratiche per gestire i predecessori
- Costruisci la logica prima di aggiungere le date. Lascia che siano i collegamenti a calcolare le date invece di digitarle.
- Assegna a ogni attività un responsabile chiaro, così qualcuno ne risponde quando un predecessore è in ritardo.
- Concorda per tempo i predecessori tra team ed esterni, con un referente nominativo dall'altra parte.
- Tratta i punti di convergenza (attività con molti predecessori) come rischi e monitorali.
- Annota perché esiste ogni collegamento discrezionale, così sai quali possono essere modificati per recuperare tempo; vedi compressione dei tempi.
- Mantieni ordinata la rete con milestone di inizio e di fine, e usa un' attività hammock per il lavoro di supporto che copre un gruppo di attività.
- Aggiorna i collegamenti durante la revisione regolare del cronoprogramma, non solo quando qualcosa va storto.
Se stai costruendo un cronoprogramma da zero, i modello di cronoprogramma di progetto, modello di percorso critico e Modello di diagramma di Gantt gratuiti includono tutti colonne per i predecessori, e il modello di WBS ti aiuta a costruire prima l'elenco delle attività. Per il processo più ampio, leggi la nostra guida alla schedulazione del progetto.
Modelli gratuiti per questo argomento
Domande frequenti
Che cos'è un predecessore nel project management?
Un predecessore è un'attività che deve iniziare o finire prima che un'altra attività possa iniziare o finire. Controlla la tempistica dell'attività che ne dipende.
Che cos'è un successore nel project management?
Un successore è un'attività che dipende da un'altra attività (il suo predecessore) e la segue nel cronoprogramma. La sua data di inizio o fine è determinata da quel predecessore.
Qual è la differenza tra un predecessore e un successore?
Il predecessore viene prima e controlla la tempistica; il successore segue e ne dipende. Sono le due estremità della stessa dipendenza, e la maggior parte delle attività è predecessore in un collegamento e successore in un altro.
Un'attività può avere più predecessori?
Sì. Con collegamenti finish-to-start non può iniziare finché tutti i suoi predecessori non sono terminati, quindi quello che termina per ultimo, il predecessore determinante, ne fissa la data di inizio.
Un'attività può avere più successori?
Sì. Un ritardo di quell'attività si ripercuote quindi su ciascuno dei suoi successori, ed è per questo che le attività con molti successori meritano un'attenzione particolare.
Che cos'è un predecessore immediato?
Un predecessore immediato è collegato direttamente all'attività. Le attività precedenti nella catena sono predecessori indiretti e non vanno collegate di nuovo.
Che cos'è un predecessore determinante?
Il predecessore che determina effettivamente, in quel momento, la data di inizio o fine al più presto di un successore. Un suo ritardo ritarda immediatamente il successore.
Cosa significa 3FS+2d in MS Project?
Significa che l'attività 3 è un predecessore finish-to-start con un lag di 2 giorni: questa attività può iniziare 2 giorni dopo la fine dell'attività 3. Inserire solo "3" significherebbe finish-to-start senza lag.
Cosa succede se un'attività non ha predecessori?
Lo strumento di schedulazione la farà iniziare alla data di inizio del progetto. Va bene per la prima attività, ma per qualsiasi altra di solito significa che manca un collegamento.
Cosa succede se un'attività non ha successori?
Diventa un'estremità aperta, quindi un suo ritardo non mostrerà alcun effetto sul lavoro successivo o sulla data di fine. Collegala all'attività che ha bisogno del suo output, o alla milestone di fine.
I predecessori sono la stessa cosa delle dipendenze?
Non esattamente. Una dipendenza è il collegamento tra due attività; predecessore e successore sono le attività alle due estremità. Vedi dipendenze tra attività.
Un successore può iniziare prima che il suo predecessore finisca?
Sì, se il collegamento è start-to-start o finish-to-finish, oppure se a un collegamento finish-to-start si applica un lead (lag negativo). Sovrapporre il lavoro in questo modo fa risparmiare tempo ma aumenta il rischio di rilavorazioni.
I predecessori influiscono sul float?
Sì. Il float si calcola confrontando le date di un'attività con quelle dei suoi successori, quindi collegamenti mancanti o errati producono un float errato. Vedi float e slack.
Come vengono mostrati i predecessori in un diagramma reticolare?
Come frecce. Il predecessore è il nodo da cui parte la freccia e il successore è il nodo verso cui punta; vedi diagramma reticolare di progetto.