Sei sulla pagina 1di 13

Desarrollo en cascada De Wikipedia, la enciclopedia libre Saltar a: navegacin, bsqueda En Ingeniera de software el desarrollo en cascada que no tiene prototipo

que no era en cascada , tambin llamado modelo en cascada, es el enfoque metodolgico que ordena rigurosamente las etapas del proceso para el desarrollo de software, de tal forma que el inicio de cada etapa debe esperar a la finalizacin de la etapa anterior.1 Un ejemplo de una metodologa de desarrollo en cascada es: 1. 2. 3. 4. 5. 6. 7. Anlisis de requisitos. Diseo del Sistema. Diseo del Programa. Codificacin. Pruebas. Implantacin. Mantenimiento.

De esta forma, cualquier error de diseo detectado en la etapa de prueba conduce necesariamente al rediseo y nueva programacin del cdigo afectado, aumentando los costes del desarrollo. La palabra cascada sugiere, mediante la metfora de la fuerza de la gravedad, el esfuerzo necesario para introducir un cambio en las fases ms avanzadas de un proyecto. Si bien ha sido ampliamente criticado desde el mbito acadmico y la industria [cita requerida], sigue siendo el paradigma ms seguido al da de hoy. Contenido [ocultar]

1 Fases del modelo. o 1.1 Anlisis de requisitos o 1.2 Diseo del Sistema o 1.3 Diseo del Programa o 1.4 Codificacin o 1.5 Pruebas o 1.6 Verificacin o 1.7 Mantenimiento 2 Variantes 3 Desventajas 4 Vase tambin

5 Referencias 6 Enlaces externos

[editar] Fases del modelo.

El "modelo cascada" sin modificar. El progreso fluye de arriba haca abajo, como una cascada. [editar] Anlisis de requisitos En esta fase se analizan las necesidades de los usuarios finales del software para determinar qu objetivos debe cubrir. De esta fase surge una memoria llamada SRD (documento de especificacin de requisitos), que contiene la especificacin completa de lo que debe hacer el sistema sin entrar en detalles internos. Es importante sealar que en esta etapa se debe consensuar todo lo que se requiere del sistema y ser aquello lo que seguir en las siguientes etapas, no pudindose requerir nuevos resultados a mitad del proceso de elaboracin del software. [editar] Diseo del Sistema Descompone y organiza el sistema en elementos que puedan elaborarse por separado, aprovechando las ventajas del desarrollo en equipo. Como resultado surge el SDD (Documento de Diseo del Software), que contiene la descripcin de la estructura relacional global del sistema y la especificacin de lo que debe hacer cada una de sus partes, as como la manera en que se combinan unas con otras. Es conveniente distinguir entre diseo de alto nivel o arquitectnico y diseo detallado. El primero de ellos tiene como objetivo definir la estructura de la

solucin (una vez que la fase de anlisis ha descrito el problema) identificando grandes mdulos (conjuntos de funciones que van a estar asociadas) y sus relaciones. Con ello se define la arquitectura de la solucin elegida. El segundo define los algoritmos empleados y la organizacin del cdigo para comenzar la implementacin. [editar] Diseo del Programa Es la fase en donde se realizan los algoritmos necesarios para el cumplimiento de los requerimientos del usuario as como tambin los anlisis necesarios para saber que herramientas usar en la etapa de Codificacin. [editar] Codificacin Es la fase en donde se implementa el cdigo fuente, haciendo uso de prototipos as como de pruebas y ensayos para corregir errores. Dependiendo del lenguaje de programacin y su versin se crean las bibliotecas y componentes reutilizables dentro del mismo proyecto para hacer que la programacin sea un proceso mucho ms rpido. [editar] Pruebas Los elementos, ya programados, se ensamblan para componer el sistema y se comprueba que funciona correctamente y que cumple con los requisitos, antes de ser entregado al usuario final. [editar] Verificacin Es la fase en donde el usuario final ejecuta el sistema, para ello el o los programadores ya realizaron exhaustivas pruebas para comprobar que el sistema no falle. [editar] Mantenimiento Una de las etapas mas criticas, ya que se destina un 75% de los recursos, es el mantenimiento del Software ya que al utilizarlo como usuario final puede ser que no cumpla con todas nuestras expectativas. [editar] Variantes Existen variantes de este modelo; especialmente destacamos la que hace uso de prototipos y en la que se establece un ciclo antes de llegar a la fase de mantenimiento, verificando que el sistema final este libre de fallos.

