LA EVOLUCIÓN DE LA METODOLOGÍA DEL DESARROLLO DEL SOFTWARE

PRIMERA ETAPA: 1950-1960 programación y técnicas de programación.

Se enfocaban en las tareas de codificación

Insatisfaccion del cliente

Necesidades poco claras por mal analisis

SEGUNDA ETAPA: 1960-1970 modelo de progresos.

Buscar alternativas para esquematizar de alguna manera la producción del software.

Code-and-fix es decir codificar y corregir

Implementaba el código y luego pensaba en los requisitos, diseño, validación y mantenimiento

Proyectos no podían concluir

Aparece la crisis del software debido a los excesos de costo, la escasa fiabilidad, insatisfacción del cliente o usuario

TERCERA ETAPA: 1970-1985 procesos de desarrollo software y modelos tradicionales del ciclo de vida.

Se empezó a dar importancia a tomar datos para analizarlos por partes y realizar una planeación

“Modelos de ciclo de vida del software”: Se focaliza en el suministro de una guía para los ingenieros de software

Modelo en cascada

1966-1970

Modelo iterativo,

Propone en la iteración de varios ciclos de la vida en cascada

Desarrollo en espiral

Barry Boehm en 1985

Modelo en v

Alan Davis

CUARTA ETAPA: 1985-1999 métodos rápidos e inicio del desarrollo ágil de la ingeniería de software.

Se comienza a estudiar los objetos

Proceso evolutivo del desarrollo software al modelo en espiral.

“Métodos rápidos”

Crear una versión prototipo y después integrar la funcionalidad de manera iterativa para satisfacer los requisitos del cliente

La metodología RAD

Scrum

Schwaber y Sutherland 1995

Extreme programming

fundamentada en la retroalimentación continua entre el cliente y el equipo de desarrollo

RUP (Rational Unified Process)

1998 - Describe las buenas practicas de la ingeniera de software

QUINTA ETAPA: 2000 - Presente, Metodologías del proceso de la ingeniera de software.

Se basa en un funcionamiento cíclico y reconoce que en cada iteración se producirán cambios e incluso errores.

Ofrece una alternativa al desarrollo de software aplicando la idea de que la optimización es la única solución para problemas de complejidad creciente.

ofrecer una alternativa al desarrollo de software ampliado en la idea de que la optimización es la única solución para problemas de complejidad creciente.

Busca atender a las necesidades de rapidez, flexibilidad y variantes externas