La ingeniería del software prescribe un conjunto de actividades ordenadas encaminadas a la producción de software, es el denominado "ciclo de vida" del software.
Existen diferentes maneras de llevar a cabo las actividades del ciclo de vida, estas estrategias de construcción se denominan metodologías.