[editar] Desventajas En la vida real, un proyecto rara vez sigue una secuencia lineal, esto crea una mala implementacin del modelo, lo cual hace que lo lleve al fracaso. El proceso de creacin del software tarda mucho tiempo ya que debe pasar por el proceso de prueba y hasta que el software no est completo no se opera. Esto es la base para que funcione bien. Cualquier error de diseo detectado en la etapa de prueba conduce necesariamente al rediseo y nueva programacin del cdigo afectado, aumentando los costos del desarrollo. Desarrollo en cascada De Wikipedia, la enciclopedia libre Saltar a: navegacin, bsqueda En Ingeniera de software el desarrollo en cascada que no tiene prototipo que no era en cascada , tambin llamado modelo en cascada, es el enfoque metodolgico que ordena rigurosamente las etapas del proceso para el desarrollo de software, de tal forma que el inicio de cada etapa debe esperar a la finalizacin de la etapa anterior.1 Un ejemplo de una metodologa de desarrollo en cascada es: 1. 2. 3. 4. 5. 6. 7. Anlisis de requisitos. Diseo del Sistema. Diseo del Programa. Codificacin. Pruebas. Implantacin. Mantenimiento.

De esta forma, cualquier error de diseo detectado en la etapa de prueba conduce necesariamente al rediseo y nueva programacin del cdigo afectado, aumentando los costes del desarrollo. La palabra cascada sugiere, mediante la metfora de la fuerza de la gravedad, el esfuerzo necesario para introducir un cambio en las fases ms avanzadas de un proyecto. Si bien ha sido ampliamente criticado desde el mbito acadmico y la industria [cita requerida], sigue siendo el paradigma ms seguido al da de hoy. Contenido [ocultar]

1 Fases del modelo. o 1.1 Anlisis de requisitos o 1.2 Diseo del Sistema o 1.3 Diseo del Programa o 1.4 Codificacin o 1.5 Pruebas o 1.6 Verificacin o 1.7 Mantenimiento 2 Variantes 3 Desventajas 4 Vase tambin 5 Referencias 6 Enlaces externos

[editar] Fases del modelo.

El "modelo cascada" sin modificar. El progreso fluye de arriba haca abajo, como una cascada. [editar] Anlisis de requisitos En esta fase se analizan las necesidades de los usuarios finales del software para determinar qu objetivos debe cubrir. De esta fase surge una memoria llamada SRD (documento de especificacin de requisitos), que contiene la especificacin completa de lo que debe hacer el sistema sin entrar en detalles internos. Es importante sealar que en esta etapa se debe consensuar todo lo que se requiere del sistema y ser aquello lo que seguir en las siguientes etapas, no

