Diseñame un ejercicio para aprender sobre diferentes metodologias de desarrollo de software
¡Claro! Aquí tienes un ejercicio práctico que te ayudará a comprender las diferentes metodologías de desarrollo de software, centrándonos en las más comunes: Cascada, Scrum, Extreme Programming (XP) y Kanban.
Ejercicio: Desarrollo de un Proyecto de Software Simulado
# **Contexto del Proyecto**
Imaginemos que tu equipo debe desarrollar una aplicación móvil simple para gestionar tareas personales. La aplicación tendrá funciones básicas: agregar tarea, eliminar tarea y marcar tareas como completadas.
# **Actividades del Ejercicio**
1. **Dividir a la Clase en Equipos**: Forma grupos de 4-5 estudiantes. Cada grupo adoptará una metodología.
2. **Elección de Metodología de Desarrollo**: Asigna a cada grupo una de las siguientes metodologías:
- **Cascada**
- **Scrum**
- **Extreme Programming (XP)**
- **Kanban**
3. **Desarrollo del Proyecto (Tiempo Límitado: 1 hora)**:
- **Cascada**: El grupo debe redactar un documento de requisitos, diseñar la arquitectura de la aplicación, luego implementar (simular) la aplicación en un diagrama de flujo y, finalmente, realizar pruebas antes de la entrega. Cada fase debe ser completada antes de pasar a la siguiente.
- **Scrum**: Deberán hacer una reunión inicial (Sprint Planning) donde definirán el backlog del producto (lista de tareas). Luego, planificarán un sprint de 20 minutos, en el que trabajarán en varias tareas (simulando el desarrollo), seguido de una reunión de revisión y retrospectiva para evaluar el rendimiento.
- **Extreme Programming (XP)**: Enfocándose en la programación en pareja, los estudiantes simularán la escritura de código para dos tareas. Deben practicar la integración continua haciendo revisiones rápidas y asegurándose de que todo el código que producen pase pruebas rápidas.
- **Kanban**: Visualizarán su flujo de trabajo en un tablero Kanban. Deben dividir las tareas en varias columnas: "Por Hacer", "Haciendo" y "Hecho". A medida que trabajan, deben mover las tarjetas (tareas) de una columna a otra y hablar sobre cómo visualizan el progreso.
4. **Presentación de Resultados**: Cada grupo presentará su metodología y lo que aprendieron sobre el proceso. Deberían centrarse en lo siguiente:
- Ventajas y desventajas de su metodología.
- Problemas que encontraron y cómo los solucionaron.
5. **Reflexión**: Al final del ejercicio, discute en clase qué metodología les pareció más eficiente y por qué. Pregunta: ¿Cómo afecta la elección de una metodología al éxito del proyecto?
Objetivo del Ejercicio
Este ejercicio tiene como objetivo practicar y entender cómo cada metodología se manifiesta en un entorno de trabajo real, enfocándose en las dinámicas de equipo, la planificación y la ejecución del desarrollo de software. ¡Diviértanse aprendiendo!