14 Jan SIX TIPS ON NEGOTIATING A DEVELOPMENT AGREEMENT
You’ve got the idea for BestApp that’s about to change the world and raise Steve Jobs from his grave with appreciation. Your rich uncle from out of town spiced his eggnog a little stiff over the holidays and you cornered him to help you fund it. You’re a svengali on Twitter and seven years ago you took a programming course to fulfill your college’s science requirement, but let’s be honest, you’re not programming BestApp.And that’s ok, but now you’ve got the challenge of identifying someone who will. Of course, many people have told you to find ‘The Extremely Talented College Student Who Will Program for Equity’ but this creature appears in the real world about as frequently as the LochNess Monster and has the reliability of a Ford Pinto. It looks like you will need to get things done like they’ve always been done in America: with cold, hard cash.It’s an understatement to say that developers and development firms are in extremely high demand. Some boutique firms openly post on their sites that new projects are not being taken; or they may post a date months in the future when they will accept new projects. Others simply won’t return your phone call.But let’s assume you’ve found the development team and they’ve provided you with an estimate for BestApp. It’s time to put the agreement into writing. Here are a few tips.
- Divide the Development into Milestones. This one’s probably obvious. A software project has a lot in common with a traditional construction project. The buyer would be foolish to pay in advance and the builder certainly won’t wait until the end. Dividing the development into milestones also forces both parties to further refine and discuss the scope of the project. Define the deliverables and include an acceptance period where the buyer can respond with a punch list of any items related to that milestone before releasing funds.
- Dedicate Ending Milestones to Bug Squashing and Enhancements. Software development is an iterative process. During the development opportunities for new features and enhancements will present themselves and the best development agreement includes milestones that accommodate the possibility of some enhancements included in the flat development fee. Furthermore, you will quickly understand that that a special Murphy’s law is in effect: inevitably your close friends and family will have the browser or operating version which causes their screens to go blank when a certain feature is selected. You will want the response to this moment and others like it to be included in the development agreement.
- Add Penalties for Delay. Since development firms are in high demand, its wise to add penalties for two reasons. First, inserting penalties into the contract will force more forthright discussion about a reasonable delivery schedule. Second, there will be delays. In my experience, there can be significant delays and when you have to announce these delays to your investors, they will at least be partially comforted by the fact that BestApp will cost less. I advise that you set a nominal penalty for each week of delay because unreasonable provisions won’t be enforced under California law and, practically speaking, the developers will know and understand BestApp better than anyone else in the world. A penalty provision that seeks to take a pound of flesh for each week of delay will not engender the healthy partnership needed to ensure the success of BestApp.
- Extensive Intellectual Property Provisions. Obviously include provisions that assign ownership to the buyer. Less obvious, but of importance, be sure to include provisions that provide the buyer with a limited transferrable license of any of the “Developer’s Preexisting Works” so that if the development firm includes any of its source code, procedures or programming which was previously developed then the buyer can freely use it. Also require that the developer represent and warrant that it will not infringe on any copyright, trademark, trade secrets or other third party proprietary right in the course of the development. With the melee of intellectual property litigation, the most reasonable such term probably inserts the word “knowingly” in front of the word infringe.
- Establish Hosting Provisions. The development firm will initially host BestApp on its own servers during the development and testing phases. In case the relationship sours during the course of the development, it’s best to include express provisions about the when, where and how BestApp should be transferred to hosting that is sponsored by the buyer.
- Consider Escrow Code Services. I tend to believe that in most instances, a series of milestones being exchanged for payment will provide both parties with the security needed to move forward with development. However, in cases of particularly large projects or when buyers are using overseas development firms, a third party code escrow service may be required.