pudindose requerir nuevos resultados a mitad del proceso de elaboracin del software. [editar] Diseo del Sistema Descompone y organiza el sistema en elementos que puedan elaborarse por separado, aprovechando las ventajas del desarrollo en equipo. Como resultado surge el SDD (Documento de Diseo del Software), que contiene la descripcin de la estructura relacional global del sistema y la especificacin de lo que debe hacer cada una de sus partes, as como la manera en que se combinan unas con otras. Es conveniente distinguir entre diseo de alto nivel o arquitectnico y diseo detallado. El primero de ellos tiene como objetivo definir la estructura de la solucin (una vez que la fase de anlisis ha descrito el problema) identificando grandes mdulos (conjuntos de funciones que van a estar asociadas) y sus relaciones. Con ello se define la arquitectura de la solucin elegida. El segundo define los algoritmos empleados y la organizacin del cdigo para comenzar la implementacin. [editar] Diseo del Programa Es la fase en donde se realizan los algoritmos necesarios para el cumplimiento de los requerimientos del usuario as como tambin los anlisis necesarios para saber que herramientas usar en la etapa de Codificacin. [editar] Codificacin Es la fase en donde se implementa el cdigo fuente, haciendo uso de prototipos as como de pruebas y ensayos para corregir errores. Dependiendo del lenguaje de programacin y su versin se crean las bibliotecas y componentes reutilizables dentro del mismo proyecto para hacer que la programacin sea un proceso mucho ms rpido. [editar] Pruebas Los elementos, ya programados, se ensamblan para componer el sistema y se comprueba que funciona correctamente y que cumple con los requisitos, antes de ser entregado al usuario final. [editar] Verificacin Es la fase en donde el usuario final ejecuta el sistema, para ello el o los programadores ya realizaron exhaustivas pruebas para comprobar que el sistema no falle.

[editar] Mantenimiento Una de las etapas mas criticas, ya que se destina un 75% de los recursos, es el mantenimiento del Software ya que al utilizarlo como usuario final puede ser que no cumpla con todas nuestras expectativas. [editar] Variantes Existen variantes de este modelo; especialmente destacamos la que hace uso de prototipos y en la que se establece un ciclo antes de llegar a la fase de mantenimiento, verificando que el sistema final este libre de fallos. [editar] Desventajas En la vida real, un proyecto rara vez sigue una secuencia lineal, esto crea una mala implementacin del modelo, lo cual hace que lo lleve al fracaso. El proceso de creacin del software tarda mucho tiempo ya que debe pasar por el proceso de prueba y hasta que el software no est completo no se opera. Esto es la base para que funcione bien. Cualquier error de diseo detectado en la etapa de prueba conduce necesariamente al rediseo y nueva programacin del cdigo afectado, aumentando los costos del desarrollo.

Por Martha E Rojas Vera, En los aos 70 se impuso un nuevo enfoque de desarrollo del software, introducido por Royce en 1970, a travs de un ciclo de vida en cascada (as denominado por la disposicin de las distintas fases de desarrollo, en las que los resultados de una fase parecen caer en cascada hacia la siguiente fase, tal como se muestra en la Figura 1). El mtodo ideado por Royce constituye uno de los primeros modelos de ciclo de vida publicados, por lo que tambin recibe el nombre de modelo de ciclo de vida clsico. Este mtodo modela el ciclo convencional de la Ingeniera del Software, aplicando un enfoque sistemtico y secuencial de desarrollo que comienza con la ingeniera del sistema y progresa a travs del anlisis, diseo, codificacin, pruebas y mantenimiento.

Figura 1 Ciclo de vida en cascada o clsico Como sugiere el esquema del modelo en cascada, antes de poder avanzar a la siguiente etapa, es necesario haber finalizado completamente la etapa anterior. Asociada con cada etapa del proceso existen hitos y documentos, de tal forma que se puede utilizar el modelo para comprobar los avances del proyecto y para estimar cunto falta para su finalizacin. Este modelo es muy til pues ayuda a los desarrolladores a comprender qu es lo que tienen que hacer en cada momento. Su simplicidad hace que resulte sencillo explicrselo a los clientes que no estn familiarizados el proceso software. Adems, se muestran de forma explcita qu productos intermedios se tienen que obtener antes de abordar las siguientes tareas. Una modificacin sobre este modelo consiste en la introduccin de una revisin y vuelta atrs, con el fin de corregir las deficiencias detectadas durante las distintas etapas, o para completar o aumentar las funcionalidades del sistema en desarrollo, resultando un diagrama de fases y etapas tal como el que se muestra en la Figura 2. De esta manera, durante cualquiera de las fases se puede retroceder momentneamente a una fase previa para solucionar los problemas que se pudieran haber encontrado.

