I had the opportunity to engage in a negotiation seminar with a large insurance company last week, and had the team work on a software contract role play. In the scenario, there was both a buyer and supplier, and there were multiple facets to consider in the negotiation. The problem in preparing for such a negotiation is that deriving a “should-cost” model in software contracts is extremely difficult – because often there is no cost-based model. For example, the pricing models on cloud services can be very complex and buyers should be very careful to understand these different models. Instead, the buying company should be aware of “hidden costs” to the contract, which often pop up unexpectedly once the contract is in full swing.
For that reason, it is more important than ever to include legal counsel (on both sides of the negotiation) when meeting to discuss software contracts. Lawyers are exceptionally well trained to understand the subtleties involved in some of the contract language, and can offer potential challenges to what might term as “standard T’s and C’s”. Their goal is not to get in the way – but indeed, to become more involved in the discussion and help avoid nasty surprises later in the relationship. This may take more time upfront – but is generally well worth the extra effort. This is one of the reasons why the Poole College of Management offers a joint JD/MBA degree in partnership with Campbell University. The alignment of legal, contracting, and relationship management will become an important element for enterprises to apply in the challenging world of software that dominates so much of our technology landscape.
Some of the big issues where both parties should be careful were suggested by my colleague Don Klock, who has negotiated plenty of these agreements during his time at Colgate-Palmolive!
- Warranties should be tied to a very detailed description and have some sort of acceptance test before agreeing to accept it.
- Milestones: In order to gain financial leverage, it is important to spread out the milestones as far as possible and be very explicit how the buying companies is going to release those payments.
- IP is always one of the most difficult issues to negotiate. One could argue that the client is co-developing the software therefore at a minimum should have co-IP rights.
- Data Security and Rights. At a bare minimum, the client owns their data and can get it back in a timely fashion.
- What are the key metrics that are going to determine success? For example, uptime and response time, just to name a few. How often are we going to review them?
- If a software project seems very important to both parties, perhaps there needs to be a Senior Management Steering Group (joint buying company and software supplier management) to ensure that issues are getting resolved. For example, there are often communication issues that are not getting resolved in a timely manner. Many times, just having a group to meet when problems arise can prevent the type of communication problems that may arise at an operational level.
- Software providers often make huge margins in the Maintaince Fees. These fees need to be negotiated and at least capped at X%/year by the buyer.
- For Consulting Services that are part of the deal, it is important to assign a Key Person. Ideally you want to find someone who has a documented track record of successful integration and implementation to advise on strategies to employ in deriving the benefits from the software. This person should be a member of the Steering Group.
- Large software development project agreements work lend themselves to a multi-year partnership agreement, However, it must have a excellent Exit Clause where the buyer can transition out of the agreement in a timely manner, get their data back, and have proper access to a useable escrow code (which should be negotiated as part of the deal, along with the cost). If the buying company does have to exit, they may want to own those co-IP rights to use with the next supplier.
- Lastly one needs to think about how to handle/prevent cyber attacks and potential loss of data.
Software contracts need good lawyers to help with all of these points! For a very good paper on pricing models and challenges in cloud services, see the following white paper.