Contratti agili a prezzo fisso

Agile a prezzo fisso – i segreti svelati

Il software Agile a prezzo fisso è l'aspirazione della maggior parte dei CIO. Offre la prevedibilità finanziaria di un prezzo fisso combinata con la flessibilità di un approccio Agile alla distribuzione del software. Agile consente al team di lavorare in un modo che si adatta al cambiamento, incoraggiando e rispondendo a feedback rapidi sul software funzionante. Molti sostengono che il prezzo fisso e Agile si escludano a vicenda. Questo è comprensibile, perché Agile abbraccia l'idea che i requisiti cambino, mentre un prezzo fisso presuppone tipicamente requisiti rigidi e pre-noti. In questo articolo imparerai che il prezzo fisso e Agile non si escludono a vicenda se il lavoro è strutturato in un modo particolare. Entro la fine di questo articolo avrai imparato i segreti di come farlo.

Il cambiamento dei requisiti è inevitabile (e misurabile)

È praticamente impossibile conoscere tutti i requisiti di un progetto software prima di iniziare. I requisiti cambiano durante il progetto e il suo svolgimento deve adattarsi di conseguenza. Le ragioni per cui i requisiti cambiano sono due:

  1. imprevedibiliViviamo in un mondo in rapida evoluzione e alcune esigenze saranno imprevedibili, semplicemente perché le circostanze e le esigenze cambiano. Sebbene l'entità del cambiamento possa essere prevista.
  2. Incognite inconoscibiliNon possiamo conoscere tutti i dettagli di ciò che deve essere costruito finché non abbiamo completato parte del lavoro. Alcuni requisiti diventano evidenti solo con l'evolversi del progetto.

Per un progetto ben gestito, il volume (si consiglia di quantificarlo utilizzando la dimensione funzionale) di queste modifiche dovrebbe essere in genere di circa 2% al mese. Un'elevata volatilità dei requisiti può essere pericolosa per un progetto. Si consideri un progetto di 12 mesi con un tasso di abbandono dei requisiti di 5% al mese. Ciò significa che il progetto finale sarà diverso di 60% rispetto a come era stato concepito e almeno metà del codice verrà scritto due o più volte. Questo non è raro per un progetto Agile. Agile aiuta il cliente a ottenere valore dal software consegnato, ma non è necessariamente il mezzo più efficiente per raggiungerlo. Uno dei catalizzatori dell'emergere di Agile è la sfida di eseguire un solido lavoro sui requisiti in anticipo. È qui che l'IA sta cambiando il panorama.

Gestire proattivamente il cambiamento dei requisiti

Qualsiasi modifica ai requisiti rischia di interrompere il flusso del team di sviluppo, quindi è necessario fare ogni sforzo per gestire proattivamente il cambiamento, pur accettando il cambiamento sarà necessario e dovrebbe essere adattato. Per minimizzare il cambiamento è necessario quanto segue:

  1. Una struttura contrattuale che incoraggia entrambe le parti a perseguire i requisiti di qualità il prima possibile, scoraggiando le rilavorazioni evitabili.
  2. Solidi parametri per dimensionare, calcolare i costi e pianificare le modifiche.
  3. Processi di gestione del cambiamento e di definizione delle priorità semplificati.

Le norme commerciali non sono soddisfacenti

L'approccio commerciale più comune al lavoro software esternalizzato è quello di "pagate per una squadra e questa lavorerà sugli arretrati in base alle priorità, rilasciando aggiornamenti regolarmente."  Questa tende a essere la natura della maggior parte dei contratti Agile: fornire ciò che il cliente ritiene più prezioso in un dato momento, MA non offre alcuna garanzia che l'intero ambito possa essere consegnato a un costo noto né in un determinato lasso di tempo. Questo accordo è commercialmente asimmetrico, con l'acquirente che si assume la maggior parte del rischio associato alla consegna del progetto. Peggio ancora, c'è un incentivo commerciale per gli sviluppatori a incoraggiare la volatilità dei requisiti, poiché ciò genera rilavorazioni, maggiori commissioni e tempi più lunghi. In breve, gli incentivi delle due parti non sono allineati. È così che è strutturata la maggior parte dei contratti.

Caratteristiche di un contratto a prezzo fisso equo

È fondamentale che il contratto sia progettato per incentivare comportamenti positiviDal punto di vista dell'acquirente, un contratto di sviluppo software a prezzo fisso avrà le seguenti caratteristiche:

  • Incentivi allineati e rischio condiviso.
  • Incentivi per entrambe le parti per massimizzare la fornitura di software di alta qualità nel più breve tempo possibile e a un prezzo equo.
  • Consente flessibilità di portata, ma mette in discussione la necessità di ogni cambiamento.
  • Non è necessario conoscere in anticipo tutti i requisiti.
  • Consente all'acquirente di prevedere costi e tempi.
  • Premia i comportamenti positivi di entrambe le parti (e penalizza quelli negativi).
  • Consente allo sviluppatore di adottare modalità di lavoro flessibili.

È possibile realizzarlo davvero? Sì. È possibile, ed è stato fatto molte volte con risultati positivi da entrambe le parti.

Come implementare un paradigma di progetto software agile a prezzo fisso

Adottando le seguenti linee guida, i CIO possono raggiungere una maggiore prevedibilità e aumentare contemporaneamente la produzione di software di alta qualità a un dato costo.

