Planificación de Sprints - Agsergio04/proyecto-intermodular-david GitHub Wiki
Planificación de Sprints
Visión General
El proyecto PreguntaT se estructura en 6 sprints con una duración de 1 semana cada uno, siguiendo una secuencia lógica de desarrollo desde la configuración inicial hasta el despliegue en producción y optimizaciones finales.
Duración Total del Proyecto: 6 semanas Equipo: 2 Desarrolladores Full-Stack (1 Backend/DevOps, 1 Frontend) Metodología: Agile/Scrum con iteraciones semanales
Sprint 1: Configuración Base e Infraestructura
Fechas
- Inicio: 31 de octubre de 2025 (jueves)
- Fin: 6 de noviembre de 2025 (miércoles)
- Duración: 7 días naturales
Objetivos Específicos y Medibles
| Objetivo | Métrica | Meta |
|---|---|---|
| Configurar infraestructura inicial | Repositorio Git + Docker Compose funcional | ✅ Completado |
| Crear base de datos MongoDB | Entidades diseñadas y validadas | 5 entidades (User, Interview, Question, Answer, Feedback) |
| Implementar sistema de almacenamiento de audios | Audio storage funcional | Temps folder + cloud storage ready |
| Crear componentes UI base | Componentes reutilizables | LoadingScreen, InterviewSession mejorado |
| Integrar Text-to-Speech | TTS para preguntas | Todos los audios pre-generados |
Secuencia Lógica
Este sprint establece la base sólida sobre la que se construirá el resto del proyecto:
- Backend Setup → Configuración Docker, Node.js, Express
- Base de Datos → MongoDB Schema + Mongoose models
- Frontend Setup → Vite + React + Tailwind configurado
- Componentes Base → LoadingScreen, InterviewSession, AudioVisualizer
- Integración TTS → OpenAI Whisper/Google TTS
Entregables Esperados
- Repositorio Git inicializado con estructura de carpetas
- Docker Compose con servicios: Backend, Frontend, MongoDB, Redis
- Schema MongoDB completo en Mongoose
- Endpoint POST
/api/ai/preprocess-audiofuncional - Componente LoadingScreen reutilizable
- InterviewSession.jsx rediseñado
- Documentación inicial en README.md
Tareas Asignadas
Backend (@Agsergio04)
- Crear endpoint POST
/api/ai/preprocess-audio(2h) - Integrar Text-to-Speech (2h)
- Sistema almacenamiento temporal de audios (2h)
- Optimizar tiempo de generación (1h)
- Documentar en API.md (1h)
Subtotal Backend Sprint 1: 8 horas
Frontend (@Agsergio04)
- Crear componente LoadingScreen reutilizable (2h)
- Integrar en Interviews.jsx (1.5h)
- Mejorar InterviewSession.jsx design (3h)
- Animaciones transición entre preguntas (1.5h)
- Optimizar para móviles (1h)
Subtotal Frontend Sprint 1: 9 horas
Base de Datos (@Agsergio04)
- Crear entidades del proyecto (1h)
- Relaciones y dependencias (1h)
- Validaciones de entidades (0.5h)
Subtotal BD Sprint 1: 2.5 horas
TOTAL SPRINT 1: 19.5 horas
Criterios de Aceptación
- ✅ Infraestructura Docker completamente funcional
- ✅ Todos los endpoints de audio responden correctamente
- ✅ Base de datos con datos de prueba
- ✅ Componentes frontend cargados sin errores
- ✅ Audios se generan en <5 segundos por pregunta
- ✅ No hay errores en consola del navegador
Riesgos Identificados
| Riesgo | Probabilidad | Impacto | Mitigación |
|---|---|---|---|
| Problemas con API de TTS | Media | Alto | Tener plan B con otra API (Google Cloud) |
| Latencia en generación de audios | Media | Medio | Implementar caché y procesamiento async |
| Problemas de compatibilidad Docker | Baja | Alto | Probar en diferentes máquinas |
Sprint 2: Autenticación, CRUD y Configuración
Fechas
- Inicio: 7 de noviembre de 2025 (jueves)
- Fin: 13 de noviembre de 2025 (miércoles)
- Duración: 7 días naturales
Objetivos Específicos y Medibles
| Objetivo | Métrica | Meta |
|---|---|---|
| Implementar CRUD de entrevistas | Endpoints REST | GET, POST, PUT, DELETE funcionales |
| Sistema de estados completo | State machine | DRAFT → SCHEDULED → IN_PROGRESS → COMPLETED |
| Crear componentes base de configuración | Componentes reutilizables | 5 componentes (QuestionSelector, DateTimePicker, etc.) |
| Página de creación de entrevista | Flujo multi-paso | Crear entrevista con validaciones |
| Integración con API backend | Llamadas API | POST /api/interviews funcional |
Secuencia Lógica
Este sprint implementa la lógica de negocio principal y la capa de servicios:
- Backend CRUD → Endpoints REST completos
- Estado Management → State machine para entrevistas
- Validaciones → Reglas de negocio
- Frontend Components → Formularios y selectores
- Página de Creación → Flujo multi-paso integrado
Entregables Esperados
- Endpoints CRUD de entrevistas documentados en API.md
- Sistema de estados implementado con transiciones validadas
- 5 componentes React reutilizables
- Página CreateInterviewPage completa
- Validaciones de formulario con React Hook Form
- Manejo de errores global
- Tests unitarios para servicios backend (>80% cobertura)
Tareas Asignadas
Backend (@Agsergio04)
- Crear InterviewService (1h)
- Endpoints POST/GET/PUT/DELETE
/api/interviews(3h) - Crear enum InterviewStatus (0.5h)
- Transiciones de estado válidas (1h)
- Validaciones de negocio (1h)
- Endpoint PATCH
/api/interviews/:id/status(0.5h) - Logs de cambios de estado (0.5h)
- Tests unitarios (1.5h)
- Documentar en API.md (1h)
Subtotal Backend Sprint 2: 10 horas
Frontend (@pablitoclavito04 + @Agsergio04)
- Componente QuestionSelector (1h)
- Componente InterviewParametersForm (1.5h)
- DateTimePicker (1h)
- DurationSelector (0.5h)
- QuestionPreview (1h)
- Validaciones React Hook Form (1h)
- Storybook para componentes (1h)
- Tests unitarios (1.5h)
- Página CreateInterviewPage (2h)
- Flujo multi-paso (1h)
- Integración API (1h)
- Manejo estados de carga (1h)
- Notificaciones éxito/error (0.5h)
- Vista resumen pre-guardar (0.5h)
Subtotal Frontend Sprint 2: 15.5 horas
TOTAL SPRINT 2: 25.5 horas
Criterios de Aceptación
- ✅ Todos los endpoints CRUD funcionales
- ✅ Transiciones de estado validadas correctamente
- ✅ Página de creación permite crear entrevista completa
- ✅ Validaciones previenen datos inválidos
- ✅ Tests con >80% cobertura
- ✅ Sin errores 404 o validación
Dependencias
- Sprint 1 completado (setup inicial)
Sprint 3: Integración IA (OpenAI/Gemini)
Fechas
- Inicio: 14 de noviembre de 2025 (viernes)
- Fin: 20 de noviembre de 2025 (jueves)
- Duración: 7 días naturales
Objetivos Específicos y Medibles
| Objetivo | Métrica | Meta |
|---|---|---|
| Integración OpenAI/Gemini | API configurada | Cliente OAI funcional con rate limiting |
| Análisis de respuestas con IA | Scoring | Puntuación 0-100 consistente |
| Preguntas dinámicas de seguimiento | Relevancia | >80% de preguntas contextuales |
| Componente entrevista en vivo | Grabación audio | MediaRecorder API funcional |
| Integración tiempo real | WebSocket | Feedback sin lag perceptible |
Secuencia Lógica
Este sprint introduce la inteligencia artificial como núcleo de la aplicación:
- Configuración OpenAI → SDK + autenticación + rate limiting
- Análisis de Respuestas → Scoring y feedback con GPT-4
- Preguntas de Seguimiento → Generación dinámica contextual
- MediaRecorder → Captura de audio en tiempo real
- WebSocket → Comunicación bidireccional tiempo real
Entregables Esperados
- Servicio OpenAIService configurado con retry logic
- Endpoint POST
/api/ai/analyze-responsecon scoring - Endpoint POST
/api/ai/generate-followupcon preguntas dinámicas - Componente LiveInterviewPage con MediaRecorder
- AudioVisualizer (forma de onda)
- Conexión WebSocket establecida
- Componente FeedbackDisplay con scoring visual
- Tests mockeados para OpenAI
Tareas Asignadas
Backend (@Agsergio04)
- Instalar SDK OpenAI (0.5h)
- Crear OpenAIService (1h)
- Sistema gestión API keys (0.5h)
- Rate limiting con Redis (1h)
- Sistema retry con backoff (1h)
- Logging requests/responses (0.5h)
- Monitoreo costos (0.5h)
- Endpoint POST
/api/ai/analyze-response(2h) - Diseño prompts análisis (1h)
- Sistema scoring 0-100 (1h)
- Análisis por categorías (1h)
- Feedback constructivo (1h)
- Caché respuestas similares (1h)
- Tests con mocks (2h)
- Endpoint POST
/api/ai/generate-followup(1.5h) - Prompts preguntas seguimiento (1h)
- Análisis contexto conversación (1.5h)
- Sistema relevancia (1h)
- Límite preguntas por tema (0.5h)
- Filtrado preguntas inapropiadas (0.5h)
- Cola procesamiento async (1h)
Subtotal Backend Sprint 3: 22.5 horas
Frontend (@pablitoclavito04)
- Componente LiveInterviewPage (2h)
- MediaRecorder API (1.5h)
- AudioVisualizer forma onda (2h)
- Gestión permisos micrófono (1h)
- QuestionDisplay (1h)
- Temporizador por pregunta (1h)
- Controles grabación (1h)
- Manejo errores audio (0.5h)
- WebSocket connection (1.5h)
- Servicio envío respuestas (1h)
- FeedbackDisplay (1.5h)
- Indicadores scoring visual (1h)
- Notificaciones seguimiento (0.5h)
- Manejo latencia/reconexión (1h)
- Estados carga análisis (0.5h)
- Optimización rendimiento (1h)
Subtotal Frontend Sprint 3: 18.5 horas
TOTAL SPRINT 3: 41 horas
Criterios de Aceptación
- ✅ OpenAI API funciona sin errores
- ✅ Rate limiting previene abuso
- ✅ Scoring consistente (mismo input = mismo score)
- ✅ Preguntas de seguimiento contextuales y relevantes
- ✅ Grabación audio sin cortes
- ✅ WebSocket mantiene conexión estable
- ✅ Feedback aparece en <2 segundos
- ✅ Tests >85% cobertura
Riesgos Identificados
| Riesgo | Probabilidad | Impacto | Mitigación |
|---|---|---|---|
| Costos OpenAI altos | Media | Alto | Implementar caché y rate limiting |
| Latencia en respuestas IA | Media | Alto | Usar modelos más rápidos, async queues |
| Problemas WebSocket | Baja | Medio | Tener fallback a polling |
| Audio no funciona en ciertos browsers | Media | Medio | Fallback a upload manual de audio |
Dependencias
- Sprint 2 completado (CRUD + estados)
Sprint 4: Reportes, Analytics y Reestructuración
Fechas
- Inicio: 21 de noviembre de 2025 (viernes)
- Fin: 27 de noviembre de 2025 (jueves)
- Duración: 7 días naturales
Objetivos Específicos y Medibles
| Objetivo | Métrica | Meta |
|---|---|---|
| Generación de reportes completos | Endpoint funcional | GET /api/interviews/:id/report |
| Exportación múltiples formatos | Formatos soportados | PDF, JSON, CSV |
| Dashboard de analytics | Métricas visuales | 5+ gráficos interactivos |
| Vistas de resultados individual | Interfaz visual | Resumen + transcripción + audio |
| Reestructuración entidades BD | Campos optimizados | Repositorio GitHub + menos datos guardados |
Secuencia Lógica
Este sprint enfoca en analítica y reportes, y optimización de datos:
- Servicio ReportService → Cálculo de métricas
- Generación PDF → Plantilla profesional
- Dashboard Analytics → Visualización datos
- Vistas de Resultados → Interfaz detallada
- Reestructuración BD → Interview guarda repositorio, User sin profesión, Question sin categoría
Entregables Esperados
- Endpoint GET
/api/interviews/:id/reportfuncional - Generación PDF con plantilla profesional
- Exportación JSON y CSV
- Dashboard con Chart.js/Recharts
- InterviewResultsPage completa
- AnalyticsDashboard con 5+ gráficos
- Entidades MongoDB reestructuradas
- GitinestController para análisis repositorio
Tareas Asignadas
Backend (@Agsergio04)
- Crear ReportService (1.5h)
- Endpoint GET
/api/interviews/:id/report(1h) - Cálculo métricas rendimiento (1h)
- Análisis fortalezas/debilidades (1.5h)
- Generación resumen ejecutivo IA (1h)
- Sección recomendaciones (0.5h)
- Timestamps y metadatos (0.5h)
- Caché de reportes (1h)
- Endpoint GET
/api/interviews/:id/export?format=pdf(1.5h) - Generación PDF plantilla (2h)
- Exportación JSON y CSV (1h)
- Endpoint GET
/api/analytics/dashboard(1.5h) - Agregaciones estadísticas (1h)
- Tendencias temporales (1h)
- Comparativas candidatos (1h)
- Filtros por fecha/puesto (1h)
- Reestructuración Interview entity (1h)
- Cambio User entity (0.5h)
- Modificación Question entity (0.5h)
- GitinestController (2h)
- Refactorización InterviewController (1.5h)
Subtotal Backend Sprint 4: 24 horas
Frontend (@Agsergio04)
- Componente InterviewResultsPage (1.5h)
- ScoreCard con métricas (1.5h)
- StrengthsWeaknesses component (1h)
- Timeline de entrevista (1.5h)
- Sección transcripción sincronizada (2h)
- Reproductor audio con controles (1.5h)
- Sincronización audio-transcripción (1.5h)
- Botones exportación (1h)
- AnalyticsDashboard component (2h)
- Chart.js/Recharts integration (1.5h)
- Gráfico tendencias scoring (1h)
- Comparativa candidatos (1.5h)
- KPIs principales (1h)
- Filtros avanzados (1h)
- Gráfico distribución puntuaciones (1h)
- Lazy loading datos (1h)
- Dashboard cambios (repositorio + dificultad) (2h)
Subtotal Frontend Sprint 4: 22.5 horas
TOTAL SPRINT 4: 46.5 horas
Criterios de Aceptación
- ✅ Reportes completos y precisos
- ✅ Métricas relevantes calculadas
- ✅ Resumen claro y accionable
- ✅ PDFs con diseño profesional
- ✅ Dashboard intuitivo y responsivo
- ✅ Filtros funcionan correctamente
- ✅ Entidades reestructuradas sin pérdida de datos
Dependencias
- Sprint 3 completado (análisis de respuestas)
Sprint 5: Validación, Integración Gemini y Optimizaciones
Fechas
- Inicio: 28 de noviembre de 2025 (viernes)
- Fin: 4 de diciembre de 2025 (jueves)
- Duración: 7 días naturales
Objetivos Específicos y Medibles
| Objetivo | Métrica | Meta |
|---|---|---|
| Integración Gemini AI | Preguntas generadas | 100% de calidad generadas con Gemini |
| Sistema puntuación y feedback | Respuesta validación | Feedback personalizado por respuesta |
| Soporte dificultad Manual | Cards diferenciadas | IA vs Manual visualmente distintos |
| Optimización entrevistas manuales | Performance | Carga <2 segundos |
| Refactorización menú entrevistas | UX mejorada | Descarga de reportes integrada |
Secuencia Lógica
Este sprint enfoca en validación y mejora de UX, integrando Gemini como alternativa a OpenAI:
- Generación preguntas Gemini → Endpoint funcional
- Validación respuestas IA → Feedback consistente
- Sistema puntuación → Cálculo y visualización
- Cards diferenciadas → UI IA vs Manual
- Refactorización menú → Descargas integradas
Entregables Esperados
- Endpoint POST
/api/gemini/generate-questionsfuncional - Integración Gemini para validación respuestas
- Sistema de puntuación con feedback por respuesta
- Cards diferenciadas en dashboard
- Filtros por tipo (IA/Manual) funcionales
- Menú de entrevista refactorizado
- Descarga de reportes desde UI
- Docker entrypoint optimizado
Tareas Asignadas
Backend (@Agsergio04)
- Configurar Gemini API (1h)
- Endpoint generación preguntas Gemini (2h)
- Crear prompts Gemini (1h)
- Validación respuestas con Gemini (1.5h)
- Manejo errores API Gemini (0.5h)
- Pruebas calidad preguntas (1h)
- Lógica cálculo puntuación (1.5h)
- Sistema feedback por respuesta (1h)
- Guardar puntuación en BD (0.5h)
Subtotal Backend Sprint 5: 10 horas
Frontend (@Agsergio04 + @pablitoclavito04)
- Modificar cards dashboard (1.5h)
- Estilos dificultad Manual (0.5h)
- Lógica filtrado actualizada (1h)
- Pruebas visualización (0.5h)
- Responsividad verificada (0.5h)
- Revisar flujo entrevistas manuales (1h)
- Puntos mejora identificados (0.5h)
- Optimizar rendimiento (1h)
- Validaciones mejoradas (0.5h)
- Pruebas flujo completo (0.5h)
- Componente visualización respuestas (1.5h)
- Navegación entre respuestas (1h)
- Estilos visualización (0.5h)
- Responsividad (0.5h)
- Refactorizar menú (1.5h)
- Descarga de reportes integrada (1.5h)
- Formato reporte PDF/CSV (1h)
- Botón descarga integrado (0.5h)
- Pruebas generación reportes (0.5h)
Subtotal Frontend Sprint 5: 17 horas
DevOps (@Agsergio04)
- Revisar docker-entrypoint.sh (0.5h)
- Optimizar scripts inicio (1h)
- Pruebas en contenedor Docker (0.5h)
Subtotal DevOps Sprint 5: 2 horas
TOTAL SPRINT 5: 29 horas
Criterios de Aceptación
- ✅ Preguntas Gemini se generan correctamente
- ✅ Feedback relevante y personalizado
- ✅ Puntuación se guarda en BD
- ✅ Cards visualizan correctamente tipo entrevista
- ✅ Filtros funcionan por tipo (IA/Manual)
- ✅ Menú reorganizado y funcional
- ✅ Reportes se descargan correctamente
- ✅ Docker inicia sin errores
Dependencias
- Sprint 4 completado (reportes y analytics)
Sprint 6: Documentación, CI/CD y Despliegue
Fechas
- Inicio: 5 de diciembre de 2025 (viernes)
- Fin: 11 de diciembre de 2025 (jueves)
- Duración: 7 días naturales
Objetivos Específicos y Medibles
| Objetivo | Métrica | Meta |
|---|---|---|
| Documentación técnica JSDoc | Cobertura | >90% funciones documentadas |
| CI/CD automatizado | Workflows GitHub Actions | 2 workflows (docs + docker) |
| Imágenes Docker publicadas | Docker Hub | Backend + Frontend en Docker Hub |
| Documentación empresarial | Documentos completos | Análisis competencia, estructura, financiación |
| Despliegue producción | Entorno live | Aplicación en producción |
Secuencia Lógica
Este sprint finaliza el proyecto con documentación exhaustiva y automatización:
- JSDoc Backend/Frontend → Documentación automática
- GitHub Actions Workflows → CI/CD automatizado
- Docker Hub Integration → Publicación automática
- Documentación Empresa → Análisis + planificación + financiación
- Despliegue → Producción con monitoreo
Entregables Esperados
- Documentación JSDoc generada automáticamente
- Workflow
.github/workflows/generate-docs.ymlfuncional - Workflow
.github/workflows/docker-publish.ymlfuncional - Imágenes Docker publicadas en Docker Hub
-
/docs/analisis-competencia.mdcompleto -
/docs/estructura-organizativa.mdcon organigrama -
/docs/presupuesto.mdcon costos reales -
/docs/financiacion.mdcon plan financiero -
/docs/legislacion.mdcon RGPD + políticas -
/docs/recursos.mdcon gestión de recursos - Wiki "Planificación de Sprints" actualizado
- Aplicación desplegada en producción
Tareas Asignadas
Backend/DevOps (@Agsergio04)
- Instalar JSDoc backend (0.5h)
- Documentar funciones backend (2h)
- Documentar APIs/endpoints (1.5h)
- Crear workflow generate-docs (1h)
- Configurar GitHub Pages (1h)
- Optimizar Dockerfile backend (1h)
- Configurar Docker Buildx (1h)
- Crear workflow docker-publish (1.5h)
- Implementar caché layers (0.5h)
- Integrar escaneo vulnerabilidades (1h)
- Análisis competencia detallado (2h)
- Estructura organizativa empresa (1.5h)
- Crear organigrama visual (1h)
- Análisis presupuestario (2h)
- Plan de financiación (1.5h)
- Análisis RGPD + políticas (2h)
- Análisis WCAG accesibilidad (1h)
- Gestión recursos completa (1.5h)
- Despliegue producción (2h)
Subtotal Backend/DevOps Sprint 6: 25.5 horas
Frontend (@Agsergio04 + @pablitoclavito04)
- Instalar JSDoc frontend (0.5h)
- Documentar componentes React (2h)
- Documentar servicios/hooks (1.5h)
- Crear documentación visual (1h)
- Optimizar Dockerfile frontend (1h)
- Verificar responsive final (1h)
- Tests finales todas funcionalidades (2h)
- Ajustes UX últimos detalles (1.5h)
Subtotal Frontend Sprint 6: 11 horas
Documentación General (@Agsergio04)
- Actualizar README.md (1.5h)
- Crear Wiki "Planificación Sprints" (1h)
- Documentar estructura documentación (0.5h)
- Revisar y compilar todos docs (1h)
Subtotal Documentación Sprint 6: 4 horas
TOTAL SPRINT 6: 40.5 horas
Criterios de Aceptación
- ✅ JSDoc >90% funciones documentadas
- ✅ Workflows GitHub Actions funcionales
- ✅ Imágenes Docker publicadas y accesibles
- ✅ Documentos empresariales completos y profesionales
- ✅ Wiki actualizado con planificación
- ✅ Aplicación desplegada en producción
- ✅ Monitoreo y logs configurados
- ✅ Zero warnings en build
- ✅ Tests >85% cobertura global
Riesgos Identificados
| Riesgo | Probabilidad | Impacto | Mitigación |
|---|---|---|---|
| Documentación desactualizada | Media | Bajo | Revisión antes de despliegue |
| Fallos en despliegue | Media | Alto | Testing en staging primero |
| Costos Docker Hub/hosting | Baja | Medio | Usar plan free mientras es posible |
Dependencias
- Todos los sprints anteriores completados
Resumen Ejecutivo de Sprints
Tabla Consolidada
| Sprint | Tema | Duración | Fechas | Horas Est. | Backend | Frontend |
|---|---|---|---|---|---|---|
| 1 | Setup Base | 7 días | 31/10 - 6/11 | 19.5h | 8h | 9h |
| 2 | CRUD + Auth | 7 días | 7/11 - 13/11 | 25.5h | 10h | 15.5h |
| 3 | IA (OpenAI) | 7 días | 14/11 - 20/11 | 41h | 22.5h | 18.5h |
| 4 | Reportes + Analytics | 7 días | 21/11 - 27/11 | 46.5h | 24h | 22.5h |
| 5 | Validación + Gemini | 7 días | 28/11 - 4/12 | 29h | 10h | 17h |
| 6 | Docs + CI/CD | 7 días | 5/12 - 11/12 | 40.5h | 25.5h | 11h |
| TOTAL | 6 Sprints | 6 semanas | 31/10 - 11/12 | 202h | 100h | 93h |
Secuencia Lógica de Desarrollo
Sprint 1 (31/10 - 6/11): Setup Base
↓
Sprint 2 (7/11 - 13/11): CRUD + Sistema de Estados
↓
Sprint 3 (14/11 - 20/11): Inteligencia Artificial (OpenAI)
↓
Sprint 4 (21/11 - 27/11): Reportes, Analytics, Reestructuración BD
↓
Sprint 5 (28/11 - 4/12): Gemini, Validación, Optimizaciones UX
↓
Sprint 6 (5/12 - 11/12): Documentación, CI/CD, Despliegue
Esta secuencia garantiza que cada sprint depende lógicamente del anterior, permitiendo:
- Fundamentos sólidos antes de agregar complejidad
- Validación continua de funcionalidades
- Adaptación ágil a cambios o problemas
- Máxima calidad en el despliegue final
Velocidad del Equipo
Estimación por Sprint
| Sprint | Período | Horas Totales | Personas | Horas/Persona | Eficiencia |
|---|---|---|---|---|---|
| 1 | 31/10 - 6/11 | 19.5h | 1.5 | 13h | 100% |
| 2 | 7/11 - 13/11 | 25.5h | 2 | 12.75h | 95% |
| 3 | 14/11 - 20/11 | 41h | 2 | 20.5h | 90% |
| 4 | 21/11 - 27/11 | 46.5h | 2 | 23.25h | 85% |
| 5 | 28/11 - 4/12 | 29h | 2 | 14.5h | 90% |
| 6 | 5/12 - 11/12 | 40.5h | 2 | 20.25h | 88% |
Velocidad Promedio: ~32 horas/sprint (varía según complejidad) Eficiencia Promedio: 90% (considerando overhead, debugging, testing)
Matriz de Dependencias
Sprint 1 (Setup)
├── Infraestructura Docker
├── Base datos MongoDB
├── Componentes UI base
└── TTS para audios
Sprint 2 (CRUD) [Depende de S1]
├── Endpoints REST
├── State machine
├── Componentes formularios
└── Página creación
Sprint 3 (IA) [Depende de S2]
├── OpenAI integration
├── Análisis respuestas
├── Preguntas dinámicas
├── MediaRecorder
└── WebSocket tiempo real
Sprint 4 (Reportes) [Depende de S3]
├── ReportService
├── PDF export
├── Analytics dashboard
├── Vistas resultados
└── Reestructuración BD
Sprint 5 (Validación) [Depende de S4]
├── Gemini integration
├── Sistema puntuación
├── Cards diferenciadas
├── Optimizaciones UX
└── Refactorización menú
Sprint 6 (Docs) [Depende de S5]
├── JSDoc automático
├── GitHub Actions CI/CD
├── Docker Hub publish
├── Documentación empresa
└── Despliegue producción
Configuración en GitHub Projects
Campos Configurados
- Sprint: S1, S2, S3, S4, S5, S6
- Prioridad: Crítica, Alta, Media, Baja
- Estimación: Hours (en horas)
- Estado: Backlog, To Do, In Progress, In Review, Done
- Assignee: @Agsergio04, @pablitoclavito04
- Categoría: Backend, Frontend, DevOps, Database, Documentation
Columnas del Proyecto
| Columna | Propósito | Transición |
|---|---|---|
| Backlog | Tareas sin asignar | → To Do |
| To Do | Listas para sprint | → In Progress |
| In Progress | En desarrollo activo | → In Review |
| In Review | Esperando revisión | → Done |
| Done | Completadas y merged | Fin |
Criterios de "Done"
Una tarea se considera "Done" cuando:
- ✅ Código escrito y funcional
- ✅ Tests pasando (>80% cobertura)
- ✅ Revisión de código aprobada
- ✅ Documentación actualizada
- ✅ Merged a rama principal
- ✅ Sin warnings o errores en consola
- ✅ Verificado en staging (S4+)
Hitos Clave por Sprint
Sprint 1 (31/10 - 6/11): Setup Completado ✅
- Docker Compose funcionando
- MongoDB con schema completo
- Componentes UI iniciales
- Audio preprocessing funcional
Sprint 2 (7/11 - 13/11): Funcionalidad Core ✅
- CRUD entrevistas completo
- Sistema de estados validado
- Formularios reutilizables
- Integración API funcional
Sprint 3 (14/11 - 20/11): IA Integrada ✅
- OpenAI API funcional
- Análisis de respuestas
- Preguntas dinámicas
- Entrevista en vivo con grabación
Sprint 4 (21/11 - 27/11): Analytics Ready ✅
- Reportes completos
- Dashboard con gráficos
- Vistas de resultados
- Entidades BD optimizadas
Sprint 5 (28/11 - 4/12): Validación Completa ✅
- Gemini integration funcional
- Sistema puntuación end-to-end
- UX pulida y optimizada
- Todas funcionalidades validadas
Sprint 6 (5/12 - 11/12): Producción Ready ✅
- Documentación automática
- CI/CD pipelines funcionando
- Docker Hub sincronizado
- Aplicación en producción
Plan de Comunicación y Reviews
Daily Standup (Async)
- Cuándo: Cada mañana (9:00 AM CET)
- Formato: GitHub Issues o Slack
- Contenido: Qué hice, qué haré, bloqueadores
Sprint Planning
- Cuándo: Lunes 10:00 AM CET
- Duración: 1 hora
- Tareas: Revisar backlog, estimar, asignar
Sprint Review
- Cuándo: Viernes 4:00 PM CET
- Duración: 1 hora
- Contenido: Demo de funcionalidades, feedback
Sprint Retrospective
- Cuándo: Viernes 5:00 PM CET
- Duración: 30 minutos
- Contenido: Qué salió bien, qué mejorar
Riesgos Globales y Mitigación
| Riesgo | Probabilidad | Impacto | Mitigación |
|---|---|---|---|
| Scope creep | Alta | Alto | Revisar sprint planning estrictamente |
| Problemas integración APIs | Media | Alto | POCs temprana en S1 |
| Performance issues | Media | Medio | Profiling y optimización constante |
| Cambios requisitos | Media | Medio | Reuniones semanales con stakeholders |
| Falta de documentación | Baja | Medio | Documentar mientras desarrollamos |
| Problemas deploy | Baja | Alto | Testing en staging antes de prod |
Matriz de Responsabilidades (RACI)
Por Rol
| Tarea | Agsergio04 | Pablitoclavito04 | Stakeholder |
|---|---|---|---|
| Sprint Planning | Responsible | Accountable | Consulted |
| Backend Dev | Accountable | - | Informed |
| Frontend Dev | - | Accountable | Informed |
| Code Review | Consulted | Consulted | Informed |
| Deployment | Responsible | Consulted | Informed |
| Documentation | Responsible | Consulted | Informed |
| Testing | Responsible | Responsible | Informed |
Conclusión
Este plan de 6 sprints proporciona una hoja de ruta clara y estructurada para el desarrollo de PreguntaT, con:
✅ Objetivos específicos y medibles por sprint
✅ Secuencia lógica de desarrollo con fechas reales
✅ Dependencias claramente identificadas
✅ Asignación de recursos realista
✅ Criterios de aceptación bien definidos
✅ Gestión de riesgos proactiva
✅ Documentación completa del plan
Período Total: 31 de octubre - 11 de diciembre de 2025 (6 semanas) Horas Estimadas: 202 horas (100h Backend + 93h Frontend) Equipo: 2 desarrolladores full-stack Tasa de Éxito Estimada: 95% (con gestión adecuada)
Documento preparado: 11 de diciembre de 2025 Próxima revisión: Fin de Sprint 1 (6 de noviembre de 2025)