analisi-disegno.com

Homepage  | Blog | Per essere avvisati in caso di nuovi documenti | In English


Forme contrattuali per i progetti software

Il rapporto tra committente e fornitore nei progetti software può essere regolato da diverse forme contrattuali.

Le diverse tipologie di contratto hanno pro e contro, ed è essenziale valutare questi pro e contro a fronte dei rischi specifici della particolare situazione progettuale, ricordando che l'essenziale è una logica win-win (non win-lose, o lose-lose)...

contratti a prezzo e risultati fissati (a corpo, chiavi in mano)

contratti a ore lavorate (tempo spesa, time and material, body rental)

contratti per fase (un contratto per ogni fase)

contratti optional scope (prezzo fissato, risultati variabili)

altre forme contrattuali


Contratti a prezzo fissato (a corpo, chiavi in mano)

Viene concordato un prezzo, e il fornitore deve effettuare il lavoro al prezzo concordato, indipendentemente dai costi effettivi per fornire i prodotti o i servizi. I contratti possono prevedere incentivi – o penali - per il raggiungimento di determinati obiettivi di progetto (es. tempi).

Il rischio (in teoria, almeno quello economico…) è spostato sul fornitore, che è motivato a produrre in modo efficiente, per aumentare i profitti.

La scelta del fornitore è spesso basata essenzialmente su aspetti economici (gare): vince chi offre il prezzo inferiore.

Punto di vista del fornitore:

  • le stime di costo sono difficili, e devono essere molto accurate
  • necessario comunque aumentarle per far fronte a potenziali cambiamenti e ad eventi inaspettati
  • i cambiamenti di requisiti vanno tracciati in modo rigoroso
  • le negoziazioni conseguenti ai cambiamenti possono peggiorare le relazioni, e rendere improbabili opportunità di lavoro future

Punto di vista del committente:

  • le negoziazioni tendono ad essere lunghe e faticose
  • il fornitore può essere tentato a produrre risultati imperfetti, o a lavorare troppo in fretta senza corrispondere alle aspettative in termini di qualità

Contratti a ore lavorate (tempo spesa, time and material, body rental)

Il fornitore riceve una tariffa concordata per ogni ora di lavoro effettuata sul progetto. Il rischio economico è spostato sul committente, e il fornitore non è incentivato a controllare o ridurre i costi. La quantificazione complessiva può essere indefinita.

Sono
preferibili se si prevede forte incertezza e cambiamento di requisiti, e quando il committente vuole mantenere la massima flessibilità nella determinazione dei tempi, dei costi e e dei risultati

Punto di vista del fornitore:

  • nessun rischio economico
  • possibilità di collaborare in modo sistematico con il committente nell’evoluzione del progetto, per assicurarne la soddisfazione

Punto di vista del committente:

  • possibilità di scegliere il fornitore sulla base di preferenze e competenza, anziché sulla base dei soli costi
  • nessuna garanzia sui costi finali
  • da usare preferibilmente con fornitori con cui esiste un rapporto di fiducia consolidato

Contratti per fase

Stipula di una serie di contratti successivi, basati sulle fasi concordate del progetto. Ad esempio, un contratto per lo studio di fattibilità, uno successivo per lo sviluppo.

I contratti per le fasi iniziali possono essere a prezzo flessibile (tempo spesa) oppure fissato (a corpo), mentre i successivi tendono ad essere a prezzo fissato.

Problema: costo complessivo della successione di negoziazioni (può essere opportuno un contratto “master”).

Sono in genere vantaggiosi per entrambe le parti:

  • riducono fortemente il rischio economico per il fornitore
  • permettono al committente un controllo dei costi migliore
  • permettono verifiche sulla efficacia della collaborazione, e eventuali cambiamenti

Contratti optional scope (prezzo fissato, risultati variabili)

Partono dal presupposto che non è possibile fissare con certezza e contemporaneamente, all’inizio del progetto, tempi, costi e risultati del progetto (triplice vincolo).

In molte situazioni, però, il committente è obbligato a fissare subito un budget vincolante per il progetto.

Una possibile soluzione consiste nel fissare subito l’accordo economico complessivo, ma rendere variabile il risultato atteso (scope), che verrà precisato in corso d’opera.

Vantaggi:

  • rispetto ai contratti a prezzo fissato, si evita il rischio di bloccare contemporaneamente le tre variabili: tempi, costi, risultati
  • rispetto ai contratti a prezzo flessibile, il tetto di spesa è predeterminato e vincolante
  • la precisazione dei requisiti e delle priorità avviene in corso d’opera
  • è possibile gestire i cambiamenti

Avvertenze:

  • da usare solo quando esiste una relazione di fiducia consolidata tra committente e fornitore
  • preferibile che il controllo sugli avanzamenti sia basato sin dall’inizio sulla verifica sistematica di software funzionante

Altre forme contrattuali

Naturalmente esistono numerose varianti delle forme contrattuali elencate sopra. Per approfondire sono utili in ambito italiano alcuni documenti emessi dal CNIPA, e più in generale un articolo di Alistair Cockburn sui contratti agili.


analisi-disegno.com, servizi e materiali per lo sviluppo dei sistemi software, a cura di Adriano Comai.