ACTIVIDAD SEMANA 9 - Modelos de Desarrollo lAURA ANDREA NIÑO SERRANO

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 10

ACTIVIDAD SEMANA 9 – MODELOS DE DESARROLLO DE SOFTWARE.

Nombre: Laura Andrea Niño Serrano


De manera individual, realice un comparativo entre los 9 modelos propuestos en la lectura:

Los 9 mejores modelos de desarrollo de software para elegir: fases y aplicaciones.

https://cynoteck.com/es/blog-post/top-software-development-models-to-choose-from/

Incluya en la comparación los siguientes aspectos:

- Fecha de creación.
- Descripción.
- Fases.
- Ventajas.
- Desventajas.
- Aplicabilidad del modelo.

Enriquezca su trabajo con consultas a otras fuentes.

Referencias:

Libro: Ingeniería del Software. Pressman. CAPÍTULO 2 MODELOS DEL PROCESO.

COMPARATIVA
1. Modelo de Cascada:

 Fecha de creación: 1970.

 Descripción: El modelo de cascada es un enfoque lineal y secuencial en el cual las fases del
desarrollo de software se realizan de manera secuencial, una tras otra, con una
retroalimentación limitada entre ellas. Cada fase debe completarse antes de que
comience la siguiente.

 Fases:

 Fase de análisis: Planificación, análisis y especificación de los requisitos.


 Fase de diseño: Diseño y especificación del sistema.
 Fase de implementación: Programación y pruebas unitarias.
 Fase de Verificación: Integración de sistemas, pruebas de sistema e integración.
 Fase de implementación: Despliegue de Sistemas
 Fase de mantenimiento: Entrega, mantenimiento y mejora.

 Ventajas:
 Enfoque simple y fácil de entender.

 Proyecto bien estructurado y documentado.

 Adecuado para proyectos pequeños y simples con requisitos bien definidos.

 Desventajas:

 Poca flexibilidad para cambios en los requisitos.

 Retroalimentación limitada entre fases.

 Riesgo de que los errores no se detecten hasta etapas tardías del proyecto.

 Aplicabilidad del modelo:

 Fase de análisis: Planificación, análisis y especificación de los requisitos.


 Fase de diseño: Diseño y especificación del sistema.
 Fase de implementación: Programación y pruebas unitarias.
 Fase de Verificación: Integración de sistemas, pruebas de sistema e integración.
 Fase de implementación: Despliegue de Sistemas
 Fase de mantenimiento: Entrega, mantenimiento y mejora.

2. Modelo Espiral:

 Fecha de creación: 1986.

 Descripción: El modelo espiral es un enfoque iterativo y gradual que combina elementos


del modelo de cascada con la gestión de riesgos. Se enfoca en la identificación temprana y
la mitigación de riesgos en el desarrollo de software.

 Fases:

 Fase de planificación: El paso inicial es identificar y establecer objetivos y metas a


alcanzar. Luego, como alternativas, presentan las mejores formas potenciales de
satisfacer los objetivos. Todo esto requiere una comunicación continua entre el cliente
y el equipo de gestión del proyecto.
 Fase de análisis de riesgos: Al planificar y finalizar la estrategia de reducción de
riesgos, se identifican los posibles peligros. Cada peligro destacado se somete a un
examen exhaustivo. Se pueden crear prototipos para eliminar la posibilidad de
requisitos ambiguos. Los riesgos se minimizan tomando precauciones.
 Fase de ingeniería: Implica la codificación, prueba e implementación del software. Tras
una evaluación de riesgos, se adopta el modelo de desarrollo. El modelo a utilizar está
determinado por el nivel de riesgo que se ha reconocido para esa fase.
 Fase de evaluación: Valoración del cliente sobre el programa. Se decide si repetir o no
el ciclo. Aquí se está planificando la siguiente fase del proyecto.

 Ventajas:

 Gestión efectiva de riesgos.


 Mayor flexibilidad en comparación con el modelo de cascada.

 Retroalimentación temprana y continua.

 Desventajas:

 Complejidad en la gestión de riesgos.

 Requiere experiencia en identificación y mitigación de riesgos.

 Mayor costo y tiempo en comparación con el modelo de cascada.

 Aplicabilidad del modelo:

Es deseable tener lanzamientos de software frecuentes.


