One of the very common questions I got at my trainings is how to do agile contracts. In a traditional world where there is neither trust nor collaboration, the contract is the key. It must be detailed enough so we can defend ourselves or blame the other party. Agile is trying to change this contract game, heal the relationship and build a partnership.
In the agile world with high trust and transparency, I believe the traditional contracts shall be abandoned. They are not needed anymore. In my business, we exchange a couple of emails, have a call or scribe a few notes in a Google Doc to make sure we understand each other and collaborate. We treat each other as partners and share with high transparency and honesty that needs to be shared. On contrary, the more organizations spent effort with me on writing a formal contract, the less likely we did any business together. Not because I would make it difficult and argue with lawyers, I usually signed, but I guess they didn’t have the primary focus on the business.
On the other hand, Agile is not preventing you from using any contract at all, so everything starting from
“Fixed time, cost, and scope & you pay fee if you don’t deliver it this way”
“We want to work together as partners, help each other, be honest and transparent.”
can work. Though some contract will distract you from delivering value and other will help you with that. It’s always your choice. You can keep the status quo and contracts or change the mindset of not only yourself but your customer (including lawyers).
For some bigger software deliveries, we did frame contract with NDA, a general link to the way of working and tools to be used (Continuous Integration, Backlog management, etc.). Such contract pretty much said we keep certain standards. And that we collaborate to identify and deliver scope. Any details, content, and problems were discussed at the time they emerged.
In summary, my recommendation is to spend your valuable time on building relationship and partnership. Increase transparency, understand each other, collaborate. If you still feel you need to read more, read Agile Contract Primer or join Agile Prague 2018 Conference.