Figura 2 Ciclo de vida en cascada o clsico completo Normalmente, el ciclo de vida del software se suele dividir en tres fases: una de Planificacin, otra de Desarrollo y una tercera de Mantenimiento, que engloban a las seis etapas (Ingeniera del Sistema, Anlisis de los Requisitos, Diseo, Codificacin, Pruebas y Mantenimiento) tradicionales del ciclo de vida. La fase de Planificacin del software comprende las etapas de Ingeniera del Sistema o Anlisis del Sistema (en concreto el establecimiento de los Requisitos del Software o Plan Software) y el Anlisis de los Requisitos del Software (que se traduce en una Especificacin de Requisitos). La fase de Desarrollo comprende las etapas de Diseo, Codificacin y Pruebas. Por ltimo, la fase de Mantenimiento incorpora solamente la etapa propia de Mantenimiento. A pesar de su antigedad, el ciclo de vida clsico se ha hecho con un lugar importante en el rea de la Ingeniera del Software. Proporciona una gua de trabajo en la que se encuentran mtodos para el anlisis, diseo, codificacin, pruebas y mantenimiento. El ciclo de vida en cascada sigue siendo el modelo de proceso ms extensamente utilizado por los ingenieros del software, principalmente por su sencillez y facilidad de llevar a cabo. Pese a tener debilidades, es significativamente mejor que un enfoque arbitrario (como el de codificar y corregir) para el desarrollo del software. Muchos de los posteriores modelos de ciclo de vida son, en realidad, modificaciones sobre el modelo clsico, al que se le incorporan iteraciones o nuevas actividades. Ventajas y desventajas del Modelo en cascada Ventajas: Es un modelo sencillo y disciplinado Es fcil aprender a utilizarlo y comprender su funcionamiento Est dirigido por los tipos de documentos y resultados que deben obtenerse al final de cada etapa Ha sido muy usado y, por tanto, est ampliamente contrastado Ayuda a detectar errores en las primeras etapas a bajo costo Ayuda a minimizar los gastos de planificacin, pues se realiza sin problemas Desventajas: Los proyectos raramente siguen el proceso lineal tal como se defina originalmente el

ciclo de vida Es difcil que el cliente exponga explcitamente todos los requisitos al principio El cliente debe tener paciencia pues obtendr el producto al final del ciclo de vida No refleja exactamente cmo se programa realmente el sistema, en el que suele haber un gran componente iterativo Puede resultar complicado regresar a etapas anteriores (ya acabadas) para realizar correcciones El producto final obtenido puede que no refleje todos los requisitos del usuario

Este enfoque metodolgico que ordena rigurosamente las etapas del ciclo de vida del software, de forma tal que el inicio de cada etapa debe esperar a la finalizacin de la inmediatamente anterior. la palabra cascada sugiere, mediante la metafora de la fuerza de la gravedad, el esfuerzo necesario para introducir un cambio en las fases ms avanzadas de un proyecto. Modelo en Cascada: El mas conocido, esta basado en el ciclo convencional de una ingeniera, el paradigma del ciclo de vida abarca las siguientes actividades: - Ingenieria y Anlisis del Sistema - Anlisis de los Requisitos - Diseo - Codificacin - Prueba - Mantenimiento 1.- INGENIERA Y ANLISIS DEL SISTEMA Debido a que el software es siempre parte de un sistema mayor, el trabajo comienza estableciendo los requisitos de todos los elementos del sistema y luego asignando algun subconjunto de estos requisitos al software. 2.- ANLISIS DE SISTEMAS DE COMPUTACIN

