11 feb 2007

El modelo de ciclo de vida de desarrollo de software

¿Qué es el ciclo de vida de desarrollo de software? El ciclo de vida se refiere a las etapas o fases que transforman las necesidades de los usuarios en un producto final de software. El ciclo de vida se representa con modelos que muestran de manera general las etapas o subprocesos (requisitos, diseño, construcción, prueba) y el orden en que se realizan. El modelo de ciclo de vida más conocido es el Ciclo de vida de cascada (waterfall) que se muestra en la figura.

¿Qué importancia tiene el ciclo de vida para el desarrollo de software? Vemos que, por ejemplo, el Capability Maturity Model del SEI establece como parte de los "activos" del proceso la descripción de los modelos de ciclo de vida aprobados para su uso y como parte de las subprácticas de Planeación del proyecto la definición del ciclo de vida para el proyecto (Subpráctica 1.3) lo cual, además, tiene un impacto en la forma de realizar las estimaciones. Por su parte, el Rational Unified Process establece como predeterminado un ciclo de vida iterativo. Pero, bueno ¿y qué importancia tiene? ¿no basta con tomar cualquier modelo de ciclo de vida y aplicarlo al proyecto? Resulta que no, que dependiendo de las características de nuestro proyecto en particular debemos analizar y seleccionar el modelo de ciclo de vida más adecuado y que de eso puede depender el éxito o fracaso de nuestro proyecto.

En las siguientes secciones analizaremos diferentes modelos de ciclos de vida y sus implicaciones para los proyectos de desarrollo de software.

1 comentario:

Unknown dijo...

Un exelente comentario acerca del desarrollo de software