# EPICA: EPIC-MAI-005 - Control de Obra y Avances

## Metadata

| Campo | Valor |
|-------|-------|
| **ID** | EPIC-MAI-005 |
| **Nombre** | Control de Obra y Avances |
| **Modulo** | control-obra-avances |
| **Fase** | Fase 1 - Alcance Inicial |
| **Prioridad** | P0 (Critico) |
| **Estado** | Backlog |
| **Story Points** | 55 |
| **Sprint(s)** | Sprint 5-7 |

---

## Descripcion

Sistema de control de avance de obra que permite registrar progreso por concepto, generar estimaciones de avance, comparar programa vs real, y visualizar el estado de construccion de cada vivienda. Incluye bitacora de obra electronica y registro fotografico.

---

## Objetivo de Negocio

Proveer control de obra que:
- Registre avance diario/semanal por concepto
- Compare programa vs avance real
- Identifique retrasos automaticamente
- Genere estimaciones para pago
- Documente con evidencia fotografica
- Facilite toma de decisiones

---

## Historias de Usuario

| ID | Historia | Prioridad | SP | Estado |
|----|----------|-----------|-----|--------|
| US-MAI005-001 | Como residente, quiero registrar avance diario por concepto | P0 | 8 | Backlog |
| US-MAI005-002 | Como residente, quiero comparar programa vs avance real | P0 | 8 | Backlog |
| US-MAI005-003 | Como residente, quiero registrar bitacora de obra | P0 | 5 | Backlog |
| US-MAI005-004 | Como residente, quiero capturar evidencia fotografica de avances | P0 | 5 | Backlog |
| US-MAI005-005 | Como superintendente, quiero generar estimacion de periodo | P0 | 8 | Backlog |
| US-MAI005-006 | Como director, quiero ver curva S de avance | P1 | 8 | Backlog |
| US-MAI005-007 | Como director, quiero ver dashboard de retrasos | P1 | 5 | Backlog |
| US-MAI005-008 | Como residente, quiero registrar incidencias de obra | P1 | 5 | Backlog |
| US-MAI005-009 | Como superintendente, quiero aprobar avances reportados | P1 | 3 | Backlog |

**Total Story Points:** 55 SP

---

## Criterios de Aceptacion de la Epica

**Funcionales:**
- [ ] Registro de avance por concepto (% o cantidad)
- [ ] Programa de obra con Gantt
- [ ] Comparativo programa vs real
- [ ] Curva S de avance
- [ ] Bitacora electronica con firmas
- [ ] Galeria de fotos por vivienda/concepto
- [ ] Generacion de estimaciones

**No Funcionales:**
- [ ] Captura desde app movil (offline)
- [ ] Sincronizacion automatica al conectar

---

## Dependencias

**Esta epica depende de:**
| Epica/Modulo | Estado | Bloqueante |
|--------------|--------|------------|
| EPIC-MAI-002 Proyectos | Backlog | Si |
| EPIC-MAI-003 Presupuestos | Backlog | Si |

**Esta epica bloquea:**
| Epica/Modulo | Razon |
|--------------|-------|
| EPIC-MAI-008 Estimaciones | Avance para facturar |
| EPIC-MAI-011 INFONAVIT | Avance para reportar |

---

## Desglose Tecnico

**Database:**
- [ ] Schema: `progress_management`
- [ ] Tablas: 8 (progress_records, schedules, schedule_items, logbook, logbook_entries, photos, estimations, incidents)

**Backend:**
- [ ] Modulo: `progress`
- [ ] Entities: 8
- [ ] Endpoints: 22+
- [ ] Tests: 35+

**Frontend:**
- [ ] Paginas: 7 (Progress, Schedule, Logbook, Photos, Estimations, CurveS, Dashboard)
- [ ] Componentes: GanttChart, ProgressForm, PhotoGallery, CurveSChart
- [ ] Stores: 1 (progressStore)

**App Movil:**
- [ ] Screens: ProgressCapture, PhotoCapture, LogbookEntry
- [ ] Offline: SQLite local, sync queue

---

**Creada por:** Requirements-Analyst
**Fecha:** 2025-12-05
