La ingeniería del software surgió en 1968 para hacer frente a una crisis del software. Tiene como objetivo construir productos de alta calidad de forma oportuna. Existen diferentes metodologías como el desarrollo iterativo e incremental y el desarrollo ágil. El ciclo de vida del software incluye fases como la definición, construcción y mantenimiento.