Está en la página 1de 8

Metodología en Cascada

Que es: El desarrollo en cascada (en inglés, waterfall model) es un procedimiento


lineal que se caracteriza por dividir los procesos de desarrollo en sucesivas fases
de proyecto. Al contrario que en los modelos iterativos, cada una de estas fases se
ejecuta tan solo una vez. Los resultados de cada una de las fases sirven como
hipótesis de partida para la siguiente. El waterfall model se utiliza, especialmente,
en el desarrollo de software.

El desarrollo del modelo se atribuye al teórico de la informática Winston W. Royce.


Sin embargo, Royce no es el inventor de este modelo. Muy al contrario, en su
ensayo de 1970 titulado Managing the Development of Large Software Systems, el
teórico presenta una reflexión crítica acerca de los procedimientos lineales. A
modo de alternativa, Royce presenta un modelo iterativo incremental en el que
cada una de las fases se basa en la anterior y verifica los resultados de esta.
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

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.

1. Análisis: planificación, análisis y especificación de los requisitos.


2. Diseño: diseño y especificación del sistema.
3. Implementación: programación y pruebas unitarias.
4. Verificación: integración de sistemas, pruebas de sistema y de integración.
5. Mantenimiento: entrega, mantenimiento y mejora.

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. A
continuación, se realiza una definición detallada de los requisitos, incluyendo un
análisis de la situación de salida y un concepto. Mientras que los análisis de salida
se encargan de describir la problemática en sí, el concepto ha de definir qué
funciones y características debe ofrecer el producto de software para cumplir con
las correspondientes exigencias. La definición de los requisitos da como resultado
un pliego de condiciones, una descripción detallada de cómo se han de cumplir los
requisitos del proyecto, así como un plan para la prueba de aceptación, entre
otros.

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.

Ventajas Desventajas
✔ Una estructura sencilla gracias a unas ✘ Por norma general, los proyectos más
fases de proyecto claramente complejos o de varios niveles no permiten
diferenciadas. su división en fases de proyecto
claramente diferenciadas.
✔ Buena documentación del proceso de ✘ Poco margen para realizar ajustes a lo
desarrollo a través de unos hitos bien largo del proyecto debido a un cambio en
definidos. las exigencias.
✔ Los costes y la carga de trabajo se ✘El usuario final no se integra en el
pueden estimar al comenzar el proyecto. proceso de producción hasta que no
termina la programación.
✔ Aquellos proyectos que se estructuran ✘En ocasiones, los fallos solo se
en base al modelo en cascada se pueden detectan una vez finalizado el proceso de
representar cronológicamente de forma desarrollo.
sencilla.
1&1 IONOS Inc. (2020, 30 septiembre). El modelo en cascada. IONOS Digital
Guide. https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/el-modelo-
en-cascada/

Porque utilizar la metodología en Cascada para el proyecto Tengo!

Porque el método en cascada permite estructurar la organización de manera clara


al desarrollar el proyecto Tengo!, lo que conlleva a hacer uso del punto clave de
dicho método, que consiste en la documentación que se debe llevar al realizar
cada uno de los pasos que necesita esta metodología plasmando los
conocimientos adquiridos como un registro en borradores preliminares que serían
muy útiles para el desarrollo de Tengo!.

Otro punto importante es que la metodología en cascada lo que pretende con en


su implementación es crear los requisitos previos para que se pueda dar una
ejecución rápida y rentable del proyecto Tengo!, claro está que esto se hace a
través de una cuidada planificación previa.

Porque no utilizar la metodología en Cascada para el proyecto Tengo!

Porque la metodología en cascada al implementarla es controvertida, cuando se


desarrolla software que es nuestro caso en el proyecto Tengo!, las fases del
método no son lo suficientemente claras para diferenciarlas, ya que los diferentes
componentes o partes del proyecto Tengo! Se podrían encontrar en diferentes
fases de desarrollo al mismo tiempo y esto afecta en las entregas que se deben
hacer al proveedor que comprara el software porque su desarrollo en tiempo y
forma no serían los adecuados, además la secuencia lineal que utiliza este
método no coincide con las necesidades que requiere Tengo! Para su desarrollo
ya que durante el proceso se necesitan ajustes y esta metodología no nos lo
provee.

Responsable de investigar la metodología en cascada: Saúl González Valencia

