Concetto: Adattamento del processo
Questo principio motiva la necessità di assegnare la giusta dimensione al processo di sviluppo in base alle esigenze del progetto.
Descrizione principale

Introduzione

Questo principio asserisce che è di fondamentale importanza assegnare la giusta dimensione al processo di sviluppo in base alle necessità del progetto. Di più non significa migliore, allo stesso modo di meno non significa migliore: invece, la quantità di formalità, precisione e controllo presenti in un progetto devono essere personalizzate secondo una varietà di fattori, incluso la dimensione e la distribuzione dei team, la quantità di vincoli imposti dall'esterno e la fase in cui si trova il progetto.

   
Vantaggi
  • Efficienza del ciclo di vita
  • Aumentata agilità del progetto.
  • Piani e stime realistici.
Pattern
  1. Ridimensionare il processo in base alle esigenze del progetto incluso:
    • la dimensione e la distribuzione del team del progetto,
    • la complessità dell'applicazione
    • la necessità di conformità.
  2. Adattare le formalità del processo alla fase del ciclo di vita
    (consentire alla formalità di evolversi da leggera a pesante quando vengono risolte le incertezze)
  3. Migliorare continuamente il processo
  4. Bilanciare i piani e le stime con un livello di incertezza
Anti-pattern
  • Vedere sempre come migliore un processo maggiore ed una pianificazione anticipata più dettagliata:
    • Forzare delle stime iniziali e restare su quelle stime.
    • Sviluppare dei piani precisi e gestire il progetto tenendone traccia rispetto ad un piano statico.

Discussione

Un processo maggiore, come l'utilizzo di più artefatti, la produzione di documentazione più dettagliata, lo sviluppo e la manutenzione di più modelli che devono essere sincronizzati, e più analisi formali, non necessariamente significa un processo migliore. Piuttosto è necessario dimensionare correttamente il processo in base alle esigenze del progetto. Quando un progetto aumenta di dimensione, diviene più distribuito, utilizza una tecnologia più complessa, dispone di un maggior numero di stakeholder e deve aderire a degli standard di conformità più rigidi, il processo deve diventare più disciplinato. Ma per progetti minori con team di lavoro vicini ed una tecnologia conosciuta, il processo deve essere più leggero.

Riepilogo delle modalità di personalizzazione di un processo di sviluppo come funzione delle sue caratteristiche

Fattori che determinano la quantità di disciplina del processo.
Molti fattori determinano quanto il processo debba essere disciplinato, incluso la dimensione del progetto, le distribuzioni dei team, la complessità della tecnologia, il numero di stakeholder, i requisiti di conformità e la posizione nel ciclo di vita del progetto.

Un progetto deve adattare le formalità del processo alla fase del ciclo di vita. Da una parte, all'inizio del progetto ci si trova di fronte a molta incertezza ed è necessario incoraggiare fortemente la creatività per sviluppare un'applicazione che si occupi delle esigenze di business. Un processo maggiore di solito porta ad una minore creatività, niente di più; è quindi necessario ridurre al  minimo il processo negli stadi iniziali di un progetto, dove l'incertezza è un fattore quotidiano. D'altra parte, più avanti nel progetto è necessario introdurre un maggiore controllo, ad esempio i quadri di controllo modifiche, per impedire una creatività non voluta ed il rischio associato, che spesso porta ad una tardiva introduzione di difetti nel prodotto: questo si traduce in ulteriore processo.

Un'organizzazione deve cercare di migliorare continuamente il processo. Prendere in considerazione l'esecuzione di una valutazione dopo ogni iterazione e al termine del progetto , per catturare le lezioni apprese ed utilizzare quella conoscenza per migliorare il processo. Incoraggiare tutti i membri del team a cercare continuamente delle opportunità di miglioramento.

Infine, è di importanza critica bilanciare i piani del progetto e le stime associate con l'incertezza di un progetto. Questo significa che, all'inizio dei progetti, quando l'incertezza in genere è grande, i piani e le stime associate concentreranno l'attenzione su una pianificazione e su stime a grandi linee, piuttosto che mirare a fornire alti livelli di precisione quando di fatto quest'ultima non esiste. Le attività iniziali di sviluppo devono mirare ad eliminare l'incertezza fino a consentire gradualmente un'accresciuta precisione nella pianificazione.