Software basics
What is source code
What is object code
Types of software products
Application software
Off-the-shelf and bundled software products
Custom and customized software
Operating system software
Middleware
Firmware
Software documentation
Means of obtaining software
Purchasing a retail CD
Downloading an electronic copy
Fundamentals of intellectual property protection (including elements, exclusive rights, and enforcement of each)
Trade secrets
Copyrights
Patents
Trademarks
Ownership of software
Ownership of a single copy of software as distinguished from ownership of the underlying intellectual property
Sole ownership
Reasons for sometimes specifying joint ownership, and its pitfalls
Categories of software transactions (each of which is discussed in detail below)
Non-disclosure/non-use agreements
Agreements assigning ownership of software
Agreements licensing software
"Software as a service" agreements
Patent license agreements
Means of accepting technology transactions
Signed agreements
Clickwrap agreements
Shrinkwrap agreements
Considerations/activities other than the text of the agreement itself
Doing your deal preparation homework
Non-binding preliminary agreements, e.g., letters of intent
Drafting and negotiating strategies
To what extent will the client be directly involved?
Selecting the most cost-effective negotiation formats, e.g., emails, phone calls, and/or face-to-face
Amending agreements down the road
Amending individual sections
Amending/replacing exhibits
Restating the entire agreement
Non-disclosure/non-use agreements (“NDAs”)
One-way NDAs
Mutual NDAs
Agreements assigning ownership of software
Invention assignment agreements
M&A agreements
Stock purchase agreements
Asset purchase agreements
Individual asset
Entirety of target’s assets
Licenses back to assignor
Software development agreements
Single party development
Joint development
Licensing of developing party’s pre-existing technology
Authorized use of third-party technology
Licenses back to developer
Acceptance testing
Software development offshoring agreements
Agreements licensing software
End-user software license agreements (“EULA”)
Software “middleman” agreements
Distribution agreements
VAR agreements
OEM agreements
Free and open source software (“FOSS”) license agreements
Academic license agreements, e.g., BSD
Share-and-share-alike (aka "viral") license agreements, e.g., GPL
Software maintenance-and-support agreements
Source code escrow agreements
Key provisions common to most software license agreements
Recitals
Definitions
License grants
License restrictions
Deliverables
Payment
Confidentiality
Publicity
Warranties
Intellectual property indemnity
Limitations on liability
Assignment
Choice of law
Venue and dispute resolution
“Entire agreement” integration clause
Exhibits and addenda
Software as a service ("SaaS") (aka application service provider ("ASP")) agreements
Patent license agreements
1-way licenses (e.g., license by inventor)
Cross licenses (e.g., licenses between multi-national corporations)
* This Outline is subject to change