La ingeniería de software es la aplicación sistemática y disciplinada del desarrollo, operación y mantenimiento de software. Sirve para mejorar la calidad de los productos de software, aumentar la productividad, facilitar el control del proceso de desarrollo y definir una disciplina que garantice la producción de software a tiempo y dentro del presupuesto. Se han desarrollado aplicaciones como software ofimático, médico, educativo y de contabilidad. El software libre busca generar un impacto positivo en la inclusión y equidad social.