Introduzione
La questione relativa al rapporto tra contratti e metodologie Agile fa spesso discutere gli esperti del settore. Anche su queste pagine, in alcuni interessanti articoli, il tema è stato più volte affrontato. Il dibattito circa la compatibilità di determinate metodologie di sviluppo software — e dei principi alla loro base — con la normativa in vigore è però alimentato da alcune incomprensioni.
Senza pretese di completezza, in queste pagine si cercherà di sgombrare il campo da alcune errate “credenze” in materia contrattuale e di chiarire come questa sia totalmente compatibile con i principi espressi nel Manifesto Agile.
Non parleremo in dettaglio in questo articolo di tecniche di negoziazione e/o di mediazione per arrivare a un determinato accordo che poi può sfociare in un contratto, ma ci concentreremo specificamente sugli aspetti legali e normativi, visti però a un certo livello di astrazione.
Una contrapposizione apparente
Sfogliando un qualsiasi articolo che tratti la tematica del rapporto tra contratti e agilità, ricorre come un mantra la contrapposizione tra “contratto tradizionale” e “contratto agile”. Vediamo cosa c’è di vero, e di falso, in questa contrapposizione.
Il contratto “tradizionale”
Secondo quanto si crede generalmente, al contratto “tradizionale” sarebbe attribuita la specifica funzione di consentire a una delle parti — quella più scaltra o più forte contrattualmente — di perseguire il proprio interesse, anche a discapito di quello altrui.
Al contratto “tradizionale”, al contempo, si attribuirebbe l’ulteriore compito di sanzionare le inadempienze della controparte: la costante presenza di penali, in questo tipo di contratti, risponderebbe proprio a questa esigenza di tutela.
Il contratto “agile”
Il contratto “agile”, basato sui principi del noto Manifesto [2], all’opposto si fonderebbe sulla buona fede delle parti, garantendo trasparenza e collaborazione tra tutti gli attori coinvolti nel rapporto contrattuale: la sua funzione, in definitiva, sarebbe quella di creare valore diffuso, consentendo a tutti di perseguire i propri interessi.
Questo tipo di contratto, per via della sua peculiare struttura, sarebbe inoltre in grado di adattarsi a eventuali cambiamenti intervenuti durante la sua esecuzione, distinguendosi così dalla rigidità di quello “tradizionale”.
Non confondere i diversi piani
In quest’ottica, ed estremizzando i concetti al solo scopo esemplificativo, il contratto “tradizionale” risulterebbe quindi uno strumento per imporsi su altri soggetti: utilizzato dal più forte, economicamente o intellettualmente, verrebbe impiegato per ottenere in modo indebito condizioni contrattuali migliori, oppure per tenere sotto scacco, attraverso penali, la controparte. In realtà, a livello meramente legale, le differenze tra contratti “agili” e “tradizionali” sono apparenti e si basano su due incomprensioni di fondo.
Da un lato, chi scrive del rapporto tra metodologie Agile e contratti è in genere un tecnico con buona esperienza di business, ma tende a confondere piani molto diversi: occorre infatti ricordarsi che la fase delle trattative preludio alla formazione del contratto (la “negoziazione”) è cosa diversa dal suo contenuto e dalla sua esecuzione.
Dall’altro, vengono quasi sempre ignorati i fondamenti dell’ordinamento civile, attribuendo carattere di novità ad alcuni principi del Manifesto Agile che, in materia contrattuale, di innovativo hanno però ben poco, visto che certi principi esistono già e sono codificati nel codice civile, come vediamo di seguito.
Dai principi al contratto
Perché quindi non ha senso distinguere tra contratti “agili” e contratti “tradizionali”? Formulando diversamente la domanda, perché si ritiene che non esistano contratti “agili” basati sulla buona fede delle parti, sulla loro collaborazione e cooperazione, sulla trasparenza e sul perseguimento degli interessi di tutte i soggetti legati dal contratto?
Perché questi principi, anche se espressi nel Manifesto Agile, sono da sempre alla base dell’ordinamento civile e, in particolare, della disciplina contrattuale. E ciò è facilmente riscontrabile. La “buona fede”, che sembrerebbe del tutto estranea ai contratti “tradizionali”, è invece uno dei pilastri della normativa che regola i rapporti tra privati: attraverso una semplice ricerca nel testo del codice civile, si può rilevare come l’espressione “buona fede” vi compaia più di 60 volte. Non è un caso.
Il principio della buona fede
Il principio di “buona fede” permea profondamente la materia civilistica: abbiamo disposizioni specifiche, inderogabili, che obbligano le parti a comportarsi “secondo buona fede” nello svolgimento delle trattative e nella formazione del contratto, oltre che nella sua esecuzione e addirittura nella sua interpretazione [1].
È un principio talmente importante che la sua violazione può comportare, in determinati settori, anche sanzioni amministrative. Discorso analogo può essere svolto con riferimento ai concetti di “correttezza” e “collaborazione” già citati. Anche a essi il codice civile dedica varie disposizioni, imponendo alle parti del contratto, ad esempio, trasparenza informativa, lealtà reciproca e divieto di rottura ingiustificata delle trattative.
Nel rapporto contrattuale, inoltre, si richiede sempre che ciascuna delle parti compia quanto necessario per consentire alla controparte di adempiere alla propria obbligazione, ossia di “collaborare” alla realizzazione della prestazione pattuita.
Obblighi di protezione
Infine, occorre dedicare qualche parola in merito alla presunta vocazione “egoistica” attribuita al contratto “tradizionale”, che mirerebbe esclusivamente al perseguimento dell’interesse di una delle parti, quella che riesce a imporlo all’altra.
Nel nostro ordinamento la disciplina in materia di contratti si pone in maniera diametralmente opposta rispetto a quanto appena rappresentato: nei rapporti contrattuali, ma non solo, si è sempre in presenza di doveri di salvaguardia dell’interesse dell’altra parte. Vengono definiti “obblighi di protezione” e sussistono anche qualora non siano stati oggetto di specifica pattuizione, in quanto corollari del generale principio di buona fede.
Così, in presenza di un contratto di servizi, sussiste l’obbligo di evitare al proprio fornitore un costo maggiore per l’esecuzione della sua prestazione; ad esempio, non solo lo si deve informare di guasti o malfunzionamenti del servizio, ma ci si deve anche adoperare attivamente per la loro risoluzione.
Si può quindi affermare che, sul piano dei principi che regolano l’ordinamento civilistico, non esiste distinzione tra contratti “tradizionali” e contratti “agili”: il contratto è sempre “agile”, se con ciò si intende che, in tutte le fasi della sua “vita”, le parti debbano rispettare i principi di “buona fede”, “trasparenza”, “collaborazione” e che lo stesso debba essere funzionale al perseguimento dell’interesse di tutti i soggetti ivi coinvolti.
Una doverosa precisazione
Non si vuole ovviamente negare che il contratto, all’apparenza espressione della libertà e dell’autonomia di ciascun soggetto, possa essere nei fatti l’esito di un processo in cui le diseguaglianze tra le parti, di qualsiasi tipo, abbiano avuto un’influenza enorme: non è difficile rintracciare casi di questo tipo anche nell’ambito della propria esperienza diretta o indiretta.
Però questo è un problema reale che si trova comunque su di un piano totalmente differente dai principi dell’ordinamento. È un muoversi attraverso certi interstizi che nulla ha a che vedere con l’esistenza di determinati principi e con la necessità del loro rispetto nei rapporti contrattuali.
Quale ruolo per Agile in materia contrattuale?
Dovendo riassumere, diremmo che, nonostante sia anche possibile cercare di volgere a proprio esclusivo vantaggio i termini di un contratto, nell’ordinamento esistono già comunque alcuni principi, quali la buona fede, la collaborazione e la trasparenza, che in genere vengono messi in risalto nell’ambito delle metodologie agili. In tal senso, Agile nulla può aggiungere alle norme.
Quest’ultima considerazione, però, conduce a porci qualche ulteriore domanda: e allora quale ruolo possono giocare i principi e le pratiche Lean/Agile in materia contrattuale? Se non ha la capacità di individuare nuovi principi normativi su cui basare i nostri contratti, in che cosa ci può essere utile Agile? A questo proposito si possono provare a svolgere due tipi di considerazioni.
Scegliere con chi stipulare contratti
Mi sembra di poter dire, in primo luogo, che il Manifesto Agile abbia anche un valore “ideologico” — nel senso neutro del termine — e, come per un qualsiasi complesso o insieme di valori, può incidere sulle nostre scelte di business, analogamente a chi, per convinzione ideologica, sceglie ad esempio di consumare solo certi prodotti che ritiene consoni al suo sistema di valori e di principi.
Questo potrebbe, ad esempio, indurre una azienda che abbracci pienamente principi e pratiche Lean/Agile a rapportarsi solo o preferibilmente con partner commerciali che accettino espressamente, o si impegnino ad accettare, l’utilizzo di certe metodologie e certi approcci. È chiaro che magari questo sarà possibile al 100% solo in un mondo ideale, ma ciò non toglie che può essere un obiettivo da perseguire almeno in maniera parziale.
Aspetti tecnici nei contratti
In secondo luogo, si può pensare che precise modalità — di sviluppo tecnico o di natura organizzativa — previste dall’approccio Agile, siano integrate nel contratto. Non si sta parlando di principi generali, ma di specifici metodi di conduzione delle operazioni per lo sviluppo software o la creazione di altro prodotto. Oppure della definizione dei tempi e dei budget dei contratti che può essere stabilita nella maniera più consona (“a corpo”, “a consumo”, “a obiettivo” etc.) al tipo di intervento che viene condotto.
Si tratta di precisi elementi contrattuali che potranno integrare il contratto sotto il profilo delle modalità di esecuzione della prestazione, e che, data la loro complessità, saranno oggetto di una trattazione ad hoc in uno dei prossimi numeri. Ma, tanto per non rimanere troppo nel vago, nei contratti si possono indicare aspetti relativi a standard tecnici o a precisi requisiti o a tempistiche prestabilite, come si può invece anche optare per la loro deliberata assenza.
Chiaramente, tutti questi aspetti vanno valutati in una fase precente a quella in cui si arriva al contratto: l’inserimento di certi elementi ha, di fatto, un peso residuale e tecnico. E prevedere nei termini contrattuali l’inserimento, ad esempio, dell’adozione di una ben definita metodologia agile non trasforma automaticamente il nostro in un “buon” contratto, o in un contrato “agile”: nel contratto può comunque permanere un elevato squilibrio nella ripartizione delle responsabilità tra le parti o esso può essere imposto da condizioni di mercato sfavorevoli.
E, aspetto forse ancor più rilevante, tutto ciò non modifica l’atteggiamento della nostra controparte, che è forse l’elemento a cui occorre prestare più attenzione, se possibile, nei rapporti contrattuali.
Conclusioni
Da un punto di vista legale, i contratti “agili” non esistono: è importante prendere coscienza del fatto che la normativa attuale prevede già strumenti di tutela e principi in grado di consentire alle parti di realizzare pienamente i propri interessi commerciali ed economici ispirandosi a principi di buona fede, collaborazione, trasparenza.
Principi e pratiche Lean/Agile possono quindi svolgere un ruolo rilevante, ma non sotto questo profilo legale. Possono però orientare le scelte commerciali e di business delle aziende, e consentire di integrare il contratto sotto il profilo tecnico-metodologico, anche in maniere piuttosto innovative, ma che restano comunque nell’alveo degli esistenti principi dell’ordinamento.