In the world of legal technology consulting, it's my job to turn that glossy marketing piece that sold you on new software development into a binding contract that ensures you actually get what you paid for. When hiring an independant consultant or outside firm to create software or technology for your organization, I have two recommendations: (a) negotiate the terms wisely and (b) get it all in writing. Nothing is worse than paying a huge consulting and services fee and not get the deliverables that you thought you had bargained for. Terms to think about should include specific deadlines on project phases and deliverables, acceptancy testing to your satisfaction (especially on the final product), warranties by the developer, indemnifications from liability to any third-parties, and confidentiality provisions for your proprietary data, etc, etc, etc... I could go on and on. If you are considering purchasing anything that involves software licensing or development, consult a technology law firm first.