1. Instituto Politécnico Nacional
Unidad Profesional Interdisciplinaria de Ingeniería y Ciencias Sociales y Administrativas
MODELO CASCADA
Integrantes:
López Ayala Pedro
Méndez Gabriel Linda Anel
Martínez Florencio Ricardo
Ramírez Arista José Alberto
Ureña Castillo Jocelyne Itzel
Coordinador de Equipo:
-Méndez Gabriel Lina Anel
Oswaldo Rico 2-MARZO-2016
3. “MODELO CASCADA”
3
INTRODUCCION
En este presente trabajo se busca aprender, comprender de manera general y precisa, el
modelado de cascada, que es la base principal de todos los demás modelos. Gracias a sus
pasos que permiten que se logre un buen desarrollo de software.
Al hablar del desarrollo en cascada (denominado así por la posición de las fases en el
desarrollo de esta, que parecen caer en cascada, nos da el enfoque metodológico que ordena
rigurosamente las etapas del proceso para el desarrollo de software.
Lo cual es preciso resaltar la forma del inicio de cada etapa donde debe esperar a la finalización
de la etapa anterior.
Al final de cada etapa, se lleva a cabo una revisión final, que se encarga de determinar si el
proyecto está listo para avanzar a la siguiente fase, también se trata de enfatizar lo más
importante de este modelo, así como la historia de origen, la orientación que lleva en la vida
actual, y las ventajas y desventajas que nos presenta dicho modelo.
4. “MODELO CASCADA”
4
1. Historia
En 1970 Royce propuso lo que actualmente se conoce como el modelo de cascada como un
concepto inicial, un modelo que según él era defectuoso (Royce, 1970) posteriormente
revisada por Barry Boehm en 1980 e Ian Sommerville en 1985.
Su trabajo, explora cómo el modelo inicial podría ser convertido en un modelo interactivo, con
comentarios de cada fase de influir en las fases posteriores. Es sólo el modelo inicial que
recibió la notificación, su propia crítica de este modelo inicial se ha ignorado en gran medida.
La expresión "modelo de cascada" rápidamente llegó a referirse no a la visión final de Royce
del diseño interactivo, sino más bien a su modelo puramente como un orden secuencial.
El desarrollo en cascada, también llamado modelo en cascada (denominado así por la posición
de las fases en el desarrollo de esta, que parecen caer en cascada “por gravedad” hacia las
siguientes fases), 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.
Al final de cada etapa, el modelo está diseñado para llevar a cabo una revisión final, que se
encarga de determinar si el proyecto está listo para avanzar a la siguiente fase. Este modelo
fue el primero en originarse y es la base de todos los demás modelos de ciclo de vida.
5. “MODELO CASCADA”
5
2. Estructura
1-Análisis de requisitos.
2-Diseño del Sistema.
3-Diseño del Programa.
4-Codificación.
5-Pruebas.
6-Verificación.
7-Mantenimiento.
El cual cualquier error de diseño detectado en la etapa de prueba conduce necesariamente al
rediseño y nueva programación del código afectado, aumentando los costos del desarrollo.
La palabra cascada sugiere, mediante la metáfora de la fuerza de la gravedad, el esfuerzo
necesario para introducir un cambio en las fases más avanzadas de un proyecto.
Estructura Modelo Cascada.
Análisis de los requisitos del software.- Es el proceso de recopilación de la información,
éste se centra especialmente en el software. El analista debe comprender el ámbito de la
información del software, así como la función, rendimiento e interfaces requeridas. En esta
6. “MODELO CASCADA”
6
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.
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 identificando grandes
módulos 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.
Diseño del programa.- 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.- Es la fase de programación o implementación propiamente dicha. Aquí se
implementa el código fuente, haciendo uso de prototipos así como pruebas y ensayos para
corregir errores.
Dependiendo del lenguaje de programación y su versión se crean las bibliotecas y
componentes reutilizables dentro del mismo proyecto para hacer que la programación sea un
proceso mucho más rápido.
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.
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.
En la creación de desarrollo de cascada se implementa los códigos de investigación y
pruebas del mismo
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. En esta etapa se pueden actualizar las versiones
del software, al igual que alguna de las herramientas, esto con el fin de que el programa
cumpla con todos los requisitos que se requieran.
7. “MODELO CASCADA”
7
3. Orientación
La orientación del modelo de cascada, es
universal ya que puede ser utilizada en
cualquier tipo de desarrollo de software, ya que
la estructura de la metodología permite
identificar posibles fallas y corregirlas, por lo
regular la implementación y mantenimiento es lo
que absorbe más tiempo en el ciclo de vida de este
método.
Al final el modelo tiene que ser homologado y
cumplir con la entrega del sistema con su
respectiva documentación, para que otros
grupos puedan trabajar fácilmente.
Está orientado a documentos. Este modelo está enfocado a la producción de documentos.
Es el primero de muchos que tratan de orientar la forma de abordar los procesos, Cada fase
tiene que entregar un producto (documento o software) bien documentado, para que otros
grupos puedan trabajar con ellos.
El modelo de cascada está diseñado para proyectos de tamaño reducido y complejidad
controlada.
8. “MODELO CASCADA”
8
4. Ventajas/Desventajas
Ventajas
-Realiza un buen funcionamiento en equipos débiles y productos maduros, por lo que se
requiere de menos capital y herramientas para hacerlo funcionar de manera óptima.
-Es un modelo fácil de implementar y entender.
-Está orientado a documentos.
-Es un modelo conocido y utilizado con frecuencia.
-Promueve una metodología de trabajo efectiva: Definir antes que diseñar, diseñar antes que
codificar.
-Radica en su sencillez ya que sigue los pasos intuitivos necesarios a la hora de desarrollar
el software.
La ventaja de este modelo, con respecto con al anterior, es que ya tenemos cierta disciplina
en el desarrollo de sistemas; se introducen la planeación y administración, pues las fases se
deben planear en tiempo y recursos (humanos y físicos), y se deben administrar, es decir,
alguien vigila que el grupo de desarrollo realmente se ajuste a lo que se ha planeado y está
cumpliendo con este proceso de desarrollo.
Desventajas
-En la vida real, un proyecto rara vez sigue una secuencia lineal, esto crea una mala
implementación del modelo, lo cual hace que lo lleve al fracaso.
-El proceso de creación 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 diseño detectado en la etapa de prueba conduce necesariamente al
rediseño y nueva programación del código afectado, aumentando los costos del desarrollo.
-Una etapa determinada del proyecto no se puede llevar a cabo a menos de que se haya
culminado la etapa anterior.
9. “MODELO CASCADA”
9
5. TIC
Ciclo de vida de un sistema de información es el marco de referencia que contiene los
procesos, las actividades y las tareas involucradas en el desarrollo, la explotación y el
mantenimiento de un producto de software, abarcando la vida del sistema desde la definición
de los requisitos hasta la finalización de su uso.
El ciclo de vida es el conjunto de fases (o etapas) por las que pasa el sistema desde que se
concibe hasta que se retira del servicio. Es decir, se trata de la estructura del proceso de
producción del sistema de información. El Modelo de Ciclo de Vida indica cuáles son las
actividades a realizar y el orden en que se van a realizar.
Todo ciclo de vida debe cubrir tres objetivos básicos:
Definir las actividades a realizar y en qué orden.
Asegurar la consistencia con el resto de los sistemas de información de la organización.
Proporcionar puntos de control para la gestión del proyecto (calendario y presupuesto). No
hay que confundir este concepto con el de método o metodología, la metodología indica cómo
avanzar en la construcción del sistema esto es con qué técnicas, puede determinar los
recursos a utilizar o las personas implicadas en cada actividad entre otras características.
Las dificultades del método CODE-AND-FIX condujeron, ya en el año 1956, al
convencimiento de la necesidad de realizar el desarrollo de software en un modelo por
etapas (STAGEWISE). En este modelo el software debe desarrollarse en etapas sucesivas
(planificación, especificaciones de operación, especificaciones de codificación, codificación,
prueba de cada unidad, prueba de integración, eliminación de problemas, evaluación del
sistema.
El modelo en cascada (WATERFALL) es una mejora del modelo anterior y ha tenido desde
los años 70 un papel fundamental en el desarrollo de proyectos software, tanto es así que se
le conoce también como modelo clásico del ciclo de vida del desarrollo de software. Fue
enunciado por ROYCE en 1970 y las dos mejoras sustanciales que introdujo en el modelo
STAGE-WISE son las siguientes:
Considera la realización de bucles de realimentación entre etapas, permitiendo la resolución
de problemas detectados en una etapa, en la etapa anterior. Con el fin de eliminar bucles de
vuelta excesivamente largos que repercutirían en una carga excesiva de trabajo en el
proceso, sólo admite vueltas a la etapa anterior.
10. “MODELO CASCADA”
10
Una incorporación inicial del prototipado en el ciclo de vida del software. Los prototipos se
utilizan para captar especificaciones durante el análisis, o para probar posibles soluciones
durante el diseño pero, generalmente, una vez cumplida su misión se deben desechar,
procediéndose a una especificación formal.
Conclusión
Se logró comprender las características de nuestro modelo, el cual lo hacen muy eficiente a
la hora de su aplicación así como también su origen, Royce el creador del modelo, nos
permitió ver el origen hasta de sus ideas, al igual que la estructura, lo que corresponde cada
fase, para el buen funcionamiento del software.
También la orientación que lleva en la vida actual, tanto como su aplicación, y gracias a las
ventajas y desventajas que nos presenta dicho modelo, podemos concluir que a pesar de los
pros y contras, de forma general el modelo en cascada es de los mejores, gracias a su
organización y funcionamiento, lo cual logro ser la base de todos los demás modelos.