Hung Chao-Kuei ha creado un diagrama que explica las diferentes categorías de software
Licencia: contrato entre el desarrollador de un software sometido a propiedad intelectual y a derechos de autor y el usuario, en el cual se definen con precisión los derechos y deberes de ambas partes. Es el desarrollador, o aquél a quien éste haya cedido los derechos de explotación, quien elige la licencia según la cual distribuye el software.
Contrato entre el licenciante (autor/titular de los derechos de explotación/distribuidor) y el licenciatario (usuario consumidor /usuario profesional o empresa) del programa informático, para utilizar el software cumpliendo una serie de términos y condiciones establecidas dentro de sus cláusulas.
Software comercial: el desarrollado por una empresa que pretende ganar dinero por su uso.
Shareware:software con autorización de redistribuir copias, pero debe pagarse cargo por licencia de uso continuado.
Software con copyleft:software libre cuyos términos de distribución no permiten a los distribuidores agregar ninguna restricción adicional cuando lo redistribuyen o modifican, o sea, la versión modificada debe ser también libre.
Software semi libre: aquél que no es libre, pero viene con autorización de usar, copiar, distribuir y modificar para particulares sin fines de lucro
Freeware: se usa comúnmente para programas que permiten la redistribución pero no la modificación (y su código fuente no está disponible
Software libre: proporciona la libertad de • Ejecutar el programa, para cualquier propósito; • Estudiar el funcionamiento del programa, y adaptarlo a sus necesidades
Software de dominio público: aquél que no está protegido con copyright