Se utilizan prototipos.
La gestión de riesgos y gastos es fundamental.
En proyectos de riesgo medio-alto y riesgo alto.
Los criterios de requisitos son ambiguos y difíciles de entender.
Se están produciendo muchos cambios, y pueden ocurrir en cualquier momento.
Ya sea por razones económicas o de otro tipo, el compromiso del proyecto a largo
plazo se ve comprometido.
3. Modelo V:

 Fecha de creación: No tiene una fecha específica de creación, es una variante del modelo
de cascada.

 Descripción: El modelo V es una variante del modelo de cascada que se enfoca en la


verificación y validación del software. Las pruebas son un componente central en este
enfoque, y las actividades de pruebas se realizan en paralelo con las actividades de
desarrollo.

 Fases:

Fase de Verificación:

 Análisis de requisitos: El paso inicial de la fase de verificación es comprender


las expectativas de los clientes sobre nuestros productos mediante una amplia
comunicación con los clientes.
 Diseño de sistemas: Después de la identificación de los requisitos de los
clientes y las expectativas de nuestros productos, se debe desarrollar el
sistema de diseño detallado para el desarrollo del producto.
 Diseño arquitectonico: El diseño del sistema se segrega en diferentes módulos
según sus funcionalidades. Se reconoce la transferencia de datos entre los
módulos internos y otros sistemas.
 Diseño del módulo: Los diseños se segregan aún más en módulos más
pequeños y más detallados.
Fases de Validación:

 Examen de la unidad: Las pruebas unitarias eliminan errores a nivel de código


o de unidad.
 Pruebas de integración: Las pruebas de integración validan la comunicación
interna entre módulos dentro del sistema.
 Pruebas del sistema: Las pruebas del sistema examinan los requisitos
funcionales y no funcionales de la aplicación desarrollada.
 Pruebas de aceptación del usuario (UAT): UAT valida la usabilidad del sistema
desarrollado en el mundo real.

 Ventajas:

 Mayor enfoque en pruebas y validación.

 Mayor probabilidad de detección temprana de errores.

 Proyecto bien estructurado y documentado.

 Desventajas:

 Poca flexibilidad para cambios en los requisitos.

 Poca retroalimentación entre fases.

 Mayor costo y tiempo en comparación con otros enfoques ágiles.

 Aplicabilidad del modelo:

 Cuando los requisitos y objetivos son explícitos e inequívocos.


 Cuando los requisitos técnicos tales como recursos técnicos y expertos técnicos estén
disponibles a la mano.
 Cuando las fallas del sistema desarrollado son aceptables.

4. El Proceso Unificado Racional (RUP):

 Fecha de creación: 1998.

 Descripción: RUP es un enfoque iterativo e incremental que se basa en la arquitectura


orientada a objetos y está respaldado por IBM y Rational Software. Se enfoca en la
planificación, desarrollo y entrega del software en ciclos de desarrollo iterativos.

 Fases:

 Comienzo: Se visualiza la idea central.


 Elaboración: Se diseñan los casos de uso y la arquitectura.
 Construcción: Actividades desde el diseño hasta el producto terminado.
 Transición: Seguimiento de actividades para asegurar la satisfacción del cliente.
 Ventajas:

 Enfoque iterativo que permite la retroalimentación continua del cliente.

 Mayor flexibilidad para cambios en los requisitos.

 Enfatiza la calidad y la gestión del riesgo.

 Desventajas:

 Puede ser complejo y costoso de implementar.

 Requiere una planificación y documentación detallada.

 Puede tener un tiempo de desarrollo más largo en comparación con los enfoques
ágiles.

 Aplicabilidad del modelo:

 Cuando hay un cambio constante en los requisitos.


 Cuando se dispone de información y datos veraces.
 Cuando necesitas ciertas integraciones a lo largo del proceso de desarrollo.
5. Modelo Incremental e Iterativo:

 Fecha de creación: No tiene una fecha específica de creación, es una variante del enfoque
cascada.

 Descripción: El modelo incremental e iterativo es un enfoque que se basa en la mejora


continua del software a través de la entrega de incrementos funcionales en ciclos de
desarrollo iterativos. Cada iteración agrega nuevas funcionalidades o mejoras al software
existente.

 Fases:

 Fase de Iniciación: La fase de iniciación de un proyecto se ocupa del alcance, las


necesidades y los peligros a un nivel superior.
 Fase de Elaboración: Crea una arquitectura viable que mitiga los riesgos identificados
en la primera fase y cumple con los criterios no funcionales.
 Fase de construcción: Gradualmente completa los componentes de la arquitectura con
