0% encontró este documento útil (0 votos)
31 vistas8 páginas

DesarolloSF 040145

El documento describe varias metodologías para el desarrollo de software, incluyendo metodologías ágiles como Scrum, Kanban y Extreme Programming, y metodologías tradicionales como el modelo en cascada. También explica las diferentes etapas del modelo en cascada, como el análisis de requisitos, diseño, implementación, prueba y mantenimiento. Por último, proporciona información sobre Winston W. Royce, el autor original del modelo en cascada.

Cargado por

Cristian Albeiro
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
31 vistas8 páginas

DesarolloSF 040145

El documento describe varias metodologías para el desarrollo de software, incluyendo metodologías ágiles como Scrum, Kanban y Extreme Programming, y metodologías tradicionales como el modelo en cascada. También explica las diferentes etapas del modelo en cascada, como el análisis de requisitos, diseño, implementación, prueba y mantenimiento. Por último, proporciona información sobre Winston W. Royce, el autor original del modelo en cascada.

Cargado por

Cristian Albeiro
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

CONSULTA DE

INVESTIGACION
Metodologías agiles, Metodologías tradicionales,
Etapa de vida del Software según el autor

Cristian Albeiro Mosquera Montaño


Cristiannewman28@[Link]
Metodologías agiles
Las metodologías ágiles son un conjunto de enfoques y prácticas utilizadas en el desarrollo de
software y la gestión de proyectos que se centran en la colaboración, la flexibilidad, la entrega
continua de valor y la adaptación a los cambios. Algunas de las metodologías ágiles más populares
incluyen:

• Scrum

Scrum es una metodología ágil que se utiliza principalmente para gestionar proyectos de
desarrollo de software. Se centra en la entrega continua de valor al cliente a través de iteraciones
llamadas "sprints". Scrum ayuda a los equipos a ser más flexibles, a gestionar mejor las prioridades
y a mantener una comunicación constante.

• Kanban

Kanban se utiliza para visualizar y gestionar el flujo de trabajo en un equipo o proyecto. Se centra
en la limitación del trabajo en curso y en la optimización del proceso de entrega. Kanban es eficaz
para mantener un flujo constante de trabajo y responder a cambios rápidamente.

• Extreme Programming (XP)

XP se enfoca en la calidad del software a través de prácticas como la programación en parejas, las
pruebas unitarias frecuentes y la integración continua. Ayuda a los equipos a mantener un alto
nivel de calidad mientras se adaptan a cambios en los requisitos.

• Lean Software Development

Basado en principios Lean, esta metodología busca eliminar el desperdicio, maximizar el valor y
minimizar el tiempo de entrega. Se utiliza para mejorar la eficiencia y la calidad en el desarrollo de
software.

• Dynamic Systems Development Method (DSDM)

DSDM se utiliza para proyectos empresariales y de TI que requieren una entrega rápida y eficiente
de resultados. Ayuda a gestionar proyectos complejos y a mantener un enfoque en la entrega de
valor al cliente.
• Crystal:

Crystal es un conjunto de metodologías ágiles adaptativas diseñadas para diferentes tamaños y


tipos de proyectos. Proporciona pautas para adaptar la metodología según las necesidades
específicas del proyecto.

• Feature-Driven Development (FDD)

FDD se centra en identificar, diseñar y construir características específicas del software de manera
incremental. Es útil para proyectos grandes y complejos que requieren una gestión detallada de las
características.

• Lean Startup

Aunque no es una metodología ágil de desarrollo de software en sentido estricto, Lean Startup se
utiliza para construir productos de manera eficiente a través de la experimentación y la validación
de hipótesis. Es comúnmente utilizado por startups y empresas que buscan innovar de manera
ágil.
Metodologías Tradicionales
Las metodologías tradicionales de gestión de proyectos se caracterizan por seguir un enfoque más
secuencial y planificado en comparación con las metodologías ágiles.

• Modelo en Cascada (Waterfall)

El modelo en cascada es una metodología secuencial en la que las fases del proyecto, como el
análisis de requisitos, el diseño, la implementación, las pruebas y el despliegue, se llevan a cabo en
un orden fijo. Cada fase debe completarse antes de pasar a la siguiente. Se utiliza cuando los
requisitos son estables y bien definidos.

• Modelo en V (V-Model)

Similar al modelo en cascada, el modelo en V también sigue un enfoque secuencial, pero enfatiza
la relación entre las fases de desarrollo y las correspondientes fases de prueba. Cada fase de
desarrollo se asocia con una fase de prueba específica.

• Modelo en Espiral (Spiral Model)

El modelo en espiral es un enfoque iterativo que combina elementos de desarrollo secuencial con
la repetición de ciclos. Se utiliza en proyectos de alto riesgo y cambiantes, ya que permite una
mayor flexibilidad y adaptación a medida que se avanza en el proyecto.

• Modelo de Desarrollo en Cascada Incremental

Esta variante del modelo en cascada divide el proyecto en partes más pequeñas y manejables.
Cada parte se desarrolla y se completa antes de pasar a la siguiente. Es útil cuando se desea
entregar versiones parciales del producto antes de la finalización completa.

• Modelo de Desarrollo RUP (Rational Unified Process)

RUP es un proceso de desarrollo de software que se basa en una serie de fases y disciplinas.
Proporciona directrices detalladas para el desarrollo y la gestión de proyectos de software. Es
adecuado para proyectos grandes y complejos.

Modelo de Desarrollo en Espiral Evolutiva:


Similar al modelo en espiral, esta variante enfatiza la adaptación continua y la evaluación de
riesgos a lo largo del ciclo de vida del proyecto. Es útil para proyectos donde los requisitos no
están completamente definidos desde el principio.

• Modelo de Desarrollo en Cascada en Miniatura (Mini-Waterfall)

Esta variante del modelo en cascada divide el proyecto en fases más pequeñas, pero sigue un
enfoque secuencial dentro de cada fase. Es adecuado para proyectos con requisitos relativamente
estables y bien definidos.

• Modelo de Desarrollo en Etapas (Stage-Gate)

Este modelo se utiliza comúnmente en la gestión de la innovación y el desarrollo de productos.


Divide el proceso en etapas y utiliza "puertas" o "gateways" para tomar decisiones sobre si
avanzar o detener el proyecto en cada etapa.
Etapas de ciclo de vida de software
Modelo de Cascada

El modelo en cascada o waterfall model, es la propuesta de un enfoque

metodológico que consiste en ordenar de forma lineal las distintas etapas

que debes de seguir en el momento del desarrollar de software.

Este enfoque de cascada originalmente fue propuesto en 1970

por Winston W. Royce, es también conocido como modelo lineal o

modelo de ciclo de vida de un programa, y millones de personas

lo han incorporado a sus planes en las últimas cinco décadas.

Winston W. Royce 1990

Autor del modelo de cascada

¿Cómo funciona el modelo en cascada?

Según el autor muy de lo 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):

• Requisitos de sistema
• Requisitos de software
• Análisis
• Diseño
• Implementación
• Prueba
• 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.
• Análisis: planificación, análisis y especificación de los requisitos.
• Diseño: diseño y especificación del sistema.
• Implementación: programación y pruebas unitarias.
• Verificación: integración de sistemas, pruebas de sistema y de integración.
• 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.

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.
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.

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.

También podría gustarte