_________________________________________________________________
Los diseños o maquetados propuestos para Tengo!, son una idea de cómo se
implementaría el software, al final, el diseño podría cambiar, ya que se puede dar
el caso que se consideren otros componentes que en este momento no se están
tomando en cuenta, o que algunas funciones que utilice el software se propongan
de otra manera, ya que es necesario analizar todos los procesos necesarios para
utilizar el software y en ese caso pueden cambiar los diseños. Esto nos
compromete a implementar la usabilidad al probar el software ya que si no está
siendo usable se deben hacer mejoras.

Notificaciones de clientes: En esta pantalla se muestra como se le notificaria al


negocio local cuando un usuario cliente realiza una lista y la envia para que los
usuarios negocio realicen la oferta que le presentaran a dicho cliente.
Cancelar Oferta hecha por negocio: En esta pantalla se muestra como se
cancelaria la oferta hecha del usuario negocio al usuario cliente, lo cual es una
situacion que se puede presentar por posibles errores que tenga el negocio al
checar la lista del usuario cliente.

Checar lista de productos del cliente: En esta pantalla se muestra como se revisa
la lista que envió el usuario cliente al usuario negocio, es importante mencionar
que el trabajo del usuario negocio en esta pantalla es palomear cuando si cuente
con el producto o tacharlo si es que no lo tiene en existencias, además coloca el
precio por producto el tipo de envió o entrega y en automático se genera el precio
total de los productos palomeados en la lista.

__________________________________________________________________

Definir el (como, quiero, para):

Product Backlog: Consiste en una lista con todos los requerimientos iniciales del
producto que se va a desarrollar. Se trata de una lista dinámica, que irá
evolucionando a medida que lo hace el producto y el entorno del proyecto. La
finalidad de crear esta lista no es otra que identificar las necesidades del producto
para lograr su máxima utilidad. Contiene la descripción de las tareas y subtareas
que se van a realizar para la ejecución de cada requisito. Tareas que se
organizarán en función de sus prioridades.
Sprint Backlog: Consiste en una la lista de elementos seleccionados previamente
del Product Backlog, para ser desarrollados en el día a día en los diferentes
Sprints del proyecto. Tras crear la lista, el equipo del proyecto tendrá que
identificar las funcionalidades y priorizar las que se entregarán en el Sprint. Por lo
general, el Sprint Backlog es representado a través de un tablero de tareas. De
esta forma, todo el equipo conoce qué tareas tiene asignadas y cuál es su grado
de desarrollo.

Sprint: es el nombre que va a recibir cada uno de los ciclos o iteraciones que
vamos a tener dentro de dentro de un proyecto Scrum. Cada Sprint o cada ciclo de
trabajo lo que vamos a conseguir es lo que se denomina un entregable o
incremento del producto, que aporte valor al cliente.

Sprint Planning: Es una reunión que se realiza al comienzo de un Sprint en


donde el Product Owner, Scrum Master y el Development Team eligen un conjunto
de Product Backlog Items (PBI) generando así el Sprint Backlog que entrará al
siguiente sprint.

Planning Poker: Es un proceso de planificación de un proyecto por parte de todo


el equipo implicado que utiliza objetivos o puntos de historia** para valorar un
proyecto. Cada participante pone sobre la mesa la carta que representa la
puntuación que él o ella considera necesaria para llevar a cabo dicha tarea del
proyecto en cuestión. De haber puntuaciones muy dispares, cada participante
explica los motivos de su decisión. Y si fuese necesario, puede repetirse la
votación hasta llegar a un consenso.

Referencias:

E.A.L.D.E. (2020a, septiembre 9). En qué consiste el Product Backlog y el Sprint


Backlog en Scrum. EALDE Business School. https://www.ealde.es/product-
backlog-sprint-backlog/

Mesa, A. R. (2020, 10 septiembre). Qué es un Sprint de Scrum.


OpenWebinars.net. https://openwebinars.net/blog/que-es-un-sprint-scrum/
Najarro, M. (2018, 4 mayo). Planning Poker: ¿Cómo realizar la estimación inicial
de un proyecto de forma rápida y fiable? Medium.
https://blog.interactius.com/planning-poker-c%C3%B3mo-realizar-la-estimaci
%C3%B3n-inicial-de-un-proyecto-de-forma-r%C3%A1pida-y-fiable-3576e9f1a943

También podría gustarte