código listo para la producción, que se desarrolla mediante el análisis, la
implementación, el diseño y las pruebas de los requisitos funcionales.
 Fase de transición: Entregar el sistema al entorno operativo de producción durante la
fase de transición.

 Ventajas:

 Permite una retroalimentación temprana y continua del cliente.

 Mayor flexibilidad para cambios en los requisitos.

 Entregas incrementales que permiten una rápida validación del software.


 Desventajas:

 Puede haber problemas de integración con incrementos sucesivos.

 Requiere una gestión cuidadosa de la planificación y control de las iteraciones.

 Mayor costo en comparación con el modelo de cascada.

 Aplicabilidad del modelo:

Se requiere una entrega rápida de la funcionalidad crítica.


Hay una nueva innovación tecnológica que se puede utilizar para llevar a cabo un
proyecto.
 El grupo de trabajo no está familiarizado con el dominio.
 Hay una corporación que tiene grandes aspiraciones de mejora.
6. Modelo Prototipo:

 Fecha de creación: No tiene una fecha específica de creación, es un enfoque utilizado


desde los primeros días del desarrollo de software.

 Descripción: El modelo prototipo se basa en la construcción de un prototipo inicial del


software para obtener retroalimentación del cliente y refinar los requisitos antes de
desarrollar la versión final del software. Se utiliza para comprender y validar los requisitos
del cliente.

 Fases:

 Análisis de requisitos: El paso inicial del modelo trata de establecer los requisitos del
sistema deseable.
 diseño: Después de la identificación de los requisitos del sistema deseado, se forma un
diseño conceptual básico.
 Formación de prototipos: Con la ayuda del diseño conceptual básico, se construye un
prototipo de trabajo para el sistema deseado.
 Evaluación inicial: El prototipo es probado por el cliente en este paso para evaluar
funcionalidades y limitaciones.
 Prototipo de refinación: El prototipo se refina aún más, analizando la evaluación
realizada por el cliente.
 Producción: Una vez que se ejecuta el proceso de refinación, se produce el sistema
final para su uso en tiempo real.

 Ventajas:

 Permite una comprensión temprana y precisa de los requisitos del cliente.

 Retroalimentación temprana del cliente para refinar los requisitos.

 Ayuda a identificar y corregir errores y deficiencias en etapas tempranas.

 Desventajas:

 Puede haber costos adicionales para el desarrollo del prototipo.


 La falta de una planificación y documentación adecuada puede llevar a problemas
en el desarrollo posterior.

 Puede haber retrasos en el desarrollo de la versión final si no se gestiona


adecuadamente el proceso de validación y refinamiento de requisitos.

 Aplicabilidad del modelo:

 Cuando el requisito del sistema deseado es inequívoco.


 Cuando aún no se han evaluado las funciones básicas del sistema deseado.
 Si es necesario cambiar los requisitos del sistema resultante.
 Mostrar las funcionalidades técnicas del producto deseado mediante la creación de un
prototipo.
7. Scrum:

 Fecha de creación: 1986 (concepto de Scrum), 1995 (Scrum como marco de desarrollo de
software).

 Descripción: Scrum es un marco ágil de desarrollo de software que se basa en la


colaboración y la adaptabilidad. Se enfoca en la entrega incremental y la mejora continua,
con roles definidos (Scrum Master, Propietario del Producto y Equipo de Desarrollo) y
eventos específicos (Sprint, Reunión diaria, Revisión de Sprint, Retrospectiva de Sprint).

 Fases:

 Pila de Producto: La fase de acumulación de productos es cuando se determinan las


tareas prioritarias y se recopila información concisa y completa sobre el proyecto que
se creará.
 Sprint: El sprint es el corazón palpitante del proceso scrum, un marco de tiempo de un
mes durante el cual tiene lugar la creación de un producto potencialmente entregable.
 Quemar: El burn down es la fase en la que se mide el progreso de un proyecto Scrum.
Cuando se completa cada sprint, el scrum master será responsable de actualizar las
imágenes.

 Ventajas:

 Mayor flexibilidad y adaptabilidad a los cambios en los requisitos del cliente.

 Mayor transparencia y colaboración en el equipo de desarrollo.

 Entrega incremental y rápida de funcionalidades.

 Desventajas:

 Requiere un compromiso activo del equipo de desarrollo y del cliente.

 Puede haber dificultades en la gestión del tiempo y los recursos en algunos casos.

 La falta de una planificación detallada puede llevar a problemas de seguimiento y


