Tuo atveju, jeigu projektui įgyvendinti yra pasirenkamas agile metodas, tai turi atsispindėti ir sutartyje tarp tiekėjo bei užsakovo. Bandymas pritaikyti agile kompiuterinės programos projektui tradicines sutartis yra pasmerkta idėja.
Rengiame agile sutartis, kuriose, be kita ko turi būti numatyta:
1. Įsipareigojimas
Sutartiniai įsipareigojimai už gamybos/produkcijos kiekį (visiškai veikiančios programinės įrangos, paruoštos naudojimui), o ne išsamus produkcijos aprašymas (pvz., programinės įrangos specifikacijos). Tai parodo nukrypimą nuo tradicinių fiksuotos kainos arba sutarčių, pagrįstų laiku ir ištekliais, ir atveria galimybes inovatyviems apmokėjimo nustatymo modeliams.
2. Specifikacija
Nėra poreikio nustatyti detalią produkcijos specifikaciją, nes sutartiniai įsipareigojimai labiau susiję su produkcijos (rezultato) kiekiu nei su produkcijos detalumu. Tai sumažina laiką, skirtą deryboms ir sutarties valdymui. Toks požiūris paremtas šalių veikimo kartu rezultato specifikacijos klausimais viso projekto metu. Reikėtų laikytis nuostatos, kad naudingi kompromisai gali būti pasiekiami projekto metu.
3. Galia
Galia matuojama visiškai veikiančia programine įranga, kuri gali būti įdiegta ir turi funkcijas, nurodytas kliento. Ji yra tik tada, kai klientas gauna realią vertę. Ataskaitos, atnaujinimai, pristatymai nėra tolygu (nepakeičia) visiškai dirbančiai ir išbandytai programinei įrangai.
4. Funkcijų prioritetizavimas
Sutartyje taip pat turi būti įtraukti mechanizmai funkcijų, kurioms reikėtų teikti pirmenybę dirbant. Viena iš didžiausių nereikalingų sąlygų – funkcijų, kurios bus naudojamos retai arba niekada, aprašymas, – eliminuojamas iš sutarties.
ir kiti aspektai.