Gli sviluppatori, gli integratori e altri soggetti che vendono servizi software sulla base di un contratto a tempo e materiali potrebbero non essere propensi ad adottare questo approccio, quindi spetta alla parte acquirente introdurre l'approccio modificato.

Per i CIO che desiderano ottenere i vantaggi combinati dei contratti Agile e a prezzo fisso, consigliamo di comprendere i seguenti principi e poi di seguire i passaggi pratici.

Principi della contrattazione agile a prezzo fisso:

  1. Dimensionamento oggettivo standardizzato con prezzo fisso per unità,
  2. Misure di progresso concordate
  3. Barriere di sicurezza di qualità per garantire che entrambe le parti si sostengano a vicenda, raggiungendo buoni risultati con il minimo sforzo complessivo.
  4. (Facoltativo) – incentivi per gli sviluppatori affinché guadagnino un bonus per il superamento degli obiettivi di progresso concordati.

Agile a prezzo fisso in pratica:

I contratti basati sulle dimensioni funzionali utilizzano un prezzo fisso per unità funzionale standard, indipendentemente dalla funzionalità fornita e dalle modalità di fornitura (sia che si utilizzi codice creato manualmente o riutilizzato). Un prezzo concordato con il fornitore viene stabilito per una quantità arbitraria di funzionalità, ma non per la funzionalità specifica. Il costo fisso per CFP (Costo Fisso per Unità Funzionale Standard) consente la flessibilità in base a requisiti variabili, combinata con la prevedibilità dei costi.

  1. Utilizzare le dimensioni funzionali standardizzate ISO. Investire nell'apprendimento dello standard moderno per il dimensionamento funzionale del software (standard ISO COSMIC function points CFP).
  2. Utilizzare l'analisi dei requisiti e il dimensionamento basati sull'intelligenza artificiale Per accelerare e migliorare la qualità dei requisiti. AIFRA migliora la qualità e la completezza dei requisiti prima dell'inizio dei lavori, fornendo al committente una buona comprensione dei costi e delle tempistiche di realizzazione. È un passo avanti verso la definizione di "grandi requisiti in anticipo", ma senza gli svantaggi di una lunga e complessa documentazione dei requisiti.
  3. Contratti basati sulle dimensioni funzionali. Strutturare attentamente i termini del contratto in modo da incoraggiare i comportamenti sopra descritti.

Informazioni sui punti funzionali COSMIC

I punti funzione COSMIC rappresentano la seconda generazione del dimensionamento funzionale e i primi ad aver ottenuto il riconoscimento dello standard ISO. Si tratta di un metodo di dimensionamento del software indipendente dalla tecnologia. I CFP costituiscono la base per metriche migliori e per un controllo più rigoroso dell'ambito e delle attività del software. Le unità dei CFP sono strettamente allineate allo sforzo necessario per fornire la funzionalità.

Informazioni sull'analisi dei requisiti AI-First (AIFRA)

AIFRA è uno strumento che accelera l'analisi e la qualità dei requisiti (in particolare: chiarezza, completezza, coerenza e concisione). Utilizzando questi strumenti, le aziende possono specificare l'ambito di applicazione rapidamente e con standard più elevati rispetto alla procedura manuale. È importante sottolineare che AIFRA offre tre vantaggi chiave che consentono di implementare la contrattualizzazione Agile a prezzo fisso:

  1. Accelera il perfezionamento dei requisiti iniziali.
  2. Espone incognite conoscibili: una delle principali cause della sottostima della portata.
  3. Automatizza la stima delle dimensioni senza nemmeno distrarre il team dal proprio lavoro.

Contratti agili a prezzo fisso che funzionano

Il prezzo concordato per CFP sarà definito e rimarrà invariato per tutta la durata del progetto. È necessario che il cliente sia dotato di linee guida contrattuali che gli consentano di presentare requisiti chiari, tempestivi e di qualità adeguatamente misurabile. In cambio, l'appaltatore fornirà la funzionalità a un prezzo concordato e con una qualità misurabile concordata. Il contratto potrebbe prevedere incentivi per il fornitore, che otterrà un bonus per una consegna più rapida (al livello di qualità concordato). Potrebbero inoltre essere previste penali per il cliente in caso di presentazione di requisiti inadeguati o in ritardo (modifiche). I contratti complessivi strutturati in questo modo possono offrire il duplice vantaggio dell'agilità e del prezzo fisso.

Cosa non funziona

Punti della storia

Contratti basati sugli Story Point. Perché? Gli Story Point sono altamente soggettivi e facili da manipolare durante il progetto. Di solito è lo sviluppatore a determinare il significato di uno Story Point e poi a manipolare la stima per adattarla ai propri interessi commerciali.

Allineamento dei risultati

Risultati aziendali allineati. Raramente è possibile per il cliente allineare i premi dello sviluppatore con i risultati aziendali del cliente. Di solito ci sono troppe caratteristiche al di fuori del controllo dello sviluppatore. Le trattative contrattuali tendono a fallire. In alcune (rare) occasioni, però, questo può funzionare.

Come procedere

Se desideri saperne di più su come ottenere contratti Agile a prezzo fisso, contattaci,

ScopeMaster Ltd offre sia gli strumenti per l'analisi automatizzata dei requisiti sia servizi professionali su come strutturare contratti agili a prezzo fisso.