La ingeniería de software es la aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y mantenimiento de software. Tiene como objetivos mejorar el diseño de aplicaciones para adaptarse a las necesidades de las organizaciones, promover mayor calidad en el desarrollo de aplicaciones complejas, y brindar mayor precisión en los costos y tiempos de desarrollo de proyectos de software. Los recursos principales de la ingeniería de software son el recurso humano y los recursos de entorno como el hardware.