Se lleva a cabo teniendo den cuenta ciertos principios: - Debe presentarse y entenderse el dominio de la informacin de unproblema. - Defina las funciones que debe realizar el Software. - Represente el comportamiendo del Software a consecuencias de acontecimientos externos. - Divida en forma jerrquica los modelos que represerntan la informacin, funciones y comportamiento. Se analizan las necesidades de los usuarios finales del Software para determinar que objetivos debe cubrir. 3.- DISEO Traduce los requisitos en una representacion del Software con la calidad requerida antes de que comience la codificacin. - Diseo del sistema: Se descompone y organiza el sistema en elementos que puedad elaborarse por separado, aprovechando los ventajas del desarrollo en equipo, as como la manera en que se combinan unos con otros. - Diseo del Programa: Es la fase en donde se realizan los algoritmos necesarios para el cumplimiento de los requerimientos del usuario as como tambin los anlisis necesarios para saber que herramientas usar en la etapa de Codificacin. 4.- CODIFICACIN El diseo debe traducirse en una forma legible para la maquina. Se implementa el cdigo fuente. Dependiendo del lenguaje de programacion y su versin se crean las libreras y componentes reutilizables dentro del mismo proyecto para hacer que la programacin sea un proceso mucha ms rpido. 5.- PRUEBA Los elementos, ya programados, se ensamblan para componer el sistema y se comprueba que funciona correctamente antes de ser puesto en explotacin. Las pruebas de Software,

testing o beta testing es un proceso usado para identificar posibles fallos. En general, los usuarios distinguen entre errores de programacion ( o bugs ) y defectos de forma. en un defecto de forma, el programa no realiza lo que el usuario espera. Por el contrario, un error de programacin puede describirse como un fallo en la semntica de un rpograma de ordenador. A la versin del producto de pruebas y que es anterior a la versin final ( o master ) se denomina beta, y a dicha fase de pruebas, beta testing. Finalmente y antes de salir al mercado, es cada vez ms habitual que se realice una fase de RTM testing ( Release To Market ), dnde se comprueba cada funcionalidad del programa completo en entornos de produccin. 6.- IMPLANTACIN El Software obtenido se pone en produccin. Se implantan los niveles Software y Hardware que componen el proyecto. La implantacin es la fase con ms duracin y con ms cambios en el ciclo de elaboracin de un proyecto. Es una de las fases finales del proyecto. Durante la explotacin del sistema Software pueden surgir cambios, bien para corregir errores o bien para introducir mejorar. Todo ello recoge en los Documentos de Cambios. 7.- MANTENIMIENTO El Software sufrir cambios despus de que se entrega al cliente. Los cambios ocurrirn debido a que hayan encontrado errores, a que el Software deba adaptarse a cambios del entorno externo (sistema operativo o dispositivos perifricos), o debido a que el cliente requiera ampliaciones funcionales o del rendimiento. Ventajas: - Se tiene todo bien organizado y no se mezclan las fases. - Es perfecto para proyectos que son rigidos. - Idieal para proyectos donde se especifiquen muy bien los requerimientos. - Ideal para proyectos en que se conozca muy bien la herramienta a utilizar. - Sumamente sencillo ya que sigue los pasos intuitivos necesarios a la hora de desarrollar el Software.

Desventajas: - Difcilmente un cliente va a establecer al principio todos los requerimientos necesaros, por lo que provoca un gran atraso trabajando en este modelo, ya que este es muy restrictivo y no permite movilizarse entre fases. - Los resultados y/o mejoras no son visibles, el producto se ve recin cuando este est finalizado.

El ciclo de vida inicialmente propuesto porRoyce en 1970, fue adaptado para el softwarea partir de ciclos de vida de otras ramas de laingeniera. Es el primero de los propuestos yel ms ampliamente seguido por lasorganizaciones (se estima que el 90% de lossistemas han sido desarrollados as). VENTAJAS La planificacin es sencilla. La calidad del producto resultante es alta. Permite trabajar con personal pococualificado.

Potrebbero piacerti anche