Documente Academic
Documente Profesional
Documente Cultură
Diseño
En esta etapa se describe la estructura interna del software, y las
relaciones entre las entidades que lo componen.
Implementación
En esta fase se programan los requisitos especificados haciendo uso de
las estructuras de datos diseñadas en la fase anterior.La programación
es el proceso que lleva de la formulación de un problema de
computación, a un programa que se ejecute produciendo los pasos
necesarios para resolver dicho problema.
Instalación y mantenimiento
Una vez se han desarrollado todas las funcionalidades del software y se
ha comprobado que funcionan correctamente, se inicia la fase de
instalación y mantenimiento. Se instala la aplicación en el sistema y se
comprueba que funcione correctamente en el entorno en que se va a
utilizar.
Ventajas[editar]
Debido a la estructura lógica del modelo, a menudo se pueden evitar
errores conceptuales.
El modelo conduce a una extensa documentación técnica, que es un alivio
para los nuevos programadores y desarrolladores y también es útil en la fase de
prueba.
El progreso del proyecto puede ser monitoreado usando metas.
El coste total puede estimarse con relativa precisión si no hay conflictos.
Desventajas[editar]
Los conflictos, bugs y errores de programación a veces conducen a un
aumento de los costes y a una cantidad considerable de tiempo. Lo mismo se
aplica si los clientes no están satisfechos.
Las especificaciones que se hacen inicialmente son a menudo difíciles de
entender para los clientes porque son más abstractas de lo que se supone que el
software debe hacer. Especialmente en proyectos subcontratados, esto puede ser
una desventaja decisiva, ya que la fecha de lanzamiento debe posponerse y el
mercado puede haber cambiado durante este tiempo.
La entrega del software lleva más tiempo porque los departamentos no
trabajan simultáneamente y cada fase sólo puede comenzar cuando se ha
completado la fase anterior.
Modelo de Cascada
En ingeniería del software: el desarrollo en cascada, también llamado modelo en
cascada, es el enfoque metodológico que ordena rigurosamente las etapas de del En
Ingeniería de software el desarrollo en cascada, también llamado modelo en cascada,
es el enfoque metodológico 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
finalización de la etapa anterior.
Codificación.
Pruebas.
Implantación.
Mantenimiento.
Análisis 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 especificación de requisitos), que contiene la especificación completa
de lo que debe hacer el sistema sin entrar en detalles internos.
Es importante señalar 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 pudiéndose
requerir nuevos resultados a mitad del proceso de elaboración del software.
Diseño 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 Diseño del Software), que contiene la descripción de la estructura
relacional global del sistema y la especificación 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 diseño de alto nivel o arquitectónico y diseño
detallado. El primero de ellos tiene como objetivo definir la estructura de la solución
(una vez que la fase de análisis ha descrito el problema) identificando grandes módulos
(conjuntos de funciones que van a estar asociadas) y sus relaciones. Con ello se define
la arquitectura de la solución elegida. El segundo define los algoritmos empleados y la
organización del código para comenzar la implementación.
Es la fase en donde se realizan los algoritmos necesarios para el cumplimiento
de los requerimientos del usuario así como también los análisis necesarios para saber
que herramientas usar en la etapa de Codificación.
Codificación
Pruebas
Verificación
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.
Mantenimiento
Una de las etapas más críticas, 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.
1.-Se utiliza correctamente para ciclos en los que se tiene una decisión estable del
producto.
4.-Funciona bien
6.-Presenta el proyecto con una estructura que ayuda a minimizar el esfuerzo inútil.
4.-No es imposible volver atrás utilizando el modelo de cascada pura, pero si difícil.
Índice
1. ¿Qué es el modelo en cascada?
2. ¿Cómo funciona el modelo en cascada?
3. Procedimientos alternativos al modelo en cascada
Royce propone un modelo compuesto por siete fases que se ha de ejecutar en diversas
vueltas (iteraciones):
1. Requisitos de sistema
2. Requisitos de software
3. Análisis
4. Diseño
5. Implementación
6. Prueba
7. Servicio
El procedimiento popularmente conocido como waterfall model se basa en las fases definidas
por Royce, pero solo prevé una iteración.
Hecho
El modelo en cascada se popularizó a través de la norma estadounidense DoD-STD-2167.
Esta norma se basa en una versión extremadamente simplificada del procedimiento
desarrollado por Royce, que no fue lo suficientemente analizado por los autores. Tal y como
reconoció con el paso del tiempo David Maibor, uno de sus autores, el motivo fue la falta de
compresión de los modelos iterativos incrementales.
En la práctica, se aplican diversas versiones del modelo. Los más habituales son los
modelos que dividen los procesos de desarrollo en cinco fases. En ocasiones, las fases 1, 2 y
3 definidas por Royce se integran en una sola fase de proyecto a modo de análisis de los
requisitos.
Análisis
Todo proyecto de software comienza con una fase de análisis que incluye un estudio de
viabilidad y una definición de los requisitos. En el estudio de viabilidad se evalúan los costes,
la rentabilidad y la factibilidad del proyecto de software. El estudio de viabilidad da como
resultado un pliego de condiciones (una descripción general de los requisitos), un plan y una
estimación financiera del proyecto, así como una propuesta para el cliente, si fuera necesario.
Por último, la primera fase del waterfall model incluye un análisis de la definición de los
requisitos en el que los problemas complejos se dividen en pequeñas tareas secundarias y
se elaboran las correspondientes estrategias de resolución.
Diseño
La fase de diseño sirve para formular una solución específica en base a las exigencias, tareas
y estrategias definidas en la fase anterior. En esta fase, los desarrolladores de software se
encargan de diseñar la arquitectura de software, así como un plan de diseño detallado del
mismo, centrándose en componentes concretos, como interfaces, entornos de trabajo o
bibliotecas. La fase de diseño da como resultado un borrador preliminar con el plan de diseño
del software, así como planes de prueba para los diferentes componentes.
Implementación
La arquitectura de software concebida en la fase de diseño se ejecuta en la fase de
implementación, en la que se incluye la programación del software, la búsqueda de
errores y las pruebas unitarias. En la fase de implementación, el proyecto de software se
traduce al correspondiente lenguaje de programación. Los diversos componentes se
desarrollan por separado, se comprueban a través de las pruebas unitarias y se integran
poco a poco en el producto final. La fase de implementación da como resultado un producto
de software que se comprueba por primera vez como producto final en la siguiente fase
(prueba alfa).
Prueba
La fase de prueba incluye la integración del software en el entorno seleccionado. Por norma
general, los productos de software se envían en primer lugar a los usuarios finales
seleccionados en versión beta (pruebas beta). Las pruebas de aceptación desarrolladas en
la fase de análisis permiten determinar si el software cumple con las exigencias definidas con
anterioridad. Aquellos productos de software que superan con éxito las pruebas beta están
listos para su lanzamiento.
Servicio
Una vez que la fase de prueba ha concluido con éxito, se autoriza la aplicación
productiva del software. La última fase del modelo en cascada incluye la entrega,
el mantenimiento y la mejora del software.
En teoría, el desarrollo en cascada pretende crear los requisitos previos para una ejecución
rápida y rentable de los proyectos a través de una cuidada planificación previa. Sin
embargo, la utilización del modelo en la práctica es controvertida. Por una parte, en el
desarrollo de software las fases de proyecto no suelen estar claramente diferenciadas entre sí.
Es precisamente en los proyectos de software más complejos donde los desarrolladores se
suelen enfrentar al hecho de que los diversos componentes de una misma aplicación se
encuentran en diferentes fases de desarrollo al mismo tiempo. Por otra parte, la secuencia
lineal del waterfall model no suele coincidir con la realidad.
✔ Una estructura sencilla gracias a unas fases de ✘ Por norma general, los proyectos más complejos o
proyecto claramente diferenciadas. de varios niveles no permiten su división en fases de
proyecto claramente diferenciadas.
✔ Buena documentación del proceso de desarrollo ✘ Poco margen para realizar ajustes a lo largo de
Ventajas Inconvenientes
a través de unos hitos bien definidos. proyecto debido a un cambio en las exigencias.
✔ Los costes y la carga de trabajo se pueden ✘El usuario final no se integra en el proceso de
estimar al comenzar el proyecto. producción hasta que no termina la programación.
✔ Aquellos proyectos que se estructuran en base al ✘En ocasiones, los fallos solo se detectan una vez
modelo en cascada se pueden representar finalizado el proceso de desarrollo.
cronológicamente de forma sencilla.