control.

 Aplicabilidad del modelo:


 Este enfoque se utiliza en situaciones donde se requieren resultados inmediatos.
 En los casos en que hay mucha ambigüedad y los deberes no están bien definidos.
 Cuando un cliente solicita un enfoque de desarrollo altamente personalizado para un
determinado producto.
8. Kanban:

 Fecha de creación: Década de 1940 (como método de gestión de la producción en


Toyota), 2007 (como marco de desarrollo de software).

 Descripción: Kanban es un marco de gestión del trabajo que se basa en la visualización del
flujo de trabajo, la limitación del trabajo en progreso y la mejora continua. Se utiliza para
gestionar el flujo de trabajo de manera eficiente, identificar y resolver cuellos de botella y
minimizar los tiempos de espera.

 Fases:

 Identificar y explicar detalladamente todos y cada uno de los procesos que tienen
lugar en la fabricación.
 Visualiza los procesos antes mencionados: Asigna a cada uno de ellos una tarjeta y
colócala en el panel Kanban.
 Una vez que se han visualizado los procesos, es más importante identificar los
problemas, como los cuellos de botella, para que puedan ser revisados y simplificados
si es necesario.
 Mantenga su trabajo en progreso al mínimo. Es decir, intente limitar la cantidad de
actividades completadas para que los empleados puedan concentrarse en lo que más
importa.
 Tome medidas y actúe en consecuencia. Debido a que Kanban es una técnica
dinámica, será importante examinar los resultados y tomar medidas para mejorar la
situación.

 Ventajas:

 Mayor visibilidad del flujo de trabajo y de los cuellos de botella en el proceso.

 Mayor eficiencia en la gestión del trabajo y reducción de tiempos de espera.

 Adaptabilidad a cambios en los requisitos y prioridades.

 Desventajas:

 Requiere una buena planificación y seguimiento para asegurar la eficiencia del


flujo de trabajo.

 Puede haber falta de estructura y directrices claras en algunos casos.

 No es adecuado para proyectos que requieran una planificación detallada y


rigurosa.

 Aplicabilidad del modelo:

 Cuando necesite eliminar procesos y prácticas innecesarias.


 Cuando necesite un modelo que proporcione un flujo fluido del proceso de desarrollo.
 Cuando se busca la mejora continua del sistema.

9. Programación Extrema (XP):

 Fecha de creación: Década de 1990.

 Descripción: Programación Extrema (XP) es un enfoque ágil de desarrollo de software que


se basa en la colaboración, la simplicidad y la retroalimentación temprana del cliente. Se
enfoca en la entrega rápida y continua de software funcional, con énfasis en las prácticas
de desarrollo como pruebas unitarias, integración continua, diseño simple y desarrollo
iterativo.

 Fases:

 Planificación: Las historias de usuarios se priorizan y se dividen en miniversiones según


su identidad. Habrá una reevaluación de la planificación.
 Codificación: Trabajar con un código simple en esta fase, realizando solo el mínimo
absoluto para que funcione. Será posible conseguir el prototipo.
 Pruebas: La programación se realiza en parejas frente a la misma computadora, “a dos
manos”. Es común que los socios se cambien. Esto asegura que se crea un código más
general, que cualquier otro programador puede comprender y trabajar con él.
 Lanzamiento: Si hemos llegado a esta fase, indica que hemos probado con éxito todas
las historias de usuario o versiones mini considerando las necesidades del cliente.

 Ventajas:

 Mayor colaboración y comunicación entre los miembros del equipo de desarrollo y


el cliente.

 Entrega rápida y continua de software funcional.

 Mayor calidad del software a través de la práctica de pruebas unitarias y


desarrollo iterativo.

 Desventajas:

 Requiere un compromiso activo del equipo de desarrollo y del cliente.

 Puede haber falta de documentación y planificación detallada en algunos casos.

 No es adecuado para proyectos con requisitos altamente cambiantes o con


equipos de desarrollo no colaborativos.

 Aplicabilidad del modelo:

 La comunicación entre el cliente y el equipo de desarrollo es siempre abierta.


 El cambio constante requiere una reacción rápida.
 Con un calendario flexible de actividades, la planificación está abierta.
 El software funcional tiene prioridad sobre todas las demás formas de documentación.
 Los principales criterios de éxito del proyecto son las necesidades del cliente y los esfuerzos
del equipo del proyecto.
 Colabore de forma remota en proyectos.

También podría gustarte