Ingeniería de software
El término ingeniería del "software" apareció por primera vez a finales de la década de 1950. La ingeniería de software fue estimulada por la crisis del "software" de las décadas de entre 1960 y 1980. La ingeniería del "software" viene a ayudar a identificar y corregir mediante principios y metodologías los procesos de desarrollo y mantenimiento de sistemas de "software".
Desarrollo en espiral
La ingeniería de "software" se vale y establece a partir de una serie de modelos que establecen y muestran las distintas etapas y estados por los que pasa un producto software, desde su concepción inicial, pasando por su desarrollo, puesta en marcha y posterior mantenimiento, hasta la retirada del producto. A estos modelos se les denomina «modelos de ciclo de vida del software». El primer modelo concebido fue el de Royce, más comúnmente conocido como "desarrollo en cascada" o "desarrollo lineal secuencial". Este modelo establece que las diversas actividades que se van realizando al desarrollar un producto software suceden de forma lineal.