Definición


Este Proceso es iterativo e incremental, donde se analiza el problema, descomponiéndolo en problemas más chicos, y después se sintetiza en una solución, donde esta solución nos da a entender el problema y podemos refinarlo, volviendo al análisis del problema

Hay diferentes modelos como

Rational Unified Process (IBM)


Definición


Es un proceso de Desarrollo de software creado por IBM.

Este se separa en fases que son secuenciales a lo largo del ciclo de vida, estas a su vez se separan en iteraciones donde son de un par de semanas, con una cantidad de trabajo acotado con la intención de refinar la definición del problema y por ende la solución

Link to original

Scrum


Definición


Es un proceso de Desarrollo de software, siguiendo el manifesto de agile.

Este se separa el ciclo de vida en releases, donde cada release se separa en sprints de un par de semanas, y en estos sprints se puede generar un avance del producto

Se define los requisitos del producto desde el comienzo, y a partir de esta se genera un product backlog que se definen las funcionalidades que tiene que tener el producto. En la que se pueden usar historias de usuarios.

Al comienzo, se estima cuales son los features que van a salir en cada release. Al comienzo de cada sprint, se ve estas funcionalidades que deben tener para esta release, y deciden cuales se van a hacer en este sprint, definiendo así el sprint backlog.

Al final de cada sprint va aumentando las funcionalidades del producto, y al final de cada release se tiene un producto con funcionalidad, no completa, pero funcional. También se revisan el product backlog para refinar, agregando o sacando funcionalidad dependiendo de lo que se necesite.

Link to original

Extreme Programming


Definición


Es un proceso de Desarrollo de software, similar a Scrum donde lleva al extremo algunas actividades para ser más eficiente

Link to original

Feature Driven Development


Definición


Es un proceso de Desarrollo de software, donde focaliza el avance de los features

Link to original

Disciplined Agile Delivery


Definición


Es un proceso de Desarrollo de software, es una aplicación de Scrum, q usa Agile, en un contexto más diciplinado

Link to original