How can I avoid failure to comply with an OSS license? What are good practices for use of OSS in a larger system?
The following are good practices: • Educate all software developers that they must comply with all valid licenses – including both proprietary and open source software licenses. Explain the basic terms of the most common OSS licenses to them. • Before including any software in a larger system (be it proprietary or OSS), review its license to ensure that the license will not impede anticipated uses. • When including externally-developed software in a larger system (e.g., as a library), make it clearly separable from the other components and easy to update. Commercial software (both proprietary and OSS) is occasionally updated to fix errors (including security vulnerabilities), and your system should be designed so that it is relatively easy to accept these updates. • Document from where and when any external software was acquired, as well as the license conditions, so that future users and maintainers can easily comply with the license terms.