A license agreement is a document wherein the party of the first part hereby and does amicably render to the party of the second part certain rights, quid pro quos, treasury bonds, and other benefits; in exchange, the party of the second part will do the same for the party of the first part without respect for any other party or festival.
Let's try that again. A license agreement tells a user, "go ahead, install and use the software, but you have to follow these rules." Although they are often written in legalese, they can also appear in a real language, such as English. They also range in granted rights, from "you can use this, but when you're finished, you must destroy all copies" to "use it, and feel free to pass a copy of the program and its source code to your friends and relations."
The Library software provided with this book comes with a license agreement. (I've included it in Appendix B, "Software License Agreement.") When you installed the sample code, you agreed to the terms of the license agreement, including the part about supporting my family financially well into my retirement years. But enough about me; let's talk about license agreements you may want to use for your applications.
If you're developing a DVD catalog program for your cousin Fred, you can probably skip the license agreement part. But any software you craft in a business capacity for use outside of your own company should include some sort of agreement between you (or your company) and the user of the software. This agreement could be defined as part of the contract that established the software development project (this is typical for software consulting), or you could include the agreement as a component of the software (common for off-the-shelf programs).
Whichever method you choose, it is important that you state it in written form, because it can save you grief down the road. I once had a customer who insisted that I fork over a copy of the source code for an application I wrote for them, so that they could enhance it and sell the new version to other businesses (the nerve!). Fortunately, we had a written contract that stated the rules of engagement. They were entitled to a copy of the source code for archive purposes, but they could not use it or derive products from it without written consent from me. This granted a level of safety for them while still providing the means for me to provide the best support possible for their organization. Fortunately, it all came to a happy conclusion, and because that Visual Basic 3.0 code doesn't even run anymore, it's a moot point.
A license agreement usually exists to protect the rights of the software vendor, but it would be useless if it didn't also grant meaningful rights to the userand some of the rights can be rather generous. Did you know that the standard consumer licensing agreement for Microsoft Office allows you to install the product on two different systems using a single licensed copy of the program? It's not a complete install-fest. Both computers must belong to the same person, and one must be a desktop while the other is a portable device (a laptop). But it's still a meaningful benefit to the typical user.
The legal department at Addison-Wesley wants to remind you that Tim Patrick does not have a sufficient understanding of the law, and cannot advise you on the contents of any licensing agreement you may want to craft for your projects.