La Web
Enviado por • 30 de Junio de 2014 • Examen • 418 Palabras (2 Páginas) • 191 Visitas
Es el que describe el desarrollo de un software, ademas de definir las distintas fases intermedias que se requieren para validar el desarrollo de la aplicación, es decir, para garantizar que el software cumpla los requisitos para la aplicación y verificación de los procedimientos de desarrollo y se asegura de que los métodos utilizados son apropiados, es muy costoso rectificar los errores que se detectan tarde dentro de la fase de implementación. El ciclo de vida permite que los errores se detecten lo antes posible y por lo tanto, permite a los desarrolladores concentrarse en la calidad del software, en los plazos de implementación y en los costos.
Cascada
Las fases del ciclo de vida (requisitos, análisis, diseño, etc.) se realizan (en teoría) de manera lineal, una única vez, y el inicio de una fase no comienza hasta que termina la fase anterior.
Su naturaleza es lineal, típica de la construcción de productos físicos (lo comentamos en dos razones por las que fabricar software no es lo mismo que fabricar coches o construir casas), y su principal problema viene de que no deja claro cómo responder cuándo el resultado de una fase no es el esperado.
El ciclo de vida más critícado en los últimos años, la mayoría de las veces, que no todas, con razón. En muchos proyectos su implantación ha sido un fracaso, mientras que hay otros proyectos que trabajar¡n perfectamente de esta manera.
Evolutivo
Cada iteración (una iteración es un periodo de tiempo) contiene las fases del cascada estándar, pero cada iteración trabaja sobre un sub conjunto de funcionalidad. La entrega total del proyecto se divide en subsistemas priorizados.
Desarrollar por partes el producto software, para después integrarlas a medida que se completan. Un ejemplo de un desarrollo evolutivo puede ser la agregación de módulos en diferentes fases. El agregar cada vez más funcionalidad al sistema.
Iterativo e incremental
Incremental = añadir, iterativo = retrabajo, que decía Cockburn.
Se va liberando partes del producto (prototipos) periódicamente, en cada iteración, y cada nueva versión, normalmente, aumenta la funcionalidad y mejora en calidad respecto a la anterior. Aquí hay un post con más información.
El ciclo de vida iterativo e incremental es una de las buenas prácticas de ingeniería del software más antiguas, su primer uso en el software se data en los 50.
Además, el ciclo de vida iterativo e incremental es una de las bases de un proyecto ágil, más concretamente, con iteraciones cortas en tiempo, de pocas semanas, normalmente un mes y raramente más de dos.
...